Translation updates
authorPeter Eisentraut
Mon, 6 Oct 2014 03:22:24 +0000 (23:22 -0400)
committerPeter Eisentraut
Mon, 6 Oct 2014 03:23:50 +0000 (23:23 -0400)
53 files changed:
src/backend/po/de.po
src/backend/po/it.po
src/backend/po/ja.po
src/backend/po/pt_BR.po
src/backend/po/ru.po
src/bin/initdb/po/de.po
src/bin/initdb/po/it.po
src/bin/initdb/po/ja.po
src/bin/initdb/po/pt_BR.po
src/bin/initdb/po/ru.po
src/bin/pg_basebackup/po/it.po
src/bin/pg_basebackup/po/pt_BR.po
src/bin/pg_basebackup/po/ru.po
src/bin/pg_config/po/ru.po
src/bin/pg_controldata/po/de.po
src/bin/pg_controldata/po/it.po
src/bin/pg_controldata/po/pt_BR.po
src/bin/pg_controldata/po/ru.po
src/bin/pg_ctl/po/de.po
src/bin/pg_ctl/po/it.po
src/bin/pg_ctl/po/ja.po
src/bin/pg_ctl/po/pt_BR.po
src/bin/pg_ctl/po/ru.po
src/bin/pg_dump/po/de.po
src/bin/pg_dump/po/it.po
src/bin/pg_dump/po/ja.po
src/bin/pg_dump/po/pt_BR.po
src/bin/pg_dump/po/ru.po
src/bin/pg_resetxlog/po/de.po
src/bin/pg_resetxlog/po/it.po
src/bin/pg_resetxlog/po/pt_BR.po
src/bin/pg_resetxlog/po/ru.po
src/bin/psql/po/de.po
src/bin/psql/po/fr.po
src/bin/psql/po/it.po
src/bin/psql/po/ja.po
src/bin/psql/po/pt_BR.po
src/bin/psql/po/ru.po
src/bin/scripts/po/de.po
src/bin/scripts/po/it.po
src/bin/scripts/po/pt_BR.po
src/bin/scripts/po/ru.po
src/interfaces/ecpg/preproc/po/it.po
src/interfaces/ecpg/preproc/po/ru.po
src/interfaces/libpq/po/it.po
src/interfaces/libpq/po/ja.po
src/interfaces/libpq/po/ru.po
src/pl/plpgsql/src/po/de.po
src/pl/plpgsql/src/po/it.po
src/pl/plpgsql/src/po/pt_BR.po
src/pl/plpgsql/src/po/ru.po
src/pl/plpython/po/it.po
src/pl/plpython/po/ru.po

index ea8d8a58626f8de2c666dd673189ed4b84b9f05d..fe3a17d1afb3817b53356915ca214cda8e338040 100644 (file)
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: PostgreSQL 9.4\n"
 "Report-Msgid-Bugs-To: [email protected]\n"
-"POT-Creation-Date: 2014-07-20 02:38+0000\n"
-"PO-Revision-Date: 2014-07-20 22:54-0400\n"
+"POT-Creation-Date: 2014-10-03 22:08+0000\n"
+"PO-Revision-Date: 2014-10-05 23:14-0400\n"
 "Last-Translator: Peter Eisentraut \n"
 "Language-Team: German \n"
 "Language: de\n"
@@ -80,13 +80,13 @@ msgid "could not close directory \"%s\": %s\n"
 msgstr "konnte Verzeichnis „%s“ nicht schließen: %s\n"
 
 #: ../common/psprintf.c:179 ../port/path.c:596 ../port/path.c:634
-#: ../port/path.c:651 access/transam/xlog.c:6070 lib/stringinfo.c:258
+#: ../port/path.c:651 access/transam/xlog.c:6125 lib/stringinfo.c:258
 #: libpq/auth.c:823 libpq/auth.c:1179 libpq/auth.c:1247 libpq/auth.c:1647
 #: postmaster/bgworker.c:267 postmaster/bgworker.c:783
-#: postmaster/postmaster.c:2167 postmaster/postmaster.c:2198
-#: postmaster/postmaster.c:3734 postmaster/postmaster.c:4435
-#: postmaster/postmaster.c:4520 postmaster/postmaster.c:5210
-#: postmaster/postmaster.c:5442 storage/buffer/buf_init.c:154
+#: postmaster/postmaster.c:2173 postmaster/postmaster.c:2204
+#: postmaster/postmaster.c:3740 postmaster/postmaster.c:4441
+#: postmaster/postmaster.c:4526 postmaster/postmaster.c:5219
+#: postmaster/postmaster.c:5451 storage/buffer/buf_init.c:154
 #: storage/buffer/localbuf.c:396 storage/file/fd.c:458 storage/file/fd.c:855
 #: storage/file/fd.c:973 storage/file/fd.c:1586 storage/ipc/procarray.c:909
 #: storage/ipc/procarray.c:1395 storage/ipc/procarray.c:1402
@@ -95,8 +95,8 @@ msgstr "konnte Verzeichnis „%s“ nicht schließen: %s\n"
 #: utils/adt/formatting.c:1760 utils/adt/regexp.c:219 utils/adt/varlena.c:3653
 #: utils/adt/varlena.c:3674 utils/fmgr/dfmgr.c:224 utils/hash/dynahash.c:379
 #: utils/hash/dynahash.c:456 utils/hash/dynahash.c:970 utils/mb/mbutils.c:376
-#: utils/mb/mbutils.c:709 utils/misc/guc.c:3582 utils/misc/guc.c:3598
-#: utils/misc/guc.c:3611 utils/misc/tzparser.c:455 utils/mmgr/aset.c:499
+#: utils/mb/mbutils.c:709 utils/misc/guc.c:3571 utils/misc/guc.c:3587
+#: utils/misc/guc.c:3600 utils/misc/tzparser.c:455 utils/mmgr/aset.c:499
 #: utils/mmgr/aset.c:678 utils/mmgr/aset.c:872 utils/mmgr/aset.c:1114
 #, c-format
 msgid "out of memory"
@@ -124,19 +124,17 @@ msgstr "konnte Datei oder Verzeichnis „%s“ nicht entfernen: %s\n"
 
 #: ../common/username.c:45
 #, c-format
-msgid "failed to look up effective user id %ld: %s"
-msgstr ""
+msgid "could not look up effective user ID %ld: %s"
+msgstr "konnte effektive Benutzer-ID %ld nicht nachschlagen: %s"
 
 #: ../common/username.c:47 libpq/auth.c:1594
-#, fuzzy
-#| msgid "server \"%s\" does not exist"
 msgid "user does not exist"
-msgstr "Server „%s“ existiert nicht"
+msgstr "Benutzer existiert nicht"
 
 #: ../common/username.c:61
 #, c-format
 msgid "user name lookup failure: %s"
-msgstr ""
+msgstr "Fehler beim Nachschlagen des Benutzernamens: %s"
 
 #: ../common/wait_error.c:47
 #, c-format
@@ -232,10 +230,9 @@ msgid "You might have antivirus, backup, or similar software interfering with th
 msgstr "Möglicherweise stört eine Antivirus-, Datensicherungs- oder ähnliche Software das Datenbanksystem."
 
 #: ../port/path.c:620
-#, fuzzy, c-format
-#| msgid "could not identify current directory: %s"
+#, c-format
 msgid "could not get current working directory: %s\n"
-msgstr "konnte aktuelles Verzeichnis nicht ermitteln: %s"
+msgstr "konnte aktuelles Arbeitsverzeichnis nicht ermitteln: %s\n"
 
 #: ../port/strerror.c:25
 #, c-format
@@ -353,8 +350,9 @@ msgstr "Attribut „%s“ von Typ %s existiert nicht in Typ %s."
 msgid "column \"%s\" cannot be declared SETOF"
 msgstr "Spalte „%s“ kann nicht als SETOF deklariert werden"
 
-#: access/gin/ginentrypage.c:108 access/nbtree/nbtinsert.c:545
-#: access/nbtree/nbtsort.c:485 access/spgist/spgdoinsert.c:1880
+#: access/gin/ginentrypage.c:108 access/gist/gist.c:1281
+#: access/nbtree/nbtinsert.c:545 access/nbtree/nbtsort.c:485
+#: access/spgist/spgdoinsert.c:1880
 #, c-format
 msgid "index row size %zu exceeds maximum %zu for index \"%s\""
 msgstr "Größe %zu der Indexzeile überschreitet Maximum %zu für Index „%s“"
@@ -456,21 +454,21 @@ msgstr "Index „%s“ ist kein Hash-Index"
 msgid "index \"%s\" has wrong hash version"
 msgstr "Index „%s“ hat falsche Hash-Version"
 
-#: access/heap/heapam.c:1200 access/heap/heapam.c:1228
-#: access/heap/heapam.c:1260 catalog/aclchk.c:1742
+#: access/heap/heapam.c:1199 access/heap/heapam.c:1227
+#: access/heap/heapam.c:1259 catalog/aclchk.c:1742
 #, c-format
 msgid "\"%s\" is an index"
 msgstr "„%s“ ist ein Index"
 
-#: access/heap/heapam.c:1205 access/heap/heapam.c:1233
-#: access/heap/heapam.c:1265 catalog/aclchk.c:1749 commands/tablecmds.c:8487
-#: commands/tablecmds.c:11101
+#: access/heap/heapam.c:1204 access/heap/heapam.c:1232
+#: access/heap/heapam.c:1264 catalog/aclchk.c:1749 commands/tablecmds.c:8495
+#: commands/tablecmds.c:11279
 #, c-format
 msgid "\"%s\" is a composite type"
 msgstr "„%s“ ist ein zusammengesetzter Typ"
 
-#: access/heap/heapam.c:4224 access/heap/heapam.c:4438
-#: access/heap/heapam.c:4495
+#: access/heap/heapam.c:4223 access/heap/heapam.c:4436
+#: access/heap/heapam.c:4493 executor/execMain.c:1992
 #, c-format
 msgid "could not obtain lock on row in relation \"%s\""
 msgstr "konnte Sperre für Zeile in Relation „%s“ nicht setzen"
@@ -481,27 +479,26 @@ msgid "row is too big: size %zu, maximum size %zu"
 msgstr "Zeile ist zu groß: Größe ist %zu, Maximalgröße ist %zu"
 
 #: access/heap/rewriteheap.c:932
-#, fuzzy, c-format
-#| msgid "Could not write to file \"%s\" at offset %u: %m."
+#, c-format
 msgid "could not write to file \"%s\", wrote %d of %d: %m"
-msgstr "Konnte nicht in Datei „%s“ bei Position %u schreiben: %m."
+msgstr "konnte nicht in Datei „%s“ schreiben, %d von %d geschrieben: %m"
 
 #: access/heap/rewriteheap.c:973 access/heap/rewriteheap.c:1185
 #: access/heap/rewriteheap.c:1282 access/transam/timeline.c:406
-#: access/transam/timeline.c:493 access/transam/xlog.c:3179
-#: access/transam/xlog.c:3309 replication/logical/snapbuild.c:1579
+#: access/transam/timeline.c:493 access/transam/xlog.c:3185
+#: access/transam/xlog.c:3315 replication/logical/snapbuild.c:1579
 #: replication/slot.c:1032 replication/slot.c:1121 storage/file/fd.c:436
 #: storage/smgr/md.c:966 storage/smgr/md.c:1197 storage/smgr/md.c:1370
-#: utils/misc/guc.c:6603
+#: utils/misc/guc.c:6599
 #, c-format
 msgid "could not fsync file \"%s\": %m"
 msgstr "konnte Datei „%s“ nicht fsyncen: %m"
 
 #: access/heap/rewriteheap.c:1028 access/heap/rewriteheap.c:1148
 #: access/transam/timeline.c:314 access/transam/timeline.c:471
-#: access/transam/xlog.c:3135 access/transam/xlog.c:3270
-#: access/transam/xlog.c:9864 access/transam/xlog.c:10179
-#: postmaster/postmaster.c:4210 replication/slot.c:990
+#: access/transam/xlog.c:3141 access/transam/xlog.c:3276
+#: access/transam/xlog.c:9914 access/transam/xlog.c:10229
+#: postmaster/postmaster.c:4216 replication/slot.c:990
 #: storage/file/copydir.c:162 storage/smgr/md.c:304 utils/time/snapmgr.c:976
 #, c-format
 msgid "could not create file \"%s\": %m"
@@ -512,45 +509,47 @@ msgstr "kann Datei „%s“ nicht erstellen: %m"
 msgid "could not truncate file \"%s\" to %u: %m"
 msgstr "konnte Datei „%s“ nicht auf %u kürzen: %m"
 
-#: access/heap/rewriteheap.c:1164
-#, fuzzy, c-format
-#| msgid "could not seek to end of file \"%s\": %m"
-msgid "could not seek to the end of file \"%s\": %m"
+#: access/heap/rewriteheap.c:1164 replication/walsender.c:465
+#: storage/smgr/md.c:1782
+#, c-format
+msgid "could not seek to end of file \"%s\": %m"
 msgstr "konnte Positionszeiger nicht ans Ende der Datei „%s“ setzen: %m"
 
 #: access/heap/rewriteheap.c:1175 access/transam/timeline.c:366
 #: access/transam/timeline.c:400 access/transam/timeline.c:487
-#: access/transam/xlog.c:3170 access/transam/xlog.c:3302
-#: postmaster/postmaster.c:4220 postmaster/postmaster.c:4230
+#: access/transam/xlog.c:3176 access/transam/xlog.c:3308
+#: postmaster/postmaster.c:4226 postmaster/postmaster.c:4236
 #: replication/logical/snapbuild.c:1563 replication/slot.c:1018
 #: storage/file/copydir.c:187 utils/init/miscinit.c:1057
-#: utils/init/miscinit.c:1066 utils/init/miscinit.c:1073 utils/misc/guc.c:8272
-#: utils/misc/guc.c:8286 utils/time/snapmgr.c:981 utils/time/snapmgr.c:988
+#: utils/init/miscinit.c:1066 utils/init/miscinit.c:1073 utils/misc/guc.c:8290
+#: utils/misc/guc.c:8304 utils/time/snapmgr.c:981 utils/time/snapmgr.c:988
 #, c-format
 msgid "could not write to file \"%s\": %m"
 msgstr "konnte nicht in Datei „%s“ schreiben: %m"
 
-#: access/heap/rewriteheap.c:1258 replication/logical/reorderbuffer.c:2353
+#: access/heap/rewriteheap.c:1258 access/transam/xlog.c:10098
+#: access/transam/xlogarchive.c:114 access/transam/xlogarchive.c:467
+#: replication/logical/reorderbuffer.c:2353
 #: replication/logical/reorderbuffer.c:2410
 #: replication/logical/snapbuild.c:1509 replication/logical/snapbuild.c:1880
-#: replication/slot.c:1095
-#, fuzzy, c-format
-#| msgid "could not open file \"%s\": %m"
-msgid "could not unlink file \"%s\": %m"
-msgstr "konnte Datei „%s“ nicht öffnen: %m"
+#: replication/slot.c:1095 storage/ipc/dsm.c:326 storage/smgr/md.c:404
+#: storage/smgr/md.c:453 storage/smgr/md.c:1317
+#, c-format
+msgid "could not remove file \"%s\": %m"
+msgstr "konnte Datei „%s“ nicht löschen: %m"
 
 #: access/heap/rewriteheap.c:1272 access/transam/timeline.c:110
 #: access/transam/timeline.c:235 access/transam/timeline.c:333
-#: access/transam/xlog.c:3111 access/transam/xlog.c:3218
-#: access/transam/xlog.c:3255 access/transam/xlog.c:3530
-#: access/transam/xlog.c:3608 replication/basebackup.c:458
+#: access/transam/xlog.c:3117 access/transam/xlog.c:3224
+#: access/transam/xlog.c:3261 access/transam/xlog.c:3536
+#: access/transam/xlog.c:3614 replication/basebackup.c:458
 #: replication/basebackup.c:1167 replication/logical/logicalfuncs.c:152
 #: replication/logical/reorderbuffer.c:1966
 #: replication/logical/reorderbuffer.c:2173
 #: replication/logical/reorderbuffer.c:2802
 #: replication/logical/snapbuild.c:1556 replication/logical/snapbuild.c:1640
 #: replication/slot.c:1110 replication/walsender.c:458
-#: replication/walsender.c:2092 storage/file/copydir.c:155
+#: replication/walsender.c:2094 storage/file/copydir.c:155
 #: storage/file/fd.c:422 storage/smgr/md.c:586 storage/smgr/md.c:844
 #: utils/error/elog.c:1797 utils/init/miscinit.c:992
 #: utils/init/miscinit.c:1121
@@ -559,8 +558,8 @@ msgid "could not open file \"%s\": %m"
 msgstr "konnte Datei „%s“ nicht öffnen: %m"
 
 #: access/index/indexam.c:172 catalog/objectaddress.c:855
-#: commands/indexcmds.c:1725 commands/tablecmds.c:231
-#: commands/tablecmds.c:11092
+#: commands/indexcmds.c:1725 commands/tablecmds.c:232
+#: commands/tablecmds.c:11270
 #, c-format
 msgid "\"%s\" is not an index"
 msgstr "„%s“ ist kein Index"
@@ -607,10 +606,9 @@ 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/nbtree/nbtpage.c:1187
-#, fuzzy, c-format
-#| msgid "Index \"%s\" contains a whole-row table reference."
+#, c-format
 msgid "index \"%s\" contains a half-dead internal page"
-msgstr "Index „%s“ enthält einen Verweis auf die ganze Zeile der Tabelle."
+msgstr "Index „%s“ enthält eine halbtote interne Seite"
 
 #: access/nbtree/nbtpage.c:1189
 #, c-format
@@ -774,10 +772,10 @@ msgstr "ungültige Daten in History-Datei „%s“"
 msgid "Timeline IDs must be less than child timeline's ID."
 msgstr "Zeitleisten-IDs müssen kleiner als die Zeitleisten-ID des Kindes sein."
 
-#: access/transam/timeline.c:345 access/transam/xlog.c:3283
-#: access/transam/xlog.c:10030 access/transam/xlog.c:10043
-#: access/transam/xlog.c:10411 access/transam/xlog.c:10454
-#: access/transam/xlogfuncs.c:473 access/transam/xlogfuncs.c:492
+#: access/transam/timeline.c:345 access/transam/xlog.c:3289
+#: access/transam/xlog.c:10080 access/transam/xlog.c:10093
+#: access/transam/xlog.c:10461 access/transam/xlog.c:10504
+#: access/transam/xlogfuncs.c:468 access/transam/xlogfuncs.c:487
 #: replication/logical/reorderbuffer.c:2820 replication/walsender.c:483
 #: storage/file/copydir.c:176 utils/adt/genfile.c:139
 #, c-format
@@ -785,8 +783,8 @@ msgid "could not read file \"%s\": %m"
 msgstr "konnte Datei „%s“ nicht lesen: %m"
 
 #: access/transam/timeline.c:411 access/transam/timeline.c:498
-#: access/transam/xlog.c:3185 access/transam/xlog.c:3314
-#: access/transam/xlogfuncs.c:498 commands/copy.c:1518
+#: access/transam/xlog.c:3191 access/transam/xlog.c:3320
+#: access/transam/xlogfuncs.c:493 commands/copy.c:1518
 #: storage/file/copydir.c:201
 #, c-format
 msgid "could not close file \"%s\": %m"
@@ -798,10 +796,11 @@ msgid "could not link file \"%s\" to \"%s\": %m"
 msgstr "konnte Datei „%s“ nicht nach „%s“ linken: %m"
 
 #: access/transam/timeline.c:435 access/transam/timeline.c:522
-#: access/transam/xlog.c:5394 access/transam/xlog.c:6443
+#: access/transam/xlog.c:5405 access/transam/xlog.c:6498
 #: access/transam/xlogarchive.c:458 access/transam/xlogarchive.c:475
 #: access/transam/xlogarchive.c:582 postmaster/pgarch.c:759
-#: replication/logical/snapbuild.c:1593 replication/slot.c:933
+#: replication/logical/snapbuild.c:1593 replication/slot.c:457
+#: replication/slot.c:933 replication/slot.c:1044 utils/misc/guc.c:6843
 #: utils/time/snapmgr.c:999
 #, c-format
 msgid "could not rename file \"%s\" to \"%s\": %m"
@@ -972,15 +971,12 @@ msgid "database is not accepting commands to avoid wraparound data loss in datab
 msgstr "Datenbank nimmt keine Befehle an, um Datenverlust wegen Transaktionsnummernüberlauf in Datenbank „%s“ zu vermeiden"
 
 #: access/transam/varsup.c:117 access/transam/varsup.c:124
-#, fuzzy, c-format
-#| msgid ""
-#| "Stop the postmaster and use a standalone backend to vacuum that database.\n"
-#| "You might also need to commit or roll back old prepared transactions."
+#, c-format
 msgid ""
 "Stop the postmaster and vacuum that database in single-user mode.\n"
 "You might also need to commit or roll back old prepared transactions."
 msgstr ""
-"Halten Sie den Postmaster an und verwenden Sie ein Standalone-Backend, um VACUUM in dieser Datenbank auszuführen.\n"
+"Halten Sie den Postmaster an und führen Sie in dieser Datenbank VACUUM im Einzelbenutzermodus aus.\n"
 "Eventuell müssen Sie auch alte vorbereitete Transaktionen committen oder zurückrollen."
 
 #: access/transam/varsup.c:122
@@ -1004,10 +1000,9 @@ msgid "transaction ID wrap limit is %u, limited by database with OID %u"
 msgstr "Grenze für Transaktionsnummernüberlauf ist %u, begrenzt durch Datenbank mit OID %u"
 
 #: access/transam/xact.c:814
-#, fuzzy, c-format
-#| msgid "cannot have more than 2^32-1 commands in a transaction"
+#, c-format
 msgid "cannot have more than 2^32-2 commands in a transaction"
-msgstr "kann nicht mehr als 2^32-1 Befehle in einer Transaktion ausführen"
+msgstr "kann nicht mehr als 2^32-2 Befehle in einer Transaktion ausführen"
 
 #: access/transam/xact.c:1370
 #, c-format
@@ -1070,861 +1065,860 @@ msgstr "Savepoint existiert nicht"
 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:2410
+#: access/transam/xlog.c:2416
 #, c-format
 msgid "could not seek in log file %s to offset %u: %m"
 msgstr "konnte Positionszeiger in Logdatei %s nicht auf %u setzen: %m"
 
-#: access/transam/xlog.c:2430
+#: access/transam/xlog.c:2436
 #, c-format
 msgid "could not write to log file %s at offset %u, length %zu: %m"
 msgstr "konnte nicht in Logdatei %s bei Position %u, Länge %zu schreiben: %m"
 
-#: access/transam/xlog.c:2706
+#: access/transam/xlog.c:2712
 #, c-format
 msgid "updated min recovery point to %X/%X on timeline %u"
 msgstr "minimaler Recovery-Punkt auf %X/%X auf Zeitleiste %u aktualisiert"
 
-#: access/transam/xlog.c:3286
+#: access/transam/xlog.c:3292
 #, c-format
 msgid "not enough data in file \"%s\""
 msgstr "nicht genug Daten in Datei „%s“"
 
-#: access/transam/xlog.c:3405
+#: access/transam/xlog.c:3411
 #, c-format
 msgid "could not link file \"%s\" to \"%s\" (initialization of log file): %m"
 msgstr "konnte Datei „%s“ nicht nach „%s“ linken (Logdatei-Initialisierung): %m"
 
-#: access/transam/xlog.c:3417
+#: access/transam/xlog.c:3423
 #, c-format
 msgid "could not rename file \"%s\" to \"%s\" (initialization of log file): %m"
 msgstr "konnte Datei „%s“ nicht in „%s“ umbenennen (Logdatei-Initialisierung): %m"
 
-#: access/transam/xlog.c:3445
+#: access/transam/xlog.c:3451
 #, c-format
 msgid "could not open transaction log file \"%s\": %m"
 msgstr "konnte Transaktionslogdatei „%s“ nicht öffnen: %m"
 
-#: access/transam/xlog.c:3634
+#: access/transam/xlog.c:3640
 #, c-format
 msgid "could not close log file %s: %m"
 msgstr "konnte Logdatei %s nicht schließen: %m"
 
-#: access/transam/xlog.c:3693 replication/logical/logicalfuncs.c:147
-#: replication/walsender.c:2087
+#: access/transam/xlog.c:3699 replication/logical/logicalfuncs.c:147
+#: replication/walsender.c:2089
 #, c-format
 msgid "requested WAL segment %s has already been removed"
 msgstr "das angeforderte WAL-Segment %s wurde schon entfernt"
 
-#: access/transam/xlog.c:3771 access/transam/xlog.c:3948
+#: access/transam/xlog.c:3777 access/transam/xlog.c:3954
 #, c-format
 msgid "could not open transaction log directory \"%s\": %m"
 msgstr "konnte Transaktionslog-Verzeichnis „%s“ nicht öffnen: %m"
 
-#: access/transam/xlog.c:3819
+#: access/transam/xlog.c:3825
 #, c-format
 msgid "recycled transaction log file \"%s\""
 msgstr "Transaktionslogdatei „%s“ wird wiederverwendet"
 
-#: access/transam/xlog.c:3835
+#: access/transam/xlog.c:3841
 #, c-format
 msgid "removing transaction log file \"%s\""
 msgstr "entferne Transaktionslogdatei „%s“"
 
-#: access/transam/xlog.c:3858
+#: access/transam/xlog.c:3864
 #, c-format
 msgid "could not rename old transaction log file \"%s\": %m"
 msgstr "konnte alte Transaktionslogdatei „%s“ nicht umbenennen: %m"
 
-#: access/transam/xlog.c:3870
+#: access/transam/xlog.c:3876
 #, c-format
 msgid "could not remove old transaction log file \"%s\": %m"
 msgstr "konnte alte Transaktionslogdatei „%s“ nicht löschen: %m"
 
-#: access/transam/xlog.c:3908 access/transam/xlog.c:3918
+#: access/transam/xlog.c:3914 access/transam/xlog.c:3924
 #, c-format
 msgid "required WAL directory \"%s\" does not exist"
 msgstr "benötigtes WAL-Verzeichnis „%s“ existiert nicht"
 
-#: access/transam/xlog.c:3924
+#: access/transam/xlog.c:3930
 #, c-format
 msgid "creating missing WAL directory \"%s\""
 msgstr "erzeuge fehlendes WAL-Verzeichnis „%s“"
 
-#: access/transam/xlog.c:3927
+#: access/transam/xlog.c:3933
 #, c-format
 msgid "could not create missing directory \"%s\": %m"
 msgstr "konnte fehlendes Verzeichnis „%s“ nicht erzeugen: %m"
 
-#: access/transam/xlog.c:3961
+#: access/transam/xlog.c:3967
 #, c-format
 msgid "removing transaction log backup history file \"%s\""
 msgstr "entferne Transaktionslog-Backup-History-Datei „%s“"
 
-#: access/transam/xlog.c:4157
+#: access/transam/xlog.c:4163
 #, c-format
 msgid "unexpected timeline ID %u in log segment %s, offset %u"
 msgstr "unerwartete Zeitleisten-ID %u in Logsegment %s, Offset %u"
 
-#: access/transam/xlog.c:4279
+#: access/transam/xlog.c:4285
 #, c-format
 msgid "new timeline %u is not a child of database system timeline %u"
 msgstr "neue Zeitleiste %u ist kein Kind der Datenbanksystemzeitleiste %u"
 
-#: access/transam/xlog.c:4293
+#: access/transam/xlog.c:4299
 #, c-format
 msgid "new timeline %u forked off current database system timeline %u before current recovery point %X/%X"
 msgstr "neue Zeitleiste %u zweigte von der aktuellen Datenbanksystemzeitleiste %u vor dem aktuellen Wiederherstellungspunkt %X/%X ab"
 
-#: access/transam/xlog.c:4312
+#: access/transam/xlog.c:4318
 #, c-format
 msgid "new target timeline is %u"
 msgstr "neue Zielzeitleiste ist %u"
 
-#: access/transam/xlog.c:4392
+#: access/transam/xlog.c:4398
 #, c-format
 msgid "could not create control file \"%s\": %m"
 msgstr "konnte Kontrolldatei „%s“ nicht erzeugen: %m"
 
-#: access/transam/xlog.c:4403 access/transam/xlog.c:4639
+#: access/transam/xlog.c:4409 access/transam/xlog.c:4645
 #, c-format
 msgid "could not write to control file: %m"
 msgstr "konnte nicht in Kontrolldatei schreiben: %m"
 
-#: access/transam/xlog.c:4409 access/transam/xlog.c:4645
+#: access/transam/xlog.c:4415 access/transam/xlog.c:4651
 #, c-format
 msgid "could not fsync control file: %m"
 msgstr "konnte Kontrolldatei nicht fsyncen: %m"
 
-#: access/transam/xlog.c:4414 access/transam/xlog.c:4650
+#: access/transam/xlog.c:4420 access/transam/xlog.c:4656
 #, c-format
 msgid "could not close control file: %m"
 msgstr "konnte Kontrolldatei nicht schließen: %m"
 
-#: access/transam/xlog.c:4432 access/transam/xlog.c:4628
+#: access/transam/xlog.c:4438 access/transam/xlog.c:4634
 #, c-format
 msgid "could not open control file \"%s\": %m"
 msgstr "konnte Kontrolldatei „%s“ nicht öffnen: %m"
 
-#: access/transam/xlog.c:4438
+#: access/transam/xlog.c:4444
 #, c-format
 msgid "could not read from control file: %m"
 msgstr "konnte nicht aus Kontrolldatei lesen: %m"
 
-#: access/transam/xlog.c:4451 access/transam/xlog.c:4460
-#: access/transam/xlog.c:4484 access/transam/xlog.c:4491
-#: access/transam/xlog.c:4498 access/transam/xlog.c:4503
-#: access/transam/xlog.c:4510 access/transam/xlog.c:4517
-#: access/transam/xlog.c:4524 access/transam/xlog.c:4531
-#: access/transam/xlog.c:4538 access/transam/xlog.c:4545
-#: access/transam/xlog.c:4552 access/transam/xlog.c:4561
-#: access/transam/xlog.c:4568 access/transam/xlog.c:4577
-#: access/transam/xlog.c:4584 access/transam/xlog.c:4593
-#: access/transam/xlog.c:4600 utils/init/miscinit.c:1139
+#: access/transam/xlog.c:4457 access/transam/xlog.c:4466
+#: access/transam/xlog.c:4490 access/transam/xlog.c:4497
+#: access/transam/xlog.c:4504 access/transam/xlog.c:4509
+#: access/transam/xlog.c:4516 access/transam/xlog.c:4523
+#: access/transam/xlog.c:4530 access/transam/xlog.c:4537
+#: access/transam/xlog.c:4544 access/transam/xlog.c:4551
+#: access/transam/xlog.c:4558 access/transam/xlog.c:4567
+#: access/transam/xlog.c:4574 access/transam/xlog.c:4583
+#: access/transam/xlog.c:4590 access/transam/xlog.c:4599
+#: access/transam/xlog.c:4606 utils/init/miscinit.c:1139
 #, c-format
 msgid "database files are incompatible with server"
 msgstr "Datenbankdateien sind inkompatibel mit Server"
 
-#: access/transam/xlog.c:4452
+#: access/transam/xlog.c:4458
 #, c-format
 msgid "The database cluster was initialized with PG_CONTROL_VERSION %d (0x%08x), but the server was compiled with PG_CONTROL_VERSION %d (0x%08x)."
 msgstr "Der Datenbank-Cluster wurde mit PG_CONTROL_VERSION %d (0x%08x) initialisiert, aber der Server wurde mit PG_CONTROL_VERSION %d (0x%08x) kompiliert."
 
-#: access/transam/xlog.c:4456
+#: access/transam/xlog.c:4462
 #, c-format
 msgid "This could be a problem of mismatched byte ordering.  It looks like you need to initdb."
 msgstr "Das Problem könnte eine falsche Byte-Reihenfolge sein. Es sieht so aus, dass Sie initdb ausführen müssen."
 
-#: access/transam/xlog.c:4461
+#: access/transam/xlog.c:4467
 #, c-format
 msgid "The database cluster was initialized with PG_CONTROL_VERSION %d, but the server was compiled with PG_CONTROL_VERSION %d."
 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:4464 access/transam/xlog.c:4488
-#: access/transam/xlog.c:4495 access/transam/xlog.c:4500
+#: access/transam/xlog.c:4470 access/transam/xlog.c:4494
+#: access/transam/xlog.c:4501 access/transam/xlog.c:4506
 #, c-format
 msgid "It looks like you need to initdb."
 msgstr "Es sieht so aus, dass Sie initdb ausführen müssen."
 
-#: access/transam/xlog.c:4475
+#: access/transam/xlog.c:4481
 #, c-format
 msgid "incorrect checksum in control file"
 msgstr "falsche Prüfsumme in Kontrolldatei"
 
-#: access/transam/xlog.c:4485
+#: access/transam/xlog.c:4491
 #, c-format
 msgid "The database cluster was initialized with CATALOG_VERSION_NO %d, but the server was compiled with CATALOG_VERSION_NO %d."
 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:4492
+#: access/transam/xlog.c:4498
 #, c-format
 msgid "The database cluster was initialized with MAXALIGN %d, but the server was compiled with MAXALIGN %d."
 msgstr "Der Datenbank-Cluster wurde mit MAXALIGN %d initialisiert, aber der Server wurde mit MAXALIGN %d kompiliert."
 
-#: access/transam/xlog.c:4499
+#: access/transam/xlog.c:4505
 #, c-format
 msgid "The database cluster appears to use a different floating-point number format than the server executable."
 msgstr "Der Datenbank-Cluster verwendet anscheinend ein anderes Fließkommazahlenformat als das Serverprogramm."
 
-#: access/transam/xlog.c:4504
+#: access/transam/xlog.c:4510
 #, c-format
 msgid "The database cluster was initialized with BLCKSZ %d, but the server was compiled with BLCKSZ %d."
 msgstr "Der Datenbank-Cluster wurde mit BLCKSZ %d initialisiert, aber der Server wurde mit BLCKSZ %d kompiliert."
 
-#: access/transam/xlog.c:4507 access/transam/xlog.c:4514
-#: access/transam/xlog.c:4521 access/transam/xlog.c:4528
-#: access/transam/xlog.c:4535 access/transam/xlog.c:4542
-#: access/transam/xlog.c:4549 access/transam/xlog.c:4556
-#: access/transam/xlog.c:4564 access/transam/xlog.c:4571
-#: access/transam/xlog.c:4580 access/transam/xlog.c:4587
-#: access/transam/xlog.c:4596 access/transam/xlog.c:4603
+#: access/transam/xlog.c:4513 access/transam/xlog.c:4520
+#: access/transam/xlog.c:4527 access/transam/xlog.c:4534
+#: access/transam/xlog.c:4541 access/transam/xlog.c:4548
+#: access/transam/xlog.c:4555 access/transam/xlog.c:4562
+#: access/transam/xlog.c:4570 access/transam/xlog.c:4577
+#: access/transam/xlog.c:4586 access/transam/xlog.c:4593
+#: access/transam/xlog.c:4602 access/transam/xlog.c:4609
 #, c-format
 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:4511
+#: access/transam/xlog.c:4517
 #, c-format
 msgid "The database cluster was initialized with RELSEG_SIZE %d, but the server was compiled with RELSEG_SIZE %d."
 msgstr "Der Datenbank-Cluster wurde mit RELSEG_SIZE %d initialisiert, aber der Server wurde mit RELSEGSIZE %d kompiliert."
 
-#: access/transam/xlog.c:4518
+#: access/transam/xlog.c:4524
 #, c-format
 msgid "The database cluster was initialized with XLOG_BLCKSZ %d, but the server was compiled with XLOG_BLCKSZ %d."
 msgstr "Der Datenbank-Cluster wurde mit XLOG_BLCKSZ %d initialisiert, aber der Server wurde mit XLOG_BLCKSZ %d kompiliert."
 
-#: access/transam/xlog.c:4525
+#: access/transam/xlog.c:4531
 #, 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:4532
+#: access/transam/xlog.c:4538
 #, c-format
 msgid "The database cluster was initialized with NAMEDATALEN %d, but the server was compiled with NAMEDATALEN %d."
 msgstr "Der Datenbank-Cluster wurde mit NAMEDATALEN %d initialisiert, aber der Server wurde mit NAMEDATALEN %d kompiliert."
 
-#: access/transam/xlog.c:4539
+#: access/transam/xlog.c:4545
 #, c-format
 msgid "The database cluster was initialized with INDEX_MAX_KEYS %d, but the server was compiled with INDEX_MAX_KEYS %d."
 msgstr "Der Datenbank-Cluster wurde mit INDEX_MAX_KEYS %d initialisiert, aber der Server wurde mit INDEX_MAX_KEYS %d kompiliert."
 
-#: access/transam/xlog.c:4546
+#: access/transam/xlog.c:4552
 #, c-format
 msgid "The database cluster was initialized with TOAST_MAX_CHUNK_SIZE %d, but the server was compiled with TOAST_MAX_CHUNK_SIZE %d."
 msgstr "Der Datenbank-Cluster wurde mit TOAST_MAX_CHUNK_SIZE %d initialisiert, aber der Server wurde mit TOAST_MAX_CHUNK_SIZE %d kompiliert."
 
-#: access/transam/xlog.c:4553
-#, fuzzy, c-format
-#| msgid "The database cluster was initialized with BLCKSZ %d, but the server was compiled with BLCKSZ %d."
+#: access/transam/xlog.c:4559
+#, c-format
 msgid "The database cluster was initialized with LOBLKSIZE %d, but the server was compiled with LOBLKSIZE %d."
-msgstr "Der Datenbank-Cluster wurde mit BLCKSZ %d initialisiert, aber der Server wurde mit BLCKSZ %d kompiliert."
+msgstr "Der Datenbank-Cluster wurde mit LOBLKSIZE %d initialisiert, aber der Server wurde mit LOBLKSIZE %d kompiliert."
 
-#: access/transam/xlog.c:4562
+#: access/transam/xlog.c:4568
 #, c-format
 msgid "The database cluster was initialized without HAVE_INT64_TIMESTAMP but the server was compiled with HAVE_INT64_TIMESTAMP."
 msgstr "Der Datenbank-Cluster wurde ohne HAVE_INT64_TIMESTAMP initialisiert, aber der Server wurde mit HAE_INT64_TIMESTAMP kompiliert."
 
-#: access/transam/xlog.c:4569
+#: access/transam/xlog.c:4575
 #, c-format
 msgid "The database cluster was initialized with HAVE_INT64_TIMESTAMP but the server was compiled without HAVE_INT64_TIMESTAMP."
 msgstr "Der Datenbank-Cluster wurde mit HAVE_INT64_TIMESTAMP initialisiert, aber der Server wurde ohne HAE_INT64_TIMESTAMP kompiliert."
 
-#: access/transam/xlog.c:4578
+#: access/transam/xlog.c:4584
 #, c-format
 msgid "The database cluster was initialized without USE_FLOAT4_BYVAL but the server was compiled with USE_FLOAT4_BYVAL."
 msgstr "Der Datenbank-Cluster wurde ohne USE_FLOAT4_BYVAL initialisiert, aber der Server wurde mit USE_FLOAT4_BYVAL kompiliert."
 
-#: access/transam/xlog.c:4585
+#: access/transam/xlog.c:4591
 #, c-format
 msgid "The database cluster was initialized with USE_FLOAT4_BYVAL but the server was compiled without USE_FLOAT4_BYVAL."
 msgstr "Der Datenbank-Cluster wurde mit USE_FLOAT4_BYVAL initialisiert, aber der Server wurde ohne USE_FLOAT4_BYVAL kompiliert."
 
-#: access/transam/xlog.c:4594
+#: access/transam/xlog.c:4600
 #, c-format
 msgid "The database cluster was initialized without USE_FLOAT8_BYVAL but the server was compiled with USE_FLOAT8_BYVAL."
 msgstr "Der Datenbank-Cluster wurde ohne USE_FLOAT8_BYVAL initialisiert, aber der Server wurde mit USE_FLOAT8_BYVAL kompiliert."
 
-#: access/transam/xlog.c:4601
+#: access/transam/xlog.c:4607
 #, c-format
 msgid "The database cluster was initialized with USE_FLOAT8_BYVAL but the server was compiled without USE_FLOAT8_BYVAL."
 msgstr "Der Datenbank-Cluster wurde mit USE_FLOAT8_BYVAL initialisiert, aber der Server wurde ohne USE_FLOAT8_BYVAL kompiliert."
 
-#: access/transam/xlog.c:4997
+#: access/transam/xlog.c:5008
 #, c-format
 msgid "could not write bootstrap transaction log file: %m"
 msgstr "konnte Bootstrap-Transaktionslogdatei nicht schreiben: %m"
 
-#: access/transam/xlog.c:5003
+#: access/transam/xlog.c:5014
 #, c-format
 msgid "could not fsync bootstrap transaction log file: %m"
 msgstr "konnte Bootstrap-Transaktionslogdatei nicht fsyncen: %m"
 
-#: access/transam/xlog.c:5008
+#: access/transam/xlog.c:5019
 #, c-format
 msgid "could not close bootstrap transaction log file: %m"
 msgstr "konnte Bootstrap-Transaktionslogdatei nicht schließen: %m"
 
-#: access/transam/xlog.c:5079
+#: access/transam/xlog.c:5090
 #, c-format
 msgid "could not open recovery command file \"%s\": %m"
 msgstr "konnte Recovery-Kommandodatei „%s“ nicht öffnen: %m"
 
-#: access/transam/xlog.c:5119 access/transam/xlog.c:5210
-#: access/transam/xlog.c:5221 commands/extension.c:527
-#: commands/extension.c:535 utils/misc/guc.c:5373
+#: access/transam/xlog.c:5130 access/transam/xlog.c:5221
+#: access/transam/xlog.c:5232 commands/extension.c:527
+#: commands/extension.c:535 utils/misc/guc.c:5369
 #, c-format
 msgid "parameter \"%s\" requires a Boolean value"
 msgstr "Parameter „%s“ erfordert einen Boole’schen Wert"
 
-#: access/transam/xlog.c:5135
+#: access/transam/xlog.c:5146
 #, 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:5151
+#: access/transam/xlog.c:5162
 #, 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:5182
+#: access/transam/xlog.c:5193
 #, c-format
 msgid "recovery_target_name is too long (maximum %d characters)"
 msgstr "recovery_target_name ist zu lang (maximal %d Zeichen)"
 
-#: access/transam/xlog.c:5196
+#: access/transam/xlog.c:5207
 #, fuzzy, c-format
 #| msgid "unrecognized recovery parameter \"%s\""
 msgid "invalid recovery_target parameter"
 msgstr "unbekannter Recovery-Parameter „%s“"
 
-#: access/transam/xlog.c:5197
+#: access/transam/xlog.c:5208
 #, c-format
 msgid "The only allowed value is 'immediate'"
 msgstr ""
 
-#: access/transam/xlog.c:5256
+#: access/transam/xlog.c:5267
 #, fuzzy, c-format
 #| msgid "parameter \"%s\" requires a Boolean value"
 msgid "parameter \"%s\" requires a temporal value"
 msgstr "Parameter „%s“ erfordert einen Boole’schen Wert"
 
-#: access/transam/xlog.c:5258 catalog/dependency.c:970
+#: access/transam/xlog.c:5269 catalog/dependency.c:970
 #: catalog/dependency.c:971 catalog/dependency.c:977 catalog/dependency.c:978
 #: catalog/dependency.c:989 catalog/dependency.c:990
-#: catalog/objectaddress.c:764 commands/tablecmds.c:762
-#: commands/tablecmds.c:8941 commands/user.c:988 commands/view.c:475
+#: catalog/objectaddress.c:764 commands/tablecmds.c:763
+#: commands/tablecmds.c:8949 commands/user.c:988 commands/view.c:475
 #: libpq/auth.c:285 port/win32/security.c:51 storage/lmgr/deadlock.c:955
-#: storage/lmgr/proc.c:1184 utils/misc/guc.c:5405 utils/misc/guc.c:5530
-#: utils/misc/guc.c:8849 utils/misc/guc.c:8883 utils/misc/guc.c:8917
-#: utils/misc/guc.c:8951 utils/misc/guc.c:8986
+#: storage/lmgr/proc.c:1184 utils/misc/guc.c:5401 utils/misc/guc.c:5526
+#: utils/misc/guc.c:8867 utils/misc/guc.c:8901 utils/misc/guc.c:8935
+#: utils/misc/guc.c:8969 utils/misc/guc.c:9004
 #, c-format
 msgid "%s"
 msgstr "%s"
 
-#: access/transam/xlog.c:5260
+#: access/transam/xlog.c:5271
 #, c-format
 msgid "recovery_min_apply_delay = '%s'"
 msgstr ""
 
-#: access/transam/xlog.c:5264
+#: access/transam/xlog.c:5275
 #, c-format
 msgid "unrecognized recovery parameter \"%s\""
 msgstr "unbekannter Recovery-Parameter „%s“"
 
-#: access/transam/xlog.c:5275
+#: access/transam/xlog.c:5286
 #, c-format
 msgid "recovery command file \"%s\" specified neither primary_conninfo nor restore_command"
 msgstr "Recovery-Kommandodatei „%s“ hat weder primary_conninfo noch restore_command angegeben"
 
-#: access/transam/xlog.c:5277
+#: access/transam/xlog.c:5288
 #, c-format
 msgid "The database server will regularly poll the pg_xlog subdirectory to check for files placed there."
 msgstr "Der Datenbankserver prüft das Unterverzeichnis pg_xlog regelmäßig auf dort abgelegte Dateien."
 
-#: access/transam/xlog.c:5283
+#: access/transam/xlog.c:5294
 #, c-format
 msgid "recovery command file \"%s\" must specify restore_command when standby mode is not enabled"
 msgstr "Recovery-Kommandodatei „%s“ muss restore_command angeben, wenn der Standby-Modus nicht eingeschaltet ist"
 
-#: access/transam/xlog.c:5303
+#: access/transam/xlog.c:5314
 #, c-format
 msgid "recovery target timeline %u does not exist"
 msgstr "recovery_target_timeline %u existiert nicht"
 
-#: access/transam/xlog.c:5398
+#: access/transam/xlog.c:5409
 #, c-format
 msgid "archive recovery complete"
 msgstr "Wiederherstellung aus Archiv abgeschlossen"
 
-#: access/transam/xlog.c:5457 access/transam/xlog.c:5619
+#: access/transam/xlog.c:5479 access/transam/xlog.c:5673
 #, fuzzy, c-format
 #| msgid "recovery stopping after commit of transaction %u, time %s"
 msgid "recovery stopping after reaching consistency"
 msgstr "Wiederherstellung beendet nach Commit der Transaktion %u, Zeit %s"
 
-#: access/transam/xlog.c:5515
+#: access/transam/xlog.c:5554
 #, 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:5522
+#: access/transam/xlog.c:5561
 #, 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:5564
+#: access/transam/xlog.c:5603
 #, c-format
 msgid "recovery stopping at restore point \"%s\", time %s"
 msgstr "Wiederherstellung beendet bei Restore-Punkt „%s“, Zeit %s"
 
-#: access/transam/xlog.c:5600
+#: access/transam/xlog.c:5653
 #, 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:5607
+#: access/transam/xlog.c:5661
 #, 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:5646
+#: access/transam/xlog.c:5700
 #, c-format
 msgid "recovery has paused"
 msgstr "Wiederherstellung wurde pausiert"
 
-#: access/transam/xlog.c:5647
+#: access/transam/xlog.c:5701
 #, c-format
 msgid "Execute pg_xlog_replay_resume() to continue."
 msgstr "Führen Sie pg_xlog_replay_resume() aus um fortzusetzen."
 
-#: access/transam/xlog.c:5861
+#: access/transam/xlog.c:5916
 #, c-format
 msgid "hot standby is not possible because %s = %d is a lower setting than on the master server (its value was %d)"
 msgstr "Hot Standby ist nicht möglich, weil %s = %d eine niedrigere Einstellung als auf dem Masterserver ist (Wert dort war %d)"
 
-#: access/transam/xlog.c:5883
+#: access/transam/xlog.c:5938
 #, c-format
 msgid "WAL was generated with wal_level=minimal, data may be missing"
 msgstr "WAL wurde mit wal_level=minimal erzeugt, eventuell fehlen Daten"
 
-#: access/transam/xlog.c:5884
+#: access/transam/xlog.c:5939
 #, c-format
 msgid "This happens if you temporarily set wal_level=minimal without taking a new base backup."
 msgstr "Das passiert, wenn vorübergehend wal_level=minimal gesetzt wurde, ohne ein neues Base-Backup zu erzeugen."
 
-#: access/transam/xlog.c:5895
+#: access/transam/xlog.c:5950
 #, fuzzy, c-format
 #| msgid "hot standby is not possible because wal_level was not set to \"hot_standby\" on the master server"
 msgid "hot standby is not possible because wal_level was not set to \"hot_standby\" or higher on the master server"
 msgstr "Hot Standby ist nicht möglich, weil wal_level auf dem Masterserver nicht auf „hot_standby“ gesetzt wurde"
 
-#: access/transam/xlog.c:5896
+#: access/transam/xlog.c:5951
 #, c-format
 msgid "Either set wal_level to \"hot_standby\" on the master, or turn off hot_standby here."
 msgstr "Setzen Sie entweder wal_level auf „hot_standby“ auf dem Master oder schalten Sie hot_standby hier aus."
 
-#: access/transam/xlog.c:5951
+#: access/transam/xlog.c:6006
 #, c-format
 msgid "control file contains invalid data"
 msgstr "Kontrolldatei enthält ungültige Daten"
 
-#: access/transam/xlog.c:5957
+#: access/transam/xlog.c:6012
 #, c-format
 msgid "database system was shut down at %s"
 msgstr "Datenbanksystem wurde am %s heruntergefahren"
 
-#: access/transam/xlog.c:5962
+#: access/transam/xlog.c:6017
 #, c-format
 msgid "database system was shut down in recovery at %s"
 msgstr "Datenbanksystem wurde während der Wiederherstellung am %s heruntergefahren"
 
-#: access/transam/xlog.c:5966
+#: access/transam/xlog.c:6021
 #, c-format
 msgid "database system shutdown was interrupted; last known up at %s"
 msgstr "Datenbanksystem wurde beim Herunterfahren unterbrochen; letzte bekannte Aktion am %s"
 
-#: access/transam/xlog.c:5970
+#: access/transam/xlog.c:6025
 #, 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:5972
+#: access/transam/xlog.c:6027
 #, c-format
 msgid "This probably means that some data is corrupted and you will have to use the last backup for recovery."
 msgstr "Das bedeutet wahrscheinlich, dass einige Daten verfälscht sind und Sie die letzte Datensicherung zur Wiederherstellung verwenden müssen."
 
-#: access/transam/xlog.c:5976
+#: access/transam/xlog.c:6031
 #, c-format
 msgid "database system was interrupted while in recovery at log time %s"
 msgstr "Datenbanksystem wurde während der Wiederherstellung bei Logzeit %s unterbrochen"
 
-#: access/transam/xlog.c:5978
+#: access/transam/xlog.c:6033
 #, c-format
 msgid "If this has occurred more than once some data might be corrupted and you might need to choose an earlier recovery target."
 msgstr "Wenn dies mehr als einmal vorgekommen ist, dann sind einige Daten möglicherweise verfälscht und Sie müssen ein früheres Wiederherstellungsziel wählen."
 
-#: access/transam/xlog.c:5982
+#: access/transam/xlog.c:6037
 #, c-format
 msgid "database system was interrupted; last known up at %s"
 msgstr "Datenbanksystem wurde unterbrochen; letzte bekannte Aktion am %s"
 
-#: access/transam/xlog.c:6036
+#: access/transam/xlog.c:6091
 #, c-format
 msgid "entering standby mode"
 msgstr "Standby-Modus eingeschaltet"
 
-#: access/transam/xlog.c:6039
+#: access/transam/xlog.c:6094
 #, c-format
 msgid "starting point-in-time recovery to XID %u"
 msgstr "starte Point-in-Time-Recovery bis XID %u"
 
-#: access/transam/xlog.c:6043
+#: access/transam/xlog.c:6098
 #, c-format
 msgid "starting point-in-time recovery to %s"
 msgstr "starte Point-in-Time-Recovery bis %s"
 
-#: access/transam/xlog.c:6047
+#: access/transam/xlog.c:6102
 #, c-format
 msgid "starting point-in-time recovery to \"%s\""
 msgstr "starte Point-in-Time-Recovery bis „%s“"
 
-#: access/transam/xlog.c:6051
+#: access/transam/xlog.c:6106
 #, fuzzy, c-format
 #| msgid "starting point-in-time recovery to %s"
 msgid "starting point-in-time recovery to earliest consistent point"
 msgstr "starte Point-in-Time-Recovery bis %s"
 
-#: access/transam/xlog.c:6054
+#: access/transam/xlog.c:6109
 #, c-format
 msgid "starting archive recovery"
 msgstr "starte Wiederherstellung aus Archiv"
 
-#: access/transam/xlog.c:6071
+#: access/transam/xlog.c:6126
 #, c-format
 msgid "Failed while allocating an XLog reading processor."
 msgstr "Fehlgeschlagen beim Anlegen eines XLog-Leseprozessors."
 
-#: access/transam/xlog.c:6096 access/transam/xlog.c:6163
+#: access/transam/xlog.c:6151 access/transam/xlog.c:6218
 #, c-format
 msgid "checkpoint record is at %X/%X"
 msgstr "Checkpoint-Eintrag ist bei %X/%X"
 
-#: access/transam/xlog.c:6110
+#: access/transam/xlog.c:6165
 #, c-format
 msgid "could not find redo location referenced by checkpoint record"
 msgstr "konnte die vom Checkpoint-Datensatz referenzierte Redo-Position nicht finden"
 
-#: access/transam/xlog.c:6111 access/transam/xlog.c:6118
+#: access/transam/xlog.c:6166 access/transam/xlog.c:6173
 #, c-format
 msgid "If you are not restoring from a backup, try removing the file \"%s/backup_label\"."
 msgstr "Wenn Sie gerade keine Sicherung wiederherstellen, versuchen Sie, die Datei „%s/backup_label“ zu löschen."
 
-#: access/transam/xlog.c:6117
+#: access/transam/xlog.c:6172
 #, c-format
 msgid "could not locate required checkpoint record"
 msgstr "konnte den nötigen Checkpoint-Datensatz nicht finden"
 
-#: access/transam/xlog.c:6173 access/transam/xlog.c:6188
+#: access/transam/xlog.c:6228 access/transam/xlog.c:6243
 #, c-format
 msgid "could not locate a valid checkpoint record"
 msgstr "konnte keinen gültigen Checkpoint-Datensatz finden"
 
-#: access/transam/xlog.c:6182
+#: access/transam/xlog.c:6237
 #, c-format
 msgid "using previous checkpoint record at %X/%X"
 msgstr "verwende vorherigen Checkpoint-Eintrag bei %X/%X"
 
-#: access/transam/xlog.c:6212
+#: access/transam/xlog.c:6267
 #, c-format
 msgid "requested timeline %u is not a child of this server's history"
 msgstr "angeforderte Zeitleiste %u ist kein Kind der History dieses Servers"
 
-#: access/transam/xlog.c:6214
+#: access/transam/xlog.c:6269
 #, c-format
 msgid "Latest checkpoint is at %X/%X on timeline %u, but in the history of the requested timeline, the server forked off from that timeline at %X/%X."
 msgstr "Neuester Checkpoint ist bei %X/%X auf Zeitleiste %u, aber in der History der angeforderten Zeitleiste zweigte der Server von dieser Zeitleiste bei %X/%X ab."
 
-#: access/transam/xlog.c:6230
+#: access/transam/xlog.c:6285
 #, c-format
 msgid "requested timeline %u does not contain minimum recovery point %X/%X on timeline %u"
 msgstr "angeforderte Zeitleiste %u enthält nicht den minimalen Wiederherstellungspunkt %X/%X auf Zeitleiste %u"
 
-#: access/transam/xlog.c:6239
+#: access/transam/xlog.c:6294
 #, c-format
 msgid "redo record is at %X/%X; shutdown %s"
 msgstr "Redo-Eintrag ist bei %X/%X; Shutdown %s"
 
-#: access/transam/xlog.c:6243
+#: access/transam/xlog.c:6298
 #, c-format
 msgid "next transaction ID: %u/%u; next OID: %u"
 msgstr "nächste Transaktions-ID: %u/%u; nächste OID: %u"
 
-#: access/transam/xlog.c:6247
+#: access/transam/xlog.c:6302
 #, c-format
 msgid "next MultiXactId: %u; next MultiXactOffset: %u"
 msgstr "nächste MultiXactId: %u; nächster MultiXactOffset: %u"
 
-#: access/transam/xlog.c:6250
+#: access/transam/xlog.c:6305
 #, c-format
 msgid "oldest unfrozen transaction ID: %u, in database %u"
 msgstr "älteste nicht eingefrorene Transaktions-ID: %u, in Datenbank %u"
 
-#: access/transam/xlog.c:6253
+#: access/transam/xlog.c:6308
 #, c-format
 msgid "oldest MultiXactId: %u, in database %u"
 msgstr "älteste MultiXactId: %u, in Datenbank %u"
 
-#: access/transam/xlog.c:6257
+#: access/transam/xlog.c:6312
 #, c-format
 msgid "invalid next transaction ID"
 msgstr "ungültige nächste Transaktions-ID"
 
-#: access/transam/xlog.c:6327
+#: access/transam/xlog.c:6382
 #, c-format
 msgid "invalid redo in checkpoint record"
 msgstr "ungültiges Redo im Checkpoint-Datensatz"
 
-#: access/transam/xlog.c:6338
+#: access/transam/xlog.c:6393
 #, c-format
 msgid "invalid redo record in shutdown checkpoint"
 msgstr "ungültiger Redo-Datensatz im Shutdown-Checkpoint"
 
-#: access/transam/xlog.c:6369
+#: access/transam/xlog.c:6424
 #, c-format
 msgid "database system was not properly shut down; automatic recovery in progress"
 msgstr "Datenbanksystem wurde nicht richtig heruntergefahren; automatische Wiederherstellung läuft"
 
-#: access/transam/xlog.c:6373
+#: access/transam/xlog.c:6428
 #, c-format
 msgid "crash recovery starts in timeline %u and has target timeline %u"
 msgstr "Wiederherstellung nach Absturz beginnt in Zeitleiste %u und hat Zielzeitleiste %u"
 
-#: access/transam/xlog.c:6410
+#: access/transam/xlog.c:6465
 #, c-format
 msgid "backup_label contains data inconsistent with control file"
 msgstr "Daten in backup_label stimmen nicht mit Kontrolldatei überein"
 
-#: access/transam/xlog.c:6411
+#: access/transam/xlog.c:6466
 #, c-format
 msgid "This means that the backup is corrupted and you will have to use another backup for recovery."
 msgstr "Das bedeutet, dass die Datensicherung verfälscht ist und Sie eine andere Datensicherung zur Wiederherstellung verwenden werden müssen."
 
-#: access/transam/xlog.c:6476
+#: access/transam/xlog.c:6531
 #, c-format
 msgid "initializing for hot standby"
 msgstr "initialisiere für Hot Standby"
 
-#: access/transam/xlog.c:6608
+#: access/transam/xlog.c:6663
 #, c-format
 msgid "redo starts at %X/%X"
 msgstr "Redo beginnt bei %X/%X"
 
-#: access/transam/xlog.c:6823
+#: access/transam/xlog.c:6878
 #, c-format
 msgid "redo done at %X/%X"
 msgstr "Redo fertig bei %X/%X"
 
-#: access/transam/xlog.c:6828 access/transam/xlog.c:8684
+#: access/transam/xlog.c:6883 access/transam/xlog.c:8734
 #, c-format
 msgid "last completed transaction was at log time %s"
 msgstr "letzte vollständige Transaktion war bei Logzeit %s"
 
-#: access/transam/xlog.c:6836
+#: access/transam/xlog.c:6891
 #, c-format
 msgid "redo is not required"
 msgstr "Redo nicht nötig"
 
-#: access/transam/xlog.c:6884
+#: access/transam/xlog.c:6939
 #, c-format
 msgid "requested recovery stop point is before consistent recovery point"
 msgstr "angeforderter Recovery-Endpunkt ist vor konsistentem Recovery-Punkt"
 
-#: access/transam/xlog.c:6900 access/transam/xlog.c:6904
+#: access/transam/xlog.c:6955 access/transam/xlog.c:6959
 #, c-format
 msgid "WAL ends before end of online backup"
 msgstr "WAL endet vor dem Ende der Online-Sicherung"
 
-#: access/transam/xlog.c:6901
+#: access/transam/xlog.c:6956
 #, c-format
 msgid "All WAL generated while online backup was taken must be available at recovery."
 msgstr "Der komplette WAL, der während der Online-Sicherung erzeugt wurde, muss bei der Wiederherstellung verfügbar sein."
 
-#: access/transam/xlog.c:6905
+#: access/transam/xlog.c:6960
 #, c-format
 msgid "Online backup started with pg_start_backup() must be ended with pg_stop_backup(), and all WAL up to that point must be available at recovery."
 msgstr "Die mit pg_start_backup() begonnene Online-Sicherung muss mit pg_stop_backup() beendet werden und der ganze WAL bis zu diesem Punkt muss bei der Wiederherstellung verfügbar sein."
 
-#: access/transam/xlog.c:6908
+#: access/transam/xlog.c:6963
 #, c-format
 msgid "WAL ends before consistent recovery point"
 msgstr "WAL endet vor einem konsistenten Wiederherstellungspunkt"
 
-#: access/transam/xlog.c:6935
+#: access/transam/xlog.c:6990
 #, c-format
 msgid "selected new timeline ID: %u"
 msgstr "gewählte neue Zeitleisten-ID: %u"
 
-#: access/transam/xlog.c:7284
+#: access/transam/xlog.c:7339
 #, c-format
 msgid "consistent recovery state reached at %X/%X"
 msgstr "konsistenter Wiederherstellungszustand erreicht bei %X/%X"
 
-#: access/transam/xlog.c:7481
+#: access/transam/xlog.c:7536
 #, c-format
 msgid "invalid primary checkpoint link in control file"
 msgstr "ungültige primäre Checkpoint-Verknüpfung in Kontrolldatei"
 
-#: access/transam/xlog.c:7485
+#: access/transam/xlog.c:7540
 #, c-format
 msgid "invalid secondary checkpoint link in control file"
 msgstr "ungültige sekundäre Checkpoint-Verknüpfung in Kontrolldatei"
 
-#: access/transam/xlog.c:7489
+#: access/transam/xlog.c:7544
 #, c-format
 msgid "invalid checkpoint link in backup_label file"
 msgstr "ungültige Checkpoint-Verknüpfung in backup_label-Datei"
 
-#: access/transam/xlog.c:7506
+#: access/transam/xlog.c:7561
 #, c-format
 msgid "invalid primary checkpoint record"
 msgstr "ungültiger primärer Checkpoint-Datensatz"
 
-#: access/transam/xlog.c:7510
+#: access/transam/xlog.c:7565
 #, c-format
 msgid "invalid secondary checkpoint record"
 msgstr "ungültiger sekundärer Checkpoint-Datensatz"
 
-#: access/transam/xlog.c:7514
+#: access/transam/xlog.c:7569
 #, c-format
 msgid "invalid checkpoint record"
 msgstr "ungültiger Checkpoint-Datensatz"
 
-#: access/transam/xlog.c:7525
+#: access/transam/xlog.c:7580
 #, c-format
 msgid "invalid resource manager ID in primary checkpoint record"
 msgstr "ungültige Resource-Manager-ID im primären Checkpoint-Datensatz"
 
-#: access/transam/xlog.c:7529
+#: access/transam/xlog.c:7584
 #, c-format
 msgid "invalid resource manager ID in secondary checkpoint record"
 msgstr "ungültige Resource-Manager-ID im sekundären Checkpoint-Datensatz"
 
-#: access/transam/xlog.c:7533
+#: access/transam/xlog.c:7588
 #, c-format
 msgid "invalid resource manager ID in checkpoint record"
 msgstr "ungültige Resource-Manager-ID im Checkpoint-Datensatz"
 
-#: access/transam/xlog.c:7545
+#: access/transam/xlog.c:7600
 #, c-format
 msgid "invalid xl_info in primary checkpoint record"
 msgstr "ungültige xl_info im primären Checkpoint-Datensatz"
 
-#: access/transam/xlog.c:7549
+#: access/transam/xlog.c:7604
 #, c-format
 msgid "invalid xl_info in secondary checkpoint record"
 msgstr "ungültige xl_info im sekundären Checkpoint-Datensatz"
 
-#: access/transam/xlog.c:7553
+#: access/transam/xlog.c:7608
 #, c-format
 msgid "invalid xl_info in checkpoint record"
 msgstr "ungültige xl_info im Checkpoint-Datensatz"
 
-#: access/transam/xlog.c:7565
+#: access/transam/xlog.c:7620
 #, c-format
 msgid "invalid length of primary checkpoint record"
 msgstr "ungültige Länge des primären Checkpoint-Datensatzes"
 
-#: access/transam/xlog.c:7569
+#: access/transam/xlog.c:7624
 #, c-format
 msgid "invalid length of secondary checkpoint record"
 msgstr "ungültige Länge des sekundären Checkpoint-Datensatzes"
 
-#: access/transam/xlog.c:7573
+#: access/transam/xlog.c:7628
 #, c-format
 msgid "invalid length of checkpoint record"
 msgstr "ungültige Länge des Checkpoint-Datensatzes"
 
-#: access/transam/xlog.c:7738
+#: access/transam/xlog.c:7788
 #, c-format
 msgid "shutting down"
 msgstr "fahre herunter"
 
-#: access/transam/xlog.c:7761
+#: access/transam/xlog.c:7811
 #, c-format
 msgid "database system is shut down"
 msgstr "Datenbanksystem ist heruntergefahren"
 
-#: access/transam/xlog.c:8226
+#: access/transam/xlog.c:8276
 #, c-format
 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:8495
+#: access/transam/xlog.c:8545
 #, c-format
 msgid "skipping restartpoint, recovery has already ended"
 msgstr "Restart-Punkt übersprungen, Wiederherstellung ist bereits beendet"
 
-#: access/transam/xlog.c:8518
+#: access/transam/xlog.c:8568
 #, c-format
 msgid "skipping restartpoint, already performed at %X/%X"
 msgstr "Restart-Punkt wird übersprungen, schon bei %X/%X erledigt"
 
-#: access/transam/xlog.c:8682
+#: access/transam/xlog.c:8732
 #, c-format
 msgid "recovery restart point at %X/%X"
 msgstr "Recovery-Restart-Punkt bei %X/%X"
 
-#: access/transam/xlog.c:8827
+#: access/transam/xlog.c:8877
 #, c-format
 msgid "restore point \"%s\" created at %X/%X"
 msgstr "Restore-Punkt „%s“ erzeugt bei %X/%X"
 
-#: access/transam/xlog.c:9051
+#: access/transam/xlog.c:9101
 #, c-format
 msgid "unexpected previous timeline ID %u (current timeline ID %u) in checkpoint record"
 msgstr "unerwartete vorherige Zeitleisten-ID %u (aktuelle Zeitleisten-ID %u) im Checkpoint-Datensatz"
 
-#: access/transam/xlog.c:9060
+#: access/transam/xlog.c:9110
 #, c-format
 msgid "unexpected timeline ID %u (after %u) in checkpoint record"
 msgstr "unerwartete Zeitleisten-ID %u (nach %u) im Checkpoint-Datensatz"
 
-#: access/transam/xlog.c:9076
+#: access/transam/xlog.c:9126
 #, c-format
 msgid "unexpected timeline ID %u in checkpoint record, before reaching minimum recovery point %X/%X on timeline %u"
 msgstr "unerwartete Zeitleisten-ID %u in Checkpoint-Datensatz, bevor der minimale Wiederherstellungspunkt %X/%X auf Zeitleiste %u erreicht wurde"
 
-#: access/transam/xlog.c:9144
+#: access/transam/xlog.c:9194
 #, c-format
 msgid "online backup was canceled, recovery cannot continue"
 msgstr "Online-Sicherung wurde storniert, Wiederherstellung kann nicht fortgesetzt werden"
 
-#: access/transam/xlog.c:9205 access/transam/xlog.c:9254
-#: access/transam/xlog.c:9277
+#: access/transam/xlog.c:9255 access/transam/xlog.c:9304
+#: access/transam/xlog.c:9327
 #, c-format
 msgid "unexpected timeline ID %u (should be %u) in checkpoint record"
 msgstr "unerwartete Zeitleisten-ID %u (sollte %u sein) im Checkpoint-Datensatz"
 
-#: access/transam/xlog.c:9512
+#: access/transam/xlog.c:9562
 #, c-format
 msgid "could not fsync log segment %s: %m"
 msgstr "konnte Logsegment %s nicht fsyncen: %m"
 
-#: access/transam/xlog.c:9536
+#: access/transam/xlog.c:9586
 #, c-format
 msgid "could not fsync log file %s: %m"
 msgstr "konnte Logdatei %s nicht fsyncen: %m"
 
-#: access/transam/xlog.c:9544
+#: access/transam/xlog.c:9594
 #, c-format
 msgid "could not fsync write-through log file %s: %m"
 msgstr "konnte Write-Through-Logdatei %s nicht fsyncen: %m"
 
-#: access/transam/xlog.c:9553
+#: access/transam/xlog.c:9603
 #, c-format
 msgid "could not fdatasync log file %s: %m"
 msgstr "konnte Logdatei %s nicht fdatasyncen: %m"
 
-#: access/transam/xlog.c:9631 access/transam/xlog.c:9967
+#: access/transam/xlog.c:9681 access/transam/xlog.c:10017
 #: access/transam/xlogfuncs.c:111 access/transam/xlogfuncs.c:140
 #: access/transam/xlogfuncs.c:179 access/transam/xlogfuncs.c:200
 #: access/transam/xlogfuncs.c:270 access/transam/xlogfuncs.c:326
@@ -1932,53 +1926,52 @@ msgstr "konnte Logdatei %s nicht fdatasyncen: %m"
 msgid "recovery is in progress"
 msgstr "Wiederherstellung läuft"
 
-#: access/transam/xlog.c:9632 access/transam/xlog.c:9968
+#: access/transam/xlog.c:9682 access/transam/xlog.c:10018
 #: access/transam/xlogfuncs.c:112 access/transam/xlogfuncs.c:141
 #: access/transam/xlogfuncs.c:180 access/transam/xlogfuncs.c:201
 #, c-format
 msgid "WAL control functions cannot be executed during recovery."
 msgstr "Während der Wiederherstellung können keine WAL-Kontrollfunktionen ausgeführt werden."
 
-#: access/transam/xlog.c:9641 access/transam/xlog.c:9977
+#: access/transam/xlog.c:9691 access/transam/xlog.c:10027
 #, c-format
 msgid "WAL level not sufficient for making an online backup"
 msgstr "WAL-Level nicht ausreichend, um Online-Sicherung durchzuführen"
 
-#: access/transam/xlog.c:9642 access/transam/xlog.c:9978
+#: access/transam/xlog.c:9692 access/transam/xlog.c:10028
 #: access/transam/xlogfuncs.c:147
-#, fuzzy, c-format
-#| msgid "wal_level must be set to \"archive\" or \"hot_standby\" at server start."
+#, c-format
 msgid "wal_level must be set to \"archive\", \"hot_standby\", or \"logical\" at server start."
-msgstr "wal_level muss beim Serverstart auf „archive“ oder „hot_standby“ gesetzt werden."
+msgstr "wal_level muss beim Serverstart auf „archive“, „hot_standby“ oder „logical“ gesetzt werden."
 
-#: access/transam/xlog.c:9647
+#: access/transam/xlog.c:9697
 #, c-format
 msgid "backup label too long (max %d bytes)"
 msgstr "Backup-Label zu lang (maximal %d Bytes)"
 
-#: access/transam/xlog.c:9678 access/transam/xlog.c:9855
+#: access/transam/xlog.c:9728 access/transam/xlog.c:9905
 #, c-format
 msgid "a backup is already in progress"
 msgstr "ein Backup läuft bereits"
 
-#: access/transam/xlog.c:9679
+#: access/transam/xlog.c:9729
 #, c-format
 msgid "Run pg_stop_backup() and try again."
 msgstr "Führen Sie pg_stop_backup() aus und versuchen Sie es nochmal."
 
-#: access/transam/xlog.c:9773
+#: access/transam/xlog.c:9823
 #, c-format
 msgid "WAL generated with full_page_writes=off was replayed since last restartpoint"
 msgstr "mit full_page_writes=off erzeugtes WAL wurde seit dem letzten Restart-Punkt zurückgespielt"
 
-#: access/transam/xlog.c:9775 access/transam/xlog.c:10128
+#: access/transam/xlog.c:9825 access/transam/xlog.c:10178
 #, c-format
 msgid "This means that the backup being taken on the standby is corrupt and should not be used. Enable full_page_writes and run CHECKPOINT on the master, and then try an online backup again."
 msgstr "Das bedeutet, dass die aktuelle Datensicherung auf dem Standby-Server verfälscht ist und nicht verwendet werden sollte. Schalten Sie full_page_writes ein, führen Sie CHECKPOINT aus und versuchen Sie dann die Online-Sicherung erneut."
 
-#: access/transam/xlog.c:9849 access/transam/xlog.c:10018
+#: access/transam/xlog.c:9899 access/transam/xlog.c:10068
 #: access/transam/xlogarchive.c:106 access/transam/xlogarchive.c:265
-#: guc-file.l:801 replication/basebackup.c:464 replication/basebackup.c:521
+#: guc-file.l:885 replication/basebackup.c:464 replication/basebackup.c:521
 #: replication/logical/snapbuild.c:1467 storage/file/copydir.c:72
 #: storage/file/copydir.c:115 utils/adt/dbsize.c:68 utils/adt/dbsize.c:218
 #: utils/adt/dbsize.c:298 utils/adt/genfile.c:108 utils/adt/genfile.c:280
@@ -1986,126 +1979,118 @@ msgstr "Das bedeutet, dass die aktuelle Datensicherung auf dem Standby-Server ve
 msgid "could not stat file \"%s\": %m"
 msgstr "konnte „stat“ für Datei „%s“ nicht ausführen: %m"
 
-#: access/transam/xlog.c:9856
+#: access/transam/xlog.c:9906
 #, c-format
 msgid "If you're sure there is no backup in progress, remove file \"%s\" and try again."
 msgstr "Wenn Sie sicher sind, dass noch kein Backup läuft, entfernen Sie die Datei „%s“ und versuchen Sie es noch einmal."
 
-#: access/transam/xlog.c:9873 access/transam/xlog.c:10191
+#: access/transam/xlog.c:9923 access/transam/xlog.c:10241
 #, c-format
 msgid "could not write file \"%s\": %m"
 msgstr "konnte Datei „%s“ nicht schreiben: %m"
 
-#: access/transam/xlog.c:10022
+#: access/transam/xlog.c:10072
 #, c-format
 msgid "a backup is not in progress"
 msgstr "es läuft kein Backup"
 
-#: access/transam/xlog.c:10048 access/transam/xlogarchive.c:114
-#: access/transam/xlogarchive.c:467 storage/ipc/dsm.c:326
-#: storage/smgr/md.c:404 storage/smgr/md.c:453 storage/smgr/md.c:1317
-#, c-format
-msgid "could not remove file \"%s\": %m"
-msgstr "konnte Datei „%s“ nicht löschen: %m"
-
-#: access/transam/xlog.c:10061 access/transam/xlog.c:10074
-#: access/transam/xlog.c:10425 access/transam/xlog.c:10431
-#: access/transam/xlogfuncs.c:503
+#: access/transam/xlog.c:10111 access/transam/xlog.c:10124
+#: access/transam/xlog.c:10475 access/transam/xlog.c:10481
+#: access/transam/xlogfuncs.c:498
 #, c-format
 msgid "invalid data in file \"%s\""
 msgstr "ungültige Daten in Datei „%s“"
 
-#: access/transam/xlog.c:10078 replication/basebackup.c:951
+#: access/transam/xlog.c:10128 replication/basebackup.c:951
 #, c-format
 msgid "the standby was promoted during online backup"
 msgstr "der Standby-Server wurde während der Online-Sicherung zum Primärserver befördert"
 
-#: access/transam/xlog.c:10079 replication/basebackup.c:952
+#: access/transam/xlog.c:10129 replication/basebackup.c:952
 #, c-format
 msgid "This means that the backup being taken is corrupt and should not be used. Try taking another online backup."
 msgstr "Das bedeutet, dass die aktuelle Online-Sicherung verfälscht ist und nicht verwendet werden sollte. Versuchen Sie, eine neue Online-Sicherung durchzuführen."
 
-#: access/transam/xlog.c:10126
+#: access/transam/xlog.c:10176
 #, c-format
 msgid "WAL generated with full_page_writes=off was replayed during online backup"
 msgstr "mit full_page_writes=off erzeugtes WAL wurde während der Online-Sicherung zurückgespielt"
 
-#: access/transam/xlog.c:10240
+#: access/transam/xlog.c:10290
 #, c-format
 msgid "pg_stop_backup cleanup done, waiting for required WAL segments to be archived"
 msgstr "Aufräumen nach pg_stop_backup beendet, warte bis die benötigten WAL-Segmente archiviert sind"
 
-#: access/transam/xlog.c:10250
+#: access/transam/xlog.c:10300
 #, c-format
 msgid "pg_stop_backup still waiting for all required WAL segments to be archived (%d seconds elapsed)"
 msgstr "pg_stop_backup wartet immer noch, bis alle benötigten WAL-Segmente archiviert sind (%d Sekunden abgelaufen)"
 
-#: access/transam/xlog.c:10252
+#: access/transam/xlog.c:10302
 #, c-format
 msgid "Check that your archive_command is executing properly.  pg_stop_backup can be canceled safely, but the database backup will not be usable without all the WAL segments."
 msgstr "Prüfen Sie, ob das archive_command korrekt ausgeführt wird. pg_stop_backup kann gefahrlos abgebrochen werden, aber die Datenbanksicherung wird ohne die fehlenden WAL-Segmente nicht benutzbar sein."
 
-#: access/transam/xlog.c:10259
+#: access/transam/xlog.c:10309
 #, c-format
 msgid "pg_stop_backup complete, all required WAL segments have been archived"
 msgstr "pg_stop_backup abgeschlossen, alle benötigten WAL-Segmente wurden archiviert"
 
-#: access/transam/xlog.c:10263
+#: access/transam/xlog.c:10313
 #, c-format
 msgid "WAL archiving is not enabled; you must ensure that all required WAL segments are copied through other means to complete the backup"
 msgstr "WAL-Archivierung ist nicht eingeschaltet; Sie müssen dafür sorgen, dass alle benötigten WAL-Segmente auf andere Art kopiert werden, um die Sicherung abzuschließen"
 
-#: access/transam/xlog.c:10476
+#: access/transam/xlog.c:10526
 #, c-format
 msgid "xlog redo %s"
 msgstr "xlog redo %s"
 
-#: access/transam/xlog.c:10516
+#: access/transam/xlog.c:10566
 #, c-format
 msgid "online backup mode canceled"
 msgstr "Online-Sicherungsmodus storniert"
 
-#: access/transam/xlog.c:10517
+#: access/transam/xlog.c:10567
 #, c-format
 msgid "\"%s\" was renamed to \"%s\"."
 msgstr "„%s“ wurde in „%s“ umbenannt."
 
-#: access/transam/xlog.c:10524
+#: access/transam/xlog.c:10574
 #, c-format
 msgid "online backup mode was not canceled"
 msgstr "Online-Sicherungsmodus wurde nicht storniert"
 
-#: access/transam/xlog.c:10525
+#: access/transam/xlog.c:10575
 #, c-format
 msgid "Could not rename \"%s\" to \"%s\": %m."
 msgstr "Konnte „%s“ nicht in „%s“ umbenennen: %m."
 
-#: access/transam/xlog.c:10645 replication/logical/logicalfuncs.c:169
-#: replication/walreceiver.c:937 replication/walsender.c:2104
+#: access/transam/xlog.c:10695 replication/logical/logicalfuncs.c:169
+#: replication/walreceiver.c:937 replication/walsender.c:2106
 #, c-format
 msgid "could not seek in log segment %s to offset %u: %m"
 msgstr "konnte Positionszeiger von Logsegment %s nicht auf %u setzen: %m"
 
-#: access/transam/xlog.c:10657
+#: access/transam/xlog.c:10707
 #, c-format
 msgid "could not read from log segment %s, offset %u: %m"
 msgstr "konnte nicht aus Logsegment %s, Position %u lesen: %m"
 
-#: access/transam/xlog.c:11120
+#: access/transam/xlog.c:11170
 #, c-format
 msgid "received promote request"
 msgstr "Anforderung zum Befördern empfangen"
 
-#: access/transam/xlog.c:11133
+#: access/transam/xlog.c:11183
 #, c-format
 msgid "trigger file found: %s"
 msgstr "Triggerdatei gefunden: %s"
 
-#: access/transam/xlog.c:11142
-#, fuzzy, c-format
-#| msgid "could not stat file \"%s\": %m"
+#: access/transam/xlog.c:11192
+#, c-format
 msgid "could not stat trigger file \"%s\": %m"
-msgstr "konnte „stat“ für Datei „%s“ nicht ausführen: %m"
+msgstr "konnte „stat“ für Trigger-Datei „%s“ nicht ausführen: %m"
 
 #: access/transam/xlogarchive.c:244
 #, c-format
@@ -2118,19 +2103,17 @@ msgid "restored log file \"%s\" from archive"
 msgstr "Logdatei „%s“ aus Archiv wiederhergestellt"
 
 #: access/transam/xlogarchive.c:303
-#, fuzzy, c-format
-#| msgid "could not restore file \"%s\" from archive: return code %d"
+#, c-format
 msgid "could not restore file \"%s\" from archive: %s"
-msgstr "konnte Datei „%s“ nicht aus Archiv wiederherstellen: Rückgabecode %d"
+msgstr "konnte Datei „%s“ nicht aus Archiv wiederherstellen: %s"
 
 #. translator: First %s represents a recovery.conf parameter name like
 #. "recovery_end_command", the 2nd is the value of that parameter, the
 #. third an already translated error message.
 #: access/transam/xlogarchive.c:415
-#, fuzzy, c-format
-#| msgid "%s %s%s%s: %s"
+#, c-format
 msgid "%s \"%s\": %s"
-msgstr "%s %s%s%s: %s"
+msgstr "%s „%s“: %s"
 
 #: access/transam/xlogarchive.c:525 access/transam/xlogarchive.c:594
 #, c-format
@@ -2178,19 +2161,18 @@ msgid "pg_xlogfile_name() cannot be executed during recovery."
 msgstr "pg_xlogfile_name() kann nicht während der Wiederherstellung ausgeführt werden."
 
 #: access/transam/xlogfuncs.c:344 access/transam/xlogfuncs.c:366
-#: access/transam/xlogfuncs.c:388
 #, c-format
 msgid "must be superuser to control recovery"
 msgstr "nur Superuser können die Wiederherstellung kontrollieren"
 
 #: access/transam/xlogfuncs.c:349 access/transam/xlogfuncs.c:371
-#: access/transam/xlogfuncs.c:393
+#: access/transam/xlogfuncs.c:388
 #, c-format
 msgid "recovery is not in progress"
 msgstr "Wiederherstellung läuft nicht"
 
 #: access/transam/xlogfuncs.c:350 access/transam/xlogfuncs.c:372
-#: access/transam/xlogfuncs.c:394
+#: access/transam/xlogfuncs.c:389
 #, c-format
 msgid "Recovery control functions can only be executed during recovery."
 msgstr "Wiederherstellungskontrollfunktionen können nur während der Wiederherstellung ausgeführt werden."
@@ -2341,8 +2323,8 @@ msgstr "Large Object %u existiert nicht"
 #: commands/copy.c:1063 commands/dbcommands.c:148 commands/dbcommands.c:156
 #: commands/dbcommands.c:164 commands/dbcommands.c:172
 #: commands/dbcommands.c:180 commands/dbcommands.c:188
-#: commands/dbcommands.c:196 commands/dbcommands.c:1349
-#: commands/dbcommands.c:1357 commands/extension.c:1246
+#: commands/dbcommands.c:196 commands/dbcommands.c:1351
+#: commands/dbcommands.c:1359 commands/extension.c:1246
 #: commands/extension.c:1254 commands/extension.c:1262
 #: commands/extension.c:2670 commands/foreigncmds.c:486
 #: commands/foreigncmds.c:495 commands/functioncmds.c:522
@@ -2371,12 +2353,12 @@ msgid "default privileges cannot be set for columns"
 msgstr "Vorgabeprivilegien können nicht für Spalten gesetzt werden"
 
 #: catalog/aclchk.c:1492 catalog/objectaddress.c:1042 commands/analyze.c:387
-#: commands/copy.c:4247 commands/sequence.c:1448 commands/tablecmds.c:4938
-#: commands/tablecmds.c:5033 commands/tablecmds.c:5083
-#: commands/tablecmds.c:5187 commands/tablecmds.c:5234
-#: commands/tablecmds.c:5318 commands/tablecmds.c:5406
-#: commands/tablecmds.c:7486 commands/tablecmds.c:7690
-#: commands/tablecmds.c:8082 commands/trigger.c:635 parser/analyze.c:1998
+#: commands/copy.c:4247 commands/sequence.c:1448 commands/tablecmds.c:4939
+#: commands/tablecmds.c:5034 commands/tablecmds.c:5084
+#: commands/tablecmds.c:5188 commands/tablecmds.c:5235
+#: commands/tablecmds.c:5319 commands/tablecmds.c:5407
+#: commands/tablecmds.c:7494 commands/tablecmds.c:7698
+#: commands/tablecmds.c:8090 commands/trigger.c:635 parser/analyze.c:1998
 #: parser/parse_relation.c:2358 parser/parse_relation.c:2420
 #: parser/parse_target.c:920 parser/parse_type.c:128 utils/adt/acl.c:2840
 #: utils/adt/ruleutils.c:1820
@@ -2385,7 +2367,7 @@ msgid "column \"%s\" of relation \"%s\" does not exist"
 msgstr "Spalte „%s“ von Relation „%s“ existiert nicht"
 
 #: catalog/aclchk.c:1757 catalog/objectaddress.c:862 commands/sequence.c:1035
-#: commands/tablecmds.c:213 commands/tablecmds.c:11066 utils/adt/acl.c:2076
+#: commands/tablecmds.c:214 commands/tablecmds.c:11244 utils/adt/acl.c:2076
 #: utils/adt/acl.c:2106 utils/adt/acl.c:2138 utils/adt/acl.c:2170
 #: utils/adt/acl.c:2198 utils/adt/acl.c:2228
 #, c-format
@@ -2831,13 +2813,13 @@ msgstr "keine Berechtigung, um „%s.%s“ zu erzeugen"
 msgid "System catalog modifications are currently disallowed."
 msgstr "Änderungen an Systemkatalogen sind gegenwärtig nicht erlaubt."
 
-#: catalog/heap.c:411 commands/tablecmds.c:1401 commands/tablecmds.c:1843
-#: commands/tablecmds.c:4582
+#: catalog/heap.c:411 commands/tablecmds.c:1402 commands/tablecmds.c:1844
+#: commands/tablecmds.c:4583
 #, c-format
 msgid "tables can have at most %d columns"
 msgstr "Tabellen können höchstens %d Spalten haben"
 
-#: catalog/heap.c:428 commands/tablecmds.c:4838
+#: catalog/heap.c:428 commands/tablecmds.c:4839
 #, c-format
 msgid "column name \"%s\" conflicts with a system column name"
 msgstr "Spaltenname „%s“ steht im Konflikt mit dem Namen einer Systemspalte"
@@ -2882,7 +2864,7 @@ msgstr "für Spalte „%s“ mit sortierbarem Typ %s wurde keine Sortierfolge ab
 msgid "Use the COLLATE clause to set the collation explicitly."
 msgstr "Verwenden Sie die COLLATE-Klausel, um die Sortierfolge explizit zu setzen."
 
-#: catalog/heap.c:1055 catalog/index.c:778 commands/tablecmds.c:2548
+#: catalog/heap.c:1055 catalog/index.c:778 commands/tablecmds.c:2549
 #, c-format
 msgid "relation \"%s\" already exists"
 msgstr "Relation „%s“ existiert bereits"
@@ -2904,7 +2886,7 @@ msgstr "Eine Relation hat einen zugehörigen Typ mit dem selben Namen, daher mü
 msgid "check constraint \"%s\" already exists"
 msgstr "Check-Constraint „%s“ existiert bereits"
 
-#: catalog/heap.c:2410 catalog/pg_constraint.c:650 commands/tablecmds.c:5733
+#: catalog/heap.c:2410 catalog/pg_constraint.c:650 commands/tablecmds.c:5734
 #, c-format
 msgid "constraint \"%s\" for relation \"%s\" already exists"
 msgstr "Constraint „%s“ existiert bereits für Relation „%s“"
@@ -3090,7 +3072,7 @@ msgstr "Textsuchekonfiguration „%s“ existiert nicht"
 msgid "cross-database references are not implemented: %s"
 msgstr "Verweise auf andere Datenbanken sind nicht implementiert: %s"
 
-#: catalog/namespace.c:2649 gram.y:12570 gram.y:13802 parser/parse_expr.c:795
+#: catalog/namespace.c:2649 gram.y:12556 gram.y:13788 parser/parse_expr.c:795
 #: parser/parse_target.c:1117
 #, c-format
 msgid "improper qualified name (too many dotted names): %s"
@@ -3112,7 +3094,7 @@ msgid "cannot move objects into or out of TOAST schema"
 msgstr "Objekte können nicht in oder aus TOAST-Schemas verschoben werden"
 
 #: catalog/namespace.c:2870 commands/schemacmds.c:212
-#: commands/schemacmds.c:288 commands/tablecmds.c:707
+#: commands/schemacmds.c:288 commands/tablecmds.c:708
 #, c-format
 msgid "schema \"%s\" does not exist"
 msgstr "Schema „%s“ existiert nicht"
@@ -3142,8 +3124,8 @@ msgstr "keine Berechtigung, um temporäre Tabellen in Datenbank „%s“ zu erze
 msgid "cannot create temporary tables during recovery"
 msgstr "während der Wiederherstellung können keine temporäre Tabellen erzeugt werden"
 
-#: catalog/namespace.c:3865 commands/tablespace.c:1285 commands/variable.c:61
-#: replication/syncrep.c:677 utils/misc/guc.c:9016
+#: catalog/namespace.c:3865 commands/tablespace.c:1106 commands/variable.c:61
+#: replication/syncrep.c:677 utils/misc/guc.c:9034
 #, c-format
 msgid "List syntax is invalid."
 msgstr "Die Listensyntax ist ungültig."
@@ -3185,27 +3167,27 @@ msgstr "Servername kann nicht qualifiziert werden"
 msgid "event trigger name cannot be qualified"
 msgstr "Ereignistriggername kann nicht qualifiziert werden"
 
-#: catalog/objectaddress.c:869 commands/lockcmds.c:94 commands/tablecmds.c:207
-#: commands/tablecmds.c:1262 commands/tablecmds.c:4129
-#: commands/tablecmds.c:7593
+#: catalog/objectaddress.c:869 commands/lockcmds.c:94 commands/tablecmds.c:208
+#: commands/tablecmds.c:1263 commands/tablecmds.c:4130
+#: commands/tablecmds.c:7601
 #, c-format
 msgid "\"%s\" is not a table"
 msgstr "„%s“ ist keine Tabelle"
 
-#: catalog/objectaddress.c:876 commands/tablecmds.c:219
-#: commands/tablecmds.c:4153 commands/tablecmds.c:11071 commands/view.c:154
+#: catalog/objectaddress.c:876 commands/tablecmds.c:220
+#: commands/tablecmds.c:4154 commands/tablecmds.c:11249 commands/view.c:154
 #, c-format
 msgid "\"%s\" is not a view"
 msgstr "„%s“ ist keine Sicht"
 
-#: catalog/objectaddress.c:883 commands/matview.c:167 commands/tablecmds.c:225
-#: commands/tablecmds.c:11076
+#: catalog/objectaddress.c:883 commands/matview.c:171 commands/tablecmds.c:226
+#: commands/tablecmds.c:11254
 #, c-format
 msgid "\"%s\" is not a materialized view"
 msgstr "„%s“ ist keine materialisierte Sicht"
 
-#: catalog/objectaddress.c:890 commands/tablecmds.c:243
-#: commands/tablecmds.c:4156 commands/tablecmds.c:11081
+#: catalog/objectaddress.c:890 commands/tablecmds.c:244
+#: commands/tablecmds.c:4157 commands/tablecmds.c:11259
 #, c-format
 msgid "\"%s\" is not a foreign table"
 msgstr "„%s“ ist keine Fremdtabelle"
@@ -3216,7 +3198,7 @@ msgid "column name must be qualified"
 msgstr "Spaltenname muss qualifiziert werden"
 
 #: catalog/objectaddress.c:1083 commands/functioncmds.c:126
-#: commands/tablecmds.c:235 commands/typecmds.c:3253 parser/parse_type.c:222
+#: commands/tablecmds.c:236 commands/typecmds.c:3253 parser/parse_type.c:222
 #: parser/parse_type.c:251 parser/parse_type.c:795 utils/adt/acl.c:4374
 #: utils/adt/regproc.c:1165
 #, c-format
@@ -3482,13 +3464,11 @@ msgid "operator family %s for access method %s"
 msgstr "Operatorfamilie %s für Zugriffsmethode %s"
 
 #: catalog/pg_aggregate.c:118
-#, fuzzy, c-format
-#| msgid "functions cannot have more than %d argument"
-#| msgid_plural "functions cannot have more than %d arguments"
+#, c-format
 msgid "aggregates cannot have more than %d argument"
 msgid_plural "aggregates cannot have more than %d arguments"
-msgstr[0] "Funktionen können nicht mehr als %d Argument haben"
-msgstr[1] "Funktionen können nicht mehr als %d Argumente haben"
+msgstr[0] "Aggregatfunktionen können nicht mehr als %d Argument haben"
+msgstr[1] "Aggregatfunktionen können nicht mehr als %d Argumente haben"
 
 #: catalog/pg_aggregate.c:141 catalog/pg_aggregate.c:151
 #, c-format
@@ -3928,8 +3908,8 @@ msgstr "Typen mit fester Größe müssen Storage-Typ PLAIN haben"
 msgid "could not form array type name for type \"%s\""
 msgstr "konnte keinen Arraytypnamen für Datentyp „%s“ erzeugen"
 
-#: catalog/toasting.c:104 commands/indexcmds.c:380 commands/tablecmds.c:4138
-#: commands/tablecmds.c:10959
+#: catalog/toasting.c:104 commands/indexcmds.c:380 commands/tablecmds.c:4139
+#: commands/tablecmds.c:11137
 #, c-format
 msgid "\"%s\" is not a table or materialized view"
 msgstr "„%s“ ist keine Tabelle oder materialisierte Sicht"
@@ -4175,7 +4155,7 @@ msgstr "kann temporäre Tabellen anderer Sitzungen nicht clustern"
 msgid "there is no previously clustered index for table \"%s\""
 msgstr "es gibt keinen bereits geclusterten Index für Tabelle „%s“"
 
-#: commands/cluster.c:170 commands/tablecmds.c:8787 commands/tablecmds.c:10283
+#: commands/cluster.c:170 commands/tablecmds.c:8795 commands/tablecmds.c:10461
 #, c-format
 msgid "index \"%s\" for table \"%s\" does not exist"
 msgstr "Index „%s“ für Tabelle „%s“ existiert nicht"
@@ -4190,7 +4170,7 @@ msgstr "globaler Katalog kann nicht geclustert werden"
 msgid "cannot vacuum temporary tables of other sessions"
 msgstr "temporäre Tabellen anderer Sitzungen können nicht gevacuumt werden"
 
-#: commands/cluster.c:430 commands/tablecmds.c:10293
+#: commands/cluster.c:430 commands/tablecmds.c:10471
 #, c-format
 msgid "\"%s\" is not an index for table \"%s\""
 msgstr "„%s“ ist kein Index für Tabelle „%s“"
@@ -4264,10 +4244,10 @@ msgstr "Sortierfolge „%s“ für Kodierung „%s“ existiert bereits in Schem
 msgid "collation \"%s\" already exists in schema \"%s\""
 msgstr "Sortierfolge „%s“ existiert bereits in Schema „%s“"
 
-#: commands/comment.c:62 commands/dbcommands.c:773 commands/dbcommands.c:935
-#: commands/dbcommands.c:1038 commands/dbcommands.c:1211
-#: commands/dbcommands.c:1400 commands/dbcommands.c:1495
-#: commands/dbcommands.c:1912 utils/init/postinit.c:794
+#: commands/comment.c:62 commands/dbcommands.c:773 commands/dbcommands.c:937
+#: commands/dbcommands.c:1040 commands/dbcommands.c:1213
+#: commands/dbcommands.c:1402 commands/dbcommands.c:1497
+#: commands/dbcommands.c:1914 utils/init/postinit.c:794
 #: utils/init/postinit.c:862 utils/init/postinit.c:879
 #, c-format
 msgid "database \"%s\" does not exist"
@@ -4514,10 +4494,9 @@ 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:1431
-#, fuzzy, c-format
-#| msgid "FORCE NOT NULL column \"%s\" not referenced by COPY"
+#, c-format
 msgid "FORCE NULL column \"%s\" not referenced by COPY"
-msgstr "Spalte „%s“ mit FORCE NOT NULL wird von COPY nicht verwendet"
+msgstr "Spalte „%s“ mit FORCE NULL wird von COPY nicht verwendet"
 
 #: commands/copy.c:1495
 #, c-format
@@ -4774,14 +4753,14 @@ msgstr "ungültige Feldgröße"
 msgid "incorrect binary data format"
 msgstr "falsches Binärdatenformat"
 
-#: commands/copy.c:4252 commands/indexcmds.c:993 commands/tablecmds.c:1426
-#: commands/tablecmds.c:2236 parser/parse_relation.c:2889
+#: commands/copy.c:4252 commands/indexcmds.c:993 commands/tablecmds.c:1427
+#: commands/tablecmds.c:2237 parser/parse_relation.c:2889
 #: utils/adt/tsvector_op.c:1417
 #, c-format
 msgid "column \"%s\" does not exist"
 msgstr "Spalte „%s“ existiert nicht"
 
-#: commands/copy.c:4259 commands/tablecmds.c:1452 commands/trigger.c:644
+#: commands/copy.c:4259 commands/tablecmds.c:1453 commands/trigger.c:644
 #: parser/parse_target.c:936 parser/parse_target.c:947
 #, c-format
 msgid "column \"%s\" specified more than once"
@@ -4812,7 +4791,7 @@ msgstr "%d ist kein gültiger Kodierungscode"
 msgid "%s is not a valid encoding name"
 msgstr "%s ist kein gültiger Kodierungsname"
 
-#: commands/dbcommands.c:255 commands/dbcommands.c:1381 commands/user.c:260
+#: commands/dbcommands.c:255 commands/dbcommands.c:1383 commands/user.c:260
 #: commands/user.c:601
 #, c-format
 msgid "invalid connection limit: %d"
@@ -4873,7 +4852,7 @@ msgstr "neues LC_CTYPE (%s) ist inkompatibel mit dem LC_CTYPE der Template-Daten
 msgid "Use the same LC_CTYPE as in the template database, or use template0 as template."
 msgstr "Verwenden Sie das gleiche LC_CTYPE wie die Template-Datenbank oder verwenden Sie template0 als Template."
 
-#: commands/dbcommands.c:395 commands/dbcommands.c:1084
+#: commands/dbcommands.c:395 commands/dbcommands.c:1086
 #, c-format
 msgid "pg_global cannot be used as default tablespace"
 msgstr "pg_global kann nicht als Standard-Tablespace verwendet werden"
@@ -4888,7 +4867,7 @@ msgstr "kann neuen Standard-Tablespace „%s“ nicht setzen"
 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:443 commands/dbcommands.c:955
+#: commands/dbcommands.c:443 commands/dbcommands.c:957
 #, c-format
 msgid "database \"%s\" already exists"
 msgstr "Datenbank „%s“ existiert bereits"
@@ -4929,72 +4908,75 @@ msgid "cannot drop the currently open database"
 msgstr "kann aktuell geöffnete Datenbank nicht löschen"
 
 #: commands/dbcommands.c:820
-#, fuzzy, c-format
-#| msgid "variable \"%s\" is hidden by a local variable"
+#, c-format
 msgid "database \"%s\" is used by a logical decoding slot"
-msgstr "Variable „%s“ wird durch eine lokale Variable versteckt"
+msgstr ""
 
 #: commands/dbcommands.c:822
-#, c-format
-msgid "There are %d slot(s), %d of them active"
-msgstr ""
+#, fuzzy, c-format
+#| msgid "There is %d other session using the database."
+#| msgid_plural "There are %d other sessions using the database."
+msgid "There is %d slot, %d of them active."
+msgid_plural "There are %d slots, %d of them active."
+msgstr[0] "%d andere Sitzung verwendet die Datenbank."
+msgstr[1] "%d andere Sitzungen verwenden die Datenbank."
 
-#: commands/dbcommands.c:834 commands/dbcommands.c:977
-#: commands/dbcommands.c:1106
+#: commands/dbcommands.c:836 commands/dbcommands.c:979
+#: commands/dbcommands.c:1108
 #, c-format
 msgid "database \"%s\" is being accessed by other users"
 msgstr "auf Datenbank „%s“ wird von anderen Benutzern zugegriffen"
 
-#: commands/dbcommands.c:946
+#: commands/dbcommands.c:948
 #, c-format
 msgid "permission denied to rename database"
 msgstr "keine Berechtigung, um Datenbank umzubenennen"
 
-#: commands/dbcommands.c:966
+#: commands/dbcommands.c:968
 #, c-format
 msgid "current database cannot be renamed"
 msgstr "aktuelle Datenbank kann nicht umbenannt werden"
 
-#: commands/dbcommands.c:1062
+#: commands/dbcommands.c:1064
 #, c-format
 msgid "cannot change the tablespace of the currently open database"
 msgstr "kann den Tablespace der aktuell geöffneten Datenbank nicht ändern"
 
-#: commands/dbcommands.c:1146
+#: commands/dbcommands.c:1148
 #, c-format
 msgid "some relations of database \"%s\" are already in tablespace \"%s\""
 msgstr "einige Relationen von Datenbank „%s“ ist bereits in Tablespace „%s“"
 
-#: commands/dbcommands.c:1148
+#: commands/dbcommands.c:1150
 #, c-format
 msgid "You must move them back to the database's default tablespace before using this command."
 msgstr "Sie müssen sie zurück in den Standard-Tablespace der Datenbank verschieben, bevor Sie diesen Befehl verwenden können."
 
-#: commands/dbcommands.c:1279 commands/dbcommands.c:1767
-#: commands/dbcommands.c:1973 commands/dbcommands.c:2021
-#: commands/tablespace.c:598
+#: commands/dbcommands.c:1281 commands/dbcommands.c:1769
+#: commands/dbcommands.c:1975 commands/dbcommands.c:2023
+#: commands/tablespace.c:597
 #, c-format
 msgid "some useless files may be left behind in old database directory \"%s\""
 msgstr "einige nutzlose Dateien wurde möglicherweise im alten Datenbankverzeichnis „%s“ zurückgelassen"
 
-#: commands/dbcommands.c:1535
+#: commands/dbcommands.c:1537
 #, c-format
 msgid "permission denied to change owner of database"
 msgstr "keine Berechtigung, um Eigentümer der Datenbank zu ändern"
 
-#: commands/dbcommands.c:1856
+#: commands/dbcommands.c:1858
 #, c-format
 msgid "There are %d other session(s) and %d prepared transaction(s) using the database."
 msgstr "%d andere Sitzung(en) und %d vorbereitete Transaktion(en) verwenden die Datenbank."
 
-#: commands/dbcommands.c:1859
+#: commands/dbcommands.c:1861
 #, c-format
 msgid "There is %d other session using the database."
 msgid_plural "There are %d other sessions using the database."
 msgstr[0] "%d andere Sitzung verwendet die Datenbank."
 msgstr[1] "%d andere Sitzungen verwenden die Datenbank."
 
-#: commands/dbcommands.c:1864
+#: commands/dbcommands.c:1866
 #, c-format
 msgid "There is %d prepared transaction using the database."
 msgid_plural "There are %d prepared transactions using the database."
@@ -5049,18 +5031,18 @@ msgstr "„%s“ ist eine Aggregatfunktion"
 msgid "Use DROP AGGREGATE to drop aggregate functions."
 msgstr "Verwenden Sie DROP AGGREGATE, um Aggregatfunktionen zu löschen."
 
-#: commands/dropcmds.c:165 commands/sequence.c:400 commands/tablecmds.c:2317
-#: commands/tablecmds.c:2498 commands/tablecmds.c:10447 tcop/utility.c:1011
+#: commands/dropcmds.c:165 commands/sequence.c:400 commands/tablecmds.c:2318
+#: commands/tablecmds.c:2499 commands/tablecmds.c:10625 tcop/utility.c:1006
 #, c-format
 msgid "relation \"%s\" does not exist, skipping"
 msgstr "Relation „%s“ existiert nicht, wird übersprungen"
 
-#: commands/dropcmds.c:195 commands/dropcmds.c:288 commands/tablecmds.c:712
+#: commands/dropcmds.c:195 commands/dropcmds.c:288 commands/tablecmds.c:713
 #, c-format
 msgid "schema \"%s\" does not exist, skipping"
 msgstr "Schema „%s“ existiert nicht, wird übersprungen"
 
-#: commands/dropcmds.c:237 commands/dropcmds.c:269 commands/tablecmds.c:236
+#: commands/dropcmds.c:237 commands/dropcmds.c:269 commands/tablecmds.c:237
 #, c-format
 msgid "type \"%s\" does not exist, skipping"
 msgstr "Typ „%s“ existiert nicht, wird übersprungen"
@@ -5227,9 +5209,9 @@ msgstr "%s kann nur in einer sql_drop-Ereignistriggerfunktion aufgerufen werden"
 #: executor/execQual.c:1708 executor/execQual.c:1733 executor/execQual.c:2108
 #: executor/execQual.c:5276 executor/functions.c:1018 foreign/foreign.c:421
 #: replication/logical/logicalfuncs.c:310 replication/slotfuncs.c:173
-#: replication/walsender.c:2744 utils/adt/jsonfuncs.c:1355
-#: utils/adt/jsonfuncs.c:1487 utils/adt/jsonfuncs.c:1677
-#: utils/adt/jsonfuncs.c:1806 utils/adt/jsonfuncs.c:2570
+#: replication/walsender.c:2746 utils/adt/jsonfuncs.c:1386
+#: utils/adt/jsonfuncs.c:1518 utils/adt/jsonfuncs.c:1708
+#: utils/adt/jsonfuncs.c:1837 utils/adt/jsonfuncs.c:2601
 #: utils/fmgr/funcapi.c:61 utils/mmgr/portalmem.c:986
 #, c-format
 msgid "set-valued function called in context that cannot accept a set"
@@ -5238,7 +5220,7 @@ msgstr "Funktion mit Mengenergebnis in einem Zusammenhang aufgerufen, der keine
 #: commands/event_trigger.c:1230 commands/extension.c:1650
 #: commands/extension.c:1759 commands/extension.c:1952 commands/prepare.c:706
 #: foreign/foreign.c:426 replication/logical/logicalfuncs.c:314
-#: replication/slotfuncs.c:177 replication/walsender.c:2748
+#: replication/slotfuncs.c:177 replication/walsender.c:2750
 #: utils/mmgr/portalmem.c:990
 #, c-format
 msgid "materialize mode required, but it is not allowed in this context"
@@ -5593,10 +5575,9 @@ msgid "SQL function cannot accept shell type %s"
 msgstr "SQL-Funktion kann keinen Hüllentyp %s annehmen"
 
 #: commands/functioncmds.c:242
-#, fuzzy, c-format
-#| msgid "SQL function cannot accept shell type %s"
+#, c-format
 msgid "aggregate cannot accept shell type %s"
-msgstr "SQL-Funktion kann keinen Hüllentyp %s annehmen"
+msgstr "Aggregatfunktion kann keinen Hüllentyp %s annehmen"
 
 #: commands/functioncmds.c:247
 #, c-format
@@ -5609,15 +5590,14 @@ msgid "type %s does not exist"
 msgstr "Typ %s existiert nicht"
 
 #: commands/functioncmds.c:271
-#, fuzzy, c-format
-#| msgid "aggregates cannot use named arguments"
+#, c-format
 msgid "aggregates cannot accept set arguments"
-msgstr "Aggregatfunktionen können keine benannten Argumente verwenden"
+msgstr "Aggregatfunktionen können keine SETOF-Argumente haben"
 
 #: commands/functioncmds.c:275
 #, c-format
 msgid "functions cannot accept set arguments"
-msgstr "Funktionen können keine SET Argumente haben"
+msgstr "Funktionen können keine SETOF-Argumente haben"
 
 #: commands/functioncmds.c:285
 #, c-format
@@ -5862,7 +5842,7 @@ msgstr "kann keinen Index für Fremdtabelle „%s“ erzeugen"
 msgid "cannot create indexes on temporary tables of other sessions"
 msgstr "kann keine Indexe für temporäre Tabellen anderer Sitzungen erzeugen"
 
-#: commands/indexcmds.c:445 commands/tablecmds.c:524 commands/tablecmds.c:9093
+#: commands/indexcmds.c:445 commands/tablecmds.c:525 commands/tablecmds.c:9101
 #, c-format
 msgid "only shared relations can be placed in pg_global tablespace"
 msgstr "nur geteilte Relationen können in den Tablespace „pg_global“ gelegt werden"
@@ -5989,35 +5969,34 @@ msgstr "aktuell geöffnete Datenbank kann nicht reindiziert werden"
 msgid "table \"%s.%s\" was reindexed"
 msgstr "Tabelle „%s.%s“ wurde neu indiziert"
 
-#: commands/matview.c:174
+#: commands/matview.c:178
 #, c-format
 msgid "CONCURRENTLY cannot be used when the materialized view is not populated"
-msgstr ""
+msgstr "CONCURRENTLY kann nicht verwendet werden, wenn die materialisierte Sicht nicht befüllt ist"
 
-#: commands/matview.c:180
+#: commands/matview.c:184
 #, c-format
 msgid "CONCURRENTLY and WITH NO DATA options cannot be used together"
-msgstr ""
+msgstr "Optionen CONCURRENTLY und WITH NO DATA können nicht zusammen verwendet werden"
 
-#: commands/matview.c:584
+#: commands/matview.c:591
 #, c-format
 msgid "new data for \"%s\" contains duplicate rows without any NULL columns"
 msgstr ""
 
-#: commands/matview.c:586
+#: commands/matview.c:593
 #, c-format
 msgid "Row: %s"
-msgstr ""
+msgstr "Zeile: %s"
 
-#: commands/matview.c:671
-#, fuzzy, c-format
-#| msgid "cannot change materialized view \"%s\""
+#: commands/matview.c:681
+#, c-format
 msgid "cannot refresh materialized view \"%s\" concurrently"
-msgstr "kann materialisierte Sicht „%s“ nicht ändern"
+msgstr "kann materialisierte Sicht „%s“ nicht nebenläufig auffrischen"
 
-#: commands/matview.c:673
+#: commands/matview.c:683
 #, c-format
-msgid "Create a UNIQUE index with no WHERE clause on one or more columns of the materialized view."
+msgid "Create a unique index with no WHERE clause on one or more columns of the materialized view."
 msgstr ""
 
 #: commands/opclasscmds.c:135
@@ -6449,179 +6428,179 @@ msgstr "Sequenz muss selben Eigentümer wie die verknüpfte Tabelle haben"
 msgid "sequence must be in same schema as table it is linked to"
 msgstr "Sequenz muss im selben Schema wie die verknüpfte Tabelle sein"
 
-#: commands/tablecmds.c:205
+#: commands/tablecmds.c:206
 #, c-format
 msgid "table \"%s\" does not exist"
 msgstr "Tabelle „%s“ existiert nicht"
 
-#: commands/tablecmds.c:206
+#: commands/tablecmds.c:207
 #, c-format
 msgid "table \"%s\" does not exist, skipping"
 msgstr "Tabelle „%s“ existiert nicht, wird übersprungen"
 
-#: commands/tablecmds.c:208
+#: commands/tablecmds.c:209
 msgid "Use DROP TABLE to remove a table."
 msgstr "Verwenden Sie DROP TABLE, um eine Tabelle zu löschen."
 
-#: commands/tablecmds.c:211
+#: commands/tablecmds.c:212
 #, c-format
 msgid "sequence \"%s\" does not exist"
 msgstr "Sequenz „%s“ existiert nicht"
 
-#: commands/tablecmds.c:212
+#: commands/tablecmds.c:213
 #, c-format
 msgid "sequence \"%s\" does not exist, skipping"
 msgstr "Sequenz „%s“ existiert nicht, wird übersprungen"
 
-#: commands/tablecmds.c:214
+#: commands/tablecmds.c:215
 msgid "Use DROP SEQUENCE to remove a sequence."
 msgstr "Verwenden Sie DROP SEQUENCE, um eine Sequenz zu löschen."
 
-#: commands/tablecmds.c:217
+#: commands/tablecmds.c:218
 #, c-format
 msgid "view \"%s\" does not exist"
 msgstr "Sicht „%s“ existiert nicht"
 
-#: commands/tablecmds.c:218
+#: commands/tablecmds.c:219
 #, c-format
 msgid "view \"%s\" does not exist, skipping"
 msgstr "Sicht „%s“ existiert nicht, wird übersprungen"
 
-#: commands/tablecmds.c:220
+#: commands/tablecmds.c:221
 msgid "Use DROP VIEW to remove a view."
 msgstr "Verwenden Sie DROP VIEW, um eine Sicht zu löschen."
 
-#: commands/tablecmds.c:223
+#: commands/tablecmds.c:224
 #, c-format
 msgid "materialized view \"%s\" does not exist"
 msgstr "materialisierte Sicht „%s“ existiert nicht"
 
-#: commands/tablecmds.c:224
+#: commands/tablecmds.c:225
 #, c-format
 msgid "materialized view \"%s\" does not exist, skipping"
 msgstr "materialisierte Sicht „%s“ existiert nicht, wird übersprungen"
 
-#: commands/tablecmds.c:226
+#: commands/tablecmds.c:227
 msgid "Use DROP MATERIALIZED VIEW to remove a materialized view."
 msgstr "Verwenden Sie DROP MATERIALIZED VIEW, um eine materialisierte Sicht zu löschen."
 
-#: commands/tablecmds.c:229 parser/parse_utilcmd.c:1548
+#: commands/tablecmds.c:230 parser/parse_utilcmd.c:1548
 #, c-format
 msgid "index \"%s\" does not exist"
 msgstr "Index „%s“ existiert nicht"
 
-#: commands/tablecmds.c:230
+#: commands/tablecmds.c:231
 #, c-format
 msgid "index \"%s\" does not exist, skipping"
 msgstr "Index „%s“ existiert nicht, wird übersprungen"
 
-#: commands/tablecmds.c:232
+#: commands/tablecmds.c:233
 msgid "Use DROP INDEX to remove an index."
 msgstr "Verwenden Sie DROP INDEX, um einen Index zu löschen."
 
-#: commands/tablecmds.c:237
+#: commands/tablecmds.c:238
 #, c-format
 msgid "\"%s\" is not a type"
 msgstr "„%s“ ist kein Typ"
 
-#: commands/tablecmds.c:238
+#: commands/tablecmds.c:239
 msgid "Use DROP TYPE to remove a type."
 msgstr "Verwenden Sie DROP TYPE, um einen Typen zu löschen."
 
-#: commands/tablecmds.c:241 commands/tablecmds.c:8068
-#: commands/tablecmds.c:10379
+#: commands/tablecmds.c:242 commands/tablecmds.c:8076
+#: commands/tablecmds.c:10557
 #, c-format
 msgid "foreign table \"%s\" does not exist"
 msgstr "Fremdtabelle „%s“ existiert nicht"
 
-#: commands/tablecmds.c:242
+#: commands/tablecmds.c:243
 #, c-format
 msgid "foreign table \"%s\" does not exist, skipping"
 msgstr "Fremdtabelle „%s“ existiert nicht, wird übersprungen"
 
-#: commands/tablecmds.c:244
+#: commands/tablecmds.c:245
 msgid "Use DROP FOREIGN TABLE to remove a foreign table."
 msgstr "Verwenden Sie DROP FOREIGN TABLE, um eine Fremdtabelle zu löschen."
 
-#: commands/tablecmds.c:468
+#: commands/tablecmds.c:469
 #, c-format
 msgid "ON COMMIT can only be used on temporary tables"
 msgstr "ON COMMIT kann nur mit temporären Tabellen verwendet werden"
 
-#: commands/tablecmds.c:472 parser/parse_utilcmd.c:521
+#: commands/tablecmds.c:473 parser/parse_utilcmd.c:521
 #: parser/parse_utilcmd.c:532 parser/parse_utilcmd.c:549
 #: parser/parse_utilcmd.c:611
 #, c-format
 msgid "constraints are not supported on foreign tables"
 msgstr "Constraints auf Fremdtabellen werden nicht unterstützt"
 
-#: commands/tablecmds.c:492
+#: commands/tablecmds.c:493
 #, c-format
 msgid "cannot create temporary table within security-restricted operation"
 msgstr "kann temporäre Tabelle nicht in einer sicherheitsbeschränkten Operation erzeugen"
 
-#: commands/tablecmds.c:788
+#: commands/tablecmds.c:789
 #, c-format
 msgid "DROP INDEX CONCURRENTLY does not support dropping multiple objects"
 msgstr "DROP INDEX CONCURRENTLY unterstützt das Löschen von mehreren Objekten nicht"
 
-#: commands/tablecmds.c:792
+#: commands/tablecmds.c:793
 #, c-format
 msgid "DROP INDEX CONCURRENTLY does not support CASCADE"
 msgstr "DROP INDEX CONCURRENTLY unterstützt kein CASCADE"
 
-#: commands/tablecmds.c:937 commands/tablecmds.c:1275
-#: commands/tablecmds.c:2132 commands/tablecmds.c:4111
-#: commands/tablecmds.c:5941 commands/tablecmds.c:10992
-#: commands/tablecmds.c:11027 commands/trigger.c:232 commands/trigger.c:1118
+#: commands/tablecmds.c:938 commands/tablecmds.c:1276
+#: commands/tablecmds.c:2133 commands/tablecmds.c:4112
+#: commands/tablecmds.c:5942 commands/tablecmds.c:11170
+#: commands/tablecmds.c:11205 commands/trigger.c:232 commands/trigger.c:1118
 #: commands/trigger.c:1226 rewrite/rewriteDefine.c:271
 #: rewrite/rewriteDefine.c:887
 #, c-format
 msgid "permission denied: \"%s\" is a system catalog"
 msgstr "keine Berechtigung: „%s“ ist ein Systemkatalog"
 
-#: commands/tablecmds.c:1051
+#: commands/tablecmds.c:1052
 #, c-format
 msgid "truncate cascades to table \"%s\""
 msgstr "Truncate-Vorgang leert ebenfalls Tabelle „%s“"
 
-#: commands/tablecmds.c:1285
+#: commands/tablecmds.c:1286
 #, c-format
 msgid "cannot truncate temporary tables of other sessions"
 msgstr "kann temporäre Tabellen anderer Sitzungen nicht leeren"
 
-#: commands/tablecmds.c:1490 parser/parse_utilcmd.c:1760
+#: commands/tablecmds.c:1491 parser/parse_utilcmd.c:1760
 #, c-format
 msgid "inherited relation \"%s\" is not a table"
 msgstr "geerbte Relation „%s“ ist keine Tabelle"
 
-#: commands/tablecmds.c:1497 commands/tablecmds.c:9353
+#: commands/tablecmds.c:1498 commands/tablecmds.c:9531
 #, c-format
 msgid "cannot inherit from temporary relation \"%s\""
 msgstr "von temporärer Relation „%s“ kann nicht geerbt werden"
 
-#: commands/tablecmds.c:1505 commands/tablecmds.c:9361
+#: commands/tablecmds.c:1506 commands/tablecmds.c:9539
 #, c-format
 msgid "cannot inherit from temporary relation of another session"
 msgstr "von temporärer Relation einer anderen Sitzung kann nicht geerbt werden"
 
-#: commands/tablecmds.c:1521 commands/tablecmds.c:9395
+#: commands/tablecmds.c:1522 commands/tablecmds.c:9573
 #, c-format
 msgid "relation \"%s\" would be inherited from more than once"
 msgstr "von der Relation „%s“ würde mehrmals geerbt werden"
 
-#: commands/tablecmds.c:1569
+#: commands/tablecmds.c:1570
 #, c-format
 msgid "merging multiple inherited definitions of column \"%s\""
 msgstr "geerbte Definitionen von Spalte „%s“ werden zusammengeführt"
 
-#: commands/tablecmds.c:1577
+#: commands/tablecmds.c:1578
 #, c-format
 msgid "inherited column \"%s\" has a type conflict"
 msgstr "geerbte Spalte „%s“ hat Typkonflikt"
 
-#: commands/tablecmds.c:1579 commands/tablecmds.c:1600
-#: commands/tablecmds.c:1788 commands/tablecmds.c:1810
+#: commands/tablecmds.c:1580 commands/tablecmds.c:1601
+#: commands/tablecmds.c:1789 commands/tablecmds.c:1811
 #: parser/parse_coerce.c:1592 parser/parse_coerce.c:1612
 #: parser/parse_coerce.c:1632 parser/parse_coerce.c:1677
 #: parser/parse_coerce.c:1714 parser/parse_param.c:218
@@ -6629,799 +6608,823 @@ msgstr "geerbte Spalte „%s“ hat Typkonflikt"
 msgid "%s versus %s"
 msgstr "%s gegen %s"
 
-#: commands/tablecmds.c:1586
+#: commands/tablecmds.c:1587
 #, c-format
 msgid "inherited column \"%s\" has a collation conflict"
 msgstr "geerbte Spalte „%s“ hat Sortierfolgenkonflikt"
 
-#: commands/tablecmds.c:1588 commands/tablecmds.c:1798
-#: commands/tablecmds.c:4535
+#: commands/tablecmds.c:1589 commands/tablecmds.c:1799
+#: commands/tablecmds.c:4536
 #, c-format
 msgid "\"%s\" versus \"%s\""
 msgstr "„%s“ gegen „%s“"
 
-#: commands/tablecmds.c:1598
+#: commands/tablecmds.c:1599
 #, c-format
 msgid "inherited column \"%s\" has a storage parameter conflict"
 msgstr "geerbte Spalte „%s“ hat einen Konflikt bei einem Storage-Parameter"
 
-#: commands/tablecmds.c:1711 parser/parse_utilcmd.c:853
+#: commands/tablecmds.c:1712 parser/parse_utilcmd.c:853
 #: parser/parse_utilcmd.c:1195 parser/parse_utilcmd.c:1271
 #, c-format
 msgid "cannot convert whole-row table reference"
 msgstr "kann Verweis auf ganze Zeile der Tabelle nicht umwandeln"
 
-#: commands/tablecmds.c:1712 parser/parse_utilcmd.c:854
+#: commands/tablecmds.c:1713 parser/parse_utilcmd.c:854
 #, c-format
 msgid "Constraint \"%s\" contains a whole-row reference to table \"%s\"."
 msgstr "Constraint „%s“ enthält einen Verweis auf die ganze Zeile der Tabelle „%s“."
 
-#: commands/tablecmds.c:1778
+#: commands/tablecmds.c:1779
 #, c-format
 msgid "merging column \"%s\" with inherited definition"
 msgstr "Spalte „%s“ wird mit geerbter Definition zusammengeführt"
 
-#: commands/tablecmds.c:1786
+#: commands/tablecmds.c:1787
 #, c-format
 msgid "column \"%s\" has a type conflict"
 msgstr "für Spalte „%s“ besteht ein Typkonflikt"
 
-#: commands/tablecmds.c:1796
+#: commands/tablecmds.c:1797
 #, c-format
 msgid "column \"%s\" has a collation conflict"
 msgstr "für Spalte „%s“ besteht ein Sortierfolgenkonflikt"
 
-#: commands/tablecmds.c:1808
+#: commands/tablecmds.c:1809
 #, c-format
 msgid "column \"%s\" has a storage parameter conflict"
 msgstr "für Spalte „%s“ besteht ein Konflikt bei einem Storage-Parameter"
 
-#: commands/tablecmds.c:1860
+#: commands/tablecmds.c:1861
 #, c-format
 msgid "column \"%s\" inherits conflicting default values"
 msgstr "Spalte „%s“ erbt widersprüchliche Vorgabewerte"
 
-#: commands/tablecmds.c:1862
+#: commands/tablecmds.c:1863
 #, c-format
 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:1909
+#: commands/tablecmds.c:1910
 #, c-format
 msgid "check constraint name \"%s\" appears multiple times but with different expressions"
 msgstr "Check-Constraint-Name „%s“ erscheint mehrmals, aber mit unterschiedlichen Ausdrücken"
 
-#: commands/tablecmds.c:2103
+#: commands/tablecmds.c:2104
 #, c-format
 msgid "cannot rename column of typed table"
 msgstr "Spalte einer getypten Tabelle kann nicht umbenannt werden"
 
-#: commands/tablecmds.c:2120
+#: commands/tablecmds.c:2121
 #, c-format
 msgid "\"%s\" is not a table, view, materialized view, composite type, index, or foreign table"
 msgstr "„%s“ ist weder Tabelle, Sicht, materialisierte Sicht, zusammengesetzter Typ, Index noch Fremdtabelle"
 
-#: commands/tablecmds.c:2212
+#: commands/tablecmds.c:2213
 #, c-format
 msgid "inherited column \"%s\" must be renamed in child tables too"
 msgstr "vererbte Spalte „%s“ muss ebenso in den abgeleiteten Tabellen umbenannt werden"
 
-#: commands/tablecmds.c:2244
+#: commands/tablecmds.c:2245
 #, c-format
 msgid "cannot rename system column \"%s\""
 msgstr "Systemspalte „%s“ kann nicht umbenannt werden"
 
-#: commands/tablecmds.c:2259
+#: commands/tablecmds.c:2260
 #, c-format
 msgid "cannot rename inherited column \"%s\""
 msgstr "kann vererbte Spalte „%s“ nicht umbenennen"
 
-#: commands/tablecmds.c:2406
+#: commands/tablecmds.c:2407
 #, c-format
 msgid "inherited constraint \"%s\" must be renamed in child tables too"
 msgstr "vererbter Constraint „%s“ muss ebenso in den abgeleiteten Tabellen umbenannt werden"
 
-#: commands/tablecmds.c:2413
+#: commands/tablecmds.c:2414
 #, c-format
 msgid "cannot rename inherited constraint \"%s\""
 msgstr "kann vererbten Constraint „%s“ nicht umbenennen"
 
 #. translator: first %s is a SQL command, eg ALTER TABLE
-#: commands/tablecmds.c:2627
+#: commands/tablecmds.c:2628
 #, c-format
 msgid "cannot %s \"%s\" because it is being used by active queries in this session"
 msgstr "%s mit Relation „%s“ nicht möglich, weil sie von aktiven Anfragen in dieser Sitzung verwendet wird"
 
 #. translator: first %s is a SQL command, eg ALTER TABLE
-#: commands/tablecmds.c:2636
+#: commands/tablecmds.c:2637
 #, c-format
 msgid "cannot %s \"%s\" because it has pending trigger events"
 msgstr "%s mit Relation „%s“ nicht möglich, weil es anstehende Trigger-Ereignisse dafür gibt"
 
-#: commands/tablecmds.c:3606
+#: commands/tablecmds.c:3607
 #, c-format
 msgid "cannot rewrite system relation \"%s\""
 msgstr "Systemrelation „%s“ kann nicht neu geschrieben werden"
 
-#: commands/tablecmds.c:3612
-#, fuzzy, c-format
-#| msgid "could not convert table \"%s\" to a view because it has child tables"
+#: commands/tablecmds.c:3613
+#, c-format
 msgid "cannot rewrite table \"%s\" used as a catalog table"
-msgstr "konnte Tabelle „%s“ nicht in Sicht umwandeln, weil sie abgeleitete Tabellen hat"
+msgstr "Tabelle „%s“, die als Katalogtabelle verwendet wird, kann nicht neu geschrieben werden"
 
-#: commands/tablecmds.c:3622
+#: commands/tablecmds.c:3623
 #, c-format
 msgid "cannot rewrite temporary tables of other sessions"
 msgstr "kann temporäre Tabellen anderer Sitzungen nicht neu schreiben"
 
-#: commands/tablecmds.c:3853
+#: commands/tablecmds.c:3854
 #, c-format
 msgid "rewriting table \"%s\""
 msgstr "schreibe Tabelle „%s“ neu"
 
-#: commands/tablecmds.c:3857
+#: commands/tablecmds.c:3858
 #, c-format
 msgid "verifying table \"%s\""
 msgstr "überprüfe Tabelle „%s“"
 
-#: commands/tablecmds.c:3971
+#: commands/tablecmds.c:3972
 #, c-format
 msgid "column \"%s\" contains null values"
 msgstr "Spalte „%s“ enthält NULL-Werte"
 
-#: commands/tablecmds.c:3986 commands/tablecmds.c:6977
+#: commands/tablecmds.c:3987 commands/tablecmds.c:6985
 #, c-format
 msgid "check constraint \"%s\" is violated by some row"
 msgstr "Check-Constraint „%s“ wird von irgendeiner Zeile verletzt"
 
-#: commands/tablecmds.c:4132 commands/trigger.c:226
+#: commands/tablecmds.c:4133 commands/trigger.c:226
 #: rewrite/rewriteDefine.c:265 rewrite/rewriteDefine.c:882
 #, c-format
 msgid "\"%s\" is not a table or view"
 msgstr "„%s“ ist keine Tabelle oder Sicht"
 
-#: commands/tablecmds.c:4135
+#: commands/tablecmds.c:4136
 #, c-format
 msgid "\"%s\" is not a table, view, materialized view, or index"
 msgstr "„%s“ ist weder Tabelle, Sicht, materialisierte Sicht noch Index"
 
-#: commands/tablecmds.c:4141
+#: commands/tablecmds.c:4142
 #, c-format
 msgid "\"%s\" is not a table, materialized view, or index"
 msgstr "„%s“ ist weder Tabelle, materialisierte Sicht noch Index"
 
-#: commands/tablecmds.c:4144
+#: commands/tablecmds.c:4145
 #, c-format
 msgid "\"%s\" is not a table or foreign table"
 msgstr "„%s“ ist keine Tabelle oder Fremdtabelle"
 
-#: commands/tablecmds.c:4147
+#: commands/tablecmds.c:4148
 #, c-format
 msgid "\"%s\" is not a table, composite type, or foreign table"
 msgstr "„%s“ ist weder Tabelle, Sicht, zusammengesetzter Typ noch Fremdtabelle"
 
-#: commands/tablecmds.c:4150
+#: commands/tablecmds.c:4151
 #, c-format
 msgid "\"%s\" is not a table, materialized view, composite type, or foreign table"
 msgstr "„%s“ ist weder Tabelle, materialisierte Sicht, zusammengesetzter Typ noch Fremdtabelle"
 
-#: commands/tablecmds.c:4160
+#: commands/tablecmds.c:4161
 #, c-format
 msgid "\"%s\" is of the wrong type"
 msgstr "„%s“ hat den falschen Typ"
 
-#: commands/tablecmds.c:4310 commands/tablecmds.c:4317
+#: commands/tablecmds.c:4311 commands/tablecmds.c:4318
 #, c-format
 msgid "cannot alter type \"%s\" because column \"%s.%s\" uses it"
 msgstr "kann Typ „%s“ nicht ändern, weil Spalte „%s.%s“ ihn verwendet"
 
-#: commands/tablecmds.c:4324
+#: commands/tablecmds.c:4325
 #, c-format
 msgid "cannot alter foreign table \"%s\" because column \"%s.%s\" uses its row type"
 msgstr "kann Fremdtabelle „%s“ nicht ändern, weil Spalte „%s.%s“ ihren Zeilentyp verwendet"
 
-#: commands/tablecmds.c:4331
+#: commands/tablecmds.c:4332
 #, c-format
 msgid "cannot alter table \"%s\" because column \"%s.%s\" uses its row type"
 msgstr "kann Tabelle „%s“ nicht ändern, weil Spalte „%s.%s“ ihren Zeilentyp verwendet"
 
-#: commands/tablecmds.c:4393
+#: commands/tablecmds.c:4394
 #, c-format
 msgid "cannot alter type \"%s\" because it is the type of a typed table"
 msgstr "kann Typ „%s“ nicht ändern, weil er der Typ einer getypten Tabelle ist"
 
-#: commands/tablecmds.c:4395
+#: commands/tablecmds.c:4396
 #, c-format
 msgid "Use ALTER ... CASCADE to alter the typed tables too."
 msgstr "Verwenden Sie ALTER ... CASCADE, um die getypten Tabellen ebenfalls zu ändern."
 
-#: commands/tablecmds.c:4439
+#: commands/tablecmds.c:4440
 #, c-format
 msgid "type %s is not a composite type"
 msgstr "Typ %s ist kein zusammengesetzter Typ"
 
-#: commands/tablecmds.c:4465
+#: commands/tablecmds.c:4466
 #, c-format
 msgid "cannot add column to typed table"
 msgstr "zu einer getypten Tabelle kann keine Spalte hinzugefügt werden"
 
-#: commands/tablecmds.c:4527 commands/tablecmds.c:9549
+#: commands/tablecmds.c:4528 commands/tablecmds.c:9727
 #, c-format
 msgid "child table \"%s\" has different type for column \"%s\""
 msgstr "abgeleitete Tabelle „%s“ hat unterschiedlichen Typ für Spalte „%s“"
 
-#: commands/tablecmds.c:4533 commands/tablecmds.c:9556
+#: commands/tablecmds.c:4534 commands/tablecmds.c:9734
 #, c-format
 msgid "child table \"%s\" has different collation for column \"%s\""
 msgstr "abgeleitete Tabelle „%s“ hat unterschiedliche Sortierfolge für Spalte „%s“"
 
-#: commands/tablecmds.c:4543
+#: commands/tablecmds.c:4544
 #, c-format
 msgid "child table \"%s\" has a conflicting \"%s\" column"
 msgstr "abgeleitete Tabelle „%s“ hat eine widersprüchliche Spalte „%s“"
 
-#: commands/tablecmds.c:4555
+#: commands/tablecmds.c:4556
 #, c-format
 msgid "merging definition of column \"%s\" for child \"%s\""
 msgstr "Definition von Spalte „%s“ für abgeleitete Tabelle „%s“ wird zusammengeführt"
 
-#: commands/tablecmds.c:4776
+#: commands/tablecmds.c:4777
 #, c-format
 msgid "column must be added to child tables too"
 msgstr "Spalte muss ebenso in den abgeleiteten Tabellen hinzugefügt werden"
 
-#: commands/tablecmds.c:4843
+#: commands/tablecmds.c:4844
 #, c-format
 msgid "column \"%s\" of relation \"%s\" already exists"
 msgstr "Spalte „%s“ von Relation „%s“ existiert bereits"
 
-#: commands/tablecmds.c:4947 commands/tablecmds.c:5042
-#: commands/tablecmds.c:5090 commands/tablecmds.c:5194
-#: commands/tablecmds.c:5241 commands/tablecmds.c:5325
-#: commands/tablecmds.c:7495 commands/tablecmds.c:8090
+#: commands/tablecmds.c:4948 commands/tablecmds.c:5043
+#: commands/tablecmds.c:5091 commands/tablecmds.c:5195
+#: commands/tablecmds.c:5242 commands/tablecmds.c:5326
+#: commands/tablecmds.c:7503 commands/tablecmds.c:8098
 #, c-format
 msgid "cannot alter system column \"%s\""
 msgstr "Systemspalte „%s“ kann nicht geändert werden"
 
-#: commands/tablecmds.c:4983
+#: commands/tablecmds.c:4984
 #, c-format
 msgid "column \"%s\" is in a primary key"
 msgstr "Spalte „%s“ ist in einem Primärschlüssel"
 
-#: commands/tablecmds.c:5141
+#: commands/tablecmds.c:5142
 #, c-format
 msgid "\"%s\" is not a table, materialized view, index, or foreign table"
 msgstr "„%s“ ist weder Tabelle, materialisierte Sicht, Index noch Fremdtabelle"
 
-#: commands/tablecmds.c:5168
+#: commands/tablecmds.c:5169
 #, c-format
 msgid "statistics target %d is too low"
 msgstr "Statistikziel %d ist zu niedrig"
 
-#: commands/tablecmds.c:5176
+#: commands/tablecmds.c:5177
 #, c-format
 msgid "lowering statistics target to %d"
 msgstr "setze Statistikziel auf %d herab"
 
-#: commands/tablecmds.c:5306
+#: commands/tablecmds.c:5307
 #, c-format
 msgid "invalid storage type \"%s\""
 msgstr "ungültiger Storage-Typ „%s“"
 
-#: commands/tablecmds.c:5337
+#: commands/tablecmds.c:5338
 #, c-format
 msgid "column data type %s can only have storage PLAIN"
 msgstr "Spaltendatentyp %s kann nur Storage-Typ PLAIN"
 
-#: commands/tablecmds.c:5371
+#: commands/tablecmds.c:5372
 #, c-format
 msgid "cannot drop column from typed table"
 msgstr "aus einer getypten Tabelle können keine Spalten gelöscht werden"
 
-#: commands/tablecmds.c:5412
+#: commands/tablecmds.c:5413
 #, c-format
 msgid "column \"%s\" of relation \"%s\" does not exist, skipping"
 msgstr "Spalte „%s“ von Relation „%s“ existiert nicht, wird übersprungen"
 
-#: commands/tablecmds.c:5425
+#: commands/tablecmds.c:5426
 #, c-format
 msgid "cannot drop system column \"%s\""
 msgstr "Systemspalte „%s“ kann nicht gelöscht werden"
 
-#: commands/tablecmds.c:5432
+#: commands/tablecmds.c:5433
 #, c-format
 msgid "cannot drop inherited column \"%s\""
 msgstr "geerbte Spalte „%s“ kann nicht gelöscht werden"
 
-#: commands/tablecmds.c:5662
+#: commands/tablecmds.c:5663
 #, c-format
 msgid "ALTER TABLE / ADD CONSTRAINT USING INDEX will rename index \"%s\" to \"%s\""
 msgstr "ALTER TABLE / ADD CONSTRAINT USING INDEX benennt Index „%s“ um in „%s“"
 
-#: commands/tablecmds.c:5865
+#: commands/tablecmds.c:5866
 #, c-format
 msgid "constraint must be added to child tables too"
 msgstr "Constraint muss ebenso in den abgeleiteten Tabellen hinzugefügt werden"
 
-#: commands/tablecmds.c:5935
+#: commands/tablecmds.c:5936
 #, c-format
 msgid "referenced relation \"%s\" is not a table"
 msgstr "Relation „%s“, auf die verwiesen wird, ist keine Tabelle"
 
-#: commands/tablecmds.c:5958
+#: commands/tablecmds.c:5959
 #, c-format
 msgid "constraints on permanent tables may reference only permanent tables"
 msgstr "Constraints für permanente Tabellen dürfen nur auf permanente Tabellen verweisen"
 
-#: commands/tablecmds.c:5965
+#: commands/tablecmds.c:5966
 #, c-format
 msgid "constraints on unlogged tables may reference only permanent or unlogged tables"
 msgstr "Constraints für ungeloggte Tabellen dürfen nur auf permanente oder ungeloggte Tabellen verweisen"
 
-#: commands/tablecmds.c:5971
+#: commands/tablecmds.c:5972
 #, c-format
 msgid "constraints on temporary tables may reference only temporary tables"
 msgstr "Constraints für temporäre Tabellen dürfen nur auf temporäre Tabellen verweisen"
 
-#: commands/tablecmds.c:5975
+#: commands/tablecmds.c:5976
 #, c-format
 msgid "constraints on temporary tables must involve temporary tables of this session"
 msgstr "Constraints für temporäre Tabellen müssen temporäre Tabellen dieser Sitzung beinhalten"
 
-#: commands/tablecmds.c:6036
+#: commands/tablecmds.c:6037
 #, c-format
 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:6143
+#: commands/tablecmds.c:6144
 #, c-format
 msgid "foreign key constraint \"%s\" cannot be implemented"
 msgstr "Fremdschlüssel-Constraint „%s“ kann nicht implementiert werden"
 
-#: commands/tablecmds.c:6146
+#: commands/tablecmds.c:6147
 #, 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:6346 commands/tablecmds.c:6469
-#: commands/tablecmds.c:7334 commands/tablecmds.c:7390
+#: commands/tablecmds.c:6347 commands/tablecmds.c:6470
+#: commands/tablecmds.c:7342 commands/tablecmds.c:7398
 #, c-format
 msgid "constraint \"%s\" of relation \"%s\" does not exist"
 msgstr "Constraint „%s“ von Relation „%s“ existiert nicht"
 
-#: commands/tablecmds.c:6352
-#, fuzzy, c-format
-#| msgid "constraint \"%s\" of relation \"%s\" is not a foreign key or check constraint"
+#: commands/tablecmds.c:6353
+#, c-format
 msgid "constraint \"%s\" of relation \"%s\" is not a foreign key constraint"
-msgstr "Constraint „%s“ von Relation „%s“ ist kein Fremdschlüssel- oder Check-Constraint"
+msgstr "Constraint „%s“ von Relation „%s“ ist kein Fremdschlüssel-Constraint"
 
-#: commands/tablecmds.c:6476
+#: commands/tablecmds.c:6477
 #, c-format
 msgid "constraint \"%s\" of relation \"%s\" is not a foreign key or check constraint"
 msgstr "Constraint „%s“ von Relation „%s“ ist kein Fremdschlüssel- oder Check-Constraint"
 
-#: commands/tablecmds.c:6545
+#: commands/tablecmds.c:6546
 #, c-format
 msgid "constraint must be validated on child tables too"
 msgstr "Constraint muss ebenso in den abgeleiteten Tabellen validiert werden"
 
-#: commands/tablecmds.c:6607
+#: commands/tablecmds.c:6608
 #, 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:6612
+#: commands/tablecmds.c:6613
 #, 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:6677
+#: commands/tablecmds.c:6678
 #, c-format
 msgid "cannot use a deferrable primary key for referenced table \"%s\""
 msgstr "aufschiebbarer Primärschlüssel kann nicht für Tabelle „%s“, auf die verwiesen wird, verwendet werden"
 
-#: commands/tablecmds.c:6694
+#: commands/tablecmds.c:6695
 #, 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:6846
+#: commands/tablecmds.c:6760
+#, c-format
+msgid "foreign key referenced-columns list must not contain duplicates"
+msgstr "die Liste der Spalten, auf die ein Fremdschlüssel verweist, darf keine doppelten Einträge enthalten"
+
+#: commands/tablecmds.c:6854
 #, c-format
 msgid "cannot use a deferrable unique constraint for referenced table \"%s\""
 msgstr "aufschiebbarer Unique-Constraint kann nicht für Tabelle „%s“, auf die verwiesen wird, verwendet werden"
 
-#: commands/tablecmds.c:6851
+#: commands/tablecmds.c:6859
 #, c-format
 msgid "there is no unique constraint matching given keys for referenced table \"%s\""
 msgstr "in Tabelle „%s“, auf die verwiesen wird, gibt es keinen Unique-Constraint, der auf die angegebenen Schlüssel passt"
 
-#: commands/tablecmds.c:7010
+#: commands/tablecmds.c:7018
 #, c-format
 msgid "validating foreign key constraint \"%s\""
 msgstr "validiere Fremdschlüssel-Constraint „%s“"
 
-#: commands/tablecmds.c:7306
+#: commands/tablecmds.c:7314
 #, c-format
 msgid "cannot drop inherited constraint \"%s\" of relation \"%s\""
 msgstr "geerbter Constraint „%s“ von Relation „%s“ kann nicht gelöscht werden"
 
-#: commands/tablecmds.c:7340
+#: commands/tablecmds.c:7348
 #, c-format
 msgid "constraint \"%s\" of relation \"%s\" does not exist, skipping"
 msgstr "Constraint „%s“ von Relation „%s“ existiert nicht, wird übersprungen"
 
-#: commands/tablecmds.c:7479
+#: commands/tablecmds.c:7487
 #, c-format
 msgid "cannot alter column type of typed table"
 msgstr "Spaltentyp einer getypten Tabelle kann nicht geändert werden"
 
-#: commands/tablecmds.c:7502
+#: commands/tablecmds.c:7510
 #, c-format
 msgid "cannot alter inherited column \"%s\""
 msgstr "kann vererbte Spalte „%s“ nicht ändern"
 
-#: commands/tablecmds.c:7549
+#: commands/tablecmds.c:7557
 #, c-format
 msgid "transform expression must not return a set"
 msgstr "Umwandlungsausdruck kann keine Ergebnismenge zurückgeben"
 
-#: commands/tablecmds.c:7568
+#: commands/tablecmds.c:7576
 #, c-format
 msgid "column \"%s\" cannot be cast automatically to type %s"
 msgstr "Spalte „%s“ kann nicht automatisch in Typ %s umgewandelt werden"
 
-#: commands/tablecmds.c:7570
+#: commands/tablecmds.c:7578
 #, c-format
 msgid "Specify a USING expression to perform the conversion."
 msgstr "Geben Sie einen USING-Ausdruck für die Umwandlung an."
 
-#: commands/tablecmds.c:7619
+#: commands/tablecmds.c:7627
 #, c-format
 msgid "type of inherited column \"%s\" must be changed in child tables too"
 msgstr "Typ der vererbten Spalte „%s“ muss ebenso in den abgeleiteten Tabellen geändert werden"
 
-#: commands/tablecmds.c:7700
+#: commands/tablecmds.c:7708
 #, c-format
 msgid "cannot alter type of column \"%s\" twice"
 msgstr "Typ der Spalte „%s“ kann nicht zweimal geändert werden"
 
-#: commands/tablecmds.c:7736
+#: commands/tablecmds.c:7744
 #, c-format
 msgid "default for column \"%s\" cannot be cast automatically to type %s"
 msgstr "Vorgabewert der Spalte „%s“ kann nicht automatisch in Typ %s umgewandelt werden"
 
-#: commands/tablecmds.c:7862
+#: commands/tablecmds.c:7870
 #, c-format
 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:7863 commands/tablecmds.c:7882
+#: commands/tablecmds.c:7871 commands/tablecmds.c:7890
 #, c-format
 msgid "%s depends on column \"%s\""
 msgstr "%s hängt von Spalte „%s“ ab"
 
-#: commands/tablecmds.c:7881
+#: commands/tablecmds.c:7889
 #, c-format
 msgid "cannot alter type of a column used in a trigger definition"
 msgstr "Typ einer Spalte, die in einer Trigger-Definition verwendet wird, kann nicht geändert werden"
 
-#: commands/tablecmds.c:8457
+#: commands/tablecmds.c:8465
 #, c-format
 msgid "cannot change owner of index \"%s\""
 msgstr "kann Eigentümer des Index „%s“ nicht ändern"
 
-#: commands/tablecmds.c:8459
+#: commands/tablecmds.c:8467
 #, c-format
 msgid "Change the ownership of the index's table, instead."
 msgstr "Ändern Sie stattdessen den Eigentümer der Tabelle des Index."
 
-#: commands/tablecmds.c:8475
+#: commands/tablecmds.c:8483
 #, c-format
 msgid "cannot change owner of sequence \"%s\""
 msgstr "kann Eigentümer der Sequenz „%s“ nicht ändern"
 
-#: commands/tablecmds.c:8477 commands/tablecmds.c:10466
+#: commands/tablecmds.c:8485 commands/tablecmds.c:10644
 #, c-format
 msgid "Sequence \"%s\" is linked to table \"%s\"."
 msgstr "Sequenz „%s“ ist mit Tabelle „%s“ verknüpft."
 
-#: commands/tablecmds.c:8489 commands/tablecmds.c:11102
+#: commands/tablecmds.c:8497 commands/tablecmds.c:11280
 #, c-format
 msgid "Use ALTER TYPE instead."
 msgstr "Verwenden Sie stattdessen ALTER TYPE."
 
-#: commands/tablecmds.c:8498
+#: commands/tablecmds.c:8506
 #, c-format
 msgid "\"%s\" is not a table, view, sequence, or foreign table"
 msgstr "„%s“ ist keine Tabelle, Sicht, Sequenz oder Fremdtabelle"
 
-#: commands/tablecmds.c:8834
+#: commands/tablecmds.c:8842
 #, c-format
 msgid "cannot have multiple SET TABLESPACE subcommands"
 msgstr "mehrere SET TABLESPACE Unterbefehle sind ungültig"
 
-#: commands/tablecmds.c:8907
+#: commands/tablecmds.c:8915
 #, c-format
 msgid "\"%s\" is not a table, view, materialized view, index, or TOAST table"
 msgstr "„%s“ ist weder Tabelle, Sicht, materialisierte Sicht, Index noch TOAST-Tabelle"
 
-#: commands/tablecmds.c:8940 commands/view.c:474
+#: commands/tablecmds.c:8948 commands/view.c:474
 #, c-format
 msgid "WITH CHECK OPTION is supported only on auto-updatable views"
-msgstr ""
+msgstr "WITH CHECK OPTION wird nur für automatisch aktualisierbare Sichten unterstützt"
 
-#: commands/tablecmds.c:9086
+#: commands/tablecmds.c:9094
 #, c-format
 msgid "cannot move system relation \"%s\""
 msgstr "Systemrelation „%s“ kann nicht verschoben werden"
 
-#: commands/tablecmds.c:9102
+#: commands/tablecmds.c:9110
 #, c-format
 msgid "cannot move temporary tables of other sessions"
 msgstr "temporäre Tabellen anderer Sitzungen können nicht verschoben werden"
 
-#: commands/tablecmds.c:9240 storage/buffer/bufmgr.c:481
+#: commands/tablecmds.c:9238
+#, c-format
+msgid "only tables, indexes, and materialized views exist in tablespaces"
+msgstr "nur Tabellen, Indexe und materialisierte Sichten existieren in Tablespaces"
+
+#: commands/tablecmds.c:9250
+#, c-format
+msgid "cannot move relations in to or out of pg_global tablespace"
+msgstr "Relationen können nicht in den oder aus dem Tablespace „pg_global“ verschoben werden"
+
+#: commands/tablecmds.c:9341
+#, fuzzy, c-format
+#| msgid "skipping vacuum of \"%s\" --- lock not available"
+msgid "aborting because lock on relation \"%s\".\"%s\" is not available"
+msgstr "überspringe Vacuum von „%s“ --- Sperre nicht verfügbar"
+
+#: commands/tablecmds.c:9357
+#, c-format
+msgid "no matching relations in tablespace \"%s\" found"
+msgstr "keine passenden Relationen in Tablespace „%s“ gefunden"
+
+#: commands/tablecmds.c:9418 storage/buffer/bufmgr.c:481
 #, c-format
 msgid "invalid page in block %u of relation %s"
 msgstr "ungültige Seite in Block %u von Relation %s"
 
-#: commands/tablecmds.c:9322
+#: commands/tablecmds.c:9500
 #, c-format
 msgid "cannot change inheritance of typed table"
 msgstr "Vererbung einer getypten Tabelle kann nicht geändert werden"
 
-#: commands/tablecmds.c:9368
+#: commands/tablecmds.c:9546
 #, c-format
 msgid "cannot inherit to temporary relation of another session"
 msgstr "an temporäre Relation einer anderen Sitzung kann nicht vererbt werden"
 
-#: commands/tablecmds.c:9422
+#: commands/tablecmds.c:9600
 #, c-format
 msgid "circular inheritance not allowed"
 msgstr "zirkuläre Vererbung ist nicht erlaubt"
 
-#: commands/tablecmds.c:9423
+#: commands/tablecmds.c:9601
 #, c-format
 msgid "\"%s\" is already a child of \"%s\"."
 msgstr "„%s“ ist schon von „%s“ abgeleitet."
 
-#: commands/tablecmds.c:9431
+#: commands/tablecmds.c:9609
 #, c-format
 msgid "table \"%s\" without OIDs cannot inherit from table \"%s\" with OIDs"
 msgstr "Tabelle „%s“ ohne OIDs kann nicht von Tabelle „%s“ mit OIDs erben"
 
-#: commands/tablecmds.c:9567
+#: commands/tablecmds.c:9745
 #, c-format
 msgid "column \"%s\" in child table must be marked NOT NULL"
 msgstr "Spalte „%s“ in abgeleiteter Tabelle muss als NOT NULL markiert sein"
 
-#: commands/tablecmds.c:9583
+#: commands/tablecmds.c:9761
 #, c-format
 msgid "child table is missing column \"%s\""
 msgstr "Spalte „%s“ fehlt in abgeleiteter Tabelle"
 
-#: commands/tablecmds.c:9666
+#: commands/tablecmds.c:9844
 #, c-format
 msgid "child table \"%s\" has different definition for check constraint \"%s\""
 msgstr "abgeleitete Tabelle „%s“ hat unterschiedliche Definition für Check-Constraint „%s“"
 
-#: commands/tablecmds.c:9674
+#: commands/tablecmds.c:9852
 #, c-format
 msgid "constraint \"%s\" conflicts with non-inherited constraint on child table \"%s\""
 msgstr "Constraint „%s“ kollidiert mit nicht vererbtem Constraint für abgeleitete Tabelle „%s“"
 
-#: commands/tablecmds.c:9698
+#: commands/tablecmds.c:9876
 #, c-format
 msgid "child table is missing constraint \"%s\""
 msgstr "Constraint „%s“ fehlt in abgeleiteter Tabelle"
 
-#: commands/tablecmds.c:9778
+#: commands/tablecmds.c:9956
 #, c-format
 msgid "relation \"%s\" is not a parent of relation \"%s\""
 msgstr "Relation „%s“ ist keine Basisrelation von Relation „%s“"
 
-#: commands/tablecmds.c:10004
+#: commands/tablecmds.c:10182
 #, c-format
 msgid "typed tables cannot inherit"
 msgstr "getypte Tabellen können nicht erben"
 
-#: commands/tablecmds.c:10035
+#: commands/tablecmds.c:10213
 #, c-format
 msgid "table is missing column \"%s\""
 msgstr "Spalte „%s“ fehlt in Tabelle"
 
-#: commands/tablecmds.c:10045
+#: commands/tablecmds.c:10223
 #, c-format
 msgid "table has column \"%s\" where type requires \"%s\""
 msgstr "Tabelle hat Spalte „%s“, aber Typ benötigt „%s“"
 
-#: commands/tablecmds.c:10054
+#: commands/tablecmds.c:10232
 #, c-format
 msgid "table \"%s\" has different type for column \"%s\""
 msgstr "Tabelle „%s“ hat unterschiedlichen Typ für Spalte „%s“"
 
-#: commands/tablecmds.c:10067
+#: commands/tablecmds.c:10245
 #, c-format
 msgid "table has extra column \"%s\""
 msgstr "Tabelle hat zusätzliche Spalte „%s“"
 
-#: commands/tablecmds.c:10117
+#: commands/tablecmds.c:10295
 #, c-format
 msgid "\"%s\" is not a typed table"
 msgstr "„%s“ ist keine getypte Tabelle"
 
-#: commands/tablecmds.c:10300
+#: commands/tablecmds.c:10478
 #, fuzzy, c-format
 #| msgid "cannot use subquery in index predicate"
 msgid "cannot use non-unique index \"%s\" as replica identity"
 msgstr "Unteranfragen können nicht im Indexprädikat verwendet werden"
 
-#: commands/tablecmds.c:10306
+#: commands/tablecmds.c:10484
 #, c-format
 msgid "cannot use non-immediate index \"%s\" as replica identity"
 msgstr ""
 
-#: commands/tablecmds.c:10312
+#: commands/tablecmds.c:10490
 #, fuzzy, c-format
 #| msgid "cannot use subquery in index predicate"
 msgid "cannot use expression index \"%s\" as replica identity"
 msgstr "Unteranfragen können nicht im Indexprädikat verwendet werden"
 
-#: commands/tablecmds.c:10318
+#: commands/tablecmds.c:10496
 #, fuzzy, c-format
 #| msgid "cannot cluster on partial index \"%s\""
 msgid "cannot use partial index \"%s\" as replica identity"
 msgstr "kann nicht anhand des partiellen Index „%s“ clustern"
 
-#: commands/tablecmds.c:10324
+#: commands/tablecmds.c:10502
 #, fuzzy, c-format
 #| msgid "cannot cluster on invalid index \"%s\""
 msgid "cannot use invalid index \"%s\" as replica identity"
 msgstr "kann nicht anhand des ungültigen Index „%s“ clustern"
 
-#: commands/tablecmds.c:10342
+#: commands/tablecmds.c:10520
 #, c-format
 msgid "index \"%s\" cannot be used as replica identity because column \"%s\" is nullable"
 msgstr ""
 
-#: commands/tablecmds.c:10465
+#: commands/tablecmds.c:10643
 #, c-format
 msgid "cannot move an owned sequence into another schema"
 msgstr "einer Tabelle zugeordnete Sequenz kann nicht in ein anderes Schema verschoben werden"
 
-#: commands/tablecmds.c:10561
+#: commands/tablecmds.c:10739
 #, c-format
 msgid "relation \"%s\" already exists in schema \"%s\""
 msgstr "Relation „%s“ existiert bereits in Schema „%s“"
 
-#: commands/tablecmds.c:11086
+#: commands/tablecmds.c:11264
 #, c-format
 msgid "\"%s\" is not a composite type"
 msgstr "„%s“ ist kein zusammengesetzter Typ"
 
-#: commands/tablecmds.c:11116
+#: commands/tablecmds.c:11294
 #, c-format
 msgid "\"%s\" is not a table, view, materialized view, sequence, or foreign table"
 msgstr "„%s“ ist weder Tabelle, Sicht, materialisierte Sicht, Sequenz noch Fremdtabelle"
 
-#: commands/tablespace.c:161 commands/tablespace.c:178
-#: commands/tablespace.c:189 commands/tablespace.c:197
-#: commands/tablespace.c:617 replication/slot.c:921 storage/file/copydir.c:47
+#: commands/tablespace.c:160 commands/tablespace.c:177
+#: commands/tablespace.c:188 commands/tablespace.c:196
+#: commands/tablespace.c:616 replication/slot.c:921 storage/file/copydir.c:47
 #, c-format
 msgid "could not create directory \"%s\": %m"
 msgstr "konnte Verzeichnis „%s“ nicht erzeugen: %m"
 
-#: commands/tablespace.c:208
+#: commands/tablespace.c:207
 #, c-format
 msgid "could not stat directory \"%s\": %m"
 msgstr "konnte „stat“ für Verzeichnis „%s“ nicht ausführen: %m"
 
-#: commands/tablespace.c:217
+#: commands/tablespace.c:216
 #, c-format
 msgid "\"%s\" exists but is not a directory"
 msgstr "„%s“ existiert, ist aber kein Verzeichnis"
 
-#: commands/tablespace.c:248
+#: commands/tablespace.c:247
 #, c-format
 msgid "permission denied to create tablespace \"%s\""
 msgstr "keine Berechtigung, um Tablespace „%s“ zu erzeugen"
 
-#: commands/tablespace.c:250
+#: commands/tablespace.c:249
 #, c-format
 msgid "Must be superuser to create a tablespace."
 msgstr "Nur Superuser können Tablespaces anlegen."
 
-#: commands/tablespace.c:266
+#: commands/tablespace.c:265
 #, c-format
 msgid "tablespace location cannot contain single quotes"
 msgstr "Tablespace-Pfad darf keine Apostrophe enthalten"
 
-#: commands/tablespace.c:276
+#: commands/tablespace.c:275
 #, c-format
 msgid "tablespace location must be an absolute path"
 msgstr "Tablespace-Pfad muss ein absoluter Pfad sein"
 
-#: commands/tablespace.c:287
+#: commands/tablespace.c:286
 #, c-format
 msgid "tablespace location \"%s\" is too long"
 msgstr "Tablespace-Pfad „%s“ ist zu lang"
 
-#: commands/tablespace.c:297 commands/tablespace.c:888
+#: commands/tablespace.c:296 commands/tablespace.c:887
 #, c-format
 msgid "unacceptable tablespace name \"%s\""
 msgstr "inakzeptabler Tablespace-Name „%s“"
 
-#: commands/tablespace.c:299 commands/tablespace.c:889
+#: commands/tablespace.c:298 commands/tablespace.c:888
 #, c-format
 msgid "The prefix \"pg_\" is reserved for system tablespaces."
 msgstr "Der Präfix „pg_“ ist für System-Tablespaces reserviert."
 
-#: commands/tablespace.c:309 commands/tablespace.c:901
+#: commands/tablespace.c:308 commands/tablespace.c:900
 #, c-format
 msgid "tablespace \"%s\" already exists"
 msgstr "Tablespace „%s“ existiert bereits"
 
-#: commands/tablespace.c:387 commands/tablespace.c:545
+#: commands/tablespace.c:386 commands/tablespace.c:544
 #: replication/basebackup.c:222 replication/basebackup.c:1064
 #: utils/adt/misc.c:365
 #, c-format
 msgid "tablespaces are not supported on this platform"
 msgstr "Tablespaces werden auf dieser Plattform nicht unterstützt"
 
-#: commands/tablespace.c:427 commands/tablespace.c:871
-#: commands/tablespace.c:950 commands/tablespace.c:1197
-#: commands/tablespace.c:1330 commands/tablespace.c:1530
+#: commands/tablespace.c:426 commands/tablespace.c:870
+#: commands/tablespace.c:949 commands/tablespace.c:1018
+#: commands/tablespace.c:1151 commands/tablespace.c:1351
 #, c-format
 msgid "tablespace \"%s\" does not exist"
 msgstr "Tablespace „%s“ existiert nicht"
 
-#: commands/tablespace.c:433
+#: commands/tablespace.c:432
 #, c-format
 msgid "tablespace \"%s\" does not exist, skipping"
 msgstr "Tablespace „%s“ existiert nicht, wird übersprungen"
 
-#: commands/tablespace.c:502
+#: commands/tablespace.c:501
 #, c-format
 msgid "tablespace \"%s\" is not empty"
 msgstr "Tablespace „%s“ ist nicht leer"
 
-#: commands/tablespace.c:576
+#: commands/tablespace.c:575
 #, c-format
 msgid "directory \"%s\" does not exist"
 msgstr "Verzeichnis „%s“ existiert nicht"
 
-#: commands/tablespace.c:577
+#: commands/tablespace.c:576
 #, c-format
 msgid "Create this directory for the tablespace before restarting the server."
 msgstr "Erzeugen Sie dieses Verzeichnis für den Tablespace bevor Sie den Server neu starten."
 
-#: commands/tablespace.c:582
+#: commands/tablespace.c:581
 #, c-format
 msgid "could not set permissions on directory \"%s\": %m"
 msgstr "konnte Zugriffsrechte für Verzeichnis „%s“ nicht setzen: %m"
 
-#: commands/tablespace.c:612
+#: commands/tablespace.c:611
 #, c-format
 msgid "directory \"%s\" already in use as a tablespace"
 msgstr "Verzeichnis „%s“ ist bereits als Tablespace in Verwendung"
 
-#: commands/tablespace.c:636 commands/tablespace.c:758
-#: commands/tablespace.c:771 commands/tablespace.c:795
+#: commands/tablespace.c:635 commands/tablespace.c:757
+#: commands/tablespace.c:770 commands/tablespace.c:794
 #, c-format
 msgid "could not remove directory \"%s\": %m"
 msgstr "konnte Verzeichnis „%s“ nicht löschen: %m"
 
-#: commands/tablespace.c:644 commands/tablespace.c:806
+#: commands/tablespace.c:643 commands/tablespace.c:805
 #, c-format
 msgid "could not remove symbolic link \"%s\": %m"
 msgstr "konnte symbolische Verknüpfung „%s“ nicht löschen: %m"
 
-#: commands/tablespace.c:655
+#: commands/tablespace.c:654
 #, c-format
 msgid "could not create symbolic link \"%s\": %m"
 msgstr "konnte symbolische Verknüpfung „%s“ nicht erstellen: %m"
 
-#: commands/tablespace.c:719 commands/tablespace.c:729
+#: commands/tablespace.c:718 commands/tablespace.c:728
 #: postmaster/postmaster.c:1284 replication/basebackup.c:349
 #: replication/basebackup.c:667 storage/file/copydir.c:53
 #: storage/file/copydir.c:96 storage/file/fd.c:1951 storage/ipc/dsm.c:300
@@ -7430,41 +7433,17 @@ msgstr "konnte symbolische Verknüpfung „%s“ nicht erstellen: %m"
 msgid "could not open directory \"%s\": %m"
 msgstr "konnte Verzeichnis „%s“ nicht öffnen: %m"
 
-#: commands/tablespace.c:1025
-#, fuzzy, c-format
-#| msgid "\"%s\" is not a table, view, materialized view, index, or TOAST table"
-msgid "only tables, indexes, and materialized views exist in tablespaces"
-msgstr "„%s“ ist weder Tabelle, Sicht, materialisierte Sicht, Index noch TOAST-Tabelle"
-
-#: commands/tablespace.c:1037
-#, fuzzy, c-format
-#| msgid "cannot move objects into or out of temporary schemas"
-msgid "cannot move relations in to or out of pg_global tablespace"
-msgstr "Objekte können nicht in oder aus temporären Schemas verschoben werden"
-
-#: commands/tablespace.c:1135
-#, fuzzy, c-format
-#| msgid "skipping vacuum of \"%s\" --- lock not available"
-msgid "aborting due to \"%s\".\"%s\" --- lock not available"
-msgstr "überspringe Vacuum von „%s“ --- Sperre nicht verfügbar"
-
-#: commands/tablespace.c:1151
-#, fuzzy, c-format
-#| msgid "No matching relations found.\n"
-msgid "no matching relations in tablespace \"%s\" found"
-msgstr "Keine passenden Relationen gefunden.\n"
-
-#: commands/tablespace.c:1202
+#: commands/tablespace.c:1023
 #, c-format
 msgid "Tablespace \"%s\" does not exist."
 msgstr "Tablespace „%s“ existiert nicht."
 
-#: commands/tablespace.c:1629
+#: commands/tablespace.c:1450
 #, c-format
 msgid "directories for tablespace %u could not be removed"
 msgstr "Verzeichnisse für Tablespace %u konnten nicht entfernt werden"
 
-#: commands/tablespace.c:1631
+#: commands/tablespace.c:1452
 #, c-format
 msgid "You can remove the directories manually if necessary."
 msgstr "Sie können die Verzeichnisse falls nötig manuell entfernen."
@@ -7495,22 +7474,19 @@ msgid "Views cannot have TRUNCATE triggers."
 msgstr "Sichten können keine TRUNCATE-Trigger haben."
 
 #: commands/trigger.c:205 commands/trigger.c:212 commands/trigger.c:219
-#, fuzzy, c-format
-#| msgid "\"%s\" is not a foreign table"
+#, c-format
 msgid "\"%s\" is a foreign table"
-msgstr "„%s“ ist keine Fremdtabelle"
+msgstr "„%s“ ist eine Fremdtabelle"
 
 #: commands/trigger.c:207
-#, fuzzy, c-format
-#| msgid "Tables cannot have INSTEAD OF triggers."
+#, c-format
 msgid "Foreign tables cannot have INSTEAD OF triggers."
-msgstr "Tabellen können keine INSTEAD OF-Trigger haben."
+msgstr "Fremdtabellen können keine INSTEAD OF-Trigger haben."
 
 #: commands/trigger.c:214
-#, fuzzy, c-format
-#| msgid "Views cannot have TRUNCATE triggers."
+#, c-format
 msgid "Foreign tables cannot have TRUNCATE triggers."
-msgstr "Sichten können keine TRUNCATE-Trigger haben."
+msgstr "Fremdtabellen können keine TRUNCATE-Trigger haben."
 
 #: commands/trigger.c:221
 #, c-format
@@ -7595,10 +7571,9 @@ msgid "converting trigger group into constraint \"%s\" %s"
 msgstr "Triggergruppe wird in Constraint \"%s\" %s umgewandelt"
 
 #: commands/trigger.c:1112 commands/trigger.c:1217
-#, fuzzy, c-format
-#| msgid "\"%s\" is not a table or foreign table"
+#, c-format
 msgid "\"%s\" is not a table, view, or foreign table"
-msgstr "„%s“ ist keine Tabelle oder Fremdtabelle"
+msgstr "„%s“ ist keine Tabelle, Sicht oder Fremdtabelle"
 
 #: commands/trigger.c:1183 commands/trigger.c:1343 commands/trigger.c:1459
 #, c-format
@@ -7633,7 +7608,7 @@ msgstr "das zu aktualisierende Tupel wurde schon durch eine vom aktuellen Befehl
 msgid "Consider using an AFTER trigger instead of a BEFORE trigger to propagate changes to other rows."
 msgstr "Verwenden Sie einen AFTER-Trigger anstelle eines BEFORE-Triggers, um Änderungen an andere Zeilen zu propagieren."
 
-#: commands/trigger.c:2741 executor/execMain.c:2049
+#: commands/trigger.c:2741 executor/execMain.c:2059
 #: executor/nodeLockRows.c:165 executor/nodeModifyTable.c:447
 #: executor/nodeModifyTable.c:725
 #, c-format
@@ -8031,7 +8006,7 @@ msgid "role \"%s\" already exists"
 msgstr "Rolle „%s“ existiert bereits"
 
 #: commands/user.c:618 commands/user.c:827 commands/user.c:933
-#: commands/user.c:1088 commands/variable.c:790 commands/variable.c:862
+#: commands/user.c:1088 commands/variable.c:797 commands/variable.c:869
 #: utils/adt/acl.c:5121 utils/init/miscinit.c:362
 #, c-format
 msgid "role \"%s\" does not exist"
@@ -8153,70 +8128,63 @@ msgstr "Rolle „%s“ ist schon Mitglied der Rolle „%s“"
 msgid "role \"%s\" is not a member of role \"%s\""
 msgstr "Rolle „%s“ ist kein Mitglied der Rolle „%s“"
 
-#: commands/vacuum.c:463
+#: commands/vacuum.c:466
 #, c-format
 msgid "oldest xmin is far in the past"
 msgstr "älteste xmin ist weit in der Vergangenheit"
 
-#: commands/vacuum.c:464
+#: commands/vacuum.c:467
 #, c-format
 msgid "Close open transactions soon to avoid wraparound problems."
 msgstr "Schließen Sie bald alle offenen Transaktionen, um Überlaufprobleme zu vermeiden."
 
-#: commands/vacuum.c:496
+#: commands/vacuum.c:499
 #, c-format
 msgid "oldest multixact is far in the past"
 msgstr "älteste Multixact ist weit in der Vergangenheit"
 
-#: commands/vacuum.c:497
+#: commands/vacuum.c:500
 #, c-format
 msgid "Close open transactions with multixacts soon to avoid wraparound problems."
 msgstr "Schließen Sie bald alle offenen Transaktionen mit Multixacts, um Überlaufprobleme zu vermeiden."
 
-#: commands/vacuum.c:967
+#: commands/vacuum.c:1044
 #, c-format
 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:968
+#: commands/vacuum.c:1045
 #, c-format
 msgid "You might have already suffered transaction-wraparound data loss."
 msgstr "Sie haben möglicherweise bereits Daten wegen Transaktionsnummernüberlauf verloren."
 
-#: commands/vacuum.c:1081
+#: commands/vacuum.c:1162
 #, c-format
 msgid "skipping vacuum of \"%s\" --- lock not available"
 msgstr "überspringe Vacuum von „%s“ --- Sperre nicht verfügbar"
 
-#: commands/vacuum.c:1107
+#: commands/vacuum.c:1188
 #, c-format
 msgid "skipping \"%s\" --- only superuser can vacuum it"
 msgstr "überspringe „%s“ --- nur Superuser kann sie vacuumen"
 
-#: commands/vacuum.c:1111
+#: commands/vacuum.c:1192
 #, c-format
 msgid "skipping \"%s\" --- only superuser or database owner can vacuum it"
 msgstr "überspringe „%s“ --- nur Superuser oder Eigentümer der Datenbank kann sie vacuumen"
 
-#: commands/vacuum.c:1115
+#: commands/vacuum.c:1196
 #, 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:1133
+#: commands/vacuum.c:1214
 #, c-format
 msgid "skipping \"%s\" --- cannot vacuum non-tables or special system tables"
 msgstr "überspringe „%s“ --- kann Nicht-Tabellen oder besondere Systemtabellen nicht vacuumen"
 
 #: commands/vacuumlazy.c:345
-#, fuzzy, c-format
-#| msgid ""
-#| "automatic vacuum of table \"%s.%s.%s\": index scans: %d\n"
-#| "pages: %d removed, %d remain\n"
-#| "tuples: %.0f removed, %.0f remain\n"
-#| "buffer usage: %d hits, %d misses, %d dirtied\n"
-#| "avg read rate: %.3f MB/s, avg write rate: %.3f MB/s\n"
-#| "system usage: %s"
+#, c-format
 msgid ""
 "automatic vacuum of table \"%s.%s.%s\": index scans: %d\n"
 "pages: %d removed, %d remain\n"
@@ -8227,7 +8195,7 @@ msgid ""
 msgstr ""
 "automatisches Vacuum von Tabelle „%s.%s.%s“: Index-Scans: %d\n"
 "Seiten: %d entfernt, %d noch vorhanden\n"
-"Tupel: %.0f entfernt, %.0f noch vorhanden\n"
+"Tupel: %.0f entfernt, %.0f noch vorhanden, %.0f sind tot aber noch nicht entfernbar\n"
 "Puffer-Verwendung: %d Treffer, %d Verfehlen, %d geändert\n"
 "durchschn. Leserate: %.3f MB/s, durchschn. Schreibrate: %.3f MB/s\n"
 "Systembenutzung: %s"
@@ -8307,7 +8275,7 @@ msgstr "„%s“: von %u auf %u Seiten verkürzt"
 msgid "\"%s\": suspending truncate due to conflicting lock request"
 msgstr "„%s“: Truncate wird ausgesetzt wegen Sperrkonflikt"
 
-#: commands/variable.c:162 utils/misc/guc.c:9040
+#: commands/variable.c:162 utils/misc/guc.c:9058
 #, c-format
 msgid "Unrecognized key word: \"%s\"."
 msgstr "Unbekanntes Schlüsselwort: „%s“."
@@ -8327,87 +8295,90 @@ msgstr "Im Zeitzonenintervall können keine Monate angegeben werden."
 msgid "Cannot specify days in time zone interval."
 msgstr "Im Zeitzonenintervall können keine Tage angegeben werden."
 
-#: commands/variable.c:344 commands/variable.c:419
+#: commands/variable.c:344 commands/variable.c:426
 #, c-format
 msgid "time zone \"%s\" appears to use leap seconds"
 msgstr "Zeitzone „%s“ verwendet anscheinend Schaltsekunden"
 
-#: commands/variable.c:346 commands/variable.c:421
+#: commands/variable.c:346 commands/variable.c:428
 #, c-format
 msgid "PostgreSQL does not support leap seconds."
 msgstr "PostgreSQL unterstützt keine Schaltsekunden."
 
-#: commands/variable.c:486
+#: commands/variable.c:355
+#, c-format
+msgid "UTC timezone offset is out of range."
+msgstr "Zeitzonenabstand zu UTC ist außerhalb des gültigen Bereichs."
+
+#: commands/variable.c:493
 #, c-format
 msgid "cannot set transaction read-write mode inside a read-only transaction"
 msgstr "kann den Read/Write-Modus einer Transaktion nicht in einer Read-Only-Transaktion setzen"
 
-#: commands/variable.c:493
+#: commands/variable.c:500
 #, c-format
 msgid "transaction read-write mode must be set before any query"
 msgstr "Read/Write-Modus einer Transaktion muss vor allen Anfragen gesetzt werden"
 
-#: commands/variable.c:500
+#: commands/variable.c:507
 #, c-format
 msgid "cannot set transaction read-write mode during recovery"
 msgstr "kann den Read/Write-Modus einer Transaktion nicht während der Wiederherstellung setzen"
 
-#: commands/variable.c:549
+#: commands/variable.c:556
 #, c-format
 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:556
+#: commands/variable.c:563
 #, c-format
 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:563 storage/lmgr/predicate.c:1588
+#: commands/variable.c:570 storage/lmgr/predicate.c:1588
 #, c-format
 msgid "cannot use serializable mode in a hot standby"
 msgstr "kann serialisierbaren Modus nicht in einem Hot Standby verwenden"
 
-#: commands/variable.c:564
+#: commands/variable.c:571
 #, c-format
 msgid "You can use REPEATABLE READ instead."
 msgstr "Sie können stattdessen REPEATABLE READ verwenden."
 
-#: commands/variable.c:612
+#: commands/variable.c:619
 #, c-format
 msgid "SET TRANSACTION [NOT] DEFERRABLE cannot be called within a subtransaction"
 msgstr "SET TRANSACTION [NOT] DEFERRABLE kann nicht in einer Subtransaktion aufgerufen werden"
 
-#: commands/variable.c:618
+#: commands/variable.c:625
 #, c-format
 msgid "SET TRANSACTION [NOT] DEFERRABLE must be called before any query"
 msgstr "SET TRANSACTION [NOT] DEFERRABLE muss vor allen Anfragen aufgerufen werden"
 
-#: commands/variable.c:700
+#: commands/variable.c:707
 #, c-format
 msgid "Conversion between %s and %s is not supported."
 msgstr "Umwandlung zwischen %s und %s wird nicht unterstützt."
 
-#: commands/variable.c:707
+#: commands/variable.c:714
 #, c-format
 msgid "Cannot change \"client_encoding\" now."
 msgstr "„client_encoding“ kann jetzt nicht geändert werden."
 
-#: commands/variable.c:877
+#: commands/variable.c:884
 #, c-format
 msgid "permission denied to set role \"%s\""
 msgstr "keine Berechtigung, um Rolle „%s“ zu setzen"
 
 #: commands/view.c:54
-#, fuzzy, c-format
-#| msgid "invalid value for \"buffering\" option"
+#, c-format
 msgid "invalid value for \"check_option\" option"
-msgstr "ungültiger Wert für Option „buffering“"
+msgstr "ungültiger Wert für Option „check_option“"
 
 #: commands/view.c:55
-#, fuzzy, c-format
-#| msgid "Valid values are \"on\", \"off\", and \"auto\"."
-msgid "Valid values are \"local\", and \"cascaded\"."
-msgstr "Gültige Werte sind „on“, „off“ und „auto“."
+#, c-format
+msgid "Valid values are \"local\" and \"cascaded\"."
+msgstr "Gültige Werte sind „local“ und „cascaded“."
 
 #: commands/view.c:114
 #, c-format
@@ -8971,7 +8942,7 @@ msgstr "als Ausdruck verwendete Unteranfrage ergab mehr als eine Zeile"
 #: executor/nodeWindowAgg.c:353
 #, fuzzy, c-format
 #| msgid "cast function must not return a set"
-msgid "moving-aggregate transition function must not return NULL"
+msgid "moving-aggregate transition function must not return null"
 msgstr "Typumwandlungsfunktion darf keine Ergebnismenge zurückgeben"
 
 #: executor/nodeWindowAgg.c:1609
@@ -9055,42 +9026,42 @@ msgstr "ungültige Option „%s“"
 msgid "Valid options in this context are: %s"
 msgstr "Gültige Optionen in diesem Zusammenhang sind: %s"
 
-#: gram.y:955
+#: gram.y:956
 #, c-format
 msgid "unrecognized role option \"%s\""
 msgstr "unbekannte Rollenoption „%s“"
 
-#: gram.y:1237 gram.y:1252
+#: gram.y:1238 gram.y:1253
 #, c-format
 msgid "CREATE SCHEMA IF NOT EXISTS cannot include schema elements"
 msgstr "CREATE SCHEMA IF NOT EXISTS kann keine Schemaelemente enthalten"
 
-#: gram.y:1397
+#: gram.y:1398
 #, c-format
 msgid "current database cannot be changed"
 msgstr "aktuelle Datenbank kann nicht geändert werden"
 
-#: gram.y:1521 gram.y:1536
+#: gram.y:1522 gram.y:1537
 #, c-format
 msgid "time zone interval must be HOUR or HOUR TO MINUTE"
 msgstr "Zeitzonenintervall muss HOUR oder HOUR TO MINUTE sein"
 
-#: gram.y:1541 gram.y:10365 gram.y:12702
+#: gram.y:1542 gram.y:10351 gram.y:12688
 #, c-format
 msgid "interval precision specified twice"
 msgstr "Intervallpräzision doppelt angegeben"
 
-#: gram.y:2436 gram.y:2465
+#: gram.y:2511 gram.y:2540
 #, c-format
 msgid "STDIN/STDOUT not allowed with PROGRAM"
 msgstr "STDIN/STDOUT sind nicht mit PROGRAM erlaubt"
 
-#: gram.y:2727 gram.y:2734 gram.y:9603 gram.y:9611
+#: gram.y:2802 gram.y:2809 gram.y:9589 gram.y:9597
 #, c-format
 msgid "GLOBAL is deprecated in temporary table creation"
 msgstr "die Verwendung von GLOBAL beim Erzeugen einer temporären Tabelle ist veraltet"
 
-#: gram.y:3173 utils/adt/ri_triggers.c:310 utils/adt/ri_triggers.c:367
+#: gram.y:3248 utils/adt/ri_triggers.c:310 utils/adt/ri_triggers.c:367
 #: utils/adt/ri_triggers.c:786 utils/adt/ri_triggers.c:1009
 #: utils/adt/ri_triggers.c:1165 utils/adt/ri_triggers.c:1346
 #: utils/adt/ri_triggers.c:1511 utils/adt/ri_triggers.c:1687
@@ -9101,315 +9072,311 @@ msgstr "die Verwendung von GLOBAL beim Erzeugen einer temporären Tabelle ist ve
 msgid "MATCH PARTIAL not yet implemented"
 msgstr "MATCH PARTIAL ist noch nicht implementiert"
 
-#: gram.y:4407
+#: gram.y:4482
 msgid "duplicate trigger events specified"
 msgstr "mehrere Trigger-Ereignisse angegeben"
 
-#: gram.y:4502 parser/parse_utilcmd.c:2569 parser/parse_utilcmd.c:2595
+#: gram.y:4577 parser/parse_utilcmd.c:2569 parser/parse_utilcmd.c:2595
 #, c-format
 msgid "constraint declared INITIALLY DEFERRED must be DEFERRABLE"
 msgstr "Constraint, der als INITIALLY DEFERRED deklariert wurde, muss DEFERRABLE sein"
 
-#: gram.y:4509
+#: gram.y:4584
 #, c-format
 msgid "conflicting constraint properties"
 msgstr "widersprüchliche Constraint-Eigentschaften"
 
-#: gram.y:4641
+#: gram.y:4716
 #, c-format
 msgid "CREATE ASSERTION is not yet implemented"
 msgstr "CREATE ASSERTION ist noch nicht implementiert"
 
-#: gram.y:4657
+#: gram.y:4732
 #, c-format
 msgid "DROP ASSERTION is not yet implemented"
 msgstr "DROP ASSERTION ist noch nicht implementiert"
 
-#: gram.y:5003
+#: gram.y:5078
 #, c-format
 msgid "RECHECK is no longer required"
 msgstr "RECHECK wird nicht mehr benötigt"
 
-#: gram.y:5004
+#: gram.y:5079
 #, c-format
 msgid "Update your data type."
 msgstr "Aktualisieren Sie Ihren Datentyp."
 
-#: gram.y:6465
-#, fuzzy, c-format
-#| msgid "aggregates cannot use named arguments"
+#: gram.y:6540
+#, c-format
 msgid "aggregates cannot have output arguments"
-msgstr "Aggregatfunktionen können keine benannten Argumente verwenden"
+msgstr "Aggregatfunktionen können keine OUT-Argumente haben"
 
-#: gram.y:6771 utils/adt/regproc.c:738 utils/adt/regproc.c:779
+#: gram.y:6846 utils/adt/regproc.c:738 utils/adt/regproc.c:779
 #, c-format
 msgid "missing argument"
 msgstr "Argument fehlt"
 
-#: gram.y:6772 utils/adt/regproc.c:739 utils/adt/regproc.c:780
+#: gram.y:6847 utils/adt/regproc.c:739 utils/adt/regproc.c:780
 #, c-format
 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:8256 gram.y:8274
-#, fuzzy, c-format
-#| msgid "WITH CHECK OPTION is not implemented"
+#: gram.y:8236 gram.y:8254
+#, c-format
 msgid "WITH CHECK OPTION not supported on recursive views"
-msgstr "WITH CHECK OPTION ist nicht implementiert"
+msgstr "WITH CHECK OPTION wird für rekursive Sichten nicht unterstützt"
 
-#: gram.y:9248
+#: gram.y:9234
 #, c-format
 msgid "number of columns does not match number of values"
 msgstr "Anzahl der Spalten stimmt nicht mit der Anzahl der Werte überein"
 
-#: gram.y:9707
+#: gram.y:9693
 #, c-format
 msgid "LIMIT #,# syntax is not supported"
 msgstr "Syntax LIMIT x,y wird nicht unterstützt"
 
-#: gram.y:9708
+#: gram.y:9694
 #, c-format
 msgid "Use separate LIMIT and OFFSET clauses."
 msgstr "Verwenden Sie die getrennten Klauseln LIMIT und OFFSET."
 
-#: gram.y:9896 gram.y:9921
+#: gram.y:9882 gram.y:9907
 #, c-format
 msgid "VALUES in FROM must have an alias"
 msgstr "VALUES in FROM muss Aliasnamen erhalten"
 
-#: gram.y:9897 gram.y:9922
+#: gram.y:9883 gram.y:9908
 #, c-format
 msgid "For example, FROM (VALUES ...) [AS] foo."
 msgstr "Zum Beispiel FROM (VALUES ...) [AS] xyz."
 
-#: gram.y:9902 gram.y:9927
+#: gram.y:9888 gram.y:9913
 #, c-format
 msgid "subquery in FROM must have an alias"
 msgstr "Unteranfrage in FROM muss Aliasnamen erhalten"
 
-#: gram.y:9903 gram.y:9928
+#: gram.y:9889 gram.y:9914
 #, c-format
 msgid "For example, FROM (SELECT ...) [AS] foo."
 msgstr "Zum Beispiel FROM (SELECT ...) [AS] xyz."
 
-#: gram.y:10491
+#: gram.y:10477
 #, c-format
 msgid "precision for type float must be at least 1 bit"
 msgstr "Präzision von Typ float muss mindestens 1 Bit sein"
 
-#: gram.y:10500
+#: gram.y:10486
 #, c-format
 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:10966
+#: gram.y:10952
 #, c-format
 msgid "wrong number of parameters on left side of OVERLAPS expression"
 msgstr "falsche Anzahl Parameter auf linker Seite von OVERLAPS-Ausdruck"
 
-#: gram.y:10971
+#: gram.y:10957
 #, c-format
 msgid "wrong number of parameters on right side of OVERLAPS expression"
 msgstr "falsche Anzahl Parameter auf rechter Seite von OVERLAPS-Ausdruck"
 
-#: gram.y:11155
+#: gram.y:11141
 #, c-format
 msgid "UNIQUE predicate is not yet implemented"
 msgstr "UNIQUE-Prädikat ist noch nicht implementiert"
 
-#: gram.y:11442
-#, fuzzy, c-format
-#| msgid "multiple ORDER BY clauses not allowed"
+#: gram.y:11428
+#, c-format
 msgid "cannot use multiple ORDER BY clauses with WITHIN GROUP"
-msgstr "mehrere ORDER-BY-Klauseln sind nicht erlaubt"
+msgstr "in WITHIN GROUP können nicht mehrere ORDER-BY-Klauseln verwendet werden"
 
-#: gram.y:11447
+#: gram.y:11433
 #, c-format
 msgid "cannot use DISTINCT with WITHIN GROUP"
-msgstr ""
+msgstr "DISTINCT kann nicht mit WITHIN GROUP verwendet werden"
 
-#: gram.y:11452
+#: gram.y:11438
 #, c-format
 msgid "cannot use VARIADIC with WITHIN GROUP"
-msgstr ""
+msgstr "VARIADIC kann nicht mit WITHIN GROUP verwendet werden"
 
-#: gram.y:11958
+#: gram.y:11944
 #, c-format
 msgid "RANGE PRECEDING is only supported with UNBOUNDED"
 msgstr "RANGE PRECEDING wird nur mit UNBOUNDED unterstützt"
 
-#: gram.y:11964
+#: gram.y:11950
 #, c-format
 msgid "RANGE FOLLOWING is only supported with UNBOUNDED"
 msgstr "RANGE FOLLOWING wird nur mit UNBOUNDED unterstützt"
 
-#: gram.y:11991 gram.y:12014
+#: gram.y:11977 gram.y:12000
 #, c-format
 msgid "frame start cannot be UNBOUNDED FOLLOWING"
 msgstr "Frame-Beginn kann nicht UNBOUNDED FOLLOWING sein"
 
-#: gram.y:11996
+#: gram.y:11982
 #, c-format
 msgid "frame starting from following row cannot end with current row"
 msgstr "Frame der in der folgenden Zeile beginnt kann nicht in der aktuellen Zeile enden"
 
-#: gram.y:12019
+#: gram.y:12005
 #, c-format
 msgid "frame end cannot be UNBOUNDED PRECEDING"
 msgstr "Frame-Ende kann nicht UNBOUNDED PRECEDING sein"
 
-#: gram.y:12025
+#: gram.y:12011
 #, c-format
 msgid "frame starting from current row cannot have preceding rows"
 msgstr "Frame der in der aktuellen Zeile beginnt kann keine vorhergehenden Zeilen haben"
 
-#: gram.y:12032
+#: gram.y:12018
 #, c-format
 msgid "frame starting from following row cannot have preceding rows"
 msgstr "Frame der in der folgenden Zeile beginnt kann keine vorhergehenden Zeilen haben"
 
-#: gram.y:12671
+#: gram.y:12657
 #, c-format
 msgid "type modifier cannot have parameter name"
 msgstr "Typmodifikator kann keinen Parameternamen haben"
 
-#: gram.y:12677
-#, fuzzy, c-format
-#| msgid "type modifier cannot have parameter name"
+#: gram.y:12663
+#, c-format
 msgid "type modifier cannot have ORDER BY"
-msgstr "Typmodifikator kann keinen Parameternamen haben"
+msgstr "Typmodifikator kann kein ORDER BY haben"
 
-#: gram.y:13298 gram.y:13473
+#: gram.y:13284 gram.y:13459
 msgid "improper use of \"*\""
 msgstr "unzulässige Verwendung von „*“"
 
-#: gram.y:13436 gram.y:13453 tsearch/spell.c:518 tsearch/spell.c:535
+#: gram.y:13422 gram.y:13439 tsearch/spell.c:518 tsearch/spell.c:535
 #: tsearch/spell.c:552 tsearch/spell.c:569 tsearch/spell.c:591
 #, c-format
 msgid "syntax error"
 msgstr "Syntaxfehler"
 
-#: gram.y:13537
+#: gram.y:13523
 #, c-format
 msgid "an ordered-set aggregate with a VARIADIC direct argument must have one VARIADIC aggregated argument of the same data type"
 msgstr ""
 
-#: gram.y:13574
+#: gram.y:13560
 #, c-format
 msgid "multiple ORDER BY clauses not allowed"
 msgstr "mehrere ORDER-BY-Klauseln sind nicht erlaubt"
 
-#: gram.y:13585
+#: gram.y:13571
 #, c-format
 msgid "multiple OFFSET clauses not allowed"
 msgstr "mehrere OFFSET-Klauseln sind nicht erlaubt"
 
-#: gram.y:13594
+#: gram.y:13580
 #, c-format
 msgid "multiple LIMIT clauses not allowed"
 msgstr "mehrere LIMIT-Klauseln sind nicht erlaubt"
 
-#: gram.y:13603
+#: gram.y:13589
 #, c-format
 msgid "multiple WITH clauses not allowed"
 msgstr "mehrere WITH-Klauseln sind nicht erlaubt"
 
-#: gram.y:13743
+#: gram.y:13729
 #, c-format
 msgid "OUT and INOUT arguments aren't allowed in TABLE functions"
 msgstr "OUT- und INOUT-Argumente sind in TABLE-Funktionen nicht erlaubt"
 
-#: gram.y:13844
+#: gram.y:13830
 #, c-format
 msgid "multiple COLLATE clauses not allowed"
 msgstr "mehrere COLLATE-Klauseln sind nicht erlaubt"
 
 #. translator: %s is CHECK, UNIQUE, or similar
-#: gram.y:13882 gram.y:13895
+#: gram.y:13868 gram.y:13881
 #, c-format
 msgid "%s constraints cannot be marked DEFERRABLE"
 msgstr "%s-Constraints können nicht als DEFERRABLE markiert werden"
 
 #. translator: %s is CHECK, UNIQUE, or similar
-#: gram.y:13908
+#: gram.y:13894
 #, c-format
 msgid "%s constraints cannot be marked NOT VALID"
 msgstr "%s-Constraints können nicht als NOT VALID markiert werden"
 
 #. translator: %s is CHECK, UNIQUE, or similar
-#: gram.y:13921
+#: gram.y:13907
 #, c-format
 msgid "%s constraints cannot be marked NO INHERIT"
 msgstr "%s-Constraints können nicht als NO INHERIT markiert werden"
 
-#: guc-file.l:209
+#: guc-file.l:263
 #, c-format
 msgid "unrecognized configuration parameter \"%s\" in file \"%s\" line %u"
 msgstr "unbekannter Konfigurationsparameter „%s“ in Datei „%s“ Zeile %u"
 
-#: guc-file.l:245 utils/misc/guc.c:5654 utils/misc/guc.c:5837
-#: utils/misc/guc.c:5923 utils/misc/guc.c:6009 utils/misc/guc.c:6113
-#: utils/misc/guc.c:6204
+#: guc-file.l:299 utils/misc/guc.c:5650 utils/misc/guc.c:5833
+#: utils/misc/guc.c:5919 utils/misc/guc.c:6005 utils/misc/guc.c:6109
+#: utils/misc/guc.c:6200
 #, c-format
 msgid "parameter \"%s\" cannot be changed without restarting the server"
 msgstr "Parameter „%s“ kann nicht geändert werden, ohne den Server neu zu starten"
 
-#: guc-file.l:273
+#: guc-file.l:327
 #, c-format
 msgid "parameter \"%s\" removed from configuration file, reset to default"
 msgstr "Parameter „%s“ wurde aus Konfigurationsdatei entfernt, wird auf Standardwert zurückgesetzt"
 
-#: guc-file.l:335
+#: guc-file.l:389
 #, c-format
 msgid "parameter \"%s\" changed to \"%s\""
 msgstr "Parameter „%s“ auf „%s“ gesetzt"
 
-#: guc-file.l:370
+#: guc-file.l:424
 #, c-format
 msgid "configuration file \"%s\" contains errors"
 msgstr "Konfigurationsdatei „%s“ enthält Fehler"
 
-#: guc-file.l:375
+#: guc-file.l:429
 #, c-format
 msgid "configuration file \"%s\" contains errors; unaffected changes were applied"
 msgstr "Konfigurationsdatei „%s“ enthält Fehler; nicht betroffene Änderungen wurden durchgeführt"
 
-#: guc-file.l:380
+#: guc-file.l:434
 #, c-format
 msgid "configuration file \"%s\" contains errors; no changes were applied"
 msgstr "Konfigurationsdatei „%s“ enthält Fehler; keine Änderungen wurden durchgeführt"
 
-#: guc-file.l:450
+#: guc-file.l:504
 #, c-format
 msgid "could not open configuration file \"%s\": maximum nesting depth exceeded"
 msgstr "konnte Konfigurationsdatei „%s“ nicht öffnen: maximale Verschachtelungstiefe überschritten"
 
-#: guc-file.l:463 libpq/hba.c:1789
+#: guc-file.l:517 libpq/hba.c:1789
 #, c-format
 msgid "could not open configuration file \"%s\": %m"
 msgstr "konnte Konfigurationsdatei „%s“ nicht öffnen: %m"
 
-#: guc-file.l:470
+#: guc-file.l:524
 #, c-format
 msgid "skipping missing configuration file \"%s\""
 msgstr "fehlende Konfigurationsdatei „%s“ wird übersprungen"
 
-#: guc-file.l:679
+#: guc-file.l:763
 #, c-format
 msgid "syntax error in file \"%s\" line %u, near end of line"
 msgstr "Syntaxfehler in Datei „%s“, Zeile %u, am Ende der Zeile"
 
-#: guc-file.l:684
+#: guc-file.l:768
 #, c-format
 msgid "syntax error in file \"%s\" line %u, near token \"%s\""
 msgstr "Syntaxfehler in Datei „%s“, Zeile %u, bei „%s“"
 
-#: guc-file.l:700
+#: guc-file.l:784
 #, c-format
 msgid "too many syntax errors found, abandoning file \"%s\""
 msgstr "zu viele Syntaxfehler gefunden, Datei „%s“ wird aufgegeben"
 
-#: guc-file.l:745
+#: guc-file.l:829
 #, c-format
 msgid "could not open configuration directory \"%s\": %m"
 msgstr "konnte Konfigurationsverzeichnis „%s“ nicht öffnen: %m"
@@ -9968,10 +9935,9 @@ msgid "could not write server file \"%s\": %m"
 msgstr "konnte Serverdatei „%s“ nicht schreiben: %m"
 
 #: libpq/be-fsstubs.c:815
-#, fuzzy, c-format
-#| msgid "invalid large object write request size: %d"
+#, c-format
 msgid "large object read request is too large"
-msgstr "ungültige Größe der Large-Object-Schreibaufforderung: %d"
+msgstr "Large-Object-Leseaufforderung ist zu groß"
 
 #: libpq/be-fsstubs.c:857 utils/adt/genfile.c:187 utils/adt/genfile.c:232
 #, c-format
@@ -9989,16 +9955,14 @@ msgid "unrecognized SSL error code: %d"
 msgstr "unbekannter SSL-Fehlercode: %d"
 
 #: libpq/be-secure.c:365
-#, fuzzy, c-format
-#| msgid "SSL failed to send renegotiation request"
+#, c-format
 msgid "SSL failure during renegotiation start"
-msgstr "SSL konnte keine neue Verhandlungsanfrage senden"
+msgstr "SSL-Fehler beim Renegotiation-Start"
 
 #: libpq/be-secure.c:380
-#, fuzzy, c-format
-#| msgid "SSL failed to send renegotiation request"
+#, c-format
 msgid "SSL handshake failure on renegotiation, retrying"
-msgstr "SSL konnte keine neue Verhandlungsanfrage senden"
+msgstr "SSL-Handshake-Fehler bei Renegotiation, versuche erneut"
 
 #: libpq/be-secure.c:384
 #, c-format
@@ -10006,22 +9970,19 @@ msgid "unable to complete SSL handshake"
 msgstr ""
 
 #: libpq/be-secure.c:453
-#, fuzzy, c-format
-#| msgid "SSL failed to send renegotiation request"
+#, c-format
 msgid "SSL failed to renegotiate connection before limit expired"
-msgstr "SSL konnte keine neue Verhandlungsanfrage senden"
+msgstr "SSL konnte Verbindung nicht vor Ablauf der Frist neu aushandeln"
 
 #: libpq/be-secure.c:793
-#, fuzzy, c-format
-#| msgid "unrecognized event name \"%s\""
+#, c-format
 msgid "ECDH: unrecognized curve name: %s"
-msgstr "unbekannter Ereignisname „%s“"
+msgstr "ECDH: unbekannter Kurvenname: %s"
 
 #: libpq/be-secure.c:798
-#, fuzzy, c-format
-#| msgid "could not create socket: %s\n"
+#, c-format
 msgid "ECDH: could not create key"
-msgstr "konnte Socket nicht erzeugen: %s\n"
+msgstr "ECDH: konnte Schlüssel nicht erzeugen"
 
 #: libpq/be-secure.c:835
 #, c-format
@@ -10123,16 +10084,14 @@ msgid "SSL error code %lu"
 msgstr "SSL-Fehlercode %lu"
 
 #: libpq/crypt.c:67
-#, fuzzy, c-format
-#| msgid "record \"%s\" is not assigned yet"
+#, c-format
 msgid "User \"%s\" has no password assigned."
-msgstr "Record „%s“ hat noch keinen Wert"
+msgstr "Benutzer „%s“ hat kein Passwort zugewiesen."
 
 #: libpq/crypt.c:160
-#, fuzzy, c-format
-#| msgid "record \"%s\" has no field \"%s\""
+#, c-format
 msgid "User \"%s\" has an expired password."
-msgstr "Record „%s“ hat kein Feld „%s“"
+msgstr "Benutzer „%s“ hat ein abgelaufenes Passwort."
 
 #: libpq/hba.c:188
 #, c-format
@@ -10345,10 +10304,8 @@ msgid "authentication method \"ldap\" requires argument \"ldapbasedn\", \"ldappr
 msgstr "Authentifizierungsmethode „ldap“ benötigt Argument „ldapbasedn“, „ldapprefix“ oder „ldapsuffix“"
 
 #: libpq/hba.c:1418
-#, fuzzy
-#| msgid "ident, peer, krb5, gssapi, sspi, and cert"
 msgid "ident, peer, gssapi, sspi, and cert"
-msgstr "ident, peer, krb5, gssapi, sspi und cert"
+msgstr "ident, peer, gssapi, sspi und cert"
 
 #: libpq/hba.c:1431
 #, c-format
@@ -10396,10 +10353,8 @@ msgid "invalid LDAP port number: \"%s\""
 msgstr "ungültige LDAP-Portnummer: „%s“"
 
 #: libpq/hba.c:1579 libpq/hba.c:1586
-#, fuzzy
-#| msgid "krb5, gssapi, and sspi"
 msgid "gssapi and sspi"
-msgstr "krb5, gssapi und sspi"
+msgstr "gssapi und sspi"
 
 #: libpq/hba.c:1628
 #, c-format
@@ -10922,38 +10877,38 @@ msgstr "%s kann nicht auf die nullbare Seite eines äußeren Verbundes angewende
 msgid "%s is not allowed with UNION/INTERSECT/EXCEPT"
 msgstr "%s ist nicht in UNION/INTERSECT/EXCEPT erlaubt"
 
-#: optimizer/plan/planner.c:2724
+#: optimizer/plan/planner.c:2723
 #, c-format
 msgid "could not implement GROUP BY"
 msgstr "konnte GROUP BY nicht implementieren"
 
-#: optimizer/plan/planner.c:2725 optimizer/plan/planner.c:2893
+#: optimizer/plan/planner.c:2724 optimizer/plan/planner.c:2892
 #: optimizer/prep/prepunion.c:825
 #, c-format
 msgid "Some of the datatypes only support hashing, while others only support sorting."
 msgstr "Einige Datentypen unterstützen nur Hashing, während andere nur Sortieren unterstützen."
 
-#: optimizer/plan/planner.c:2892
+#: optimizer/plan/planner.c:2891
 #, c-format
 msgid "could not implement DISTINCT"
 msgstr "konnte DISTINCT nicht implementieren"
 
-#: optimizer/plan/planner.c:3498
+#: optimizer/plan/planner.c:3497
 #, c-format
 msgid "could not implement window PARTITION BY"
 msgstr "konnte PARTITION BY für Fenster nicht implementieren"
 
-#: optimizer/plan/planner.c:3499
+#: optimizer/plan/planner.c:3498
 #, c-format
 msgid "Window partitioning columns must be of sortable datatypes."
 msgstr "Fensterpartitionierungsspalten müssen sortierbare Datentypen haben."
 
-#: optimizer/plan/planner.c:3503
+#: optimizer/plan/planner.c:3502
 #, c-format
 msgid "could not implement window ORDER BY"
 msgstr "konnte ORDER BY für Fenster nicht implementieren"
 
-#: optimizer/plan/planner.c:3504
+#: optimizer/plan/planner.c:3503
 #, c-format
 msgid "Window ordering columns must be of sortable datatypes."
 msgstr "Fenstersortierspalten müssen sortierbare Datentypen haben."
@@ -11056,10 +11011,9 @@ msgid "each %s query must have the same number of columns"
 msgstr "jede %s-Anfrage muss die gleiche Anzahl Spalten haben"
 
 #: parser/analyze.c:2055
-#, fuzzy, c-format
-#| msgid "view must have at least one column"
+#, c-format
 msgid "RETURNING must have at least one column"
-msgstr "Sicht muss mindestens eine Spalte haben"
+msgstr "RETURNING muss mindestens eine Spalte haben"
 
 #: parser/analyze.c:2092
 #, c-format
@@ -11331,41 +11285,39 @@ 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:636
-#, fuzzy, c-format
-#| msgid "a column definition list is only allowed for functions returning \"record\""
+#, c-format
 msgid "multiple column definition lists are not allowed for the same function"
-msgstr "eine Spaltendefinitionsliste ist nur erlaubt bei Funktionen, die „record“ zurückgeben"
+msgstr "mehrere Spaltendefinitionslisten für die selbe Funktion sind nicht erlaubt"
 
 #: parser/parse_clause.c:669
 #, c-format
 msgid "ROWS FROM() with multiple functions cannot have a column definition list"
-msgstr ""
+msgstr "ROWS FROM() mit mehreren Funktionen kann keine Spaltendefinitionsliste haben"
 
 #: parser/parse_clause.c:670
 #, c-format
 msgid "Put a separate column definition list for each function inside ROWS FROM()."
-msgstr ""
+msgstr "Geben Sie innerhalb von ROWS FROM() jeder Funktion eine eigene Spaltendefinitionsliste."
 
 #: parser/parse_clause.c:676
-#, fuzzy, c-format
-#| msgid "INSTEAD OF triggers cannot have column lists"
+#, c-format
 msgid "UNNEST() with multiple arguments cannot have a column definition list"
-msgstr "INSTEAD OF-Trigger können keine Spaltenlisten haben"
+msgstr "ROWS FROM() mit mehreren Argumenten kann keine Spaltendefinitionsliste haben"
 
 #: parser/parse_clause.c:677
 #, c-format
 msgid "Use separate UNNEST() calls inside ROWS FROM(), and attach a column definition list to each one."
-msgstr ""
+msgstr "Verwenden Sie getrennte UNNEST()-Aufrufe innerhalb von ROWS FROM() und geben Sie jeder eine eigene Spaltendefinitionsliste."
 
 #: parser/parse_clause.c:684
 #, c-format
 msgid "WITH ORDINALITY cannot be used with a column definition list"
-msgstr ""
+msgstr "WITH ORDINALITY kann nicht mit einer Spaltendefinitionsliste verwendet werden"
 
 #: parser/parse_clause.c:685
 #, c-format
 msgid "Put the column definition list inside ROWS FROM()."
-msgstr ""
+msgstr "Geben Sie die Spaltendefinitionsliste innerhalb von ROWS FROM() an."
 
 #: parser/parse_clause.c:967
 #, c-format
@@ -11457,16 +11409,14 @@ 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:2026
-#, fuzzy, c-format
-#| msgid "Aggregates with DISTINCT must be able to sort their inputs."
+#, c-format
 msgid "an aggregate with DISTINCT must have at least one argument"
-msgstr "Aggregatfunktionen mit DISTINCT müssen ihre Eingaben sortieren können."
+msgstr "eine Aggregatfunktion mit DISTINCT muss mindestens ein Argument haben"
 
 #: parser/parse_clause.c:2027
-#, fuzzy, c-format
-#| msgid "view must have at least one column"
+#, c-format
 msgid "SELECT DISTINCT must have at least one column"
-msgstr "Sicht muss mindestens eine Spalte haben"
+msgstr "SELECT DISTINCT muss mindestens eine Spalte haben"
 
 #: parser/parse_clause.c:2093 parser/parse_clause.c:2125
 #, c-format
@@ -11895,10 +11845,9 @@ msgid "DISTINCT specified, but %s is not an aggregate function"
 msgstr "DISTINCT wurde angegeben, aber %s ist keine Aggregatfunktion"
 
 #: parser/parse_func.c:276
-#, fuzzy, c-format
-#| msgid "DISTINCT specified, but %s is not an aggregate function"
+#, c-format
 msgid "WITHIN GROUP specified, but %s is not an aggregate function"
-msgstr "DISTINCT wurde angegeben, aber %s ist keine Aggregatfunktion"
+msgstr "WITHIN GROUP wurde angegeben, aber %s ist keine Aggregatfunktion"
 
 #: parser/parse_func.c:282
 #, c-format
@@ -11906,10 +11855,9 @@ msgid "ORDER BY specified, but %s is not an aggregate function"
 msgstr "ORDER BY angegeben, aber %s ist keine Aggregatfunktion"
 
 #: parser/parse_func.c:288
-#, fuzzy, c-format
-#| msgid "DISTINCT specified, but %s is not an aggregate function"
+#, c-format
 msgid "FILTER specified, but %s is not an aggregate function"
-msgstr "DISTINCT wurde angegeben, aber %s ist keine Aggregatfunktion"
+msgstr "FILTER wurde angegeben, aber %s ist keine Aggregatfunktion"
 
 #: parser/parse_func.c:294
 #, c-format
@@ -11953,10 +11901,9 @@ msgid "window function %s requires an OVER clause"
 msgstr "Fensterfunktion %s erfordert eine OVER-Klausel"
 
 #: parser/parse_func.c:468
-#, fuzzy, c-format
-#| msgid "window function calls cannot be nested"
+#, c-format
 msgid "window function %s cannot have WITHIN GROUP"
-msgstr "Aufrufe von Fensterfunktionen können nicht geschachtelt werden"
+msgstr "Fensterfunktion %s kann kein WITHIN GROUP haben"
 
 #: parser/parse_func.c:489
 #, c-format
@@ -12148,10 +12095,9 @@ msgid "The combining JOIN type must be INNER or LEFT for a LATERAL reference."
 msgstr "Der JOIN-Typ für LATERAL muss INNER oder LEFT sein."
 
 #: parser/parse_relation.c:591
-#, fuzzy, c-format
-#| msgid "column \"%s\" referenced in foreign key constraint does not exist"
+#, c-format
 msgid "system column \"%s\" reference in check constraint is invalid"
-msgstr "Spalte „%s“, die im Fremdschlüssel verwendet wird, existiert nicht"
+msgstr "Verweis auf Systemspalte „%s“ im Check-Constraint ist ungültig"
 
 #: parser/parse_relation.c:892 parser/parse_relation.c:1169
 #: parser/parse_relation.c:1663
@@ -12574,10 +12520,9 @@ msgstr ""
 "Die PostgreSQL-Dokumentation enthält weitere Informationen über die Konfiguration von Shared Memory."
 
 #: port/pg_shmem.c:340 port/sysv_shmem.c:340
-#, fuzzy, c-format
-#| msgid "LDAP URLs not supported on this platform"
+#, c-format
 msgid "huge TLB pages not supported on this platform"
-msgstr "LDAP-URLs werden auf dieser Plattform nicht unterstützt"
+msgstr "Huge TLB-Pages werden auf dieser Plattform nicht unterstützt"
 
 #: port/pg_shmem.c:390 port/sysv_shmem.c:390
 #, c-format
@@ -12585,11 +12530,10 @@ msgid "could not map anonymous shared memory: %m"
 msgstr "konnte anonymes Shared Memory nicht mappen: %m"
 
 #: port/pg_shmem.c:392 port/sysv_shmem.c:392
-#, fuzzy, c-format
-#| msgid "This error usually means that PostgreSQL's request for a shared memory segment exceeded available memory or swap space. To reduce the request size (currently %lu bytes), reduce PostgreSQL's shared memory usage, perhaps by reducing shared_buffers or max_connections."
-msgid "This error usually means that PostgreSQL's request for a shared memory segment exceeded available memory, swap space or huge pages. To reduce the request size (currently %zu bytes), reduce PostgreSQL's shared memory usage, perhaps by reducing shared_buffers or max_connections."
+#, c-format
+msgid "This error usually means that PostgreSQL's request for a shared memory segment exceeded available memory, swap space, or huge pages. To reduce the request size (currently %zu bytes), reduce PostgreSQL's shared memory usage, perhaps by reducing shared_buffers or max_connections."
 msgstr ""
-"Dieser Fehler bedeutet gewöhnlich, dass das von PostgreSQL angeforderte Shared-Memory-Segment den verfügbaren Speicher oder Swap-Space überschreitet.  Um die benötigte Shared-Memory-Größe zu reduzieren (aktuell %lu Bytes), reduzieren Sie den Shared-Memory-Verbrauch von PostgreSQL, beispielsweise indem Sie „shared_buffers“ oder „max_connections“ reduzieren.\n"
+"Dieser Fehler bedeutet gewöhnlich, dass das von PostgreSQL angeforderte Shared-Memory-Segment den verfügbaren Speicher, Swap-Space oder Huge Pages überschreitet.  Um die benötigte Shared-Memory-Größe zu reduzieren (aktuell %zu Bytes), reduzieren Sie den Shared-Memory-Verbrauch von PostgreSQL, beispielsweise indem Sie „shared_buffers“ oder „max_connections“ reduzieren.\n"
 "Die PostgreSQL-Dokumentation enthält weitere Informationen über die Konfiguration von Shared Memory."
 
 #: port/pg_shmem.c:439 port/sysv_shmem.c:439 port/win32_shmem.c:136
@@ -12708,57 +12652,57 @@ msgstr "Fehlgeschlagener Systemaufruf war DuplicateHandle."
 msgid "Failed system call was MapViewOfFileEx."
 msgstr "Fehlgeschlagener Systemaufruf war MapViewOfFileEx."
 
-#: postmaster/autovacuum.c:378
+#: postmaster/autovacuum.c:380
 #, c-format
 msgid "could not fork autovacuum launcher process: %m"
 msgstr "konnte Autovacuum-Launcher-Prozess nicht starten (fork-Fehler): %m"
 
-#: postmaster/autovacuum.c:423
+#: postmaster/autovacuum.c:425
 #, c-format
 msgid "autovacuum launcher started"
 msgstr "Autovacuum-Launcher startet"
 
-#: postmaster/autovacuum.c:788
+#: postmaster/autovacuum.c:790
 #, c-format
 msgid "autovacuum launcher shutting down"
 msgstr "Autovacuum-Launcher fährt herunter"
 
-#: postmaster/autovacuum.c:1451
+#: postmaster/autovacuum.c:1453
 #, c-format
 msgid "could not fork autovacuum worker process: %m"
 msgstr "konnte Autovacuum-Worker-Prozess nicht starten (fork-Fehler): %m"
 
-#: postmaster/autovacuum.c:1670
+#: postmaster/autovacuum.c:1672
 #, c-format
 msgid "autovacuum: processing database \"%s\""
 msgstr "Autovacuum: bearbeite Datenbank „%s“"
 
-#: postmaster/autovacuum.c:2068
+#: postmaster/autovacuum.c:2076
 #, c-format
 msgid "autovacuum: dropping orphan temp table \"%s\".\"%s\" in database \"%s\""
 msgstr "Autovacuum: lösche verwaiste temporäre Tabelle „%s.%s“ in Datenbank „%s“"
 
-#: postmaster/autovacuum.c:2080
+#: postmaster/autovacuum.c:2088
 #, c-format
 msgid "autovacuum: found orphan temp table \"%s\".\"%s\" in database \"%s\""
 msgstr "Autovacuum: verwaiste temporäre Tabelle „%s.%s“ in Datenbank „%s“ gefunden"
 
-#: postmaster/autovacuum.c:2344
+#: postmaster/autovacuum.c:2353
 #, c-format
 msgid "automatic vacuum of table \"%s.%s.%s\""
 msgstr "automatisches Vacuum der Tabelle „%s.%s.%s“"
 
-#: postmaster/autovacuum.c:2347
+#: postmaster/autovacuum.c:2356
 #, c-format
 msgid "automatic analyze of table \"%s.%s.%s\""
 msgstr "automatisches Analysieren der Tabelle „%s.%s.%s“"
 
-#: postmaster/autovacuum.c:2865
+#: postmaster/autovacuum.c:2889
 #, c-format
 msgid "autovacuum not started because of misconfiguration"
 msgstr "Autovacuum wegen Fehlkonfiguration nicht gestartet"
 
-#: postmaster/autovacuum.c:2866
+#: postmaster/autovacuum.c:2890
 #, c-format
 msgid "Enable the \"track_counts\" option."
 msgstr "Schalten Sie die Option „track_counts“ ein."
@@ -12769,10 +12713,9 @@ msgid "registering background worker \"%s\""
 msgstr "registriere Background-Worker „%s“"
 
 #: postmaster/bgworker.c:352
-#, fuzzy, c-format
-#| msgid "registering background worker \"%s\""
+#, c-format
 msgid "unregistering background worker \"%s\""
-msgstr "registriere Background-Worker „%s“"
+msgstr "deregistriere Background-Worker „%s“"
 
 #: postmaster/bgworker.c:454
 #, fuzzy, c-format
@@ -12801,10 +12744,9 @@ msgid "background worker \"%s\": must be registered in shared_preload_libraries"
 msgstr "Background-Worker „%s“: muss in shared_preload_libraries registriert sein"
 
 #: postmaster/bgworker.c:751
-#, fuzzy, c-format
-#| msgid "background worker \"%s\": invalid restart interval"
+#, c-format
 msgid "background worker \"%s\": only dynamic background workers can request notification"
-msgstr "Background-Worker „%s“: ungültiges Neustart-Intervall"
+msgstr "Background-Worker „%s“: nur dynamische Background-Worker können Benachrichtigung verlangen"
 
 #: postmaster/bgworker.c:766
 #, c-format
@@ -12819,10 +12761,9 @@ msgstr[0] "Mit den aktuellen Einstellungen können bis zu %d Background-Worker r
 msgstr[1] "Mit den aktuellen Einstellungen können bis zu %d Background-Worker registriert werden."
 
 #: postmaster/bgworker.c:771
-#, fuzzy, c-format
-#| msgid "Consider increasing the configuration parameter \"checkpoint_segments\"."
+#, c-format
 msgid "Consider increasing the configuration parameter \"max_worker_processes\"."
-msgstr "Erhöhen Sie eventuell den Konfigurationsparameter „checkpoint_segments“."
+msgstr "Erhöhen Sie eventuell den Konfigurationsparameter „max_worker_processes“."
 
 #: postmaster/checkpointer.c:481
 #, c-format
@@ -12887,7 +12828,7 @@ msgstr "Der fehlgeschlagene Archivbefehl war: %s"
 msgid "archive command was terminated by exception 0x%X"
 msgstr "Archivbefehl wurde durch Ausnahme 0x%X beendet"
 
-#: postmaster/pgarch.c:623 postmaster/postmaster.c:3297
+#: postmaster/pgarch.c:623 postmaster/postmaster.c:3303
 #, c-format
 msgid "See C include file \"ntstatus.h\" for a description of the hexadecimal value."
 msgstr "Sehen Sie die Beschreibung des Hexadezimalwerts in der C-Include-Datei „ntstatus.h“ nach."
@@ -12998,10 +12939,9 @@ msgid "unrecognized reset target: \"%s\""
 msgstr "unbekanntes Reset-Ziel: „%s“"
 
 #: postmaster/pgstat.c:1267
-#, fuzzy, c-format
-#| msgid "Target must be \"bgwriter\"."
+#, c-format
 msgid "Target must be \"archiver\" or \"bgwriter\"."
-msgstr "Das Reset-Ziel muss „bgwriter“ sein."
+msgstr "Das Reset-Ziel muss „archiver“ oder „bgwriter“ sein."
 
 #: postmaster/pgstat.c:3280
 #, c-format
@@ -13074,16 +13014,14 @@ msgid "%s: max_wal_senders must be less than max_connections\n"
 msgstr "%s: max_wal_senders muss kleiner als max_connections sein\n"
 
 #: postmaster/postmaster.c:832
-#, fuzzy, c-format
-#| msgid "WAL archival (archive_mode=on) requires wal_level \"archive\" or \"hot_standby\""
+#, c-format
 msgid "WAL archival (archive_mode=on) requires wal_level \"archive\", \"hot_standby\", or \"logical\""
-msgstr "WAL-Archivierung (archive_mode=on) benötigt wal_level „archive“ oder „hot_standby“"
+msgstr "WAL-Archivierung (archive_mode=on) benötigt wal_level „archive“, „hot_standby“ oder „logical“"
 
 #: postmaster/postmaster.c:835
-#, fuzzy, c-format
-#| msgid "WAL streaming (max_wal_senders > 0) requires wal_level \"archive\" or \"hot_standby\""
+#, c-format
 msgid "WAL streaming (max_wal_senders > 0) requires wal_level \"archive\", \"hot_standby\", or \"logical\""
-msgstr "WAL-Streaming (max_wal_senders > 0) benötigt wal_level „archive“ oder „hot_standby“"
+msgstr "WAL-Streaming (max_wal_senders > 0) benötigt wal_level „archive“, „hot_standby“ oder „logical“"
 
 #: postmaster/postmaster.c:843
 #, c-format
@@ -13207,350 +13145,349 @@ msgstr ""
 "Es wurde im Verzeichnis „%s“ erwartet,\n"
 "aber die Datei „%s“ konnte nicht geöffnet werden: %s\n"
 
-#: postmaster/postmaster.c:1546
+#: postmaster/postmaster.c:1552
 #, c-format
 msgid "select() failed in postmaster: %m"
 msgstr "select() fehlgeschlagen im Postmaster: %m"
 
-#: postmaster/postmaster.c:1741 postmaster/postmaster.c:1772
+#: postmaster/postmaster.c:1747 postmaster/postmaster.c:1778
 #, c-format
 msgid "incomplete startup packet"
 msgstr "unvollständiges Startpaket"
 
-#: postmaster/postmaster.c:1753
+#: postmaster/postmaster.c:1759
 #, c-format
 msgid "invalid length of startup packet"
 msgstr "ungültige Länge des Startpakets"
 
-#: postmaster/postmaster.c:1810
+#: postmaster/postmaster.c:1816
 #, c-format
 msgid "failed to send SSL negotiation response: %m"
 msgstr "konnte SSL-Verhandlungsantwort nicht senden: %m"
 
-#: postmaster/postmaster.c:1839
+#: postmaster/postmaster.c:1845
 #, c-format
 msgid "unsupported frontend protocol %u.%u: server supports %u.0 to %u.%u"
 msgstr "nicht unterstütztes Frontend-Protokoll %u.%u: Server unterstützt %u.0 bis %u.%u"
 
-#: postmaster/postmaster.c:1902
-#, fuzzy, c-format
-#| msgid "invalid value for boolean option \"replication\""
+#: postmaster/postmaster.c:1908
+#, c-format
 msgid "invalid value for parameter \"replication\""
-msgstr "ungültiger Wert für Boole’sche Option „replication“"
+msgstr "ungültiger Wert für Parameter „replication“"
 
-#: postmaster/postmaster.c:1903
+#: postmaster/postmaster.c:1909
 #, c-format
 msgid "Valid values are: false, 0, true, 1, database."
 msgstr "Gültige Werte sind: false, 0, true, 1, database."
 
-#: postmaster/postmaster.c:1923
+#: postmaster/postmaster.c:1929
 #, c-format
 msgid "invalid startup packet layout: expected terminator as last byte"
 msgstr "ungültiges Layout des Startpakets: Abschluss als letztes Byte erwartet"
 
-#: postmaster/postmaster.c:1951
+#: postmaster/postmaster.c:1957
 #, c-format
 msgid "no PostgreSQL user name specified in startup packet"
 msgstr "kein PostgreSQL-Benutzername im Startpaket angegeben"
 
-#: postmaster/postmaster.c:2010
+#: postmaster/postmaster.c:2016
 #, c-format
 msgid "the database system is starting up"
 msgstr "das Datenbanksystem startet"
 
-#: postmaster/postmaster.c:2015
+#: postmaster/postmaster.c:2021
 #, c-format
 msgid "the database system is shutting down"
 msgstr "das Datenbanksystem fährt herunter"
 
-#: postmaster/postmaster.c:2020
+#: postmaster/postmaster.c:2026
 #, c-format
 msgid "the database system is in recovery mode"
 msgstr "das Datenbanksystem ist im Wiederherstellungsmodus"
 
-#: postmaster/postmaster.c:2025 storage/ipc/procarray.c:286
+#: postmaster/postmaster.c:2031 storage/ipc/procarray.c:286
 #: storage/ipc/sinvaladt.c:305 storage/lmgr/proc.c:339
 #, c-format
 msgid "sorry, too many clients already"
 msgstr "tut mir leid, schon zu viele Verbindungen"
 
-#: postmaster/postmaster.c:2087
+#: postmaster/postmaster.c:2093
 #, c-format
 msgid "wrong key in cancel request for process %d"
 msgstr "falscher Schlüssel in Stornierungsanfrage für Prozess %d"
 
-#: postmaster/postmaster.c:2095
+#: postmaster/postmaster.c:2101
 #, c-format
 msgid "PID %d in cancel request did not match any process"
 msgstr "PID %d in Stornierungsanfrage stimmte mit keinem Prozess überein"
 
-#: postmaster/postmaster.c:2315
+#: postmaster/postmaster.c:2321
 #, c-format
 msgid "received SIGHUP, reloading configuration files"
 msgstr "SIGHUP empfangen, Konfigurationsdateien werden neu geladen"
 
-#: postmaster/postmaster.c:2341
+#: postmaster/postmaster.c:2347
 #, c-format
 msgid "pg_hba.conf not reloaded"
 msgstr "pg_hba.conf nicht neu geladen"
 
-#: postmaster/postmaster.c:2345
+#: postmaster/postmaster.c:2351
 #, c-format
 msgid "pg_ident.conf not reloaded"
 msgstr "pg_ident.conf nicht neu geladen"
 
-#: postmaster/postmaster.c:2386
+#: postmaster/postmaster.c:2392
 #, c-format
 msgid "received smart shutdown request"
 msgstr "intelligentes Herunterfahren verlangt"
 
-#: postmaster/postmaster.c:2439
+#: postmaster/postmaster.c:2445
 #, c-format
 msgid "received fast shutdown request"
 msgstr "schnelles Herunterfahren verlangt"
 
-#: postmaster/postmaster.c:2465
+#: postmaster/postmaster.c:2471
 #, c-format
 msgid "aborting any active transactions"
 msgstr "etwaige aktive Transaktionen werden abgebrochen"
 
-#: postmaster/postmaster.c:2499
+#: postmaster/postmaster.c:2505
 #, c-format
 msgid "received immediate shutdown request"
 msgstr "sofortiges Herunterfahren verlangt"
 
-#: postmaster/postmaster.c:2563 postmaster/postmaster.c:2584
+#: postmaster/postmaster.c:2569 postmaster/postmaster.c:2590
 msgid "startup process"
 msgstr "Startprozess"
 
-#: postmaster/postmaster.c:2566
+#: postmaster/postmaster.c:2572
 #, c-format
 msgid "aborting startup due to startup process failure"
 msgstr "Serverstart abgebrochen wegen Startprozessfehler"
 
-#: postmaster/postmaster.c:2624
+#: postmaster/postmaster.c:2630
 #, c-format
 msgid "database system is ready to accept connections"
 msgstr "Datenbanksystem ist bereit, um Verbindungen anzunehmen"
 
-#: postmaster/postmaster.c:2639
+#: postmaster/postmaster.c:2645
 msgid "background writer process"
 msgstr "Background-Writer-Prozess"
 
-#: postmaster/postmaster.c:2693
+#: postmaster/postmaster.c:2699
 msgid "checkpointer process"
 msgstr "Checkpointer-Prozess"
 
-#: postmaster/postmaster.c:2709
+#: postmaster/postmaster.c:2715
 msgid "WAL writer process"
 msgstr "WAL-Schreibprozess"
 
-#: postmaster/postmaster.c:2723
+#: postmaster/postmaster.c:2729
 msgid "WAL receiver process"
 msgstr "WAL-Receiver-Prozess"
 
-#: postmaster/postmaster.c:2738
+#: postmaster/postmaster.c:2744
 msgid "autovacuum launcher process"
 msgstr "Autovacuum-Launcher-Prozess"
 
-#: postmaster/postmaster.c:2753
+#: postmaster/postmaster.c:2759
 msgid "archiver process"
 msgstr "Archivierprozess"
 
-#: postmaster/postmaster.c:2769
+#: postmaster/postmaster.c:2775
 msgid "statistics collector process"
 msgstr "Statistiksammelprozess"
 
-#: postmaster/postmaster.c:2783
+#: postmaster/postmaster.c:2789
 msgid "system logger process"
 msgstr "Systemlogger-Prozess"
 
-#: postmaster/postmaster.c:2845
+#: postmaster/postmaster.c:2851
 msgid "worker process"
 msgstr "Worker-Prozess"
 
-#: postmaster/postmaster.c:2931 postmaster/postmaster.c:2951
-#: postmaster/postmaster.c:2958 postmaster/postmaster.c:2976
+#: postmaster/postmaster.c:2937 postmaster/postmaster.c:2957
+#: postmaster/postmaster.c:2964 postmaster/postmaster.c:2982
 msgid "server process"
 msgstr "Serverprozess"
 
-#: postmaster/postmaster.c:3030
+#: postmaster/postmaster.c:3036
 #, c-format
 msgid "terminating any other active server processes"
 msgstr "aktive Serverprozesse werden abgebrochen"
 
 #. translator: %s is a noun phrase describing a child process, such as
 #. "server process"
-#: postmaster/postmaster.c:3285
+#: postmaster/postmaster.c:3291
 #, c-format
 msgid "%s (PID %d) exited with exit code %d"
 msgstr "%s (PID %d) beendete mit Status %d"
 
-#: postmaster/postmaster.c:3287 postmaster/postmaster.c:3298
-#: postmaster/postmaster.c:3309 postmaster/postmaster.c:3318
-#: postmaster/postmaster.c:3328
+#: postmaster/postmaster.c:3293 postmaster/postmaster.c:3304
+#: postmaster/postmaster.c:3315 postmaster/postmaster.c:3324
+#: postmaster/postmaster.c:3334
 #, c-format
 msgid "Failed process was running: %s"
 msgstr "Der fehlgeschlagene Prozess führte aus: %s"
 
 #. translator: %s is a noun phrase describing a child process, such as
 #. "server process"
-#: postmaster/postmaster.c:3295
+#: postmaster/postmaster.c:3301
 #, c-format
 msgid "%s (PID %d) was terminated by exception 0x%X"
 msgstr "%s (PID %d) wurde durch Ausnahme 0x%X beendet"
 
 #. translator: %s is a noun phrase describing a child process, such as
 #. "server process"
-#: postmaster/postmaster.c:3305
+#: postmaster/postmaster.c:3311
 #, c-format
 msgid "%s (PID %d) was terminated by signal %d: %s"
 msgstr "%s (PID %d) wurde von Signal %d beendet: %s"
 
 #. translator: %s is a noun phrase describing a child process, such as
 #. "server process"
-#: postmaster/postmaster.c:3316
+#: postmaster/postmaster.c:3322
 #, c-format
 msgid "%s (PID %d) was terminated by signal %d"
 msgstr "%s (PID %d) wurde von Signal %d beendet"
 
 #. translator: %s is a noun phrase describing a child process, such as
 #. "server process"
-#: postmaster/postmaster.c:3326
+#: postmaster/postmaster.c:3332
 #, c-format
 msgid "%s (PID %d) exited with unrecognized status %d"
 msgstr "%s (PID %d) beendete mit unbekanntem Status %d"
 
-#: postmaster/postmaster.c:3514
+#: postmaster/postmaster.c:3520
 #, c-format
 msgid "abnormal database system shutdown"
 msgstr "abnormales Herunterfahren des Datenbanksystems"
 
-#: postmaster/postmaster.c:3553
+#: postmaster/postmaster.c:3559
 #, c-format
 msgid "all server processes terminated; reinitializing"
 msgstr "alle Serverprozesse beendet; initialisiere neu"
 
-#: postmaster/postmaster.c:3805
+#: postmaster/postmaster.c:3811
 #, c-format
 msgid "could not fork new process for connection: %m"
 msgstr "konnte neuen Prozess für Verbindung nicht starten (fork-Fehler): %m"
 
-#: postmaster/postmaster.c:3847
+#: postmaster/postmaster.c:3853
 msgid "could not fork new process for connection: "
 msgstr "konnte neuen Prozess für Verbindung nicht starten (fork-Fehler): "
 
-#: postmaster/postmaster.c:3954
+#: postmaster/postmaster.c:3960
 #, c-format
 msgid "connection received: host=%s port=%s"
 msgstr "Verbindung empfangen: Host=%s Port=%s"
 
-#: postmaster/postmaster.c:3959
+#: postmaster/postmaster.c:3965
 #, c-format
 msgid "connection received: host=%s"
 msgstr "Verbindung empfangen: Host=%s"
 
-#: postmaster/postmaster.c:4249
+#: postmaster/postmaster.c:4255
 #, c-format
 msgid "could not execute server process \"%s\": %m"
 msgstr "konnte Serverprozess „%s“ nicht ausführen: %m"
 
-#: postmaster/postmaster.c:4796
+#: postmaster/postmaster.c:4805
 #, c-format
 msgid "database system is ready to accept read only connections"
 msgstr "Datenbanksystem ist bereit, um lesende Verbindungen anzunehmen"
 
-#: postmaster/postmaster.c:5109
+#: postmaster/postmaster.c:5118
 #, c-format
 msgid "could not fork startup process: %m"
 msgstr "konnte Startprozess nicht starten (fork-Fehler): %m"
 
-#: postmaster/postmaster.c:5113
+#: postmaster/postmaster.c:5122
 #, c-format
 msgid "could not fork background writer process: %m"
 msgstr "konnte Background-Writer-Prozess nicht starten (fork-Fehler): %m"
 
-#: postmaster/postmaster.c:5117
+#: postmaster/postmaster.c:5126
 #, c-format
 msgid "could not fork checkpointer process: %m"
 msgstr "konnte Checkpointer-Prozess nicht starten (fork-Fehler): %m"
 
-#: postmaster/postmaster.c:5121
+#: postmaster/postmaster.c:5130
 #, c-format
 msgid "could not fork WAL writer process: %m"
 msgstr "konnte WAL-Writer-Prozess nicht starten (fork-Fehler): %m"
 
-#: postmaster/postmaster.c:5125
+#: postmaster/postmaster.c:5134
 #, c-format
 msgid "could not fork WAL receiver process: %m"
 msgstr "konnte WAL-Receiver-Prozess nicht starten (fork-Fehler): %m"
 
-#: postmaster/postmaster.c:5129
+#: postmaster/postmaster.c:5138
 #, c-format
 msgid "could not fork process: %m"
 msgstr "konnte Prozess nicht starten (fork-Fehler): %m"
 
-#: postmaster/postmaster.c:5291
+#: postmaster/postmaster.c:5300
 #, c-format
 msgid "database connection requirement not indicated during registration"
 msgstr "die Notwendigkeit, Datenbankverbindungen zu erzeugen, wurde bei der Registrierung nicht angezeigt"
 
-#: postmaster/postmaster.c:5298
+#: postmaster/postmaster.c:5307
 #, c-format
 msgid "invalid processing mode in background worker"
 msgstr "ungültiger Verarbeitungsmodus in Background-Worker"
 
-#: postmaster/postmaster.c:5350
+#: postmaster/postmaster.c:5359
 #, c-format
 msgid "starting background worker process \"%s\""
 msgstr "starte Background-Worker-Prozess „%s“"
 
-#: postmaster/postmaster.c:5361
+#: postmaster/postmaster.c:5370
 #, c-format
 msgid "could not fork worker process: %m"
 msgstr "konnte Worker-Prozess nicht starten (fork-Fehler): %m"
 
-#: postmaster/postmaster.c:5750
+#: postmaster/postmaster.c:5759
 #, c-format
 msgid "could not duplicate socket %d for use in backend: error code %d"
 msgstr "konnte Socket %d nicht für Verwendung in Backend duplizieren: Fehlercode %d"
 
-#: postmaster/postmaster.c:5782
+#: postmaster/postmaster.c:5791
 #, c-format
 msgid "could not create inherited socket: error code %d\n"
 msgstr "konnte geerbtes Socket nicht erzeugen: Fehlercode %d\n"
 
-#: postmaster/postmaster.c:5811 postmaster/postmaster.c:5818
+#: postmaster/postmaster.c:5820 postmaster/postmaster.c:5827
 #, c-format
 msgid "could not read from backend variables file \"%s\": %s\n"
 msgstr "konnte nicht aus Servervariablendatei „%s“ lesen: %s\n"
 
-#: postmaster/postmaster.c:5827
+#: postmaster/postmaster.c:5836
 #, c-format
 msgid "could not remove file \"%s\": %s\n"
 msgstr "konnte Datei „%s“ nicht löschen: %s\n"
 
-#: postmaster/postmaster.c:5844
+#: postmaster/postmaster.c:5853
 #, c-format
 msgid "could not map view of backend variables: error code %lu\n"
 msgstr "konnte Sicht der Backend-Variablen nicht mappen: Fehlercode %lu\n"
 
-#: postmaster/postmaster.c:5853
+#: postmaster/postmaster.c:5862
 #, c-format
 msgid "could not unmap view of backend variables: error code %lu\n"
 msgstr "konnte Sicht der Backend-Variablen nicht unmappen: Fehlercode %lu\n"
 
-#: postmaster/postmaster.c:5860
+#: postmaster/postmaster.c:5869
 #, c-format
 msgid "could not close handle to backend parameter variables: error code %lu\n"
 msgstr "konnte Handle für Backend-Parametervariablen nicht schließen: Fehlercode %lu\n"
 
-#: postmaster/postmaster.c:6019
+#: postmaster/postmaster.c:6028
 #, c-format
 msgid "could not read exit code for process\n"
 msgstr "konnte Exitcode des Prozesses nicht lesen\n"
 
-#: postmaster/postmaster.c:6024
+#: postmaster/postmaster.c:6033
 #, c-format
 msgid "could not post child completion status\n"
 msgstr "konnte Child-Completion-Status nicht versenden\n"
@@ -13678,7 +13615,7 @@ msgstr "Basissicherung konnte keine Daten senden, Sicherung abgebrochen"
 msgid "duplicate option \"%s\""
 msgstr "doppelte Option „%s“"
 
-#: replication/basebackup.c:622 utils/misc/guc.c:5413
+#: replication/basebackup.c:622 utils/misc/guc.c:5409
 #, c-format
 msgid "%d is outside the valid range for parameter \"%s\" (%d .. %d)"
 msgstr "%d ist außerhalb des gültigen Bereichs für Parameter „%s“ (%d ... %d)"
@@ -13715,10 +13652,9 @@ msgid "invalid response from primary server"
 msgstr "ungültige Antwort vom Primärserver"
 
 #: replication/libpqwalreceiver/libpqwalreceiver.c:142
-#, fuzzy, c-format
-#| msgid "%s: could not identify system: got %d rows and %d fields, expected %d rows and %d fields\n"
+#, c-format
 msgid "Could not identify system: got %d rows and %d fields, expected %d rows and %d or more fields."
-msgstr "%s: konnte System nicht identifizieren: %d Zeilen und %d Felder erhalten, %d Zeilen und %d Felder erwartet\n"
+msgstr "Konnte System nicht identifizieren: %d Zeilen und %d Felder erhalten, %d Zeilen und %d oder mehr Felder erwartet."
 
 #: replication/libpqwalreceiver/libpqwalreceiver.c:158
 #, c-format
@@ -13790,13 +13726,12 @@ msgstr "logische Dekodierung erfordert wal_level >= logical"
 #: replication/logical/logical.c:86
 #, c-format
 msgid "logical decoding requires a database connection"
-msgstr ""
+msgstr "logische Dekodierung benötigt eine Datenbankverbindung"
 
 #: replication/logical/logical.c:104
-#, fuzzy, c-format
-#| msgid "pg_xlogfile_name() cannot be executed during recovery."
+#, c-format
 msgid "logical decoding cannot be used while in recovery"
-msgstr "pg_xlogfile_name() kann nicht während der Wiederherstellung ausgeführt werden."
+msgstr "logische Dekodierung kann nicht während der Wiederherstellung verwendet werden"
 
 #: replication/logical/logical.c:221
 #, c-format
@@ -13804,15 +13739,14 @@ msgid "cannot use physical replication slot created for logical decoding"
 msgstr ""
 
 #: replication/logical/logical.c:226 replication/logical/logical.c:377
-#, fuzzy, c-format
-#| msgid "function \"%s\" was not called by trigger manager"
+#, c-format
 msgid "replication slot \"%s\" was not created in this database"
-msgstr "Funktion „%s“ wurde nicht von Triggermanager aufgerufen"
+msgstr "Replikations-Slot „%s“ wurde nicht in dieser Datenbank erzeugt"
 
 #: replication/logical/logical.c:233
 #, c-format
 msgid "cannot create logical replication slot in transaction that has performed writes"
-msgstr ""
+msgstr "logischer Replikations-Slot kann nicht in einer Transaktion erzeugt werden, die Schreibvorgänge ausgeführt hat"
 
 #: replication/logical/logical.c:372
 #, c-format
@@ -13839,45 +13773,40 @@ msgstr ""
 msgid "slot \"%s\", output plugin \"%s\", in the %s callback"
 msgstr ""
 
-#: replication/logical/logicalfuncs.c:190 replication/walsender.c:2121
+#: replication/logical/logicalfuncs.c:190 replication/walsender.c:2123
 #, c-format
 msgid "could not read from log segment %s, offset %u, length %lu: %m"
 msgstr "konnte nicht aus Logsegment %s bei Position %u, Länge %lu lesen: %m"
 
 #: replication/logical/logicalfuncs.c:209 replication/slotfuncs.c:32
-#, fuzzy, c-format
-#| msgid "must be superuser or replication role to start walsender"
+#, c-format
 msgid "must be superuser or replication role to use replication slots"
-msgstr "nur Superuser und Replikationsrollen können WAL-Sender starten"
+msgstr "nur Superuser und Replikationsrollen können Replikations-Slots verwenden"
 
 #: replication/logical/logicalfuncs.c:339
-#, fuzzy, c-format
-#| msgid "ACL arrays must be one-dimensional"
+#, c-format
 msgid "array must be one-dimensional"
-msgstr "ACL-Arrays müssen eindimensional sein"
+msgstr "Array muss eindimensional sein"
 
 #: replication/logical/logicalfuncs.c:345
-#, fuzzy, c-format
-#| msgid "typmod array must not contain nulls"
+#, c-format
 msgid "array must not contain nulls"
-msgstr "Typmod-Array darf keine NULL-Werte enthalten"
+msgstr "Array darf keine NULL-Werte enthalten"
 
-#: replication/logical/logicalfuncs.c:361 utils/adt/json.c:2153
-#, fuzzy, c-format
-#| msgid "each %s query must have the same number of columns"
+#: replication/logical/logicalfuncs.c:361 utils/adt/json.c:2158
+#, c-format
 msgid "array must have even number of elements"
-msgstr "jede %s-Anfrage muss die gleiche Anzahl Spalten haben"
+msgstr "Array muss eine gerade Anzahl Elemente haben"
 
 #: replication/logical/logicalfuncs.c:404
 #, c-format
-msgid "output plugin cannot produce binary output"
+msgid "logical decoding output plugin \"%s\" produces binary output, but \"%s\" expects textual data"
 msgstr ""
 
 #: replication/logical/reorderbuffer.c:2101
-#, fuzzy, c-format
-#| msgid "could not write to file \"%s\": %m"
+#, c-format
 msgid "could not write to data file for XID %u: %m"
-msgstr "konnte nicht in Datei „%s“ schreiben: %m"
+msgstr "konnte nicht in Datendatei für XID %u schreiben: %m"
 
 #: replication/logical/reorderbuffer.c:2197
 #: replication/logical/reorderbuffer.c:2217
@@ -13898,10 +13827,9 @@ msgid "could not read from reorderbuffer spill file: read %d instead of %u bytes
 msgstr "konnte Block %u in Datei „%s“ nicht lesen: es wurden nur %d von %d Bytes gelesen"
 
 #: replication/logical/reorderbuffer.c:2827
-#, fuzzy, c-format
-#| msgid "could not read block %u in file \"%s\": read only %d of %d bytes"
+#, c-format
 msgid "could not read from file \"%s\": read %d instead of %d bytes"
-msgstr "konnte Block %u in Datei „%s“ nicht lesen: es wurden nur %d von %d Bytes gelesen"
+msgstr "konnte nicht aus Datei „%s“ lesen: %d statt %d Bytes gelesen"
 
 #: replication/logical/snapbuild.c:601
 #, c-format
@@ -13977,71 +13905,58 @@ msgstr ""
 #: replication/logical/snapbuild.c:1860
 #, fuzzy, c-format
 #| msgid "could not open file \"%s\": %s"
-msgid "could not parse filename \"%s\""
+msgid "could not parse file name \"%s\""
 msgstr "konnte Datei „%s“ nicht öffnen: %s"
 
 #: replication/slot.c:162
-#, fuzzy, c-format
-#| msgid "tablespace location \"%s\" is too long"
+#, c-format
 msgid "replication slot name \"%s\" is too short"
-msgstr "Tablespace-Pfad „%s“ ist zu lang"
+msgstr "Replikations-Slot-Name „%s“ ist zu kurz"
 
 #: replication/slot.c:171
-#, fuzzy, c-format
-#| msgid "tablespace location \"%s\" is too long"
+#, c-format
 msgid "replication slot name \"%s\" is too long"
-msgstr "Tablespace-Pfad „%s“ ist zu lang"
+msgstr "Replikations-Slot-Name „%s“ ist zu lang"
 
 #: replication/slot.c:184
-#, fuzzy, c-format
-#| msgid "relation mapping file \"%s\" contains invalid data"
+#, c-format
 msgid "replication slot name \"%s\" contains invalid character"
-msgstr "Relation-Mapping-Datei „%s“ enthält ungültige Daten"
+msgstr "Replikations-Slot-Name „%s“ enthält ungültiges Zeichen"
 
 #: replication/slot.c:186
 #, c-format
-msgid "Replication slot names may only contain letters, numbers and the underscore character."
-msgstr ""
+msgid "Replication slot names may only contain letters, numbers, and the underscore character."
+msgstr "Replikations-Slot-Namen dürfen nur Buchstaben, Zahlen und Unterstriche enthalten."
 
 #: replication/slot.c:233
-#, fuzzy, c-format
-#| msgid "relation \"%s\" already exists"
+#, c-format
 msgid "replication slot \"%s\" already exists"
-msgstr "Relation „%s“ existiert bereits"
+msgstr "Replikations-Slot „%s“ existiert bereits"
 
 #: replication/slot.c:243
 #, c-format
 msgid "all replication slots are in use"
-msgstr ""
+msgstr "alle Replikations-Slots sind in Benutzung"
 
 #: replication/slot.c:244
 #, c-format
 msgid "Free one or increase max_replication_slots."
-msgstr ""
+msgstr "Geben Sie einen frei oder erhöhen Sie max_replication_slots."
 
 #: replication/slot.c:336
-#, fuzzy, c-format
-#| msgid "relation \"%s\" does not exist"
+#, c-format
 msgid "replication slot \"%s\" does not exist"
-msgstr "Relation „%s“ existiert nicht"
+msgstr "Replikations-Slot „%s“ existiert nicht"
 
 #: replication/slot.c:340
-#, fuzzy, c-format
-#| msgid "relation \"%s\" already exists"
+#, c-format
 msgid "replication slot \"%s\" is already active"
-msgstr "Relation „%s“ existiert bereits"
+msgstr "Replikations-Slot „%s“ ist bereits aktiv"
 
-#: replication/slot.c:457 replication/slot.c:1044
-#, fuzzy, c-format
-#| msgid "Could not rename \"%s\" to \"%s\": %m."
-msgid "could not rename \"%s\" to \"%s\": %m"
-msgstr "Konnte „%s“ nicht in „%s“ umbenennen: %m."
-
-#: replication/slot.c:488 replication/slot.c:864
-#, fuzzy, c-format
-#| msgid "could not remove directory \"%s\": %m"
+#: replication/slot.c:488 replication/slot.c:864 replication/slot.c:1207
+#, c-format
 msgid "could not remove directory \"%s\""
-msgstr "konnte Verzeichnis „%s“ nicht löschen: %m"
+msgstr "konnte Verzeichnis „%s“ nicht löschen"
 
 #: replication/slot.c:763
 #, c-format
@@ -14078,10 +13993,9 @@ msgid "replication slot file \"%s\" has wrong magic %u instead of %u"
 msgstr "Archivdatei „%s“ hat falsche Größe: %lu statt %lu"
 
 #: replication/slot.c:1156
-#, fuzzy, c-format
-#| msgid "rule \"%s\" has unsupported event type %d"
+#, c-format
 msgid "replication slot file \"%s\" has unsupported version %u"
-msgstr "Regel „%s“ hat nicht unterstützten Ereignistyp %d"
+msgstr "Replikations-Slot-Datei „%s“ hat nicht unterstützte Version %u"
 
 #: replication/slot.c:1163
 #, c-format
@@ -14093,13 +14007,13 @@ msgstr ""
 msgid "replication slot file %s: checksum mismatch, is %u, should be %u"
 msgstr ""
 
-#: replication/slot.c:1231
+#: replication/slot.c:1245
 #, fuzzy, c-format
 #| msgid "%s: replication stream was terminated before stop point\n"
 msgid "too many replication slots active before shutdown"
 msgstr "%s: Replikationsstrom wurde vor Stopppunkt abgebrochen\n"
 
-#: replication/slot.c:1232
+#: replication/slot.c:1246
 #, c-format
 msgid "Increase max_replication_slots and try again."
 msgstr ""
@@ -14189,11 +14103,6 @@ msgstr "hole Zeitleisten-History-Datei für Zeitleiste %u vom Primärserver"
 msgid "could not write to log segment %s at offset %u, length %lu: %m"
 msgstr "konnte nicht in Logsegment %s bei Position %u, Länge %lu schreiben: %m"
 
-#: replication/walsender.c:465 storage/smgr/md.c:1782
-#, c-format
-msgid "could not seek to end of file \"%s\": %m"
-msgstr "konnte Positionszeiger nicht ans Ende der Datei „%s“ setzen: %m"
-
 #: replication/walsender.c:469
 #, c-format
 msgid "could not seek to beginning of file \"%s\": %m"
@@ -14225,38 +14134,38 @@ msgstr "angeforderter Startpunkt %X/%X ist vor der WAL-Flush-Position dieses Ser
 msgid "terminating walsender process after promotion"
 msgstr "breche WAL-Sender-Prozess ab wegen Zeitüberschreitung bei der Replikation"
 
-#: replication/walsender.c:1360 replication/walsender.c:1410
-#: replication/walsender.c:1459
+#: replication/walsender.c:1362 replication/walsender.c:1412
+#: replication/walsender.c:1461
 #, c-format
 msgid "unexpected EOF on standby connection"
 msgstr "unerwartetes EOF auf Standby-Verbindung"
 
-#: replication/walsender.c:1379
+#: replication/walsender.c:1381
 #, c-format
 msgid "unexpected standby message type \"%c\", after receiving CopyDone"
 msgstr "unerwarteter Standby-Message-Typ „%c“, nach Empfang von CopyDone"
 
-#: replication/walsender.c:1427
+#: replication/walsender.c:1429
 #, c-format
 msgid "invalid standby message type \"%c\""
 msgstr "ungültiger Standby-Message-Typ „%c“"
 
-#: replication/walsender.c:1481
+#: replication/walsender.c:1483
 #, c-format
 msgid "unexpected message type \"%c\""
 msgstr "unerwarteter Message-Typ „%c“"
 
-#: replication/walsender.c:1768
+#: replication/walsender.c:1770
 #, c-format
 msgid "terminating walsender process due to replication timeout"
 msgstr "breche WAL-Sender-Prozess ab wegen Zeitüberschreitung bei der Replikation"
 
-#: replication/walsender.c:1861
+#: replication/walsender.c:1863
 #, c-format
 msgid "standby \"%s\" has now caught up with primary"
 msgstr "Standby-Server „%s“ hat jetzt den Primärserver eingeholt"
 
-#: replication/walsender.c:1965
+#: replication/walsender.c:1967
 #, c-format
 msgid "number of requested standby connections exceeds max_wal_senders (currently %d)"
 msgstr "Anzahl angeforderter Standby-Verbindungen überschreitet max_wal_senders (aktuell %d)"
@@ -14382,8 +14291,7 @@ msgid "cannot convert relation containing dropped columns to view"
 msgstr "kann Relation mit gelöschten Spalten nicht in Sicht umwandeln"
 
 #: rewrite/rewriteDefine.c:672
-#, fuzzy, c-format
-#| msgid "SELECT rule's target entry %d has different column name from \"%s\""
+#, c-format
 msgid "SELECT rule's target entry %d has different column name from column \"%s\""
 msgstr "Spaltenname in Targeteintrag %d von SELECT-Regel unterscheidet sich von Spalte „%s“"
 
@@ -14464,28 +14372,20 @@ msgid "infinite recursion detected in rules for relation \"%s\""
 msgstr "unendliche Rekursion entdeckt in Regeln für Relation „%s“"
 
 #: rewrite/rewriteHandler.c:1995
-#, fuzzy
-#| msgid "Views that return system columns are not automatically updatable."
 msgid "Junk view columns are not updatable."
-msgstr "Sichten, die Systemspalten zurückgeben, sind nicht automatisch aktualisierbar."
+msgstr "Junk-Sichtspalten sind nicht aktualisierbar."
 
 #: rewrite/rewriteHandler.c:2000
-#, fuzzy
-#| msgid "Views that return columns that are not columns of their base relation are not automatically updatable."
 msgid "View columns that are not columns of their base relation are not updatable."
-msgstr "Sichten, die Spalten zurückgeben, die nicht Spalten ihrer Basisrelation sind, sind nicht automatisch aktualisierbar."
+msgstr "Sichtspalten, die nicht Spalten ihrer Basisrelation sind, sind nicht aktualisierbar."
 
 #: rewrite/rewriteHandler.c:2003
-#, fuzzy
-#| msgid "Views that return system columns are not automatically updatable."
 msgid "View columns that refer to system columns are not updatable."
-msgstr "Sichten, die Systemspalten zurückgeben, sind nicht automatisch aktualisierbar."
+msgstr "Sichtspalten, die auf Systemspalten verweisen, sind nicht aktualisierbar."
 
 #: rewrite/rewriteHandler.c:2006
-#, fuzzy
-#| msgid "Views that return whole-row references are not automatically updatable."
 msgid "View columns that return whole-row references are not updatable."
-msgstr "Sichten, die Verweise auf ganze Zeilen zurückgeben, sind nicht automatisch aktualisierbar."
+msgstr "Sichtspalten, die Verweise auf ganze Zeilen zurückgeben, sind nicht aktualisierbar."
 
 #: rewrite/rewriteHandler.c:2064
 msgid "Views containing DISTINCT are not automatically updatable."
@@ -14512,22 +14412,16 @@ msgid "Views containing LIMIT or OFFSET are not automatically updatable."
 msgstr "Sichten, die LIMIT oder OFFSET enthalten, sind nicht automatisch aktualisierbar."
 
 #: rewrite/rewriteHandler.c:2091
-#, fuzzy
-#| msgid "Views that return system columns are not automatically updatable."
-msgid "Views that return aggregate functions are not automatically updatable"
-msgstr "Sichten, die Systemspalten zurückgeben, sind nicht automatisch aktualisierbar."
+msgid "Views that return aggregate functions are not automatically updatable."
+msgstr "Sichten, die Aggregatfunktionen zurückgeben, sind nicht automatisch aktualisierbar."
 
 #: rewrite/rewriteHandler.c:2094
-#, fuzzy
-#| msgid "Views that return whole-row references are not automatically updatable."
-msgid "Views that return window functions are not automatically updatable"
-msgstr "Sichten, die Verweise auf ganze Zeilen zurückgeben, sind nicht automatisch aktualisierbar."
+msgid "Views that return window functions are not automatically updatable."
+msgstr "Sichten, die Fensterfunktionen zurückgeben, sind nicht automatisch aktualisierbar."
 
 #: rewrite/rewriteHandler.c:2097
-#, fuzzy
-#| msgid "Views that return system columns are not automatically updatable."
 msgid "Views that return set-returning functions are not automatically updatable."
-msgstr "Sichten, die Systemspalten zurückgeben, sind nicht automatisch aktualisierbar."
+msgstr "Sichten, die Funktionen mit Ergebnismenge zurückgeben, sind nicht automatisch aktualisierbar."
 
 #: rewrite/rewriteHandler.c:2104 rewrite/rewriteHandler.c:2108
 #: rewrite/rewriteHandler.c:2115
@@ -14535,22 +14429,18 @@ msgid "Views that do not select from a single table or view are not automaticall
 msgstr "Sichten, die nicht aus einer einzigen Tabelle oder Sicht lesen, sind nicht automatisch aktualisierbar."
 
 #: rewrite/rewriteHandler.c:2139
-#, fuzzy
-#| msgid "Views that return system columns are not automatically updatable."
 msgid "Views that have no updatable columns are not automatically updatable."
-msgstr "Sichten, die Systemspalten zurückgeben, sind nicht automatisch aktualisierbar."
+msgstr "Sichten, die keine aktualisierbaren Spalten haben, sind nicht automatisch aktualisierbar."
 
 #: rewrite/rewriteHandler.c:2576
-#, fuzzy, c-format
-#| msgid "cannot insert into view \"%s\""
+#, c-format
 msgid "cannot insert into column \"%s\" of view \"%s\""
-msgstr "kann nicht in Sicht „%s“ einfügen"
+msgstr "kann nicht in Spalte „%s“ von Sicht „%s“ einfügen"
 
 #: rewrite/rewriteHandler.c:2584
-#, fuzzy, c-format
-#| msgid "cannot update view \"%s\""
+#, c-format
 msgid "cannot update column \"%s\" of view \"%s\""
-msgstr "kann Sicht „%s“ nicht aktualisieren"
+msgstr "kann Spalte „%s“ von Sicht „%s“ nicht aktualisieren"
 
 #: rewrite/rewriteHandler.c:2952
 #, c-format
@@ -14867,32 +14757,29 @@ msgid "could not read directory \"%s\": %m"
 msgstr "konnte Verzeichnis „%s“ nicht lesen: %m"
 
 #: storage/ipc/dsm.c:363
-#, fuzzy, c-format
-#| msgid "selecting dynamic shared memory implementation ... "
+#, c-format
 msgid "dynamic shared memory control segment is corrupt"
-msgstr "wähle Implementierung von dynamischem Shared Memory ... "
+msgstr "Kontrollsegment von dynamischem Shared Memory ist verfälscht"
 
 #: storage/ipc/dsm.c:410
 #, c-format
 msgid "dynamic shared memory is disabled"
-msgstr ""
+msgstr "dynamisches Shared-Memory ist abgeschaltet"
 
 #: storage/ipc/dsm.c:411
 #, c-format
 msgid "Set dynamic_shared_memory_type to a value other than \"none\"."
-msgstr ""
+msgstr "Setzen Sie dynamic_shared_memory_type auf einen anderen Wert als „none“."
 
 #: storage/ipc/dsm.c:431
-#, fuzzy, c-format
-#| msgid "selecting dynamic shared memory implementation ... "
+#, c-format
 msgid "dynamic shared memory control segment is not valid"
-msgstr "wähle Implementierung von dynamischem Shared Memory ... "
+msgstr "Kontrollsegment von dynamischem Shared Memory ist ungültig"
 
 #: storage/ipc/dsm.c:501
-#, fuzzy, c-format
-#| msgid "could not create shared memory segment: %m"
+#, c-format
 msgid "too many dynamic shared memory segments"
-msgstr "konnte Shared-Memory-Segment nicht erzeugen: %m"
+msgstr "zu viele dynamische Shared-Memory-Segmente"
 
 #: storage/ipc/dsm_impl.c:261 storage/ipc/dsm_impl.c:361
 #: storage/ipc/dsm_impl.c:533 storage/ipc/dsm_impl.c:648
@@ -14904,17 +14791,15 @@ msgstr "konnte Shared-Memory-Segment nicht erzeugen: %m"
 
 #: storage/ipc/dsm_impl.c:271 storage/ipc/dsm_impl.c:543
 #: storage/ipc/dsm_impl.c:658 storage/ipc/dsm_impl.c:821
-#, fuzzy, c-format
-#| msgid "could not create shared memory segment: %m"
+#, c-format
 msgid "could not remove shared memory segment \"%s\": %m"
-msgstr "konnte Shared-Memory-Segment nicht erzeugen: %m"
+msgstr "konnte Shared-Memory-Segment „%s“ nicht entfernen: %m"
 
 #: storage/ipc/dsm_impl.c:292 storage/ipc/dsm_impl.c:721
 #: storage/ipc/dsm_impl.c:835
-#, fuzzy, c-format
-#| msgid "could not create shared memory segment: %m"
+#, c-format
 msgid "could not open shared memory segment \"%s\": %m"
-msgstr "konnte Shared-Memory-Segment nicht erzeugen: %m"
+msgstr "konnte Shared-Memory-Segment „%s“ nicht öffnen: %m"
 
 #: storage/ipc/dsm_impl.c:316 storage/ipc/dsm_impl.c:559
 #: storage/ipc/dsm_impl.c:766 storage/ipc/dsm_impl.c:859
@@ -14925,10 +14810,9 @@ msgstr "konnte Shared-Memory-Segment nicht erzeugen: %m"
 
 #: storage/ipc/dsm_impl.c:335 storage/ipc/dsm_impl.c:878
 #: storage/ipc/dsm_impl.c:926
-#, fuzzy, c-format
-#| msgid "could not create shared memory segment: %m"
-msgid "could not resize shared memory segment %s to %zu bytes: %m"
-msgstr "konnte Shared-Memory-Segment nicht erzeugen: %m"
+#, c-format
+msgid "could not resize shared memory segment \"%s\" to %zu bytes: %m"
+msgstr "konnte Größe des Shared-Memory-Segments „%s“ nicht auf %zu Bytes ändern: %m"
 
 #: storage/ipc/dsm_impl.c:385 storage/ipc/dsm_impl.c:580
 #: storage/ipc/dsm_impl.c:742 storage/ipc/dsm_impl.c:977
@@ -14944,10 +14828,9 @@ msgid "could not get shared memory segment: %m"
 msgstr "konnte Shared-Memory-Segment nicht erzeugen: %m"
 
 #: storage/ipc/dsm_impl.c:694
-#, fuzzy, c-format
-#| msgid "could not create shared memory segment: %m"
+#, c-format
 msgid "could not create shared memory segment \"%s\": %m"
-msgstr "konnte Shared-Memory-Segment nicht erzeugen: %m"
+msgstr "konnte Shared-Memory-Segment „%s“ nicht erzeugen: %m"
 
 #: storage/ipc/dsm_impl.c:1018
 #, fuzzy, c-format
@@ -15037,21 +14920,18 @@ msgstr "Einzelheiten zur Anfrage finden Sie im Serverlog."
 
 #: storage/lmgr/lmgr.c:599
 #, fuzzy, c-format
-#| msgid "writing block %u of relation %s"
 msgid "while updating tuple (%u,%u) in relation \"%s\""
-msgstr "schreibe Block %u von Relation %s"
+msgstr "beim Aktualisieren von Tupel (%u,%u) in Relation „%s“"
 
 #: storage/lmgr/lmgr.c:602
-#, fuzzy, c-format
-#| msgid "writing block %u of relation %s"
+#, c-format
 msgid "while deleting tuple (%u,%u) in relation \"%s\""
-msgstr "schreibe Block %u von Relation %s"
+msgstr "beim Löschen von Tupel (%u,%u) in Relation „%s“"
 
 #: storage/lmgr/lmgr.c:605
-#, fuzzy, c-format
-#| msgid "writing block %u of relation %s"
+#, c-format
 msgid "while locking tuple (%u,%u) in relation \"%s\""
-msgstr "schreibe Block %u von Relation %s"
+msgstr "beim Sperren von Tupel (%u,%u) in Relation „%s“"
 
 #: storage/lmgr/lmgr.c:608
 #, c-format
@@ -15061,7 +14941,7 @@ msgstr ""
 #: storage/lmgr/lmgr.c:611
 #, c-format
 msgid "while inserting index tuple (%u,%u) in relation \"%s\""
-msgstr ""
+msgstr "beim Einfügen von Indextupel (%u,%u) in Relation „%s“"
 
 #: storage/lmgr/lmgr.c:614
 #, c-format
@@ -15715,7 +15595,7 @@ msgstr "%s kann nicht während der Wiederherstellung ausgeführt werden"
 msgid "cannot execute %s within security-restricted operation"
 msgstr "kann %s nicht in einer sicherheitsbeschränkten Operation ausführen"
 
-#: tcop/utility.c:733
+#: tcop/utility.c:728
 #, c-format
 msgid "must be superuser to do CHECKPOINT"
 msgstr "nur Superuser können CHECKPOINT ausführen"
@@ -16105,8 +15985,8 @@ msgstr "Arrays mit unterschiedlichen Dimensionen sind nicht kompatibel für Anei
 msgid "invalid number of dimensions: %d"
 msgstr "ungültige Anzahl Dimensionen: %d"
 
-#: utils/adt/array_userfuncs.c:487 utils/adt/json.c:1645 utils/adt/json.c:1740
-#: utils/adt/json.c:1769
+#: utils/adt/array_userfuncs.c:487 utils/adt/json.c:1675 utils/adt/json.c:1770
+#: utils/adt/json.c:1799
 #, c-format
 msgid "could not determine input data type"
 msgstr "konnte Eingabedatentypen nicht bestimmen"
@@ -16198,7 +16078,7 @@ msgstr "Auswählen von Stücken aus Arrays mit fester Länge ist nicht implement
 #: utils/adt/arrayfuncs.c:2094 utils/adt/arrayfuncs.c:2116
 #: utils/adt/arrayfuncs.c:2150 utils/adt/arrayfuncs.c:2436
 #: utils/adt/arrayfuncs.c:4934 utils/adt/arrayfuncs.c:4966
-#: utils/adt/arrayfuncs.c:4983 utils/adt/json.c:2166 utils/adt/json.c:2245
+#: utils/adt/arrayfuncs.c:4983 utils/adt/json.c:2171 utils/adt/json.c:2246
 #, c-format
 msgid "wrong number of array subscripts"
 msgstr "falsche Anzahl Arrayindizes"
@@ -16349,22 +16229,20 @@ msgstr "Datum/Zeitwert „current“ wird nicht mehr unterstützt"
 msgid "date out of range: \"%s\""
 msgstr "date ist außerhalb des gültigen Bereichs: „%s“"
 
-#: utils/adt/date.c:217 utils/adt/xml.c:2024
+#: utils/adt/date.c:217 utils/adt/json.c:1412 utils/adt/xml.c:2024
 #, c-format
 msgid "date out of range"
 msgstr "date ist außerhalb des gültigen Bereichs"
 
 #: utils/adt/date.c:259 utils/adt/timestamp.c:589
-#, fuzzy, c-format
-#| msgid "date/time field value out of range: \"%s\""
+#, c-format
 msgid "date field value out of range: %d-%02d-%02d"
-msgstr "Datum/Zeit-Feldwert ist außerhalb des gültigen Bereichs: „%s“"
+msgstr "Datum-Feldwert ist außerhalb des gültigen Bereichs: %d-%02d-%02d"
 
 #: utils/adt/date.c:265 utils/adt/timestamp.c:595
-#, fuzzy, c-format
-#| msgid "date out of range: \"%s\""
+#, c-format
 msgid "date out of range: %d-%02d-%02d"
-msgstr "date ist außerhalb des gültigen Bereichs: „%s“"
+msgstr "date ist außerhalb des gültigen Bereichs: %d-%02d-%02d"
 
 #: utils/adt/date.c:418
 #, c-format
@@ -16379,8 +16257,8 @@ msgstr "Datum ist außerhalb des gültigen Bereichs für Typ „timestamp“"
 #: utils/adt/date.c:971 utils/adt/date.c:1017 utils/adt/date.c:1617
 #: utils/adt/date.c:1653 utils/adt/date.c:2525 utils/adt/formatting.c:3287
 #: utils/adt/formatting.c:3319 utils/adt/formatting.c:3387
-#: utils/adt/json.c:1403 utils/adt/json.c:1410 utils/adt/json.c:1430
-#: utils/adt/json.c:1437 utils/adt/nabstime.c:455 utils/adt/nabstime.c:498
+#: utils/adt/json.c:1437 utils/adt/json.c:1444 utils/adt/json.c:1464
+#: utils/adt/json.c:1471 utils/adt/nabstime.c:455 utils/adt/nabstime.c:498
 #: utils/adt/nabstime.c:528 utils/adt/nabstime.c:571 utils/adt/timestamp.c:232
 #: utils/adt/timestamp.c:275 utils/adt/timestamp.c:713
 #: utils/adt/timestamp.c:742 utils/adt/timestamp.c:781
@@ -16414,10 +16292,9 @@ msgid "time out of range"
 msgstr "time ist außerhalb des gültigen Bereichs"
 
 #: utils/adt/date.c:1265 utils/adt/timestamp.c:614
-#, fuzzy, c-format
-#| msgid "date/time field value out of range: \"%s\""
+#, c-format
 msgid "time field value out of range: %d:%02d:%02g"
-msgstr "Datum/Zeit-Feldwert ist außerhalb des gültigen Bereichs: „%s“"
+msgstr "Zeit-Feldwert ist außerhalb des gültigen Bereichs: %d:%02d:%02g"
 
 #: utils/adt/date.c:1893 utils/adt/date.c:1910
 #, c-format
@@ -16803,10 +16680,9 @@ msgid "The given value did not match any of the allowed values for this field."
 msgstr "Der angegebene Wert stimmte mit keinem der für dieses Feld zulässigen Werte überein."
 
 #: utils/adt/formatting.c:2932
-#, fuzzy, c-format
-#| msgid "\"TZ\"/\"tz\" format patterns are not supported in to_date"
+#, c-format
 msgid "\"TZ\"/\"tz\"/\"OF\" format patterns are not supported in to_date"
-msgstr "Formatmuster „TZ“/„tz“ werden in to_date nicht unterstützt"
+msgstr "Formatmuster „TZ“/„tz“/„OF“ werden in to_date nicht unterstützt"
 
 #: utils/adt/formatting.c:3040
 #, c-format
@@ -16900,13 +16776,12 @@ msgstr "ungültige Eingabesyntax für Typ box: „%s“"
 #: utils/adt/geo_ops.c:992
 #, c-format
 msgid "invalid line specification: must be two distinct points"
-msgstr ""
+msgstr "ungültige „line“-Angabe: es müssen zwei verschiedene Punkte angegeben werden"
 
 #: utils/adt/geo_ops.c:1001
-#, fuzzy, c-format
-#| msgid "interval specification not allowed here"
+#, c-format
 msgid "invalid line specification: A and B cannot both be zero"
-msgstr "Intervallangabe hier nicht erlaubt"
+msgstr "ungültige „line“-Angabe: A und B können nicht beide null sein"
 
 #: utils/adt/geo_ops.c:1006
 #, c-format
@@ -16939,10 +16814,9 @@ msgid "function \"dist_lb\" not implemented"
 msgstr "Funktion „dist_lb“ ist nicht implementiert"
 
 #: utils/adt/geo_ops.c:3035
-#, fuzzy, c-format
-#| msgid "function \"close_lb\" not implemented"
+#, c-format
 msgid "function \"close_sl\" not implemented"
-msgstr "Funktion „close_lb“ ist nicht implementiert"
+msgstr "Funktion „close_sl“ ist nicht implementiert"
 
 #: utils/adt/geo_ops.c:3137
 #, c-format
@@ -17061,175 +16935,164 @@ msgstr "bigint ist außerhalb des gültigen Bereichs"
 msgid "OID out of range"
 msgstr "OID ist außerhalb des gültigen Bereichs"
 
-#: utils/adt/json.c:692 utils/adt/json.c:732 utils/adt/json.c:747
-#: utils/adt/json.c:758 utils/adt/json.c:768 utils/adt/json.c:804
-#: utils/adt/json.c:816 utils/adt/json.c:847 utils/adt/json.c:865
-#: utils/adt/json.c:877 utils/adt/json.c:889 utils/adt/json.c:1028
-#: utils/adt/json.c:1042 utils/adt/json.c:1053 utils/adt/json.c:1061
-#: utils/adt/json.c:1069 utils/adt/json.c:1077 utils/adt/json.c:1085
-#: utils/adt/json.c:1093 utils/adt/json.c:1101 utils/adt/json.c:1109
-#: utils/adt/json.c:1139
+#: utils/adt/json.c:695 utils/adt/json.c:735 utils/adt/json.c:750
+#: utils/adt/json.c:761 utils/adt/json.c:771 utils/adt/json.c:807
+#: utils/adt/json.c:819 utils/adt/json.c:850 utils/adt/json.c:868
+#: utils/adt/json.c:880 utils/adt/json.c:892 utils/adt/json.c:1031
+#: utils/adt/json.c:1045 utils/adt/json.c:1056 utils/adt/json.c:1064
+#: utils/adt/json.c:1072 utils/adt/json.c:1080 utils/adt/json.c:1088
+#: utils/adt/json.c:1096 utils/adt/json.c:1104 utils/adt/json.c:1112
+#: utils/adt/json.c:1142
 #, c-format
 msgid "invalid input syntax for type json"
 msgstr "ungültige Eingabesyntax für Typ json"
 
-#: utils/adt/json.c:693
+#: utils/adt/json.c:696
 #, c-format
 msgid "Character with value 0x%02x must be escaped."
 msgstr "Zeichen mit Wert 0x%02x muss escapt werden."
 
-#: utils/adt/json.c:733
+#: utils/adt/json.c:736
 #, c-format
 msgid "\"\\u\" must be followed by four hexadecimal digits."
 msgstr "Nach „\\u“ müssen vier Hexadezimalziffern folgen."
 
-#: utils/adt/json.c:748
+#: utils/adt/json.c:751
 #, c-format
 msgid "Unicode high surrogate must not follow a high surrogate."
 msgstr "Unicode-High-Surrogate darf nicht auf ein High-Surrogate folgen."
 
-#: utils/adt/json.c:759 utils/adt/json.c:769 utils/adt/json.c:817
-#: utils/adt/json.c:878 utils/adt/json.c:890
+#: utils/adt/json.c:762 utils/adt/json.c:772 utils/adt/json.c:820
+#: utils/adt/json.c:881 utils/adt/json.c:893
 #, c-format
 msgid "Unicode low surrogate must follow a high surrogate."
 msgstr "Unicode-Low-Surrogate muss auf ein High-Surrogate folgen."
 
-#: utils/adt/json.c:805
+#: utils/adt/json.c:808
 #, c-format
 msgid "Unicode escape values cannot be used for code point values above 007F when the server encoding is not UTF8."
 msgstr "Unicode-Escape-Werte können nicht für Code-Punkt-Werte über 007F verwendet werden, wenn die Serverkodierung nicht UTF8 ist."
 
-#: utils/adt/json.c:848 utils/adt/json.c:866
+#: utils/adt/json.c:851 utils/adt/json.c:869
 #, c-format
 msgid "Escape sequence \"\\%s\" is invalid."
 msgstr "Escape-Sequenz „\\%s“ ist nicht gültig."
 
-#: utils/adt/json.c:1029
+#: utils/adt/json.c:1032
 #, c-format
 msgid "The input string ended unexpectedly."
 msgstr "Die Eingabezeichenkette endete unerwartet."
 
-#: utils/adt/json.c:1043
+#: utils/adt/json.c:1046
 #, c-format
 msgid "Expected end of input, but found \"%s\"."
 msgstr "Ende der Eingabe erwartet, aber „%s“ gefunden."
 
-#: utils/adt/json.c:1054
+#: utils/adt/json.c:1057
 #, c-format
 msgid "Expected JSON value, but found \"%s\"."
 msgstr "JSON-Wert erwartet, aber „%s“ gefunden."
 
-#: utils/adt/json.c:1062 utils/adt/json.c:1110
+#: utils/adt/json.c:1065 utils/adt/json.c:1113
 #, c-format
 msgid "Expected string, but found \"%s\"."
 msgstr "Zeichenkette erwartet, aber „%s“ gefunden."
 
-#: utils/adt/json.c:1070
+#: utils/adt/json.c:1073
 #, c-format
 msgid "Expected array element or \"]\", but found \"%s\"."
 msgstr "Array-Element oder „]“ erwartet, aber „%s“ gefunden."
 
-#: utils/adt/json.c:1078
+#: utils/adt/json.c:1081
 #, c-format
 msgid "Expected \",\" or \"]\", but found \"%s\"."
 msgstr "„,“ oder „]“ erwartet, aber „%s“ gefunden."
 
-#: utils/adt/json.c:1086
+#: utils/adt/json.c:1089
 #, c-format
 msgid "Expected string or \"}\", but found \"%s\"."
 msgstr "Zeichenkette oder „}“ erwartet, aber „%s“ gefunden."
 
-#: utils/adt/json.c:1094
+#: utils/adt/json.c:1097
 #, c-format
 msgid "Expected \":\", but found \"%s\"."
 msgstr "„:“ erwartet, aber „%s“ gefunden."
 
-#: utils/adt/json.c:1102
+#: utils/adt/json.c:1105
 #, c-format
 msgid "Expected \",\" or \"}\", but found \"%s\"."
 msgstr "„,“ oder „}“ erwartet, aber „%s“ gefunden."
 
-#: utils/adt/json.c:1140
+#: utils/adt/json.c:1143
 #, c-format
 msgid "Token \"%s\" is invalid."
 msgstr "Token „%s“ ist ungültig."
 
-#: utils/adt/json.c:1212
+#: utils/adt/json.c:1215
 #, c-format
 msgid "JSON data, line %d: %s%s%s"
 msgstr "JSON-Daten, Zeile %d: %s%s%s"
 
-#: utils/adt/json.c:1350
+#: utils/adt/json.c:1360
 #, c-format
 msgid "key value must be scalar, not array, composite, or json"
 msgstr ""
 
-#: utils/adt/json.c:1404 utils/adt/json.c:1431
-#, fuzzy, c-format
-#| msgid "XML does not support infinite timestamp values."
+#: utils/adt/json.c:1413
+#, c-format
+msgid "JSON does not support infinite date values."
+msgstr "JSON unterstützt keine unendlichen Datumswerte."
+
+#: utils/adt/json.c:1438 utils/adt/json.c:1465
+#, c-format
 msgid "JSON does not support infinite timestamp values."
-msgstr "XML unterstützt keine unendlichen timestamp-Werte."
+msgstr "JSON unterstützt keine unendlichen timestamp-Werte."
 
-#: utils/adt/json.c:1461
-#, fuzzy, c-format
-#| msgid "Version names must not be empty."
-msgid "key value must not be empty"
-msgstr "Versionsnamen dürfen nicht leer sein."
+#: utils/adt/json.c:1930 utils/adt/json.c:1948 utils/adt/json.c:2023
+#: utils/adt/json.c:2044 utils/adt/json.c:2103
+#, c-format
+msgid "could not determine data type for argument %d"
+msgstr "konnte Datentyp von Argument %d nicht ermitteln"
 
-#: utils/adt/json.c:1891
-#, fuzzy, c-format
-#| msgid "frame ending offset must not be null"
+#: utils/adt/json.c:1935
+#, c-format
 msgid "field name must not be null"
-msgstr "Frame-Ende-Offset darf nicht NULL sein"
+msgstr "Feldname darf nicht NULL sein"
 
-#: utils/adt/json.c:1913
+#: utils/adt/json.c:1998
 #, fuzzy, c-format
-#| msgid "could not determine input data type"
-msgid "arg 1: could not determine data type"
-msgstr "konnte Eingabedatentypen nicht bestimmen"
-
-#: utils/adt/json.c:1937
-#, fuzzy, c-format
-#| msgid "could not determine input data type"
-msgid "arg 2: could not determine data type"
-msgstr "konnte Eingabedatentypen nicht bestimmen"
+#| msgid "each %s query must have the same number of columns"
+msgid "argument list must have even number of elements"
+msgstr "jede %s-Anfrage muss die gleiche Anzahl Spalten haben"
 
-#: utils/adt/json.c:1983
+#: utils/adt/json.c:1999
 #, c-format
-msgid "invalid number or arguments: object must be matched key value pairs"
+msgid "The arguments of json_build_object() must consist of alternating keys and values."
 msgstr ""
 
-#: utils/adt/json.c:1997
-#, fuzzy, c-format
-#| msgid "dimension values cannot be null"
-msgid "arg %d: key cannot be null"
-msgstr "Dimensionswerte dürfen nicht NULL sein"
+#: utils/adt/json.c:2029
+#, c-format
+msgid "argument %d cannot be null"
+msgstr "Argument %d darf nicht NULL sein"
 
-#: utils/adt/json.c:2019 utils/adt/json.c:2045 utils/adt/json.c:2102
-#, fuzzy, c-format
-#| msgid "could not determine input data type"
-msgid "arg %d: could not determine data type"
-msgstr "konnte Eingabedatentypen nicht bestimmen"
+#: utils/adt/json.c:2030
+#, c-format
+msgid "Object keys should be text."
+msgstr ""
 
-#: utils/adt/json.c:2160
+#: utils/adt/json.c:2165
 #, fuzzy, c-format
 #| msgid "view must have at least one column"
 msgid "array must have two columns"
 msgstr "Sicht muss mindestens eine Spalte haben"
 
-#: utils/adt/json.c:2184 utils/adt/json.c:2272
+#: utils/adt/json.c:2189 utils/adt/json.c:2273
 #, fuzzy, c-format
 #| msgid "null array element not allowed in this context"
 msgid "null value not allowed for object key"
 msgstr "NULL-Werte im Array sind in diesem Zusammenhang nicht erlaubt"
 
-#: utils/adt/json.c:2190 utils/adt/json.c:2278
-#, fuzzy, c-format
-#| msgid "SETOF type not allowed for operator argument"
-msgid "empty value not allowed for object key"
-msgstr "SETOF-Typ nicht als Operatorargument erlaubt"
-
-#: utils/adt/json.c:2261
+#: utils/adt/json.c:2262
 #, fuzzy, c-format
 #| msgid "mismatched parentheses"
 msgid "mismatched array dimensions"
@@ -17246,148 +17109,115 @@ msgstr "Bitkette ist zu lang für Typ bit varying(%d)"
 msgid "Due to an implementation restriction, jsonb strings cannot exceed %d bytes."
 msgstr ""
 
-#: utils/adt/jsonb_util.c:550
+#: utils/adt/jsonb_util.c:622
 #, fuzzy, c-format
 #| msgid "number of array dimensions (%d) exceeds the maximum allowed (%d)"
 msgid "number of jsonb object pairs exceeds the maximum allowed (%zu)"
 msgstr "Anzahl der Arraydimensionen (%d) überschreitet erlaubtes Maximum (%d)"
 
-#: utils/adt/jsonb_util.c:591
+#: utils/adt/jsonb_util.c:663
 #, fuzzy, c-format
 #| msgid "number of array dimensions (%d) exceeds the maximum allowed (%d)"
 msgid "number of jsonb array elements exceeds the maximum allowed (%zu)"
 msgstr "Anzahl der Arraydimensionen (%d) überschreitet erlaubtes Maximum (%d)"
 
-#: utils/adt/jsonb_util.c:1378 utils/adt/jsonb_util.c:1430
-#: utils/adt/jsonb_util.c:1445
+#: utils/adt/jsonb_util.c:1478 utils/adt/jsonb_util.c:1498
 #, fuzzy, c-format
 #| msgid "number of array dimensions (%d) exceeds the maximum allowed (%d)"
 msgid "total size of jsonb array elements exceeds the maximum of %u bytes"
 msgstr "Anzahl der Arraydimensionen (%d) überschreitet erlaubtes Maximum (%d)"
 
-#: utils/adt/jsonfuncs.c:278 utils/adt/jsonfuncs.c:443
-#: utils/adt/jsonfuncs.c:480 utils/adt/jsonfuncs.c:525
-#: utils/adt/jsonfuncs.c:600 utils/adt/jsonfuncs.c:642
-#: utils/adt/jsonfuncs.c:1937 utils/adt/jsonfuncs.c:2374
-#: utils/adt/jsonfuncs.c:2880
+#: utils/adt/jsonb_util.c:1559 utils/adt/jsonb_util.c:1594
+#: utils/adt/jsonb_util.c:1614
+#, fuzzy, c-format
+#| msgid "number of array dimensions (%d) exceeds the maximum allowed (%d)"
+msgid "total size of jsonb object elements exceeds the maximum of %u bytes"
+msgstr "Anzahl der Arraydimensionen (%d) überschreitet erlaubtes Maximum (%d)"
+
+#: utils/adt/jsonfuncs.c:263 utils/adt/jsonfuncs.c:428
+#: utils/adt/jsonfuncs.c:1968 utils/adt/jsonfuncs.c:2405
+#: utils/adt/jsonfuncs.c:2911
 #, c-format
 msgid "cannot call %s on a scalar"
 msgstr "kann %s nicht mit einem skalaren Wert aufrufen"
 
-#: utils/adt/jsonfuncs.c:283 utils/adt/jsonfuncs.c:430
-#: utils/adt/jsonfuncs.c:485 utils/adt/jsonfuncs.c:530
-#: utils/adt/jsonfuncs.c:2363
+#: utils/adt/jsonfuncs.c:268 utils/adt/jsonfuncs.c:415
+#: utils/adt/jsonfuncs.c:2394
 #, c-format
 msgid "cannot call %s on an array"
 msgstr "%s kann nicht mit einem Array aufgerufen werden"
 
-#: utils/adt/jsonfuncs.c:605 utils/adt/jsonfuncs.c:647
-#: utils/adt/jsonfuncs.c:2719
-#, fuzzy, c-format
-#| msgid "cannot call %s on a nested object"
-msgid "cannot call %s on an object"
-msgstr "kann %s nicht mit einem geschachtelten Objekt aufrufen"
-
-#: utils/adt/jsonfuncs.c:723 utils/adt/jsonfuncs.c:1117
-#, fuzzy, c-format
-#| msgid "cannot call function with null path elements"
-msgid "cannot call %s with null path elements"
-msgstr "kann Funktion nicht mit Pfadelementen, die NULL sind, aufrufen"
-
-#: utils/adt/jsonfuncs.c:738
-#, fuzzy, c-format
-#| msgid "cannot call function with empty path elements"
-msgid "cannot call %s with empty path elements"
-msgstr "kann Funktion nicht mit leeren Pfadelementen aufrufen"
-
-#: utils/adt/jsonfuncs.c:850
-#, c-format
-msgid "cannot extract array element from a non-array"
-msgstr "kann kein Arrayelement aus einem Nicht-Array auswählen"
-
-#: utils/adt/jsonfuncs.c:962
-#, c-format
-msgid "cannot extract field from a non-object"
-msgstr "kann kein Feld aus einem Nicht-Objekt auswählen"
-
-#: utils/adt/jsonfuncs.c:1076
-#, c-format
-msgid "cannot extract element from a scalar"
-msgstr "kann kein Element aus einem skalaren Wert auswählen"
-
-#: utils/adt/jsonfuncs.c:1157
-#, fuzzy, c-format
-#| msgid "cannot extract element from a scalar"
-msgid "cannot extract path from a scalar"
-msgstr "kann kein Element aus einem skalaren Wert auswählen"
-
-#: utils/adt/jsonfuncs.c:1245 utils/adt/jsonfuncs.c:1280
+#: utils/adt/jsonfuncs.c:1276 utils/adt/jsonfuncs.c:1311
 #, c-format
 msgid "cannot get array length of a scalar"
 msgstr "kann nicht die Arraylänge eines skalaren Wertes ermitteln"
 
-#: utils/adt/jsonfuncs.c:1249 utils/adt/jsonfuncs.c:1268
+#: utils/adt/jsonfuncs.c:1280 utils/adt/jsonfuncs.c:1299
 #, c-format
 msgid "cannot get array length of a non-array"
 msgstr "kann nicht die Arraylänge eines Nicht-Arrays ermitteln"
 
-#: utils/adt/jsonfuncs.c:1345
+#: utils/adt/jsonfuncs.c:1376
 #, fuzzy, c-format
 #| msgid "cannot call %s on a nested object"
 msgid "cannot call %s on a non-object"
 msgstr "kann %s nicht mit einem geschachtelten Objekt aufrufen"
 
-#: utils/adt/jsonfuncs.c:1363 utils/adt/jsonfuncs.c:2050
-#: utils/adt/jsonfuncs.c:2583
+#: utils/adt/jsonfuncs.c:1394 utils/adt/jsonfuncs.c:2081
+#: utils/adt/jsonfuncs.c:2614
 #, c-format
 msgid "function returning record called in context that cannot accept type record"
 msgstr "Funktion, die einen Record zurückgibt, in einem Zusammenhang aufgerufen, der Typ record nicht verarbeiten kann"
 
-#: utils/adt/jsonfuncs.c:1606
+#: utils/adt/jsonfuncs.c:1637
 #, c-format
 msgid "cannot deconstruct an array as an object"
 msgstr "kann Array nicht in ein Objekt zerlegen"
 
-#: utils/adt/jsonfuncs.c:1618
+#: utils/adt/jsonfuncs.c:1649
 #, c-format
 msgid "cannot deconstruct a scalar"
 msgstr "kann skalaren Wert nicht zerlegen"
 
-#: utils/adt/jsonfuncs.c:1664
-#, fuzzy, c-format
-#| msgid "cannot extract element from a scalar"
+#: utils/adt/jsonfuncs.c:1695
+#, c-format
 msgid "cannot extract elements from a scalar"
-msgstr "kann kein Element aus einem skalaren Wert auswählen"
+msgstr "kann keine Elemente aus einem skalaren Wert auswählen"
 
-#: utils/adt/jsonfuncs.c:1668
-#, fuzzy, c-format
-#| msgid "cannot extract element from a scalar"
+#: utils/adt/jsonfuncs.c:1699
+#, c-format
 msgid "cannot extract elements from an object"
-msgstr "kann kein Element aus einem skalaren Wert auswählen"
+msgstr "kann keine Elemente aus einem Objekt auswählen"
 
-#: utils/adt/jsonfuncs.c:1924 utils/adt/jsonfuncs.c:2679
+#: utils/adt/jsonfuncs.c:1955 utils/adt/jsonfuncs.c:2710
 #, fuzzy, c-format
 #| msgid "cannot call %s on an array"
 msgid "cannot call %s on a non-array"
 msgstr "%s kann nicht mit einem Array aufgerufen werden"
 
-#: utils/adt/jsonfuncs.c:2011 utils/adt/jsonfuncs.c:2559
+#: utils/adt/jsonfuncs.c:2042 utils/adt/jsonfuncs.c:2590
 #, fuzzy, c-format
 #| msgid "argument of %s must be a type name"
 msgid "first argument of %s must be a row type"
 msgstr "Argument von %s muss ein Typname sein"
 
-#: utils/adt/jsonfuncs.c:2052
+#: utils/adt/jsonfuncs.c:2083
 #, c-format
 msgid "Try calling the function in the FROM clause using a column definition list."
 msgstr ""
 
-#: utils/adt/jsonfuncs.c:2695 utils/adt/jsonfuncs.c:2862
+#: utils/adt/jsonfuncs.c:2726 utils/adt/jsonfuncs.c:2893
 #, fuzzy, c-format
 #| msgid "argument of %s must be a name"
 msgid "argument of %s must be an array of objects"
 msgstr "Argument von %s muss ein Name sein"
 
+#: utils/adt/jsonfuncs.c:2750
+#, fuzzy, c-format
+#| msgid "cannot call %s on a nested object"
+msgid "cannot call %s on an object"
+msgstr "kann %s nicht mit einem geschachtelten Objekt aufrufen"
+
 #: utils/adt/like.c:211 utils/adt/selfuncs.c:5220
 #, c-format
 msgid "could not determine which collation to use for ILIKE"
@@ -17609,7 +17439,7 @@ msgstr "Skala von NUMERIC (%d) muss zwischen 0 und %d liegen"
 msgid "invalid NUMERIC type modifier"
 msgstr "ungültiker Modifikator für Typ NUMERIC"
 
-#: utils/adt/numeric.c:1928 utils/adt/numeric.c:4178
+#: utils/adt/numeric.c:1928 utils/adt/numeric.c:4178 utils/adt/numeric.c:6147
 #, c-format
 msgid "value overflows numeric format"
 msgstr "Wert verursacht Überlauf im „numeric“-Format"
@@ -17685,10 +17515,9 @@ msgid "requested character too large for encoding: %d"
 msgstr "gewünschtes Zeichen ist zu groß für die Kodierung: %d"
 
 #: utils/adt/oracle_compat.c:986
-#, fuzzy, c-format
-#| msgid "requested character too large for encoding: %d"
+#, c-format
 msgid "requested character not valid for encoding: %d"
-msgstr "gewünschtes Zeichen ist zu groß für die Kodierung: %d"
+msgstr "gewünschtes Zeichen ist nicht gültig für die Kodierung: %d"
 
 #: utils/adt/oracle_compat.c:1000
 #, c-format
@@ -17699,7 +17528,7 @@ msgstr "Null-Zeichen ist nicht erlaubt"
 #: utils/adt/orderedsetaggs.c:667
 #, c-format
 msgid "percentile value %g is not between 0 and 1"
-msgstr ""
+msgstr "Perzentilwert %g ist nicht zwischen 0 und 1"
 
 #: utils/adt/pg_locale.c:1039
 #, c-format
@@ -17732,10 +17561,9 @@ msgid "The server's LC_CTYPE locale is probably incompatible with the database e
 msgstr "Die LC_CTYPE-Locale des Servers ist wahrscheinlich mit der Kodierung der Datenbank inkompatibel."
 
 #: utils/adt/pg_lsn.c:44 utils/adt/pg_lsn.c:49
-#, fuzzy, c-format
-#| msgid "invalid input syntax for type line: \"%s\""
+#, c-format
 msgid "invalid input syntax for type pg_lsn: \"%s\""
-msgstr "ungültige Eingabesyntax für Typ line: „%s“"
+msgstr "ungültige Eingabesyntax für Typ pg_lsn: „%s“"
 
 #: utils/adt/pseudotypes.c:95
 #, c-format
@@ -18161,27 +17989,24 @@ msgid "timestamp(%d) precision must be between %d and %d"
 msgstr "Präzision von timestamp(%d) muss zwischen %d und %d sein"
 
 #: utils/adt/timestamp.c:517
-#, fuzzy, c-format
-#| msgid "invalid input syntax for type numeric: \"%s\""
+#, c-format
 msgid "invalid input syntax for numeric time zone: \"%s\""
-msgstr "ungültige Eingabesyntax für Typ numeric: „%s“"
+msgstr "ungültige Eingabesyntax für numerische Zeitzone: „%s“"
 
 #: utils/adt/timestamp.c:519
 #, c-format
 msgid "Numeric time zones must have \"-\" or \"+\" as first character."
-msgstr ""
+msgstr "Numerische Zeitzonen müssen „-“ oder „+“ als erstes Zeichen haben."
 
 #: utils/adt/timestamp.c:531
-#, fuzzy, c-format
-#| msgid "number is out of range"
+#, c-format
 msgid "numeric time zone \"%s\" out of range"
-msgstr "Zahl ist außerhalb des gültigen Bereichs"
+msgstr "numerische Zeitzone „%s“ ist außerhalb des gültigen Bereichs"
 
 #: utils/adt/timestamp.c:627 utils/adt/timestamp.c:637
-#, fuzzy, c-format
-#| msgid "timestamp out of range: \"%s\""
+#, c-format
 msgid "timestamp out of range: %d-%02d-%02d %d:%02d:%02g"
-msgstr "timestamp ist außerhalb des gültigen Bereichs: „%s“"
+msgstr "timestamp ist außerhalb des gültigen Bereichs: %d-%02d-%02d %d:%02d:%02g"
 
 #: utils/adt/timestamp.c:908 utils/adt/timestamp.c:1479
 #: utils/adt/timestamp.c:1982 utils/adt/timestamp.c:3122
@@ -19044,7 +18869,7 @@ msgstr "konnte Zeilenbeschreibung für Funktion, die „record“ zurückgibt, n
 msgid "could not change directory to \"%s\": %m"
 msgstr "konnte nicht in Verzeichnis „%s“ wechseln: %m"
 
-#: utils/init/miscinit.c:311 utils/misc/guc.c:5765
+#: utils/init/miscinit.c:311 utils/misc/guc.c:5761
 #, c-format
 msgid "cannot set parameter \"%s\" within security-restricted operation"
 msgstr "kann Parameter „%s“ nicht in einer sicherheitsbeschränkten Operation setzen"
@@ -19145,7 +18970,7 @@ msgstr "Die Datei ist anscheinend aus Versehen übrig geblieben, konnte aber nic
 msgid "could not write lock file \"%s\": %m"
 msgstr "konnte Sperrdatei „%s“ nicht schreiben: %m"
 
-#: utils/init/miscinit.c:1001 utils/misc/guc.c:8363
+#: utils/init/miscinit.c:1001 utils/misc/guc.c:8381
 #, c-format
 msgid "could not read from file \"%s\": %m"
 msgstr "konnte nicht aus Datei „%s“ lesen: %m"
@@ -19181,10 +19006,9 @@ msgid "loaded library \"%s\""
 msgstr "Bibliothek „%s“ geladen"
 
 #: utils/init/postinit.c:237
-#, fuzzy, c-format
-#| msgid "replication connection authorized: user=%s"
+#, c-format
 msgid "replication connection authorized: user=%s SSL enabled (protocol=%s, cipher=%s, compression=%s)"
-msgstr "Replikationsverbindung authorisiert: Benutzer=%s"
+msgstr "Replikationsverbindung authorisiert: Benutzer=%s SSL an (Protokoll=%s, Verschlüsselungsmethode=%s, Komprimierung=%s)"
 
 #: utils/init/postinit.c:239 utils/init/postinit.c:253
 msgid "off"
@@ -19200,10 +19024,9 @@ msgid "replication connection authorized: user=%s"
 msgstr "Replikationsverbindung authorisiert: Benutzer=%s"
 
 #: utils/init/postinit.c:251
-#, fuzzy, c-format
-#| msgid "connection authorized: user=%s database=%s"
+#, c-format
 msgid "connection authorized: user=%s database=%s SSL enabled (protocol=%s, cipher=%s, compression=%s)"
-msgstr "Verbindung authorisiert: Benutzer=%s Datenbank=%s"
+msgstr "Verbindung authorisiert: Benutzer=%s Datenbank=%s SSL an (Protokoll=%s, Verschlüsselungsmethode=%s, Komprimierung=%s)"
 
 #: utils/init/postinit.c:257
 #, c-format
@@ -19527,10 +19350,8 @@ msgid "Client Connection Defaults / Locale and Formatting"
 msgstr "Standardeinstellungen für Clientverbindungen / Locale und Formatierung"
 
 #: utils/misc/guc.c:624
-#, fuzzy
-#| msgid "Client Connection Defaults / Locale and Formatting"
 msgid "Client Connection Defaults / Shared Library Preloading"
-msgstr "Standardeinstellungen für Clientverbindungen / Locale und Formatierung"
+msgstr "Standardeinstellungen für Clientverbindungen / Shared Library Preloading"
 
 #: utils/misc/guc.c:626
 msgid "Client Connection Defaults / Other Defaults"
@@ -19775,16 +19596,12 @@ msgid "Generates debugging output for LISTEN and NOTIFY."
 msgstr "Erzeugt Debug-Ausgabe für LISTEN und NOTIFY."
 
 #: utils/misc/guc.c:1125
-#, fuzzy
-#| msgid "Emit information about resource usage in sorting."
 msgid "Emits information about lock usage."
-msgstr "Gibt Informationen über die Ressourcenverwendung beim Sortieren aus."
+msgstr "Gibt Informationen über Sperrenverwendung aus."
 
 #: utils/misc/guc.c:1135
-#, fuzzy
-#| msgid "Emit information about resource usage in sorting."
 msgid "Emits information about user lock usage."
-msgstr "Gibt Informationen über die Ressourcenverwendung beim Sortieren aus."
+msgstr "Gibt Informationen über Benutzersperrenverwendung aus."
 
 #: utils/misc/guc.c:1145
 #, fuzzy
@@ -20230,578 +20047,564 @@ msgstr "Setzt die Anzahl Diskseitenpuffer für WAL im Shared Memory."
 msgid "WAL writer sleep time between WAL flushes."
 msgstr "Schlafzeit zwischen WAL-Flush-Operationen des WAL-Writers."
 
-#: utils/misc/guc.c:2124
-#, fuzzy
-#| msgid "Sets the maximum number of concurrent connections."
-msgid "Sets the number of locks used for concurrent xlog insertions."
-msgstr "Setzt die maximale Anzahl gleichzeitiger Verbindungen."
-
-#: utils/misc/guc.c:2136
+#: utils/misc/guc.c:2125
 msgid "Sets the maximum number of simultaneously running WAL sender processes."
 msgstr "Setzt die maximale Anzahl gleichzeitig laufender WAL-Sender-Prozesse."
 
-#: utils/misc/guc.c:2147
-#, fuzzy
-#| msgid "Sets the maximum number of simultaneously prepared transactions."
+#: utils/misc/guc.c:2136
 msgid "Sets the maximum number of simultaneously defined replication slots."
-msgstr "Setzt die maximale Anzahl von gleichzeitig vorbereiteten Transaktionen."
+msgstr "Setzt die maximale Anzahl von gleichzeitig definierten Replikations-Slots."
 
-#: utils/misc/guc.c:2157
+#: utils/misc/guc.c:2146
 msgid "Sets the maximum time to wait for WAL replication."
 msgstr "Setzt die maximale Zeit, um auf WAL-Replikation zu warten."
 
-#: utils/misc/guc.c:2168
+#: utils/misc/guc.c:2157
 msgid "Sets the delay in microseconds between transaction commit and flushing WAL to disk."
 msgstr "Setzt die Verzögerung in Millisekunden zwischen Transaktionsabschluss und dem Schreiben von WAL auf die Festplatte."
 
-#: utils/misc/guc.c:2180
+#: utils/misc/guc.c:2169
 msgid "Sets the minimum concurrent open transactions before performing commit_delay."
 msgstr "Setzt die minimale Anzahl gleichzeitig offener Transaktionen bevor „commit_delay“ angewendet wird."
 
-#: utils/misc/guc.c:2191
+#: utils/misc/guc.c:2180
 msgid "Sets the number of digits displayed for floating-point values."
 msgstr "Setzt die Anzahl ausgegebener Ziffern für Fließkommawerte."
 
-#: utils/misc/guc.c:2192
+#: utils/misc/guc.c:2181
 msgid "This affects real, double precision, and geometric data types. The parameter value is added to the standard number of digits (FLT_DIG or DBL_DIG as appropriate)."
 msgstr "Diese Einstellung betrifft real, double precision und geometrische Datentypen. Der Parameterwert wird zur Standardziffernanzahl (FLT_DIG bzw. DBL_DIG) hinzuaddiert."
 
-#: utils/misc/guc.c:2203
+#: utils/misc/guc.c:2192
 msgid "Sets the minimum execution time above which statements will be logged."
 msgstr "Setzt die minimale Ausführungszeit, über der Anweisungen geloggt werden."
 
-#: utils/misc/guc.c:2205
+#: utils/misc/guc.c:2194
 msgid "Zero prints all queries. -1 turns this feature off."
 msgstr "Null zeigt alle Anfragen. -1 schaltet dieses Feature aus."
 
-#: utils/misc/guc.c:2215
+#: utils/misc/guc.c:2204
 msgid "Sets the minimum execution time above which autovacuum actions will be logged."
 msgstr "Setzt die minimale Ausführungszeit, über der Autovacuum-Aktionen geloggt werden."
 
-#: utils/misc/guc.c:2217
+#: utils/misc/guc.c:2206
 msgid "Zero prints all actions. -1 turns autovacuum logging off."
 msgstr "Null gibt alls Aktionen aus. -1 schaltet die Log-Aufzeichnung über Autovacuum aus."
 
-#: utils/misc/guc.c:2227
+#: utils/misc/guc.c:2216
 msgid "Background writer sleep time between rounds."
 msgstr "Schlafzeit zwischen Durchläufen des Background-Writers."
 
-#: utils/misc/guc.c:2238
+#: utils/misc/guc.c:2227
 msgid "Background writer maximum number of LRU pages to flush per round."
 msgstr "Maximale Anzahl der vom Background-Writer pro Durchlauf zu flushenden LRU-Seiten."
 
-#: utils/misc/guc.c:2254
+#: utils/misc/guc.c:2243
 msgid "Number of simultaneous requests that can be handled efficiently by the disk subsystem."
 msgstr "Anzahl simultaner Anfragen, die das Festplattensubsystem effizient bearbeiten kann."
 
-#: utils/misc/guc.c:2255
+#: utils/misc/guc.c:2244
 msgid "For RAID arrays, this should be approximately the number of drive spindles in the array."
 msgstr "Für RAID-Arrays sollte dies ungefähr die Anzahl Spindeln im Array sein."
 
-#: utils/misc/guc.c:2270
+#: utils/misc/guc.c:2259
 #, fuzzy
 #| msgid "Sets the maximum number of concurrent connections."
 msgid "Maximum number of concurrent worker processes."
 msgstr "Setzt die maximale Anzahl gleichzeitiger Verbindungen."
 
-#: utils/misc/guc.c:2280
+#: utils/misc/guc.c:2269
 msgid "Automatic log file rotation will occur after N minutes."
 msgstr "Automatische Rotation der Logdateien geschieht nach N Minuten."
 
-#: utils/misc/guc.c:2291
+#: utils/misc/guc.c:2280
 msgid "Automatic log file rotation will occur after N kilobytes."
 msgstr "Automatische Rotation der Logdateien geschieht nach N Kilobytes."
 
-#: utils/misc/guc.c:2302
+#: utils/misc/guc.c:2291
 msgid "Shows the maximum number of function arguments."
 msgstr "Setzt die maximale Anzahl von Funktionsargumenten."
 
-#: utils/misc/guc.c:2313
+#: utils/misc/guc.c:2302
 msgid "Shows the maximum number of index keys."
 msgstr "Zeigt die maximale Anzahl von Indexschlüsseln."
 
-#: utils/misc/guc.c:2324
+#: utils/misc/guc.c:2313
 msgid "Shows the maximum identifier length."
 msgstr "Zeigt die maximale Länge von Bezeichnern."
 
-#: utils/misc/guc.c:2335
+#: utils/misc/guc.c:2324
 msgid "Shows the size of a disk block."
 msgstr "Zeigt die Größe eines Diskblocks."
 
-#: utils/misc/guc.c:2346
+#: utils/misc/guc.c:2335
 msgid "Shows the number of pages per disk file."
 msgstr "Zeigt die Anzahl Seiten pro Diskdatei."
 
-#: utils/misc/guc.c:2357
+#: utils/misc/guc.c:2346
 msgid "Shows the block size in the write ahead log."
 msgstr "Zeigt die Blockgröße im Write-Ahead-Log."
 
-#: utils/misc/guc.c:2368
+#: utils/misc/guc.c:2357
 msgid "Shows the number of pages per write ahead log segment."
 msgstr "Zeit die Anzahl Seiten pro Write-Ahead-Log-Segment."
 
-#: utils/misc/guc.c:2381
+#: utils/misc/guc.c:2370
 msgid "Time to sleep between autovacuum runs."
 msgstr "Wartezeit zwischen Autovacuum-Durchläufen."
 
-#: utils/misc/guc.c:2391
+#: utils/misc/guc.c:2380
 msgid "Minimum number of tuple updates or deletes prior to vacuum."
 msgstr "Mindestanzahl an geänderten oder gelöschten Tupeln vor einem Vacuum."
 
-#: utils/misc/guc.c:2400
+#: utils/misc/guc.c:2389
 msgid "Minimum number of tuple inserts, updates, or deletes prior to analyze."
 msgstr "Mindestanzahl an Einfüge-, Änderungs- oder Löschoperationen von einem Analyze."
 
-#: utils/misc/guc.c:2410
+#: utils/misc/guc.c:2399
 msgid "Age at which to autovacuum a table to prevent transaction ID wraparound."
 msgstr "Alter, nach dem eine Tabelle automatisch gevacuumt wird, um Transaktionsnummernüberlauf zu verhindern."
 
-#: utils/misc/guc.c:2421
+#: utils/misc/guc.c:2410
 msgid "Multixact age at which to autovacuum a table to prevent multixact wraparound."
 msgstr "Multixact-Alter, nach dem eine Tabelle automatisch gevacuumt wird, um Transaktionsnummernüberlauf zu verhindern."
 
-#: utils/misc/guc.c:2431
+#: utils/misc/guc.c:2420
 msgid "Sets the maximum number of simultaneously running autovacuum worker processes."
 msgstr "Setzt die maximale Anzahl gleichzeitig laufender Autovacuum-Worker-Prozesse."
 
-#: utils/misc/guc.c:2441
-#, fuzzy
-#| msgid "Sets the maximum memory to be used for query workspaces."
+#: utils/misc/guc.c:2430
 msgid "Sets the maximum memory to be used by each autovacuum worker process."
-msgstr "Setzt die maximale Speichergröße für Anfrage-Arbeitsbereiche."
+msgstr "Setzt die maximale Speichergröße für jeden Autovacuum-Worker-Prozess."
 
-#: utils/misc/guc.c:2452
+#: utils/misc/guc.c:2441
 msgid "Time between issuing TCP keepalives."
 msgstr "Zeit zwischen TCP-Keepalive-Sendungen."
 
-#: utils/misc/guc.c:2453 utils/misc/guc.c:2464
+#: utils/misc/guc.c:2442 utils/misc/guc.c:2453
 msgid "A value of 0 uses the system default."
 msgstr "Der Wert 0 verwendet die Systemvoreinstellung."
 
-#: utils/misc/guc.c:2463
+#: utils/misc/guc.c:2452
 msgid "Time between TCP keepalive retransmits."
 msgstr "Zeit zwischen TCP-Keepalive-Neuübertragungen."
 
-#: utils/misc/guc.c:2474
+#: utils/misc/guc.c:2463
 msgid "Set the amount of traffic to send and receive before renegotiating the encryption keys."
 msgstr "Setzt die Traffic-Menge, die gesendet oder empfangen wird, bevor der Verschlüsselungsschlüssel neu ausgehandelt wird."
 
-#: utils/misc/guc.c:2485
+#: utils/misc/guc.c:2474
 msgid "Maximum number of TCP keepalive retransmits."
 msgstr "Maximale Anzahl an TCP-Keepalive-Neuübertragungen."
 
-#: utils/misc/guc.c:2486
+#: utils/misc/guc.c:2475
 msgid "This controls the number of consecutive keepalive retransmits that can be lost before a connection is considered dead. A value of 0 uses the system default."
 msgstr "Dies bestimmt die Anzahl von aufeinanderfolgenden Keepalive-Neuübertragungen, die verloren gehen dürfen, bis die Verbindung als tot betrachtet wird. Der Wert 0 verwendet die Betriebssystemvoreinstellung."
 
-#: utils/misc/guc.c:2497
+#: utils/misc/guc.c:2486
 msgid "Sets the maximum allowed result for exact search by GIN."
 msgstr "Setzt die maximal erlaubte Anzahl Ergebnisse für eine genaue Suche mit GIN."
 
-#: utils/misc/guc.c:2508
+#: utils/misc/guc.c:2497
 msgid "Sets the planner's assumption about the size of the disk cache."
 msgstr "Setzt die Annahme des Planers über die Größe des Festplatten-Caches."
 
-#: utils/misc/guc.c:2509
+#: utils/misc/guc.c:2498
 msgid "That is, the portion of the kernel's disk cache that will be used for PostgreSQL data files. This is measured in disk pages, which are normally 8 kB each."
 msgstr "Setzt die Annahme des Planers über die effektive Größe des Diskcaches (das heißt des Teils des Diskcaches vom Kernel, der für die Datendateien von PostgreSQL verwendet wird). Das wird in Diskseiten gemessen, welche normalerweise 8 kB groß sind."
 
-#: utils/misc/guc.c:2522
+#: utils/misc/guc.c:2511
 msgid "Shows the server version as an integer."
 msgstr "Zeigt die Serverversion als Zahl."
 
-#: utils/misc/guc.c:2533
+#: utils/misc/guc.c:2522
 msgid "Log the use of temporary files larger than this number of kilobytes."
 msgstr "Schreibt Meldungen über die Verwendung von temporären Dateien in den Log, wenn sie größer als diese Anzahl an Kilobytes sind."
 
-#: utils/misc/guc.c:2534
+#: utils/misc/guc.c:2523
 msgid "Zero logs all files. The default is -1 (turning this feature off)."
 msgstr "Null loggt alle Dateien. Die Standardeinstellung ist -1 (wodurch dieses Feature ausgeschaltet wird)."
 
-#: utils/misc/guc.c:2544
+#: utils/misc/guc.c:2533
 msgid "Sets the size reserved for pg_stat_activity.query, in bytes."
 msgstr "Setzt die für pg_stat_activity.query reservierte Größe, in Bytes."
 
-#: utils/misc/guc.c:2568
+#: utils/misc/guc.c:2557
 msgid "Sets the planner's estimate of the cost of a sequentially fetched disk page."
 msgstr "Setzt den vom Planer geschätzten Aufwand, um eine sequenzielle Diskseite zu lesen."
 
-#: utils/misc/guc.c:2578
+#: utils/misc/guc.c:2567
 msgid "Sets the planner's estimate of the cost of a nonsequentially fetched disk page."
 msgstr "Setzt den vom Planer geschätzten Aufwand, um eine nichtsequenzielle Diskseite zu lesen."
 
-#: utils/misc/guc.c:2588
+#: utils/misc/guc.c:2577
 msgid "Sets the planner's estimate of the cost of processing each tuple (row)."
 msgstr "Setzt den vom Planer geschätzten Aufwand für die Verarbeitung einer Zeile."
 
-#: utils/misc/guc.c:2598
+#: utils/misc/guc.c:2587
 msgid "Sets the planner's estimate of the cost of processing each index entry during an index scan."
 msgstr "Setzt den vom Planer geschätzten Aufwand für die Verarbeitung eines Indexeintrags während eines Index-Scans."
 
-#: utils/misc/guc.c:2608
+#: utils/misc/guc.c:2597
 msgid "Sets the planner's estimate of the cost of processing each operator or function call."
 msgstr "Setzt den vom Planer geschätzten Aufwand für die Verarbeitung eines Operators oder Funktionsaufrufs."
 
-#: utils/misc/guc.c:2619
+#: utils/misc/guc.c:2608
 msgid "Sets the planner's estimate of the fraction of a cursor's rows that will be retrieved."
 msgstr "Setzt den vom Planer geschätzten Anteil der Cursor-Zeilen, die ausgelesen werden werden."
 
-#: utils/misc/guc.c:2630
+#: utils/misc/guc.c:2619
 msgid "GEQO: selective pressure within the population."
 msgstr "GEQO: selektiver Auswahldruck in der Bevölkerung."
 
-#: utils/misc/guc.c:2640
+#: utils/misc/guc.c:2629
 msgid "GEQO: seed for random path selection."
 msgstr "GEQO: Ausgangswert für die zufällige Pfadauswahl."
 
-#: utils/misc/guc.c:2650
+#: utils/misc/guc.c:2639
 msgid "Multiple of the average buffer usage to free per round."
 msgstr "Vielfaches der durchschnittlichen freizugebenden Pufferverwendung pro Runde."
 
-#: utils/misc/guc.c:2660
+#: utils/misc/guc.c:2649
 msgid "Sets the seed for random-number generation."
 msgstr "Setzt den Ausgangswert für die Zufallszahlenerzeugung."
 
-#: utils/misc/guc.c:2671
+#: utils/misc/guc.c:2660
 msgid "Number of tuple updates or deletes prior to vacuum as a fraction of reltuples."
 msgstr "Anzahl geänderter oder gelöschter Tupel vor einem Vacuum, relativ zu reltuples."
 
-#: utils/misc/guc.c:2680
+#: utils/misc/guc.c:2669
 msgid "Number of tuple inserts, updates, or deletes prior to analyze as a fraction of reltuples."
 msgstr "Anzahl eingefügter, geänderter oder gelöschter Tupel vor einem Analyze, relativ zu reltuples."
 
-#: utils/misc/guc.c:2690
+#: utils/misc/guc.c:2679
 msgid "Time spent flushing dirty buffers during checkpoint, as fraction of checkpoint interval."
 msgstr "Zeit, die damit verbracht wird, modifizierte Puffer während eines Checkpoints zurückzuschreiben, als Bruchteil des Checkpoint-Intervalls."
 
-#: utils/misc/guc.c:2709
+#: utils/misc/guc.c:2698
 msgid "Sets the shell command that will be called to archive a WAL file."
 msgstr "Setzt den Shell-Befehl, der aufgerufen wird, um eine WAL-Datei zu archivieren."
 
-#: utils/misc/guc.c:2719
+#: utils/misc/guc.c:2708
 msgid "Sets the client's character set encoding."
 msgstr "Setzt die Zeichensatzkodierung des Clients."
 
-#: utils/misc/guc.c:2730
+#: utils/misc/guc.c:2719
 msgid "Controls information prefixed to each log line."
 msgstr "Bestimmt die Informationen, die vor jede Logzeile geschrieben werden."
 
-#: utils/misc/guc.c:2731
+#: utils/misc/guc.c:2720
 msgid "If blank, no prefix is used."
 msgstr "Wenn leer, dann wird kein Präfix verwendet."
 
-#: utils/misc/guc.c:2740
+#: utils/misc/guc.c:2729
 msgid "Sets the time zone to use in log messages."
 msgstr "Setzt die in Logmeldungen verwendete Zeitzone."
 
-#: utils/misc/guc.c:2750
+#: utils/misc/guc.c:2739
 msgid "Sets the display format for date and time values."
 msgstr "Setzt das Ausgabeformat für Datums- und Zeitwerte."
 
-#: utils/misc/guc.c:2751
+#: utils/misc/guc.c:2740
 msgid "Also controls interpretation of ambiguous date inputs."
 msgstr "Kontrolliert auch die Interpretation von zweideutigen Datumseingaben."
 
-#: utils/misc/guc.c:2762
+#: utils/misc/guc.c:2751
 msgid "Sets the default tablespace to create tables and indexes in."
 msgstr "Setzt den Standard-Tablespace für Tabellen und Indexe."
 
-#: utils/misc/guc.c:2763
+#: utils/misc/guc.c:2752
 msgid "An empty string selects the database's default tablespace."
 msgstr "Eine leere Zeichenkette wählt den Standard-Tablespace der Datenbank."
 
-#: utils/misc/guc.c:2773
+#: utils/misc/guc.c:2762
 msgid "Sets the tablespace(s) to use for temporary tables and sort files."
 msgstr "Setzt den oder die Tablespaces für temporäre Tabellen und Sortierdateien."
 
-#: utils/misc/guc.c:2784
+#: utils/misc/guc.c:2773
 msgid "Sets the path for dynamically loadable modules."
 msgstr "Setzt den Pfad für ladbare dynamische Bibliotheken."
 
-#: utils/misc/guc.c:2785
+#: utils/misc/guc.c:2774
 msgid "If a dynamically loadable module needs to be opened and the specified name does not have a directory component (i.e., the name does not contain a slash), the system will search this path for the specified file."
 msgstr "Wenn ein dynamisch ladbares Modul geöffnet werden muss und der angegebene Name keine Verzeichniskomponente hat (das heißt er enthält keinen Schrägstrich), dann sucht das System in diesem Pfad nach der angegebenen Datei."
 
-#: utils/misc/guc.c:2798
+#: utils/misc/guc.c:2787
 msgid "Sets the location of the Kerberos server key file."
 msgstr "Setzt den Ort der Kerberos-Server-Schlüsseldatei."
 
-#: utils/misc/guc.c:2809
+#: utils/misc/guc.c:2798
 msgid "Sets the Bonjour service name."
 msgstr "Setzt den Bonjour-Servicenamen."
 
-#: utils/misc/guc.c:2821
+#: utils/misc/guc.c:2810
 msgid "Shows the collation order locale."
 msgstr "Zeigt die Locale für die Sortierreihenfolge."
 
-#: utils/misc/guc.c:2832
+#: utils/misc/guc.c:2821
 msgid "Shows the character classification and case conversion locale."
 msgstr "Zeigt die Locale für Zeichenklassifizierung und Groß-/Kleinschreibung."
 
-#: utils/misc/guc.c:2843
+#: utils/misc/guc.c:2832
 msgid "Sets the language in which messages are displayed."
 msgstr "Setzt die Sprache, in der Mitteilungen ausgegeben werden."
 
-#: utils/misc/guc.c:2853
+#: utils/misc/guc.c:2842
 msgid "Sets the locale for formatting monetary amounts."
 msgstr "Setzt die Locale für die Formatierung von Geldbeträgen."
 
-#: utils/misc/guc.c:2863
+#: utils/misc/guc.c:2852
 msgid "Sets the locale for formatting numbers."
 msgstr "Setzt die Locale für die Formatierung von Zahlen."
 
-#: utils/misc/guc.c:2873
+#: utils/misc/guc.c:2862
 msgid "Sets the locale for formatting date and time values."
 msgstr "Setzt die Locale für die Formatierung von Datums- und Zeitwerten."
 
-#: utils/misc/guc.c:2883
+#: utils/misc/guc.c:2872
 msgid "Lists shared libraries to preload into each backend."
 msgstr "Listet dynamische Bibliotheken, die vorab in jeden Serverprozess geladen werden."
 
-#: utils/misc/guc.c:2894
+#: utils/misc/guc.c:2883
 msgid "Lists shared libraries to preload into server."
 msgstr "Listet dynamische Bibliotheken, die vorab in den Server geladen werden."
 
-#: utils/misc/guc.c:2905
+#: utils/misc/guc.c:2894
 #, fuzzy
 #| msgid "Lists shared libraries to preload into each backend."
 msgid "Lists unprivileged shared libraries to preload into each backend."
 msgstr "Listet dynamische Bibliotheken, die vorab in jeden Serverprozess geladen werden."
 
-#: utils/misc/guc.c:2916
+#: utils/misc/guc.c:2905
 msgid "Sets the schema search order for names that are not schema-qualified."
 msgstr "Setzt die Schemasuchreihenfolge für Namen ohne Schemaqualifikation."
 
-#: utils/misc/guc.c:2928
+#: utils/misc/guc.c:2917
 msgid "Sets the server (database) character set encoding."
 msgstr "Setzt die Zeichensatzkodierung des Servers (der Datenbank)."
 
-#: utils/misc/guc.c:2940
+#: utils/misc/guc.c:2929
 msgid "Shows the server version."
 msgstr "Zeigt die Serverversion."
 
-#: utils/misc/guc.c:2952
+#: utils/misc/guc.c:2941
 msgid "Sets the current role."
 msgstr "Setzt die aktuelle Rolle."
 
-#: utils/misc/guc.c:2964
+#: utils/misc/guc.c:2953
 msgid "Sets the session user name."
 msgstr "Setzt den Sitzungsbenutzernamen."
 
-#: utils/misc/guc.c:2975
+#: utils/misc/guc.c:2964
 msgid "Sets the destination for server log output."
 msgstr "Setzt das Ziel für die Serverlogausgabe."
 
-#: utils/misc/guc.c:2976
+#: utils/misc/guc.c:2965
 msgid "Valid values are combinations of \"stderr\", \"syslog\", \"csvlog\", and \"eventlog\", depending on the platform."
 msgstr "Gültige Werte sind Kombinationen von „stderr“, „syslog“, „csvlog“ und „eventlog“, je nach Plattform."
 
-#: utils/misc/guc.c:2987
+#: utils/misc/guc.c:2976
 msgid "Sets the destination directory for log files."
 msgstr "Bestimmt das Zielverzeichnis für Logdateien."
 
-#: utils/misc/guc.c:2988
+#: utils/misc/guc.c:2977
 msgid "Can be specified as relative to the data directory or as absolute path."
 msgstr "Kann relativ zum Datenverzeichnis oder als absoluter Pfad angegeben werden."
 
-#: utils/misc/guc.c:2998
+#: utils/misc/guc.c:2987
 msgid "Sets the file name pattern for log files."
 msgstr "Bestimmt das Dateinamenmuster für Logdateien."
 
-#: utils/misc/guc.c:3009
+#: utils/misc/guc.c:2998
 msgid "Sets the program name used to identify PostgreSQL messages in syslog."
 msgstr "Setzt den Programmnamen, mit dem PostgreSQL-Meldungen im Syslog identifiziert werden."
 
-#: utils/misc/guc.c:3020
+#: utils/misc/guc.c:3009
 msgid "Sets the application name used to identify PostgreSQL messages in the event log."
 msgstr "Setzt den Programmnamen, mit dem PostgreSQL-Meldungen im Ereignisprotokoll identifiziert werden."
 
-#: utils/misc/guc.c:3031
+#: utils/misc/guc.c:3020
 msgid "Sets the time zone for displaying and interpreting time stamps."
 msgstr "Setzt die Zeitzone, in der Zeitangaben interpretiert und ausgegeben werden."
 
-#: utils/misc/guc.c:3041
+#: utils/misc/guc.c:3030
 msgid "Selects a file of time zone abbreviations."
 msgstr "Wählt eine Datei mit Zeitzonenabkürzungen."
 
-#: utils/misc/guc.c:3051
+#: utils/misc/guc.c:3040
 msgid "Sets the current transaction's isolation level."
 msgstr "Zeigt den Isolationsgrad der aktuellen Transaktion."
 
-#: utils/misc/guc.c:3062
+#: utils/misc/guc.c:3051
 msgid "Sets the owning group of the Unix-domain socket."
 msgstr "Setzt die Eigentümergruppe der Unix-Domain-Socket."
 
-#: utils/misc/guc.c:3063
+#: utils/misc/guc.c:3052
 msgid "The owning user of the socket is always the user that starts the server."
 msgstr "Der Eigentümer ist immer der Benutzer, der den Server startet."
 
-#: utils/misc/guc.c:3073
+#: utils/misc/guc.c:3062
 msgid "Sets the directories where Unix-domain sockets will be created."
 msgstr "Setzt die Verzeichnisse, in denen Unix-Domain-Sockets erzeugt werden sollen."
 
-#: utils/misc/guc.c:3088
+#: utils/misc/guc.c:3077
 msgid "Sets the host name or IP address(es) to listen to."
 msgstr "Setzt den Hostnamen oder die IP-Adresse(n), auf der auf Verbindungen gewartet wird."
 
-#: utils/misc/guc.c:3103
+#: utils/misc/guc.c:3092
 msgid "Sets the server's data directory."
 msgstr "Setzt das Datenverzeichnis des Servers."
 
-#: utils/misc/guc.c:3114
+#: utils/misc/guc.c:3103
 msgid "Sets the server's main configuration file."
 msgstr "Setzt die Hauptkonfigurationsdatei des Servers."
 
-#: utils/misc/guc.c:3125
+#: utils/misc/guc.c:3114
 msgid "Sets the server's \"hba\" configuration file."
 msgstr "Setzt die „hba“-Konfigurationsdatei des Servers."
 
-#: utils/misc/guc.c:3136
+#: utils/misc/guc.c:3125
 msgid "Sets the server's \"ident\" configuration file."
 msgstr "Setzt die „ident“-Konfigurationsdatei des Servers."
 
-#: utils/misc/guc.c:3147
+#: utils/misc/guc.c:3136
 msgid "Writes the postmaster PID to the specified file."
 msgstr "Schreibt die Postmaster-PID in die angegebene Datei."
 
-#: utils/misc/guc.c:3158
+#: utils/misc/guc.c:3147
 msgid "Location of the SSL server certificate file."
 msgstr "Ort der SSL-Serverzertifikatsdatei."
 
-#: utils/misc/guc.c:3168
+#: utils/misc/guc.c:3157
 msgid "Location of the SSL server private key file."
 msgstr "Setzt den Ort der Datei mit dem privaten SSL-Server-Schlüssel."
 
-#: utils/misc/guc.c:3178
+#: utils/misc/guc.c:3167
 msgid "Location of the SSL certificate authority file."
 msgstr "Ort der SSL-Certificate-Authority-Datei."
 
-#: utils/misc/guc.c:3188
+#: utils/misc/guc.c:3177
 msgid "Location of the SSL certificate revocation list file."
 msgstr "Ort der SSL-Certificate-Revocation-List-Datei."
 
-#: utils/misc/guc.c:3198
+#: utils/misc/guc.c:3187
 msgid "Writes temporary statistics files to the specified directory."
 msgstr "Schreibt temporäre Statistikdateien in das angegebene Verzeichnis."
 
-#: utils/misc/guc.c:3209
+#: utils/misc/guc.c:3198
 msgid "List of names of potential synchronous standbys."
 msgstr "Liste der Namen der möglichen synchronen Standbys."
 
-#: utils/misc/guc.c:3220
+#: utils/misc/guc.c:3209
 msgid "Sets default text search configuration."
 msgstr "Setzt die vorgegebene Textsuchekonfiguration."
 
-#: utils/misc/guc.c:3230
+#: utils/misc/guc.c:3219
 msgid "Sets the list of allowed SSL ciphers."
 msgstr "Setzt die Liste der erlaubten SSL-Verschlüsselungsalgorithmen."
 
-#: utils/misc/guc.c:3245
-#, fuzzy
-#| msgid "Sets the current role."
+#: utils/misc/guc.c:3234
 msgid "Sets the curve to use for ECDH."
-msgstr "Setzt die aktuelle Rolle."
+msgstr "Setzt die für ECDH zu verwendende Kurve."
 
-#: utils/misc/guc.c:3260
+#: utils/misc/guc.c:3249
 msgid "Sets the application name to be reported in statistics and logs."
 msgstr "Setzt den Anwendungsnamen, der in Statistiken und Logs verzeichnet wird."
 
-#: utils/misc/guc.c:3280
+#: utils/misc/guc.c:3269
 msgid "Sets whether \"\\'\" is allowed in string literals."
 msgstr "Bestimmt, ob „\\'“ in Zeichenkettenkonstanten erlaubt ist."
 
-#: utils/misc/guc.c:3290
+#: utils/misc/guc.c:3279
 msgid "Sets the output format for bytea."
 msgstr "Setzt das Ausgabeformat für bytea."
 
-#: utils/misc/guc.c:3300
+#: utils/misc/guc.c:3289
 msgid "Sets the message levels that are sent to the client."
 msgstr "Setzt die Meldungstypen, die an den Client gesendet werden."
 
-#: utils/misc/guc.c:3301 utils/misc/guc.c:3354 utils/misc/guc.c:3365
-#: utils/misc/guc.c:3421
+#: utils/misc/guc.c:3290 utils/misc/guc.c:3343 utils/misc/guc.c:3354
+#: utils/misc/guc.c:3410
 msgid "Each level includes all the levels that follow it. The later the level, the fewer messages are sent."
 msgstr "Jeder Wert schließt alle ihm folgenden Werte mit ein. Je weiter hinten der Wert steht, desto weniger Meldungen werden gesendet werden."
 
-#: utils/misc/guc.c:3311
+#: utils/misc/guc.c:3300
 msgid "Enables the planner to use constraints to optimize queries."
 msgstr "Ermöglicht dem Planer die Verwendung von Constraints, um Anfragen zu optimieren."
 
-#: utils/misc/guc.c:3312
+#: utils/misc/guc.c:3301
 msgid "Table scans will be skipped if their constraints guarantee that no rows match the query."
 msgstr "Tabellen-Scans werden übersprungen, wenn deren Constraints garantieren, dass keine Zeile mit der Abfrage übereinstimmt."
 
-#: utils/misc/guc.c:3322
+#: utils/misc/guc.c:3311
 msgid "Sets the transaction isolation level of each new transaction."
 msgstr "Setzt den Transaktionsisolationsgrad neuer Transaktionen."
 
-#: utils/misc/guc.c:3332
+#: utils/misc/guc.c:3321
 msgid "Sets the display format for interval values."
 msgstr "Setzt das Ausgabeformat für Intervallwerte."
 
-#: utils/misc/guc.c:3343
+#: utils/misc/guc.c:3332
 msgid "Sets the verbosity of logged messages."
 msgstr "Setzt den Detailgrad von geloggten Meldungen."
 
-#: utils/misc/guc.c:3353
+#: utils/misc/guc.c:3342
 msgid "Sets the message levels that are logged."
 msgstr "Setzt die Meldungstypen, die geloggt werden."
 
-#: utils/misc/guc.c:3364
+#: utils/misc/guc.c:3353
 msgid "Causes all statements generating error at or above this level to be logged."
 msgstr "Schreibt alle Anweisungen, die einen Fehler auf dieser Stufe oder höher verursachen, in den Log."
 
-#: utils/misc/guc.c:3375
+#: utils/misc/guc.c:3364
 msgid "Sets the type of statements logged."
 msgstr "Setzt die Anweisungsarten, die geloggt werden."
 
-#: utils/misc/guc.c:3385
+#: utils/misc/guc.c:3374
 msgid "Sets the syslog \"facility\" to be used when syslog enabled."
 msgstr "Setzt die zu verwendende Syslog-„Facility“, wenn Syslog angeschaltet ist."
 
-#: utils/misc/guc.c:3400
+#: utils/misc/guc.c:3389
 msgid "Sets the session's behavior for triggers and rewrite rules."
 msgstr "Setzt das Sitzungsverhalten für Trigger und Regeln."
 
-#: utils/misc/guc.c:3410
+#: utils/misc/guc.c:3399
 msgid "Sets the current transaction's synchronization level."
 msgstr "Setzt den Synchronisationsgrad der aktuellen Transaktion."
 
-#: utils/misc/guc.c:3420
+#: utils/misc/guc.c:3409
 msgid "Enables logging of recovery-related debugging information."
 msgstr "Ermöglicht das Loggen von Debug-Informationen über die Wiederherstellung."
 
-#: utils/misc/guc.c:3436
+#: utils/misc/guc.c:3425
 msgid "Collects function-level statistics on database activity."
 msgstr "Sammelt Statistiken auf Funktionsebene über Datenbankaktivität."
 
-#: utils/misc/guc.c:3446
+#: utils/misc/guc.c:3435
 msgid "Set the level of information written to the WAL."
 msgstr "Setzt den Umfang der in den WAL geschriebenen Informationen."
 
-#: utils/misc/guc.c:3456
-#, fuzzy
-#| msgid "selecting dynamic shared memory implementation ... "
+#: utils/misc/guc.c:3445
 msgid "Selects the dynamic shared memory implementation used."
-msgstr "wähle Implementierung von dynamischem Shared Memory ... "
+msgstr "Wählt die zu verwendende Implementierung von dynamischem Shared Memory."
 
-#: utils/misc/guc.c:3466
+#: utils/misc/guc.c:3455
 msgid "Selects the method used for forcing WAL updates to disk."
 msgstr "Wählt die Methode, um das Schreiben von WAL-Änderungen auf die Festplatte zu erzwingen."
 
-#: utils/misc/guc.c:3476
+#: utils/misc/guc.c:3465
 msgid "Sets how binary values are to be encoded in XML."
 msgstr "Setzt, wie binäre Werte in XML kodiert werden."
 
-#: utils/misc/guc.c:3486
+#: utils/misc/guc.c:3475
 msgid "Sets whether XML data in implicit parsing and serialization operations is to be considered as documents or content fragments."
 msgstr "Setzt, ob XML-Daten in impliziten Parse- und Serialisierungsoperationen als Dokument oder Fragment betrachtet werden sollen."
 
-#: utils/misc/guc.c:3497
+#: utils/misc/guc.c:3486
 msgid "Use of huge pages on Linux"
 msgstr ""
 
-#: utils/misc/guc.c:4312
+#: utils/misc/guc.c:4301
 #, c-format
 msgid ""
 "%s does not know where to find the server configuration file.\n"
@@ -20811,12 +20614,12 @@ msgstr ""
 "Sie müssen die Kommandozeilenoption --config-file oder -D angegeben oder\n"
 "die Umgebungsvariable PGDATA setzen.\n"
 
-#: utils/misc/guc.c:4331
+#: utils/misc/guc.c:4320
 #, c-format
 msgid "%s cannot access the server configuration file \"%s\": %s\n"
 msgstr "%s kann nicht auf die Serverkonfigurationsdatei „%s“ zugreifen: %s\n"
 
-#: utils/misc/guc.c:4352
+#: utils/misc/guc.c:4348
 #, c-format
 msgid ""
 "%s does not know where to find the database system data.\n"
@@ -20826,7 +20629,7 @@ msgstr ""
 "zu finden sind.  Sie können dies mit „data_directory“ in „%s“, mit der\n"
 "Kommandozeilenoption -D oder der Umgebungsvariable PGDATA angeben.\n"
 
-#: utils/misc/guc.c:4400
+#: utils/misc/guc.c:4396
 #, c-format
 msgid ""
 "%s does not know where to find the \"hba\" configuration file.\n"
@@ -20836,7 +20639,7 @@ msgstr ""
 "Sie können dies mit „hba_file“ in „%s“, mit der\n"
 "Kommandozeilenoption -D oder der Umgebungsvariable PGDATA angeben.\n"
 
-#: utils/misc/guc.c:4423
+#: utils/misc/guc.c:4419
 #, c-format
 msgid ""
 "%s does not know where to find the \"ident\" configuration file.\n"
@@ -20846,169 +20649,160 @@ msgstr ""
 "Sie können dies mit „ident_file“ in „%s“, mit der\n"
 "Kommandozeilenoption -D oder der Umgebungsvariable PGDATA angeben.\n"
 
-#: utils/misc/guc.c:5015 utils/misc/guc.c:5195
+#: utils/misc/guc.c:5011 utils/misc/guc.c:5191
 msgid "Value exceeds integer range."
 msgstr "Wert überschreitet Bereich für ganze Zahlen."
 
-#: utils/misc/guc.c:5034
-#, fuzzy
-#| msgid "Valid units for this parameter are \"kB\", \"MB\", and \"GB\"."
+#: utils/misc/guc.c:5030
 msgid "Valid units for this parameter are \"kB\", \"MB\", \"GB\", and \"TB\"."
-msgstr "Gültige Einheiten für diesen Parameter sind „kB“, „MB“ und „GB“."
+msgstr "Gültige Einheiten für diesen Parameter sind „kB“, „MB“, „GB“ und „TB“."
 
-#: utils/misc/guc.c:5109
+#: utils/misc/guc.c:5105
 msgid "Valid units for this parameter are \"ms\", \"s\", \"min\", \"h\", and \"d\"."
 msgstr "Gültige Einheiten für diesen Parameter sind „ms“, „s“, „min“, „h“ und „d“."
 
-#: utils/misc/guc.c:5403 utils/misc/guc.c:5528 utils/misc/guc.c:6758
-#: utils/misc/guc.c:8946 utils/misc/guc.c:8980
+#: utils/misc/guc.c:5399 utils/misc/guc.c:5524 utils/misc/guc.c:6767
+#: utils/misc/guc.c:8964 utils/misc/guc.c:8998
 #, c-format
 msgid "invalid value for parameter \"%s\": \"%s\""
 msgstr "ungültiger Wert für Parameter „%s“: „%s“"
 
-#: utils/misc/guc.c:5441
+#: utils/misc/guc.c:5437
 #, c-format
 msgid "parameter \"%s\" requires a numeric value"
 msgstr "Parameter „%s“ erfordert einen numerischen Wert"
 
-#: utils/misc/guc.c:5450
+#: utils/misc/guc.c:5446
 #, c-format
 msgid "%g is outside the valid range for parameter \"%s\" (%g .. %g)"
 msgstr "%g ist außerhalb des gültigen Bereichs für Parameter „%s“ (%g ... %g)"
 
-#: utils/misc/guc.c:5616 utils/misc/guc.c:6338 utils/misc/guc.c:6390
-#: utils/misc/guc.c:6740 utils/misc/guc.c:7428 utils/misc/guc.c:7587
-#: utils/misc/guc.c:8766
+#: utils/misc/guc.c:5612 utils/misc/guc.c:6334 utils/misc/guc.c:6386
+#: utils/misc/guc.c:6749 utils/misc/guc.c:7446 utils/misc/guc.c:7605
+#: utils/misc/guc.c:8784
 #, c-format
 msgid "unrecognized configuration parameter \"%s\""
 msgstr "unbekannter Konfigurationsparameter „%s“"
 
-#: utils/misc/guc.c:5631 utils/misc/guc.c:6751
+#: utils/misc/guc.c:5627 utils/misc/guc.c:6760
 #, c-format
 msgid "parameter \"%s\" cannot be changed"
 msgstr "Parameter „%s“ kann nicht geändert werden"
 
-#: utils/misc/guc.c:5664
+#: utils/misc/guc.c:5660
 #, c-format
 msgid "parameter \"%s\" cannot be changed now"
 msgstr "Parameter „%s“ kann jetzt nicht geändert werden"
 
-#: utils/misc/guc.c:5709
+#: utils/misc/guc.c:5705
 #, c-format
 msgid "parameter \"%s\" cannot be set after connection start"
 msgstr "Parameter „%s“ kann nach Start der Verbindung nicht geändert werden"
 
-#: utils/misc/guc.c:5719 utils/misc/guc.c:8782
+#: utils/misc/guc.c:5715 utils/misc/guc.c:8800
 #, c-format
 msgid "permission denied to set parameter \"%s\""
 msgstr "keine Berechtigung, um Parameter „%s“ zu setzen"
 
-#: utils/misc/guc.c:5757
+#: utils/misc/guc.c:5753
 #, c-format
 msgid "cannot set parameter \"%s\" within security-definer function"
 msgstr "Parameter „%s“ kann nicht in einer Security-Definer-Funktion gesetzt werden"
 
-#: utils/misc/guc.c:6346 utils/misc/guc.c:6394 utils/misc/guc.c:7591
+#: utils/misc/guc.c:6342 utils/misc/guc.c:6390 utils/misc/guc.c:7609
 #, c-format
 msgid "must be superuser to examine \"%s\""
 msgstr "nur Superuser können „%s“ ansehen"
 
-#: utils/misc/guc.c:6460
+#: utils/misc/guc.c:6456
 #, c-format
 msgid "SET %s takes only one argument"
 msgstr "SET %s darf nur ein Argument haben"
 
-#: utils/misc/guc.c:6571 utils/misc/guc.c:6596
+#: utils/misc/guc.c:6567 utils/misc/guc.c:6592
 #, fuzzy, c-format
 #| msgid "could not write to blobs TOC file\n"
 msgid "failed to write to \"%s\" file"
 msgstr "konnte nicht in Blobs-Inhaltsverzeichnisdatei schreiben\n"
 
-#: utils/misc/guc.c:6714
-#, fuzzy, c-format
-#| msgid "must be superuser to get file information"
+#: utils/misc/guc.c:6713
+#, c-format
 msgid "must be superuser to execute ALTER SYSTEM command"
-msgstr "nur Superuser können Dateiinformationen lesen"
+msgstr "nur Superuser können den Befehl ALTER SYSTEM ausführen"
 
-#: utils/misc/guc.c:6785
+#: utils/misc/guc.c:6795
 #, fuzzy, c-format
 #| msgid "could not open control file \"%s\": %m"
 msgid "failed to open auto conf temp file \"%s\": %m "
 msgstr "konnte Kontrolldatei „%s“ nicht öffnen: %m"
 
-#: utils/misc/guc.c:6796
+#: utils/misc/guc.c:6813
 #, fuzzy, c-format
 #| msgid "could not open lock file \"%s\": %m"
 msgid "failed to open auto conf file \"%s\": %m "
 msgstr "konnte Sperrdatei „%s“ nicht öffnen: %m"
 
-#: utils/misc/guc.c:6825
-#, fuzzy, c-format
-#| msgid "could not rename file \"%s\" to \"%s\": %m"
-msgid "could not rename file \"%s\" to \"%s\" : %m"
-msgstr "konnte Datei „%s“ nicht in „%s“ umbenennen: %m"
-
-#: utils/misc/guc.c:6928
+#: utils/misc/guc.c:6946
 #, c-format
 msgid "SET LOCAL TRANSACTION SNAPSHOT is not implemented"
 msgstr "SET LOCAL TRANSACTION SNAPSHOT ist nicht implementiert"
 
-#: utils/misc/guc.c:7016
+#: utils/misc/guc.c:7034
 #, c-format
 msgid "SET requires parameter name"
 msgstr "SET benötigt Parameternamen"
 
-#: utils/misc/guc.c:7130
+#: utils/misc/guc.c:7148
 #, c-format
 msgid "attempt to redefine parameter \"%s\""
 msgstr "Versuch, den Parameter „%s“ zu redefinieren"
 
-#: utils/misc/guc.c:8486
+#: utils/misc/guc.c:8504
 #, c-format
 msgid "could not parse setting for parameter \"%s\""
 msgstr "konnte Wert von Parameter „%s“ nicht lesen"
 
-#: utils/misc/guc.c:8844 utils/misc/guc.c:8878
+#: utils/misc/guc.c:8862 utils/misc/guc.c:8896
 #, c-format
 msgid "invalid value for parameter \"%s\": %d"
 msgstr "ungültiger Wert für Parameter „%s“: %d"
 
-#: utils/misc/guc.c:8912
+#: utils/misc/guc.c:8930
 #, c-format
 msgid "invalid value for parameter \"%s\": %g"
 msgstr "ungültiger Wert für Parameter „%s“: %g"
 
-#: utils/misc/guc.c:9102
+#: utils/misc/guc.c:9120
 #, c-format
 msgid "\"temp_buffers\" cannot be changed after any temporary tables have been accessed in the session."
 msgstr "„temp_buffers“ kann nicht geändert werden, nachdem in der Sitzung auf temporäre Tabellen zugriffen wurde."
 
-#: utils/misc/guc.c:9114
+#: utils/misc/guc.c:9132
 #, c-format
 msgid "SET AUTOCOMMIT TO OFF is no longer supported"
 msgstr "SET AUTOCOMMIT TO OFF wird nicht mehr unterstützt"
 
-#: utils/misc/guc.c:9126
+#: utils/misc/guc.c:9144
 #, c-format
 msgid "assertion checking is not supported by this build"
 msgstr "Assert-Prüfungen werden von dieser Installation nicht unterstützt"
 
-#: utils/misc/guc.c:9139
+#: utils/misc/guc.c:9157
 #, c-format
 msgid "Bonjour is not supported by this build"
 msgstr "Bonjour wird von dieser Installation nicht unterstützt"
 
-#: utils/misc/guc.c:9152
+#: utils/misc/guc.c:9170
 #, c-format
 msgid "SSL is not supported by this build"
 msgstr "SSL wird von dieser Installation nicht unterstützt"
 
-#: utils/misc/guc.c:9164
+#: utils/misc/guc.c:9182
 #, c-format
 msgid "Cannot enable parameter when \"log_statement_stats\" is true."
 msgstr "Kann Parameter nicht einschalten, wenn „log_statement_stats“ an ist."
 
-#: utils/misc/guc.c:9176
+#: utils/misc/guc.c:9194
 #, c-format
 msgid "Cannot enable \"log_statement_stats\" when \"log_parser_stats\", \"log_planner_stats\", or \"log_executor_stats\" is true."
 msgstr "Kann „log_statement_stats“ nicht einschalten, wenn „log_parser_stats“, „log_planner_stats“ oder „log_executor_stats“ an ist."
@@ -21205,57 +20999,3 @@ msgstr "eine serialisierbare Transaktion, die nicht im Read-Only-Modus ist, kann
 #, c-format
 msgid "cannot import a snapshot from a different database"
 msgstr "kann keinen Snapshot aus einer anderen Datenbank importieren"
-
-#~ msgid "cannot call json_populate_recordset on a nested object"
-#~ msgstr "json_populate_recordset kann nicht mit einem geschachtelten Objekt aufgerufen werden"
-
-#~ msgid "cannot call json_populate_recordset on a scalar"
-#~ msgstr "json_populate_recordset kann nicht mit einem skalaren Wert aufgerufen werden"
-
-#~ msgid "cannot call json_populate_recordset with nested arrays"
-#~ msgstr "json_populate_recordset kann nicht mit geschachtelten Arrays aufgerufen werden"
-
-#~ msgid "must call json_populate_recordset on an array of objects"
-#~ msgstr "json_populate_recordset muss mit einem Array aus Objekten aufgerufen werden"
-
-#~ msgid "cannot call json_populate_recordset with nested objects"
-#~ msgstr "json_populate_recordset kann nicht mit geschachtelten Objekten aufgerufen werden"
-
-#~ msgid "cannot call json_populate_recordset on an object"
-#~ msgstr "json_populate_recordset kann nicht mit einem Objekt aufgerufen werden"
-
-#~ msgid "first argument of json_populate_recordset must be a row type"
-#~ msgstr "erstes Argument von json_populate_recordset muss ein Zeilentyp sein"
-
-#~ msgid "first argument of json_populate_record must be a row type"
-#~ msgstr "erstes Argument von json_populate_record muss ein Zeilentyp sein"
-
-#~ msgid "cannot call json_array_elements on a scalar"
-#~ msgstr "kann json_array_elements nicht mit einem skalaren Wert aufrufen"
-
-#~ msgid "cannot call json_array_elements on a non-array"
-#~ msgstr "kann json_array_elements nicht mit einem Nicht-Array aufrufen"
-
-#~ msgid "cannot call json_object_keys on a scalar"
-#~ msgstr "kann json_object_keys nicht mit einem skalaren Wert aufrufen"
-
-#~ msgid "cannot call json_object_keys on an array"
-#~ msgstr "kann json_object_keys nicht mit einem Array aufrufen"
-
-#~ msgid "Expected 1 tuple with 3 fields, got %d tuples with %d fields."
-#~ msgstr "1 Tupel mit 3 Feldern erwartet, %d Tupel mit %d Feldern erhalten."
-
-#~ msgid "too many column aliases specified for function %s"
-#~ msgstr "zu viele Spaltenaliasnamen für Funktion %s angegeben"
-
-#~ msgid "%s: could not determine user name (GetUserName failed)\n"
-#~ msgstr "%s: konnte Benutzername nicht ermitteln (GetUserName fehlgeschlagen)\n"
-
-#~ msgid "%s: invalid effective UID: %d\n"
-#~ msgstr "%s: ungültige effektive UID: %d\n"
-
-#~ msgid "SSL renegotiation failure"
-#~ msgstr "Fehler bei SSL-Neuverhandlung"
-
-#~ msgid "local user with ID %d does not exist"
-#~ msgstr "lokaler Benutzer mit ID %d existiert nicht"
index 7a19cdfe379270bee2205a55056f642200fe3ca9..9e7dcad19489c207acc20edf98bc2bf33ccee31a 100644 (file)
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: postgres (PostgreSQL) 9.3\n"
+"Project-Id-Version: postgres (PostgreSQL) 9.4\n"
 "Report-Msgid-Bugs-To: [email protected]\n"
-"POT-Creation-Date: 2014-02-09 11:42+0000\n"
-"PO-Revision-Date: 2014-02-09 21:28+0100\n"
+"POT-Creation-Date: 2014-08-23 05:08+0000\n"
+"PO-Revision-Date: 2014-08-18 12:29+0100\n"
 "Last-Translator: Daniele Varrazzo \n"
 "Language-Team: Gruppo traduzioni ITPUG \n"
 "Language: it\n"
@@ -28,101 +28,194 @@ msgstr ""
 "X-Poedit-SourceCharset: utf-8\n"
 "X-Generator: Poedit 1.5.4\n"
 
-#: ../common/fe_memutils.c:33 ../common/fe_memutils.c:60
-#: ../common/fe_memutils.c:83
+#: ../common/exec.c:127 ../common/exec.c:241 ../common/exec.c:284
 #, c-format
-msgid "out of memory\n"
-msgstr "memoria esaurita\n"
+msgid "could not identify current directory: %s"
+msgstr "identificazione della directory corrente fallita: %s"
 
-#: ../common/fe_memutils.c:77
+#: ../common/exec.c:146
 #, c-format
-msgid "cannot duplicate null pointer (internal error)\n"
-msgstr "impossibile duplicare il puntatore nullo (errore interno)\n"
+msgid "invalid binary \"%s\""
+msgstr "binario non valido \"%s\""
 
-#: ../port/chklocale.c:352 ../port/chklocale.c:358
+#: ../common/exec.c:195
 #, c-format
-msgid "could not determine encoding for locale \"%s\": codeset is \"%s\""
-msgstr "non è stato possibile determinare una codifica per il locale \"%s\": il codeset è \"%s\""
+msgid "could not read binary \"%s\""
+msgstr "lettura del binario \"%s\" fallita"
 
-#: ../port/chklocale.c:360
+#: ../common/exec.c:202
 #, c-format
-msgid "Please report this to ."
-msgstr "Per favore segnala questo problema a ."
+msgid "could not find a \"%s\" to execute"
+msgstr "programma \"%s\" da eseguire non trovato"
 
-#: ../port/dirmod.c:217
+#: ../common/exec.c:257 ../common/exec.c:293
 #, c-format
-msgid "could not set junction for \"%s\": %s"
-msgstr "non è stato possibile impostare la giunzione per \"%s\": %s"
+msgid "could not change directory to \"%s\": %s"
+msgstr "spostamento nella directory \"%s\" fallito: %s"
 
-#: ../port/dirmod.c:220
+#: ../common/exec.c:272
 #, c-format
-msgid "could not set junction for \"%s\": %s\n"
-msgstr "non è stato possibile impostare la giunzione per \"%s\": %s\n"
+msgid "could not read symbolic link \"%s\""
+msgstr "lettura del link simbolico \"%s\" fallita"
 
-#: ../port/dirmod.c:292
+#: ../common/exec.c:523
 #, c-format
-msgid "could not get junction for \"%s\": %s"
-msgstr "non è stato possibile ottenere la giunzione per \"%s\": %s"
+msgid "pclose failed: %s"
+msgstr "pclose fallita: %s"
 
-#: ../port/dirmod.c:295
+#: ../common/fe_memutils.c:33 ../common/fe_memutils.c:60
+#: ../common/fe_memutils.c:83 ../common/psprintf.c:181 ../port/path.c:598
+#: ../port/path.c:636 ../port/path.c:653
 #, c-format
-msgid "could not get junction for \"%s\": %s\n"
-msgstr "non è stato possibile ottenere la giunzione per \"%s\": %s\n"
+msgid "out of memory\n"
+msgstr "memoria esaurita\n"
+
+#: ../common/fe_memutils.c:77
+#, c-format
+msgid "cannot duplicate null pointer (internal error)\n"
+msgstr "impossibile duplicare il puntatore nullo (errore interno)\n"
 
-#: ../port/dirmod.c:377
+#: ../common/pgfnames.c:45
 #, c-format
 msgid "could not open directory \"%s\": %s\n"
 msgstr "apertura della directory \"%s\" fallita: %s\n"
 
-#: ../port/dirmod.c:414
+#: ../common/pgfnames.c:72
 #, c-format
 msgid "could not read directory \"%s\": %s\n"
 msgstr "lettura della directory \"%s\" fallita: %s\n"
 
-#: ../port/dirmod.c:497
+#: ../common/pgfnames.c:84
+#, c-format
+msgid "could not close directory \"%s\": %s\n"
+msgstr "chiusura della directory \"%s\" fallita: %s\n"
+
+#: ../common/psprintf.c:179 ../port/path.c:596 ../port/path.c:634
+#: ../port/path.c:651 access/transam/xlog.c:6119 lib/stringinfo.c:258
+#: libpq/auth.c:823 libpq/auth.c:1179 libpq/auth.c:1247 libpq/auth.c:1647
+#: postmaster/bgworker.c:267 postmaster/bgworker.c:783
+#: postmaster/postmaster.c:2167 postmaster/postmaster.c:2198
+#: postmaster/postmaster.c:3734 postmaster/postmaster.c:4435
+#: postmaster/postmaster.c:4520 postmaster/postmaster.c:5213
+#: postmaster/postmaster.c:5445 storage/buffer/buf_init.c:154
+#: storage/buffer/localbuf.c:396 storage/file/fd.c:458 storage/file/fd.c:855
+#: storage/file/fd.c:973 storage/file/fd.c:1586 storage/ipc/procarray.c:909
+#: storage/ipc/procarray.c:1395 storage/ipc/procarray.c:1402
+#: storage/ipc/procarray.c:1751 storage/ipc/procarray.c:2335
+#: utils/adt/formatting.c:1519 utils/adt/formatting.c:1639
+#: utils/adt/formatting.c:1760 utils/adt/regexp.c:219 utils/adt/varlena.c:3653
+#: utils/adt/varlena.c:3674 utils/fmgr/dfmgr.c:224 utils/hash/dynahash.c:379
+#: utils/hash/dynahash.c:456 utils/hash/dynahash.c:970 utils/mb/mbutils.c:376
+#: utils/mb/mbutils.c:709 utils/misc/guc.c:3582 utils/misc/guc.c:3598
+#: utils/misc/guc.c:3611 utils/misc/tzparser.c:455 utils/mmgr/aset.c:499
+#: utils/mmgr/aset.c:678 utils/mmgr/aset.c:872 utils/mmgr/aset.c:1114
+#, c-format
+msgid "out of memory"
+msgstr "memoria esaurita"
+
+#: ../common/relpath.c:59
+#, c-format
+msgid "invalid fork name"
+msgstr "Nome del fork non valido"
+
+#: ../common/relpath.c:60
+#, c-format
+msgid "Valid fork names are \"main\", \"fsm\", \"vm\", and \"init\"."
+msgstr "Nomi di fork validi sono \"main\", \"fsm\", \"vm\" e \"init\"."
+
+#: ../common/rmtree.c:77
 #, c-format
 msgid "could not stat file or directory \"%s\": %s\n"
 msgstr "non è stato possibile ottenere informazioni sul file o directory \"%s\": %s\n"
 
-#: ../port/dirmod.c:524 ../port/dirmod.c:541
+#: ../common/rmtree.c:104 ../common/rmtree.c:121
 #, c-format
 msgid "could not remove file or directory \"%s\": %s\n"
 msgstr "rimozione del file o directory \"%s\" fallita: %s\n"
 
-#: ../port/exec.c:127 ../port/exec.c:241 ../port/exec.c:284
+#: ../common/username.c:45
 #, c-format
-msgid "could not identify current directory: %s"
-msgstr "identificazione della directory corrente fallita: %s"
+msgid "could not look up effective user ID %ld: %s"
+msgstr "ID utente effettivo %ld non trovato: %s"
 
-#: ../port/exec.c:146
+#: ../common/username.c:47 libpq/auth.c:1594
+msgid "user does not exist"
+msgstr "l'utente non esiste"
+
+#: ../common/username.c:61
 #, c-format
-msgid "invalid binary \"%s\""
-msgstr "binario non valido \"%s\""
+msgid "user name lookup failure: %s"
+msgstr "errore nella ricerca del nome: %s"
 
-#: ../port/exec.c:195
+#: ../common/wait_error.c:47
 #, c-format
-msgid "could not read binary \"%s\""
-msgstr "lettura del binario \"%s\" fallita"
+msgid "command not executable"
+msgstr "comando non eseguibile"
 
-#: ../port/exec.c:202
+#: ../common/wait_error.c:51
 #, c-format
-msgid "could not find a \"%s\" to execute"
-msgstr "programma \"%s\" da eseguire non trovato"
+msgid "command not found"
+msgstr "comando non trovato"
 
-#: ../port/exec.c:257 ../port/exec.c:293
+#: ../common/wait_error.c:56
 #, c-format
-msgid "could not change directory to \"%s\": %s"
-msgstr "spostamento nella directory \"%s\" fallito: %s"
+msgid "child process exited with exit code %d"
+msgstr "processo figlio uscito con codice di uscita %d"
 
-#: ../port/exec.c:272
+#: ../common/wait_error.c:63
 #, c-format
-msgid "could not read symbolic link \"%s\""
-msgstr "lettura del link simbolico \"%s\" fallita"
+msgid "child process was terminated by exception 0x%X"
+msgstr "processo figlio terminato da eccezione 0x%X"
 
-#: ../port/exec.c:523
+#: ../common/wait_error.c:73
 #, c-format
-msgid "pclose failed: %s"
-msgstr "pclose fallita: %s"
+msgid "child process was terminated by signal %s"
+msgstr "processo figlio terminato da segnale %s"
+
+#: ../common/wait_error.c:77
+#, c-format
+msgid "child process was terminated by signal %d"
+msgstr "processo figlio terminato da segnale %d"
+
+#: ../common/wait_error.c:82
+#, c-format
+msgid "child process exited with unrecognized status %d"
+msgstr "processo figlio uscito con stato non riconosciuto %d"
+
+#: ../port/chklocale.c:259
+#, c-format
+msgid "could not determine encoding for codeset \"%s\""
+msgstr "determinazione della codifica per il codeset \"%s\" fallita"
+
+#: ../port/chklocale.c:260 ../port/chklocale.c:389
+#, c-format
+msgid "Please report this to ."
+msgstr "Per favore segnala questo problema a ."
+
+#: ../port/chklocale.c:381 ../port/chklocale.c:387
+#, c-format
+msgid "could not determine encoding for locale \"%s\": codeset is \"%s\""
+msgstr "non è stato possibile determinare una codifica per il locale \"%s\": il codeset è \"%s\""
+
+#: ../port/dirmod.c:216
+#, c-format
+msgid "could not set junction for \"%s\": %s"
+msgstr "non è stato possibile impostare la giunzione per \"%s\": %s"
+
+#: ../port/dirmod.c:219
+#, c-format
+msgid "could not set junction for \"%s\": %s\n"
+msgstr "non è stato possibile impostare la giunzione per \"%s\": %s\n"
+
+#: ../port/dirmod.c:291
+#, c-format
+msgid "could not get junction for \"%s\": %s"
+msgstr "non è stato possibile ottenere la giunzione per \"%s\": %s"
+
+#: ../port/dirmod.c:294
+#, c-format
+msgid "could not get junction for \"%s\": %s\n"
+msgstr "non è stato possibile ottenere la giunzione per \"%s\": %s\n"
 
 #: ../port/open.c:112
 #, c-format
@@ -147,46 +240,16 @@ msgstr "Si continuerà a provare per 30 secondi"
 msgid "You might have antivirus, backup, or similar software interfering with the database system."
 msgstr "Potrebbe esserci un programma di antivirus, backup o simili che interferisce sul sistema del database."
 
+#: ../port/path.c:620
+#, c-format
+msgid "could not get current working directory: %s\n"
+msgstr "determinazione della directory corrente fallita: %s\n"
+
 #: ../port/strerror.c:25
 #, c-format
 msgid "unrecognized error %d"
 msgstr "errore sconosciuto %d"
 
-#: ../port/wait_error.c:47
-#, c-format
-msgid "command not executable"
-msgstr "comando non trovato"
-
-#: ../port/wait_error.c:51
-#, c-format
-msgid "command not found"
-msgstr "comando non eseguibile"
-
-#: ../port/wait_error.c:56
-#, c-format
-msgid "child process exited with exit code %d"
-msgstr "processo figlio uscito con codice di uscita %d"
-
-#: ../port/wait_error.c:63
-#, c-format
-msgid "child process was terminated by exception 0x%X"
-msgstr "processo figlio terminato da eccezione 0x%X"
-
-#: ../port/wait_error.c:73
-#, c-format
-msgid "child process was terminated by signal %s"
-msgstr "processo figlio terminato da segnale %s"
-
-#: ../port/wait_error.c:77
-#, c-format
-msgid "child process was terminated by signal %d"
-msgstr "processo figlio terminato da segnale %d"
-
-#: ../port/wait_error.c:82
-#, c-format
-msgid "child process exited with unrecognized status %d"
-msgstr "processo figlio uscito con stato non riconosciuto %d"
-
 #: ../port/win32error.c:189
 #, c-format
 msgid "mapped win32 error code %lu to %d"
@@ -197,7 +260,7 @@ msgstr "codice di errore win32 %lu mappato su %d"
 msgid "unrecognized win32 error code: %lu"
 msgstr "codice di errore win32 sconosciuto: %lu"
 
-#: access/common/heaptuple.c:645 access/common/heaptuple.c:1399
+#: access/common/heaptuple.c:679 access/common/heaptuple.c:1419
 #, c-format
 msgid "number of columns (%d) exceeds limit (%d)"
 msgstr "il numero di colonne (%d) eccede il limite (%d)"
@@ -207,68 +270,68 @@ msgstr "il numero di colonne (%d) eccede il limite (%d)"
 msgid "number of index columns (%d) exceeds limit (%d)"
 msgstr "il numero delle colonne dell'indice (%d) eccede il limite (%d)"
 
-#: access/common/indextuple.c:168 access/spgist/spgutils.c:605
+#: access/common/indextuple.c:173 access/spgist/spgutils.c:605
 #, c-format
-msgid "index row requires %lu bytes, maximum size is %lu"
-msgstr "la riga dell'indice richiede %lu byte, la dimensione massima è %lu"
+msgid "index row requires %zu bytes, maximum size is %zu"
+msgstr "la riga dell'indice richiede %zu byte, la dimensione massima è %zu"
 
-#: access/common/printtup.c:293 tcop/fastpath.c:182 tcop/fastpath.c:571
-#: tcop/postgres.c:1673
+#: access/common/printtup.c:294 tcop/fastpath.c:182 tcop/fastpath.c:571
+#: tcop/postgres.c:1670
 #, c-format
 msgid "unsupported format code: %d"
 msgstr "codice di formato non supportato: %d"
 
-#: access/common/reloptions.c:352
+#: access/common/reloptions.c:396
 #, c-format
 msgid "user-defined relation parameter types limit exceeded"
 msgstr "è stato superato il limite per i tipi di parametro per la relazione definita dall'utente"
 
-#: access/common/reloptions.c:636
+#: access/common/reloptions.c:680
 #, c-format
 msgid "RESET must not include values for parameters"
 msgstr "RESET non deve contenere valori per i parametri"
 
-#: access/common/reloptions.c:669
+#: access/common/reloptions.c:713
 #, c-format
 msgid "unrecognized parameter namespace \"%s\""
 msgstr "parametro del namespace \"%s\" sconosciuto"
 
-#: access/common/reloptions.c:913 parser/parse_clause.c:271
+#: access/common/reloptions.c:959 parser/parse_clause.c:268
 #, c-format
 msgid "unrecognized parameter \"%s\""
 msgstr "parametro \"%s\" non identificato"
 
-#: access/common/reloptions.c:938
+#: access/common/reloptions.c:984
 #, c-format
 msgid "parameter \"%s\" specified more than once"
 msgstr "parametro \"%s\" specificato più di una volta"
 
-#: access/common/reloptions.c:953
+#: access/common/reloptions.c:999
 #, c-format
 msgid "invalid value for boolean option \"%s\": %s"
 msgstr "valore non valido per l'opzione booleana \"%s\": %s"
 
-#: access/common/reloptions.c:964
+#: access/common/reloptions.c:1010
 #, c-format
 msgid "invalid value for integer option \"%s\": %s"
 msgstr "valore non valido per l'opzione intera \"%s\": %s"
 
-#: access/common/reloptions.c:969 access/common/reloptions.c:987
+#: access/common/reloptions.c:1015 access/common/reloptions.c:1033
 #, c-format
 msgid "value %s out of bounds for option \"%s\""
 msgstr "il valore %s non rientra nei limiti previsti per l'opzione \"%s\""
 
-#: access/common/reloptions.c:971
+#: access/common/reloptions.c:1017
 #, c-format
 msgid "Valid values are between \"%d\" and \"%d\"."
 msgstr "I valori validi sono quelli compresi fra \"%d\" e \"%d\"."
 
-#: access/common/reloptions.c:982
+#: access/common/reloptions.c:1028
 #, c-format
 msgid "invalid value for floating point option \"%s\": %s"
 msgstr "valore non valido per l'opzione in virgola mobile \"%s\": %s"
 
-#: access/common/reloptions.c:989
+#: access/common/reloptions.c:1035
 #, c-format
 msgid "Valid values are between \"%f\" and \"%f\"."
 msgstr "I valori validi sono quelli compresi fra \"%f\" e \"%f\"."
@@ -293,42 +356,42 @@ msgstr "L'attributo \"%s\" di tipo %s non combacia con l'attributo corrispondent
 msgid "Attribute \"%s\" of type %s does not exist in type %s."
 msgstr "L'attributo \"%s\" di tipo %s non esiste nel tipo %s."
 
-#: access/common/tupdesc.c:591 parser/parse_relation.c:1289
+#: access/common/tupdesc.c:635 parser/parse_relation.c:1339
 #, c-format
 msgid "column \"%s\" cannot be declared SETOF"
 msgstr "la colonna \"%s\" non può essere dichiarata SETOF"
 
-#: access/gin/ginentrypage.c:100 access/nbtree/nbtinsert.c:540
-#: access/nbtree/nbtsort.c:485 access/spgist/spgdoinsert.c:1888
+#: access/gin/ginentrypage.c:108 access/nbtree/nbtinsert.c:545
+#: access/nbtree/nbtsort.c:485 access/spgist/spgdoinsert.c:1880
 #, c-format
-msgid "index row size %lu exceeds maximum %lu for index \"%s\""
-msgstr "la dimensione dell'indice %lu per la riga, eccede del massimo %lu per l'indice \"%s\""
+msgid "index row size %zu exceeds maximum %zu for index \"%s\""
+msgstr "la dimensione %zu della riga dell'indice supera il massimo %zu per l'indice \"%s\""
 
-#: access/gin/ginscan.c:400
+#: access/gin/ginscan.c:402
 #, c-format
 msgid "old GIN indexes do not support whole-index scans nor searches for nulls"
-msgstr "i vecchi indici GIN non supportano le scansioni sull'intero indice nè le ricerche di null"
+msgstr "i vecchi indici GIN non supportano le scansioni sull'intero indice né le ricerche di null"
 
-#: access/gin/ginscan.c:401
+#: access/gin/ginscan.c:403
 #, c-format
 msgid "To fix this, do REINDEX INDEX \"%s\"."
 msgstr "Per correggere questo problema esegui REINDEX INDEX \"%s\"."
 
-#: access/gist/gist.c:610 access/gist/gistvacuum.c:266
+#: access/gist/gist.c:624 access/gist/gistvacuum.c:266
 #, c-format
 msgid "index \"%s\" contains an inner tuple marked as invalid"
 msgstr "l'indice \"%s\" contiene una tupla interna marcata come invalida"
 
-#: access/gist/gist.c:612 access/gist/gistvacuum.c:268
+#: access/gist/gist.c:626 access/gist/gistvacuum.c:268
 #, c-format
 msgid "This is caused by an incomplete page split at crash recovery before upgrading to PostgreSQL 9.1."
 msgstr "Ciò è causato da una separazione di pagina incompleta al ripristino del crash prima dell'aggiornamento a PostgreSQL 9.1."
 
-#: access/gist/gist.c:613 access/gist/gistutil.c:693
+#: access/gist/gist.c:627 access/gist/gistutil.c:693
 #: access/gist/gistutil.c:704 access/gist/gistvacuum.c:269
 #: access/hash/hashutil.c:172 access/hash/hashutil.c:183
 #: access/hash/hashutil.c:195 access/hash/hashutil.c:216
-#: access/nbtree/nbtpage.c:508 access/nbtree/nbtpage.c:519
+#: access/nbtree/nbtpage.c:509 access/nbtree/nbtpage.c:520
 #, c-format
 msgid "Please REINDEX it."
 msgstr "Si richiede l'esecuzione di REINDEX."
@@ -343,7 +406,7 @@ msgstr "valore non valido per l'opzione \"buffering\""
 msgid "Valid values are \"on\", \"off\", and \"auto\"."
 msgstr "I valori validi sono \"on\", \"off\" ed \"auto\"."
 
-#: access/gist/gistbuildbuffers.c:780 utils/sort/logtape.c:213
+#: access/gist/gistbuildbuffers.c:780 utils/sort/logtape.c:212
 #, c-format
 msgid "could not write block %ld of temporary file: %m"
 msgstr "scrittura del blocco %ld del file temporaneo fallita: %m"
@@ -359,24 +422,24 @@ msgid "The index is not optimal. To optimize it, contact a developer, or try to
 msgstr "L'indice non è ottimale. Per ottimizzarlo si contatti uno sviluppatore o si usi la colonna ponendola in seconda posizione nel comando CREATE INDEX."
 
 #: access/gist/gistutil.c:690 access/hash/hashutil.c:169
-#: access/nbtree/nbtpage.c:505
+#: access/nbtree/nbtpage.c:506
 #, c-format
 msgid "index \"%s\" contains unexpected zero page at block %u"
 msgstr "l'indice \"%s\" contiene una pagina inaspettata completamente a zero al blocco %u"
 
 #: access/gist/gistutil.c:701 access/hash/hashutil.c:180
-#: access/hash/hashutil.c:192 access/nbtree/nbtpage.c:516
+#: access/hash/hashutil.c:192 access/nbtree/nbtpage.c:517
 #, c-format
 msgid "index \"%s\" contains corrupted page at block %u"
 msgstr "l'indice \"%s\" contiene una pagina corrotta al blocco %u"
 
 #: access/hash/hashinsert.c:68
 #, c-format
-msgid "index row size %lu exceeds hash maximum %lu"
-msgstr "la dimensione %lu della riga dell'indice eccede il massimo %lu dello hash"
+msgid "index row size %zu exceeds hash maximum %zu"
+msgstr "la dimensione %zu della riga dell'indice supera il massimo dell'hash %zu"
 
-#: access/hash/hashinsert.c:71 access/spgist/spgdoinsert.c:1892
-#: access/spgist/spgutils.c:667
+#: access/hash/hashinsert.c:70 access/spgist/spgdoinsert.c:1884
+#: access/spgist/spgutils.c:666
 #, c-format
 msgid "Values larger than a buffer page cannot be indexed."
 msgstr "Non si possono indicizzare valori più grandi di una pagina di buffer."
@@ -401,58 +464,133 @@ msgstr "l'indice \"%s\" non è un indice hash"
 msgid "index \"%s\" has wrong hash version"
 msgstr "l'indice \"%s\" ha una versione errata dell'hash"
 
-#: access/heap/heapam.c:1197 access/heap/heapam.c:1225
-#: access/heap/heapam.c:1257 catalog/aclchk.c:1742
+#: access/heap/heapam.c:1200 access/heap/heapam.c:1228
+#: access/heap/heapam.c:1260 catalog/aclchk.c:1742
 #, c-format
 msgid "\"%s\" is an index"
 msgstr "\"%s\" è un indice"
 
-#: access/heap/heapam.c:1202 access/heap/heapam.c:1230
-#: access/heap/heapam.c:1262 catalog/aclchk.c:1749 commands/tablecmds.c:8208
-#: commands/tablecmds.c:10529
+#: access/heap/heapam.c:1205 access/heap/heapam.c:1233
+#: access/heap/heapam.c:1265 catalog/aclchk.c:1749 commands/tablecmds.c:8495
+#: commands/tablecmds.c:11279
 #, c-format
 msgid "\"%s\" is a composite type"
 msgstr "\"%s\" è un tipo composito"
 
-#: access/heap/heapam.c:4017 access/heap/heapam.c:4229
-#: access/heap/heapam.c:4284
+#: access/heap/heapam.c:4224 access/heap/heapam.c:4438
+#: access/heap/heapam.c:4495
 #, c-format
 msgid "could not obtain lock on row in relation \"%s\""
 msgstr "lock di riga nella relazione \"%s\" fallito"
 
-#: access/heap/hio.c:240 access/heap/rewriteheap.c:603
+#: access/heap/hio.c:240 access/heap/rewriteheap.c:666
 #, c-format
-msgid "row is too big: size %lu, maximum size %lu"
-msgstr "riga troppo grande: la dimensione è %lu mentre il massimo è %lu"
+msgid "row is too big: size %zu, maximum size %zu"
+msgstr "la riga è troppo grande: la dimensione %zu supera il massimo %zu"
 
-#: access/index/indexam.c:169 catalog/objectaddress.c:842
-#: commands/indexcmds.c:1738 commands/tablecmds.c:231
-#: commands/tablecmds.c:10520
+#: access/heap/rewriteheap.c:932
+#, c-format
+msgid "could not write to file \"%s\", wrote %d of %d: %m"
+msgstr "scrittura nel file \"%s\" fallita, scritti %d di %d: %m"
+
+#: access/heap/rewriteheap.c:973 access/heap/rewriteheap.c:1185
+#: access/heap/rewriteheap.c:1282 access/transam/timeline.c:406
+#: access/transam/timeline.c:493 access/transam/xlog.c:3179
+#: access/transam/xlog.c:3309 replication/logical/snapbuild.c:1579
+#: replication/slot.c:1032 replication/slot.c:1121 storage/file/fd.c:436
+#: storage/smgr/md.c:966 storage/smgr/md.c:1197 storage/smgr/md.c:1370
+#: utils/misc/guc.c:6610
+#, c-format
+msgid "could not fsync file \"%s\": %m"
+msgstr "fsync del file \"%s\" fallito: %m"
+
+#: access/heap/rewriteheap.c:1028 access/heap/rewriteheap.c:1148
+#: access/transam/timeline.c:314 access/transam/timeline.c:471
+#: access/transam/xlog.c:3135 access/transam/xlog.c:3270
+#: access/transam/xlog.c:9908 access/transam/xlog.c:10223
+#: postmaster/postmaster.c:4210 replication/slot.c:990
+#: storage/file/copydir.c:162 storage/smgr/md.c:304 utils/time/snapmgr.c:976
+#, c-format
+msgid "could not create file \"%s\": %m"
+msgstr "creazione del file \"%s\" fallita: %m"
+
+#: access/heap/rewriteheap.c:1157
+#, c-format
+msgid "could not truncate file \"%s\" to %u: %m"
+msgstr "troncamento del file \"%s\" a %u fallito: %m"
+
+#: access/heap/rewriteheap.c:1164
+#, c-format
+msgid "could not seek to the end of file \"%s\": %m"
+msgstr "spostamento alla fine del file \"%s\" fallito: %m"
+
+#: access/heap/rewriteheap.c:1175 access/transam/timeline.c:366
+#: access/transam/timeline.c:400 access/transam/timeline.c:487
+#: access/transam/xlog.c:3170 access/transam/xlog.c:3302
+#: postmaster/postmaster.c:4220 postmaster/postmaster.c:4230
+#: replication/logical/snapbuild.c:1563 replication/slot.c:1018
+#: storage/file/copydir.c:187 utils/init/miscinit.c:1057
+#: utils/init/miscinit.c:1066 utils/init/miscinit.c:1073 utils/misc/guc.c:8279
+#: utils/misc/guc.c:8293 utils/time/snapmgr.c:981 utils/time/snapmgr.c:988
+#, c-format
+msgid "could not write to file \"%s\": %m"
+msgstr "scrittura nel file \"%s\" fallita: %m"
+
+#: access/heap/rewriteheap.c:1258 replication/logical/reorderbuffer.c:2353
+#: replication/logical/reorderbuffer.c:2410
+#: replication/logical/snapbuild.c:1509 replication/logical/snapbuild.c:1880
+#: replication/slot.c:1095
+#, c-format
+msgid "could not unlink file \"%s\": %m"
+msgstr "eliminazione del file \"%s\" fallita: %m"
+
+#: access/heap/rewriteheap.c:1272 access/transam/timeline.c:110
+#: access/transam/timeline.c:235 access/transam/timeline.c:333
+#: access/transam/xlog.c:3111 access/transam/xlog.c:3218
+#: access/transam/xlog.c:3255 access/transam/xlog.c:3530
+#: access/transam/xlog.c:3608 replication/basebackup.c:458
+#: replication/basebackup.c:1167 replication/logical/logicalfuncs.c:152
+#: replication/logical/reorderbuffer.c:1966
+#: replication/logical/reorderbuffer.c:2173
+#: replication/logical/reorderbuffer.c:2802
+#: replication/logical/snapbuild.c:1556 replication/logical/snapbuild.c:1640
+#: replication/slot.c:1110 replication/walsender.c:458
+#: replication/walsender.c:2094 storage/file/copydir.c:155
+#: storage/file/fd.c:422 storage/smgr/md.c:586 storage/smgr/md.c:844
+#: utils/error/elog.c:1797 utils/init/miscinit.c:992
+#: utils/init/miscinit.c:1121
+#, c-format
+msgid "could not open file \"%s\": %m"
+msgstr "apertura del file \"%s\" fallita: %m"
+
+#: access/index/indexam.c:172 catalog/objectaddress.c:855
+#: commands/indexcmds.c:1725 commands/tablecmds.c:232
+#: commands/tablecmds.c:11270
 #, c-format
 msgid "\"%s\" is not an index"
 msgstr "\"%s\" non è un indice"
 
-#: access/nbtree/nbtinsert.c:392
+#: access/nbtree/nbtinsert.c:396
 #, c-format
 msgid "duplicate key value violates unique constraint \"%s\""
 msgstr "un valore chiave duplicato viola il vincolo univoco \"%s\""
 
-#: access/nbtree/nbtinsert.c:394
+#: access/nbtree/nbtinsert.c:398
 #, c-format
 msgid "Key %s already exists."
 msgstr "La chiave %s esiste già."
 
-#: access/nbtree/nbtinsert.c:462
+#: access/nbtree/nbtinsert.c:466
 #, c-format
 msgid "failed to re-find tuple within index \"%s\""
 msgstr "non ho ritrovato la tupla nell'indice \"%s\""
 
-#: access/nbtree/nbtinsert.c:464
+#: access/nbtree/nbtinsert.c:468
 #, c-format
 msgid "This may be because of a non-immutable index expression."
 msgstr "Ciò potrebbe essere causato da un'espressione dell'indice non immutabile."
 
-#: access/nbtree/nbtinsert.c:544 access/nbtree/nbtsort.c:489
+#: access/nbtree/nbtinsert.c:548 access/nbtree/nbtsort.c:488
 #, c-format
 msgid ""
 "Values larger than 1/3 of a buffer page cannot be indexed.\n"
@@ -461,30 +599,40 @@ msgstr ""
 "Non si possono indicizzare valori più grandi di 1/3 di pagina di buffer.\n"
 "Si consiglia un indice funzionale su un hash MD5 del valore o l'uso del full text indexing."
 
-#: access/nbtree/nbtpage.c:159 access/nbtree/nbtpage.c:361
-#: access/nbtree/nbtpage.c:448 parser/parse_utilcmd.c:1625
+#: access/nbtree/nbtpage.c:166 access/nbtree/nbtpage.c:362
+#: access/nbtree/nbtpage.c:449 parser/parse_utilcmd.c:1620
 #, c-format
 msgid "index \"%s\" is not a btree"
 msgstr "l'indice \"%s\" non è un btree"
 
-#: access/nbtree/nbtpage.c:165 access/nbtree/nbtpage.c:367
-#: access/nbtree/nbtpage.c:454
+#: access/nbtree/nbtpage.c:172 access/nbtree/nbtpage.c:368
+#: access/nbtree/nbtpage.c:455
 #, c-format
 msgid "version mismatch in index \"%s\": file version %d, code version %d"
 msgstr "le versioni non corrispondono per l'indice \"%s\": la versione sul file è %d, quella del codice %d"
 
-#: access/spgist/spgutils.c:664
+#: access/nbtree/nbtpage.c:1187
+#, c-format
+msgid "index \"%s\" contains a half-dead internal page"
+msgstr "l'indice \"%s\" contiene una pagina interna mezza morta"
+
+#: access/nbtree/nbtpage.c:1189
+#, c-format
+msgid "This can be caused by an interrupt VACUUM in version 9.3 or older, before upgrade. Please REINDEX it."
+msgstr "Ciò può essere stato causato da un VACUUM interrotto nella versione 9.3 o precedenti, prima di aggiornare. Si consiglia un REINDEX."
+
+#: access/spgist/spgutils.c:663
 #, c-format
-msgid "SP-GiST inner tuple size %lu exceeds maximum %lu"
-msgstr "la dimensione %lu della tupla interna dell'SP-GiST eccede il massimo %lu"
+msgid "SP-GiST inner tuple size %zu exceeds maximum %zu"
+msgstr "La dimensione %zu della tupla interna SP-GiST supera il massimo %zu"
 
-#: access/transam/multixact.c:946
+#: access/transam/multixact.c:990
 #, c-format
 msgid "database is not accepting commands that generate new MultiXactIds to avoid wraparound data loss in database \"%s\""
 msgstr "il database non sta accettando comandi che generano nuovi MultiXactIds per evitare perdite di dati per wraparound nel database \"%s\""
 
-#: access/transam/multixact.c:948 access/transam/multixact.c:955
-#: access/transam/multixact.c:970 access/transam/multixact.c:979
+#: access/transam/multixact.c:992 access/transam/multixact.c:999
+#: access/transam/multixact.c:1014 access/transam/multixact.c:1023
 #, c-format
 msgid ""
 "Execute a database-wide VACUUM in that database.\n"
@@ -493,43 +641,43 @@ msgstr ""
 "Esegui un VACUUM sull'intero database.\n"
 "Potresti anche dover eseguire il commit o il rollback di vecchie transazioni preparate."
 
-#: access/transam/multixact.c:953
+#: access/transam/multixact.c:997
 #, c-format
 msgid "database is not accepting commands that generate new MultiXactIds to avoid wraparound data loss in database with OID %u"
 msgstr "il database non sta accettando comandi che generano nuovi MultiXactIds per evitare perdite di dati per wraparound nel database con OID %u"
 
-#: access/transam/multixact.c:965 access/transam/multixact.c:2153
+#: access/transam/multixact.c:1009 access/transam/multixact.c:2200
 #, c-format
 msgid "database \"%s\" must be vacuumed before %u more MultiXactId is used"
 msgid_plural "database \"%s\" must be vacuumed before %u more MultiXactIds are used"
 msgstr[0] "il database \"%s\" deve ricevere un vacuum prima che altri %u MultiXactIds siano usati"
 msgstr[1] "il database \"%s\" deve ricevere un vacuum prima che altri %u MultiXactIds siano usati"
 
-#: access/transam/multixact.c:974 access/transam/multixact.c:2162
+#: access/transam/multixact.c:1018 access/transam/multixact.c:2209
 #, c-format
 msgid "database with OID %u must be vacuumed before %u more MultiXactId is used"
 msgid_plural "database with OID %u must be vacuumed before %u more MultiXactIds are used"
 msgstr[0] "il database con OID %u deve ricevere un vacuum prima che altri %u MultiXactIds siano usati"
 msgstr[1] "il database con OID %u deve ricevere un vacuum prima che altri %u MultiXactIds siano usati"
 
-#: access/transam/multixact.c:1125
+#: access/transam/multixact.c:1169
 #, c-format
 msgid "MultiXactId %u does no longer exist -- apparent wraparound"
 msgstr "il MultiXactId %u non esiste più -- sembra ci sia stato un wraparound"
 
-#: access/transam/multixact.c:1133
+#: access/transam/multixact.c:1177
 #, c-format
 msgid "MultiXactId %u has not been created yet -- apparent wraparound"
 msgstr "il MultiXactId %u non è stato ancora creato -- sembra ci sia stato un wraparound"
 
-#: access/transam/multixact.c:2118
+#: access/transam/multixact.c:2165
 #, c-format
 msgid "MultiXactId wrap limit is %u, limited by database with OID %u"
 msgstr "il limite di wrap di MultiXactId è %u, limitato dal database con OID %u"
 
-#: access/transam/multixact.c:2158 access/transam/multixact.c:2167
+#: access/transam/multixact.c:2205 access/transam/multixact.c:2214
 #: access/transam/varsup.c:137 access/transam/varsup.c:144
-#: access/transam/varsup.c:373 access/transam/varsup.c:380
+#: access/transam/varsup.c:374 access/transam/varsup.c:381
 #, c-format
 msgid ""
 "To avoid a database shutdown, execute a database-wide VACUUM in that database.\n"
@@ -538,7 +686,7 @@ msgstr ""
 "Per evitare lo spegnimento del database, si deve eseguire un VACUUM su tutto il database.\n"
 "Potrebbe essere necessario inoltre effettuare il COMMIT o il ROLLBACK di vecchie transazioni preparate."
 
-#: access/transam/multixact.c:2725
+#: access/transam/multixact.c:2798
 #, c-format
 msgid "invalid MultiXactId: %u"
 msgstr "MultiXactId non valido: %u"
@@ -595,19 +743,6 @@ msgstr "troncamento della directory \"%s\" fallito: probabile wraparound"
 msgid "removing file \"%s\""
 msgstr "cancellazione del file \"%s\""
 
-#: access/transam/timeline.c:110 access/transam/timeline.c:235
-#: access/transam/timeline.c:333 access/transam/xlog.c:2271
-#: access/transam/xlog.c:2384 access/transam/xlog.c:2421
-#: access/transam/xlog.c:2696 access/transam/xlog.c:2774
-#: replication/basebackup.c:390 replication/basebackup.c:1045
-#: replication/walsender.c:368 replication/walsender.c:1332
-#: storage/file/copydir.c:158 storage/file/copydir.c:248 storage/smgr/md.c:587
-#: storage/smgr/md.c:845 utils/error/elog.c:1672 utils/init/miscinit.c:1063
-#: utils/init/miscinit.c:1192
-#, c-format
-msgid "could not open file \"%s\": %m"
-msgstr "apertura del file \"%s\" fallita: %m"
-
 #: access/transam/timeline.c:147 access/transam/timeline.c:152
 #, c-format
 msgid "syntax error in history file: %s"
@@ -643,48 +778,20 @@ msgstr "dati non validi nel file dello storico \"%s\""
 msgid "Timeline IDs must be less than child timeline's ID."
 msgstr "Gli ID della timeline devono avere valori inferiori degli ID della timeline figlia"
 
-#: access/transam/timeline.c:314 access/transam/timeline.c:471
-#: access/transam/xlog.c:2305 access/transam/xlog.c:2436
-#: access/transam/xlog.c:8722 access/transam/xlog.c:9037
-#: postmaster/postmaster.c:4087 storage/file/copydir.c:165
-#: storage/smgr/md.c:305 utils/time/snapmgr.c:861
-#, c-format
-msgid "could not create file \"%s\": %m"
-msgstr "creazione del file \"%s\" fallita: %m"
-
-#: access/transam/timeline.c:345 access/transam/xlog.c:2449
-#: access/transam/xlog.c:8888 access/transam/xlog.c:8901
-#: access/transam/xlog.c:9269 access/transam/xlog.c:9312
-#: access/transam/xlogfuncs.c:596 access/transam/xlogfuncs.c:615
-#: replication/walsender.c:393 storage/file/copydir.c:179
-#: utils/adt/genfile.c:139
+#: access/transam/timeline.c:345 access/transam/xlog.c:3283
+#: access/transam/xlog.c:10074 access/transam/xlog.c:10087
+#: access/transam/xlog.c:10455 access/transam/xlog.c:10498
+#: access/transam/xlogfuncs.c:473 access/transam/xlogfuncs.c:492
+#: replication/logical/reorderbuffer.c:2820 replication/walsender.c:483
+#: storage/file/copydir.c:176 utils/adt/genfile.c:139
 #, c-format
 msgid "could not read file \"%s\": %m"
 msgstr "lettura de file \"%s\" fallita: %m"
 
-#: access/transam/timeline.c:366 access/transam/timeline.c:400
-#: access/transam/timeline.c:487 access/transam/xlog.c:2335
-#: access/transam/xlog.c:2468 postmaster/postmaster.c:4097
-#: postmaster/postmaster.c:4107 storage/file/copydir.c:190
-#: utils/init/miscinit.c:1128 utils/init/miscinit.c:1137
-#: utils/init/miscinit.c:1144 utils/misc/guc.c:7596 utils/misc/guc.c:7610
-#: utils/time/snapmgr.c:866 utils/time/snapmgr.c:873
-#, c-format
-msgid "could not write to file \"%s\": %m"
-msgstr "scrittura nel file \"%s\" fallita: %m"
-
-#: access/transam/timeline.c:406 access/transam/timeline.c:493
-#: access/transam/xlog.c:2345 access/transam/xlog.c:2475
-#: storage/file/copydir.c:262 storage/smgr/md.c:967 storage/smgr/md.c:1198
-#: storage/smgr/md.c:1371
-#, c-format
-msgid "could not fsync file \"%s\": %m"
-msgstr "fsync del file \"%s\" fallito: %m"
-
 #: access/transam/timeline.c:411 access/transam/timeline.c:498
-#: access/transam/xlog.c:2351 access/transam/xlog.c:2480
-#: access/transam/xlogfuncs.c:621 commands/copy.c:1469
-#: storage/file/copydir.c:204
+#: access/transam/xlog.c:3185 access/transam/xlog.c:3314
+#: access/transam/xlogfuncs.c:498 commands/copy.c:1518
+#: storage/file/copydir.c:201
 #, c-format
 msgid "could not close file \"%s\": %m"
 msgstr "chiusura del file \"%s\" fallita: %m"
@@ -695,10 +802,11 @@ msgid "could not link file \"%s\" to \"%s\": %m"
 msgstr "creazione del collegamento il file \"%s\" a \"%s\" fallita: %m"
 
 #: access/transam/timeline.c:435 access/transam/timeline.c:522
-#: access/transam/xlog.c:4474 access/transam/xlog.c:5359
-#: access/transam/xlogarchive.c:457 access/transam/xlogarchive.c:474
-#: access/transam/xlogarchive.c:581 postmaster/pgarch.c:756
-#: utils/time/snapmgr.c:884
+#: access/transam/xlog.c:5399 access/transam/xlog.c:6492
+#: access/transam/xlogarchive.c:458 access/transam/xlogarchive.c:475
+#: access/transam/xlogarchive.c:582 postmaster/pgarch.c:759
+#: replication/logical/snapbuild.c:1593 replication/slot.c:933
+#: utils/time/snapmgr.c:999
 #, c-format
 msgid "could not rename file \"%s\" to \"%s\": %m"
 msgstr "non è stato possibile rinominare il file \"%s\" in \"%s\": %m"
@@ -708,156 +816,156 @@ msgstr "non è stato possibile rinominare il file \"%s\" in \"%s\": %m"
 msgid "requested timeline %u is not in this server's history"
 msgstr "la timeline richiesta %u non è nella storia di questo server"
 
-#: access/transam/twophase.c:253
+#: access/transam/twophase.c:330
 #, c-format
 msgid "transaction identifier \"%s\" is too long"
 msgstr "l'identificativo di transazione \"%s\" è troppo lungo"
 
-#: access/transam/twophase.c:260
+#: access/transam/twophase.c:337
 #, c-format
 msgid "prepared transactions are disabled"
 msgstr "le transazione preparate sono disabilitate"
 
-#: access/transam/twophase.c:261
+#: access/transam/twophase.c:338
 #, c-format
 msgid "Set max_prepared_transactions to a nonzero value."
 msgstr "Imposta max_prepared_transactions ad un valore non nullo."
 
-#: access/transam/twophase.c:294
+#: access/transam/twophase.c:357
 #, c-format
 msgid "transaction identifier \"%s\" is already in use"
 msgstr "l'identificativo di transazione \"%s\" è già in uso"
 
-#: access/transam/twophase.c:303
+#: access/transam/twophase.c:366
 #, c-format
 msgid "maximum number of prepared transactions reached"
 msgstr "è stato raggiunto il numero massimo di transazioni preparate"
 
-#: access/transam/twophase.c:304
+#: access/transam/twophase.c:367
 #, c-format
 msgid "Increase max_prepared_transactions (currently %d)."
 msgstr "Incrementa il valore di max_prepared_transactions (il valore attuale è %d)"
 
-#: access/transam/twophase.c:431
+#: access/transam/twophase.c:505
 #, c-format
 msgid "prepared transaction with identifier \"%s\" is busy"
 msgstr "la transazione preparata con identificativo \"%s\" è in uso"
 
-#: access/transam/twophase.c:439
+#: access/transam/twophase.c:511
 #, c-format
 msgid "permission denied to finish prepared transaction"
 msgstr "non è consentito portare a termine la transazione preparata"
 
-#: access/transam/twophase.c:440
+#: access/transam/twophase.c:512
 #, c-format
 msgid "Must be superuser or the user that prepared the transaction."
 msgstr "È consentito solo a un superutente o all'utente che ha preparato la transazione."
 
-#: access/transam/twophase.c:451
+#: access/transam/twophase.c:523
 #, c-format
 msgid "prepared transaction belongs to another database"
 msgstr "la transazione preparata appartiene ad un altro database"
 
-#: access/transam/twophase.c:452
+#: access/transam/twophase.c:524
 #, c-format
 msgid "Connect to the database where the transaction was prepared to finish it."
 msgstr "Connettersi al database in cui la transazione è stata preparata per portarla a termine."
 
-#: access/transam/twophase.c:466
+#: access/transam/twophase.c:539
 #, c-format
 msgid "prepared transaction with identifier \"%s\" does not exist"
 msgstr "la transazione preparata con identificativo \"%s\" non esiste"
 
-#: access/transam/twophase.c:969
+#: access/transam/twophase.c:1042
 #, c-format
 msgid "two-phase state file maximum length exceeded"
 msgstr "è stata superata la lunghezza massima del file dello stato a due fasi"
 
-#: access/transam/twophase.c:982
+#: access/transam/twophase.c:1055
 #, c-format
 msgid "could not create two-phase state file \"%s\": %m"
 msgstr "creazione del file dello stato a due fasi \"%s\" fallito: %m"
 
-#: access/transam/twophase.c:996 access/transam/twophase.c:1013
-#: access/transam/twophase.c:1062 access/transam/twophase.c:1482
-#: access/transam/twophase.c:1489
+#: access/transam/twophase.c:1069 access/transam/twophase.c:1086
+#: access/transam/twophase.c:1135 access/transam/twophase.c:1564
+#: access/transam/twophase.c:1571
 #, c-format
 msgid "could not write two-phase state file: %m"
 msgstr "scrittura nel file dello stato a due fasi fallito: %m"
 
-#: access/transam/twophase.c:1022
+#: access/transam/twophase.c:1095
 #, c-format
 msgid "could not seek in two-phase state file: %m"
 msgstr "spostamento nel file dello stato a due fasi %m fallito"
 
-#: access/transam/twophase.c:1068 access/transam/twophase.c:1507
+#: access/transam/twophase.c:1141 access/transam/twophase.c:1589
 #, c-format
 msgid "could not close two-phase state file: %m"
 msgstr "chiusura del file dello stato a due fasi fallita: %m"
 
-#: access/transam/twophase.c:1148 access/transam/twophase.c:1588
+#: access/transam/twophase.c:1228 access/transam/twophase.c:1670
 #, c-format
 msgid "could not open two-phase state file \"%s\": %m"
 msgstr "apertura del file dello stato a due fasi \"%s\" fallita: %m"
 
-#: access/transam/twophase.c:1165
+#: access/transam/twophase.c:1245
 #, c-format
 msgid "could not stat two-phase state file \"%s\": %m"
 msgstr "non è stato possibile ottenere informazioni sul file dello stato a due fasi \"%s\": %m"
 
-#: access/transam/twophase.c:1197
+#: access/transam/twophase.c:1277
 #, c-format
 msgid "could not read two-phase state file \"%s\": %m"
 msgstr "lettura del file dello stato a due fasi \"%s\" fallita: %m"
 
-#: access/transam/twophase.c:1293
+#: access/transam/twophase.c:1373
 #, c-format
 msgid "two-phase state file for transaction %u is corrupt"
 msgstr "il file dello stato a due fasi per la transazione %u è corrotto"
 
-#: access/transam/twophase.c:1444
+#: access/transam/twophase.c:1526
 #, c-format
 msgid "could not remove two-phase state file \"%s\": %m"
 msgstr "rimozione del file dello stato a due fasi \"%s\" fallita: %m"
 
-#: access/transam/twophase.c:1473
+#: access/transam/twophase.c:1555
 #, c-format
 msgid "could not recreate two-phase state file \"%s\": %m"
 msgstr "ricreazione del file dello stato a due fasi \"%s\" fallita: %m"
 
-#: access/transam/twophase.c:1501
+#: access/transam/twophase.c:1583
 #, c-format
 msgid "could not fsync two-phase state file: %m"
 msgstr "fsync del file dello stato a due fasi: %m"
 
-#: access/transam/twophase.c:1597
+#: access/transam/twophase.c:1679
 #, c-format
 msgid "could not fsync two-phase state file \"%s\": %m"
 msgstr "fsync del file dello stato a due fasi \"%s\" fallito: %m"
 
-#: access/transam/twophase.c:1604
+#: access/transam/twophase.c:1686
 #, c-format
 msgid "could not close two-phase state file \"%s\": %m"
 msgstr "chiusura del file dello stato a due fasi \"%s\" fallita: %m"
 
-#: access/transam/twophase.c:1669
+#: access/transam/twophase.c:1751
 #, c-format
 msgid "removing future two-phase state file \"%s\""
 msgstr "rimozione del file dello stato a due fasi nel futuro \"%s\""
 
-#: access/transam/twophase.c:1685 access/transam/twophase.c:1696
-#: access/transam/twophase.c:1815 access/transam/twophase.c:1826
-#: access/transam/twophase.c:1899
+#: access/transam/twophase.c:1767 access/transam/twophase.c:1778
+#: access/transam/twophase.c:1897 access/transam/twophase.c:1908
+#: access/transam/twophase.c:1981
 #, c-format
 msgid "removing corrupt two-phase state file \"%s\""
 msgstr "rimozione del file dello stato a due fasi corrotto \"%s\""
 
-#: access/transam/twophase.c:1804 access/transam/twophase.c:1888
+#: access/transam/twophase.c:1886 access/transam/twophase.c:1970
 #, c-format
 msgid "removing stale two-phase state file \"%s\""
 msgstr "rimozione del file dello stato a due fasi obsoleto \"%s\""
 
-#: access/transam/twophase.c:1906
+#: access/transam/twophase.c:1988
 #, c-format
 msgid "recovering prepared transaction %u"
 msgstr "recupero della transazione preparata %u"
@@ -870,10 +978,10 @@ msgstr "il database non accetta comandi per evitare perdita di dati per wraparou
 #: access/transam/varsup.c:117 access/transam/varsup.c:124
 #, c-format
 msgid ""
-"Stop the postmaster and use a standalone backend to vacuum that database.\n"
+"Stop the postmaster and vacuum that database in single-user mode.\n"
 "You might also need to commit or roll back old prepared transactions."
 msgstr ""
-"Arresta il processo postmaster ed utilizza un backend autonomo per effettuare il VACUUM sul database.\n"
+"Arresta il processo postmaster ed effettua un VACUUM su quel database in modalità a singolo utente.\n"
 "Potrebbe essere necessario inoltre effettuare il COMMIT o il ROLLBACK di vecchie transazioni preparate."
 
 #: access/transam/varsup.c:122
@@ -881,1092 +989,1123 @@ msgstr ""
 msgid "database is not accepting commands to avoid wraparound data loss in database with OID %u"
 msgstr "il database non accetta comandi per evitare perdita di dati per wraparound nel database con OID %u"
 
-#: access/transam/varsup.c:134 access/transam/varsup.c:370
+#: access/transam/varsup.c:134 access/transam/varsup.c:371
 #, c-format
 msgid "database \"%s\" must be vacuumed within %u transactions"
 msgstr "è necessario eseguire il VACUUM sul database \"%s\" entro %u transazioni"
 
-#: access/transam/varsup.c:141 access/transam/varsup.c:377
+#: access/transam/varsup.c:141 access/transam/varsup.c:378
 #, c-format
 msgid "database with OID %u must be vacuumed within %u transactions"
 msgstr "è necessario eseguire il VACUUM sul database con OID %u entro %u transazioni"
 
-#: access/transam/varsup.c:335
+#: access/transam/varsup.c:336
 #, c-format
 msgid "transaction ID wrap limit is %u, limited by database with OID %u"
 msgstr "il limite di sovrascrittura degli ID di transazione è %u, definito dal database con OID %u"
 
-#: access/transam/xact.c:776
+#: access/transam/xact.c:814
 #, c-format
-msgid "cannot have more than 2^32-1 commands in a transaction"
-msgstr "non è possibile avere più di 2^32-1 comandi in una singola transazione"
+msgid "cannot have more than 2^32-2 commands in a transaction"
+msgstr "non è possibile effettuare più di 2^32-2 comandi in una transazione"
 
-#: access/transam/xact.c:1324
+#: access/transam/xact.c:1370
 #, c-format
 msgid "maximum number of committed subtransactions (%d) exceeded"
 msgstr "il numero massimo di sottotransazioni committed (%d) è stato superato"
 
-#: access/transam/xact.c:2104
+#: access/transam/xact.c:2151
 #, c-format
 msgid "cannot PREPARE a transaction that has operated on temporary tables"
 msgstr "non è possibile eseguire PREPARE in una transazione che ha operato su tabelle temporanee"
 
-#: access/transam/xact.c:2114
+#: access/transam/xact.c:2161
 #, c-format
 msgid "cannot PREPARE a transaction that has exported snapshots"
 msgstr "non è possibile eseguire PREPARE in una transazione che ha esportato snapshot"
 
 #. translator: %s represents an SQL statement name
-#: access/transam/xact.c:2939
+#: access/transam/xact.c:3000
 #, c-format
 msgid "%s cannot run inside a transaction block"
 msgstr "non è possibile eseguire %s all'interno di un blocco di transazione"
 
 #  translator: %s represents an SQL statement name
 #. translator: %s represents an SQL statement name
-#: access/transam/xact.c:2949
+#: access/transam/xact.c:3010
 #, c-format
 msgid "%s cannot run inside a subtransaction"
 msgstr "non è possibile eseguire %s all'interno di una sottotransazione"
 
 #. translator: %s represents an SQL statement name
-#: access/transam/xact.c:2959
+#: access/transam/xact.c:3020
 #, c-format
 msgid "%s cannot be executed from a function or multi-command string"
 msgstr "una funzione o una stringa multi-comando non può eseguire %s"
 
 #  translator: %s represents an SQL statement name
 #. translator: %s represents an SQL statement name
-#: access/transam/xact.c:3010
+#: access/transam/xact.c:3091
 #, c-format
 msgid "%s can only be used in transaction blocks"
 msgstr "si può usare %s solo entro blocchi di transazione"
 
-#: access/transam/xact.c:3192
+#: access/transam/xact.c:3274
 #, c-format
 msgid "there is already a transaction in progress"
 msgstr "c'è già una transazione in corso"
 
-#: access/transam/xact.c:3360 access/transam/xact.c:3453
+#: access/transam/xact.c:3442 access/transam/xact.c:3535
 #, c-format
 msgid "there is no transaction in progress"
 msgstr "non c'è alcuna transazione in corso"
 
-#: access/transam/xact.c:3549 access/transam/xact.c:3600
-#: access/transam/xact.c:3606 access/transam/xact.c:3650
-#: access/transam/xact.c:3699 access/transam/xact.c:3705
+#: access/transam/xact.c:3631 access/transam/xact.c:3682
+#: access/transam/xact.c:3688 access/transam/xact.c:3732
+#: access/transam/xact.c:3781 access/transam/xact.c:3787
 #, c-format
 msgid "no such savepoint"
 msgstr "punto di salvataggio inesistente"
 
-#: access/transam/xact.c:4382
+#: access/transam/xact.c:4464
 #, c-format
 msgid "cannot have more than 2^32-1 subtransactions in a transaction"
 msgstr "non è possibile avere più di 2^32-1 comandi in una sottotransazione"
 
-#: access/transam/xlog.c:1616
+#: access/transam/xlog.c:2410
 #, c-format
 msgid "could not seek in log file %s to offset %u: %m"
 msgstr "spostamento nel file di log %s alla posizione %u fallito: %m"
 
-#: access/transam/xlog.c:1633
+#: access/transam/xlog.c:2430
 #, c-format
-msgid "could not write to log file %s at offset %u, length %lu: %m"
-msgstr "scrittura nel file di log %s in posizione %u, lunghezza %lu fallita: %m"
+msgid "could not write to log file %s at offset %u, length %zu: %m"
+msgstr "scrittura nel file di log %s in posizione %u, lunghezza %zu fallita: %m"
 
-#: access/transam/xlog.c:1877
+#: access/transam/xlog.c:2706
 #, c-format
 msgid "updated min recovery point to %X/%X on timeline %u"
 msgstr "punto di recupero minimo aggiornato a %X/%X sulla timeline %u"
 
-#: access/transam/xlog.c:2452
+#: access/transam/xlog.c:3286
 #, c-format
 msgid "not enough data in file \"%s\""
 msgstr "il file \"%s\" non contiene abbastanza dati"
 
-#: access/transam/xlog.c:2571
+#: access/transam/xlog.c:3405
 #, c-format
 msgid "could not link file \"%s\" to \"%s\" (initialization of log file): %m"
 msgstr "collegamento del file \"%s\" a \"%s\" (inizializzazione del file di log) fallito: %m"
 
-#: access/transam/xlog.c:2583
+#: access/transam/xlog.c:3417
 #, c-format
 msgid "could not rename file \"%s\" to \"%s\" (initialization of log file): %m"
 msgstr "non è stato possibile rinominare il file \"%s\" in \"%s\" (inizializzazione del file di log): %m"
 
-#: access/transam/xlog.c:2611
+#: access/transam/xlog.c:3445
 #, c-format
 msgid "could not open transaction log file \"%s\": %m"
 msgstr "apertura del file di log delle transazioni \"%s\" fallita: %m"
 
-#: access/transam/xlog.c:2800
+#: access/transam/xlog.c:3634
 #, c-format
 msgid "could not close log file %s: %m"
 msgstr "chiusura del file di log %s fallita: %m"
 
-#: access/transam/xlog.c:2859 replication/walsender.c:1327
+#: access/transam/xlog.c:3693 replication/logical/logicalfuncs.c:147
+#: replication/walsender.c:2089
 #, c-format
 msgid "requested WAL segment %s has already been removed"
 msgstr "il segmento WAL richiesto %s è stato già rimosso"
 
 # da non tradursi
 # DV: perché? (trovato tradotto, tra l'altro)
-#: access/transam/xlog.c:2916 access/transam/xlog.c:3093
+#: access/transam/xlog.c:3771 access/transam/xlog.c:3948
 #, c-format
 msgid "could not open transaction log directory \"%s\": %m"
 msgstr "apertura della directory dei log delle transazioni \"%s\" fallita: %m"
 
-#: access/transam/xlog.c:2964
+#: access/transam/xlog.c:3819
 #, c-format
 msgid "recycled transaction log file \"%s\""
 msgstr "il file di log delle transazioni \"%s\" è stato riciclato"
 
-#: access/transam/xlog.c:2980
+#: access/transam/xlog.c:3835
 #, c-format
 msgid "removing transaction log file \"%s\""
 msgstr "eliminazione del file di log delle transazioni \"%s\""
 
-#: access/transam/xlog.c:3003
+#: access/transam/xlog.c:3858
 #, c-format
 msgid "could not rename old transaction log file \"%s\": %m"
 msgstr "non è stato possibile rinominare il vecchio file di log delle transazioni \"%s\": %m"
 
-#: access/transam/xlog.c:3015
+#: access/transam/xlog.c:3870
 #, c-format
 msgid "could not remove old transaction log file \"%s\": %m"
 msgstr "chiusura del vecchio file di log delle transazioni \"%s\" fallita: %m"
 
-#: access/transam/xlog.c:3053 access/transam/xlog.c:3063
+#: access/transam/xlog.c:3908 access/transam/xlog.c:3918
 #, c-format
 msgid "required WAL directory \"%s\" does not exist"
 msgstr "la directory dei file WAL \"%s\" necessaria non esiste"
 
-#: access/transam/xlog.c:3069
+#: access/transam/xlog.c:3924
 #, c-format
 msgid "creating missing WAL directory \"%s\""
 msgstr "creazione della directory dei file WAL mancante \"%s\""
 
-#: access/transam/xlog.c:3072
+#: access/transam/xlog.c:3927
 #, c-format
 msgid "could not create missing directory \"%s\": %m"
 msgstr "creazione della directory mancante \"%s\" fallita: %m"
 
-#: access/transam/xlog.c:3106
+#: access/transam/xlog.c:3961
 #, c-format
 msgid "removing transaction log backup history file \"%s\""
 msgstr "rimozione del file storico di backup del log delle transazioni \"%s\""
 
-#: access/transam/xlog.c:3302
+#: access/transam/xlog.c:4157
 #, c-format
 msgid "unexpected timeline ID %u in log segment %s, offset %u"
 msgstr "ID di timeline %u inatteso nel segmento di log %s, offset %u"
 
-#: access/transam/xlog.c:3424
+#: access/transam/xlog.c:4279
 #, c-format
 msgid "new timeline %u is not a child of database system timeline %u"
 msgstr "la nuova timeline %u non è figlia della timeline %u del database"
 
-#: access/transam/xlog.c:3438
+#: access/transam/xlog.c:4293
 #, c-format
 msgid "new timeline %u forked off current database system timeline %u before current recovery point %X/%X"
 msgstr "la nuova timeline %u si è staccata dalla timeline attuale %u prima del punto di recupero corrente %X/%X"
 
-#: access/transam/xlog.c:3457
+#: access/transam/xlog.c:4312
 #, c-format
 msgid "new target timeline is %u"
 msgstr "la nuova timeline di destinazione %u"
 
-#: access/transam/xlog.c:3536
+#: access/transam/xlog.c:4392
 #, c-format
 msgid "could not create control file \"%s\": %m"
 msgstr "creazione del file di controllo \"%s\" fallita: %m"
 
-#: access/transam/xlog.c:3547 access/transam/xlog.c:3772
+#: access/transam/xlog.c:4403 access/transam/xlog.c:4639
 #, c-format
 msgid "could not write to control file: %m"
 msgstr "scrittura nel file di controllo fallita: %m"
 
-#: access/transam/xlog.c:3553 access/transam/xlog.c:3778
+#: access/transam/xlog.c:4409 access/transam/xlog.c:4645
 #, c-format
 msgid "could not fsync control file: %m"
 msgstr "fsync del file di controllo fallito: %m"
 
-#: access/transam/xlog.c:3558 access/transam/xlog.c:3783
+#: access/transam/xlog.c:4414 access/transam/xlog.c:4650
 #, c-format
 msgid "could not close control file: %m"
 msgstr "chiusura del file di controllo fallita: %m"
 
-#: access/transam/xlog.c:3576 access/transam/xlog.c:3761
+#: access/transam/xlog.c:4432 access/transam/xlog.c:4628
 #, c-format
 msgid "could not open control file \"%s\": %m"
 msgstr "apertura del file di controllo \"%s\" fallita: %m"
 
-#: access/transam/xlog.c:3582
+#: access/transam/xlog.c:4438
 #, c-format
 msgid "could not read from control file: %m"
 msgstr "lettura dal file di controllo fallita: %m"
 
-#: access/transam/xlog.c:3595 access/transam/xlog.c:3604
-#: access/transam/xlog.c:3628 access/transam/xlog.c:3635
-#: access/transam/xlog.c:3642 access/transam/xlog.c:3647
-#: access/transam/xlog.c:3654 access/transam/xlog.c:3661
-#: access/transam/xlog.c:3668 access/transam/xlog.c:3675
-#: access/transam/xlog.c:3682 access/transam/xlog.c:3689
-#: access/transam/xlog.c:3698 access/transam/xlog.c:3705
-#: access/transam/xlog.c:3714 access/transam/xlog.c:3721
-#: access/transam/xlog.c:3730 access/transam/xlog.c:3737
-#: utils/init/miscinit.c:1210
+#: access/transam/xlog.c:4451 access/transam/xlog.c:4460
+#: access/transam/xlog.c:4484 access/transam/xlog.c:4491
+#: access/transam/xlog.c:4498 access/transam/xlog.c:4503
+#: access/transam/xlog.c:4510 access/transam/xlog.c:4517
+#: access/transam/xlog.c:4524 access/transam/xlog.c:4531
+#: access/transam/xlog.c:4538 access/transam/xlog.c:4545
+#: access/transam/xlog.c:4552 access/transam/xlog.c:4561
+#: access/transam/xlog.c:4568 access/transam/xlog.c:4577
+#: access/transam/xlog.c:4584 access/transam/xlog.c:4593
+#: access/transam/xlog.c:4600 utils/init/miscinit.c:1139
 #, c-format
 msgid "database files are incompatible with server"
 msgstr "i file del database sono incompatibili col server"
 
-#: access/transam/xlog.c:3596
+#: access/transam/xlog.c:4452
 #, c-format
 msgid "The database cluster was initialized with PG_CONTROL_VERSION %d (0x%08x), but the server was compiled with PG_CONTROL_VERSION %d (0x%08x)."
 msgstr "Il cluster di database è stato inizializzato con PG_CONTROL_VERSION %d (0x%08x), ma il server è stato compilato con PG_CONTROL_VERSION %d (0x%08x)."
 
-#: access/transam/xlog.c:3600
+#: access/transam/xlog.c:4456
 #, c-format
 msgid "This could be a problem of mismatched byte ordering.  It looks like you need to initdb."
 msgstr "Questo potrebbe essere un problema di ordinamento di byte che non combacia. Sembra sia necessario eseguire initdb."
 
-#: access/transam/xlog.c:3605
+#: access/transam/xlog.c:4461
 #, c-format
 msgid "The database cluster was initialized with PG_CONTROL_VERSION %d, but the server was compiled with PG_CONTROL_VERSION %d."
 msgstr "Il cluster di database è stato inizializzato con PG_CONTROL_VERSION %d, ma il server è stato compilato con PG_CONTROL_VERSION %d."
 
-#: access/transam/xlog.c:3608 access/transam/xlog.c:3632
-#: access/transam/xlog.c:3639 access/transam/xlog.c:3644
+#: access/transam/xlog.c:4464 access/transam/xlog.c:4488
+#: access/transam/xlog.c:4495 access/transam/xlog.c:4500
 #, c-format
 msgid "It looks like you need to initdb."
 msgstr "Sembra sia necessario eseguire initdb."
 
-#: access/transam/xlog.c:3619
+#: access/transam/xlog.c:4475
 #, c-format
 msgid "incorrect checksum in control file"
 msgstr "il checksum nel file di controllo non è corretto"
 
-#: access/transam/xlog.c:3629
+#: access/transam/xlog.c:4485
 #, c-format
 msgid "The database cluster was initialized with CATALOG_VERSION_NO %d, but the server was compiled with CATALOG_VERSION_NO %d."
 msgstr "Il cluster di database è stato inizializzato con CATALOG_VERSION_NO %d, ma il server è stato compilato con CATALOG_VERSION_NO %d."
 
-#: access/transam/xlog.c:3636
+#: access/transam/xlog.c:4492
 #, c-format
 msgid "The database cluster was initialized with MAXALIGN %d, but the server was compiled with MAXALIGN %d."
 msgstr "Il cluster di database è stato inizializzato con MAXALIGN %d, ma il server è stato compilato con MAXALIGN %d."
 
-#: access/transam/xlog.c:3643
+#: access/transam/xlog.c:4499
 #, c-format
 msgid "The database cluster appears to use a different floating-point number format than the server executable."
 msgstr "Il cluster di database sta usando un formato per i numeri in virgola mobile diverso da quello usato dall'eseguibile del server."
 
-#: access/transam/xlog.c:3648
+#: access/transam/xlog.c:4504
 #, c-format
 msgid "The database cluster was initialized with BLCKSZ %d, but the server was compiled with BLCKSZ %d."
 msgstr "Il cluster di database è stato inizializzato con BLCKSZ %d, ma il server è stato compilato con BLCKSZ %d."
 
-#: access/transam/xlog.c:3651 access/transam/xlog.c:3658
-#: access/transam/xlog.c:3665 access/transam/xlog.c:3672
-#: access/transam/xlog.c:3679 access/transam/xlog.c:3686
-#: access/transam/xlog.c:3693 access/transam/xlog.c:3701
-#: access/transam/xlog.c:3708 access/transam/xlog.c:3717
-#: access/transam/xlog.c:3724 access/transam/xlog.c:3733
-#: access/transam/xlog.c:3740
+#: access/transam/xlog.c:4507 access/transam/xlog.c:4514
+#: access/transam/xlog.c:4521 access/transam/xlog.c:4528
+#: access/transam/xlog.c:4535 access/transam/xlog.c:4542
+#: access/transam/xlog.c:4549 access/transam/xlog.c:4556
+#: access/transam/xlog.c:4564 access/transam/xlog.c:4571
+#: access/transam/xlog.c:4580 access/transam/xlog.c:4587
+#: access/transam/xlog.c:4596 access/transam/xlog.c:4603
 #, c-format
 msgid "It looks like you need to recompile or initdb."
 msgstr "Si consiglia di ricompilare il sistema o di eseguire initdb."
 
-#: access/transam/xlog.c:3655
+#: access/transam/xlog.c:4511
 #, c-format
 msgid "The database cluster was initialized with RELSEG_SIZE %d, but the server was compiled with RELSEG_SIZE %d."
 msgstr "Il cluster di database è stato inizializzato con RELSEG_SIZE %d, ma il server è stato compilato con RELSEG_SIZE %d."
 
-#: access/transam/xlog.c:3662
+#: access/transam/xlog.c:4518
 #, c-format
 msgid "The database cluster was initialized with XLOG_BLCKSZ %d, but the server was compiled with XLOG_BLCKSZ %d."
 msgstr "Il cluster di database è stato inizializzato con XLOG_BLOCKSZ %d, ma il server è stato compilato con XLOG_BLOCKSZ %d."
 
-#: access/transam/xlog.c:3669
+#: access/transam/xlog.c:4525
 #, c-format
 msgid "The database cluster was initialized with XLOG_SEG_SIZE %d, but the server was compiled with XLOG_SEG_SIZE %d."
 msgstr "Il cluster di database è stato inizializzato con XLOG_SEG_SIZE %d, ma il server è stato compilato con XLOG_SEG_SIZE %d."
 
-#: access/transam/xlog.c:3676
+#: access/transam/xlog.c:4532
 #, c-format
 msgid "The database cluster was initialized with NAMEDATALEN %d, but the server was compiled with NAMEDATALEN %d."
 msgstr "Il cluster di database è stato inizializzato con NAMEDATALEN %d, ma il server è stato compilato con NAMEDATALEN %d."
 
-#: access/transam/xlog.c:3683
+#: access/transam/xlog.c:4539
 #, c-format
 msgid "The database cluster was initialized with INDEX_MAX_KEYS %d, but the server was compiled with INDEX_MAX_KEYS %d."
 msgstr "Il cluster di database è stato inizializzato con INDEX_MAX_KEYS %d, ma il server è stato compilato con INDEX_MAX_KEYS %d."
 
-#: access/transam/xlog.c:3690
+#: access/transam/xlog.c:4546
 #, c-format
 msgid "The database cluster was initialized with TOAST_MAX_CHUNK_SIZE %d, but the server was compiled with TOAST_MAX_CHUNK_SIZE %d."
 msgstr "Il cluster di database è stato inizializzato con TOAST_MAX_CHUNK_SIZE %d, ma il server è stato compilato con TOAST_MAX_CHUNK_SIZE %d."
 
-#: access/transam/xlog.c:3699
+#: access/transam/xlog.c:4553
+#, c-format
+msgid "The database cluster was initialized with LOBLKSIZE %d, but the server was compiled with LOBLKSIZE %d."
+msgstr "Il cluster di database è stato inizializzato con LOBLKSIZE %d, ma il server è stato compilato con LOBLKSIZE %d."
+
+#: access/transam/xlog.c:4562
 #, c-format
 msgid "The database cluster was initialized without HAVE_INT64_TIMESTAMP but the server was compiled with HAVE_INT64_TIMESTAMP."
 msgstr "Il cluster di database è stato inizializzato senza HAVE_INT64_TIMESTAMP ma il server è stato compilato con HAVE_INT64_TIMESTAMP."
 
-#: access/transam/xlog.c:3706
+#: access/transam/xlog.c:4569
 #, c-format
 msgid "The database cluster was initialized with HAVE_INT64_TIMESTAMP but the server was compiled without HAVE_INT64_TIMESTAMP."
 msgstr "Il cluster di database è stato inizializzato con HAVE_INT64_TIMESTAMP ma il server è stato compilato senza HAVE_INT64_TIMESTAMP."
 
-#: access/transam/xlog.c:3715
+#: access/transam/xlog.c:4578
 #, c-format
 msgid "The database cluster was initialized without USE_FLOAT4_BYVAL but the server was compiled with USE_FLOAT4_BYVAL."
 msgstr "Il cluster di database è stato inizializzato senza USE_FLOAT4_BYVAL, ma il server è stato compilato con USE_FLOAT4_BYVAL."
 
-#: access/transam/xlog.c:3722
+#: access/transam/xlog.c:4585
 #, c-format
 msgid "The database cluster was initialized with USE_FLOAT4_BYVAL but the server was compiled without USE_FLOAT4_BYVAL."
 msgstr "Il cluster di database è stato inizializzato con USE_FLOAT4_BYVAL, ma il server è stato compilato senza USE_FLOAT4_BYVAL."
 
-#: access/transam/xlog.c:3731
+#: access/transam/xlog.c:4594
 #, c-format
 msgid "The database cluster was initialized without USE_FLOAT8_BYVAL but the server was compiled with USE_FLOAT8_BYVAL."
 msgstr "Il cluster di database è stato inizializzato senza USE_FLOAT8_BYVAL, ma il server è stato compilato con USE_FLOAT8_BYVAL."
 
-#: access/transam/xlog.c:3738
+#: access/transam/xlog.c:4601
 #, c-format
 msgid "The database cluster was initialized with USE_FLOAT8_BYVAL but the server was compiled without USE_FLOAT8_BYVAL."
 msgstr "Il cluster di database è stato inizializzato con USE_FLOAT8_BYVAL, ma il server è stato compilato senza USE_FLOAT8_BYVAL."
 
-#: access/transam/xlog.c:4101
+#: access/transam/xlog.c:5002
 #, c-format
 msgid "could not write bootstrap transaction log file: %m"
 msgstr "scrittura nel file di log della transazione di bootstrap fallita: %m"
 
-#: access/transam/xlog.c:4107
+#: access/transam/xlog.c:5008
 #, c-format
 msgid "could not fsync bootstrap transaction log file: %m"
 msgstr "fsync del file di log della transazione di bootstrap fallito: %m"
 
-#: access/transam/xlog.c:4112
+#: access/transam/xlog.c:5013
 #, c-format
 msgid "could not close bootstrap transaction log file: %m"
 msgstr "chiusura del file di log della transazione di bootstrap fallita: %m"
 
-#: access/transam/xlog.c:4181
+#: access/transam/xlog.c:5084
 #, c-format
 msgid "could not open recovery command file \"%s\": %m"
 msgstr "apertura del file di ripristino \"%s\" fallita: %m"
 
-#: access/transam/xlog.c:4221 access/transam/xlog.c:4312
-#: access/transam/xlog.c:4323 commands/extension.c:527
-#: commands/extension.c:535 utils/misc/guc.c:5375
+#: access/transam/xlog.c:5124 access/transam/xlog.c:5215
+#: access/transam/xlog.c:5226 commands/extension.c:527
+#: commands/extension.c:535 utils/misc/guc.c:5380
 #, c-format
 msgid "parameter \"%s\" requires a Boolean value"
 msgstr "il parametro \"%s\" richiede un valore booleano"
 
 # da non tradurre
 # DV: perché (già tradotto peraltro)
-#: access/transam/xlog.c:4237
+#: access/transam/xlog.c:5140
 #, c-format
 msgid "recovery_target_timeline is not a valid number: \"%s\""
 msgstr "recovery_target_timeline non ha un valore numerico valido: \"%s\""
 
-#: access/transam/xlog.c:4253
+#: access/transam/xlog.c:5156
 #, c-format
 msgid "recovery_target_xid is not a valid number: \"%s\""
 msgstr "recovery_target_xid non ha un valore numerico valido: \"%s\""
 
-#: access/transam/xlog.c:4297
+#: access/transam/xlog.c:5187
 #, c-format
 msgid "recovery_target_name is too long (maximum %d characters)"
 msgstr "il recovery_target_name è troppo lungo (massimo %d caratteri)"
 
-#: access/transam/xlog.c:4344
+#: access/transam/xlog.c:5201
+#, c-format
+msgid "invalid recovery_target parameter"
+msgstr "parametro recovery_target non valido"
+
+#: access/transam/xlog.c:5202
+#, c-format
+msgid "The only allowed value is 'immediate'"
+msgstr "Il solo valore permesso è 'immediate'"
+
+#: access/transam/xlog.c:5261
+#, c-format
+msgid "parameter \"%s\" requires a temporal value"
+msgstr "il parametro \"%s\" richiede un valore temporale"
+
+#: access/transam/xlog.c:5263 catalog/dependency.c:970
+#: catalog/dependency.c:971 catalog/dependency.c:977 catalog/dependency.c:978
+#: catalog/dependency.c:989 catalog/dependency.c:990
+#: catalog/objectaddress.c:764 commands/tablecmds.c:763
+#: commands/tablecmds.c:8949 commands/user.c:988 commands/view.c:475
+#: libpq/auth.c:285 port/win32/security.c:51 storage/lmgr/deadlock.c:955
+#: storage/lmgr/proc.c:1184 utils/misc/guc.c:5412 utils/misc/guc.c:5537
+#: utils/misc/guc.c:8856 utils/misc/guc.c:8890 utils/misc/guc.c:8924
+#: utils/misc/guc.c:8958 utils/misc/guc.c:8993
+#, c-format
+msgid "%s"
+msgstr "%s"
+
+#: access/transam/xlog.c:5265
+#, c-format
+msgid "recovery_min_apply_delay = '%s'"
+msgstr "recovery_min_apply_delay = '%s'"
+
+#: access/transam/xlog.c:5269
 #, c-format
 msgid "unrecognized recovery parameter \"%s\""
 msgstr "parametro di ripristino \"%s\" sconosciuto"
 
-#: access/transam/xlog.c:4355
+#: access/transam/xlog.c:5280
 #, c-format
 msgid "recovery command file \"%s\" specified neither primary_conninfo nor restore_command"
 msgstr "il file dei comandi di ripristino \"%s\" non specifica né primary_conninfo né restore_command"
 
-#: access/transam/xlog.c:4357
+#: access/transam/xlog.c:5282
 #, c-format
 msgid "The database server will regularly poll the pg_xlog subdirectory to check for files placed there."
 msgstr "Il server database ispezionerà regolarmente la sottodirectory pg_xlog per controllare se vi vengono aggiunti dei file."
 
-#: access/transam/xlog.c:4363
+#: access/transam/xlog.c:5288
 #, c-format
 msgid "recovery command file \"%s\" must specify restore_command when standby mode is not enabled"
 msgstr "il file dei comandi di ripristino \"%s\" deve specificare restore_command quando la modalità standby non è abilitata"
 
-#: access/transam/xlog.c:4383
+#: access/transam/xlog.c:5308
 #, c-format
 msgid "recovery target timeline %u does not exist"
 msgstr "la timeline destinazione di recupero %u non esiste"
 
-#: access/transam/xlog.c:4478
+#: access/transam/xlog.c:5403
 #, c-format
 msgid "archive recovery complete"
 msgstr "il ripristino dell'archivio è stato completato"
 
-#: access/transam/xlog.c:4603
+#: access/transam/xlog.c:5473 access/transam/xlog.c:5667
 #, c-format
-msgid "recovery stopping after commit of transaction %u, time %s"
-msgstr "il ripristino è stato interrotto dopo il commit della transazione %u alle %s"
+msgid "recovery stopping after reaching consistency"
+msgstr "il ripristino è stato interrotto dopo aver raggiunto la consistenza"
 
-#: access/transam/xlog.c:4608
+#: access/transam/xlog.c:5548
 #, c-format
 msgid "recovery stopping before commit of transaction %u, time %s"
 msgstr "il ripristino è stato interrotto prima del commit della transazione %u, orario %s"
 
-#: access/transam/xlog.c:4616
-#, c-format
-msgid "recovery stopping after abort of transaction %u, time %s"
-msgstr "il ripristino è stato interrotto dopo l'abort della transazione %u alle %s"
-
-#: access/transam/xlog.c:4621
+#: access/transam/xlog.c:5555
 #, c-format
 msgid "recovery stopping before abort of transaction %u, time %s"
 msgstr "il ripristino è stato interrotto prima dell'abort della transazione %u alle %s"
 
-#: access/transam/xlog.c:4630
+#: access/transam/xlog.c:5597
 #, c-format
 msgid "recovery stopping at restore point \"%s\", time %s"
 msgstr "il ripristino è stato interrotto al punto di ripristino \"%s\" alle %s"
 
-#: access/transam/xlog.c:4664
+#: access/transam/xlog.c:5647
+#, c-format
+msgid "recovery stopping after commit of transaction %u, time %s"
+msgstr "il ripristino è stato interrotto dopo il commit della transazione %u alle %s"
+
+#: access/transam/xlog.c:5655
+#, c-format
+msgid "recovery stopping after abort of transaction %u, time %s"
+msgstr "il ripristino è stato interrotto dopo l'abort della transazione %u alle %s"
+
+#: access/transam/xlog.c:5694
 #, c-format
 msgid "recovery has paused"
 msgstr "ripristino in pausa"
 
-#: access/transam/xlog.c:4665
+#: access/transam/xlog.c:5695
 #, c-format
 msgid "Execute pg_xlog_replay_resume() to continue."
 msgstr "Esegui pg_xlog_replay_resume() per continuare."
 
-#: access/transam/xlog.c:4795
+#: access/transam/xlog.c:5910
 #, c-format
 msgid "hot standby is not possible because %s = %d is a lower setting than on the master server (its value was %d)"
 msgstr "L'hot standby non è possibile perché %s = %d è un'impostazione inferiore a quella del server master (il cui valore era %d)"
 
-#: access/transam/xlog.c:4817
+#: access/transam/xlog.c:5932
 #, c-format
 msgid "WAL was generated with wal_level=minimal, data may be missing"
 msgstr "il WAL è stato generato con wal_level=minimal, alcuni dati potrebbero mancare"
 
-#: access/transam/xlog.c:4818
+#: access/transam/xlog.c:5933
 #, c-format
 msgid "This happens if you temporarily set wal_level=minimal without taking a new base backup."
 msgstr "Questo avviene se imposti temporaneamente wal_level=minimal senza effettuare un nuovo backup di base."
 
-#: access/transam/xlog.c:4829
+#: access/transam/xlog.c:5944
 #, c-format
-msgid "hot standby is not possible because wal_level was not set to \"hot_standby\" on the master server"
-msgstr "l'hot standby non è possibile perché il wal_level non è stato impostato a \"hot_standby\" sul server master"
+msgid "hot standby is not possible because wal_level was not set to \"hot_standby\" or higher on the master server"
+msgstr "l'hot standby non è possibile perché il wal_level non è stato impostato a \"hot_standby\" o superiore sul server master"
 
-#: access/transam/xlog.c:4830
+#: access/transam/xlog.c:5945
 #, c-format
 msgid "Either set wal_level to \"hot_standby\" on the master, or turn off hot_standby here."
 msgstr "Puoi impostare il wal_level a \"hot_standby\" sul master, oppure disattivare hot_standby qui."
 
-#: access/transam/xlog.c:4883
+#: access/transam/xlog.c:6000
 #, c-format
 msgid "control file contains invalid data"
 msgstr "il file di controllo contiene dati non validi"
 
-#: access/transam/xlog.c:4889
+#: access/transam/xlog.c:6006
 #, c-format
 msgid "database system was shut down at %s"
 msgstr "il database è stato arrestato alle %s"
 
-#: access/transam/xlog.c:4894
+#: access/transam/xlog.c:6011
 #, c-format
 msgid "database system was shut down in recovery at %s"
 msgstr "il database è stato arrestato durante il ripristino alle %s"
 
-#: access/transam/xlog.c:4898
+#: access/transam/xlog.c:6015
 #, c-format
 msgid "database system shutdown was interrupted; last known up at %s"
 msgstr "l'arresto del database è stato interrotto; l'ultimo segno di vita risale alle %s"
 
-#: access/transam/xlog.c:4902
+#: access/transam/xlog.c:6019
 #, c-format
 msgid "database system was interrupted while in recovery at %s"
 msgstr "il database è stato interrotto alle %s mentre era in fase di ripristino"
 
-#: access/transam/xlog.c:4904
+#: access/transam/xlog.c:6021
 #, c-format
 msgid "This probably means that some data is corrupted and you will have to use the last backup for recovery."
 msgstr "Questo probabilmente significa che alcuni dati sono corrotti e dovrai usare il backup più recente per il ripristino."
 
-#: access/transam/xlog.c:4908
+#: access/transam/xlog.c:6025
 #, c-format
 msgid "database system was interrupted while in recovery at log time %s"
 msgstr "il database è stato interrotto all'orario di log %s mentre era in fase di ripristino"
 
-#: access/transam/xlog.c:4910
+#: access/transam/xlog.c:6027
 #, c-format
 msgid "If this has occurred more than once some data might be corrupted and you might need to choose an earlier recovery target."
 msgstr "Se ciò è avvenuto più di una volta, alcuni dati potrebbero essere corrotti e potresti dover scegliere un obiettivo di ripristino precedente."
 
-#: access/transam/xlog.c:4914
+#: access/transam/xlog.c:6031
 #, c-format
 msgid "database system was interrupted; last known up at %s"
 msgstr "il database è stato interrotto; l'ultimo segno di vita risale alle %s"
 
-#: access/transam/xlog.c:4968
+#: access/transam/xlog.c:6085
 #, c-format
 msgid "entering standby mode"
 msgstr "inizio modalità standby"
 
-#: access/transam/xlog.c:4971
+#: access/transam/xlog.c:6088
 #, c-format
 msgid "starting point-in-time recovery to XID %u"
 msgstr "avvio del ripristino point-in-time allo XID %u"
 
-#: access/transam/xlog.c:4975
+#: access/transam/xlog.c:6092
 #, c-format
 msgid "starting point-in-time recovery to %s"
 msgstr "avvio del ripristino point-in-time alle %s"
 
-#: access/transam/xlog.c:4979
+#: access/transam/xlog.c:6096
 #, c-format
 msgid "starting point-in-time recovery to \"%s\""
 msgstr "avvio del ripristino point-in-time a \"%s\""
 
-#: access/transam/xlog.c:4983
+#: access/transam/xlog.c:6100
 #, c-format
-msgid "starting archive recovery"
-msgstr "avvio del ripristino dell'archivio"
+msgid "starting point-in-time recovery to earliest consistent point"
+msgstr "avvio del ripristino point-in-time al precedente punto consistente"
 
-#: access/transam/xlog.c:4999 commands/sequence.c:1035 lib/stringinfo.c:266
-#: libpq/auth.c:1025 libpq/auth.c:1381 libpq/auth.c:1449 libpq/auth.c:1851
-#: postmaster/postmaster.c:2141 postmaster/postmaster.c:2172
-#: postmaster/postmaster.c:3629 postmaster/postmaster.c:4312
-#: postmaster/postmaster.c:4397 postmaster/postmaster.c:5075
-#: postmaster/postmaster.c:5251 postmaster/postmaster.c:5668
-#: storage/buffer/buf_init.c:154 storage/buffer/localbuf.c:397
-#: storage/file/fd.c:403 storage/file/fd.c:800 storage/file/fd.c:918
-#: storage/file/fd.c:1531 storage/ipc/procarray.c:901
-#: storage/ipc/procarray.c:1341 storage/ipc/procarray.c:1348
-#: storage/ipc/procarray.c:1665 storage/ipc/procarray.c:2155
-#: utils/adt/formatting.c:1524 utils/adt/formatting.c:1644
-#: utils/adt/formatting.c:1765 utils/adt/regexp.c:209 utils/adt/varlena.c:3652
-#: utils/adt/varlena.c:3673 utils/fmgr/dfmgr.c:224 utils/hash/dynahash.c:379
-#: utils/hash/dynahash.c:456 utils/hash/dynahash.c:970
-#: utils/init/miscinit.c:151 utils/init/miscinit.c:172
-#: utils/init/miscinit.c:182 utils/mb/mbutils.c:374 utils/mb/mbutils.c:675
-#: utils/misc/guc.c:3394 utils/misc/guc.c:3410 utils/misc/guc.c:3423
-#: utils/misc/tzparser.c:455 utils/mmgr/aset.c:416 utils/mmgr/aset.c:587
-#: utils/mmgr/aset.c:765 utils/mmgr/aset.c:966
+#: access/transam/xlog.c:6103
 #, c-format
-msgid "out of memory"
-msgstr "memoria esaurita"
+msgid "starting archive recovery"
+msgstr "avvio del ripristino dell'archivio"
 
-#: access/transam/xlog.c:5000
+#: access/transam/xlog.c:6120
 #, c-format
 msgid "Failed while allocating an XLog reading processor."
 msgstr "Errore nell'alllocazione di un processore di lettura XLog."
 
-#: access/transam/xlog.c:5025 access/transam/xlog.c:5092
+#: access/transam/xlog.c:6145 access/transam/xlog.c:6212
 #, c-format
 msgid "checkpoint record is at %X/%X"
 msgstr "il record di checkpoint si trova in %X/%X"
 
-#: access/transam/xlog.c:5039
+#: access/transam/xlog.c:6159
 #, c-format
 msgid "could not find redo location referenced by checkpoint record"
 msgstr "localizzazione della posizione di redo referenziata dal record di checkpoint fallita"
 
-#: access/transam/xlog.c:5040 access/transam/xlog.c:5047
+#: access/transam/xlog.c:6160 access/transam/xlog.c:6167
 #, c-format
 msgid "If you are not restoring from a backup, try removing the file \"%s/backup_label\"."
 msgstr "Se non si sta effettuando il ripristino da backup, prova a rimuovere il file \"%s/backup_label\"."
 
-#: access/transam/xlog.c:5046
+#: access/transam/xlog.c:6166
 #, c-format
 msgid "could not locate required checkpoint record"
 msgstr "localizzazione del record di checkpoint richiesto fallita"
 
-#: access/transam/xlog.c:5102 access/transam/xlog.c:5117
+#: access/transam/xlog.c:6222 access/transam/xlog.c:6237
 #, c-format
 msgid "could not locate a valid checkpoint record"
 msgstr "localizzazione di un record di checkpoint valido fallita"
 
-#: access/transam/xlog.c:5111
+#: access/transam/xlog.c:6231
 #, c-format
 msgid "using previous checkpoint record at %X/%X"
 msgstr "si sta usando il precedente record di checkpoint in %X/%X"
 
-#: access/transam/xlog.c:5141
+#: access/transam/xlog.c:6261
 #, c-format
 msgid "requested timeline %u is not a child of this server's history"
-msgstr "la timeline richiesta %u non è figlia della stora di questo server"
+msgstr "la timeline richiesta %u non è figlia della storia di questo server"
 
-#: access/transam/xlog.c:5143
+#: access/transam/xlog.c:6263
 #, c-format
 msgid "Latest checkpoint is at %X/%X on timeline %u, but in the history of the requested timeline, the server forked off from that timeline at %X/%X."
 msgstr "L'ultimo checkpoint è a %X/%X sulla timeline %u, ma nella storia della timeline richiesta, il server si è separato da quella timeline a %X/%X."
 
-#: access/transam/xlog.c:5159
+#: access/transam/xlog.c:6279
 #, c-format
 msgid "requested timeline %u does not contain minimum recovery point %X/%X on timeline %u"
 msgstr "la timeline richiesta %u non contiene il punto di recupero minimo %X/%X sulla timeline %u"
 
-#: access/transam/xlog.c:5168
+#: access/transam/xlog.c:6288
 #, c-format
 msgid "redo record is at %X/%X; shutdown %s"
 msgstr "il record di redo è alle %X/%X; arresto %s"
 
-#: access/transam/xlog.c:5172
+#: access/transam/xlog.c:6292
 #, c-format
 msgid "next transaction ID: %u/%u; next OID: %u"
 msgstr "prossimo ID di transazione: %u/%u; prossimo OID: %u"
 
-#: access/transam/xlog.c:5176
+#: access/transam/xlog.c:6296
 #, c-format
 msgid "next MultiXactId: %u; next MultiXactOffset: %u"
 msgstr "prossimo MultiXactId: %u; prossimo MultiXactOffset: %u"
 
-#: access/transam/xlog.c:5179
+#: access/transam/xlog.c:6299
 #, c-format
 msgid "oldest unfrozen transaction ID: %u, in database %u"
 msgstr "ID della più vecchia transazione non congelata: %u, nel database %u"
 
-#: access/transam/xlog.c:5182
+#: access/transam/xlog.c:6302
 #, c-format
 msgid "oldest MultiXactId: %u, in database %u"
 msgstr "il MultiXactId più vecchio: %u, nel database %u"
 
-#: access/transam/xlog.c:5186
+#: access/transam/xlog.c:6306
 #, c-format
 msgid "invalid next transaction ID"
 msgstr "l'ID della prossima transazione non è valido"
 
-#: access/transam/xlog.c:5243
+#: access/transam/xlog.c:6376
 #, c-format
 msgid "invalid redo in checkpoint record"
 msgstr "il redo nel record di checkpoint non è valido"
 
-#: access/transam/xlog.c:5254
+#: access/transam/xlog.c:6387
 #, c-format
 msgid "invalid redo record in shutdown checkpoint"
 msgstr "record di redo non valido nel checkpoint di arresto"
 
-#: access/transam/xlog.c:5285
+#: access/transam/xlog.c:6418
 #, c-format
 msgid "database system was not properly shut down; automatic recovery in progress"
 msgstr "il database non è stato arrestato correttamente; ripristino automatico in corso"
 
-#: access/transam/xlog.c:5289
+#: access/transam/xlog.c:6422
 #, c-format
 msgid "crash recovery starts in timeline %u and has target timeline %u"
 msgstr "il recupero dal crash comincia nella timeline %u e si conclude nella timeline %u"
 
-#: access/transam/xlog.c:5326
+#: access/transam/xlog.c:6459
 #, c-format
 msgid "backup_label contains data inconsistent with control file"
 msgstr "backup_label contiene dati non consistenti col file di controllo"
 
-#: access/transam/xlog.c:5327
+#: access/transam/xlog.c:6460
 #, c-format
 msgid "This means that the backup is corrupted and you will have to use another backup for recovery."
 msgstr "Questo vuol dire che il backup è corrotto e sarà necessario usare un altro backup per il ripristino."
 
-#: access/transam/xlog.c:5392
+#: access/transam/xlog.c:6525
 #, c-format
 msgid "initializing for hot standby"
 msgstr "inizializzazione per l'hot standby"
 
-#: access/transam/xlog.c:5522
+#: access/transam/xlog.c:6657
 #, c-format
 msgid "redo starts at %X/%X"
 msgstr "il redo inizia in %X/%X"
 
-#: access/transam/xlog.c:5714
+#: access/transam/xlog.c:6872
 #, c-format
 msgid "redo done at %X/%X"
 msgstr "redo concluso in %X/%X"
 
-#: access/transam/xlog.c:5719 access/transam/xlog.c:7574
+#: access/transam/xlog.c:6877 access/transam/xlog.c:8728
 #, c-format
 msgid "last completed transaction was at log time %s"
 msgstr "l'ultima transazione è stata completata all'orario di log %s"
 
-#: access/transam/xlog.c:5727
+#: access/transam/xlog.c:6885
 #, c-format
 msgid "redo is not required"
 msgstr "redo non richiesto"
 
-#: access/transam/xlog.c:5775
+#: access/transam/xlog.c:6933
 #, c-format
 msgid "requested recovery stop point is before consistent recovery point"
 msgstr "lo stop point di ripristino è posto prima di un punto di ripristino consistente"
 
-#: access/transam/xlog.c:5791 access/transam/xlog.c:5795
+#: access/transam/xlog.c:6949 access/transam/xlog.c:6953
 #, c-format
 msgid "WAL ends before end of online backup"
 msgstr "il WAL termina prima della fine del backup online"
 
-#: access/transam/xlog.c:5792
+#: access/transam/xlog.c:6950
 #, c-format
 msgid "All WAL generated while online backup was taken must be available at recovery."
 msgstr "Tutti i file WAL generati mentre il backup online veniva effettuato devono essere disponibili al momento del ripristino."
 
-#: access/transam/xlog.c:5796
+#: access/transam/xlog.c:6954
 #, c-format
 msgid "Online backup started with pg_start_backup() must be ended with pg_stop_backup(), and all WAL up to that point must be available at recovery."
 msgstr "Un backup online iniziato con pg_start_backup() deve essere terminato con pg_stop_backup(), e tutti i file WAL fino a quel punto devono essere disponibili per il ripristino."
 
-#: access/transam/xlog.c:5799
+#: access/transam/xlog.c:6957
 #, c-format
 msgid "WAL ends before consistent recovery point"
 msgstr "il WAL termina prima di un punto di ripristino consistente"
 
-#: access/transam/xlog.c:5826
+#: access/transam/xlog.c:6984
 #, c-format
 msgid "selected new timeline ID: %u"
 msgstr "l'ID della nuova timeline selezionata è %u"
 
-#: access/transam/xlog.c:6195
+#: access/transam/xlog.c:7333
 #, c-format
 msgid "consistent recovery state reached at %X/%X"
 msgstr "è stato raggiunto uno stato di ripristino consistente a %X/%X"
 
-#: access/transam/xlog.c:6378
+#: access/transam/xlog.c:7530
 #, c-format
 msgid "invalid primary checkpoint link in control file"
 msgstr "il link nel file di controllo al checkpoint primario non è valido"
 
-#: access/transam/xlog.c:6382
+#: access/transam/xlog.c:7534
 #, c-format
 msgid "invalid secondary checkpoint link in control file"
 msgstr "il link nel file di controllo al checkpoint secondario non è valido"
 
-#: access/transam/xlog.c:6386
+#: access/transam/xlog.c:7538
 #, c-format
 msgid "invalid checkpoint link in backup_label file"
 msgstr "il link al checkpoint nel file backup_label non è valido"
 
-#: access/transam/xlog.c:6403
+#: access/transam/xlog.c:7555
 #, c-format
 msgid "invalid primary checkpoint record"
 msgstr "il record del checkpoint primario non è valido"
 
-#: access/transam/xlog.c:6407
+#: access/transam/xlog.c:7559
 #, c-format
 msgid "invalid secondary checkpoint record"
 msgstr "il record del checkpoint secondario non è valido"
 
-#: access/transam/xlog.c:6411
+#: access/transam/xlog.c:7563
 #, c-format
 msgid "invalid checkpoint record"
 msgstr "il record del checkpoint non è valido"
 
-#: access/transam/xlog.c:6422
+#: access/transam/xlog.c:7574
 #, c-format
 msgid "invalid resource manager ID in primary checkpoint record"
 msgstr "l'ID del resource manager nel record del checkpoint primario non è valido"
 
-#: access/transam/xlog.c:6426
+#: access/transam/xlog.c:7578
 #, c-format
 msgid "invalid resource manager ID in secondary checkpoint record"
 msgstr "l'ID del resource manager nel record del checkpoint secondario non è valido"
 
-#: access/transam/xlog.c:6430
+#: access/transam/xlog.c:7582
 #, c-format
 msgid "invalid resource manager ID in checkpoint record"
 msgstr "l'ID del resource manager nel record del checkpoint non è valido"
 
-#: access/transam/xlog.c:6442
+#: access/transam/xlog.c:7594
 #, c-format
 msgid "invalid xl_info in primary checkpoint record"
 msgstr "l'xl_info nel record del checkpoint primario non è valido"
 
-#: access/transam/xlog.c:6446
+#: access/transam/xlog.c:7598
 #, c-format
 msgid "invalid xl_info in secondary checkpoint record"
 msgstr "l'xl_info nel record del checkpoint secondario non è valido"
 
-#: access/transam/xlog.c:6450
+#: access/transam/xlog.c:7602
 #, c-format
 msgid "invalid xl_info in checkpoint record"
 msgstr "l'xl_info nel record del checkpoint non è valido"
 
-#: access/transam/xlog.c:6462
+#: access/transam/xlog.c:7614
 #, c-format
 msgid "invalid length of primary checkpoint record"
 msgstr "la lunghezza del record del checkpoint primario non è valida"
 
-#: access/transam/xlog.c:6466
+#: access/transam/xlog.c:7618
 #, c-format
 msgid "invalid length of secondary checkpoint record"
 msgstr "la lunghezza del record del checkpoint secondario non è valida"
 
-#: access/transam/xlog.c:6470
+#: access/transam/xlog.c:7622
 #, c-format
 msgid "invalid length of checkpoint record"
 msgstr "la lunghezza del record del checkpoint non è valida"
 
-#: access/transam/xlog.c:6623
+#: access/transam/xlog.c:7782
 #, c-format
 msgid "shutting down"
 msgstr "arresto in corso"
 
-#: access/transam/xlog.c:6646
+#: access/transam/xlog.c:7805
 #, c-format
 msgid "database system is shut down"
 msgstr "il database è stato arrestato"
 
-#: access/transam/xlog.c:7111
+#: access/transam/xlog.c:8270
 #, c-format
 msgid "concurrent transaction log activity while database system is shutting down"
 msgstr "rilevata attività concorrente sul log delle transazioni durante l'arresto del database"
 
-#: access/transam/xlog.c:7388
+#: access/transam/xlog.c:8539
 #, c-format
 msgid "skipping restartpoint, recovery has already ended"
 msgstr "si tralascia il restartpoint, il ripristino è ormai terminato"
 
-#: access/transam/xlog.c:7411
+#: access/transam/xlog.c:8562
 #, c-format
 msgid "skipping restartpoint, already performed at %X/%X"
 msgstr "si tralascia il restartpoint, già eseguito in %X/%X"
 
-#: access/transam/xlog.c:7572
+#: access/transam/xlog.c:8726
 #, c-format
 msgid "recovery restart point at %X/%X"
 msgstr "punto di avvio del ripristino in %X/%X"
 
-#: access/transam/xlog.c:7698
+#: access/transam/xlog.c:8871
 #, c-format
 msgid "restore point \"%s\" created at %X/%X"
 msgstr "punto di ripristino \"%s\" creato in %X/%X"
 
-#: access/transam/xlog.c:7913
+#: access/transam/xlog.c:9095
 #, c-format
 msgid "unexpected previous timeline ID %u (current timeline ID %u) in checkpoint record"
 msgstr "timeline precedente con ID %u non prevista (l'ID della timeline corrente è %u) nel record di checkpoint"
 
-#: access/transam/xlog.c:7922
+#: access/transam/xlog.c:9104
 #, c-format
 msgid "unexpected timeline ID %u (after %u) in checkpoint record"
 msgstr "timeline ID %u imprevista (dopo %u) nel record di checkpoint"
 
-#: access/transam/xlog.c:7938
+#: access/transam/xlog.c:9120
 #, c-format
 msgid "unexpected timeline ID %u in checkpoint record, before reaching minimum recovery point %X/%X on timeline %u"
 msgstr "timeline ID %u imprevista nel record di checkpoint, prima di raggiungere il punto di recupero minimo %X/%X sulla timeline %u"
 
-#: access/transam/xlog.c:8005
+#: access/transam/xlog.c:9188
 #, c-format
 msgid "online backup was canceled, recovery cannot continue"
 msgstr "il backup online è stato annullato, il ripristino non può continuare"
 
-#: access/transam/xlog.c:8066 access/transam/xlog.c:8114
-#: access/transam/xlog.c:8137
+#: access/transam/xlog.c:9249 access/transam/xlog.c:9298
+#: access/transam/xlog.c:9321
 #, c-format
 msgid "unexpected timeline ID %u (should be %u) in checkpoint record"
 msgstr "l'ID della timeline %u (che dovrebbe essere %u) non era prevista nel record di checkpoint"
 
-#: access/transam/xlog.c:8370
+#: access/transam/xlog.c:9556
 #, c-format
 msgid "could not fsync log segment %s: %m"
 msgstr "fsync del segmento di log %s fallito: %m"
 
-#: access/transam/xlog.c:8394
+#: access/transam/xlog.c:9580
 #, c-format
 msgid "could not fsync log file %s: %m"
 msgstr "fsync del file di log %s fallito: %m"
 
-#: access/transam/xlog.c:8402
+#: access/transam/xlog.c:9588
 #, c-format
 msgid "could not fsync write-through log file %s: %m"
 msgstr "fsync write-through del file di log %s fallito: %m"
 
-#: access/transam/xlog.c:8411
+#: access/transam/xlog.c:9597
 #, c-format
 msgid "could not fdatasync log file %s: %m"
 msgstr "fdatasync del file di log %s fallito: %m"
 
-#: access/transam/xlog.c:8489 access/transam/xlog.c:8825
-#: access/transam/xlogfuncs.c:119 access/transam/xlogfuncs.c:151
-#: access/transam/xlogfuncs.c:193 access/transam/xlogfuncs.c:217
-#: access/transam/xlogfuncs.c:299 access/transam/xlogfuncs.c:373
+#: access/transam/xlog.c:9675 access/transam/xlog.c:10011
+#: access/transam/xlogfuncs.c:111 access/transam/xlogfuncs.c:140
+#: access/transam/xlogfuncs.c:179 access/transam/xlogfuncs.c:200
+#: access/transam/xlogfuncs.c:270 access/transam/xlogfuncs.c:326
 #, c-format
 msgid "recovery is in progress"
 msgstr "il ripristino è in corso"
 
-#: access/transam/xlog.c:8490 access/transam/xlog.c:8826
-#: access/transam/xlogfuncs.c:120 access/transam/xlogfuncs.c:152
-#: access/transam/xlogfuncs.c:194 access/transam/xlogfuncs.c:218
+#: access/transam/xlog.c:9676 access/transam/xlog.c:10012
+#: access/transam/xlogfuncs.c:112 access/transam/xlogfuncs.c:141
+#: access/transam/xlogfuncs.c:180 access/transam/xlogfuncs.c:201
 #, c-format
 msgid "WAL control functions cannot be executed during recovery."
 msgstr "le funzioni di controllo WAL non possono essere eseguite durante il ripristino."
 
-#: access/transam/xlog.c:8499 access/transam/xlog.c:8835
+#: access/transam/xlog.c:9685 access/transam/xlog.c:10021
 #, c-format
 msgid "WAL level not sufficient for making an online backup"
 msgstr "livello WAL non sufficiente per creare un backup online"
 
-#: access/transam/xlog.c:8500 access/transam/xlog.c:8836
-#: access/transam/xlogfuncs.c:158
+#: access/transam/xlog.c:9686 access/transam/xlog.c:10022
+#: access/transam/xlogfuncs.c:147
 #, c-format
-msgid "wal_level must be set to \"archive\" or \"hot_standby\" at server start."
-msgstr "Il wal_level deve essere impostato ad \"archive\" oppure \"hot_standby\" all'avvio del server."
+msgid "wal_level must be set to \"archive\", \"hot_standby\", or \"logical\" at server start."
+msgstr "Il wal_level deve essere impostato ad \"archive\", \"hot_standby\" oppure \"logical\" all'avvio del server."
 
-#: access/transam/xlog.c:8505
+#: access/transam/xlog.c:9691
 #, c-format
 msgid "backup label too long (max %d bytes)"
 msgstr "etichetta di backup troppo lunga (massimo %d byte)"
 
-#: access/transam/xlog.c:8536 access/transam/xlog.c:8713
+#: access/transam/xlog.c:9722 access/transam/xlog.c:9899
 #, c-format
 msgid "a backup is already in progress"
 msgstr "c'è già un backup in corso"
 
-#: access/transam/xlog.c:8537
+#: access/transam/xlog.c:9723
 #, c-format
 msgid "Run pg_stop_backup() and try again."
 msgstr "Esegui pg_stop_backup() e prova di nuovo."
 
-#: access/transam/xlog.c:8631
+#: access/transam/xlog.c:9817
 #, c-format
 msgid "WAL generated with full_page_writes=off was replayed since last restartpoint"
 msgstr "un WAL generato con full_page_writes=off è stato riprodotto dopo l'ultimo restartpoint"
 
-#: access/transam/xlog.c:8633 access/transam/xlog.c:8986
+#: access/transam/xlog.c:9819 access/transam/xlog.c:10172
 #, c-format
 msgid "This means that the backup being taken on the standby is corrupt and should not be used. Enable full_page_writes and run CHECKPOINT on the master, and then try an online backup again."
 msgstr "Ciò vuol dire che il backup che sta venendo preso sullo standby è corrotto e non dovrebbe essere usato. Abilita full_page_writes ed esegui CHECKPOINT sul master, poi prova ad effettuare nuovamente un backup online.\""
 
-#: access/transam/xlog.c:8707 access/transam/xlog.c:8876
+#: access/transam/xlog.c:9893 access/transam/xlog.c:10062
 #: access/transam/xlogarchive.c:106 access/transam/xlogarchive.c:265
-#: replication/basebackup.c:396 replication/basebackup.c:451
-#: storage/file/copydir.c:75 storage/file/copydir.c:118 utils/adt/dbsize.c:68
-#: utils/adt/dbsize.c:218 utils/adt/dbsize.c:298 utils/adt/genfile.c:108
-#: utils/adt/genfile.c:280 guc-file.l:777
+#: replication/basebackup.c:464 replication/basebackup.c:521
+#: replication/logical/snapbuild.c:1467 storage/file/copydir.c:72
+#: storage/file/copydir.c:115 utils/adt/dbsize.c:68 utils/adt/dbsize.c:218
+#: utils/adt/dbsize.c:298 utils/adt/genfile.c:108 utils/adt/genfile.c:280
+#: guc-file.l:885
 #, c-format
 msgid "could not stat file \"%s\": %m"
 msgstr "non è stato possibile ottenere informazioni sul file \"%s\": %m"
 
-#: access/transam/xlog.c:8714
+#: access/transam/xlog.c:9900
 #, c-format
 msgid "If you're sure there is no backup in progress, remove file \"%s\" and try again."
 msgstr "Se si è certi che non ci sono backup in corso, rimuovi il file \"%s\" e prova di nuovo."
 
-#: access/transam/xlog.c:8731 access/transam/xlog.c:9049
+#: access/transam/xlog.c:9917 access/transam/xlog.c:10235
 #, c-format
 msgid "could not write file \"%s\": %m"
 msgstr "scrittura nel file \"%s\" fallita: %m"
 
-#: access/transam/xlog.c:8880
+#: access/transam/xlog.c:10066
 #, c-format
 msgid "a backup is not in progress"
 msgstr "nessuno backup in esecuzione"
 
-#: access/transam/xlog.c:8906 access/transam/xlogarchive.c:114
-#: access/transam/xlogarchive.c:466 storage/smgr/md.c:405
-#: storage/smgr/md.c:454 storage/smgr/md.c:1318
+#: access/transam/xlog.c:10092 access/transam/xlogarchive.c:114
+#: access/transam/xlogarchive.c:467 storage/ipc/dsm.c:326
+#: storage/smgr/md.c:404 storage/smgr/md.c:453 storage/smgr/md.c:1317
 #, c-format
 msgid "could not remove file \"%s\": %m"
 msgstr "rimozione del file \"%s\" fallita: %m"
 
-#: access/transam/xlog.c:8919 access/transam/xlog.c:8932
-#: access/transam/xlog.c:9283 access/transam/xlog.c:9289
-#: access/transam/xlogfuncs.c:626
+#: access/transam/xlog.c:10105 access/transam/xlog.c:10118
+#: access/transam/xlog.c:10469 access/transam/xlog.c:10475
+#: access/transam/xlogfuncs.c:503
 #, c-format
 msgid "invalid data in file \"%s\""
 msgstr "i dati nel file \"%s\" non sono validi"
 
-#: access/transam/xlog.c:8936 replication/basebackup.c:855
+#: access/transam/xlog.c:10122 replication/basebackup.c:951
 #, c-format
 msgid "the standby was promoted during online backup"
 msgstr "lo standby è stato promosso durante il backup online"
 
-#: access/transam/xlog.c:8937 replication/basebackup.c:856
+#: access/transam/xlog.c:10123 replication/basebackup.c:952
 #, c-format
 msgid "This means that the backup being taken is corrupt and should not be used. Try taking another online backup."
 msgstr "Ciò vuol dire che il backup che stava venendo salvato è corrotto e non dovrebbe essere usato. Prova ad effettuare un altro backup online."
 
-#: access/transam/xlog.c:8984
+#: access/transam/xlog.c:10170
 #, c-format
 msgid "WAL generated with full_page_writes=off was replayed during online backup"
 msgstr "un WAL generato con full_page_writes=off è stato riprodotto durante il backup online"
 
-#: access/transam/xlog.c:9098
+#: access/transam/xlog.c:10284
 #, c-format
 msgid "pg_stop_backup cleanup done, waiting for required WAL segments to be archived"
 msgstr "pulizia di pg_stop_backup effettuata, in attesa che i segmenti WAL richiesti vengano archiviati"
 
-#: access/transam/xlog.c:9108
+#: access/transam/xlog.c:10294
 #, c-format
 msgid "pg_stop_backup still waiting for all required WAL segments to be archived (%d seconds elapsed)"
 msgstr "pg_stop_backup è ancora in attesa che tutti i segmenti WAL richiesti siano stati archiviati (sono passati %d secondi)"
 
-#: access/transam/xlog.c:9110
+#: access/transam/xlog.c:10296
 #, c-format
 msgid "Check that your archive_command is executing properly.  pg_stop_backup can be canceled safely, but the database backup will not be usable without all the WAL segments."
 msgstr "Controlla che il tuo archive_command venga eseguito correttamente. pg_stop_backup può essere interrotto in sicurezza ma il backup del database non sarà utilizzabile senza tutti i segmenti WAL."
 
-#: access/transam/xlog.c:9117
+#: access/transam/xlog.c:10303
 #, c-format
 msgid "pg_stop_backup complete, all required WAL segments have been archived"
 msgstr "pg_stop_backup completo, tutti i segmenti WAL richiesti sono stati archiviati"
 
-#: access/transam/xlog.c:9121
+#: access/transam/xlog.c:10307
 #, c-format
 msgid "WAL archiving is not enabled; you must ensure that all required WAL segments are copied through other means to complete the backup"
 msgstr "l'archiviazione WAL non è abilitata; devi verificare che tutti i segmenti WAL richiesti vengano copiati in qualche altro modo per completare il backup"
 
-#: access/transam/xlog.c:9334
+#: access/transam/xlog.c:10520
 #, c-format
 msgid "xlog redo %s"
 msgstr "xlog redo %s"
 
-#: access/transam/xlog.c:9374
+#: access/transam/xlog.c:10560
 #, c-format
 msgid "online backup mode canceled"
 msgstr "modalità backup online annullata"
 
-#: access/transam/xlog.c:9375
+#: access/transam/xlog.c:10561
 #, c-format
 msgid "\"%s\" was renamed to \"%s\"."
 msgstr "\"%s\" è stato rinominato in \"%s\"."
 
-#: access/transam/xlog.c:9382
+#: access/transam/xlog.c:10568
 #, c-format
 msgid "online backup mode was not canceled"
 msgstr "la modalità di backup online non è stata annullata"
 
-#: access/transam/xlog.c:9383
+#: access/transam/xlog.c:10569
 #, c-format
 msgid "Could not rename \"%s\" to \"%s\": %m."
 msgstr "Non è stato possibile rinominare \"%s\" in \"%s\": %m."
 
-#: access/transam/xlog.c:9503 replication/walreceiver.c:934
-#: replication/walsender.c:1344
+#: access/transam/xlog.c:10689 replication/logical/logicalfuncs.c:169
+#: replication/walreceiver.c:937 replication/walsender.c:2106
 #, c-format
 msgid "could not seek in log segment %s to offset %u: %m"
 msgstr "spostamento nel segmento di log %s alla posizione %u fallito: %m"
 
-#: access/transam/xlog.c:9515
+#: access/transam/xlog.c:10701
 #, c-format
 msgid "could not read from log segment %s, offset %u: %m"
 msgstr "lettura del segmento di log %s, posizione %u fallita: %m"
 
-#: access/transam/xlog.c:9980
+#: access/transam/xlog.c:11164
 #, c-format
 msgid "received promote request"
 msgstr "richiesta di promozione ricevuta"
 
-#: access/transam/xlog.c:9993
+#: access/transam/xlog.c:11177
 #, c-format
 msgid "trigger file found: %s"
 msgstr "trovato il file trigger: %s"
 
+#: access/transam/xlog.c:11186
+#, c-format
+msgid "could not stat trigger file \"%s\": %m"
+msgstr "non è stato possibile ottenere informazioni sul file trigger \"%s\": %m"
+
 #: access/transam/xlogarchive.c:244
 #, c-format
 msgid "archive file \"%s\" has wrong size: %lu instead of %lu"
@@ -1979,107 +2118,97 @@ msgstr "file di log \"%s\" ripristinato dall'archivio"
 
 #: access/transam/xlogarchive.c:303
 #, c-format
-msgid "could not restore file \"%s\" from archive: return code %d"
-msgstr "ripristino del file \"%s\" dall'archivio fallito: codice di uscita %d"
+msgid "could not restore file \"%s\" from archive: %s"
+msgstr "non è stato possibile ripristinare il file \"%s\" dall'archivio: %s"
 
 #. translator: First %s represents a recovery.conf parameter name like
-#. "recovery_end_command", and the 2nd is the value of that parameter.
-#: access/transam/xlogarchive.c:414
+#. "recovery_end_command", the 2nd is the value of that parameter, the
+#. third an already translated error message.
+#: access/transam/xlogarchive.c:415
 #, c-format
-msgid "%s \"%s\": return code %d"
-msgstr "%s \"%s\": codice di uscita %d"
+msgid "%s \"%s\": %s"
+msgstr "%s \"%s\": %s"
 
-#: access/transam/xlogarchive.c:524 access/transam/xlogarchive.c:593
+#: access/transam/xlogarchive.c:525 access/transam/xlogarchive.c:594
 #, c-format
 msgid "could not create archive status file \"%s\": %m"
 msgstr "creazione del file di stato dell'archivio \"%s\" fallita: %m"
 
-#: access/transam/xlogarchive.c:532 access/transam/xlogarchive.c:601
+#: access/transam/xlogarchive.c:533 access/transam/xlogarchive.c:602
 #, c-format
 msgid "could not write archive status file \"%s\": %m"
 msgstr "scrittura del file di stato dell'archivio \"%s\" fallita: %m"
 
-#: access/transam/xlogfuncs.c:62 access/transam/xlogfuncs.c:93
+#: access/transam/xlogfuncs.c:60 access/transam/xlogfuncs.c:88
 #, c-format
 msgid "must be superuser or replication role to run a backup"
 msgstr "solo un superutente o il ruolo di replica può eseguire un backup"
 
-#: access/transam/xlogfuncs.c:114
+#: access/transam/xlogfuncs.c:106
 #, c-format
 msgid "must be superuser to switch transaction log files"
 msgstr "solo un superutente può cambiare i file di log delle transazioni"
 
-#: access/transam/xlogfuncs.c:146
+#: access/transam/xlogfuncs.c:135
 #, c-format
 msgid "must be superuser to create a restore point"
 msgstr "Solo un superutente può creare un punto di ripristino"
 
-#: access/transam/xlogfuncs.c:157
+#: access/transam/xlogfuncs.c:146
 #, c-format
 msgid "WAL level not sufficient for creating a restore point"
 msgstr "livello WAL non sufficiente per creare un punto di ripristino"
 
-#: access/transam/xlogfuncs.c:165
+#: access/transam/xlogfuncs.c:154
 #, c-format
 msgid "value too long for restore point (maximum %d characters)"
 msgstr "il valore è troppo lungo per un punto di ripristino (massimo %d caratteri)"
 
-#: access/transam/xlogfuncs.c:300
+#: access/transam/xlogfuncs.c:271
 #, c-format
 msgid "pg_xlogfile_name_offset() cannot be executed during recovery."
 msgstr "pg_xlogfile_name_offset() non può essere eseguito durante il recupero."
 
-#: access/transam/xlogfuncs.c:312 access/transam/xlogfuncs.c:383
-#: access/transam/xlogfuncs.c:540 access/transam/xlogfuncs.c:546
-#, c-format
-msgid "could not parse transaction log location \"%s\""
-msgstr "non è stato possibile interpretare la posizione del log delle transazioni \"%s\""
-
-#: access/transam/xlogfuncs.c:374
+#: access/transam/xlogfuncs.c:327
 #, c-format
 msgid "pg_xlogfile_name() cannot be executed during recovery."
 msgstr "pg_xlogfile_name() non può essere eseguito durante il recupero."
 
-#: access/transam/xlogfuncs.c:402 access/transam/xlogfuncs.c:424
-#: access/transam/xlogfuncs.c:446
+#: access/transam/xlogfuncs.c:344 access/transam/xlogfuncs.c:366
+#: access/transam/xlogfuncs.c:388
 #, c-format
 msgid "must be superuser to control recovery"
 msgstr "solo un superutente può controllare il recupero"
 
-#: access/transam/xlogfuncs.c:407 access/transam/xlogfuncs.c:429
-#: access/transam/xlogfuncs.c:451
+#: access/transam/xlogfuncs.c:349 access/transam/xlogfuncs.c:371
+#: access/transam/xlogfuncs.c:393
 #, c-format
 msgid "recovery is not in progress"
 msgstr "il recupero non è in corso"
 
-#: access/transam/xlogfuncs.c:408 access/transam/xlogfuncs.c:430
-#: access/transam/xlogfuncs.c:452
+#: access/transam/xlogfuncs.c:350 access/transam/xlogfuncs.c:372
+#: access/transam/xlogfuncs.c:394
 #, c-format
 msgid "Recovery control functions can only be executed during recovery."
 msgstr "Le funzioni di controllo del recupero possono essere eseguite solo durante un recupero."
 
-#: access/transam/xlogfuncs.c:501 access/transam/xlogfuncs.c:507
-#, c-format
-msgid "invalid input syntax for transaction log location: \"%s\""
-msgstr "sintassi di input non valida per la posizione del log delle transazioni: \"%s\""
-
-#: bootstrap/bootstrap.c:278 postmaster/postmaster.c:759 tcop/postgres.c:3453
+#: bootstrap/bootstrap.c:273 postmaster/postmaster.c:759 tcop/postgres.c:3460
 #, c-format
 msgid "--%s requires a value"
 msgstr "--%s richiede un valore"
 
-#: bootstrap/bootstrap.c:283 postmaster/postmaster.c:764 tcop/postgres.c:3458
+#: bootstrap/bootstrap.c:278 postmaster/postmaster.c:764 tcop/postgres.c:3465
 #, c-format
 msgid "-c %s requires a value"
 msgstr "-c %s richiede un valore"
 
-#: bootstrap/bootstrap.c:294 postmaster/postmaster.c:776
+#: bootstrap/bootstrap.c:289 postmaster/postmaster.c:776
 #: postmaster/postmaster.c:789
 #, c-format
 msgid "Try \"%s --help\" for more information.\n"
 msgstr "Prova \"%s --help\" per maggiori informazioni.\n"
 
-#: bootstrap/bootstrap.c:303
+#: bootstrap/bootstrap.c:298
 #, c-format
 msgid "%s: invalid command-line arguments\n"
 msgstr "%s: parametri della riga di comando non validi\n"
@@ -2194,34 +2323,34 @@ msgstr "tipo di privilegio %s non valido per il server esterno"
 msgid "column privileges are only valid for relations"
 msgstr "i privilegi della colonna sono validi solo per le relazioni"
 
-#: catalog/aclchk.c:688 catalog/aclchk.c:3901 catalog/aclchk.c:4678
-#: catalog/objectaddress.c:575 catalog/pg_largeobject.c:113
-#: storage/large_object/inv_api.c:266
+#: catalog/aclchk.c:688 catalog/aclchk.c:3904 catalog/aclchk.c:4681
+#: catalog/objectaddress.c:586 catalog/pg_largeobject.c:113
+#: storage/large_object/inv_api.c:291
 #, c-format
 msgid "large object %u does not exist"
 msgstr "il large object %u non esiste"
 
 #: catalog/aclchk.c:875 catalog/aclchk.c:883 commands/collationcmds.c:91
-#: commands/copy.c:923 commands/copy.c:941 commands/copy.c:949
-#: commands/copy.c:957 commands/copy.c:965 commands/copy.c:973
-#: commands/copy.c:981 commands/copy.c:989 commands/copy.c:997
-#: commands/copy.c:1013 commands/copy.c:1032 commands/copy.c:1047
-#: commands/dbcommands.c:148 commands/dbcommands.c:156
+#: commands/copy.c:925 commands/copy.c:943 commands/copy.c:951
+#: commands/copy.c:959 commands/copy.c:967 commands/copy.c:975
+#: commands/copy.c:983 commands/copy.c:991 commands/copy.c:999
+#: commands/copy.c:1015 commands/copy.c:1029 commands/copy.c:1048
+#: commands/copy.c:1063 commands/dbcommands.c:148 commands/dbcommands.c:156
 #: commands/dbcommands.c:164 commands/dbcommands.c:172
 #: commands/dbcommands.c:180 commands/dbcommands.c:188
-#: commands/dbcommands.c:196 commands/dbcommands.c:1360
-#: commands/dbcommands.c:1368 commands/extension.c:1250
-#: commands/extension.c:1258 commands/extension.c:1266
-#: commands/extension.c:2674 commands/foreigncmds.c:486
-#: commands/foreigncmds.c:495 commands/functioncmds.c:496
-#: commands/functioncmds.c:588 commands/functioncmds.c:596
-#: commands/functioncmds.c:604 commands/functioncmds.c:1670
-#: commands/functioncmds.c:1678 commands/sequence.c:1164
-#: commands/sequence.c:1172 commands/sequence.c:1180 commands/sequence.c:1188
-#: commands/sequence.c:1196 commands/sequence.c:1204 commands/sequence.c:1212
-#: commands/sequence.c:1220 commands/typecmds.c:295 commands/typecmds.c:1330
-#: commands/typecmds.c:1339 commands/typecmds.c:1347 commands/typecmds.c:1355
-#: commands/typecmds.c:1363 commands/user.c:135 commands/user.c:152
+#: commands/dbcommands.c:196 commands/dbcommands.c:1349
+#: commands/dbcommands.c:1357 commands/extension.c:1246
+#: commands/extension.c:1254 commands/extension.c:1262
+#: commands/extension.c:2670 commands/foreigncmds.c:486
+#: commands/foreigncmds.c:495 commands/functioncmds.c:522
+#: commands/functioncmds.c:614 commands/functioncmds.c:622
+#: commands/functioncmds.c:630 commands/functioncmds.c:1700
+#: commands/functioncmds.c:1708 commands/sequence.c:1146
+#: commands/sequence.c:1154 commands/sequence.c:1162 commands/sequence.c:1170
+#: commands/sequence.c:1178 commands/sequence.c:1186 commands/sequence.c:1194
+#: commands/sequence.c:1202 commands/typecmds.c:297 commands/typecmds.c:1332
+#: commands/typecmds.c:1341 commands/typecmds.c:1349 commands/typecmds.c:1357
+#: commands/typecmds.c:1365 commands/user.c:135 commands/user.c:152
 #: commands/user.c:160 commands/user.c:168 commands/user.c:176
 #: commands/user.c:184 commands/user.c:192 commands/user.c:200
 #: commands/user.c:208 commands/user.c:216 commands/user.c:224
@@ -2238,22 +2367,22 @@ msgstr "opzioni contraddittorie o ridondanti"
 msgid "default privileges cannot be set for columns"
 msgstr "i privilegi predefiniti non possono essere impostati sulle colonne"
 
-#: catalog/aclchk.c:1492 catalog/objectaddress.c:1021 commands/analyze.c:386
-#: commands/copy.c:4163 commands/sequence.c:1466 commands/tablecmds.c:4823
-#: commands/tablecmds.c:4918 commands/tablecmds.c:4968
-#: commands/tablecmds.c:5072 commands/tablecmds.c:5119
-#: commands/tablecmds.c:5203 commands/tablecmds.c:5291
-#: commands/tablecmds.c:7231 commands/tablecmds.c:7435
-#: commands/tablecmds.c:7827 commands/trigger.c:592 parser/analyze.c:1998
-#: parser/parse_relation.c:2173 parser/parse_relation.c:2230
-#: parser/parse_target.c:920 parser/parse_type.c:124 utils/adt/acl.c:2840
-#: utils/adt/ruleutils.c:1781
+#: catalog/aclchk.c:1492 catalog/objectaddress.c:1042 commands/analyze.c:387
+#: commands/copy.c:4247 commands/sequence.c:1448 commands/tablecmds.c:4939
+#: commands/tablecmds.c:5034 commands/tablecmds.c:5084
+#: commands/tablecmds.c:5188 commands/tablecmds.c:5235
+#: commands/tablecmds.c:5319 commands/tablecmds.c:5407
+#: commands/tablecmds.c:7494 commands/tablecmds.c:7698
+#: commands/tablecmds.c:8090 commands/trigger.c:635 parser/analyze.c:1998
+#: parser/parse_relation.c:2358 parser/parse_relation.c:2420
+#: parser/parse_target.c:920 parser/parse_type.c:128 utils/adt/acl.c:2840
+#: utils/adt/ruleutils.c:1820
 #, c-format
 msgid "column \"%s\" of relation \"%s\" does not exist"
 msgstr "la colonna \"%s\" della relazione \"%s\" non esiste"
 
-#: catalog/aclchk.c:1757 catalog/objectaddress.c:849 commands/sequence.c:1053
-#: commands/tablecmds.c:213 commands/tablecmds.c:10494 utils/adt/acl.c:2076
+#: catalog/aclchk.c:1757 catalog/objectaddress.c:862 commands/sequence.c:1035
+#: commands/tablecmds.c:214 commands/tablecmds.c:11244 utils/adt/acl.c:2076
 #: utils/adt/acl.c:2106 utils/adt/acl.c:2138 utils/adt/acl.c:2170
 #: utils/adt/acl.c:2198 utils/adt/acl.c:2228
 #, c-format
@@ -2300,7 +2429,7 @@ msgstr "non è possibile impostare privilegi su tipi array"
 msgid "Set the privileges of the element type instead."
 msgstr "Puoi impostare i privilegi del tipo dell'elemento."
 
-#: catalog/aclchk.c:3100 catalog/objectaddress.c:1072 commands/typecmds.c:3179
+#: catalog/aclchk.c:3100 catalog/objectaddress.c:1094 commands/typecmds.c:3187
 #, c-format
 msgid "\"%s\" is not a domain"
 msgstr "\"%s\" non è un dominio"
@@ -2320,8 +2449,8 @@ msgstr "permesso negato per la colonna %s"
 msgid "permission denied for relation %s"
 msgstr "permesso negato per la relazione %s"
 
-#: catalog/aclchk.c:3273 commands/sequence.c:560 commands/sequence.c:773
-#: commands/sequence.c:815 commands/sequence.c:852 commands/sequence.c:1518
+#: catalog/aclchk.c:3273 commands/sequence.c:535 commands/sequence.c:748
+#: commands/sequence.c:790 commands/sequence.c:827 commands/sequence.c:1500
 #, c-format
 msgid "permission denied for sequence %s"
 msgstr "permesso negato per la sequenza %s"
@@ -2531,106 +2660,96 @@ msgstr "il ruolo con OID %u non esiste"
 msgid "attribute %d of relation with OID %u does not exist"
 msgstr "l'attributo %d della relazione con OID %u non esiste"
 
-#: catalog/aclchk.c:3617 catalog/aclchk.c:4529
+#: catalog/aclchk.c:3617 catalog/aclchk.c:4532
 #, c-format
 msgid "relation with OID %u does not exist"
 msgstr "la relazione con OID %u non esiste"
 
-#: catalog/aclchk.c:3717 catalog/aclchk.c:4947
+#: catalog/aclchk.c:3717 catalog/aclchk.c:4950
 #, c-format
 msgid "database with OID %u does not exist"
 msgstr "il database con OID %u non esiste"
 
-#: catalog/aclchk.c:3771 catalog/aclchk.c:4607 tcop/fastpath.c:223
+#: catalog/aclchk.c:3771 catalog/aclchk.c:4610 tcop/fastpath.c:223
 #, c-format
 msgid "function with OID %u does not exist"
 msgstr "la funzione con OID %u non esiste"
 
-#: catalog/aclchk.c:3825 catalog/aclchk.c:4633
+#: catalog/aclchk.c:3825 catalog/aclchk.c:4636
 #, c-format
 msgid "language with OID %u does not exist"
 msgstr "il linguaggio con OID %u non esiste"
 
-#: catalog/aclchk.c:3986 catalog/aclchk.c:4705
+#: catalog/aclchk.c:3989 catalog/aclchk.c:4708
 #, c-format
 msgid "schema with OID %u does not exist"
 msgstr "lo schema con OID %u non esiste"
 
-#: catalog/aclchk.c:4040 catalog/aclchk.c:4732
+#: catalog/aclchk.c:4043 catalog/aclchk.c:4735
 #, c-format
 msgid "tablespace with OID %u does not exist"
 msgstr "il tablespace con l'OID %u non esiste"
 
-#: catalog/aclchk.c:4098 catalog/aclchk.c:4866 commands/foreigncmds.c:302
+#: catalog/aclchk.c:4101 catalog/aclchk.c:4869 commands/foreigncmds.c:302
 #, c-format
 msgid "foreign-data wrapper with OID %u does not exist"
 msgstr "il wrapper di dati esterni con OID %u non esiste"
 
-#: catalog/aclchk.c:4159 catalog/aclchk.c:4893 commands/foreigncmds.c:409
+#: catalog/aclchk.c:4162 catalog/aclchk.c:4896 commands/foreigncmds.c:409
 #, c-format
 msgid "foreign server with OID %u does not exist"
 msgstr "il server esterno con OID %u non esiste"
 
-#: catalog/aclchk.c:4218 catalog/aclchk.c:4232 catalog/aclchk.c:4555
+#: catalog/aclchk.c:4221 catalog/aclchk.c:4235 catalog/aclchk.c:4558
 #, c-format
 msgid "type with OID %u does not exist"
 msgstr "il tipo con OID %u non esiste"
 
-#: catalog/aclchk.c:4581
+#: catalog/aclchk.c:4584
 #, c-format
 msgid "operator with OID %u does not exist"
 msgstr "l'operatore con OID %u non esiste"
 
-#: catalog/aclchk.c:4758
+#: catalog/aclchk.c:4761
 #, c-format
 msgid "operator class with OID %u does not exist"
 msgstr "la classe di operatori con OID %u non esiste"
 
-#: catalog/aclchk.c:4785
+#: catalog/aclchk.c:4788
 #, c-format
 msgid "operator family with OID %u does not exist"
 msgstr "la famiglia di operatori con OID %u non esiste"
 
-#: catalog/aclchk.c:4812
+#: catalog/aclchk.c:4815
 #, c-format
 msgid "text search dictionary with OID %u does not exist"
 msgstr "il dizionario di ricerca di testo con OID %u non esiste"
 
-#: catalog/aclchk.c:4839
+#: catalog/aclchk.c:4842
 #, c-format
 msgid "text search configuration with OID %u does not exist"
 msgstr "la configurazione di ricerca di testo con OID %u non esiste"
 
-#: catalog/aclchk.c:4920 commands/event_trigger.c:509
+#: catalog/aclchk.c:4923 commands/event_trigger.c:509
 #, c-format
 msgid "event trigger with OID %u does not exist"
 msgstr "il trigger di evento con OID %u non esiste"
 
-#: catalog/aclchk.c:4973
+#: catalog/aclchk.c:4976
 #, c-format
 msgid "collation with OID %u does not exist"
 msgstr "l'ordinamento con OID %u non esiste"
 
-#: catalog/aclchk.c:4999
+#: catalog/aclchk.c:5002
 #, c-format
 msgid "conversion with OID %u does not exist"
 msgstr "la conversione con OID %u non esiste"
 
-#: catalog/aclchk.c:5040
+#: catalog/aclchk.c:5043
 #, c-format
 msgid "extension with OID %u does not exist"
 msgstr "l'estensione con OID %u non esiste"
 
-#: catalog/catalog.c:63
-#, c-format
-msgid "invalid fork name"
-msgstr "Nome del fork non valido"
-
-#: catalog/catalog.c:64
-#, c-format
-msgid "Valid fork names are \"main\", \"fsm\", and \"vm\"."
-msgstr "Nomi di fork validi sono \"main\", \"fsm\", e \"vm\"."
-
 #: catalog/dependency.c:626
 #, c-format
 msgid "cannot drop %s because %s requires it"
@@ -2641,7 +2760,7 @@ msgstr "non è possibile eliminare %s perché %s lo richiede"
 msgid "You can drop %s instead."
 msgstr "È invece possibile eliminare %s."
 
-#: catalog/dependency.c:790 catalog/pg_shdepend.c:571
+#: catalog/dependency.c:790 catalog/pg_shdepend.c:573
 #, c-format
 msgid "cannot drop %s because it is required by the database system"
 msgstr "non è possibile eliminare %s perché richiesto dal sistema database"
@@ -2661,7 +2780,7 @@ msgstr "%s dipende da %s"
 msgid "drop cascades to %s"
 msgstr "l'eliminazione elimina anche %s in cascata"
 
-#: catalog/dependency.c:956 catalog/pg_shdepend.c:682
+#: catalog/dependency.c:956 catalog/pg_shdepend.c:684
 #, c-format
 msgid ""
 "\n"
@@ -2681,17 +2800,6 @@ msgstr[1] ""
 msgid "cannot drop %s because other objects depend on it"
 msgstr "non è possibile eliminare %s perché altri oggetti dipendono da esso"
 
-#: catalog/dependency.c:970 catalog/dependency.c:971 catalog/dependency.c:977
-#: catalog/dependency.c:978 catalog/dependency.c:989 catalog/dependency.c:990
-#: catalog/objectaddress.c:751 commands/tablecmds.c:737 commands/user.c:988
-#: port/win32/security.c:51 storage/lmgr/deadlock.c:955
-#: storage/lmgr/proc.c:1182 utils/misc/guc.c:5472 utils/misc/guc.c:5807
-#: utils/misc/guc.c:8168 utils/misc/guc.c:8202 utils/misc/guc.c:8236
-#: utils/misc/guc.c:8270 utils/misc/guc.c:8305
-#, c-format
-msgid "%s"
-msgstr "%s"
-
 #: catalog/dependency.c:972 catalog/dependency.c:979
 #, c-format
 msgid "Use DROP ... CASCADE to drop the dependent objects too."
@@ -2710,198 +2818,198 @@ msgid_plural "drop cascades to %d other objects"
 msgstr[0] "l'eliminazione elimina in cascata %d altro oggetto"
 msgstr[1] "l'eliminazione elimina in cascata %d altri oggetti"
 
-#: catalog/heap.c:266
+#: catalog/heap.c:274
 #, c-format
 msgid "permission denied to create \"%s.%s\""
 msgstr "permesso di creare \"%s.%s\" negato"
 
-#: catalog/heap.c:268
+#: catalog/heap.c:276
 #, c-format
 msgid "System catalog modifications are currently disallowed."
 msgstr "Le modifiche al catalogo di sistema non sono attualmente consentite."
 
-#: catalog/heap.c:403 commands/tablecmds.c:1376 commands/tablecmds.c:1817
-#: commands/tablecmds.c:4468
+#: catalog/heap.c:411 commands/tablecmds.c:1402 commands/tablecmds.c:1844
+#: commands/tablecmds.c:4583
 #, c-format
 msgid "tables can have at most %d columns"
 msgstr "le tabelle possono avere al massimo %d colonne"
 
-#: catalog/heap.c:420 commands/tablecmds.c:4724
+#: catalog/heap.c:428 commands/tablecmds.c:4839
 #, c-format
 msgid "column name \"%s\" conflicts with a system column name"
 msgstr "il nome della colonna \"%s\" è in conflitto con il nome di una colonna di sistema"
 
-#: catalog/heap.c:436
+#: catalog/heap.c:444
 #, c-format
 msgid "column name \"%s\" specified more than once"
 msgstr "nome di colonna \"%s\" specificato più di una volta"
 
-#: catalog/heap.c:486
+#: catalog/heap.c:494
 #, c-format
 msgid "column \"%s\" has type \"unknown\""
 msgstr "la colonna \"%s\" è di tipo \"unknown\""
 
-#: catalog/heap.c:487
+#: catalog/heap.c:495
 #, c-format
 msgid "Proceeding with relation creation anyway."
 msgstr "Si procede comunque alla creazione della relazione."
 
-#: catalog/heap.c:500
+#: catalog/heap.c:508
 #, c-format
 msgid "column \"%s\" has pseudo-type %s"
 msgstr "la colonna \"%s\" ha pseudo-tipo %s"
 
-#: catalog/heap.c:530
+#: catalog/heap.c:538
 #, c-format
 msgid "composite type %s cannot be made a member of itself"
 msgstr "il tipo composito %s non può essere fatto membro di sé stesso"
 
-#: catalog/heap.c:572 commands/createas.c:342
+#: catalog/heap.c:580 commands/createas.c:343
 #, c-format
 msgid "no collation was derived for column \"%s\" with collatable type %s"
 msgstr "nessun ordinamento è stato derivato per la colonna \"%s\" con tipo ordinabile %s"
 
-#: catalog/heap.c:574 commands/createas.c:344 commands/indexcmds.c:1085
-#: commands/view.c:96 regex/regc_pg_locale.c:262 utils/adt/formatting.c:1515
-#: utils/adt/formatting.c:1567 utils/adt/formatting.c:1635
-#: utils/adt/formatting.c:1687 utils/adt/formatting.c:1756
-#: utils/adt/formatting.c:1820 utils/adt/like.c:212 utils/adt/selfuncs.c:5200
+#: catalog/heap.c:582 commands/createas.c:345 commands/indexcmds.c:1072
+#: commands/view.c:116 regex/regc_pg_locale.c:262 utils/adt/formatting.c:1510
+#: utils/adt/formatting.c:1562 utils/adt/formatting.c:1630
+#: utils/adt/formatting.c:1682 utils/adt/formatting.c:1751
+#: utils/adt/formatting.c:1815 utils/adt/like.c:212 utils/adt/selfuncs.c:5221
 #: utils/adt/varlena.c:1381
 #, c-format
 msgid "Use the COLLATE clause to set the collation explicitly."
 msgstr "Usa la clausola COLLATE per impostare esplicitamente l'ordinamento."
 
-#: catalog/heap.c:1047 catalog/index.c:776 commands/tablecmds.c:2519
+#: catalog/heap.c:1055 catalog/index.c:778 commands/tablecmds.c:2549
 #, c-format
 msgid "relation \"%s\" already exists"
 msgstr "la relazione \"%s\" esiste già"
 
-#: catalog/heap.c:1063 catalog/pg_type.c:402 catalog/pg_type.c:705
-#: commands/typecmds.c:237 commands/typecmds.c:737 commands/typecmds.c:1088
-#: commands/typecmds.c:1306 commands/typecmds.c:2058
+#: catalog/heap.c:1071 catalog/pg_type.c:403 catalog/pg_type.c:706
+#: commands/typecmds.c:239 commands/typecmds.c:739 commands/typecmds.c:1090
+#: commands/typecmds.c:1308 commands/typecmds.c:2060
 #, c-format
 msgid "type \"%s\" already exists"
 msgstr "il tipo \"%s\" esiste già"
 
-#: catalog/heap.c:1064
+#: catalog/heap.c:1072
 #, c-format
 msgid "A relation has an associated type of the same name, so you must use a name that doesn't conflict with any existing type."
 msgstr "Una relazione ha un tipo associato con lo stesso nome, quindi devi usare nomi che non siano in conflitto con alcun tipo esistente."
 
-#: catalog/heap.c:2249
+#: catalog/heap.c:2257
 #, c-format
 msgid "check constraint \"%s\" already exists"
 msgstr "il vincolo di controllo \"%s\" esiste già"
 
-#: catalog/heap.c:2402 catalog/pg_constraint.c:650 commands/tablecmds.c:5617
+#: catalog/heap.c:2410 catalog/pg_constraint.c:650 commands/tablecmds.c:5734
 #, c-format
 msgid "constraint \"%s\" for relation \"%s\" already exists"
 msgstr "il vincolo \"%s\" per la relazione \"%s\" esiste già"
 
-#: catalog/heap.c:2412
+#: catalog/heap.c:2420
 #, c-format
 msgid "constraint \"%s\" conflicts with non-inherited constraint on relation \"%s\""
 msgstr "il vincolo \"%s\" è in conflitto con il vincolo non ereditato sulla relazione \"%s\""
 
-#: catalog/heap.c:2426
+#: catalog/heap.c:2434
 #, c-format
 msgid "merging constraint \"%s\" with inherited definition"
 msgstr "unione del vincolo \"%s\" con una definizione ereditata"
 
-#: catalog/heap.c:2519
+#: catalog/heap.c:2527
 #, c-format
 msgid "cannot use column references in default expression"
 msgstr "non si possono usare riferimenti a colonne nell'espressione predefinita"
 
-#: catalog/heap.c:2530
+#: catalog/heap.c:2538
 #, c-format
 msgid "default expression must not return a set"
 msgstr "le espressioni predefinite non devono restituire un insieme"
 
-#: catalog/heap.c:2549 rewrite/rewriteHandler.c:1033
+#: catalog/heap.c:2557 rewrite/rewriteHandler.c:1066
 #, c-format
 msgid "column \"%s\" is of type %s but default expression is of type %s"
 msgstr "la colonna \"%s\" è di tipo %s ma l'espressione predefinita è di tipo %s"
 
-#: catalog/heap.c:2554 commands/prepare.c:374 parser/parse_node.c:411
+#: catalog/heap.c:2562 commands/prepare.c:374 parser/parse_node.c:411
 #: parser/parse_target.c:509 parser/parse_target.c:758
-#: parser/parse_target.c:768 rewrite/rewriteHandler.c:1038
+#: parser/parse_target.c:768 rewrite/rewriteHandler.c:1071
 #, c-format
 msgid "You will need to rewrite or cast the expression."
 msgstr "Devi riscrivere o convertire il tipo dell'espressione"
 
-#: catalog/heap.c:2601
+#: catalog/heap.c:2609
 #, c-format
 msgid "only table \"%s\" can be referenced in check constraint"
 msgstr "solo la tabella \"%s\" può essere referenziata nel vincolo di controllo"
 
-#: catalog/heap.c:2841
+#: catalog/heap.c:2849
 #, c-format
 msgid "unsupported ON COMMIT and foreign key combination"
 msgstr "la combinazione di COMMIT con una chiave esterna non è supportata"
 
-#: catalog/heap.c:2842
+#: catalog/heap.c:2850
 #, c-format
 msgid "Table \"%s\" references \"%s\", but they do not have the same ON COMMIT setting."
 msgstr "La tabella \"%s\" referenzia \"%s\", ma non hanno la stessa impostazione ON COMMIT."
 
-#: catalog/heap.c:2847
+#: catalog/heap.c:2855
 #, c-format
 msgid "cannot truncate a table referenced in a foreign key constraint"
 msgstr "non è possibile troncare una tabella referenziata da un vincolo di chiave esterna"
 
-#: catalog/heap.c:2848
+#: catalog/heap.c:2856
 #, c-format
 msgid "Table \"%s\" references \"%s\"."
 msgstr "La tabella \"%s\" referenzia \"%s\"."
 
-#: catalog/heap.c:2850
+#: catalog/heap.c:2858
 #, c-format
 msgid "Truncate table \"%s\" at the same time, or use TRUNCATE ... CASCADE."
 msgstr "Troncare la tabella \"%s\" nello stesso tempo o usare TRUNCATE ... CASCADE."
 
-#: catalog/index.c:203 parser/parse_utilcmd.c:1398 parser/parse_utilcmd.c:1484
+#: catalog/index.c:204 parser/parse_utilcmd.c:1393 parser/parse_utilcmd.c:1479
 #, c-format
 msgid "multiple primary keys for table \"%s\" are not allowed"
 msgstr "non è possibile avere più di una chiave primaria per la tabella \"%s\""
 
-#: catalog/index.c:221
+#: catalog/index.c:222
 #, c-format
 msgid "primary keys cannot be expressions"
 msgstr "le chiavi primarie non possono essere delle espressioni"
 
-#: catalog/index.c:737 catalog/index.c:1142
+#: catalog/index.c:739 catalog/index.c:1143
 #, c-format
 msgid "user-defined indexes on system catalog tables are not supported"
 msgstr "non sono supportati indici definiti dall'utente sulle tabelle del catalogo di sistema"
 
-#: catalog/index.c:747
+#: catalog/index.c:749
 #, c-format
 msgid "concurrent index creation on system catalog tables is not supported"
 msgstr "la creazione concorrente di indici sulle tabelle del catalogo di sistema non è supportata"
 
-#: catalog/index.c:765
+#: catalog/index.c:767
 #, c-format
 msgid "shared indexes cannot be created after initdb"
 msgstr "indici condivisi non possono essere creati dopo initdb"
 
-#: catalog/index.c:1410
+#: catalog/index.c:1403
 #, c-format
 msgid "DROP INDEX CONCURRENTLY must be first action in transaction"
 msgstr "DROP INDEX CONCURRENTLY deve essere la prima azione della transazione"
 
-#: catalog/index.c:1978
+#: catalog/index.c:1944
 #, c-format
 msgid "building index \"%s\" on table \"%s\""
 msgstr "creazione dell'indice \"%s\" sulla tabella \"%s\""
 
-#: catalog/index.c:3154
+#: catalog/index.c:3129
 #, c-format
 msgid "cannot reindex temporary tables of other sessions"
 msgstr "non è possibile reindicizzare le tabelle temporanee di altre sessioni"
 
 #: catalog/namespace.c:247 catalog/namespace.c:445 catalog/namespace.c:539
-#: commands/trigger.c:4233
+#: commands/trigger.c:4486
 #, c-format
 msgid "cross-database references are not implemented: \"%s.%s.%s\""
 msgstr "i riferimenti tra database diversi non sono implementati: \"%s.%s.%s\""
@@ -2921,19 +3029,19 @@ msgstr "lock della relazione \"%s.%s\" fallito"
 msgid "could not obtain lock on relation \"%s\""
 msgstr "lock della relazione \"%s\" fallito"
 
-#: catalog/namespace.c:412 parser/parse_relation.c:962
+#: catalog/namespace.c:412 parser/parse_relation.c:964
 #, c-format
 msgid "relation \"%s.%s\" does not exist"
 msgstr "la relazione \"%s.%s\" non esiste"
 
-#: catalog/namespace.c:417 parser/parse_relation.c:975
-#: parser/parse_relation.c:983 utils/adt/regproc.c:853
+#: catalog/namespace.c:417 parser/parse_relation.c:977
+#: parser/parse_relation.c:985 utils/adt/regproc.c:974
 #, c-format
 msgid "relation \"%s\" does not exist"
 msgstr "la relazione \"%s\" non esiste"
 
-#: catalog/namespace.c:485 catalog/namespace.c:2834 commands/extension.c:1400
-#: commands/extension.c:1406
+#: catalog/namespace.c:485 catalog/namespace.c:2849 commands/extension.c:1396
+#: commands/extension.c:1402
 #, c-format
 msgid "no schema has been selected to create in"
 msgstr "nessuna schema selezionato per crearci dentro"
@@ -2953,245 +3061,246 @@ msgstr "non si possono creare relazioni temporanee in schemi non temporanei"
 msgid "only temporary relations may be created in temporary schemas"
 msgstr "solo relazioni temporanee possono essere create in schemi temporanei"
 
-#: catalog/namespace.c:2136
+#: catalog/namespace.c:2151
 #, c-format
 msgid "text search parser \"%s\" does not exist"
 msgstr "l'analizzatore di ricerca di testo \"%s\" non esiste"
 
-#: catalog/namespace.c:2262
+#: catalog/namespace.c:2277
 #, c-format
 msgid "text search dictionary \"%s\" does not exist"
 msgstr "il dizionario di ricerca di testo \"%s\" non esiste"
 
-#: catalog/namespace.c:2389
+#: catalog/namespace.c:2404
 #, c-format
 msgid "text search template \"%s\" does not exist"
 msgstr "il modello di ricerca di testo \"%s\" non esiste"
 
-#: catalog/namespace.c:2515 commands/tsearchcmds.c:1168
-#: utils/cache/ts_cache.c:619
+#: catalog/namespace.c:2530 commands/tsearchcmds.c:1168
+#: utils/cache/ts_cache.c:616
 #, c-format
 msgid "text search configuration \"%s\" does not exist"
 msgstr "la configurazione di ricerca di testo \"%s\" non esiste"
 
-#: catalog/namespace.c:2628 parser/parse_expr.c:787 parser/parse_target.c:1110
+#: catalog/namespace.c:2643 parser/parse_expr.c:788 parser/parse_target.c:1110
 #, c-format
 msgid "cross-database references are not implemented: %s"
 msgstr "i riferimenti tra database diversi non sono implementati: %s"
 
-#: catalog/namespace.c:2634 parser/parse_expr.c:794 parser/parse_target.c:1117
-#: gram.y:12438 gram.y:13648
+#: catalog/namespace.c:2649 parser/parse_expr.c:795 parser/parse_target.c:1117
+#: gram.y:12541 gram.y:13773
 #, c-format
 msgid "improper qualified name (too many dotted names): %s"
 msgstr "nome qualificato improprio (troppi nomi puntati): %s"
 
-#: catalog/namespace.c:2768
+#: catalog/namespace.c:2783
 #, c-format
 msgid "%s is already in schema \"%s\""
 msgstr "%s è già nello schema \"%s\""
 
-#: catalog/namespace.c:2776
+#: catalog/namespace.c:2791
 #, c-format
 msgid "cannot move objects into or out of temporary schemas"
 msgstr "non posso spostare oggetti dentro o fuori gli schemi temporanei"
 
-#: catalog/namespace.c:2782
+#: catalog/namespace.c:2797
 #, c-format
 msgid "cannot move objects into or out of TOAST schema"
 msgstr "non posso spostare oggetti dentro o fuori lo schema TOAST"
 
-#: catalog/namespace.c:2855 commands/schemacmds.c:212
-#: commands/schemacmds.c:288
+#: catalog/namespace.c:2870 commands/schemacmds.c:212
+#: commands/schemacmds.c:288 commands/tablecmds.c:708
 #, c-format
 msgid "schema \"%s\" does not exist"
 msgstr "lo schema \"%s\" non esiste"
 
-#: catalog/namespace.c:2886
+#: catalog/namespace.c:2901
 #, c-format
 msgid "improper relation name (too many dotted names): %s"
 msgstr "nome di relazione improprio (troppi nomi puntati): %s"
 
-#: catalog/namespace.c:3327
+#: catalog/namespace.c:3342
 #, c-format
 msgid "collation \"%s\" for encoding \"%s\" does not exist"
 msgstr "l'ordinamento \"%s\" per la codifica \"%s\" non esiste"
 
-#: catalog/namespace.c:3382
+#: catalog/namespace.c:3397
 #, c-format
 msgid "conversion \"%s\" does not exist"
 msgstr "la conversione \"%s\" non esiste"
 
-#: catalog/namespace.c:3590
+#: catalog/namespace.c:3605
 #, c-format
 msgid "permission denied to create temporary tables in database \"%s\""
 msgstr "permesso di creare tabelle temporanee nel database \"%s\" negato"
 
-#: catalog/namespace.c:3606
+#: catalog/namespace.c:3621
 #, c-format
 msgid "cannot create temporary tables during recovery"
 msgstr "non è possibile creare tabelle temporanee durante il recupero"
 
-#: catalog/namespace.c:3850 commands/tablespace.c:1083 commands/variable.c:61
-#: replication/syncrep.c:676 utils/misc/guc.c:8335
+#: catalog/namespace.c:3865 commands/tablespace.c:1106 commands/variable.c:61
+#: replication/syncrep.c:677 utils/misc/guc.c:9023
 #, c-format
 msgid "List syntax is invalid."
 msgstr "La sintassi della lista non è valida."
 
-#: catalog/objectaddress.c:719
+#: catalog/objectaddress.c:732
 msgid "database name cannot be qualified"
 msgstr "il nome del database non può essere qualificato"
 
-#: catalog/objectaddress.c:722 commands/extension.c:2427
+#: catalog/objectaddress.c:735 commands/extension.c:2423
 #, c-format
 msgid "extension name cannot be qualified"
 msgstr "il nome dell'estensione non può essere qualificato"
 
-#: catalog/objectaddress.c:725
+#: catalog/objectaddress.c:738
 msgid "tablespace name cannot be qualified"
 msgstr "il nome del tablespace non può essere qualificato"
 
-#: catalog/objectaddress.c:728
+#: catalog/objectaddress.c:741
 msgid "role name cannot be qualified"
 msgstr "il nome del ruolo non può essere qualificato"
 
-#: catalog/objectaddress.c:731
+#: catalog/objectaddress.c:744
 msgid "schema name cannot be qualified"
 msgstr "il nome dello schema non può essere qualificato"
 
-#: catalog/objectaddress.c:734
+#: catalog/objectaddress.c:747
 msgid "language name cannot be qualified"
 msgstr "il nome del linguaggio non può essere qualificato"
 
-#: catalog/objectaddress.c:737
+#: catalog/objectaddress.c:750
 msgid "foreign-data wrapper name cannot be qualified"
 msgstr "il nome del wrapper di dati esterni non può essere qualificato"
 
-#: catalog/objectaddress.c:740
+#: catalog/objectaddress.c:753
 msgid "server name cannot be qualified"
 msgstr "il nome del server non può essere qualificato"
 
-#: catalog/objectaddress.c:743
+#: catalog/objectaddress.c:756
 msgid "event trigger name cannot be qualified"
 msgstr "il nome del trigger di evento non può essere qualificato"
 
-#: catalog/objectaddress.c:856 commands/lockcmds.c:94 commands/tablecmds.c:207
-#: commands/tablecmds.c:1237 commands/tablecmds.c:4015
-#: commands/tablecmds.c:7338
+#: catalog/objectaddress.c:869 commands/lockcmds.c:94 commands/tablecmds.c:208
+#: commands/tablecmds.c:1263 commands/tablecmds.c:4130
+#: commands/tablecmds.c:7601
 #, c-format
 msgid "\"%s\" is not a table"
 msgstr "\"%s\" non è una tabella"
 
-#: catalog/objectaddress.c:863 commands/tablecmds.c:219
-#: commands/tablecmds.c:4039 commands/tablecmds.c:10499 commands/view.c:134
+#: catalog/objectaddress.c:876 commands/tablecmds.c:220
+#: commands/tablecmds.c:4154 commands/tablecmds.c:11249 commands/view.c:154
 #, c-format
 msgid "\"%s\" is not a view"
 msgstr "\"%s\" non è una vista"
 
-#: catalog/objectaddress.c:870 commands/matview.c:144 commands/tablecmds.c:225
-#: commands/tablecmds.c:10504
+#: catalog/objectaddress.c:883 commands/matview.c:167 commands/tablecmds.c:226
+#: commands/tablecmds.c:11254
 #, c-format
 msgid "\"%s\" is not a materialized view"
 msgstr "\"%s\" non è una vista materializzata"
 
-#: catalog/objectaddress.c:877 commands/tablecmds.c:243
-#: commands/tablecmds.c:4042 commands/tablecmds.c:10509
+#: catalog/objectaddress.c:890 commands/tablecmds.c:244
+#: commands/tablecmds.c:4157 commands/tablecmds.c:11259
 #, c-format
 msgid "\"%s\" is not a foreign table"
 msgstr "\"%s\" non è una tabella esterna"
 
-#: catalog/objectaddress.c:1008
+#: catalog/objectaddress.c:1028
 #, c-format
 msgid "column name must be qualified"
 msgstr "il nome della colonna deve essere qualificato"
 
-#: catalog/objectaddress.c:1061 commands/functioncmds.c:127
-#: commands/tablecmds.c:235 commands/typecmds.c:3245 parser/parse_func.c:1575
-#: parser/parse_type.c:203 utils/adt/acl.c:4374 utils/adt/regproc.c:1017
+#: catalog/objectaddress.c:1083 commands/functioncmds.c:126
+#: commands/tablecmds.c:236 commands/typecmds.c:3253 parser/parse_type.c:222
+#: parser/parse_type.c:251 parser/parse_type.c:795 utils/adt/acl.c:4374
+#: utils/adt/regproc.c:1165
 #, c-format
 msgid "type \"%s\" does not exist"
 msgstr "il tipo \"%s\" non esiste"
 
-#: catalog/objectaddress.c:1217 libpq/be-fsstubs.c:352
+#: catalog/objectaddress.c:1240 libpq/be-fsstubs.c:352
 #, c-format
 msgid "must be owner of large object %u"
 msgstr "occorre essere proprietari del large object %u"
 
-#: catalog/objectaddress.c:1232 commands/functioncmds.c:1298
+#: catalog/objectaddress.c:1255 commands/functioncmds.c:1328
 #, c-format
 msgid "must be owner of type %s or type %s"
 msgstr "occorre essere proprietari del tipo %s o del tipo %s"
 
-#: catalog/objectaddress.c:1263 catalog/objectaddress.c:1279
+#: catalog/objectaddress.c:1286 catalog/objectaddress.c:1302
 #, c-format
 msgid "must be superuser"
 msgstr "occorre essere superutenti"
 
-#: catalog/objectaddress.c:1270
+#: catalog/objectaddress.c:1293
 #, c-format
 msgid "must have CREATEROLE privilege"
 msgstr "occorre avere privilegio CREATEROLE"
 
-#: catalog/objectaddress.c:1516
+#: catalog/objectaddress.c:1539
 #, c-format
 msgid " column %s"
 msgstr " colonna %s"
 
-#: catalog/objectaddress.c:1522
+#: catalog/objectaddress.c:1545
 #, c-format
 msgid "function %s"
 msgstr "funzione %s"
 
-#: catalog/objectaddress.c:1527
+#: catalog/objectaddress.c:1550
 #, c-format
 msgid "type %s"
 msgstr "tipo %s"
 
-#: catalog/objectaddress.c:1557
+#: catalog/objectaddress.c:1580
 #, c-format
 msgid "cast from %s to %s"
 msgstr "conversione da %s a %s"
 
-#: catalog/objectaddress.c:1577
+#: catalog/objectaddress.c:1600
 #, c-format
 msgid "collation %s"
 msgstr "ordinamento %s"
 
-#: catalog/objectaddress.c:1601
+#: catalog/objectaddress.c:1624
 #, c-format
 msgid "constraint %s on %s"
 msgstr "vincolo %s su %s"
 
-#: catalog/objectaddress.c:1607
+#: catalog/objectaddress.c:1630
 #, c-format
 msgid "constraint %s"
 msgstr "vincolo %s"
 
-#: catalog/objectaddress.c:1624
+#: catalog/objectaddress.c:1647
 #, c-format
 msgid "conversion %s"
 msgstr "conversione %s"
 
-#: catalog/objectaddress.c:1661
+#: catalog/objectaddress.c:1684
 #, c-format
 msgid "default for %s"
 msgstr "predefinito per %s"
 
-#: catalog/objectaddress.c:1678
+#: catalog/objectaddress.c:1701
 #, c-format
 msgid "language %s"
 msgstr "linguaggio %s"
 
-#: catalog/objectaddress.c:1684
+#: catalog/objectaddress.c:1707
 #, c-format
 msgid "large object %u"
 msgstr "large object %u"
 
-#: catalog/objectaddress.c:1689
+#: catalog/objectaddress.c:1712
 #, c-format
 msgid "operator %s"
 msgstr "operatore %s"
 
-#: catalog/objectaddress.c:1721
+#: catalog/objectaddress.c:1744
 #, c-format
 msgid "operator class %s for access method %s"
 msgstr "classe di operatori %s per il metodo di accesso %s"
@@ -3200,7 +3309,7 @@ msgstr "classe di operatori %s per il metodo di accesso %s"
 #. first two %s's are data type names, the third %s is the
 #. description of the operator family, and the last %s is the
 #. textual form of the operator with arguments.
-#: catalog/objectaddress.c:1771
+#: catalog/objectaddress.c:1794
 #, c-format
 msgid "operator %d (%s, %s) of %s: %s"
 msgstr "operatore %d (%s, %s) della %s: %s"
@@ -3209,226 +3318,269 @@ msgstr "operatore %d (%s, %s) della %s: %s"
 #. are data type names, the third %s is the description of the
 #. operator family, and the last %s is the textual form of the
 #. function with arguments.
-#: catalog/objectaddress.c:1821
+#: catalog/objectaddress.c:1844
 #, c-format
 msgid "function %d (%s, %s) of %s: %s"
 msgstr "funzione %d (%s, %s) della %s: %s"
 
-#: catalog/objectaddress.c:1861
+#: catalog/objectaddress.c:1884
 #, c-format
 msgid "rule %s on "
 msgstr "regola %s on "
 
-#: catalog/objectaddress.c:1896
+#: catalog/objectaddress.c:1919
 #, c-format
 msgid "trigger %s on "
 msgstr "trigger %s su "
 
-#: catalog/objectaddress.c:1913
+#: catalog/objectaddress.c:1936
 #, c-format
 msgid "schema %s"
 msgstr "schema %s"
 
-#: catalog/objectaddress.c:1926
+#: catalog/objectaddress.c:1949
 #, c-format
 msgid "text search parser %s"
 msgstr "analizzatore di ricerca di testo %s"
 
-#: catalog/objectaddress.c:1941
+#: catalog/objectaddress.c:1964
 #, c-format
 msgid "text search dictionary %s"
 msgstr "dizionario di ricerca di testo %s"
 
-#: catalog/objectaddress.c:1956
+#: catalog/objectaddress.c:1979
 #, c-format
 msgid "text search template %s"
 msgstr "modello di ricerca di testo %s"
 
-#: catalog/objectaddress.c:1971
+#: catalog/objectaddress.c:1994
 #, c-format
 msgid "text search configuration %s"
 msgstr "configurazione di ricerca di testo %s"
 
-#: catalog/objectaddress.c:1979
+#: catalog/objectaddress.c:2002
 #, c-format
 msgid "role %s"
 msgstr "regola %s"
 
-#: catalog/objectaddress.c:1992
+#: catalog/objectaddress.c:2015
 #, c-format
 msgid "database %s"
 msgstr "database %s"
 
-#: catalog/objectaddress.c:2004
+#: catalog/objectaddress.c:2027
 #, c-format
 msgid "tablespace %s"
 msgstr "tablespace %s"
 
-#: catalog/objectaddress.c:2013
+#: catalog/objectaddress.c:2036
 #, c-format
 msgid "foreign-data wrapper %s"
 msgstr "wrapper di dati esterni %s"
 
-#: catalog/objectaddress.c:2022
+#: catalog/objectaddress.c:2045
 #, c-format
 msgid "server %s"
 msgstr "server %s"
 
-#: catalog/objectaddress.c:2047
+#: catalog/objectaddress.c:2070
 #, c-format
 msgid "user mapping for %s"
 msgstr "mappatura utenti per %s"
 
-#: catalog/objectaddress.c:2081
+#: catalog/objectaddress.c:2104
 #, c-format
 msgid "default privileges on new relations belonging to role %s"
 msgstr "privilegi predefiniti sulle nuove relazioni appartenenti al ruolo %s"
 
-#: catalog/objectaddress.c:2086
+#: catalog/objectaddress.c:2109
 #, c-format
 msgid "default privileges on new sequences belonging to role %s"
 msgstr "privilegi predefiniti sulle nuove sequenze appartenenti al ruolo %s"
 
-#: catalog/objectaddress.c:2091
+#: catalog/objectaddress.c:2114
 #, c-format
 msgid "default privileges on new functions belonging to role %s"
 msgstr "privilegi predefiniti sulle nuove funzioni appartenenti al ruolo %s"
 
-#: catalog/objectaddress.c:2096
+#: catalog/objectaddress.c:2119
 #, c-format
 msgid "default privileges on new types belonging to role %s"
 msgstr "privilegi predefiniti sui nuovi tipi appartenenti al ruolo %s"
 
-#: catalog/objectaddress.c:2102
+#: catalog/objectaddress.c:2125
 #, c-format
 msgid "default privileges belonging to role %s"
 msgstr "privilegi predefiniti appartenenti al ruolo %s"
 
-#: catalog/objectaddress.c:2110
+#: catalog/objectaddress.c:2133
 #, c-format
 msgid " in schema %s"
 msgstr " nello schema %s"
 
-#: catalog/objectaddress.c:2127
+#: catalog/objectaddress.c:2150
 #, c-format
 msgid "extension %s"
 msgstr "estensione %s"
 
-#: catalog/objectaddress.c:2140
+#: catalog/objectaddress.c:2163
 #, c-format
 msgid "event trigger %s"
 msgstr "trigger di evento %s"
 
-#: catalog/objectaddress.c:2200
+#: catalog/objectaddress.c:2223
 #, c-format
 msgid "table %s"
 msgstr "tabella %s"
 
-#: catalog/objectaddress.c:2204
+#: catalog/objectaddress.c:2227
 #, c-format
 msgid "index %s"
 msgstr "indice %s"
 
-#: catalog/objectaddress.c:2208
+#: catalog/objectaddress.c:2231
 #, c-format
 msgid "sequence %s"
 msgstr "sequenza %s"
 
-#: catalog/objectaddress.c:2212
+#: catalog/objectaddress.c:2235
 #, c-format
 msgid "toast table %s"
 msgstr "tabella toast %s"
 
-#: catalog/objectaddress.c:2216
+#: catalog/objectaddress.c:2239
 #, c-format
 msgid "view %s"
 msgstr "vista %s"
 
-#: catalog/objectaddress.c:2220
+#: catalog/objectaddress.c:2243
 #, c-format
 msgid "materialized view %s"
 msgstr "vista materializzata %s"
 
-#: catalog/objectaddress.c:2224
+#: catalog/objectaddress.c:2247
 #, c-format
 msgid "composite type %s"
 msgstr "tipo composito %s"
 
-#: catalog/objectaddress.c:2228
+#: catalog/objectaddress.c:2251
 #, c-format
 msgid "foreign table %s"
 msgstr "tabella esterna %s"
 
-#: catalog/objectaddress.c:2233
+#: catalog/objectaddress.c:2256
 #, c-format
 msgid "relation %s"
 msgstr "relazione %s"
 
-#: catalog/objectaddress.c:2270
+#: catalog/objectaddress.c:2293
 #, c-format
 msgid "operator family %s for access method %s"
 msgstr "famiglia di operatori %s per il metodo d'accesso %s"
 
-#: catalog/pg_aggregate.c:102
+#: catalog/pg_aggregate.c:118
+#, c-format
+msgid "aggregates cannot have more than %d argument"
+msgid_plural "aggregates cannot have more than %d arguments"
+msgstr[0] "gli aggregati non possono avere più di %d argomento"
+msgstr[1] "gli aggregati non possono avere più di %d argomenti"
+
+#: catalog/pg_aggregate.c:141 catalog/pg_aggregate.c:151
 #, c-format
 msgid "cannot determine transition data type"
 msgstr "non è possibile determinare il tipo di dati della transizione"
 
-#: catalog/pg_aggregate.c:103
+#: catalog/pg_aggregate.c:142 catalog/pg_aggregate.c:152
 #, c-format
 msgid "An aggregate using a polymorphic transition type must have at least one polymorphic argument."
 msgstr "Un aggregato che usa un tipo di transizione polimorfico deve avere almeno un argomento polimorfico."
 
-#: catalog/pg_aggregate.c:126
+#: catalog/pg_aggregate.c:165
+#, c-format
+msgid "a variadic ordered-set aggregate must use VARIADIC type ANY"
+msgstr "un aggregato variadico su insieme ordinato deve usare il tipo VARIADIC ANY"
+
+#: catalog/pg_aggregate.c:191
+#, c-format
+msgid "a hypothetical-set aggregate must have direct arguments matching its aggregated arguments"
+msgstr "gli argomenti diretti di un aggregato su insieme ipotetico devono combaciare con gli argomenti aggregati"
+
+#: catalog/pg_aggregate.c:238 catalog/pg_aggregate.c:282
 #, c-format
 msgid "return type of transition function %s is not %s"
 msgstr "il tipo restituito dalla funzione di transizione %s non è %s"
 
-#: catalog/pg_aggregate.c:146
+#: catalog/pg_aggregate.c:258 catalog/pg_aggregate.c:301
 #, c-format
 msgid "must not omit initial value when transition function is strict and transition type is not compatible with input type"
 msgstr "non si può omettere initval quando la funzione di transizione è strict e il tipo di transizione non è compatibile col tipo in input"
 
-#: catalog/pg_aggregate.c:177 catalog/pg_proc.c:241 catalog/pg_proc.c:248
+#: catalog/pg_aggregate.c:327
 #, c-format
-msgid "cannot determine result data type"
-msgstr "non è possibile determinare il tipo di dati del risultato"
+msgid "return type of inverse transition function %s is not %s"
+msgstr "il tipo restituito dalla funzione di transizione inversa %s non è %s"
 
-#: catalog/pg_aggregate.c:178
+#: catalog/pg_aggregate.c:344 executor/nodeWindowAgg.c:2301
+#, c-format
+msgid "strictness of aggregate's forward and inverse transition functions must match"
+msgstr "le ristrettezze della trasformazione diretta ed inversa di un aggregato devono combaciare"
+
+#: catalog/pg_aggregate.c:388 catalog/pg_aggregate.c:464
+#, c-format
+msgid "final function with extra arguments must not be declared STRICT"
+msgstr "la funzione finale con argomenti aggiuntivi non deve essere dichiarata STRICT"
+
+#: catalog/pg_aggregate.c:410 catalog/pg_proc.c:241 catalog/pg_proc.c:248
+#, c-format
+msgid "cannot determine result data type"
+msgstr "non è possibile determinare il tipo di dati del risultato"
+
+#: catalog/pg_aggregate.c:411
 #, c-format
 msgid "An aggregate returning a polymorphic type must have at least one polymorphic argument."
 msgstr "Una funzione di aggregazione che restituisce un tipo polimorfico deve avere almeno un argomento polimorfico."
 
-#: catalog/pg_aggregate.c:190 catalog/pg_proc.c:254
+#: catalog/pg_aggregate.c:423 catalog/pg_proc.c:254
 #, c-format
 msgid "unsafe use of pseudo-type \"internal\""
 msgstr "uso dello pseudo-tipo \"internal\" non sicuro"
 
-#: catalog/pg_aggregate.c:191 catalog/pg_proc.c:255
+#: catalog/pg_aggregate.c:424 catalog/pg_proc.c:255
 #, c-format
 msgid "A function returning \"internal\" must have at least one \"internal\" argument."
 msgstr "Una funzione che restituisce \"internal\" deve avere almeno un argomento \"internal\"."
 
-#: catalog/pg_aggregate.c:199
+#: catalog/pg_aggregate.c:477
+#, c-format
+msgid "moving-aggregate implementation returns type %s, but plain implementation returns type %s"
+msgstr "l'implementazione dell'aggregazione mobile restituisce il tipo %s ma l'implementazione semplice resituisce il tipo %s"
+
+#: catalog/pg_aggregate.c:488
 #, c-format
 msgid "sort operator can only be specified for single-argument aggregates"
 msgstr "l'operatore di ordinamento può essere specificato sono per aggregati con un solo argomento"
 
-#: catalog/pg_aggregate.c:356 commands/typecmds.c:1655
-#: commands/typecmds.c:1706 commands/typecmds.c:1737 commands/typecmds.c:1760
-#: commands/typecmds.c:1781 commands/typecmds.c:1808 commands/typecmds.c:1835
-#: commands/typecmds.c:1912 commands/typecmds.c:1954 parser/parse_func.c:290
-#: parser/parse_func.c:301 parser/parse_func.c:1554
+#: catalog/pg_aggregate.c:701 commands/typecmds.c:1657
+#: commands/typecmds.c:1708 commands/typecmds.c:1739 commands/typecmds.c:1762
+#: commands/typecmds.c:1783 commands/typecmds.c:1810 commands/typecmds.c:1837
+#: commands/typecmds.c:1914 commands/typecmds.c:1956 parser/parse_func.c:357
+#: parser/parse_func.c:386 parser/parse_func.c:411 parser/parse_func.c:425
+#: parser/parse_func.c:500 parser/parse_func.c:511 parser/parse_func.c:1907
 #, c-format
 msgid "function %s does not exist"
 msgstr "la funzione %s non esiste"
 
-#: catalog/pg_aggregate.c:362
+#: catalog/pg_aggregate.c:707
 #, c-format
 msgid "function %s returns a set"
 msgstr "la funzione %s restituisce un insieme"
 
-#: catalog/pg_aggregate.c:387
+#: catalog/pg_aggregate.c:722
+#, c-format
+msgid "function %s must accept VARIADIC ANY to be used in this aggregate"
+msgstr "la funzione %s deve accettare VARIADIC ANY per essere usata in questo aggregato"
+
+#: catalog/pg_aggregate.c:746
 #, c-format
 msgid "function %s requires run-time type coercion"
 msgstr "la funzione %s richiede una coercizione di tipo a run-time"
@@ -3448,22 +3600,22 @@ msgstr "l'ordinamento \"%s\" esiste già"
 msgid "constraint \"%s\" for domain %s already exists"
 msgstr "il vincolo \"%s\" per il dominio %s esiste già"
 
-#: catalog/pg_constraint.c:792
+#: catalog/pg_constraint.c:811
 #, c-format
 msgid "table \"%s\" has multiple constraints named \"%s\""
 msgstr "la tabella \"%s\" ha più di un vincolo di nome \"%s\""
 
-#: catalog/pg_constraint.c:804
+#: catalog/pg_constraint.c:823
 #, c-format
 msgid "constraint \"%s\" for table \"%s\" does not exist"
 msgstr "il vincolo \"%s\" per la tabella \"%s\" non esiste"
 
-#: catalog/pg_constraint.c:850
+#: catalog/pg_constraint.c:869
 #, c-format
 msgid "domain \"%s\" has multiple constraints named \"%s\""
 msgstr "il dominio \"%s\" ha più di un vincolo di nome \"%s\""
 
-#: catalog/pg_constraint.c:862
+#: catalog/pg_constraint.c:881
 #, c-format
 msgid "constraint \"%s\" for domain \"%s\" does not exist"
 msgstr "il vincolo \"%s\" per la il dominio \"%s\" non esiste"
@@ -3478,7 +3630,7 @@ msgstr "la conversione \"%s\" esiste già"
 msgid "default conversion for %s to %s already exists"
 msgstr "la conversione predefinita da %s a %s esiste già"
 
-#: catalog/pg_depend.c:165 commands/extension.c:2930
+#: catalog/pg_depend.c:165 commands/extension.c:2926
 #, c-format
 msgid "%s is already a member of extension \"%s\""
 msgstr "%s fa già parte dell'estensione \"%s\""
@@ -3488,32 +3640,32 @@ msgstr "%s fa già parte dell'estensione \"%s\""
 msgid "cannot remove dependency on %s because it is a system object"
 msgstr "non è possibile rimuovere la dipendenza da %s perché è un oggetto di sistema"
 
-#: catalog/pg_enum.c:114 catalog/pg_enum.c:201
+#: catalog/pg_enum.c:115 catalog/pg_enum.c:202
 #, c-format
 msgid "invalid enum label \"%s\""
 msgstr "etichetta enumerata non valida \"%s\""
 
-#: catalog/pg_enum.c:115 catalog/pg_enum.c:202
+#: catalog/pg_enum.c:116 catalog/pg_enum.c:203
 #, c-format
 msgid "Labels must be %d characters or less."
 msgstr "Le etichette devono essere lunghe %d caratteri o meno."
 
-#: catalog/pg_enum.c:230
+#: catalog/pg_enum.c:231
 #, c-format
 msgid "enum label \"%s\" already exists, skipping"
 msgstr "l'etichetta di enum \"%s\" esiste già, saltata"
 
-#: catalog/pg_enum.c:237
+#: catalog/pg_enum.c:238
 #, c-format
 msgid "enum label \"%s\" already exists"
 msgstr "l'etichetta di enum \"%s\" esiste già"
 
-#: catalog/pg_enum.c:292
+#: catalog/pg_enum.c:293
 #, c-format
 msgid "\"%s\" is not an existing enum label"
 msgstr "\"%s\" non è un'etichetta enumerata esistente"
 
-#: catalog/pg_enum.c:353
+#: catalog/pg_enum.c:354
 #, c-format
 msgid "ALTER TYPE ADD BEFORE/AFTER is incompatible with binary upgrade"
 msgstr "ALTER TYPE ADD BEFORE/AFTER non è compatibile con gli aggiornamenti binari"
@@ -3583,7 +3735,7 @@ msgstr "l'operatore %s esiste già "
 msgid "operator cannot be its own negator or sort operator"
 msgstr "l'operatore non può negare o ordinare se stesso"
 
-#: catalog/pg_proc.c:129 parser/parse_func.c:1599 parser/parse_func.c:1639
+#: catalog/pg_proc.c:129 parser/parse_func.c:1931 parser/parse_func.c:1971
 #, c-format
 msgid "functions cannot have more than %d argument"
 msgid_plural "functions cannot have more than %d arguments"
@@ -3661,27 +3813,27 @@ msgstr "la funzione \"%s\" è una funzione finestra"
 msgid "function \"%s\" is not a window function"
 msgstr "la funzione \"%s\" non è una funzione finestra"
 
-#: catalog/pg_proc.c:743
+#: catalog/pg_proc.c:746
 #, c-format
 msgid "there is no built-in function named \"%s\""
 msgstr "non c'è nessuna funzione predefinita chiamata \"%s\""
 
-#: catalog/pg_proc.c:835
+#: catalog/pg_proc.c:844
 #, c-format
 msgid "SQL functions cannot return type %s"
 msgstr "Le funzioni SQL non possono restituire il tipo %s"
 
-#: catalog/pg_proc.c:850
+#: catalog/pg_proc.c:859
 #, c-format
 msgid "SQL functions cannot have arguments of type %s"
 msgstr "le funzioni SQL non possono avere argomenti di tipo %s"
 
-#: catalog/pg_proc.c:936 executor/functions.c:1419
+#: catalog/pg_proc.c:945 executor/functions.c:1418
 #, c-format
 msgid "SQL function \"%s\""
 msgstr "funzione SQL \"%s\""
 
-#: catalog/pg_shdepend.c:689
+#: catalog/pg_shdepend.c:691
 #, c-format
 msgid ""
 "\n"
@@ -3696,117 +3848,157 @@ msgstr[1] ""
 "\n"
 "ed oggetti in %d altri database (guarda il log per la lista)"
 
-#: catalog/pg_shdepend.c:1001
+#: catalog/pg_shdepend.c:1003
 #, c-format
 msgid "role %u was concurrently dropped"
 msgstr "la regola %u è stata eliminata concorrentemente"
 
-#: catalog/pg_shdepend.c:1020
+#: catalog/pg_shdepend.c:1022
 #, c-format
 msgid "tablespace %u was concurrently dropped"
 msgstr "Il tablespace %u è stato eliminato concorrentemente"
 
-#: catalog/pg_shdepend.c:1035
+#: catalog/pg_shdepend.c:1037
 #, c-format
 msgid "database %u was concurrently dropped"
 msgstr "Il database %u è stato eliminato concorrentemente"
 
-#: catalog/pg_shdepend.c:1079
+#: catalog/pg_shdepend.c:1081
 #, c-format
 msgid "owner of %s"
 msgstr "proprietario di %s"
 
-#: catalog/pg_shdepend.c:1081
+#: catalog/pg_shdepend.c:1083
 #, c-format
 msgid "privileges for %s"
 msgstr "privilegi per %s"
 
 #. translator: %s will always be "database %s"
-#: catalog/pg_shdepend.c:1089
+#: catalog/pg_shdepend.c:1091
 #, c-format
 msgid "%d object in %s"
 msgid_plural "%d objects in %s"
 msgstr[0] "%d oggetto nel %s"
 msgstr[1] "%d oggetti nel %s"
 
-#: catalog/pg_shdepend.c:1200
+#: catalog/pg_shdepend.c:1202
 #, c-format
 msgid "cannot drop objects owned by %s because they are required by the database system"
 msgstr "non è possibile eliminare oggetti di proprietà di %s perché richiesti dal database"
 
-#: catalog/pg_shdepend.c:1303
+#: catalog/pg_shdepend.c:1305
 #, c-format
 msgid "cannot reassign ownership of objects owned by %s because they are required by the database system"
 msgstr "non è possibile modificare il proprietario degli oggetti di proprietà di %s perché richiesti dal database"
 
-#: catalog/pg_type.c:243
+#: catalog/pg_type.c:244
 #, c-format
 msgid "invalid type internal size %d"
 msgstr "dimensione interna del tipo %d non valida"
 
-#: catalog/pg_type.c:259 catalog/pg_type.c:267 catalog/pg_type.c:275
-#: catalog/pg_type.c:284
+#: catalog/pg_type.c:260 catalog/pg_type.c:268 catalog/pg_type.c:276
+#: catalog/pg_type.c:285
 #, c-format
 msgid "alignment \"%c\" is invalid for passed-by-value type of size %d"
 msgstr "l'allineamento \"%c\" non è valido per tipi passati per valore di grandezza %d"
 
-#: catalog/pg_type.c:291
+#: catalog/pg_type.c:292
 #, c-format
 msgid "internal size %d is invalid for passed-by-value type"
 msgstr "la dimensione interna %d non è valida per tipi passati per valore"
 
-#: catalog/pg_type.c:300 catalog/pg_type.c:306
+#: catalog/pg_type.c:301 catalog/pg_type.c:307
 #, c-format
 msgid "alignment \"%c\" is invalid for variable-length type"
 msgstr "l'allineamento \"%c\" non è valido per il tipi a lunghezza variabile"
 
-#: catalog/pg_type.c:314
+#: catalog/pg_type.c:315
 #, c-format
 msgid "fixed-size types must have storage PLAIN"
 msgstr "i tipi a dimensione fissa devono avere immagazzinamento PLAIN"
 
-#: catalog/pg_type.c:772
+#: catalog/pg_type.c:773
 #, c-format
 msgid "could not form array type name for type \"%s\""
 msgstr "creazione del nome per il tipo array del tipo \"%s\" fallita"
 
-#: catalog/toasting.c:91 commands/indexcmds.c:375 commands/tablecmds.c:4024
-#: commands/tablecmds.c:10419
+#: catalog/toasting.c:104 commands/indexcmds.c:380 commands/tablecmds.c:4139
+#: commands/tablecmds.c:11137
 #, c-format
 msgid "\"%s\" is not a table or materialized view"
 msgstr "\"%s\" non è una tabella né una vista materializzata"
 
-#: catalog/toasting.c:142
+#: catalog/toasting.c:157
 #, c-format
 msgid "shared tables cannot be toasted after initdb"
 msgstr "le tabelle condivise non possono essere trasformate in toast dopo initdb"
 
-#: commands/aggregatecmds.c:106
+#: commands/aggregatecmds.c:148
+#, c-format
+msgid "only ordered-set aggregates can be hypothetical"
+msgstr "solo gli aggregati su insiemi ordinati possono essere ipotetici"
+
+#: commands/aggregatecmds.c:171
 #, c-format
 msgid "aggregate attribute \"%s\" not recognized"
 msgstr "attributo dell'aggregato \"%s\" non riconosciuto"
 
-#: commands/aggregatecmds.c:116
+#: commands/aggregatecmds.c:181
 #, c-format
 msgid "aggregate stype must be specified"
 msgstr "l'attributo stype dell'aggregato deve essere specificato"
 
-#: commands/aggregatecmds.c:120
+#: commands/aggregatecmds.c:185
 #, c-format
 msgid "aggregate sfunc must be specified"
 msgstr "l'attributo sfunc dell'aggregato deve essere specificato"
 
-#: commands/aggregatecmds.c:137
+#: commands/aggregatecmds.c:197
+#, c-format
+msgid "aggregate msfunc must be specified when mstype is specified"
+msgstr "l'attributo msfunc dell'aggregato deve essere specificato quando mstype lo è"
+
+#: commands/aggregatecmds.c:201
+#, c-format
+msgid "aggregate minvfunc must be specified when mstype is specified"
+msgstr "l'attributo minvfunc dell'aggregato deve essere specificato quando mstype lo è"
+
+#: commands/aggregatecmds.c:208
+#, c-format
+msgid "aggregate msfunc must not be specified without mstype"
+msgstr "l'attributo msfunc dell'aggregato non deve essere specificato se mstype non lo è"
+
+#: commands/aggregatecmds.c:212
+#, c-format
+msgid "aggregate minvfunc must not be specified without mstype"
+msgstr "l'attributo minvfunc dell'aggregato non deve essere specificato se mstype non lo è"
+
+#: commands/aggregatecmds.c:216
+#, c-format
+msgid "aggregate mfinalfunc must not be specified without mstype"
+msgstr "l'attributo mfinalfunc dell'aggregato non deve essere specificato se mstype non lo è"
+
+#: commands/aggregatecmds.c:220
+#, c-format
+msgid "aggregate msspace must not be specified without mstype"
+msgstr "l'attributo msspace dell'aggregato non deve essere specificato se mstype non lo è"
+
+#: commands/aggregatecmds.c:224
+#, c-format
+msgid "aggregate minitcond must not be specified without mstype"
+msgstr "l'attributo minitcond dell'aggregato non deve essere specificato se mstype non lo è"
+
+#: commands/aggregatecmds.c:244
 #, c-format
 msgid "aggregate input type must be specified"
 msgstr "il tipo di input dell'aggregato deve essere specificato"
 
-#: commands/aggregatecmds.c:162
+#: commands/aggregatecmds.c:274
 #, c-format
 msgid "basetype is redundant with aggregate input type specification"
 msgstr "il basetype è ridondante se il tipo di input è specificato per un aggregato"
 
-#: commands/aggregatecmds.c:195
+#: commands/aggregatecmds.c:315 commands/aggregatecmds.c:335
 #, c-format
 msgid "aggregate transition data type cannot be %s"
 msgstr "il tipo di dato della transizione dell'aggregato non può essere %s"
@@ -3866,166 +4058,166 @@ msgstr "occorre essere un superutente per rinominare %s"
 msgid "must be superuser to set schema of %s"
 msgstr "occorre essere un superutente per impostare lo schema di %s"
 
-#: commands/analyze.c:155
+#: commands/analyze.c:156
 #, c-format
 msgid "skipping analyze of \"%s\" --- lock not available"
 msgstr "analisi di \"%s\" saltata --- lock non disponibile"
 
-#: commands/analyze.c:172
+#: commands/analyze.c:173
 #, c-format
 msgid "skipping \"%s\" --- only superuser can analyze it"
 msgstr "\"%s\" saltato --- solo un superutente può analizzarlo"
 
-#: commands/analyze.c:176
+#: commands/analyze.c:177
 #, c-format
 msgid "skipping \"%s\" --- only superuser or database owner can analyze it"
 msgstr "\"%s\" saltato --- solo un superutente o il proprietario del database possono analizzarlo."
 
-#: commands/analyze.c:180
+#: commands/analyze.c:181
 #, c-format
 msgid "skipping \"%s\" --- only table or database owner can analyze it"
 msgstr "\"%s\" saltato --- solo il proprietario del database o della tabella possono analizzarlo"
 
-#: commands/analyze.c:240
+#: commands/analyze.c:241
 #, c-format
 msgid "skipping \"%s\" --- cannot analyze this foreign table"
 msgstr "\"%s\" saltato --- non è possibile analizzare questa tabella esterna"
 
-#: commands/analyze.c:251
+#: commands/analyze.c:252
 #, c-format
 msgid "skipping \"%s\" --- cannot analyze non-tables or special system tables"
 msgstr "\"%s\" saltato --- non è possibile analizzare non-tabelle o le tabelle speciali di sistema"
 
-#: commands/analyze.c:328
+#: commands/analyze.c:329
 #, c-format
 msgid "analyzing \"%s.%s\" inheritance tree"
 msgstr "analisi dell'albero di ereditarietà di \"%s.%s\""
 
-#: commands/analyze.c:333
+#: commands/analyze.c:334
 #, c-format
 msgid "analyzing \"%s.%s\""
 msgstr "analisi di \"%s.%s\""
 
-#: commands/analyze.c:651
+#: commands/analyze.c:652
 #, c-format
 msgid "automatic analyze of table \"%s.%s.%s\" system usage: %s"
 msgstr "analisi automatica della tabella \"%s.%s.%s\" uso del sistema: %s"
 
-#: commands/analyze.c:1293
+#: commands/analyze.c:1295
 #, c-format
 msgid "\"%s\": scanned %d of %u pages, containing %.0f live rows and %.0f dead rows; %d rows in sample, %.0f estimated total rows"
 msgstr "\"%s\": esaminate %d pagine su %u, contenenti %.0f righe vive e %.0f righe morte; %d righe nel campione, %.0f righe totali stimate"
 
-#: commands/analyze.c:1557 executor/execQual.c:2869
+#: commands/analyze.c:1559 executor/execQual.c:2867
 msgid "could not convert row type"
 msgstr "conversione del tipo riga fallita"
 
-#: commands/async.c:546
+#: commands/async.c:545
 #, c-format
 msgid "channel name cannot be empty"
 msgstr "Il nome del canale non può essere vuoto"
 
-#: commands/async.c:551
+#: commands/async.c:550
 #, c-format
 msgid "channel name too long"
 msgstr "il nome del canale è troppo lungo"
 
-#: commands/async.c:558
+#: commands/async.c:557
 #, c-format
 msgid "payload string too long"
 msgstr "la stringa del carico è troppo lunga"
 
-#: commands/async.c:743
+#: commands/async.c:742
 #, c-format
 msgid "cannot PREPARE a transaction that has executed LISTEN, UNLISTEN, or NOTIFY"
 msgstr "non è possibile eseguire PREPARE in una transazione che ha eseguito LISTEN, UNLISTEN o NOTIFY"
 
-#: commands/async.c:846
+#: commands/async.c:845
 #, c-format
 msgid "too many notifications in the NOTIFY queue"
 msgstr "troppe notifiche nella coda di NOTIFY"
 
-#: commands/async.c:1419
+#: commands/async.c:1418
 #, c-format
 msgid "NOTIFY queue is %.0f%% full"
 msgstr "la coda di NOTIFY è piena al %.0f%%"
 
-#: commands/async.c:1421
+#: commands/async.c:1420
 #, c-format
 msgid "The server process with PID %d is among those with the oldest transactions."
 msgstr "Il processo server con PID %d è tra quelli con le transazioni più vecchie."
 
-#: commands/async.c:1424
+#: commands/async.c:1423
 #, c-format
 msgid "The NOTIFY queue cannot be emptied until that process ends its current transaction."
 msgstr "La coda di NOTIFY non può essere svuotata finché quel processo non avrà terminato la sua transazione corrente."
 
-#: commands/cluster.c:127 commands/cluster.c:369
+#: commands/cluster.c:126 commands/cluster.c:363
 #, c-format
 msgid "cannot cluster temporary tables of other sessions"
 msgstr "non è possibile raggruppare tabelle temporanee di altre sessioni"
 
-#: commands/cluster.c:157
+#: commands/cluster.c:156
 #, c-format
 msgid "there is no previously clustered index for table \"%s\""
 msgstr "non esiste un indice già raggruppato per la tabella \"%s\""
 
-#: commands/cluster.c:171 commands/tablecmds.c:8508
+#: commands/cluster.c:170 commands/tablecmds.c:8795 commands/tablecmds.c:10461
 #, c-format
 msgid "index \"%s\" for table \"%s\" does not exist"
 msgstr "l'indice \"%s\" per la tabella \"%s\" non esiste"
 
-#: commands/cluster.c:358
+#: commands/cluster.c:352
 #, c-format
 msgid "cannot cluster a shared catalog"
 msgstr "non è possibile raggruppare un catalogo condiviso"
 
-#: commands/cluster.c:373
+#: commands/cluster.c:367
 #, c-format
 msgid "cannot vacuum temporary tables of other sessions"
 msgstr "non è possibile ripulire tabelle temporanee di altre sessioni"
 
-#: commands/cluster.c:437
+#: commands/cluster.c:430 commands/tablecmds.c:10471
 #, c-format
 msgid "\"%s\" is not an index for table \"%s\""
 msgstr "\"%s\" non è un indice per la tabella \"%s\""
 
-#: commands/cluster.c:445
+#: commands/cluster.c:438
 #, c-format
 msgid "cannot cluster on index \"%s\" because access method does not support clustering"
 msgstr "non è possibile raggruppare sull'indice \"%s\" perché il metodo di accesso non supporta il raggruppamento"
 
-#: commands/cluster.c:457
+#: commands/cluster.c:450
 #, c-format
 msgid "cannot cluster on partial index \"%s\""
 msgstr "non è possibile raggruppare sull'indice parziale \"%s\""
 
-#: commands/cluster.c:471
+#: commands/cluster.c:464
 #, c-format
 msgid "cannot cluster on invalid index \"%s\""
 msgstr "non è possibile raggruppare sull'indice non valido \"%s\""
 
-#: commands/cluster.c:913
+#: commands/cluster.c:920
 #, c-format
 msgid "clustering \"%s.%s\" using index scan on \"%s\""
 msgstr "raggruppamento di \"%s.%s\" usando una scansione sull'indice \"%s\""
 
-#: commands/cluster.c:919
+#: commands/cluster.c:926
 #, c-format
 msgid "clustering \"%s.%s\" using sequential scan and sort"
 msgstr "raggruppamento di \"%s.%s\" usando una scansione sequenziale e ordinamento"
 
-#: commands/cluster.c:924 commands/vacuumlazy.c:433
+#: commands/cluster.c:931 commands/vacuumlazy.c:444
 #, c-format
 msgid "vacuuming \"%s.%s\""
 msgstr "pulizia di \"%s.%s\""
 
-#: commands/cluster.c:1083
+#: commands/cluster.c:1090
 #, c-format
 msgid "\"%s\": found %.0f removable, %.0f nonremovable row versions in %u pages"
 msgstr "\"%s\": trovate %.0f versioni di riga removibili, %.0f non removibili in %u pagine"
 
-#: commands/cluster.c:1087
+#: commands/cluster.c:1094
 #, c-format
 msgid ""
 "%.0f dead row versions cannot be removed yet.\n"
@@ -4059,16 +4251,16 @@ msgstr "l'ordinamento \"%s\" per la codifica \"%s\" già esiste nello schema \"%
 msgid "collation \"%s\" already exists in schema \"%s\""
 msgstr "l'ordinamento \"%s\" già esiste nello schema \"%s\""
 
-#: commands/comment.c:62 commands/dbcommands.c:797 commands/dbcommands.c:946
-#: commands/dbcommands.c:1049 commands/dbcommands.c:1222
-#: commands/dbcommands.c:1411 commands/dbcommands.c:1506
-#: commands/dbcommands.c:1946 utils/init/postinit.c:775
-#: utils/init/postinit.c:843 utils/init/postinit.c:860
+#: commands/comment.c:62 commands/dbcommands.c:773 commands/dbcommands.c:935
+#: commands/dbcommands.c:1038 commands/dbcommands.c:1211
+#: commands/dbcommands.c:1400 commands/dbcommands.c:1495
+#: commands/dbcommands.c:1912 utils/init/postinit.c:794
+#: utils/init/postinit.c:862 utils/init/postinit.c:879
 #, c-format
 msgid "database \"%s\" does not exist"
 msgstr "il database \"%s\" non esiste"
 
-#: commands/comment.c:101 commands/seclabel.c:114 parser/parse_utilcmd.c:693
+#: commands/comment.c:101 commands/seclabel.c:114 parser/parse_utilcmd.c:686
 #, c-format
 msgid "\"%s\" is not a table, view, materialized view, composite type, or foreign table"
 msgstr "\"%s\" non è una tabella, vista, vista materializzata, tipo composito né una tabella esterna"
@@ -4103,467 +4295,483 @@ msgstr "la codifica di destinazione \"%s\" non esiste"
 msgid "encoding conversion function %s must return type \"void\""
 msgstr "la funzioni di conversione dell'encoding %s deve restituire il tipo \"void\""
 
-#: commands/copy.c:358 commands/copy.c:370 commands/copy.c:404
-#: commands/copy.c:414
+#: commands/copy.c:360 commands/copy.c:372 commands/copy.c:406
+#: commands/copy.c:416
 #, c-format
 msgid "COPY BINARY is not supported to stdout or from stdin"
 msgstr "COPY BINARY non è supportato verso stdout o da stdin"
 
-#: commands/copy.c:512
+#: commands/copy.c:514
 #, c-format
 msgid "could not write to COPY program: %m"
 msgstr "scrittura nel programma COPY fallita: %m"
 
-#: commands/copy.c:517
+#: commands/copy.c:519
 #, c-format
 msgid "could not write to COPY file: %m"
 msgstr "scrittura nel file COPY fallita: %m"
 
-#: commands/copy.c:530
+#: commands/copy.c:532
 #, c-format
 msgid "connection lost during COPY to stdout"
 msgstr "connessione persa durante COPY verso stdout"
 
-#: commands/copy.c:571
+#: commands/copy.c:573
 #, c-format
 msgid "could not read from COPY file: %m"
 msgstr "lettura dal file COPY fallita: %m"
 
-#: commands/copy.c:587 commands/copy.c:606 commands/copy.c:610
-#: tcop/fastpath.c:293 tcop/postgres.c:351 tcop/postgres.c:387
+#: commands/copy.c:589 commands/copy.c:608 commands/copy.c:612
+#: tcop/fastpath.c:293 tcop/postgres.c:342 tcop/postgres.c:378
 #, c-format
 msgid "unexpected EOF on client connection with an open transaction"
 msgstr "fine-file inaspettato sulla connessione del client con una transazione aperta"
 
-#: commands/copy.c:622
+#: commands/copy.c:624
 #, c-format
 msgid "COPY from stdin failed: %s"
 msgstr "COPY da stdin fallita: %s"
 
-#: commands/copy.c:638
+#: commands/copy.c:640
 #, c-format
 msgid "unexpected message type 0x%02X during COPY from stdin"
 msgstr "messaggio del tipo inaspettato 0x%02X durante COPY da stdin"
 
-#: commands/copy.c:792
+#: commands/copy.c:794
 #, c-format
 msgid "must be superuser to COPY to or from an external program"
 msgstr "occorre essere un superutente per effettuare COPY da o verso un programma esterno"
 
-#: commands/copy.c:793 commands/copy.c:799
+#: commands/copy.c:795 commands/copy.c:801
 #, c-format
 msgid "Anyone can COPY to stdout or from stdin. psql's \\copy command also works for anyone."
 msgstr "Chiunque può eseguire COPY verso stdout e da stdin. Anche il comando \\copy di psql funziona per chiunque."
 
-#: commands/copy.c:798
+#: commands/copy.c:800
 #, c-format
 msgid "must be superuser to COPY to or from a file"
 msgstr "bisogna essere un superutente per eseguire un COPY da o verso un file"
 
-#: commands/copy.c:934
+#: commands/copy.c:936
 #, c-format
 msgid "COPY format \"%s\" not recognized"
 msgstr "Formato di COPY \"%s\" non riconosciuto"
 
-#: commands/copy.c:1005 commands/copy.c:1019 commands/copy.c:1039
+#: commands/copy.c:1007 commands/copy.c:1021 commands/copy.c:1035
+#: commands/copy.c:1055
 #, c-format
 msgid "argument to option \"%s\" must be a list of column names"
 msgstr "l'argomento dell'opzione \"%s\" dev'essere una lista di nomi di colonne"
 
-#: commands/copy.c:1052
+#: commands/copy.c:1068
 #, c-format
 msgid "argument to option \"%s\" must be a valid encoding name"
 msgstr "l'argomento dell'opzione \"%s\" dev'essere un nome di codifica valido"
 
-#: commands/copy.c:1058
+#: commands/copy.c:1074
 #, c-format
 msgid "option \"%s\" not recognized"
 msgstr "opzione \"%s\" non riconosciuta"
 
-#: commands/copy.c:1069
+#: commands/copy.c:1085
 #, c-format
 msgid "cannot specify DELIMITER in BINARY mode"
 msgstr "non è possibile specificare DELIMITER in BINARY mode"
 
-#: commands/copy.c:1074
+#: commands/copy.c:1090
 #, c-format
 msgid "cannot specify NULL in BINARY mode"
 msgstr "non è possibile specificare NULL in BINARY mode"
 
-#: commands/copy.c:1096
+#: commands/copy.c:1112
 #, c-format
 msgid "COPY delimiter must be a single one-byte character"
 msgstr "il delimitatore di COPY deve essere un solo carattere di un solo byte"
 
-#: commands/copy.c:1103
+#: commands/copy.c:1119
 #, c-format
 msgid "COPY delimiter cannot be newline or carriage return"
 msgstr "Il delimitatore di COPY non può essere una \"nuova riga\" o un \"ritorno carrello\""
 
-#: commands/copy.c:1109
+#: commands/copy.c:1125
 #, c-format
 msgid "COPY null representation cannot use newline or carriage return"
 msgstr "la rappresentazione dei null in COPY non può usare \"nuova riga\" o \"ritorno carrello\""
 
-#: commands/copy.c:1126
+#: commands/copy.c:1142
 #, c-format
 msgid "COPY delimiter cannot be \"%s\""
 msgstr "il delimitatore di COPY non può essere \"%s\""
 
-#: commands/copy.c:1132
+#: commands/copy.c:1148
 #, c-format
 msgid "COPY HEADER available only in CSV mode"
 msgstr "l'HEADER di COPY è disponibile solo in modalità CSV"
 
-#: commands/copy.c:1138
+#: commands/copy.c:1154
 #, c-format
 msgid "COPY quote available only in CSV mode"
 msgstr "il quoting di COPY è disponibile solo in modalità CSV"
 
-#: commands/copy.c:1143
+#: commands/copy.c:1159
 #, c-format
 msgid "COPY quote must be a single one-byte character"
 msgstr "il quote di COPY dev'essere un solo carattere di un byte"
 
-#: commands/copy.c:1148
+#: commands/copy.c:1164
 #, c-format
 msgid "COPY delimiter and quote must be different"
 msgstr "il delimitatore e il quote di COPY devono essere diversi"
 
-#: commands/copy.c:1154
+#: commands/copy.c:1170
 #, c-format
 msgid "COPY escape available only in CSV mode"
 msgstr "l'escape di COPY è disponibile solo in modalità CSV"
 
-#: commands/copy.c:1159
+#: commands/copy.c:1175
 #, c-format
 msgid "COPY escape must be a single one-byte character"
 msgstr "l'escape di COPY deve essere un solo carattere di un byte"
 
-#: commands/copy.c:1165
+#: commands/copy.c:1181
 #, c-format
 msgid "COPY force quote available only in CSV mode"
 msgstr "il \"force quote\" di COPY è disponibile solo in modalità CSV"
 
-#: commands/copy.c:1169
+#: commands/copy.c:1185
 #, c-format
 msgid "COPY force quote only available using COPY TO"
 msgstr "il \"force quote\" di COPY è disponibile solo in modalità CSV"
 
-#: commands/copy.c:1175
+#: commands/copy.c:1191
 #, c-format
 msgid "COPY force not null available only in CSV mode"
 msgstr "il \"force not null\" di COPY è disponibile solo in modalità CSV"
 
-#: commands/copy.c:1179
+#: commands/copy.c:1195
 #, c-format
 msgid "COPY force not null only available using COPY FROM"
 msgstr "il \"force not null\" di COPY è disponibile solo in COPY FROM"
 
-#: commands/copy.c:1185
+#: commands/copy.c:1201
+#, c-format
+msgid "COPY force null available only in CSV mode"
+msgstr "il \"force null\" di COPY è disponibile solo in modalità CSV"
+
+#: commands/copy.c:1206
+#, c-format
+msgid "COPY force null only available using COPY FROM"
+msgstr "il \"force null\" di COPY è disponibile solo usando COPY FROM"
+
+#: commands/copy.c:1212
 #, c-format
 msgid "COPY delimiter must not appear in the NULL specification"
 msgstr "il delimitatore di COPY non deve apparire nella specificazione di NULL"
 
-#: commands/copy.c:1192
+#: commands/copy.c:1219
 #, c-format
 msgid "CSV quote character must not appear in the NULL specification"
 msgstr "Il carattere quote del CSV non deve apparire nella specificazione di NULL"
 
-#: commands/copy.c:1254
+#: commands/copy.c:1281
 #, c-format
 msgid "table \"%s\" does not have OIDs"
 msgstr "la tabella \"%s\" non ha OID"
 
-#: commands/copy.c:1271
+#: commands/copy.c:1298
 #, c-format
 msgid "COPY (SELECT) WITH OIDS is not supported"
 msgstr "COPY (SELECT) WITH OIDS non è supportata"
 
-#: commands/copy.c:1297
+#: commands/copy.c:1324
 #, c-format
 msgid "COPY (SELECT INTO) is not supported"
 msgstr "COPY (SELECT INTO) non è supportata"
 
-#: commands/copy.c:1360
+#: commands/copy.c:1387
 #, c-format
 msgid "FORCE QUOTE column \"%s\" not referenced by COPY"
 msgstr "la colonna FORCE QUOTE \"%s\" non è referenziata da COPY"
 
-#: commands/copy.c:1382
+#: commands/copy.c:1409
 #, c-format
 msgid "FORCE NOT NULL column \"%s\" not referenced by COPY"
 msgstr "la colonna FORCE NOT NULL \"%s\" non è referenziata da COPY"
 
-#: commands/copy.c:1446
+#: commands/copy.c:1431
+#, c-format
+msgid "FORCE NULL column \"%s\" not referenced by COPY"
+msgstr "la colonna FORCE NULL \"%s\" non è referenziata da COPY"
+
+#: commands/copy.c:1495
 #, c-format
 msgid "could not close pipe to external command: %m"
 msgstr "chiusura della pipe per verso il comando esterno fallita: %m"
 
-#: commands/copy.c:1449
+#: commands/copy.c:1498
 #, c-format
 msgid "program \"%s\" failed"
 msgstr "programma \"%s\" fallito"
 
-#: commands/copy.c:1498
+#: commands/copy.c:1547
 #, c-format
 msgid "cannot copy from view \"%s\""
 msgstr "non è possibile copiare dalla vista \"%s\""
 
-#: commands/copy.c:1500 commands/copy.c:1506 commands/copy.c:1512
+#: commands/copy.c:1549 commands/copy.c:1555 commands/copy.c:1561
 #, c-format
 msgid "Try the COPY (SELECT ...) TO variant."
 msgstr "Prova la variante COPY (SELECT ...) TO."
 
-#: commands/copy.c:1504
+#: commands/copy.c:1553
 #, c-format
 msgid "cannot copy from materialized view \"%s\""
 msgstr "non è possibile copiare dalla vista materializzata \"%s\""
 
-#: commands/copy.c:1510
+#: commands/copy.c:1559
 #, c-format
 msgid "cannot copy from foreign table \"%s\""
 msgstr "non è possibile copiare dalla tabella esterna \"%s\""
 
-#: commands/copy.c:1516
+#: commands/copy.c:1565
 #, c-format
 msgid "cannot copy from sequence \"%s\""
 msgstr "non è possibile copiare dalla sequenza \"%s\""
 
-#: commands/copy.c:1521
+#: commands/copy.c:1570
 #, c-format
 msgid "cannot copy from non-table relation \"%s\""
 msgstr "non è possibile copiare dalla relazione \"%s\" perché non è una tabella"
 
-#: commands/copy.c:1544 commands/copy.c:2549
+#: commands/copy.c:1593 commands/copy.c:2616
 #, c-format
 msgid "could not execute command \"%s\": %m"
 msgstr "esecuzione del comando \"%s\" fallita: %m"
 
-#: commands/copy.c:1559
+#: commands/copy.c:1608
 #, c-format
 msgid "relative path not allowed for COPY to file"
 msgstr "i percorsi relativi non sono consentiti per il COPY verso un file"
 
-#: commands/copy.c:1567
+#: commands/copy.c:1616
 #, c-format
 msgid "could not open file \"%s\" for writing: %m"
 msgstr "apertura del file \"%s\" in scrittura fallita: %m"
 
-#: commands/copy.c:1574 commands/copy.c:2567
+#: commands/copy.c:1623 commands/copy.c:2634
 #, c-format
 msgid "\"%s\" is a directory"
 msgstr "\"%s\" è una directory"
 
-#: commands/copy.c:1899
+#: commands/copy.c:1948
 #, c-format
 msgid "COPY %s, line %d, column %s"
 msgstr "COPY %s, riga %d, colonna %s"
 
-#: commands/copy.c:1903 commands/copy.c:1950
+#: commands/copy.c:1952 commands/copy.c:1999
 #, c-format
 msgid "COPY %s, line %d"
 msgstr "COPY %s, riga %d"
 
-#: commands/copy.c:1914
+#: commands/copy.c:1963
 #, c-format
 msgid "COPY %s, line %d, column %s: \"%s\""
 msgstr "COPY %s, riga %d, colonna %s: \"%s\""
 
-#: commands/copy.c:1922
+#: commands/copy.c:1971
 #, c-format
 msgid "COPY %s, line %d, column %s: null input"
 msgstr "COPY %s, riga %d, colonna %s: input nullo"
 
-#: commands/copy.c:1944
+#: commands/copy.c:1993
 #, c-format
 msgid "COPY %s, line %d: \"%s\""
 msgstr "COPY %s, riga %d: \"%s\""
 
-#: commands/copy.c:2028
+#: commands/copy.c:2077
 #, c-format
 msgid "cannot copy to view \"%s\""
 msgstr "non è possibile copiare verso la vista \"%s\""
 
-#: commands/copy.c:2033
+#: commands/copy.c:2082
 #, c-format
 msgid "cannot copy to materialized view \"%s\""
 msgstr "non è possibile copiare verso la vista materializzata \"%s\""
 
-#: commands/copy.c:2038
+#: commands/copy.c:2087
 #, c-format
 msgid "cannot copy to foreign table \"%s\""
 msgstr "non è possibile copiare verso la tabella esterna \"%s\""
 
-#: commands/copy.c:2043
+#: commands/copy.c:2092
 #, c-format
 msgid "cannot copy to sequence \"%s\""
 msgstr "non è possibile copiare verso sequenza \"%s\""
 
-#: commands/copy.c:2048
+#: commands/copy.c:2097
 #, c-format
 msgid "cannot copy to non-table relation \"%s\""
 msgstr "non è possibile copiare verso la relazione \"%s\" perché non è una tabella"
 
-#: commands/copy.c:2111
+#: commands/copy.c:2160
 #, c-format
 msgid "cannot perform FREEZE because of prior transaction activity"
 msgstr "non è possibile eseguire FREEZE a causa di precedente attività della transazione"
 
-#: commands/copy.c:2117
+#: commands/copy.c:2166
 #, c-format
 msgid "cannot perform FREEZE because the table was not created or truncated in the current subtransaction"
 msgstr "non è possibile eseguire FREEZE perché la tabella non è stata creata o troncata nella sottotransazione corrente"
 
-#: commands/copy.c:2560 utils/adt/genfile.c:123
+#: commands/copy.c:2627 utils/adt/genfile.c:123
 #, c-format
 msgid "could not open file \"%s\" for reading: %m"
 msgstr "apertura del file \"%s\" in lettura fallita: %m"
 
-#: commands/copy.c:2587
+#: commands/copy.c:2654
 #, c-format
 msgid "COPY file signature not recognized"
 msgstr "formato del file COPY non riconosciuto"
 
-#: commands/copy.c:2592
+#: commands/copy.c:2659
 #, c-format
 msgid "invalid COPY file header (missing flags)"
 msgstr "intestazione del file COPY non valida (flag mancanti)"
 
-#: commands/copy.c:2598
+#: commands/copy.c:2665
 #, c-format
 msgid "unrecognized critical flags in COPY file header"
 msgstr "alcune flag critici non sono stati riconosciuti nell'intestazione del file COPY"
 
-#: commands/copy.c:2604
+#: commands/copy.c:2671
 #, c-format
 msgid "invalid COPY file header (missing length)"
 msgstr "intestazione del file COPY non valida (manca la lunghezza)"
 
-#: commands/copy.c:2611
+#: commands/copy.c:2678
 #, c-format
 msgid "invalid COPY file header (wrong length)"
 msgstr "intestazione del file COPY non valida (lunghezza errata)"
 
-#: commands/copy.c:2744 commands/copy.c:3434 commands/copy.c:3664
+#: commands/copy.c:2811 commands/copy.c:3518 commands/copy.c:3748
 #, c-format
 msgid "extra data after last expected column"
 msgstr "ci sono dati in eccesso dopo l'ultima colonna attesa"
 
-#: commands/copy.c:2754
+#: commands/copy.c:2821
 #, c-format
 msgid "missing data for OID column"
 msgstr "dati per la colonna OID mancanti"
 
-#: commands/copy.c:2760
+#: commands/copy.c:2827
 #, c-format
 msgid "null OID in COPY data"
 msgstr "OID nullo nei dati da COPY"
 
-#: commands/copy.c:2770 commands/copy.c:2876
+#: commands/copy.c:2837 commands/copy.c:2960
 #, c-format
 msgid "invalid OID in COPY data"
 msgstr "OID non valido nei dati da COPY"
 
-#: commands/copy.c:2785
+#: commands/copy.c:2852
 #, c-format
 msgid "missing data for column \"%s\""
 msgstr "dati mancanti per la colonna \"%s\""
 
-#: commands/copy.c:2851
+#: commands/copy.c:2935
 #, c-format
 msgid "received copy data after EOF marker"
 msgstr "dati da copiare ricevuti dopo il segnalatore di fine file"
 
-#: commands/copy.c:2858
+#: commands/copy.c:2942
 #, c-format
 msgid "row field count is %d, expected %d"
 msgstr "il numero di campi è %d, ne erano attesi %d"
 
-#: commands/copy.c:3198 commands/copy.c:3215
+#: commands/copy.c:3282 commands/copy.c:3299
 #, c-format
 msgid "literal carriage return found in data"
 msgstr "\"ritorno carrello\" trovato nei dati"
 
-#: commands/copy.c:3199 commands/copy.c:3216
+#: commands/copy.c:3283 commands/copy.c:3300
 #, c-format
 msgid "unquoted carriage return found in data"
 msgstr "\"ritorno carrello\" non quotato trovato nei dati"
 
-#: commands/copy.c:3201 commands/copy.c:3218
+#: commands/copy.c:3285 commands/copy.c:3302
 #, c-format
 msgid "Use \"\\r\" to represent carriage return."
 msgstr "Usa \"\\r\" per rappresentare i caratteri \"ritorno carrello\"."
 
-#: commands/copy.c:3202 commands/copy.c:3219
+#: commands/copy.c:3286 commands/copy.c:3303
 #, c-format
 msgid "Use quoted CSV field to represent carriage return."
 msgstr "Usa un campo CSV quotato per rappresentare i caratteri \"ritorno carrello\"."
 
-#: commands/copy.c:3231
+#: commands/copy.c:3315
 #, c-format
 msgid "literal newline found in data"
 msgstr "\"nuova riga\" letterale trovato nei dati"
 
-#: commands/copy.c:3232
+#: commands/copy.c:3316
 #, c-format
 msgid "unquoted newline found in data"
 msgstr "\"nuova riga\" non quotato trovato nei dati"
 
-#: commands/copy.c:3234
+#: commands/copy.c:3318
 #, c-format
 msgid "Use \"\\n\" to represent newline."
 msgstr "Usa \"\\n\" per rappresentare i caratteri \"nuova riga\"."
 
-#: commands/copy.c:3235
+#: commands/copy.c:3319
 #, c-format
 msgid "Use quoted CSV field to represent newline."
 msgstr "Usa un campo CSV quotato per rappresentare i caratteri \"nuova riga\"."
 
-#: commands/copy.c:3281 commands/copy.c:3317
+#: commands/copy.c:3365 commands/copy.c:3401
 #, c-format
 msgid "end-of-copy marker does not match previous newline style"
 msgstr "il marcatore di fine copia non combacia con il precedente stile \"nuova riga\""
 
-#: commands/copy.c:3290 commands/copy.c:3306
+#: commands/copy.c:3374 commands/copy.c:3390
 #, c-format
 msgid "end-of-copy marker corrupt"
 msgstr "il marcatore di fine copia è corrotto"
 
-#: commands/copy.c:3748
+#: commands/copy.c:3832
 #, c-format
 msgid "unterminated CSV quoted field"
 msgstr "campo CSV tra virgolette non terminato"
 
-#: commands/copy.c:3825 commands/copy.c:3844
+#: commands/copy.c:3909 commands/copy.c:3928
 #, c-format
 msgid "unexpected EOF in COPY data"
 msgstr "fine file inattesa dei dati da COPY"
 
-#: commands/copy.c:3834
+#: commands/copy.c:3918
 #, c-format
 msgid "invalid field size"
 msgstr "dimensione del campo non valida"
 
-#: commands/copy.c:3857
+#: commands/copy.c:3941
 #, c-format
 msgid "incorrect binary data format"
 msgstr "formato di dati binari non corretto"
 
-#: commands/copy.c:4168 commands/indexcmds.c:1006 commands/tablecmds.c:1401
-#: commands/tablecmds.c:2210 parser/parse_relation.c:2652
+#: commands/copy.c:4252 commands/indexcmds.c:993 commands/tablecmds.c:1427
+#: commands/tablecmds.c:2237 parser/parse_relation.c:2889
 #: utils/adt/tsvector_op.c:1417
 #, c-format
 msgid "column \"%s\" does not exist"
 msgstr "la colonna \"%s\" non esiste"
 
-#: commands/copy.c:4175 commands/tablecmds.c:1427 commands/trigger.c:601
+#: commands/copy.c:4259 commands/tablecmds.c:1453 commands/trigger.c:644
 #: parser/parse_target.c:936 parser/parse_target.c:947
 #, c-format
 msgid "column \"%s\" specified more than once"
 msgstr "la colonna \"%s\" è stata specificata più di una volta"
 
-#: commands/createas.c:352
+#: commands/createas.c:353
 #, c-format
 msgid "too many column names were specified"
 msgstr "troppi nomi di colonne specificati"
@@ -4588,7 +4796,7 @@ msgstr "%d non è un codice di codifica valido"
 msgid "%s is not a valid encoding name"
 msgstr "%s non è un nome di codifica valido"
 
-#: commands/dbcommands.c:255 commands/dbcommands.c:1392 commands/user.c:260
+#: commands/dbcommands.c:255 commands/dbcommands.c:1381 commands/user.c:260
 #: commands/user.c:601
 #, c-format
 msgid "invalid connection limit: %d"
@@ -4649,7 +4857,7 @@ msgstr "il nuovo LC_CTYPE (%s) è incompatibile con l'LC_CTYPE del modello del d
 msgid "Use the same LC_CTYPE as in the template database, or use template0 as template."
 msgstr "Usa lo stesso LC_CTYPE del modello di database, o usa template0 come modello."
 
-#: commands/dbcommands.c:395 commands/dbcommands.c:1095
+#: commands/dbcommands.c:395 commands/dbcommands.c:1084
 #, c-format
 msgid "pg_global cannot be used as default tablespace"
 msgstr "pg_global non può essere usato come tablespace predefinito"
@@ -4664,7 +4872,7 @@ msgstr "non è possibile assegnare il nuovo tablespace predefinito \"%s\""
 msgid "There is a conflict because database \"%s\" already has some tables in this tablespace."
 msgstr "C'è un conflitto perché il database \"%s\" ha già alcune tabelle in questo tablespace."
 
-#: commands/dbcommands.c:443 commands/dbcommands.c:966
+#: commands/dbcommands.c:443 commands/dbcommands.c:955
 #, c-format
 msgid "database \"%s\" already exists"
 msgstr "il database \"%s\" esiste già"
@@ -4674,247 +4882,263 @@ msgstr "il database \"%s\" esiste già"
 msgid "source database \"%s\" is being accessed by other users"
 msgstr "il database sorgente \"%s\" ha attualmente altri utenti collegati"
 
-#: commands/dbcommands.c:728 commands/dbcommands.c:743
+#: commands/dbcommands.c:702 commands/dbcommands.c:717
 #, c-format
 msgid "encoding \"%s\" does not match locale \"%s\""
 msgstr "la codifica \"%s\" non corrisponde al locale \"%s\""
 
-#: commands/dbcommands.c:731
+#: commands/dbcommands.c:705
 #, c-format
 msgid "The chosen LC_CTYPE setting requires encoding \"%s\"."
 msgstr "L'impostazione LC_CTYPE scelta richiede la codifica \"%s\"."
 
-#: commands/dbcommands.c:746
+#: commands/dbcommands.c:720
 #, c-format
 msgid "The chosen LC_COLLATE setting requires encoding \"%s\"."
 msgstr "L'impostazione LC_COLLATE scelta richiede la codifica \"%s\"."
 
-#: commands/dbcommands.c:804
+#: commands/dbcommands.c:780
 #, c-format
 msgid "database \"%s\" does not exist, skipping"
 msgstr "il database \"%s\" non esiste, saltato"
 
-#: commands/dbcommands.c:828
+#: commands/dbcommands.c:804
 #, c-format
 msgid "cannot drop a template database"
 msgstr "non è possibile eliminare un modello di database"
 
-#: commands/dbcommands.c:834
+#: commands/dbcommands.c:810
 #, c-format
 msgid "cannot drop the currently open database"
 msgstr "non si può eliminare il database aperto attualmente"
 
-#: commands/dbcommands.c:845 commands/dbcommands.c:988
-#: commands/dbcommands.c:1117
+#: commands/dbcommands.c:820
+#, c-format
+msgid "database \"%s\" is used by a logical decoding slot"
+msgstr "il database \"%s\" è usato da uno slot di decodifica logica"
+
+#: commands/dbcommands.c:822
+#, c-format
+msgid "There are %d slot(s), %d of them active"
+msgstr "Ci sono %d slot, di cui %d attivi"
+
+#: commands/dbcommands.c:834 commands/dbcommands.c:977
+#: commands/dbcommands.c:1106
 #, c-format
 msgid "database \"%s\" is being accessed by other users"
 msgstr "il database \"%s\" è attualmente utilizzato da altri utenti"
 
-#: commands/dbcommands.c:957
+#: commands/dbcommands.c:946
 #, c-format
 msgid "permission denied to rename database"
 msgstr "permesso di rinominare il database negato"
 
-#: commands/dbcommands.c:977
+#: commands/dbcommands.c:966
 #, c-format
 msgid "current database cannot be renamed"
 msgstr "il database corrente non può essere rinominato"
 
-#: commands/dbcommands.c:1073
+#: commands/dbcommands.c:1062
 #, c-format
 msgid "cannot change the tablespace of the currently open database"
 msgstr "non è possibile cambiare il tablespace del database attualmente aperto"
 
-#: commands/dbcommands.c:1157
+#: commands/dbcommands.c:1146
 #, c-format
 msgid "some relations of database \"%s\" are already in tablespace \"%s\""
 msgstr "alcune relazioni del database \"%s\" sono già nel tablespace \"%s\""
 
-#: commands/dbcommands.c:1159
+#: commands/dbcommands.c:1148
 #, c-format
 msgid "You must move them back to the database's default tablespace before using this command."
 msgstr "Occorre spostarle di nuovo nel tablespace di default del database prima di usare questo comando."
 
-#: commands/dbcommands.c:1290 commands/dbcommands.c:1789
-#: commands/dbcommands.c:2007 commands/dbcommands.c:2055
-#: commands/tablespace.c:585
+#: commands/dbcommands.c:1279 commands/dbcommands.c:1767
+#: commands/dbcommands.c:1973 commands/dbcommands.c:2021
+#: commands/tablespace.c:597
 #, c-format
 msgid "some useless files may be left behind in old database directory \"%s\""
 msgstr "alcuni file inutili possono essere stati lasciati nella vecchia directory del database \"%s\""
 
-#: commands/dbcommands.c:1546
+#: commands/dbcommands.c:1535
 #, c-format
 msgid "permission denied to change owner of database"
 msgstr "permesso di cambiare il proprietario del database negato"
 
-#: commands/dbcommands.c:1890
+#: commands/dbcommands.c:1856
 #, c-format
 msgid "There are %d other session(s) and %d prepared transaction(s) using the database."
 msgstr "Ci sono altre %d sessioni e %d transazioni preparate che stanno usando il database."
 
-#: commands/dbcommands.c:1893
+#: commands/dbcommands.c:1859
 #, c-format
 msgid "There is %d other session using the database."
 msgid_plural "There are %d other sessions using the database."
 msgstr[0] "Ci sono %d altra sessione che sta usando il database."
 msgstr[1] "Ci sono altre %d sessioni che stanno usando il database."
 
-#: commands/dbcommands.c:1898
+#: commands/dbcommands.c:1864
 #, c-format
 msgid "There is %d prepared transaction using the database."
 msgid_plural "There are %d prepared transactions using the database."
 msgstr[0] "Ci sono %d transazione preparata che sta usando il database."
 msgstr[1] "Ci sono %d transazioni preparate che stanno usando il database."
 
-#: commands/define.c:54 commands/define.c:209 commands/define.c:241
-#: commands/define.c:269
+#: commands/define.c:54 commands/define.c:228 commands/define.c:260
+#: commands/define.c:288
 #, c-format
 msgid "%s requires a parameter"
 msgstr "%s richiede un parametro"
 
-#: commands/define.c:95 commands/define.c:106 commands/define.c:176
-#: commands/define.c:194
+#: commands/define.c:90 commands/define.c:101 commands/define.c:195
+#: commands/define.c:213
 #, c-format
 msgid "%s requires a numeric value"
 msgstr "%s richiede un valore numerico"
 
-#: commands/define.c:162
+#: commands/define.c:157
 #, c-format
 msgid "%s requires a Boolean value"
 msgstr "%s richiede un valore booleano"
 
-#: commands/define.c:223
+#: commands/define.c:171 commands/define.c:180 commands/define.c:297
+#, c-format
+msgid "%s requires an integer value"
+msgstr "%s richiede un valore intero"
+
+#: commands/define.c:242
 #, c-format
 msgid "argument of %s must be a name"
 msgstr "l'argomento di %s dev'essere un nome"
 
-#: commands/define.c:253
+#: commands/define.c:272
 #, c-format
 msgid "argument of %s must be a type name"
 msgstr "l'argomento di %s deve essere il nome di un tipo"
 
-#: commands/define.c:278
-#, c-format
-msgid "%s requires an integer value"
-msgstr "%s richiede un valore intero"
-
-#: commands/define.c:299
+#: commands/define.c:318
 #, c-format
 msgid "invalid argument for %s: \"%s\""
 msgstr "argomento non valido per %s: \"%s\""
 
-#: commands/dropcmds.c:100 commands/functioncmds.c:1080
-#: utils/adt/ruleutils.c:1897
+#: commands/dropcmds.c:112 commands/functioncmds.c:1110
+#: utils/adt/ruleutils.c:1936
 #, c-format
 msgid "\"%s\" is an aggregate function"
 msgstr "\"%s\" è una funzione di aggregazione"
 
-#: commands/dropcmds.c:102
+#: commands/dropcmds.c:114
 #, c-format
 msgid "Use DROP AGGREGATE to drop aggregate functions."
 msgstr "Usa DROP AGGREGATE per rimuovere le funzioni di aggregazione."
 
-#: commands/dropcmds.c:143 commands/tablecmds.c:236
+#: commands/dropcmds.c:165 commands/sequence.c:400 commands/tablecmds.c:2318
+#: commands/tablecmds.c:2499 commands/tablecmds.c:10625 tcop/utility.c:1010
+#, c-format
+msgid "relation \"%s\" does not exist, skipping"
+msgstr "la relazione \"%s\" non esiste, saltata"
+
+#: commands/dropcmds.c:195 commands/dropcmds.c:288 commands/tablecmds.c:713
+#, c-format
+msgid "schema \"%s\" does not exist, skipping"
+msgstr "lo schema \"%s\" non esiste, saltato"
+
+#: commands/dropcmds.c:237 commands/dropcmds.c:269 commands/tablecmds.c:237
 #, c-format
 msgid "type \"%s\" does not exist, skipping"
 msgstr "il tipo \"%s\" non esiste, saltato"
 
-#: commands/dropcmds.c:147
+#: commands/dropcmds.c:276
 #, c-format
 msgid "collation \"%s\" does not exist, skipping"
 msgstr "l'ordinamento \"%s\" non esiste, saltato"
 
-#: commands/dropcmds.c:151
+#: commands/dropcmds.c:283
 #, c-format
 msgid "conversion \"%s\" does not exist, skipping"
 msgstr "la conversione \"%s\" non esiste, saltata"
 
-#: commands/dropcmds.c:155
-#, c-format
-msgid "schema \"%s\" does not exist, skipping"
-msgstr "lo schema \"%s\" non esiste, saltato"
-
-#: commands/dropcmds.c:159
+#: commands/dropcmds.c:294
 #, c-format
 msgid "text search parser \"%s\" does not exist, skipping"
 msgstr "l'analizzatore di ricerca di testo \"%s\" non esiste, saltato"
 
-#: commands/dropcmds.c:163
+#: commands/dropcmds.c:301
 #, c-format
 msgid "text search dictionary \"%s\" does not exist, skipping"
 msgstr "il dizionario di ricerca di testo \"%s\" non esiste, saltato"
 
-#: commands/dropcmds.c:167
+#: commands/dropcmds.c:308
 #, c-format
 msgid "text search template \"%s\" does not exist, skipping"
 msgstr "il modello di ricerca di testo \"%s\" non esiste, saltato"
 
-#: commands/dropcmds.c:171
+#: commands/dropcmds.c:315
 #, c-format
 msgid "text search configuration \"%s\" does not exist, skipping"
 msgstr "la combinazione di ricerca di testo \"%s\" non esiste, saltato"
 
-#: commands/dropcmds.c:175
+#: commands/dropcmds.c:320
 #, c-format
 msgid "extension \"%s\" does not exist, skipping"
 msgstr "l'estensione \"%s\" non esiste, saltata"
 
-#: commands/dropcmds.c:179
+#: commands/dropcmds.c:327
 #, c-format
 msgid "function %s(%s) does not exist, skipping"
 msgstr "la funzione %s(%s) non esiste, saltata"
 
-#: commands/dropcmds.c:184
+#: commands/dropcmds.c:336
 #, c-format
 msgid "aggregate %s(%s) does not exist, skipping"
 msgstr "la funzione di aggregazione %s(%s) non esiste, saltato"
 
-#: commands/dropcmds.c:189
+#: commands/dropcmds.c:345
 #, c-format
 msgid "operator %s does not exist, skipping"
 msgstr "l'operatore %s non esiste, saltato"
 
-#: commands/dropcmds.c:193
+#: commands/dropcmds.c:350
 #, c-format
 msgid "language \"%s\" does not exist, skipping"
 msgstr "il linguaggio \"%s\" non esiste, saltato"
 
-#: commands/dropcmds.c:197
+#: commands/dropcmds.c:359
 #, c-format
 msgid "cast from type %s to type %s does not exist, skipping"
 msgstr "la conversione dal tipo %s al tipo %s non esiste, saltata"
 
-#: commands/dropcmds.c:204
+#: commands/dropcmds.c:368
 #, c-format
-msgid "trigger \"%s\" for table \"%s\" does not exist, skipping"
-msgstr "il trigger \"%s\" per la tabella \"%s\" non esiste, saltato"
+msgid "trigger \"%s\" for relation \"%s\" does not exist, skipping"
+msgstr "il trigger \"%s\" per la relazione \"%s\" non esiste, saltato"
 
-#: commands/dropcmds.c:210
+#: commands/dropcmds.c:375
 #, c-format
 msgid "event trigger \"%s\" does not exist, skipping"
 msgstr "il trigger di evento \"%s\" non esiste, saltato"
 
-#: commands/dropcmds.c:214
+#: commands/dropcmds.c:381
 #, c-format
 msgid "rule \"%s\" for relation \"%s\" does not exist, skipping"
 msgstr "la regola \"%s\" per la relazione \"%s\" non esiste, saltata"
 
-#: commands/dropcmds.c:220
+#: commands/dropcmds.c:388
 #, c-format
 msgid "foreign-data wrapper \"%s\" does not exist, skipping"
 msgstr "il wrapper di dati remoti \"%s\" non esiste, saltato"
 
-#: commands/dropcmds.c:224
+#: commands/dropcmds.c:392
 #, c-format
 msgid "server \"%s\" does not exist, skipping"
 msgstr "il server \"%s\" non esiste, saltato"
 
-#: commands/dropcmds.c:228
+#: commands/dropcmds.c:398
 #, c-format
 msgid "operator class \"%s\" does not exist for access method \"%s\", skipping"
 msgstr "la classe di operatori \"%s\" non esiste per il metodo di accesso \"%s\", saltata"
 
-#: commands/dropcmds.c:233
+#: commands/dropcmds.c:406
 #, c-format
 msgid "operator family \"%s\" does not exist for access method \"%s\", skipping"
 msgstr "la famiglia di operatori \"%s\" non esiste per il metodo di accesso \"%s\", saltata"
@@ -4981,46 +5205,49 @@ msgstr "Il proprietario di un trigger di evento deve essere un superutente."
 msgid "%s can only be called in a sql_drop event trigger function"
 msgstr "%s può essere chiamata solo in una funzione trigger di evento sql_drop"
 
-#: commands/event_trigger.c:1226 commands/extension.c:1650
-#: commands/extension.c:1759 commands/extension.c:1952 commands/prepare.c:702
-#: executor/execQual.c:1717 executor/execQual.c:1742 executor/execQual.c:2110
-#: executor/execQual.c:5272 executor/functions.c:1019 foreign/foreign.c:421
-#: replication/walsender.c:1893 utils/adt/jsonfuncs.c:924
-#: utils/adt/jsonfuncs.c:1095 utils/adt/jsonfuncs.c:1597
+#: commands/event_trigger.c:1226 commands/extension.c:1646
+#: commands/extension.c:1755 commands/extension.c:1948 commands/prepare.c:702
+#: executor/execQual.c:1708 executor/execQual.c:1733 executor/execQual.c:2108
+#: executor/execQual.c:5276 executor/functions.c:1018 foreign/foreign.c:421
+#: replication/logical/logicalfuncs.c:310 replication/slotfuncs.c:173
+#: replication/walsender.c:2746 utils/adt/jsonfuncs.c:1386
+#: utils/adt/jsonfuncs.c:1518 utils/adt/jsonfuncs.c:1708
+#: utils/adt/jsonfuncs.c:1837 utils/adt/jsonfuncs.c:2601
 #: utils/fmgr/funcapi.c:61 utils/mmgr/portalmem.c:986
 #, c-format
 msgid "set-valued function called in context that cannot accept a set"
 msgstr "la funzione che restituisce insiemi è chiamata in un contesto che non può accettare un insieme"
 
-#: commands/event_trigger.c:1230 commands/extension.c:1654
-#: commands/extension.c:1763 commands/extension.c:1956 commands/prepare.c:706
-#: foreign/foreign.c:426 replication/walsender.c:1897
+#: commands/event_trigger.c:1230 commands/extension.c:1650
+#: commands/extension.c:1759 commands/extension.c:1952 commands/prepare.c:706
+#: foreign/foreign.c:426 replication/logical/logicalfuncs.c:314
+#: replication/slotfuncs.c:177 replication/walsender.c:2750
 #: utils/mmgr/portalmem.c:990
 #, c-format
 msgid "materialize mode required, but it is not allowed in this context"
 msgstr "necessaria modalità materializzata, ma non ammessa in questo contesto"
 
-#: commands/explain.c:163
+#: commands/explain.c:169
 #, c-format
 msgid "unrecognized value for EXPLAIN option \"%s\": \"%s\""
 msgstr "valore sconosciuto per l'opzione di EXPLAIN \"%s\": \"%s\""
 
-#: commands/explain.c:169
+#: commands/explain.c:175
 #, c-format
 msgid "unrecognized EXPLAIN option \"%s\""
 msgstr "opzione di EXPLAIN non riconosciuta \"%s\""
 
-#: commands/explain.c:176
+#: commands/explain.c:182
 #, c-format
 msgid "EXPLAIN option BUFFERS requires ANALYZE"
 msgstr "l'opzione BUFFERS di EXPLAIN richiede ANALYZE"
 
-#: commands/explain.c:185
+#: commands/explain.c:191
 #, c-format
 msgid "EXPLAIN option TIMING requires ANALYZE"
 msgstr "l'opzione TIMING di EXPLAIN richiede ANALYZE"
 
-#: commands/extension.c:148 commands/extension.c:2632
+#: commands/extension.c:148 commands/extension.c:2628
 #, c-format
 msgid "extension \"%s\" does not exist"
 msgstr "l'estensione \"%s\" non esiste"
@@ -5107,122 +5334,122 @@ msgstr "parametro sconosciuto \"%s\" nel file \"%s\""
 msgid "parameter \"schema\" cannot be specified when \"relocatable\" is true"
 msgstr "il parametro \"schema\" non può essere specificato quando \"relocatable\" è abilitato"
 
-#: commands/extension.c:726
+#: commands/extension.c:722
 #, c-format
 msgid "transaction control statements are not allowed within an extension script"
 msgstr "le istruzioni di controllo di transazione non sono valide in uno script di estensione"
 
-#: commands/extension.c:794
+#: commands/extension.c:790
 #, c-format
 msgid "permission denied to create extension \"%s\""
 msgstr "permesso di creare l'estensione \"%s\" negato"
 
-#: commands/extension.c:796
+#: commands/extension.c:792
 #, c-format
 msgid "Must be superuser to create this extension."
 msgstr "Solo un superutente può creare questa estensione."
 
-#: commands/extension.c:800
+#: commands/extension.c:796
 #, c-format
 msgid "permission denied to update extension \"%s\""
 msgstr "permesso di modificare l'estensione \"%s\" negato"
 
-#: commands/extension.c:802
+#: commands/extension.c:798
 #, c-format
 msgid "Must be superuser to update this extension."
 msgstr "Solo un superutente può modificare questa estensione."
 
-#: commands/extension.c:1084
+#: commands/extension.c:1080
 #, c-format
 msgid "extension \"%s\" has no update path from version \"%s\" to version \"%s\""
 msgstr "l'estensione \"%s\" non ha un percorso di aggiornamento dalla versione \"%s\" alla versione \"%s\""
 
-#: commands/extension.c:1211
+#: commands/extension.c:1207
 #, c-format
 msgid "extension \"%s\" already exists, skipping"
 msgstr "l'estensione \"%s\" esiste già, saltata"
 
-#: commands/extension.c:1218
+#: commands/extension.c:1214
 #, c-format
 msgid "extension \"%s\" already exists"
 msgstr "l'estensione \"%s\" esiste già"
 
-#: commands/extension.c:1229
+#: commands/extension.c:1225
 #, c-format
 msgid "nested CREATE EXTENSION is not supported"
 msgstr "CREATE EXTENSION annidati non sono supportati"
 
-#: commands/extension.c:1284 commands/extension.c:2692
+#: commands/extension.c:1280 commands/extension.c:2688
 #, c-format
 msgid "version to install must be specified"
 msgstr "il nome di versione da installare deve essere specificato"
 
-#: commands/extension.c:1301
+#: commands/extension.c:1297
 #, c-format
 msgid "FROM version must be different from installation target version \"%s\""
 msgstr "la versione FROM dev'essere diversa dalla versione \"%s\" oggetto dell'installazione"
 
-#: commands/extension.c:1356
+#: commands/extension.c:1352
 #, c-format
 msgid "extension \"%s\" must be installed in schema \"%s\""
 msgstr "l'estensione \"%s\" dev'essere installata nello schema \"%s\""
 
-#: commands/extension.c:1440 commands/extension.c:2835
+#: commands/extension.c:1436 commands/extension.c:2831
 #, c-format
 msgid "required extension \"%s\" is not installed"
 msgstr "l'estensione richiesta \"%s\" non è installata"
 
-#: commands/extension.c:1602
+#: commands/extension.c:1598
 #, c-format
 msgid "cannot drop extension \"%s\" because it is being modified"
 msgstr "non è possibile eliminare l'estensione \"%s\" perché sta venendo modificata"
 
-#: commands/extension.c:2073
+#: commands/extension.c:2069
 #, c-format
 msgid "pg_extension_config_dump() can only be called from an SQL script executed by CREATE EXTENSION"
 msgstr "pg_extension_config_dump() può essere richiamata solo da uno script SQL eseguito da CREATE EXTENSION"
 
-#: commands/extension.c:2085
+#: commands/extension.c:2081
 #, c-format
 msgid "OID %u does not refer to a table"
 msgstr "l'OID %u non si riferisce ad una tabella"
 
-#: commands/extension.c:2090
+#: commands/extension.c:2086
 #, c-format
 msgid "table \"%s\" is not a member of the extension being created"
 msgstr "la tabella \"%s\" non è membra dell'estensione in fase di creazione"
 
-#: commands/extension.c:2454
+#: commands/extension.c:2450
 #, c-format
 msgid "cannot move extension \"%s\" into schema \"%s\" because the extension contains the schema"
 msgstr "non è possibile spostare l'estensione \"%s\" nello schema \"%s\" perché l'estensione contiene lo schema"
 
-#: commands/extension.c:2494 commands/extension.c:2557
+#: commands/extension.c:2490 commands/extension.c:2553
 #, c-format
 msgid "extension \"%s\" does not support SET SCHEMA"
 msgstr "l'estensione \"%s\" non supporta SET SCHEMA"
 
-#: commands/extension.c:2559
+#: commands/extension.c:2555
 #, c-format
 msgid "%s is not in the extension's schema \"%s\""
 msgstr "%s non è nello schema dell'estensione \"%s\""
 
-#: commands/extension.c:2612
+#: commands/extension.c:2608
 #, c-format
 msgid "nested ALTER EXTENSION is not supported"
 msgstr "ALTER EXTENSION annidati non sono supportati"
 
-#: commands/extension.c:2703
+#: commands/extension.c:2699
 #, c-format
 msgid "version \"%s\" of extension \"%s\" is already installed"
 msgstr "la versione \"%s\" dell'estensione \"%s\" è già installata"
 
-#: commands/extension.c:2942
+#: commands/extension.c:2938
 #, c-format
 msgid "cannot add schema \"%s\" to extension \"%s\" because the schema contains the extension"
 msgstr "non è possibile aggiungere lo schema \"%s\" all'estensione \"%s\" perché lo schema contiene l'estensione"
 
-#: commands/extension.c:2960
+#: commands/extension.c:2956
 #, c-format
 msgid "%s is not a member of extension \"%s\""
 msgstr "%s non fa parte dell'estensione \"%s\""
@@ -5318,584 +5545,624 @@ msgstr "il server non esiste, saltato"
 msgid "user mapping \"%s\" does not exist for the server, skipping"
 msgstr "la mappatura utenti \"%s\" non esiste per il server, saltata"
 
-#: commands/functioncmds.c:99
+#: commands/functioncmds.c:98
 #, c-format
 msgid "SQL function cannot return shell type %s"
 msgstr "la funzione SQL non può restituire il tipo non completamente definito %s"
 
-#: commands/functioncmds.c:104
+#: commands/functioncmds.c:103
 #, c-format
 msgid "return type %s is only a shell"
 msgstr "il tipo restituito %s non è completamente definito"
 
-#: commands/functioncmds.c:133 parser/parse_type.c:285
+#: commands/functioncmds.c:132 parser/parse_type.c:333
 #, c-format
 msgid "type modifier cannot be specified for shell type \"%s\""
 msgstr "il modificatore di tipo non può essere specificato per il tipo non completamente definito \"%s\""
 
-#: commands/functioncmds.c:139
+#: commands/functioncmds.c:138
 #, c-format
 msgid "type \"%s\" is not yet defined"
 msgstr "il tipo \"%s\" non è ancora definito"
 
-#: commands/functioncmds.c:140
+#: commands/functioncmds.c:139
 #, c-format
 msgid "Creating a shell type definition."
 msgstr "Creazione di un tipo non completamente definito."
 
-#: commands/functioncmds.c:224
+#: commands/functioncmds.c:236
 #, c-format
 msgid "SQL function cannot accept shell type %s"
 msgstr "la funzione SQL non può accettare il tipo non completamente definito %s"
 
-#: commands/functioncmds.c:229
+#: commands/functioncmds.c:242
+#, c-format
+msgid "aggregate cannot accept shell type %s"
+msgstr "l'aggregato non può accettare il tipo non completamente definito %s"
+
+#: commands/functioncmds.c:247
 #, c-format
 msgid "argument type %s is only a shell"
 msgstr "il tipo %s dell'argomento non è completamente definito"
 
-#: commands/functioncmds.c:239
+#: commands/functioncmds.c:257
 #, c-format
 msgid "type %s does not exist"
 msgstr "il tipo %s non esiste"
 
-#: commands/functioncmds.c:251
+#: commands/functioncmds.c:271
+#, c-format
+msgid "aggregates cannot accept set arguments"
+msgstr "gli aggregati non accettano insiemi come argomenti"
+
+#: commands/functioncmds.c:275
 #, c-format
 msgid "functions cannot accept set arguments"
-msgstr "le funzioni non possono accettare insiemi come argomenti"
+msgstr "le funzioni non accettano insiemi come argomenti"
 
-#: commands/functioncmds.c:260
+#: commands/functioncmds.c:285
 #, c-format
 msgid "VARIADIC parameter must be the last input parameter"
 msgstr "il parametro VARIADIC deve essere l'ultimo dei parametri di input"
 
-#: commands/functioncmds.c:287
+#: commands/functioncmds.c:313
 #, c-format
 msgid "VARIADIC parameter must be an array"
 msgstr "il parametro VARIADIC dev'essere un array"
 
-#: commands/functioncmds.c:327
+#: commands/functioncmds.c:353
 #, c-format
 msgid "parameter name \"%s\" used more than once"
 msgstr "il nome di parametro \"%s\" è usato più di una volta"
 
-#: commands/functioncmds.c:342
+#: commands/functioncmds.c:368
 #, c-format
 msgid "only input parameters can have default values"
 msgstr "solo i parametri di input possono avere un valore di default"
 
-#: commands/functioncmds.c:357
+#: commands/functioncmds.c:383
 #, c-format
 msgid "cannot use table references in parameter default value"
 msgstr "non si possono usare riferimenti a tabelle nel valore predefinito dei parametri"
 
-#: commands/functioncmds.c:381
+#: commands/functioncmds.c:407
 #, c-format
 msgid "input parameters after one with a default value must also have defaults"
 msgstr "i parametri di input che seguono uno con valore predefinito devono avere anch'essi un valore predefinito"
 
-#: commands/functioncmds.c:631
+#: commands/functioncmds.c:657
 #, c-format
 msgid "no function body specified"
 msgstr "non è stato specificato alcun corpo della funzione"
 
-#: commands/functioncmds.c:641
+#: commands/functioncmds.c:667
 #, c-format
 msgid "no language specified"
 msgstr "nessun linguaggio specificato"
 
-#: commands/functioncmds.c:664 commands/functioncmds.c:1119
+#: commands/functioncmds.c:690 commands/functioncmds.c:1149
 #, c-format
 msgid "COST must be positive"
 msgstr "COST dev'essere positivo"
 
-#: commands/functioncmds.c:672 commands/functioncmds.c:1127
+#: commands/functioncmds.c:698 commands/functioncmds.c:1157
 #, c-format
 msgid "ROWS must be positive"
 msgstr "ROWS dev'essere positivo"
 
-#: commands/functioncmds.c:711
+#: commands/functioncmds.c:737
 #, c-format
 msgid "unrecognized function attribute \"%s\" ignored"
 msgstr "attributo di funzione sconosciuto \"%s\" ignorato"
 
-#: commands/functioncmds.c:762
+#: commands/functioncmds.c:788
 #, c-format
 msgid "only one AS item needed for language \"%s\""
 msgstr "solo un elemento AS è necessario per il linguaggio \"%s\""
 
-#: commands/functioncmds.c:850 commands/functioncmds.c:1704
+#: commands/functioncmds.c:877 commands/functioncmds.c:1734
 #: commands/proclang.c:553
 #, c-format
 msgid "language \"%s\" does not exist"
 msgstr "il linguaggio \"%s\" non esiste"
 
-#: commands/functioncmds.c:852 commands/functioncmds.c:1706
+#: commands/functioncmds.c:879 commands/functioncmds.c:1736
 #, c-format
 msgid "Use CREATE LANGUAGE to load the language into the database."
 msgstr "Usa CREATE LANGUAGE per caricare il linguaggio nel database."
 
-#: commands/functioncmds.c:887 commands/functioncmds.c:1110
+#: commands/functioncmds.c:914 commands/functioncmds.c:1140
 #, c-format
 msgid "only superuser can define a leakproof function"
 msgstr "solo un superutente può definire una funzione stagna"
 
-#: commands/functioncmds.c:909
+#: commands/functioncmds.c:940
 #, c-format
 msgid "function result type must be %s because of OUT parameters"
 msgstr "il risultato della funzione deve essere %s per i parametri OUT"
 
-#: commands/functioncmds.c:922
+#: commands/functioncmds.c:953
 #, c-format
 msgid "function result type must be specified"
 msgstr "il tipo di risultato della funzione dev'essere specificato"
 
-#: commands/functioncmds.c:957 commands/functioncmds.c:1131
+#: commands/functioncmds.c:988 commands/functioncmds.c:1161
 #, c-format
 msgid "ROWS is not applicable when function does not return a set"
 msgstr "ROWS è non applicabile quando la funzione non restituisce un insieme"
 
-#: commands/functioncmds.c:1284
+#: commands/functioncmds.c:1314
 #, c-format
 msgid "source data type %s is a pseudo-type"
 msgstr "il tipo di dati di origine %s è uno pseudo-tipo"
 
-#: commands/functioncmds.c:1290
+#: commands/functioncmds.c:1320
 #, c-format
 msgid "target data type %s is a pseudo-type"
 msgstr "il tipo di dati di destinazione %s è uno pseudo-tipo"
 
-#: commands/functioncmds.c:1314
+#: commands/functioncmds.c:1344
 #, c-format
 msgid "cast will be ignored because the source data type is a domain"
 msgstr "la conversione verrà ignorata perché il tipo di dato di origine è un dominio"
 
-#: commands/functioncmds.c:1319
+#: commands/functioncmds.c:1349
 #, c-format
 msgid "cast will be ignored because the target data type is a domain"
 msgstr "la conversione verrà ignorata perché il tipo di dato di destinazione è un dominio"
 
-#: commands/functioncmds.c:1346
+#: commands/functioncmds.c:1376
 #, c-format
 msgid "cast function must take one to three arguments"
 msgstr "la funzione di conversione deve prendere da uno a tre argomenti"
 
-#: commands/functioncmds.c:1350
+#: commands/functioncmds.c:1380
 #, c-format
 msgid "argument of cast function must match or be binary-coercible from source data type"
 msgstr "l'argomento della funzione di conversione deve combaciare o essere convertibile a livello binario dal tipo di dato di origine"
 
-#: commands/functioncmds.c:1354
+#: commands/functioncmds.c:1384
 #, c-format
 msgid "second argument of cast function must be type integer"
 msgstr "il secondo argomento della funzione di conversione deve essere un tipo intero"
 
-#: commands/functioncmds.c:1358
+#: commands/functioncmds.c:1388
 #, c-format
 msgid "third argument of cast function must be type boolean"
 msgstr "il terzo argomento della funzione di conversione deve essere un tipo booleano"
 
-#: commands/functioncmds.c:1362
+#: commands/functioncmds.c:1392
 #, c-format
 msgid "return data type of cast function must match or be binary-coercible to target data type"
 msgstr "il tipo di dato restituito dalla funzione di conversione deve combaciare o essere convertibile a livello binario nel tipo di dato di destinazione"
 
-#: commands/functioncmds.c:1373
+#: commands/functioncmds.c:1403
 #, c-format
 msgid "cast function must not be volatile"
 msgstr "la funzione di conversione non può essere volatile"
 
-#: commands/functioncmds.c:1378
+#: commands/functioncmds.c:1408
 #, c-format
 msgid "cast function must not be an aggregate function"
 msgstr "la funzione di conversione non può essere una funzione di aggregazione"
 
-#: commands/functioncmds.c:1382
+#: commands/functioncmds.c:1412
 #, c-format
 msgid "cast function must not be a window function"
 msgstr "la funzione di conversione non può essere una funzione finestra"
 
-#: commands/functioncmds.c:1386
+#: commands/functioncmds.c:1416
 #, c-format
 msgid "cast function must not return a set"
 msgstr "la funzione di conversione non può restituire un insieme"
 
-#: commands/functioncmds.c:1412
+#: commands/functioncmds.c:1442
 #, c-format
 msgid "must be superuser to create a cast WITHOUT FUNCTION"
 msgstr "occorre essere un superutente per creare un cast WITHOUT FUNCTION"
 
-#: commands/functioncmds.c:1427
+#: commands/functioncmds.c:1457
 #, c-format
 msgid "source and target data types are not physically compatible"
 msgstr "i tipi di dati di origine e di destinazione non sono fisicamente compatibili"
 
-#: commands/functioncmds.c:1442
+#: commands/functioncmds.c:1472
 #, c-format
 msgid "composite data types are not binary-compatible"
 msgstr "i tipi di dati compositi non sono compatibili a livello binario"
 
-#: commands/functioncmds.c:1448
+#: commands/functioncmds.c:1478
 #, c-format
 msgid "enum data types are not binary-compatible"
 msgstr "le enumerazioni non sono compatibili a livello binario"
 
-#: commands/functioncmds.c:1454
+#: commands/functioncmds.c:1484
 #, c-format
 msgid "array data types are not binary-compatible"
 msgstr "i tipi di dati array non sono compatibili a livello binario"
 
-#: commands/functioncmds.c:1471
+#: commands/functioncmds.c:1501
 #, c-format
 msgid "domain data types must not be marked binary-compatible"
 msgstr "i tipi di dominio non devono essere marcati come compatibili a livello binario"
 
-#: commands/functioncmds.c:1481
+#: commands/functioncmds.c:1511
 #, c-format
 msgid "source data type and target data type are the same"
 msgstr "i tipi di dati di origine e di destinazione sono gli stessi"
 
-#: commands/functioncmds.c:1514
+#: commands/functioncmds.c:1544
 #, c-format
 msgid "cast from type %s to type %s already exists"
 msgstr "la conversione dal tipo %s al tipo %s esiste già"
 
-#: commands/functioncmds.c:1589
+#: commands/functioncmds.c:1619
 #, c-format
 msgid "cast from type %s to type %s does not exist"
 msgstr "la conversione dal tipo %s al tipo %s non esiste"
 
-#: commands/functioncmds.c:1638
+#: commands/functioncmds.c:1668
 #, c-format
 msgid "function %s already exists in schema \"%s\""
 msgstr "la funzione %s esiste già nello schema \"%s\""
 
-#: commands/functioncmds.c:1691
+#: commands/functioncmds.c:1721
 #, c-format
 msgid "no inline code specified"
 msgstr "nessun codice inline specificato"
 
-#: commands/functioncmds.c:1736
+#: commands/functioncmds.c:1766
 #, c-format
 msgid "language \"%s\" does not support inline code execution"
 msgstr "il linguaggio \"%s\" non supporta l'esecuzione di codice inline"
 
-#: commands/indexcmds.c:160 commands/indexcmds.c:481
-#: commands/opclasscmds.c:364 commands/opclasscmds.c:784
-#: commands/opclasscmds.c:1743
+#: commands/indexcmds.c:159 commands/indexcmds.c:486
+#: commands/opclasscmds.c:370 commands/opclasscmds.c:790
+#: commands/opclasscmds.c:1749
 #, c-format
 msgid "access method \"%s\" does not exist"
 msgstr "Il metodo di accesso \"%s\" non esiste"
 
-#: commands/indexcmds.c:339
+#: commands/indexcmds.c:340
 #, c-format
 msgid "must specify at least one column"
 msgstr "occorre specificare almeno una colonna"
 
-#: commands/indexcmds.c:343
+#: commands/indexcmds.c:344
 #, c-format
 msgid "cannot use more than %d columns in an index"
 msgstr "non è possibile usare più di %d colonne in un indice"
 
-#: commands/indexcmds.c:370
+#: commands/indexcmds.c:375
 #, c-format
 msgid "cannot create index on foreign table \"%s\""
 msgstr "non è possibile creare indici sulla tabella esterna \"%s\""
 
-#: commands/indexcmds.c:385
+#: commands/indexcmds.c:390
 #, c-format
 msgid "cannot create indexes on temporary tables of other sessions"
 msgstr "non è possibile creare indici su tabelle temporanee di altre sessioni"
 
-#: commands/indexcmds.c:440 commands/tablecmds.c:519 commands/tablecmds.c:8778
+#: commands/indexcmds.c:445 commands/tablecmds.c:525 commands/tablecmds.c:9101
 #, c-format
 msgid "only shared relations can be placed in pg_global tablespace"
 msgstr "solo le relazioni condivise possono essere poste nel tablespace pg_global"
 
-#: commands/indexcmds.c:473
+#: commands/indexcmds.c:478
 #, c-format
 msgid "substituting access method \"gist\" for obsolete method \"rtree\""
 msgstr "sostituzione del metodo di accesso \"gist\" per il metodo obsoleto \"rtree\""
 
-#: commands/indexcmds.c:490
+#: commands/indexcmds.c:495
 #, c-format
 msgid "access method \"%s\" does not support unique indexes"
 msgstr "il metodo di accesso \"%s\" non supporta gli indici univoci"
 
-#: commands/indexcmds.c:495
+#: commands/indexcmds.c:500
 #, c-format
 msgid "access method \"%s\" does not support multicolumn indexes"
 msgstr "il metodo di accesso \"%s\" non supporta gli indici multicolonna"
 
-#: commands/indexcmds.c:500
+#: commands/indexcmds.c:505
 #, c-format
 msgid "access method \"%s\" does not support exclusion constraints"
 msgstr "il metodo di accesso \"%s\" non supporta i vincoli di esclusione"
 
-#: commands/indexcmds.c:579
+#: commands/indexcmds.c:584
 #, c-format
 msgid "%s %s will create implicit index \"%s\" for table \"%s\""
 msgstr "%s %s creerà un indice implicito \"%s\" per la tabella \"%s\""
 
-#: commands/indexcmds.c:935
+#: commands/indexcmds.c:922
 #, c-format
 msgid "functions in index predicate must be marked IMMUTABLE"
 msgstr "le funzioni nel predicato dell'indice devono essere marcate IMMUTABLE"
 
-#: commands/indexcmds.c:1001 parser/parse_utilcmd.c:1802
+#: commands/indexcmds.c:988 parser/parse_utilcmd.c:1797
 #, c-format
 msgid "column \"%s\" named in key does not exist"
 msgstr "la colonna \"%s\" nominata nella chiave non esiste"
 
-#: commands/indexcmds.c:1061
+#: commands/indexcmds.c:1048
 #, c-format
 msgid "functions in index expression must be marked IMMUTABLE"
 msgstr "le funzioni nell'espressione dell'indice devono essere marcate IMMUTABLE"
 
-#: commands/indexcmds.c:1084
+#: commands/indexcmds.c:1071
 #, c-format
 msgid "could not determine which collation to use for index expression"
 msgstr "non è stato possibile determinare quale ordinamento usare per l'espressione dell'indice"
 
-#: commands/indexcmds.c:1092 commands/typecmds.c:780 parser/parse_expr.c:2261
-#: parser/parse_type.c:499 parser/parse_utilcmd.c:2675 utils/adt/misc.c:527
+#: commands/indexcmds.c:1079 commands/typecmds.c:782 parser/parse_expr.c:2278
+#: parser/parse_type.c:546 parser/parse_utilcmd.c:2648 utils/adt/misc.c:520
 #, c-format
 msgid "collations are not supported by type %s"
 msgstr "gli ordinamenti non sono supportati dal tipo %s"
 
-#: commands/indexcmds.c:1130
+#: commands/indexcmds.c:1117
 #, c-format
 msgid "operator %s is not commutative"
 msgstr "l'operatore %s non è commutativo"
 
-#: commands/indexcmds.c:1132
+#: commands/indexcmds.c:1119
 #, c-format
 msgid "Only commutative operators can be used in exclusion constraints."
 msgstr "Solo operatori commutativi possono essere usati nei vincoli di esclusione."
 
-#: commands/indexcmds.c:1158
+#: commands/indexcmds.c:1145
 #, c-format
 msgid "operator %s is not a member of operator family \"%s\""
 msgstr "l'operatore %s non è membro della famiglia di operatori \"%s\""
 
-#: commands/indexcmds.c:1161
+#: commands/indexcmds.c:1148
 #, c-format
 msgid "The exclusion operator must be related to the index operator class for the constraint."
 msgstr "L'operatore di esclusione dev'essere correlato alla classe di operatori dell'indice per il vincolo."
 
-#: commands/indexcmds.c:1196
+#: commands/indexcmds.c:1183
 #, c-format
 msgid "access method \"%s\" does not support ASC/DESC options"
 msgstr "il metodo di accesso \"%s\" non supporta le opzioni ASC/DESC"
 
-#: commands/indexcmds.c:1201
+#: commands/indexcmds.c:1188
 #, c-format
 msgid "access method \"%s\" does not support NULLS FIRST/LAST options"
 msgstr "il metodo di accesso \"%s\" non supporta le opzioni NULLS FIRST/LAST"
 
-#: commands/indexcmds.c:1257 commands/typecmds.c:1885
+#: commands/indexcmds.c:1244 commands/typecmds.c:1887
 #, c-format
 msgid "data type %s has no default operator class for access method \"%s\""
 msgstr "il tipo di dati %s non ha una classe di operatori predefinita per il metodo di accesso \"%s\""
 
-#: commands/indexcmds.c:1259
+#: commands/indexcmds.c:1246
 #, c-format
 msgid "You must specify an operator class for the index or define a default operator class for the data type."
 msgstr "Devi specificare una classe di operatori per l'indice o definire una classe di operatori predefinita per il tipo di dati"
 
-#: commands/indexcmds.c:1288 commands/indexcmds.c:1296
-#: commands/opclasscmds.c:208
+#: commands/indexcmds.c:1275 commands/indexcmds.c:1283
+#: commands/opclasscmds.c:214
 #, c-format
 msgid "operator class \"%s\" does not exist for access method \"%s\""
 msgstr "la classe di operatori \"%s\" non esiste per il metodo di accesso \"%s\""
 
-#: commands/indexcmds.c:1309 commands/typecmds.c:1873
+#: commands/indexcmds.c:1296 commands/typecmds.c:1875
 #, c-format
 msgid "operator class \"%s\" does not accept data type %s"
 msgstr "la classe di operatori \"%s\" non accetta il tipo di dati %s"
 
-#: commands/indexcmds.c:1399
+#: commands/indexcmds.c:1386
 #, c-format
 msgid "there are multiple default operator classes for data type %s"
 msgstr "il tipo di dati %s ha più di una classe di operatori predefinita"
 
-#: commands/indexcmds.c:1775
+#: commands/indexcmds.c:1762
 #, c-format
 msgid "table \"%s\" has no indexes"
 msgstr "la tabella \"%s\" non ha indici"
 
-#: commands/indexcmds.c:1805
+#: commands/indexcmds.c:1792
 #, c-format
 msgid "can only reindex the currently open database"
 msgstr "è possibile reindicizzare solo il database corrente"
 
-#: commands/indexcmds.c:1893
+#: commands/indexcmds.c:1881
 #, c-format
 msgid "table \"%s.%s\" was reindexed"
 msgstr "la tabella \"%s.%s\" è stata reindicizzata"
 
-#: commands/opclasscmds.c:132
+#: commands/matview.c:174
+#, c-format
+msgid "CONCURRENTLY cannot be used when the materialized view is not populated"
+msgstr "non si può usare CONCURRENTLY quando la vista materializzata non è popolata"
+
+#: commands/matview.c:180
+#, c-format
+msgid "CONCURRENTLY and WITH NO DATA options cannot be used together"
+msgstr "le opzioni CONCURRENTLY e WITH NO DATA non possono essere usate insieme"
+
+#: commands/matview.c:584
+#, c-format
+msgid "new data for \"%s\" contains duplicate rows without any NULL columns"
+msgstr "i nuovi dati per \"%s\" contengono righe duplicate senza alcuna colonna NULL"
+
+#: commands/matview.c:586
+#, c-format
+msgid "Row: %s"
+msgstr "Riga: %s"
+
+#: commands/matview.c:671
+#, c-format
+msgid "cannot refresh materialized view \"%s\" concurrently"
+msgstr "non è possibile aggiornare la vista materializzata \"%s\" concorrentemente"
+
+#: commands/matview.c:673
+#, c-format
+msgid "Create a UNIQUE index with no WHERE clause on one or more columns of the materialized view."
+msgstr "Crea un indice UNIQUE senza clausola WHERE su una o più colonna della vista materializzata."
+
+#: commands/opclasscmds.c:135
 #, c-format
 msgid "operator family \"%s\" does not exist for access method \"%s\""
 msgstr "la famiglia di operatori \"%s\" non esiste per il metodo di accesso \"%s\""
 
-#: commands/opclasscmds.c:267
+#: commands/opclasscmds.c:273
 #, c-format
 msgid "operator family \"%s\" for access method \"%s\" already exists"
 msgstr "la famiglia di operatori \"%s\" per il metodo di accesso \"%s\" esiste già "
 
-#: commands/opclasscmds.c:403
+#: commands/opclasscmds.c:409
 #, c-format
 msgid "must be superuser to create an operator class"
 msgstr "devi essere un superutente per creare una classe di operatori"
 
-#: commands/opclasscmds.c:474 commands/opclasscmds.c:860
-#: commands/opclasscmds.c:990
+#: commands/opclasscmds.c:480 commands/opclasscmds.c:866
+#: commands/opclasscmds.c:996
 #, c-format
 msgid "invalid operator number %d, must be between 1 and %d"
 msgstr "numero di operatore %d non valido, deve essere tra 1 e %d"
 
-#: commands/opclasscmds.c:525 commands/opclasscmds.c:911
-#: commands/opclasscmds.c:1005
+#: commands/opclasscmds.c:531 commands/opclasscmds.c:917
+#: commands/opclasscmds.c:1011
 #, c-format
 msgid "invalid procedure number %d, must be between 1 and %d"
 msgstr "numero di procedura %d non valido, deve essere tra 1 e %d"
 
-#: commands/opclasscmds.c:555
+#: commands/opclasscmds.c:561
 #, c-format
 msgid "storage type specified more than once"
 msgstr "tipo di immagazzinamento specificato più di una volta"
 
-#: commands/opclasscmds.c:582
+#: commands/opclasscmds.c:588
 #, c-format
 msgid "storage type cannot be different from data type for access method \"%s\""
 msgstr "il tipo di immagazzinamento non deve essere diverso dal tipo di dato per il metodo di accesso \"%s\""
 
-#: commands/opclasscmds.c:598
+#: commands/opclasscmds.c:604
 #, c-format
 msgid "operator class \"%s\" for access method \"%s\" already exists"
 msgstr "la classe di operatori \"%s\" per il metodo di accesso \"%s\" esiste già"
 
-#: commands/opclasscmds.c:626
+#: commands/opclasscmds.c:632
 #, c-format
 msgid "could not make operator class \"%s\" be default for type %s"
 msgstr "non è stato possibile rendere la classe di operatori \"%s\" predefinita per il tipo %s"
 
-#: commands/opclasscmds.c:629
+#: commands/opclasscmds.c:635
 #, c-format
 msgid "Operator class \"%s\" already is the default."
 msgstr "La classe di operatori \"%s\" è già predefinita."
 
-#: commands/opclasscmds.c:754
+#: commands/opclasscmds.c:760
 #, c-format
 msgid "must be superuser to create an operator family"
 msgstr "solo un superutente può creare una famiglia di operatori"
 
-#: commands/opclasscmds.c:810
+#: commands/opclasscmds.c:816
 #, c-format
 msgid "must be superuser to alter an operator family"
 msgstr "solo un superutente può modificare una famiglia di operatori"
 
-#: commands/opclasscmds.c:876
+#: commands/opclasscmds.c:882
 #, c-format
 msgid "operator argument types must be specified in ALTER OPERATOR FAMILY"
 msgstr "i tipi degli argomenti dell'operatore devono essere specificati in ALTER OPERATOR FAMILY"
 
-#: commands/opclasscmds.c:940
+#: commands/opclasscmds.c:946
 #, c-format
 msgid "STORAGE cannot be specified in ALTER OPERATOR FAMILY"
 msgstr "STORAGE non può essere specificato in ALTER OPERATOR FAMILY"
 
-#: commands/opclasscmds.c:1056
+#: commands/opclasscmds.c:1062
 #, c-format
 msgid "one or two argument types must be specified"
 msgstr "devono essere specificati uno due argomenti"
 
-#: commands/opclasscmds.c:1082
+#: commands/opclasscmds.c:1088
 #, c-format
 msgid "index operators must be binary"
 msgstr "gli operatori dell'indice devono essere binari"
 
-#: commands/opclasscmds.c:1107
+#: commands/opclasscmds.c:1113
 #, c-format
 msgid "access method \"%s\" does not support ordering operators"
 msgstr "il metodo di accesso \"%s\" non supporta operatori di ordinamento"
 
-#: commands/opclasscmds.c:1120
+#: commands/opclasscmds.c:1126
 #, c-format
 msgid "index search operators must return boolean"
 msgstr "gli operatori di ricerca degli indici devono restituire un booleano"
 
-#: commands/opclasscmds.c:1162
+#: commands/opclasscmds.c:1168
 #, c-format
 msgid "btree comparison procedures must have two arguments"
 msgstr "le procedure di comparazione btree devono avere due argomenti"
 
-#: commands/opclasscmds.c:1166
+#: commands/opclasscmds.c:1172
 #, c-format
 msgid "btree comparison procedures must return integer"
 msgstr "le procedure di comparazione btree devono restituire un intero"
 
-#: commands/opclasscmds.c:1183
+#: commands/opclasscmds.c:1189
 #, c-format
 msgid "btree sort support procedures must accept type \"internal\""
 msgstr "le procedure di supporto all'ordinamento btree devono accettare il tipo \"internal\""
 
-#: commands/opclasscmds.c:1187
+#: commands/opclasscmds.c:1193
 #, c-format
 msgid "btree sort support procedures must return void"
 msgstr "le procedure di supporto all'ordinamento btree devono restituire \"void\""
 
-#: commands/opclasscmds.c:1199
+#: commands/opclasscmds.c:1205
 #, c-format
 msgid "hash procedures must have one argument"
 msgstr "la procedura di hash deve avere un argomento."
 
-#: commands/opclasscmds.c:1203
+#: commands/opclasscmds.c:1209
 #, c-format
 msgid "hash procedures must return integer"
 msgstr "la procedura di hash deve restituire un intero"
 
-#: commands/opclasscmds.c:1227
+#: commands/opclasscmds.c:1233
 #, c-format
 msgid "associated data types must be specified for index support procedure"
 msgstr "i tipi di dati associati devono essere specificati per la procedura di supporto dell'indice"
 
-#: commands/opclasscmds.c:1252
+#: commands/opclasscmds.c:1258
 #, c-format
 msgid "procedure number %d for (%s,%s) appears more than once"
 msgstr "la procedura numero %d per (%s,%s) compare più di una volta"
 
-#: commands/opclasscmds.c:1259
+#: commands/opclasscmds.c:1265
 #, c-format
 msgid "operator number %d for (%s,%s) appears more than once"
 msgstr "l'operatore numero %d per (%s,%s) compare più di una volta"
 
-#: commands/opclasscmds.c:1308
+#: commands/opclasscmds.c:1314
 #, c-format
 msgid "operator %d(%s,%s) already exists in operator family \"%s\""
 msgstr "l'operatore %d(%s,%s) esiste già nella famiglia di operatori \"%s\""
 
-#: commands/opclasscmds.c:1424
+#: commands/opclasscmds.c:1430
 #, c-format
 msgid "function %d(%s,%s) already exists in operator family \"%s\""
 msgstr "la funzione %d(%s,%s) esiste già nella famiglia di operatori \"%s\""
 
-#: commands/opclasscmds.c:1514
+#: commands/opclasscmds.c:1520
 #, c-format
 msgid "operator %d(%s,%s) does not exist in operator family \"%s\""
 msgstr "l'operatore %d(%s,%s) non esiste nella famiglia di operatori \"%s\""
 
-#: commands/opclasscmds.c:1554
+#: commands/opclasscmds.c:1560
 #, c-format
 msgid "function %d(%s,%s) does not exist in operator family \"%s\""
 msgstr "la funzione %d(%s,%s) non esiste nella famiglia di operatori \"%s\""
 
-#: commands/opclasscmds.c:1699
+#: commands/opclasscmds.c:1705
 #, c-format
 msgid "operator class \"%s\" for access method \"%s\" already exists in schema \"%s\""
 msgstr "la classe di operatori \"%s\" per il metodo di accesso \"%s\" esiste già nello schema \"%s\""
 
-#: commands/opclasscmds.c:1722
+#: commands/opclasscmds.c:1728
 #, c-format
 msgid "operator family \"%s\" for access method \"%s\" already exists in schema \"%s\""
 msgstr "la famiglia di operatori \"%s\" per il metodo di accesso \"%s\" esiste già nello schema \"%s\""
@@ -5947,7 +6214,7 @@ msgid "invalid cursor name: must not be empty"
 msgstr "nome di cursore non valido: non deve essere vuoto"
 
 #: commands/portalcmds.c:168 commands/portalcmds.c:222
-#: executor/execCurrent.c:67 utils/adt/xml.c:2395 utils/adt/xml.c:2562
+#: executor/execCurrent.c:67 utils/adt/xml.c:2386 utils/adt/xml.c:2553
 #, c-format
 msgid "cursor \"%s\" does not exist"
 msgstr "il cursore \"%s\" non esiste"
@@ -5957,7 +6224,7 @@ msgstr "il cursore \"%s\" non esiste"
 msgid "portal \"%s\" cannot be run"
 msgstr "il portale \"%s\" non può essere eseguito"
 
-#: commands/portalcmds.c:415
+#: commands/portalcmds.c:411
 #, c-format
 msgid "could not reposition held cursor"
 msgstr "riposizionamento del cursore held fallito"
@@ -5967,7 +6234,7 @@ msgstr "riposizionamento del cursore held fallito"
 msgid "invalid statement name: must not be empty"
 msgstr "nome di istruzione non valido: non deve essere vuoto"
 
-#: commands/prepare.c:129 parser/parse_param.c:304 tcop/postgres.c:1299
+#: commands/prepare.c:129 parser/parse_param.c:304 tcop/postgres.c:1296
 #, c-format
 msgid "could not determine data type of parameter $%d"
 msgstr "non è stato possibile determinare il tipo di dato del parametro $%d"
@@ -6072,274 +6339,269 @@ msgstr "occorre specificare un fornitore quando più di un fornitore di etichett
 msgid "security label provider \"%s\" is not loaded"
 msgstr "il fornitore di etichette di sicurezza \"%s\" non è stato caricato"
 
-#: commands/sequence.c:127
+#: commands/sequence.c:123
 #, c-format
 msgid "unlogged sequences are not supported"
 msgstr "le sequenze non loggate non sono supportate"
 
-#: commands/sequence.c:425 commands/tablecmds.c:2291 commands/tablecmds.c:2470
-#: commands/tablecmds.c:9907 parser/parse_utilcmd.c:2366 tcop/utility.c:1041
-#, c-format
-msgid "relation \"%s\" does not exist, skipping"
-msgstr "la relazione \"%s\" non esiste, saltata"
-
-#: commands/sequence.c:643
+#: commands/sequence.c:618
 #, c-format
 msgid "nextval: reached maximum value of sequence \"%s\" (%s)"
 msgstr "nextval: è stato raggiunto il valore massimo della sequenza \"%s\" (%s)"
 
-#: commands/sequence.c:666
+#: commands/sequence.c:641
 #, c-format
 msgid "nextval: reached minimum value of sequence \"%s\" (%s)"
 msgstr "nextval: è stato raggiunto il valore minimo della sequenza \"%s\" (%s)"
 
-#: commands/sequence.c:779
+#: commands/sequence.c:754
 #, c-format
 msgid "currval of sequence \"%s\" is not yet defined in this session"
 msgstr "il valore corrente della sequenza \"%s\" non è stato ancora definito in questa sessione"
 
-#: commands/sequence.c:798 commands/sequence.c:804
+#: commands/sequence.c:773 commands/sequence.c:779
 #, c-format
 msgid "lastval is not yet defined in this session"
 msgstr "lastval non è stato ancora definito in questa sessione"
 
-#: commands/sequence.c:873
+#: commands/sequence.c:848
 #, c-format
 msgid "setval: value %s is out of bounds for sequence \"%s\" (%s..%s)"
 msgstr "setval: il valore %s non rientra nei margini della sequenza \"%s\" (%s..%s)"
 
-#: commands/sequence.c:1242
+#: commands/sequence.c:1224
 #, c-format
 msgid "INCREMENT must not be zero"
 msgstr "INCREMENT non può essere zero"
 
-#: commands/sequence.c:1298
+#: commands/sequence.c:1280
 #, c-format
 msgid "MINVALUE (%s) must be less than MAXVALUE (%s)"
 msgstr "MINVALUE (%s) deve essere minore del MAXVALUE (%s)"
 
-#: commands/sequence.c:1323
+#: commands/sequence.c:1305
 #, c-format
 msgid "START value (%s) cannot be less than MINVALUE (%s)"
 msgstr "il valore di START (%s) non può essere inferiore a quello di MINVALUE (%s)"
 
-#: commands/sequence.c:1335
+#: commands/sequence.c:1317
 #, c-format
 msgid "START value (%s) cannot be greater than MAXVALUE (%s)"
 msgstr "il valore di START (%s) non può essere superiore a quello di MAXVALUE (%s)"
 
-#: commands/sequence.c:1365
+#: commands/sequence.c:1347
 #, c-format
 msgid "RESTART value (%s) cannot be less than MINVALUE (%s)"
 msgstr "il valore di RESTART (%s) non può essere inferiore a quello di MINVALUE (%s)"
 
-#: commands/sequence.c:1377
+#: commands/sequence.c:1359
 #, c-format
 msgid "RESTART value (%s) cannot be greater than MAXVALUE (%s)"
 msgstr "il valore di RESTART (%s) non può essere superiore a quello di MAXVALUE (%s)"
 
-#: commands/sequence.c:1392
+#: commands/sequence.c:1374
 #, c-format
 msgid "CACHE (%s) must be greater than zero"
 msgstr "CACHE (%s) dev'essere maggiore di zero"
 
-#: commands/sequence.c:1424
+#: commands/sequence.c:1406
 #, c-format
 msgid "invalid OWNED BY option"
 msgstr "opzione OWNED BY non valida"
 
-#: commands/sequence.c:1425
+#: commands/sequence.c:1407
 #, c-format
 msgid "Specify OWNED BY table.column or OWNED BY NONE."
 msgstr "Specifica OWNED BY tabella.colonna oppure OWNED BY NONE."
 
-#: commands/sequence.c:1448
+#: commands/sequence.c:1430
 #, c-format
 msgid "referenced relation \"%s\" is not a table or foreign table"
 msgstr "la relazione referenziata \"%s\" non è una tabella né una tabella esterna"
 
-#: commands/sequence.c:1455
+#: commands/sequence.c:1437
 #, c-format
 msgid "sequence must have same owner as table it is linked to"
 msgstr "la sequenza deve avere lo stesso proprietario della tabella a cui è collegata"
 
-#: commands/sequence.c:1459
+#: commands/sequence.c:1441
 #, c-format
 msgid "sequence must be in same schema as table it is linked to"
 msgstr "la sequenza deve essere nello stesso schema della tabella a cui è collegata"
 
-#: commands/tablecmds.c:205
+#: commands/tablecmds.c:206
 #, c-format
 msgid "table \"%s\" does not exist"
 msgstr "la tabella \"%s\" non esiste"
 
-#: commands/tablecmds.c:206
+#: commands/tablecmds.c:207
 #, c-format
 msgid "table \"%s\" does not exist, skipping"
 msgstr "la tabella \"%s\" non esiste, saltata"
 
-#: commands/tablecmds.c:208
+#: commands/tablecmds.c:209
 msgid "Use DROP TABLE to remove a table."
 msgstr "Usa DROP TABLE per eliminare una tabella."
 
-#: commands/tablecmds.c:211
+#: commands/tablecmds.c:212
 #, c-format
 msgid "sequence \"%s\" does not exist"
 msgstr "la sequenza \"%s\" non esiste"
 
-#: commands/tablecmds.c:212
+#: commands/tablecmds.c:213
 #, c-format
 msgid "sequence \"%s\" does not exist, skipping"
 msgstr "la sequenza \"%s\" non esiste, saltata"
 
-#: commands/tablecmds.c:214
+#: commands/tablecmds.c:215
 msgid "Use DROP SEQUENCE to remove a sequence."
 msgstr "Usa DROP SEQUENCE per eliminare una sequenza."
 
-#: commands/tablecmds.c:217
+#: commands/tablecmds.c:218
 #, c-format
 msgid "view \"%s\" does not exist"
 msgstr "la vista \"%s\" non esiste"
 
-#: commands/tablecmds.c:218
+#: commands/tablecmds.c:219
 #, c-format
 msgid "view \"%s\" does not exist, skipping"
 msgstr "la vista \"%s\" non esiste, saltata"
 
-#: commands/tablecmds.c:220
+#: commands/tablecmds.c:221
 msgid "Use DROP VIEW to remove a view."
 msgstr "Usa DROP VIEW per eliminare una vista."
 
-#: commands/tablecmds.c:223
+#: commands/tablecmds.c:224
 #, c-format
 msgid "materialized view \"%s\" does not exist"
 msgstr "la vista materializzata \"%s\" non esiste"
 
-#: commands/tablecmds.c:224
+#: commands/tablecmds.c:225
 #, c-format
 msgid "materialized view \"%s\" does not exist, skipping"
 msgstr "la vista materializzata \"%s\" non esiste, saltata"
 
-#: commands/tablecmds.c:226
+#: commands/tablecmds.c:227
 msgid "Use DROP MATERIALIZED VIEW to remove a materialized view."
 msgstr "Usa DROP MATERIALIZED VIEW per rimuovere una vista materializzata."
 
-#: commands/tablecmds.c:229 parser/parse_utilcmd.c:1553
+#: commands/tablecmds.c:230 parser/parse_utilcmd.c:1548
 #, c-format
 msgid "index \"%s\" does not exist"
 msgstr "l'indice \"%s\" non esiste"
 
-#: commands/tablecmds.c:230
+#: commands/tablecmds.c:231
 #, c-format
 msgid "index \"%s\" does not exist, skipping"
 msgstr "l'indice \"%s\" non esiste, saltato"
 
-#: commands/tablecmds.c:232
+#: commands/tablecmds.c:233
 msgid "Use DROP INDEX to remove an index."
 msgstr "Usa DROP INDEX per eliminare un indice."
 
-#: commands/tablecmds.c:237
+#: commands/tablecmds.c:238
 #, c-format
 msgid "\"%s\" is not a type"
 msgstr "\"%s\" non è un tipo"
 
-#: commands/tablecmds.c:238
+#: commands/tablecmds.c:239
 msgid "Use DROP TYPE to remove a type."
 msgstr "Usa DROP TYPE per eliminare un tipo."
 
-#: commands/tablecmds.c:241 commands/tablecmds.c:7813
-#: commands/tablecmds.c:9839
+#: commands/tablecmds.c:242 commands/tablecmds.c:8076
+#: commands/tablecmds.c:10557
 #, c-format
 msgid "foreign table \"%s\" does not exist"
 msgstr "la tabella esterna \"%s\" non esiste"
 
-#: commands/tablecmds.c:242
+#: commands/tablecmds.c:243
 #, c-format
 msgid "foreign table \"%s\" does not exist, skipping"
 msgstr "la tabella esterna \"%s\" non esiste, saltata"
 
-#: commands/tablecmds.c:244
+#: commands/tablecmds.c:245
 msgid "Use DROP FOREIGN TABLE to remove a foreign table."
 msgstr "Usa DROP FOREIGN TABLE per eliminare una tabella esterna."
 
-#: commands/tablecmds.c:463
+#: commands/tablecmds.c:469
 #, c-format
 msgid "ON COMMIT can only be used on temporary tables"
 msgstr "ON COMMIT può essere usato solo con le tabelle temporanee"
 
-#: commands/tablecmds.c:467 parser/parse_utilcmd.c:528
-#: parser/parse_utilcmd.c:539 parser/parse_utilcmd.c:556
-#: parser/parse_utilcmd.c:618
+#: commands/tablecmds.c:473 parser/parse_utilcmd.c:521
+#: parser/parse_utilcmd.c:532 parser/parse_utilcmd.c:549
+#: parser/parse_utilcmd.c:611
 #, c-format
 msgid "constraints are not supported on foreign tables"
 msgstr "i vincoli sulle tabelle esterne non sono supportati"
 
-#: commands/tablecmds.c:487
+#: commands/tablecmds.c:493
 #, c-format
 msgid "cannot create temporary table within security-restricted operation"
 msgstr "non è possibile creare la tabella temporanea nell'ambito di operazioni a sicurezza ristretta"
 
-#: commands/tablecmds.c:763
+#: commands/tablecmds.c:789
 #, c-format
 msgid "DROP INDEX CONCURRENTLY does not support dropping multiple objects"
 msgstr "DROP INDEX CONCURRENTLY non supporta l'eliminazione di più di un oggetto"
 
-#: commands/tablecmds.c:767
+#: commands/tablecmds.c:793
 #, c-format
 msgid "DROP INDEX CONCURRENTLY does not support CASCADE"
 msgstr "DROP INDEX CONCURRENTLY non supporta CASCADE"
 
-#: commands/tablecmds.c:912 commands/tablecmds.c:1250
-#: commands/tablecmds.c:2106 commands/tablecmds.c:3997
-#: commands/tablecmds.c:5822 commands/tablecmds.c:10455 commands/trigger.c:196
-#: commands/trigger.c:1074 commands/trigger.c:1180 rewrite/rewriteDefine.c:274
-#: rewrite/rewriteDefine.c:867 tcop/utility.c:116
+#: commands/tablecmds.c:938 commands/tablecmds.c:1276
+#: commands/tablecmds.c:2133 commands/tablecmds.c:4112
+#: commands/tablecmds.c:5942 commands/tablecmds.c:11170
+#: commands/tablecmds.c:11205 commands/trigger.c:232 commands/trigger.c:1118
+#: commands/trigger.c:1226 rewrite/rewriteDefine.c:271
+#: rewrite/rewriteDefine.c:887
 #, c-format
 msgid "permission denied: \"%s\" is a system catalog"
 msgstr "permesso negato: \"%s\" è un catalogo di sistema"
 
-#: commands/tablecmds.c:1026
+#: commands/tablecmds.c:1052
 #, c-format
 msgid "truncate cascades to table \"%s\""
 msgstr "truncate si propaga in cascata alla tabella \"%s\""
 
-#: commands/tablecmds.c:1260
+#: commands/tablecmds.c:1286
 #, c-format
 msgid "cannot truncate temporary tables of other sessions"
 msgstr "non è possibile troncare tabelle temporanee di altre sessioni"
 
-#: commands/tablecmds.c:1465 parser/parse_utilcmd.c:1765
+#: commands/tablecmds.c:1491 parser/parse_utilcmd.c:1760
 #, c-format
 msgid "inherited relation \"%s\" is not a table"
 msgstr "la relazione ereditata \"%s\" non è una tabella"
 
-#: commands/tablecmds.c:1472 commands/tablecmds.c:9024
+#: commands/tablecmds.c:1498 commands/tablecmds.c:9531
 #, c-format
 msgid "cannot inherit from temporary relation \"%s\""
 msgstr "non è possibile ereditare dalla relazione temporanea \"%s\""
 
-#: commands/tablecmds.c:1480 commands/tablecmds.c:9032
+#: commands/tablecmds.c:1506 commands/tablecmds.c:9539
 #, c-format
 msgid "cannot inherit from temporary relation of another session"
 msgstr "non è possibile ereditare da una relazione temporanea di un'altra sessione"
 
-#: commands/tablecmds.c:1496 commands/tablecmds.c:9066
+#: commands/tablecmds.c:1522 commands/tablecmds.c:9573
 #, c-format
 msgid "relation \"%s\" would be inherited from more than once"
 msgstr "la relazione \"%s\" sarebbe ereditata più di una volta"
 
-#: commands/tablecmds.c:1544
+#: commands/tablecmds.c:1570
 #, c-format
 msgid "merging multiple inherited definitions of column \"%s\""
 msgstr "unione delle definizioni multiple ereditate della colonna \"%s\""
 
-#: commands/tablecmds.c:1552
+#: commands/tablecmds.c:1578
 #, c-format
 msgid "inherited column \"%s\" has a type conflict"
 msgstr "la colonna ereditata \"%s\" ha un conflitto di tipo"
 
-#: commands/tablecmds.c:1554 commands/tablecmds.c:1575
-#: commands/tablecmds.c:1762 commands/tablecmds.c:1784
+#: commands/tablecmds.c:1580 commands/tablecmds.c:1601
+#: commands/tablecmds.c:1789 commands/tablecmds.c:1811
 #: parser/parse_coerce.c:1592 parser/parse_coerce.c:1612
 #: parser/parse_coerce.c:1632 parser/parse_coerce.c:1677
 #: parser/parse_coerce.c:1714 parser/parse_param.c:218
@@ -6347,920 +6609,1014 @@ msgstr "la colonna ereditata \"%s\" ha un conflitto di tipo"
 msgid "%s versus %s"
 msgstr "tra %s e %s"
 
-#: commands/tablecmds.c:1561
+#: commands/tablecmds.c:1587
 #, c-format
 msgid "inherited column \"%s\" has a collation conflict"
 msgstr "la colonna ereditata \"%s\" ha un conflitto di ordinamento"
 
-#: commands/tablecmds.c:1563 commands/tablecmds.c:1772
-#: commands/tablecmds.c:4421
+#: commands/tablecmds.c:1589 commands/tablecmds.c:1799
+#: commands/tablecmds.c:4536
 #, c-format
 msgid "\"%s\" versus \"%s\""
 msgstr "tra \"%s\" e \"%s\""
 
-#: commands/tablecmds.c:1573
+#: commands/tablecmds.c:1599
 #, c-format
 msgid "inherited column \"%s\" has a storage parameter conflict"
 msgstr "la colonna ereditata \"%s\" ha un conflitto di parametro di memorizzazione"
 
-#: commands/tablecmds.c:1685 parser/parse_utilcmd.c:859
-#: parser/parse_utilcmd.c:1200 parser/parse_utilcmd.c:1276
+#: commands/tablecmds.c:1712 parser/parse_utilcmd.c:853
+#: parser/parse_utilcmd.c:1195 parser/parse_utilcmd.c:1271
 #, c-format
 msgid "cannot convert whole-row table reference"
 msgstr "non è possibile convertire riferimenti ad una riga intera di tabella"
 
-#: commands/tablecmds.c:1686 parser/parse_utilcmd.c:860
+#: commands/tablecmds.c:1713 parser/parse_utilcmd.c:854
 #, c-format
 msgid "Constraint \"%s\" contains a whole-row reference to table \"%s\"."
 msgstr "Il vincolo \"%s\" contiene un riferimento alla riga intera alla tabella \"%s\"."
 
-#: commands/tablecmds.c:1752
+#: commands/tablecmds.c:1779
 #, c-format
 msgid "merging column \"%s\" with inherited definition"
 msgstr "unione della colonna \"%s\" con la definizione ereditata"
 
-#: commands/tablecmds.c:1760
+#: commands/tablecmds.c:1787
 #, c-format
 msgid "column \"%s\" has a type conflict"
 msgstr "la colonna \"%s\" ha un conflitto di tipi"
 
-#: commands/tablecmds.c:1770
+#: commands/tablecmds.c:1797
 #, c-format
 msgid "column \"%s\" has a collation conflict"
 msgstr "la colonna \"%s\" ha un conflitto di ordinamento"
 
-#: commands/tablecmds.c:1782
+#: commands/tablecmds.c:1809
 #, c-format
 msgid "column \"%s\" has a storage parameter conflict"
 msgstr "la colonna \"%s\" ha un conflitto di parametri di memorizzazione"
 
-#: commands/tablecmds.c:1834
+#: commands/tablecmds.c:1861
 #, c-format
 msgid "column \"%s\" inherits conflicting default values"
 msgstr "la colonna \"%s\" eredita valori predefiniti in conflitto tra loro"
 
-#: commands/tablecmds.c:1836
+#: commands/tablecmds.c:1863
 #, c-format
 msgid "To resolve the conflict, specify a default explicitly."
 msgstr "Per risolvere il conflitto, specificare esplicitamente un valore predefinito."
 
-#: commands/tablecmds.c:1883
+#: commands/tablecmds.c:1910
 #, c-format
 msgid "check constraint name \"%s\" appears multiple times but with different expressions"
 msgstr "il nome del vincolo di controllo \"%s\" compare più di una volta ma con espressioni diverse"
 
-#: commands/tablecmds.c:2077
+#: commands/tablecmds.c:2104
 #, c-format
 msgid "cannot rename column of typed table"
 msgstr "non è possibile rinominare la colonna di una tabella con tipo"
 
-#: commands/tablecmds.c:2094
+#: commands/tablecmds.c:2121
 #, c-format
 msgid "\"%s\" is not a table, view, materialized view, composite type, index, or foreign table"
 msgstr "\"%s\" non è una tabella, vista, vista materializzata, tipo composito, indice né una tabella esterna"
 
-#: commands/tablecmds.c:2186
+#: commands/tablecmds.c:2213
 #, c-format
 msgid "inherited column \"%s\" must be renamed in child tables too"
 msgstr "la colonna ereditata \"%s\" dev'essere rinominata anche nelle tabelle figlie"
 
-#: commands/tablecmds.c:2218
+#: commands/tablecmds.c:2245
 #, c-format
 msgid "cannot rename system column \"%s\""
 msgstr "non è possibile rinominare la colonna di sistema \"%s\""
 
-#: commands/tablecmds.c:2233
+#: commands/tablecmds.c:2260
 #, c-format
 msgid "cannot rename inherited column \"%s\""
 msgstr "non è possibile rinominare la colonna ereditata \"%s\""
 
-#: commands/tablecmds.c:2380
+#: commands/tablecmds.c:2407
 #, c-format
 msgid "inherited constraint \"%s\" must be renamed in child tables too"
 msgstr "i vincoli ereditati \"%s\" devono essere rinominati anche nelle tabelle figlie"
 
-#: commands/tablecmds.c:2387
+#: commands/tablecmds.c:2414
 #, c-format
 msgid "cannot rename inherited constraint \"%s\""
 msgstr "non è possibile rinominare il vincolo ereditato \"%s\""
 
 #. translator: first %s is a SQL command, eg ALTER TABLE
-#: commands/tablecmds.c:2598
+#: commands/tablecmds.c:2628
 #, c-format
 msgid "cannot %s \"%s\" because it is being used by active queries in this session"
 msgstr "non è possibile effettuare %s \"%s\" perché è in uso da query attive in questa sessione"
 
 #. translator: first %s is a SQL command, eg ALTER TABLE
-#: commands/tablecmds.c:2607
+#: commands/tablecmds.c:2637
 #, c-format
 msgid "cannot %s \"%s\" because it has pending trigger events"
 msgstr "non è possibile effettuare %s \"%s\" perché ha eventi trigger in sospeso"
 
-#: commands/tablecmds.c:3508
+#: commands/tablecmds.c:3607
 #, c-format
 msgid "cannot rewrite system relation \"%s\""
 msgstr "non è possibile riscrivere la relazione di sistema \"%s\""
 
-#: commands/tablecmds.c:3518
+#: commands/tablecmds.c:3613
+#, c-format
+msgid "cannot rewrite table \"%s\" used as a catalog table"
+msgstr "non è possibile riscrivere la tabella \"%s\" usata come tabella di catalogo"
+
+#: commands/tablecmds.c:3623
 #, c-format
 msgid "cannot rewrite temporary tables of other sessions"
 msgstr "non è possibile riscrivere tabelle temporanee di altre sessioni"
 
-#: commands/tablecmds.c:3747
+#: commands/tablecmds.c:3854
 #, c-format
 msgid "rewriting table \"%s\""
 msgstr "riscrittura della tabella \"%s\""
 
-#: commands/tablecmds.c:3751
+#: commands/tablecmds.c:3858
 #, c-format
 msgid "verifying table \"%s\""
 msgstr "verifica della tabella \"%s\""
 
-#: commands/tablecmds.c:3858
+#: commands/tablecmds.c:3972
 #, c-format
 msgid "column \"%s\" contains null values"
 msgstr "la colonna \"%s\" contiene valori null"
 
-#: commands/tablecmds.c:3873 commands/tablecmds.c:6726
+#: commands/tablecmds.c:3987 commands/tablecmds.c:6985
 #, c-format
 msgid "check constraint \"%s\" is violated by some row"
 msgstr "il vincolo di controllo \"%s\" è violato da alcune righe"
 
-#: commands/tablecmds.c:4018 commands/trigger.c:190 commands/trigger.c:1068
-#: commands/trigger.c:1172 rewrite/rewriteDefine.c:268
-#: rewrite/rewriteDefine.c:862
+#: commands/tablecmds.c:4133 commands/trigger.c:226
+#: rewrite/rewriteDefine.c:265 rewrite/rewriteDefine.c:882
 #, c-format
 msgid "\"%s\" is not a table or view"
 msgstr "\"%s\" non è una tabella né una vista"
 
-#: commands/tablecmds.c:4021
+#: commands/tablecmds.c:4136
 #, c-format
 msgid "\"%s\" is not a table, view, materialized view, or index"
 msgstr "\"%s\" non è una tabella, una vista, una vista materializzata né un indice"
 
-#: commands/tablecmds.c:4027
+#: commands/tablecmds.c:4142
 #, c-format
 msgid "\"%s\" is not a table, materialized view, or index"
 msgstr "\"%s\" non è una tabella, una vista materializzata né un indice"
 
-#: commands/tablecmds.c:4030
+#: commands/tablecmds.c:4145
 #, c-format
 msgid "\"%s\" is not a table or foreign table"
 msgstr "\"%s\" non è una tabella né una tabella esterna"
 
-#: commands/tablecmds.c:4033
+#: commands/tablecmds.c:4148
 #, c-format
 msgid "\"%s\" is not a table, composite type, or foreign table"
 msgstr "\"%s\" non è una tabella, un tipo composito né una tabella esterna"
 
-#: commands/tablecmds.c:4036
+#: commands/tablecmds.c:4151
 #, c-format
 msgid "\"%s\" is not a table, materialized view, composite type, or foreign table"
 msgstr "\"%s\" non è una tabella, una vista materializzata, un tipo composito né una tabella esterna"
 
-#: commands/tablecmds.c:4046
+#: commands/tablecmds.c:4161
 #, c-format
 msgid "\"%s\" is of the wrong type"
 msgstr "\"%s\" è del tipo sbagliato"
 
-#: commands/tablecmds.c:4196 commands/tablecmds.c:4203
+#: commands/tablecmds.c:4311 commands/tablecmds.c:4318
 #, c-format
 msgid "cannot alter type \"%s\" because column \"%s.%s\" uses it"
 msgstr "non è possibile modificare il tipo \"%s\" perché la colonna \"%s.%s\" lo usa"
 
-#: commands/tablecmds.c:4210
+#: commands/tablecmds.c:4325
 #, c-format
 msgid "cannot alter foreign table \"%s\" because column \"%s.%s\" uses its row type"
 msgstr "non è possibile modificare la tabella esterna \"%s\" perché la colonna \"%s.%s\" usa il suo tipo di riga"
 
-#: commands/tablecmds.c:4217
+#: commands/tablecmds.c:4332
 #, c-format
 msgid "cannot alter table \"%s\" because column \"%s.%s\" uses its row type"
 msgstr "non è possibile modificare la tabella \"%s\" perché la colonna \"%s.%s\" usa il suo tipo di riga"
 
-#: commands/tablecmds.c:4279
+#: commands/tablecmds.c:4394
 #, c-format
 msgid "cannot alter type \"%s\" because it is the type of a typed table"
 msgstr "non è possibile modificare il tipo \"%s\" perché è il tipo di una tabella con tipo"
 
-#: commands/tablecmds.c:4281
+#: commands/tablecmds.c:4396
 #, c-format
 msgid "Use ALTER ... CASCADE to alter the typed tables too."
 msgstr "Usa DROP ... CASCADE per eliminare anche le tabelle con tipo."
 
-#: commands/tablecmds.c:4325
+#: commands/tablecmds.c:4440
 #, c-format
 msgid "type %s is not a composite type"
 msgstr "il tipo %s non è un tipo composito"
 
-#: commands/tablecmds.c:4351
+#: commands/tablecmds.c:4466
 #, c-format
 msgid "cannot add column to typed table"
 msgstr "non è possibile aggiungere una colonna ad una tabella con tipo"
 
-#: commands/tablecmds.c:4413 commands/tablecmds.c:9220
+#: commands/tablecmds.c:4528 commands/tablecmds.c:9727
 #, c-format
 msgid "child table \"%s\" has different type for column \"%s\""
 msgstr "la tabella figlia \"%s\" ha tipo diverso per la colonna \"%s\""
 
-#: commands/tablecmds.c:4419 commands/tablecmds.c:9227
+#: commands/tablecmds.c:4534 commands/tablecmds.c:9734
 #, c-format
 msgid "child table \"%s\" has different collation for column \"%s\""
 msgstr "la tabella figlia \"%s\" ha ordinamento diverso per la colonna \"%s\""
 
-#: commands/tablecmds.c:4429
+#: commands/tablecmds.c:4544
 #, c-format
 msgid "child table \"%s\" has a conflicting \"%s\" column"
 msgstr "la tabella figlia \"%s\" ha la colonna \"%s\" in conflitto"
 
-#: commands/tablecmds.c:4441
+#: commands/tablecmds.c:4556
 #, c-format
 msgid "merging definition of column \"%s\" for child \"%s\""
 msgstr "unione delle definizioni della colonna \"%s\" per la tabella figlia \"%s\""
 
-#: commands/tablecmds.c:4662
+#: commands/tablecmds.c:4777
 #, c-format
 msgid "column must be added to child tables too"
 msgstr "la colonna deve essere aggiunta anche alle tabelle figlie"
 
-#: commands/tablecmds.c:4729
+#: commands/tablecmds.c:4844
 #, c-format
 msgid "column \"%s\" of relation \"%s\" already exists"
 msgstr "la colonna \"%s\" della relazione \"%s\" esiste già"
 
-#: commands/tablecmds.c:4832 commands/tablecmds.c:4927
-#: commands/tablecmds.c:4975 commands/tablecmds.c:5079
-#: commands/tablecmds.c:5126 commands/tablecmds.c:5210
-#: commands/tablecmds.c:7240 commands/tablecmds.c:7835
+#: commands/tablecmds.c:4948 commands/tablecmds.c:5043
+#: commands/tablecmds.c:5091 commands/tablecmds.c:5195
+#: commands/tablecmds.c:5242 commands/tablecmds.c:5326
+#: commands/tablecmds.c:7503 commands/tablecmds.c:8098
 #, c-format
 msgid "cannot alter system column \"%s\""
 msgstr "non è possibile modificare la colonna di sistema \"%s\""
 
-#: commands/tablecmds.c:4868
+#: commands/tablecmds.c:4984
 #, c-format
 msgid "column \"%s\" is in a primary key"
 msgstr "la colonna \"%s\" è in una chiave primaria"
 
-#: commands/tablecmds.c:5026
+#: commands/tablecmds.c:5142
 #, c-format
 msgid "\"%s\" is not a table, materialized view, index, or foreign table"
-msgstr "\"%s\" non Ã© una tabella, una vista materializzata, un indice né una tabella esterna"
+msgstr "\"%s\" non Ã¨ una tabella, una vista materializzata, un indice né una tabella esterna"
 
-#: commands/tablecmds.c:5053
+#: commands/tablecmds.c:5169
 #, c-format
 msgid "statistics target %d is too low"
 msgstr "il target delle statistiche %d è troppo basso"
 
-#: commands/tablecmds.c:5061
+#: commands/tablecmds.c:5177
 #, c-format
 msgid "lowering statistics target to %d"
 msgstr "target delle statistiche abbassato a %d"
 
-#: commands/tablecmds.c:5191
+#: commands/tablecmds.c:5307
 #, c-format
 msgid "invalid storage type \"%s\""
 msgstr "tipo di immagazzinamento non valido \"%s\""
 
-#: commands/tablecmds.c:5222
+#: commands/tablecmds.c:5338
 #, c-format
 msgid "column data type %s can only have storage PLAIN"
 msgstr "il tipo di dato della colonna %s può avere solo immagazzinamento PLAIN"
 
-#: commands/tablecmds.c:5256
+#: commands/tablecmds.c:5372
 #, c-format
 msgid "cannot drop column from typed table"
 msgstr "non è possibile eliminare la colonna da una tabella con tipo"
 
-#: commands/tablecmds.c:5297
+#: commands/tablecmds.c:5413
 #, c-format
 msgid "column \"%s\" of relation \"%s\" does not exist, skipping"
 msgstr "la colonna \"%s\" della relazione \"%s\" non esiste, saltato"
 
-#: commands/tablecmds.c:5310
+#: commands/tablecmds.c:5426
 #, c-format
 msgid "cannot drop system column \"%s\""
 msgstr "non è possibile eliminare la colonna di sistema \"%s\""
 
-#: commands/tablecmds.c:5317
+#: commands/tablecmds.c:5433
 #, c-format
 msgid "cannot drop inherited column \"%s\""
 msgstr "non è possibile eliminare la colonna ereditata \"%s\""
 
-#: commands/tablecmds.c:5546
+#: commands/tablecmds.c:5663
 #, c-format
 msgid "ALTER TABLE / ADD CONSTRAINT USING INDEX will rename index \"%s\" to \"%s\""
 msgstr "ALTER TABLE / ADD CONSTRAINT USING INDEX rinominerà l'indice \"%s\" in \"%s\""
 
-#: commands/tablecmds.c:5749
+#: commands/tablecmds.c:5866
 #, c-format
 msgid "constraint must be added to child tables too"
 msgstr "il vincolo deve essere aggiunto anche alle tabelle figlie"
 
-#: commands/tablecmds.c:5816
+#: commands/tablecmds.c:5936
 #, c-format
 msgid "referenced relation \"%s\" is not a table"
 msgstr "la relazione referenziata \"%s\" non è una tabella"
 
-#: commands/tablecmds.c:5839
+#: commands/tablecmds.c:5959
 #, c-format
 msgid "constraints on permanent tables may reference only permanent tables"
 msgstr "i vincoli su tabelle permanenti possono referenziare solo tabelle permanenti"
 
-#: commands/tablecmds.c:5846
+#: commands/tablecmds.c:5966
 #, c-format
 msgid "constraints on unlogged tables may reference only permanent or unlogged tables"
 msgstr "i vincoli su tabelle non loggate possono referenziare solo tabelle permanenti o non loggate"
 
-#: commands/tablecmds.c:5852
+#: commands/tablecmds.c:5972
 #, c-format
 msgid "constraints on temporary tables may reference only temporary tables"
 msgstr "i vincoli su tabelle temporanee possono referenziare solo tabelle temporanee"
 
-#: commands/tablecmds.c:5856
+#: commands/tablecmds.c:5976
 #, c-format
 msgid "constraints on temporary tables must involve temporary tables of this session"
 msgstr "i vincoli su tabelle temporanee devono riferirsi a tabelle temporanee di questa sessione"
 
-#: commands/tablecmds.c:5917
+#: commands/tablecmds.c:6037
 #, c-format
 msgid "number of referencing and referenced columns for foreign key disagree"
 msgstr "i numeri di colonne referenzianti e referenziate per la chiave esterna non combaciano"
 
-#: commands/tablecmds.c:6024
+#: commands/tablecmds.c:6144
 #, c-format
 msgid "foreign key constraint \"%s\" cannot be implemented"
 msgstr "non è possibile implementare il vincolo di chiave esterna \"%s\""
 
-#: commands/tablecmds.c:6027
+#: commands/tablecmds.c:6147
 #, c-format
 msgid "Key columns \"%s\" and \"%s\" are of incompatible types: %s and %s."
 msgstr "Le colonne chiave \"%s\" e \"%s\" hanno tipi incompatibili: %s e %s."
 
-#: commands/tablecmds.c:6220 commands/tablecmds.c:7079
-#: commands/tablecmds.c:7135
+#: commands/tablecmds.c:6347 commands/tablecmds.c:6470
+#: commands/tablecmds.c:7342 commands/tablecmds.c:7398
 #, c-format
 msgid "constraint \"%s\" of relation \"%s\" does not exist"
 msgstr "il vincolo \"%s\" della relazione \"%s\" non esiste"
 
-#: commands/tablecmds.c:6227
+#: commands/tablecmds.c:6353
+#, c-format
+msgid "constraint \"%s\" of relation \"%s\" is not a foreign key constraint"
+msgstr "il vincolo \"%s\" della relazione \"%s\" non è una chiave esterna"
+
+#: commands/tablecmds.c:6477
 #, c-format
 msgid "constraint \"%s\" of relation \"%s\" is not a foreign key or check constraint"
 msgstr "il vincolo \"%s\" della relazione \"%s\" non è una chiave esterna o un vincolo di controllo"
 
-#: commands/tablecmds.c:6296
+#: commands/tablecmds.c:6546
 #, c-format
 msgid "constraint must be validated on child tables too"
 msgstr "i vincoli devono essere validati anche sulle tabelle figlie"
 
-#: commands/tablecmds.c:6358
+#: commands/tablecmds.c:6608
 #, c-format
 msgid "column \"%s\" referenced in foreign key constraint does not exist"
 msgstr "la colonna \"%s\" referenziata dal vincolo di chiave esterna non esiste"
 
-#: commands/tablecmds.c:6363
+#: commands/tablecmds.c:6613
 #, c-format
 msgid "cannot have more than %d keys in a foreign key"
 msgstr "non possono esserci più di %d chiavi in una chiave esterna"
 
-#: commands/tablecmds.c:6428
+#: commands/tablecmds.c:6678
 #, c-format
 msgid "cannot use a deferrable primary key for referenced table \"%s\""
 msgstr "non è possibile usare una chiave primaria deferita per la tabella referenziata \"%s\""
 
-#: commands/tablecmds.c:6445
+#: commands/tablecmds.c:6695
 #, c-format
 msgid "there is no primary key for referenced table \"%s\""
 msgstr "la tabella referenziata \"%s\" non ha una chiave primaria"
 
-#: commands/tablecmds.c:6597
+#: commands/tablecmds.c:6760
+#, c-format
+msgid "foreign key referenced-columns list must not contain duplicates"
+msgstr "la lista di colonne referenziate dalla chiave esterna non deve contenere duplicati"
+
+#: commands/tablecmds.c:6854
 #, c-format
 msgid "cannot use a deferrable unique constraint for referenced table \"%s\""
 msgstr "non è possibile usare un vincolo univoco deferito per la tabella referenziata \"%s\""
 
-#: commands/tablecmds.c:6602
+#: commands/tablecmds.c:6859
 #, c-format
 msgid "there is no unique constraint matching given keys for referenced table \"%s\""
 msgstr "non c'è alcun vincolo univoco che corrisponda alle chiavi indicate per la tabella referenziata \"%s\""
 
-#: commands/tablecmds.c:6757
+#: commands/tablecmds.c:7018
 #, c-format
 msgid "validating foreign key constraint \"%s\""
 msgstr "validazione del vincolo di chiave esterna \"%s\""
 
-#: commands/tablecmds.c:7051
+#: commands/tablecmds.c:7314
 #, c-format
 msgid "cannot drop inherited constraint \"%s\" of relation \"%s\""
 msgstr "non è possibile eliminare il vincolo ereditato \"%s\" della relazione \"%s\""
 
-#: commands/tablecmds.c:7085
+#: commands/tablecmds.c:7348
 #, c-format
 msgid "constraint \"%s\" of relation \"%s\" does not exist, skipping"
 msgstr "il vincolo \"%s\" della relazione \"%s\" non esiste, saltato"
 
-#: commands/tablecmds.c:7224
+#: commands/tablecmds.c:7487
 #, c-format
 msgid "cannot alter column type of typed table"
 msgstr "non è possibile modificare il tipo di colonna di una tabella con tipo"
 
-#: commands/tablecmds.c:7247
+#: commands/tablecmds.c:7510
 #, c-format
 msgid "cannot alter inherited column \"%s\""
 msgstr "non è possibile modificare la colonna ereditata \"%s\""
 
-#: commands/tablecmds.c:7294
+#: commands/tablecmds.c:7557
 #, c-format
 msgid "transform expression must not return a set"
 msgstr "l'espressione di trasformazione non può restituire un insieme"
 
-#: commands/tablecmds.c:7313
+#: commands/tablecmds.c:7576
 #, c-format
 msgid "column \"%s\" cannot be cast automatically to type %s"
 msgstr "la colonna \"%s\" non può essere convertita automaticamente al tipo %s"
 
-#: commands/tablecmds.c:7315
+#: commands/tablecmds.c:7578
 #, c-format
 msgid "Specify a USING expression to perform the conversion."
 msgstr "Specifica una espressione USING per effettuare la conversione."
 
-#: commands/tablecmds.c:7364
+#: commands/tablecmds.c:7627
 #, c-format
 msgid "type of inherited column \"%s\" must be changed in child tables too"
 msgstr "il tipo della colonna ereditata \"%s\" deve essere cambiato anche nelle tabelle figlie"
 
-#: commands/tablecmds.c:7445
+#: commands/tablecmds.c:7708
 #, c-format
 msgid "cannot alter type of column \"%s\" twice"
 msgstr "non è possibile cambiare il tipo della colonna \"%s\" due volte"
 
-#: commands/tablecmds.c:7481
+#: commands/tablecmds.c:7744
 #, c-format
 msgid "default for column \"%s\" cannot be cast automatically to type %s"
 msgstr "il valore predefinito della colonna \"%s\" non può essere convertito automaticamente al tipo %s"
 
-#: commands/tablecmds.c:7607
+#: commands/tablecmds.c:7870
 #, c-format
 msgid "cannot alter type of a column used by a view or rule"
 msgstr "non è possibile cambiare il tipo di una colonna usata in una vista o una regola"
 
-#: commands/tablecmds.c:7608 commands/tablecmds.c:7627
+#: commands/tablecmds.c:7871 commands/tablecmds.c:7890
 #, c-format
 msgid "%s depends on column \"%s\""
 msgstr "%s dipende dalla colonna \"%s\""
 
-#: commands/tablecmds.c:7626
+#: commands/tablecmds.c:7889
 #, c-format
 msgid "cannot alter type of a column used in a trigger definition"
 msgstr "non è possibile cambiare il tipo di una colonna usata nella definizione di un trigger"
 
-#: commands/tablecmds.c:8178
+#: commands/tablecmds.c:8465
 #, c-format
 msgid "cannot change owner of index \"%s\""
 msgstr "non è possibile cambiare il proprietario dell'indice \"%s\""
 
-#: commands/tablecmds.c:8180
+#: commands/tablecmds.c:8467
 #, c-format
 msgid "Change the ownership of the index's table, instead."
 msgstr "Cambia il proprietario della tabella dell'indice invece."
 
-#: commands/tablecmds.c:8196
+#: commands/tablecmds.c:8483
 #, c-format
 msgid "cannot change owner of sequence \"%s\""
 msgstr "non è possibile cambiare il proprietario della sequenza \"%s\""
 
-#: commands/tablecmds.c:8198 commands/tablecmds.c:9926
+#: commands/tablecmds.c:8485 commands/tablecmds.c:10644
 #, c-format
 msgid "Sequence \"%s\" is linked to table \"%s\"."
 msgstr "La sequenza \"%s\" è collegata alla tabella \"%s\"."
 
-#: commands/tablecmds.c:8210 commands/tablecmds.c:10530
+#: commands/tablecmds.c:8497 commands/tablecmds.c:11280
 #, c-format
 msgid "Use ALTER TYPE instead."
 msgstr "È possibile usare ALTER TYPE invece."
 
-#: commands/tablecmds.c:8219
+#: commands/tablecmds.c:8506
 #, c-format
 msgid "\"%s\" is not a table, view, sequence, or foreign table"
 msgstr "\"%s\" non è una tabella, una vista, una sequenza né una tabella esterna"
 
-#: commands/tablecmds.c:8555
+#: commands/tablecmds.c:8842
 #, c-format
 msgid "cannot have multiple SET TABLESPACE subcommands"
 msgstr "non è possibile avere più di un sottocomando SET TABLESPACE"
 
-#: commands/tablecmds.c:8626
+#: commands/tablecmds.c:8915
 #, c-format
 msgid "\"%s\" is not a table, view, materialized view, index, or TOAST table"
 msgstr "\"%s\" non è una tabella, una vista, una vista materializzata né una tabella TOAST"
 
-#: commands/tablecmds.c:8771
+#: commands/tablecmds.c:8948 commands/view.c:474
+#, c-format
+msgid "WITH CHECK OPTION is supported only on auto-updatable views"
+msgstr "WITH CHECK OPTION è supportato solo su viste auto-aggiornabili"
+
+#: commands/tablecmds.c:9094
 #, c-format
 msgid "cannot move system relation \"%s\""
 msgstr "non è possibile spostare la relazione \"%s\""
 
-#: commands/tablecmds.c:8787
+#: commands/tablecmds.c:9110
 #, c-format
 msgid "cannot move temporary tables of other sessions"
 msgstr "non è possibile spostare tabelle temporanee di altre sessioni"
 
-#: commands/tablecmds.c:8915 storage/buffer/bufmgr.c:482
+#: commands/tablecmds.c:9238
+#, c-format
+msgid "only tables, indexes, and materialized views exist in tablespaces"
+msgstr "solo tabelle, indici e viste materializzate esistono nei tablespace"
+
+#: commands/tablecmds.c:9250
+#, c-format
+msgid "cannot move relations in to or out of pg_global tablespace"
+msgstr "non è possibile spostare relazioni dentro o fuori il tablespace pg_global"
+
+#: commands/tablecmds.c:9341
+#, c-format
+msgid "aborting due to \"%s\".\"%s\" --- lock not available"
+msgstr "interruzione per colpa di \"%s\".\"%s\" --- lock non disponibile"
+
+#: commands/tablecmds.c:9357
+#, c-format
+msgid "no matching relations in tablespace \"%s\" found"
+msgstr "nessuna relazione corrispondente trovata nel tablespace \"%s\""
+
+#: commands/tablecmds.c:9418 storage/buffer/bufmgr.c:481
 #, c-format
 msgid "invalid page in block %u of relation %s"
 msgstr "pagina non valida nel blocco %u della relazione %s"
 
-#: commands/tablecmds.c:8993
+#: commands/tablecmds.c:9500
 #, c-format
 msgid "cannot change inheritance of typed table"
 msgstr "non è possibile cambiare ereditarietà di tabelle con tipo"
 
-#: commands/tablecmds.c:9039
+#: commands/tablecmds.c:9546
 #, c-format
 msgid "cannot inherit to temporary relation of another session"
 msgstr "non è possibile ereditare tabelle temporanee di un'altra sessione"
 
-#: commands/tablecmds.c:9093
+#: commands/tablecmds.c:9600
 #, c-format
 msgid "circular inheritance not allowed"
 msgstr "l'ereditarietà circolare non è consentita"
 
-#: commands/tablecmds.c:9094
+#: commands/tablecmds.c:9601
 #, c-format
 msgid "\"%s\" is already a child of \"%s\"."
 msgstr "\"%s\" è già figlia di \"%s\"."
 
-#: commands/tablecmds.c:9102
+#: commands/tablecmds.c:9609
 #, c-format
 msgid "table \"%s\" without OIDs cannot inherit from table \"%s\" with OIDs"
 msgstr "la tabella \"%s\" senza OID non può ereditare dalla tabella \"%s\" con OID"
 
-#: commands/tablecmds.c:9238
+#: commands/tablecmds.c:9745
 #, c-format
 msgid "column \"%s\" in child table must be marked NOT NULL"
 msgstr "la colonna \"%s\" nella tabella figlia dev'essere marcata NOT NULL"
 
-#: commands/tablecmds.c:9254
+#: commands/tablecmds.c:9761
 #, c-format
 msgid "child table is missing column \"%s\""
 msgstr "la tabella figlia non ha la colonna \"%s\""
 
-#: commands/tablecmds.c:9337
+#: commands/tablecmds.c:9844
 #, c-format
 msgid "child table \"%s\" has different definition for check constraint \"%s\""
 msgstr "la tabella figlia \"%s\" ha una definizione diversa del vincolo di controllo \"%s\""
 
-#: commands/tablecmds.c:9345
+#: commands/tablecmds.c:9852
 #, c-format
 msgid "constraint \"%s\" conflicts with non-inherited constraint on child table \"%s\""
 msgstr "il vincolo \"%s\" è in conflitto con un vincolo non ereditato nella tabella figlia \"%s\""
 
-#: commands/tablecmds.c:9369
+#: commands/tablecmds.c:9876
 #, c-format
 msgid "child table is missing constraint \"%s\""
 msgstr "la tabella figlia non ha il vincolo \"%s\""
 
-#: commands/tablecmds.c:9449
+#: commands/tablecmds.c:9956
 #, c-format
 msgid "relation \"%s\" is not a parent of relation \"%s\""
 msgstr "la relazione \"%s\" non è genitore della relazione \"%s\""
 
-#: commands/tablecmds.c:9675
+#: commands/tablecmds.c:10182
 #, c-format
 msgid "typed tables cannot inherit"
 msgstr "le tabelle con tipo non possono essere ereditate"
 
-#: commands/tablecmds.c:9706
+#: commands/tablecmds.c:10213
 #, c-format
 msgid "table is missing column \"%s\""
 msgstr "la tabella non ha la colonna \"%s\""
 
-#: commands/tablecmds.c:9716
+#: commands/tablecmds.c:10223
 #, c-format
 msgid "table has column \"%s\" where type requires \"%s\""
 msgstr "la tabella ha la colonna \"%s\" laddove il tipo richiede \"%s\""
 
-#: commands/tablecmds.c:9725
+#: commands/tablecmds.c:10232
 #, c-format
 msgid "table \"%s\" has different type for column \"%s\""
 msgstr "la tabella \"%s\" ha tipo diverso per la colonna \"%s\""
 
-#: commands/tablecmds.c:9738
+#: commands/tablecmds.c:10245
 #, c-format
 msgid "table has extra column \"%s\""
 msgstr "la tabella ha la colonna \"%s\" in eccesso"
 
-#: commands/tablecmds.c:9788
+#: commands/tablecmds.c:10295
 #, c-format
 msgid "\"%s\" is not a typed table"
 msgstr "\"%s\" non è una tabella con tipo"
 
-#: commands/tablecmds.c:9925
+#: commands/tablecmds.c:10478
+#, c-format
+msgid "cannot use non-unique index \"%s\" as replica identity"
+msgstr "non è possibile usare l'indice non univoco \"%s\" come identità di replica"
+
+#: commands/tablecmds.c:10484
+#, c-format
+msgid "cannot use non-immediate index \"%s\" as replica identity"
+msgstr "non è possibile usare l'indice non immediato \"%s\" come identità di replica"
+
+#: commands/tablecmds.c:10490
+#, c-format
+msgid "cannot use expression index \"%s\" as replica identity"
+msgstr "non è possibile usare l'indice su espressione \"%s\" come identità di replica"
+
+#: commands/tablecmds.c:10496
+#, c-format
+msgid "cannot use partial index \"%s\" as replica identity"
+msgstr "non è possibile usare l'indice parziale \"%s\" come identità di replica"
+
+#: commands/tablecmds.c:10502
+#, c-format
+msgid "cannot use invalid index \"%s\" as replica identity"
+msgstr "non è possibile usare l'indice non valido \"%s\" come identità di replica"
+
+#: commands/tablecmds.c:10520
+#, c-format
+msgid "index \"%s\" cannot be used as replica identity because column \"%s\" is nullable"
+msgstr "l'indice \"%s\" non può essere usato come identità di replica perché la colonna \"%s\" può essere NULL"
+
+#: commands/tablecmds.c:10643
 #, c-format
 msgid "cannot move an owned sequence into another schema"
 msgstr "non è possibile spostare una sequenza con proprietario in uno schema diverso"
 
-#: commands/tablecmds.c:10021
+#: commands/tablecmds.c:10739
 #, c-format
 msgid "relation \"%s\" already exists in schema \"%s\""
 msgstr "la relazione \"%s\" esiste già nello schema \"%s\""
 
-#: commands/tablecmds.c:10514
+#: commands/tablecmds.c:11264
 #, c-format
 msgid "\"%s\" is not a composite type"
 msgstr "\"%s\" non è un tipo composito"
 
-#: commands/tablecmds.c:10544
+#: commands/tablecmds.c:11294
 #, c-format
 msgid "\"%s\" is not a table, view, materialized view, sequence, or foreign table"
 msgstr "\"%s\" non è una tabella, una vista, una vista materializzata, una sequenza né una tabella esterna"
 
-#: commands/tablespace.c:156 commands/tablespace.c:173
-#: commands/tablespace.c:184 commands/tablespace.c:192
-#: commands/tablespace.c:604 storage/file/copydir.c:50
+#: commands/tablespace.c:160 commands/tablespace.c:177
+#: commands/tablespace.c:188 commands/tablespace.c:196
+#: commands/tablespace.c:616 replication/slot.c:921 storage/file/copydir.c:47
 #, c-format
 msgid "could not create directory \"%s\": %m"
 msgstr "creazione della directory \"%s\" fallita: %m"
 
-#: commands/tablespace.c:203
+#: commands/tablespace.c:207
 #, c-format
 msgid "could not stat directory \"%s\": %m"
 msgstr "non è stato possibile ottenere informazioni sulla directory \"%s\": %m"
 
-#: commands/tablespace.c:212
+#: commands/tablespace.c:216
 #, c-format
 msgid "\"%s\" exists but is not a directory"
 msgstr "\"%s\" esiste ma non è una directory"
 
-#: commands/tablespace.c:242
+#: commands/tablespace.c:247
 #, c-format
 msgid "permission denied to create tablespace \"%s\""
 msgstr "permesso di creare il tablespace \"%s\" negato"
 
-#: commands/tablespace.c:244
+#: commands/tablespace.c:249
 #, c-format
 msgid "Must be superuser to create a tablespace."
 msgstr "Solo un superutente può incrementare questo valore."
 
-#: commands/tablespace.c:260
+#: commands/tablespace.c:265
 #, c-format
 msgid "tablespace location cannot contain single quotes"
 msgstr "la posizione del tablespace non può contenere apici"
 
-#: commands/tablespace.c:270
+#: commands/tablespace.c:275
 #, c-format
 msgid "tablespace location must be an absolute path"
 msgstr "la posizione del tablespace dev'essere un percorso assoluto"
 
-#: commands/tablespace.c:281
+#: commands/tablespace.c:286
 #, c-format
 msgid "tablespace location \"%s\" is too long"
 msgstr "la posizione del tablespace \"%s\" è troppo lunga"
 
-#: commands/tablespace.c:291 commands/tablespace.c:860
+#: commands/tablespace.c:296 commands/tablespace.c:887
 #, c-format
 msgid "unacceptable tablespace name \"%s\""
 msgstr "il nome del tablespace \"%s\" non è accettabile"
 
-#: commands/tablespace.c:293 commands/tablespace.c:861
+#: commands/tablespace.c:298 commands/tablespace.c:888
 #, c-format
 msgid "The prefix \"pg_\" is reserved for system tablespaces."
 msgstr "Il prefisso \"pg_\" è riservato per i tablespace di sistema."
 
-#: commands/tablespace.c:303 commands/tablespace.c:873
+#: commands/tablespace.c:308 commands/tablespace.c:900
 #, c-format
 msgid "tablespace \"%s\" already exists"
 msgstr "il tablespace \"%s\" esiste già"
 
-#: commands/tablespace.c:372 commands/tablespace.c:530
-#: replication/basebackup.c:178 replication/basebackup.c:942
-#: utils/adt/misc.c:372
+#: commands/tablespace.c:386 commands/tablespace.c:544
+#: replication/basebackup.c:222 replication/basebackup.c:1064
+#: utils/adt/misc.c:365
 #, c-format
 msgid "tablespaces are not supported on this platform"
 msgstr "i tablespace non sono supportati su questa piattaforma"
 
-#: commands/tablespace.c:412 commands/tablespace.c:843
-#: commands/tablespace.c:922 commands/tablespace.c:995
-#: commands/tablespace.c:1133 commands/tablespace.c:1333
+#: commands/tablespace.c:426 commands/tablespace.c:870
+#: commands/tablespace.c:949 commands/tablespace.c:1018
+#: commands/tablespace.c:1151 commands/tablespace.c:1351
 #, c-format
 msgid "tablespace \"%s\" does not exist"
 msgstr "il tablespace \"%s\" non esiste"
 
-#: commands/tablespace.c:418
+#: commands/tablespace.c:432
 #, c-format
 msgid "tablespace \"%s\" does not exist, skipping"
 msgstr "il tablespace \"%s\" non esiste, saltato"
 
-#: commands/tablespace.c:487
+#: commands/tablespace.c:501
 #, c-format
 msgid "tablespace \"%s\" is not empty"
 msgstr "il tablespace \"%s\" non è vuoto"
 
-#: commands/tablespace.c:561
+#: commands/tablespace.c:575
 #, c-format
 msgid "directory \"%s\" does not exist"
 msgstr "la directory \"%s\" non esiste"
 
-#: commands/tablespace.c:562
+#: commands/tablespace.c:576
 #, c-format
 msgid "Create this directory for the tablespace before restarting the server."
 msgstr "Crea questa directory per il tablespace prima di riavviare il server."
 
-#: commands/tablespace.c:567
+#: commands/tablespace.c:581
 #, c-format
 msgid "could not set permissions on directory \"%s\": %m"
 msgstr "impostazione dei permessi sulla directory \"%s\" fallita: %m"
 
-#: commands/tablespace.c:599
+#: commands/tablespace.c:611
 #, c-format
 msgid "directory \"%s\" already in use as a tablespace"
 msgstr "la directory \"%s\" già è in uso come tablespace"
 
-#: commands/tablespace.c:614 commands/tablespace.c:778
+#: commands/tablespace.c:635 commands/tablespace.c:757
+#: commands/tablespace.c:770 commands/tablespace.c:794
+#, c-format
+msgid "could not remove directory \"%s\": %m"
+msgstr "rimozione della directory \"%s\" fallita: %m"
+
+#: commands/tablespace.c:643 commands/tablespace.c:805
 #, c-format
 msgid "could not remove symbolic link \"%s\": %m"
 msgstr "rimozione del link simbolico \"%s\" fallita: %m"
 
-#: commands/tablespace.c:624
+#: commands/tablespace.c:654
 #, c-format
 msgid "could not create symbolic link \"%s\": %m"
 msgstr "creazione del link simbolico \"%s\" fallita: %m"
 
-#: commands/tablespace.c:690 commands/tablespace.c:700
-#: postmaster/postmaster.c:1314 replication/basebackup.c:281
-#: replication/basebackup.c:577 storage/file/copydir.c:56
-#: storage/file/copydir.c:99 storage/file/fd.c:1896 utils/adt/genfile.c:354
-#: utils/adt/misc.c:272 utils/misc/tzparser.c:323
+#: commands/tablespace.c:718 commands/tablespace.c:728
+#: postmaster/postmaster.c:1284 replication/basebackup.c:349
+#: replication/basebackup.c:667 storage/file/copydir.c:53
+#: storage/file/copydir.c:96 storage/file/fd.c:1951 storage/ipc/dsm.c:300
+#: utils/adt/genfile.c:354 utils/adt/misc.c:267 utils/misc/tzparser.c:323
 #, c-format
 msgid "could not open directory \"%s\": %m"
 msgstr "apertura della directory \"%s\" fallita: %m"
 
-#: commands/tablespace.c:730 commands/tablespace.c:743
-#: commands/tablespace.c:767
-#, c-format
-msgid "could not remove directory \"%s\": %m"
-msgstr "rimozione della directory \"%s\" fallita: %m"
-
-#: commands/tablespace.c:1000
+#: commands/tablespace.c:1023
 #, c-format
 msgid "Tablespace \"%s\" does not exist."
 msgstr "Il tablespace \"%s\" non esiste."
 
-#: commands/tablespace.c:1432
+#: commands/tablespace.c:1450
 #, c-format
 msgid "directories for tablespace %u could not be removed"
 msgstr "rimozioni delle directory per il tablespace %u fallita"
 
-#: commands/tablespace.c:1434
+#: commands/tablespace.c:1452
 #, c-format
 msgid "You can remove the directories manually if necessary."
 msgstr "Puoi rimuovere le directory manualmente se necessario."
 
-#: commands/trigger.c:163
+#: commands/trigger.c:175
 #, c-format
 msgid "\"%s\" is a table"
 msgstr "\"%s\" non è una tabella"
 
-#: commands/trigger.c:165
+#: commands/trigger.c:177
 #, c-format
 msgid "Tables cannot have INSTEAD OF triggers."
 msgstr "Le tabelle non possono avere trigger INSTEAD OF."
 
-#: commands/trigger.c:176 commands/trigger.c:183
+#: commands/trigger.c:188 commands/trigger.c:195
 #, c-format
 msgid "\"%s\" is a view"
 msgstr "\"%s\" è una vista"
 
-#: commands/trigger.c:178
+#: commands/trigger.c:190
 #, c-format
 msgid "Views cannot have row-level BEFORE or AFTER triggers."
 msgstr "Le viste non possono avere trigger di riga BEFORE o AFTER."
 
-#: commands/trigger.c:185
+#: commands/trigger.c:197
 #, c-format
 msgid "Views cannot have TRUNCATE triggers."
 msgstr "Le viste non possono avere trigger TRUNCATE."
 
-#: commands/trigger.c:241
+#: commands/trigger.c:205 commands/trigger.c:212 commands/trigger.c:219
+#, c-format
+msgid "\"%s\" is a foreign table"
+msgstr "\"%s\" è una tabella esterna"
+
+#: commands/trigger.c:207
+#, c-format
+msgid "Foreign tables cannot have INSTEAD OF triggers."
+msgstr "Le tabelle esterne non possono avere trigger INSTEAD OF."
+
+#: commands/trigger.c:214
+#, c-format
+msgid "Foreign tables cannot have TRUNCATE triggers."
+msgstr "Le tabelle esterne non possono avere trigger TRUNCATE."
+
+#: commands/trigger.c:221
+#, c-format
+msgid "Foreign tables cannot have constraint triggers."
+msgstr "Le tabelle esterne non possono avere trigger di vincolo."
+
+#: commands/trigger.c:284
 #, c-format
 msgid "TRUNCATE FOR EACH ROW triggers are not supported"
 msgstr "i trigger TRUNCATE FOR EACH ROW non sono supportati"
 
-#: commands/trigger.c:249
+#: commands/trigger.c:292
 #, c-format
 msgid "INSTEAD OF triggers must be FOR EACH ROW"
 msgstr "i trigger INSTEAD OF devono essere FOR EACH ROW"
 
-#: commands/trigger.c:253
+#: commands/trigger.c:296
 #, c-format
 msgid "INSTEAD OF triggers cannot have WHEN conditions"
 msgstr "i trigger INSTEAD OF non possono avere condizioni WHEN"
 
-#: commands/trigger.c:257
+#: commands/trigger.c:300
 #, c-format
 msgid "INSTEAD OF triggers cannot have column lists"
 msgstr "i trigger INSTEAD OF non possono avere liste di colonne"
 
-#: commands/trigger.c:316 commands/trigger.c:329
+#: commands/trigger.c:359 commands/trigger.c:372
 #, c-format
 msgid "statement trigger's WHEN condition cannot reference column values"
 msgstr "la condizione WHEN del trigger di istruzione non può riferirsi a valori di colonna"
 
-#: commands/trigger.c:321
+#: commands/trigger.c:364
 #, c-format
 msgid "INSERT trigger's WHEN condition cannot reference OLD values"
 msgstr "la condizione WHEN dei trigger INSERT non può usare OLD"
 
-#: commands/trigger.c:334
+#: commands/trigger.c:377
 #, c-format
 msgid "DELETE trigger's WHEN condition cannot reference NEW values"
 msgstr "la condizione WHEN del trigger DELETE non può usare NEW"
 
-#: commands/trigger.c:339
+#: commands/trigger.c:382
 #, c-format
 msgid "BEFORE trigger's WHEN condition cannot reference NEW system columns"
 msgstr "la condizione WHEN del trigger BEFORE non può usare le colonne di sistema NEW"
 
-#: commands/trigger.c:384
+#: commands/trigger.c:427
 #, c-format
 msgid "changing return type of function %s from \"opaque\" to \"trigger\""
 msgstr "modifica del tipo restituito dalla funzione %s da \"opaque\" a \"trigger\""
 
-#: commands/trigger.c:391
+#: commands/trigger.c:434
 #, c-format
 msgid "function %s must return type \"trigger\""
 msgstr "la funzione %s deve restituire il tipo \"trigger\""
 
-#: commands/trigger.c:503 commands/trigger.c:1249
+#: commands/trigger.c:546 commands/trigger.c:1295
 #, c-format
 msgid "trigger \"%s\" for relation \"%s\" already exists"
 msgstr "il trigger \"%s\" per la relazione \"%s\" esiste già"
 
-#: commands/trigger.c:788
+#: commands/trigger.c:831
 msgid "Found referenced table's UPDATE trigger."
 msgstr "Trovato trigger UPDATE della tabella referenziata."
 
-#: commands/trigger.c:789
+#: commands/trigger.c:832
 msgid "Found referenced table's DELETE trigger."
 msgstr "Trovato trigger DELETE della tabella referenziata."
 
-#: commands/trigger.c:790
+#: commands/trigger.c:833
 msgid "Found referencing table's trigger."
 msgstr "Trovato trigger della tabella referenziante."
 
-#: commands/trigger.c:899 commands/trigger.c:915
+#: commands/trigger.c:942 commands/trigger.c:958
 #, c-format
 msgid "ignoring incomplete trigger group for constraint \"%s\" %s"
 msgstr "ignorato gruppo di trigger incompleto per il vincolo \"%s\" %s"
 
-#: commands/trigger.c:927
+#: commands/trigger.c:970
 #, c-format
 msgid "converting trigger group into constraint \"%s\" %s"
 msgstr "conversione del gruppo di trigger nel vincolo \"%s\" %s"
 
-#: commands/trigger.c:1139 commands/trigger.c:1297 commands/trigger.c:1413
+#: commands/trigger.c:1112 commands/trigger.c:1217
+#, c-format
+msgid "\"%s\" is not a table, view, or foreign table"
+msgstr "\"%s\" non è una tabella, una vista né una tabella esterna"
+
+#: commands/trigger.c:1183 commands/trigger.c:1343 commands/trigger.c:1459
 #, c-format
 msgid "trigger \"%s\" for table \"%s\" does not exist"
 msgstr "il trigger \"%s\" per la tabella \"%s\" non esiste"
 
-#: commands/trigger.c:1378
+#: commands/trigger.c:1424
 #, c-format
 msgid "permission denied: \"%s\" is a system trigger"
 msgstr "permesso negato: \"%s\" è un trigger di sistema"
 
-#: commands/trigger.c:1874
+#: commands/trigger.c:1920
 #, c-format
 msgid "trigger function %u returned null value"
 msgstr "la funzione trigger %u ha restituito un valore null"
 
-#: commands/trigger.c:1933 commands/trigger.c:2132 commands/trigger.c:2320
-#: commands/trigger.c:2579
+#: commands/trigger.c:1979 commands/trigger.c:2178 commands/trigger.c:2382
+#: commands/trigger.c:2664
 #, c-format
 msgid "BEFORE STATEMENT trigger cannot return a value"
 msgstr "il trigger BEFORE STATEMENT non può restituire un valore"
 
-#: commands/trigger.c:2641 executor/nodeModifyTable.c:428
-#: executor/nodeModifyTable.c:709
+#: commands/trigger.c:2726 executor/nodeModifyTable.c:434
+#: executor/nodeModifyTable.c:712
 #, c-format
 msgid "tuple to be updated was already modified by an operation triggered by the current command"
 msgstr "la tupla da aggiornare era stata già modificata da un'operazione fatta eseguire da un comando corrente"
 
-#: commands/trigger.c:2642 executor/nodeModifyTable.c:429
-#: executor/nodeModifyTable.c:710
+#: commands/trigger.c:2727 executor/nodeModifyTable.c:435
+#: executor/nodeModifyTable.c:713
 #, c-format
 msgid "Consider using an AFTER trigger instead of a BEFORE trigger to propagate changes to other rows."
 msgstr "Considera l'utilizzo di un trigger AFTER invece di un trigger BEFORE per propagare i cambiamenti ad altre righe."
 
-#: commands/trigger.c:2656 executor/execMain.c:1998
-#: executor/nodeLockRows.c:165 executor/nodeModifyTable.c:441
-#: executor/nodeModifyTable.c:722
+#: commands/trigger.c:2741 executor/execMain.c:2049
+#: executor/nodeLockRows.c:165 executor/nodeModifyTable.c:447
+#: executor/nodeModifyTable.c:725
 #, c-format
 msgid "could not serialize access due to concurrent update"
 msgstr "serializzazione dell'accesso fallita a causa di modifiche concorrenti"
 
-#: commands/trigger.c:4285
+#: commands/trigger.c:4538
 #, c-format
 msgid "constraint \"%s\" is not deferrable"
 msgstr "il vincolo \"%s\" non è deferibile"
 
-#: commands/trigger.c:4308
+#: commands/trigger.c:4561
 #, c-format
 msgid "constraint \"%s\" does not exist"
 msgstr "il vincolo \"%s\" non esiste"
@@ -7360,257 +7716,257 @@ msgstr "la mappatura per il token \"%s\" non esiste, saltato"
 msgid "invalid parameter list format: \"%s\""
 msgstr "formato di lista di parametri non valido: \"%s\""
 
-#: commands/typecmds.c:182
+#: commands/typecmds.c:184
 #, c-format
 msgid "must be superuser to create a base type"
 msgstr "solo un superutente può creare un tipo di base"
 
-#: commands/typecmds.c:288 commands/typecmds.c:1369
+#: commands/typecmds.c:290 commands/typecmds.c:1371
 #, c-format
 msgid "type attribute \"%s\" not recognized"
 msgstr "attributo del tipo \"%s\" non riconosciuto"
 
-#: commands/typecmds.c:342
+#: commands/typecmds.c:344
 #, c-format
 msgid "invalid type category \"%s\": must be simple ASCII"
 msgstr "categoria non valida \"%s\": dev'essere semplice ASCII"
 
-#: commands/typecmds.c:361
+#: commands/typecmds.c:363
 #, c-format
 msgid "array element type cannot be %s"
 msgstr "il tipo di elemento dell'array non può essere %s"
 
-#: commands/typecmds.c:393
+#: commands/typecmds.c:395
 #, c-format
 msgid "alignment \"%s\" not recognized"
 msgstr "allineamento \"%s\" non riconosciuto"
 
-#: commands/typecmds.c:410
+#: commands/typecmds.c:412
 #, c-format
 msgid "storage \"%s\" not recognized"
 msgstr "immagazzinamento \"%s\" non riconosciuto"
 
-#: commands/typecmds.c:421
+#: commands/typecmds.c:423
 #, c-format
 msgid "type input function must be specified"
 msgstr "la funzione di input del tipo deve essere specificata"
 
-#: commands/typecmds.c:425
+#: commands/typecmds.c:427
 #, c-format
 msgid "type output function must be specified"
 msgstr "la funzione di output del tipo deve essere specificata"
 
-#: commands/typecmds.c:430
+#: commands/typecmds.c:432
 #, c-format
 msgid "type modifier output function is useless without a type modifier input function"
 msgstr "la funzione di output del modificatore di tipo è inutile senza una funzione di input"
 
-#: commands/typecmds.c:453
+#: commands/typecmds.c:455
 #, c-format
 msgid "changing return type of function %s from \"opaque\" to %s"
 msgstr "modifica del tipo restituito dalla funzione %s da \"opaque\" a %s"
 
-#: commands/typecmds.c:460
+#: commands/typecmds.c:462
 #, c-format
 msgid "type input function %s must return type %s"
 msgstr "la funzione %s di input di tipo deve restituire il tipo %s"
 
-#: commands/typecmds.c:470
+#: commands/typecmds.c:472
 #, c-format
 msgid "changing return type of function %s from \"opaque\" to \"cstring\""
 msgstr "modifica del tipo restituito dalla funzione %s da \"opaque\" a \"cstring\""
 
-#: commands/typecmds.c:477
+#: commands/typecmds.c:479
 #, c-format
 msgid "type output function %s must return type \"cstring\""
 msgstr "la funzione %s di output di tipo deve restituire il tipo \"cstring\""
 
-#: commands/typecmds.c:486
+#: commands/typecmds.c:488
 #, c-format
 msgid "type receive function %s must return type %s"
 msgstr "la funzione receive %s del tipo deve restituire il tipo %s"
 
-#: commands/typecmds.c:495
+#: commands/typecmds.c:497
 #, c-format
 msgid "type send function %s must return type \"bytea\""
 msgstr "la funzione send %s del tipo deve restituire il tipo \"bytea\""
 
-#: commands/typecmds.c:760
+#: commands/typecmds.c:762
 #, c-format
 msgid "\"%s\" is not a valid base type for a domain"
 msgstr "\"%s\" non è un tipo di base valido per un dominio"
 
-#: commands/typecmds.c:846
+#: commands/typecmds.c:848
 #, c-format
 msgid "multiple default expressions"
 msgstr "più di una espressione di default"
 
-#: commands/typecmds.c:908 commands/typecmds.c:917
+#: commands/typecmds.c:910 commands/typecmds.c:919
 #, c-format
 msgid "conflicting NULL/NOT NULL constraints"
 msgstr "vincoli NULL/NOT NULL in conflitto"
 
-#: commands/typecmds.c:933
+#: commands/typecmds.c:935
 #, c-format
 msgid "check constraints for domains cannot be marked NO INHERIT"
 msgstr "i vincoli di controllo per i domini non possono essere NO INHERIT"
 
-#: commands/typecmds.c:942 commands/typecmds.c:2448
+#: commands/typecmds.c:944 commands/typecmds.c:2453
 #, c-format
 msgid "unique constraints not possible for domains"
 msgstr "i vincoli univoci non sono ammessi per i domini"
 
-#: commands/typecmds.c:948 commands/typecmds.c:2454
+#: commands/typecmds.c:950 commands/typecmds.c:2459
 #, c-format
 msgid "primary key constraints not possible for domains"
 msgstr "i vincoli di chiave primaria non sono ammessi per i domini"
 
-#: commands/typecmds.c:954 commands/typecmds.c:2460
+#: commands/typecmds.c:956 commands/typecmds.c:2465
 #, c-format
 msgid "exclusion constraints not possible for domains"
 msgstr "i vincoli di esclusione non sono ammessi per i domini"
 
-#: commands/typecmds.c:960 commands/typecmds.c:2466
+#: commands/typecmds.c:962 commands/typecmds.c:2471
 #, c-format
 msgid "foreign key constraints not possible for domains"
 msgstr "i vincoli di chiave esterna non sono ammessi per i domini"
 
-#: commands/typecmds.c:969 commands/typecmds.c:2475
+#: commands/typecmds.c:971 commands/typecmds.c:2480
 #, c-format
 msgid "specifying constraint deferrability not supported for domains"
 msgstr "specificare la deferibilità dei vincoli non è ammesso per i domini"
 
-#: commands/typecmds.c:1241 utils/cache/typcache.c:1071
+#: commands/typecmds.c:1243 utils/cache/typcache.c:1071
 #, c-format
 msgid "%s is not an enum"
 msgstr "%s non è una enumerazione"
 
-#: commands/typecmds.c:1377
+#: commands/typecmds.c:1379
 #, c-format
 msgid "type attribute \"subtype\" is required"
 msgstr "l'attributo \"subtype\" del tipo è richiesto"
 
-#: commands/typecmds.c:1382
+#: commands/typecmds.c:1384
 #, c-format
 msgid "range subtype cannot be %s"
 msgstr "il sottotipo dell'intervallo non può essere %s"
 
-#: commands/typecmds.c:1401
+#: commands/typecmds.c:1403
 #, c-format
 msgid "range collation specified but subtype does not support collation"
 msgstr "è stato specificato un ordinamento per gli intervalli ma il sottotipo non supporta ordinamenti"
 
-#: commands/typecmds.c:1637
+#: commands/typecmds.c:1639
 #, c-format
 msgid "changing argument type of function %s from \"opaque\" to \"cstring\""
 msgstr "modifica del tipo di argomento della funzione %s da \"opaque\" a \"cstring\""
 
-#: commands/typecmds.c:1688
+#: commands/typecmds.c:1690
 #, c-format
 msgid "changing argument type of function %s from \"opaque\" to %s"
 msgstr "modifica del tipo di argomento della funzione %s da \"opaque\" a %s"
 
-#: commands/typecmds.c:1787
+#: commands/typecmds.c:1789
 #, c-format
 msgid "typmod_in function %s must return type \"integer\""
 msgstr "la funzione typmod_in %s deve restituire il tipo \"integer\""
 
-#: commands/typecmds.c:1814
+#: commands/typecmds.c:1816
 #, c-format
 msgid "typmod_out function %s must return type \"cstring\""
 msgstr "la funzione typmod_out %s deve restituire il tipo \"cstring\""
 
-#: commands/typecmds.c:1841
+#: commands/typecmds.c:1843
 #, c-format
 msgid "type analyze function %s must return type \"boolean\""
 msgstr "la funzione analyze %s del tipo deve restituire il tipo \"boolean\""
 
-#: commands/typecmds.c:1887
+#: commands/typecmds.c:1889
 #, c-format
 msgid "You must specify an operator class for the range type or define a default operator class for the subtype."
 msgstr "Occorre specificare una classe di operatori per l'intervallo o definire una classe di operatori predefinita per il sottotipo."
 
-#: commands/typecmds.c:1918
+#: commands/typecmds.c:1920
 #, c-format
 msgid "range canonical function %s must return range type"
 msgstr "la funzione canonica %s dell'intervallo deve restituire un intervallo"
 
-#: commands/typecmds.c:1924
+#: commands/typecmds.c:1926
 #, c-format
 msgid "range canonical function %s must be immutable"
 msgstr "la funzione canonica %s dell'intervallo deve essere immutabile"
 
-#: commands/typecmds.c:1960
+#: commands/typecmds.c:1962
 #, c-format
 msgid "range subtype diff function %s must return type double precision"
 msgstr "la funzione di differenza sottotipo %s deve restituire il tipo doppia precisione"
 
-#: commands/typecmds.c:1966
+#: commands/typecmds.c:1968
 #, c-format
 msgid "range subtype diff function %s must be immutable"
 msgstr "la funzione di differenza sottotipo %s deve essere immutabile"
 
-#: commands/typecmds.c:2283
+#: commands/typecmds.c:2287
 #, c-format
 msgid "column \"%s\" of table \"%s\" contains null values"
 msgstr "la colonna \"%s\" della tabella \"%s\" contiene valori null"
 
-#: commands/typecmds.c:2391 commands/typecmds.c:2569
+#: commands/typecmds.c:2396 commands/typecmds.c:2574
 #, c-format
 msgid "constraint \"%s\" of domain \"%s\" does not exist"
 msgstr "il vincolo \"%s\" del dominio \"%s\" non esiste"
 
-#: commands/typecmds.c:2395
+#: commands/typecmds.c:2400
 #, c-format
 msgid "constraint \"%s\" of domain \"%s\" does not exist, skipping"
 msgstr "il vincolo \"%s\" del dominio \"%s\" non esiste, saltato"
 
-#: commands/typecmds.c:2575
+#: commands/typecmds.c:2580
 #, c-format
 msgid "constraint \"%s\" of domain \"%s\" is not a check constraint"
 msgstr "il vincolo \"%s\" del dominio \"%s\" non è un vincolo di controllo"
 
-#: commands/typecmds.c:2677
+#: commands/typecmds.c:2684
 #, c-format
 msgid "column \"%s\" of table \"%s\" contains values that violate the new constraint"
 msgstr "la colonna \"%s\" della tabella \"%s\" contiene valori che violano il nuovo vincolo"
 
-#: commands/typecmds.c:2889 commands/typecmds.c:3259 commands/typecmds.c:3417
+#: commands/typecmds.c:2897 commands/typecmds.c:3267 commands/typecmds.c:3425
 #, c-format
 msgid "%s is not a domain"
 msgstr "%s non è un dominio"
 
-#: commands/typecmds.c:2922
+#: commands/typecmds.c:2930
 #, c-format
 msgid "constraint \"%s\" for domain \"%s\" already exists"
 msgstr "il vincolo \"%s\" del dominio \"%s\" esiste già"
 
-#: commands/typecmds.c:2972
+#: commands/typecmds.c:2980
 #, c-format
 msgid "cannot use table references in domain check constraint"
 msgstr "non è possibile usare riferimenti a tabelle nel vincolo di controllo del dominio"
 
-#: commands/typecmds.c:3191 commands/typecmds.c:3271 commands/typecmds.c:3525
+#: commands/typecmds.c:3199 commands/typecmds.c:3279 commands/typecmds.c:3533
 #, c-format
 msgid "%s is a table's row type"
 msgstr "%s è il tipo della riga di una tabella"
 
-#: commands/typecmds.c:3193 commands/typecmds.c:3273 commands/typecmds.c:3527
+#: commands/typecmds.c:3201 commands/typecmds.c:3281 commands/typecmds.c:3535
 #, c-format
 msgid "Use ALTER TABLE instead."
 msgstr "Usa ALTER TABLE invece."
 
-#: commands/typecmds.c:3200 commands/typecmds.c:3280 commands/typecmds.c:3444
+#: commands/typecmds.c:3208 commands/typecmds.c:3288 commands/typecmds.c:3452
 #, c-format
 msgid "cannot alter array type %s"
 msgstr "non è possibile modificare il tipo di array %s"
 
-#: commands/typecmds.c:3202 commands/typecmds.c:3282 commands/typecmds.c:3446
+#: commands/typecmds.c:3210 commands/typecmds.c:3290 commands/typecmds.c:3454
 #, c-format
 msgid "You can alter type %s, which will alter the array type as well."
 msgstr "puoi modificare il tipo %s, il che modificherà il tipo dell'array come conseguenza."
 
-#: commands/typecmds.c:3511
+#: commands/typecmds.c:3519
 #, c-format
 msgid "type \"%s\" already exists in schema \"%s\""
 msgstr "il tipo \"%s\" esiste già nello schema \"%s\""
@@ -7646,14 +8002,14 @@ msgid "role \"%s\" already exists"
 msgstr "il ruolo \"%s\" esiste già"
 
 #: commands/user.c:618 commands/user.c:827 commands/user.c:933
-#: commands/user.c:1088 commands/variable.c:858 commands/variable.c:930
-#: utils/adt/acl.c:5090 utils/init/miscinit.c:433
+#: commands/user.c:1088 commands/variable.c:797 commands/variable.c:869
+#: utils/adt/acl.c:5121 utils/init/miscinit.c:362
 #, c-format
 msgid "role \"%s\" does not exist"
 msgstr "il ruolo \"%s\" non esiste"
 
 #: commands/user.c:631 commands/user.c:846 commands/user.c:1357
-#: commands/user.c:1494
+#: commands/user.c:1503
 #, c-format
 msgid "must be superuser to alter superusers"
 msgstr "solo i superutenti possono modificare superutenti"
@@ -7743,109 +8099,119 @@ msgstr "permesso di eliminare gli oggetti negato"
 msgid "permission denied to reassign objects"
 msgstr "permesso di riassegnare gli oggetti negato"
 
-#: commands/user.c:1365 commands/user.c:1502
+#: commands/user.c:1365 commands/user.c:1511
 #, c-format
 msgid "must have admin option on role \"%s\""
 msgstr "occorre avere l'opzione admin sul ruolo \"%s\""
 
-#: commands/user.c:1373
+#: commands/user.c:1382
 #, c-format
 msgid "must be superuser to set grantor"
 msgstr "solo i superutenti possono impostare chi ha concesso il privilegio"
 
-#: commands/user.c:1398
+#: commands/user.c:1407
 #, c-format
 msgid "role \"%s\" is a member of role \"%s\""
 msgstr "il ruolo \"%s\" è membro del ruolo \"%s\""
 
-#: commands/user.c:1413
+#: commands/user.c:1422
 #, c-format
 msgid "role \"%s\" is already a member of role \"%s\""
 msgstr "il ruolo \"%s\" è già membro del ruolo \"%s\""
 
-#: commands/user.c:1524
+#: commands/user.c:1533
 #, c-format
 msgid "role \"%s\" is not a member of role \"%s\""
 msgstr "il ruolo \"%s\" non è membro del ruolo \"%s\""
 
-#: commands/vacuum.c:457
+#: commands/vacuum.c:466
 #, c-format
 msgid "oldest xmin is far in the past"
 msgstr "il più vecchio xmin è molto lontano nel tempo"
 
-#: commands/vacuum.c:458
+#: commands/vacuum.c:467
 #, c-format
 msgid "Close open transactions soon to avoid wraparound problems."
 msgstr "Chiudi presto le transazioni per evitare problemi di wraparound."
 
-#: commands/vacuum.c:920
+#: commands/vacuum.c:499
+#, c-format
+msgid "oldest multixact is far in the past"
+msgstr "il multixact più vecchio è remoto"
+
+#: commands/vacuum.c:500
+#, c-format
+msgid "Close open transactions with multixacts soon to avoid wraparound problems."
+msgstr "Chiudi presto le transazioni con multixact per evitare problemi di wraparound."
+
+#: commands/vacuum.c:1044
 #, c-format
 msgid "some databases have not been vacuumed in over 2 billion transactions"
 msgstr "alcuni database non sono stati ripuliti per più di 2 miliardi di transazioni"
 
-#: commands/vacuum.c:921
+#: commands/vacuum.c:1045
 #, c-format
 msgid "You might have already suffered transaction-wraparound data loss."
 msgstr "Potresti aver già subito perdita di dati dovuta al wraparound delle transazioni."
 
-#: commands/vacuum.c:1032
+#: commands/vacuum.c:1162
 #, c-format
 msgid "skipping vacuum of \"%s\" --- lock not available"
 msgstr "pulizia di \"%s\" saltata --- lock non disponibile"
 
-#: commands/vacuum.c:1058
+#: commands/vacuum.c:1188
 #, c-format
 msgid "skipping \"%s\" --- only superuser can vacuum it"
 msgstr "\"%s\" saltato --- solo i superutenti possono pulirla"
 
-#: commands/vacuum.c:1062
+#: commands/vacuum.c:1192
 #, c-format
 msgid "skipping \"%s\" --- only superuser or database owner can vacuum it"
 msgstr "\"%s\" saltato --- solo i superutenti o il proprietario del database possono pulirla"
 
-#: commands/vacuum.c:1066
+#: commands/vacuum.c:1196
 #, c-format
 msgid "skipping \"%s\" --- only table or database owner can vacuum it"
 msgstr "\"%s\" saltato --- solo il proprietario del database o della tabella possono pulirla"
 
-#: commands/vacuum.c:1084
+#: commands/vacuum.c:1214
 #, c-format
 msgid "skipping \"%s\" --- cannot vacuum non-tables or special system tables"
 msgstr "\"%s\" saltato --- non è possibile ripulire non-tabelle o tabelle speciali di sistema"
 
-#: commands/vacuumlazy.c:335
+#: commands/vacuumlazy.c:345
 #, c-format
 msgid ""
 "automatic vacuum of table \"%s.%s.%s\": index scans: %d\n"
 "pages: %d removed, %d remain\n"
-"tuples: %.0f removed, %.0f remain\n"
+"tuples: %.0f removed, %.0f remain, %.0f are dead but not yet removable\n"
 "buffer usage: %d hits, %d misses, %d dirtied\n"
 "avg read rate: %.3f MB/s, avg write rate: %.3f MB/s\n"
 "system usage: %s"
 msgstr ""
 "vacuum automatico della tabella \"%s.%s.%s\": scansioni di indici: %d\n"
-"pagine: %d create, %d restanti\n"
-"tuple: %.0f rimosse, %.0f restanti\n"
+"pagine: %d rimosse, %d restanti\n"
+"tuple: %.0f rimosse, %.0f restanti, %.0f sono morte ma non ancora removibili\n"
 "uso dei buffer: %d colpiti, %d mancati, %d sporcati\n"
 "velocità di lettura media: %.3f MB/s, velocità di scrittura media: %.3f MB/s\n"
 "utilizzo di sistema: %s"
 
-#: commands/vacuumlazy.c:668
+#: commands/vacuumlazy.c:679
 #, c-format
 msgid "relation \"%s\" page %u is uninitialized --- fixing"
 msgstr "la relazione \"%s\" pagina %u non è inizializzata --- in correzione"
 
-#: commands/vacuumlazy.c:1082
+#: commands/vacuumlazy.c:1091
 #, c-format
 msgid "\"%s\": removed %.0f row versions in %u pages"
 msgstr "\"%s\": %.0f versioni di riga rimosse in %u pagine"
 
-#: commands/vacuumlazy.c:1087
+#: commands/vacuumlazy.c:1096
 #, c-format
 msgid "\"%s\": found %.0f removable, %.0f nonremovable row versions in %u out of %u pages"
 msgstr "\"%s\": trovate %.0f versioni di riga removibili, %.0f non removibili in %u pagine su %u"
 
-#: commands/vacuumlazy.c:1091
+#: commands/vacuumlazy.c:1100
 #, c-format
 msgid ""
 "%.0f dead row versions cannot be removed yet.\n"
@@ -7858,28 +8224,28 @@ msgstr ""
 "%u pagine sono completamente vuote.\n"
 "%s."
 
-#: commands/vacuumlazy.c:1162
+#: commands/vacuumlazy.c:1171
 #, c-format
 msgid "\"%s\": removed %d row versions in %d pages"
 msgstr "\"%s\": %d versioni di riga rimosse in %d pagine"
 
-#: commands/vacuumlazy.c:1165 commands/vacuumlazy.c:1318
-#: commands/vacuumlazy.c:1489
+#: commands/vacuumlazy.c:1174 commands/vacuumlazy.c:1341
+#: commands/vacuumlazy.c:1512
 #, c-format
 msgid "%s."
 msgstr "%s."
 
-#: commands/vacuumlazy.c:1315
+#: commands/vacuumlazy.c:1338
 #, c-format
 msgid "scanned index \"%s\" to remove %d row versions"
 msgstr "effettuata la scansione dell'indice \"%s\" per rimuovere %d versioni di riga"
 
-#: commands/vacuumlazy.c:1360
+#: commands/vacuumlazy.c:1383
 #, c-format
 msgid "index \"%s\" now contains %.0f row versions in %u pages"
 msgstr "l'indice \"%s\" ora contiene %.0f versioni di riga in %u pagine"
 
-#: commands/vacuumlazy.c:1364
+#: commands/vacuumlazy.c:1387
 #, c-format
 msgid ""
 "%.0f index row versions were removed.\n"
@@ -7890,22 +8256,22 @@ msgstr ""
 "%u pagine dell'indice sono state cancellate, %u sono attualmente riusabili.\n"
 "%s."
 
-#: commands/vacuumlazy.c:1421
+#: commands/vacuumlazy.c:1444
 #, c-format
 msgid "\"%s\": stopping truncate due to conflicting lock request"
 msgstr "\"%s\": truncate interrotto a causa di una richiesta di lock in conflitto"
 
-#: commands/vacuumlazy.c:1486
+#: commands/vacuumlazy.c:1509
 #, c-format
 msgid "\"%s\": truncated %u to %u pages"
 msgstr "\"%s\": %u pagine ridotte a %u"
 
-#: commands/vacuumlazy.c:1542
+#: commands/vacuumlazy.c:1565
 #, c-format
 msgid "\"%s\": suspending truncate due to conflicting lock request"
 msgstr "\"%s\": annullamento del troncamento a causa di richieste di lock in conflitto"
 
-#: commands/variable.c:162 utils/misc/guc.c:8359
+#: commands/variable.c:162 utils/misc/guc.c:9047
 #, c-format
 msgid "Unrecognized key word: \"%s\"."
 msgstr "Parola chiave non riconosciuta: \"%s\"."
@@ -7915,132 +8281,147 @@ msgstr "Parola chiave non riconosciuta: \"%s\"."
 msgid "Conflicting \"datestyle\" specifications."
 msgstr "Specifiche di \"datestyle\" in conflitto."
 
-#: commands/variable.c:313
+#: commands/variable.c:296
 #, c-format
 msgid "Cannot specify months in time zone interval."
 msgstr "Non è possibile specificare i mesi nell'intervallo del fuso orario."
 
-#: commands/variable.c:319
+#: commands/variable.c:302
 #, c-format
 msgid "Cannot specify days in time zone interval."
 msgstr "Non è possibile specificare i giorni nell'intervallo del fuso orario."
 
-#: commands/variable.c:365 commands/variable.c:488
+#: commands/variable.c:344 commands/variable.c:426
 #, c-format
 msgid "time zone \"%s\" appears to use leap seconds"
 msgstr "sembra che il fuso orario \"%s\" utilizzi il secondo intercalare"
 
-#: commands/variable.c:367 commands/variable.c:490
+#: commands/variable.c:346 commands/variable.c:428
 #, c-format
 msgid "PostgreSQL does not support leap seconds."
 msgstr "PostgreSQL non supporta il secondo intercalare."
 
-#: commands/variable.c:554
+#: commands/variable.c:355
+#, c-format
+msgid "UTC timezone offset is out of range."
+msgstr "L'offset del fuso orario da UTC è fuori dall'intervallo massimo."
+
+#: commands/variable.c:493
 #, c-format
 msgid "cannot set transaction read-write mode inside a read-only transaction"
 msgstr "non è possibile impostare una transazione in lettura/scrittura dentro una in sola lettura"
 
-#: commands/variable.c:561
+#: commands/variable.c:500
 #, c-format
 msgid "transaction read-write mode must be set before any query"
 msgstr "la modalità read-write dev'essere impostata prima di qualsiasi query"
 
-#: commands/variable.c:568
+#: commands/variable.c:507
 #, c-format
 msgid "cannot set transaction read-write mode during recovery"
 msgstr "non è possibile impostare la transazione in lettura/scrittura durante il ripristino"
 
-#: commands/variable.c:617
+#: commands/variable.c:556
 #, c-format
 msgid "SET TRANSACTION ISOLATION LEVEL must be called before any query"
 msgstr "SET TRANSACTION ISOLATION LEVEL dev'essere invocato prima di qualsiasi query"
 
-#: commands/variable.c:624
+#: commands/variable.c:563
 #, c-format
 msgid "SET TRANSACTION ISOLATION LEVEL must not be called in a subtransaction"
 msgstr "SET TRANSACTION ISOLATION LEVEL non può essere invocato in una sotto-transazione"
 
-#: commands/variable.c:631 storage/lmgr/predicate.c:1585
+#: commands/variable.c:570 storage/lmgr/predicate.c:1588
 #, c-format
 msgid "cannot use serializable mode in a hot standby"
 msgstr "non è possibile usare la modalità SERIALIZABLE in un hot standby"
 
-#: commands/variable.c:632
+#: commands/variable.c:571
 #, c-format
 msgid "You can use REPEATABLE READ instead."
 msgstr "Puoi utilizzare REPEATABLE READ invece."
 
-#: commands/variable.c:680
+#: commands/variable.c:619
 #, c-format
 msgid "SET TRANSACTION [NOT] DEFERRABLE cannot be called within a subtransaction"
 msgstr "SET TRANSACTION [NOT] DEFERRABLE non può essere invocato in una sotto-transazione"
 
-#: commands/variable.c:686
+#: commands/variable.c:625
 #, c-format
 msgid "SET TRANSACTION [NOT] DEFERRABLE must be called before any query"
 msgstr "SET TRANSACTION [NOT] DEFERRABLE dev'essere invocato prima di qualsiasi query"
 
-#: commands/variable.c:768
+#: commands/variable.c:707
 #, c-format
 msgid "Conversion between %s and %s is not supported."
 msgstr "La conversione fra %s e %s non è supportata."
 
-#: commands/variable.c:775
+#: commands/variable.c:714
 #, c-format
 msgid "Cannot change \"client_encoding\" now."
 msgstr "Non è possibile cambiare \"client_encoding\" ora."
 
-#: commands/variable.c:945
+#: commands/variable.c:884
 #, c-format
 msgid "permission denied to set role \"%s\""
 msgstr "permesso di impostare il ruolo \"%s\" negato"
 
-#: commands/view.c:94
+#: commands/view.c:54
+#, c-format
+msgid "invalid value for \"check_option\" option"
+msgstr "valore non valido per l'opzione \"check_option\""
+
+#: commands/view.c:55
+#, c-format
+msgid "Valid values are \"local\", and \"cascaded\"."
+msgstr "Valori validi sono \"local\" e \"cascaded\"."
+
+#: commands/view.c:114
 #, c-format
 msgid "could not determine which collation to use for view column \"%s\""
 msgstr "non è stato possibile determinare quale ordinamento usare per la colonna \"%s\""
 
-#: commands/view.c:109
+#: commands/view.c:129
 #, c-format
 msgid "view must have at least one column"
 msgstr "la vista deve avere almeno una colonna"
 
-#: commands/view.c:240 commands/view.c:252
+#: commands/view.c:260 commands/view.c:272
 #, c-format
 msgid "cannot drop columns from view"
 msgstr "non è possibile eliminare colonne da una vista"
 
-#: commands/view.c:257
+#: commands/view.c:277
 #, c-format
 msgid "cannot change name of view column \"%s\" to \"%s\""
 msgstr "non è possibile cambiare nome della colonna di vista \"%s\" in \"%s\""
 
-#: commands/view.c:265
+#: commands/view.c:285
 #, c-format
 msgid "cannot change data type of view column \"%s\" from %s to %s"
 msgstr "non è possibile cambiare tipo di dato della colonna di vista \"%s\" da %s a %s"
 
-#: commands/view.c:398
+#: commands/view.c:420
 #, c-format
 msgid "views must not contain SELECT INTO"
 msgstr "le viste non possono contenere SELECT INTO"
 
-#: commands/view.c:411
+#: commands/view.c:433
 #, c-format
 msgid "views must not contain data-modifying statements in WITH"
 msgstr "una vista non può contenere istruzioni di modifica dei dati in un WITH"
 
-#: commands/view.c:439
+#: commands/view.c:504
 #, c-format
 msgid "CREATE VIEW specifies more column names than columns"
 msgstr "CREATE VIEW specifica più nomi di colonne che colonne"
 
-#: commands/view.c:447
+#: commands/view.c:512
 #, c-format
 msgid "views cannot be unlogged because they do not have storage"
 msgstr "le viste non possono essere non loggate perché non sono immagazzinate"
 
-#: commands/view.c:461
+#: commands/view.c:526
 #, c-format
 msgid "view \"%s\" will be a temporary view"
 msgstr "la vista \"%s\" sarà una vista temporanea"
@@ -8075,145 +8456,150 @@ msgstr "il cursore \"%s\" non è posizionato su una riga"
 msgid "cursor \"%s\" is not a simply updatable scan of table \"%s\""
 msgstr "il cursore \"%s\" non è una scansione semplice aggiornabile della tabella \"%s\""
 
-#: executor/execCurrent.c:231 executor/execQual.c:1138
+#: executor/execCurrent.c:231 executor/execQual.c:1129
 #, c-format
 msgid "type of parameter %d (%s) does not match that when preparing the plan (%s)"
 msgstr "il tipo del parametro %d (%s) non combacia con quello usato alla preparazione del piano (%s)"
 
-#: executor/execCurrent.c:243 executor/execQual.c:1150
+#: executor/execCurrent.c:243 executor/execQual.c:1141
 #, c-format
 msgid "no value found for parameter %d"
 msgstr "nessun valore trovato per il parametro %d"
 
-#: executor/execMain.c:954
+#: executor/execMain.c:955
 #, c-format
 msgid "cannot change sequence \"%s\""
 msgstr "non è possibile modificare la sequenza \"%s\""
 
-#: executor/execMain.c:960
+#: executor/execMain.c:961
 #, c-format
 msgid "cannot change TOAST relation \"%s\""
 msgstr "non è possibile modificare la relazione TOAST \"%s\""
 
-#: executor/execMain.c:978 rewrite/rewriteHandler.c:2318
+#: executor/execMain.c:979 rewrite/rewriteHandler.c:2512
 #, c-format
 msgid "cannot insert into view \"%s\""
 msgstr "non è possibile inserire nella vista \"%s\""
 
-#: executor/execMain.c:980 rewrite/rewriteHandler.c:2321
+#: executor/execMain.c:981 rewrite/rewriteHandler.c:2515
 #, c-format
 msgid "To enable inserting into the view, provide an INSTEAD OF INSERT trigger or an unconditional ON INSERT DO INSTEAD rule."
 msgstr "Per consentire inserimenti nella vista occorre fornire un trigger INSTEAD OF INSERT oppure una regola ON INSERT DO INSTEAD senza condizioni."
 
-#: executor/execMain.c:986 rewrite/rewriteHandler.c:2326
+#: executor/execMain.c:987 rewrite/rewriteHandler.c:2520
 #, c-format
 msgid "cannot update view \"%s\""
 msgstr "non è possibile modificare la vista \"%s\""
 
-#: executor/execMain.c:988 rewrite/rewriteHandler.c:2329
+#: executor/execMain.c:989 rewrite/rewriteHandler.c:2523
 #, c-format
 msgid "To enable updating the view, provide an INSTEAD OF UPDATE trigger or an unconditional ON UPDATE DO INSTEAD rule."
 msgstr "Per consentire modifiche alla vista occorre fornire un trigger INSTEAD OF UPDATE oppure una regola ON UPDATE DO INSTEAD senza condizioni."
 
-#: executor/execMain.c:994 rewrite/rewriteHandler.c:2334
+#: executor/execMain.c:995 rewrite/rewriteHandler.c:2528
 #, c-format
 msgid "cannot delete from view \"%s\""
 msgstr "non è possibile cancellare dalla vista \"%s\""
 
-#: executor/execMain.c:996 rewrite/rewriteHandler.c:2337
+#: executor/execMain.c:997 rewrite/rewriteHandler.c:2531
 #, c-format
 msgid "To enable deleting from the view, provide an INSTEAD OF DELETE trigger or an unconditional ON DELETE DO INSTEAD rule."
 msgstr "Per consentire eliminazioni dalla vista occorre fornire un trigger INSTEAD OF DELETE oppure una regola ON DELETE DO INSTEAD senza condizioni."
 
-#: executor/execMain.c:1006
+#: executor/execMain.c:1008
 #, c-format
 msgid "cannot change materialized view \"%s\""
 msgstr "non è possibile modificare la vista materializzata \"%s\""
 
-#: executor/execMain.c:1018
+#: executor/execMain.c:1020
 #, c-format
 msgid "cannot insert into foreign table \"%s\""
 msgstr "non è possibile inserire nella tabella esterna \"%s\""
 
-#: executor/execMain.c:1024
+#: executor/execMain.c:1026
 #, c-format
 msgid "foreign table \"%s\" does not allow inserts"
 msgstr "la tabella esterna \"%s\" non consente inserimenti"
 
-#: executor/execMain.c:1031
+#: executor/execMain.c:1033
 #, c-format
 msgid "cannot update foreign table \"%s\""
 msgstr "non è possibile modificare la tabella esterna \"%s\""
 
-#: executor/execMain.c:1037
+#: executor/execMain.c:1039
 #, c-format
 msgid "foreign table \"%s\" does not allow updates"
 msgstr "la tabella esterna \"%s\" non consente modifiche"
 
-#: executor/execMain.c:1044
+#: executor/execMain.c:1046
 #, c-format
 msgid "cannot delete from foreign table \"%s\""
 msgstr "non è possibile eliminare dalla tabella esterna \"%s\""
 
-#: executor/execMain.c:1050
+#: executor/execMain.c:1052
 #, c-format
 msgid "foreign table \"%s\" does not allow deletes"
 msgstr "la tabella esterna \"%s\" non consente cancellazioni"
 
-#: executor/execMain.c:1061
+#: executor/execMain.c:1063
 #, c-format
 msgid "cannot change relation \"%s\""
 msgstr "non è possibile modificare la relazione \"%s\""
 
-#: executor/execMain.c:1085
+#: executor/execMain.c:1087
 #, c-format
 msgid "cannot lock rows in sequence \"%s\""
 msgstr "non è possibile bloccare righe nella sequenza \"%s\""
 
-#: executor/execMain.c:1092
+#: executor/execMain.c:1094
 #, c-format
 msgid "cannot lock rows in TOAST relation \"%s\""
 msgstr "non è possibile bloccare righe nella relazione TOAST \"%s\""
 
-#: executor/execMain.c:1099
+#: executor/execMain.c:1101
 #, c-format
 msgid "cannot lock rows in view \"%s\""
 msgstr "non è possibile bloccare righe vista \"%s\""
 
-#: executor/execMain.c:1106
+#: executor/execMain.c:1109
 #, c-format
 msgid "cannot lock rows in materialized view \"%s\""
 msgstr "non è possibile bloccare righe nella vista materializzata \"%s\""
 
-#: executor/execMain.c:1113
+#: executor/execMain.c:1116
 #, c-format
 msgid "cannot lock rows in foreign table \"%s\""
 msgstr "non è possibile bloccare righe nella tabella esterna \"%s\""
 
-#: executor/execMain.c:1119
+#: executor/execMain.c:1122
 #, c-format
 msgid "cannot lock rows in relation \"%s\""
 msgstr "non è possibile bloccare righe nella relazione \"%s\""
 
-#: executor/execMain.c:1604
+#: executor/execMain.c:1607
 #, c-format
 msgid "null value in column \"%s\" violates not-null constraint"
 msgstr "valori null nella colonna \"%s\" violano il vincolo non-null"
 
-#: executor/execMain.c:1606 executor/execMain.c:1623
+#: executor/execMain.c:1609 executor/execMain.c:1626 executor/execMain.c:1673
 #, c-format
 msgid "Failing row contains %s."
 msgstr "La riga in errore contiene %s."
 
-#: executor/execMain.c:1621
+#: executor/execMain.c:1624
 #, c-format
 msgid "new row for relation \"%s\" violates check constraint \"%s\""
 msgstr "la nuova riga per la relazione \"%s\" viola il vincolo di controllo \"%s\""
 
-#: executor/execQual.c:305 executor/execQual.c:333 executor/execQual.c:3122
+#: executor/execMain.c:1671
+#, c-format
+msgid "new row violates WITH CHECK OPTION for view \"%s\""
+msgstr "la nuova riga viola WITH CHECK OPTION per la vista \"%s\""
+
+#: executor/execQual.c:305 executor/execQual.c:333 executor/execQual.c:3120
 #: utils/adt/array_userfuncs.c:430 utils/adt/arrayfuncs.c:233
 #: utils/adt/arrayfuncs.c:512 utils/adt/arrayfuncs.c:1247
-#: utils/adt/arrayfuncs.c:2920 utils/adt/arrayfuncs.c:4945
+#: utils/adt/arrayfuncs.c:2933 utils/adt/arrayfuncs.c:4958
 #, c-format
 msgid "number of array dimensions (%d) exceeds the maximum allowed (%d)"
 msgstr "il numero di dimensioni dell'array (%d) eccede il massimo consentito (%d)"
@@ -8223,164 +8609,162 @@ msgstr "il numero di dimensioni dell'array (%d) eccede il massimo consentito (%d
 msgid "array subscript in assignment must not be null"
 msgstr "l'indice di un array nell'assegnamento non può essere nullo"
 
-#: executor/execQual.c:641 executor/execQual.c:4043
+#: executor/execQual.c:641 executor/execQual.c:4041
 #, c-format
 msgid "attribute %d has wrong type"
 msgstr "l'attributo %d è di tipo errato"
 
-#: executor/execQual.c:642 executor/execQual.c:4044
+#: executor/execQual.c:642 executor/execQual.c:4042
 #, c-format
 msgid "Table has type %s, but query expects %s."
 msgstr "La tabella ha il tipo %s, ma la query prevede %s."
 
-#: executor/execQual.c:845 executor/execQual.c:862 executor/execQual.c:1026
+#: executor/execQual.c:835 executor/execQual.c:852 executor/execQual.c:1017
 #: executor/nodeModifyTable.c:85 executor/nodeModifyTable.c:95
 #: executor/nodeModifyTable.c:112 executor/nodeModifyTable.c:120
 #, c-format
 msgid "table row type and query-specified row type do not match"
 msgstr "il tipo della riga della tabella e il tipo di riga specificato dalla query non corrispondono"
 
-#: executor/execQual.c:846
+#: executor/execQual.c:836
 #, c-format
 msgid "Table row contains %d attribute, but query expects %d."
 msgid_plural "Table row contains %d attributes, but query expects %d."
 msgstr[0] "La riga della tabella contiene %d attributo, ma la query ne prevede %d."
 msgstr[1] "La riga della tabella contiene %d attributi, ma la query ne prevede %d."
 
-#: executor/execQual.c:863 executor/nodeModifyTable.c:96
+#: executor/execQual.c:853 executor/nodeModifyTable.c:96
 #, c-format
 msgid "Table has type %s at ordinal position %d, but query expects %s."
 msgstr "La tabella ha il tipo %s in posizione %d, ma la query prevede %s."
 
-#: executor/execQual.c:1027 executor/execQual.c:1625
+#: executor/execQual.c:1018 executor/execQual.c:1616
 #, c-format
 msgid "Physical storage mismatch on dropped attribute at ordinal position %d."
 msgstr "Il tipo di immagazzinamento fisico non corrisponde per l'attributo eliminato in posizione %d."
 
-#: executor/execQual.c:1304 parser/parse_func.c:93 parser/parse_func.c:325
-#: parser/parse_func.c:634
+#: executor/execQual.c:1295 parser/parse_func.c:114 parser/parse_func.c:535
+#: parser/parse_func.c:887
 #, c-format
 msgid "cannot pass more than %d argument to a function"
 msgid_plural "cannot pass more than %d arguments to a function"
 msgstr[0] "non è possibile passare più di %d argomento ad una funzione"
 msgstr[1] "non è possibile passare più di %d argomenti ad una funzione"
 
-#: executor/execQual.c:1493
+#: executor/execQual.c:1484
 #, c-format
 msgid "functions and operators can take at most one set argument"
 msgstr "le funzioni e operatori possono accettare al più un insieme di argomenti"
 
-#: executor/execQual.c:1543
+#: executor/execQual.c:1534
 #, c-format
 msgid "function returning setof record called in context that cannot accept type record"
 msgstr "funzione che restituisce un insieme di record invocata in un contesto che non accetta il tipo record"
 
-#: executor/execQual.c:1598 executor/execQual.c:1614 executor/execQual.c:1624
+#: executor/execQual.c:1589 executor/execQual.c:1605 executor/execQual.c:1615
 #, c-format
 msgid "function return row and query-specified return row do not match"
 msgstr "il tipo di riga restituito dalla funzione e il valore specificato dalla query non combaciano"
 
-#: executor/execQual.c:1599
+#: executor/execQual.c:1590
 #, c-format
 msgid "Returned row contains %d attribute, but query expects %d."
 msgid_plural "Returned row contains %d attributes, but query expects %d."
 msgstr[0] "La riga restituita contiene %d attributo, ma la query ne prevede %d."
 msgstr[1] "La riga restituita contiene %d attributi, ma la query ne prevede %d."
 
-#: executor/execQual.c:1615
+#: executor/execQual.c:1606
 #, c-format
 msgid "Returned type %s at ordinal position %d, but query expects %s."
 msgstr "Tipo %s restituito in posizione %d, ma la query prevede %s."
 
-#: executor/execQual.c:1857 executor/execQual.c:2281
+#: executor/execQual.c:1848 executor/execQual.c:2279
 #, c-format
 msgid "table-function protocol for materialize mode was not followed"
 msgstr "il protocollo tabella-funzione del modo di materializzazione non è stato seguito"
 
-#: executor/execQual.c:1877 executor/execQual.c:2288
+#: executor/execQual.c:1868 executor/execQual.c:2286
 #, c-format
 msgid "unrecognized table-function returnMode: %d"
 msgstr "returnMode tabella-funzione sconosciuto: %d"
 
-#: executor/execQual.c:2198
+#: executor/execQual.c:2196
 #, c-format
 msgid "function returning set of rows cannot return null value"
 msgstr "una funzione che restituisce un insieme di righe non può restituire un valore null"
 
-#: executor/execQual.c:2255
+#: executor/execQual.c:2253
 #, c-format
 msgid "rows returned by function are not all of the same row type"
 msgstr "le righe restituite dalla funzione non sono tutte dello stesso tipo"
 
-#: executor/execQual.c:2470
+#: executor/execQual.c:2468
 #, c-format
 msgid "IS DISTINCT FROM does not support set arguments"
 msgstr "IS DISTINCT FROM non supporta argomenti di tipo insieme"
 
-#: executor/execQual.c:2547
+#: executor/execQual.c:2545
 #, c-format
 msgid "op ANY/ALL (array) does not support set arguments"
 msgstr "l'operatore ANY/ALL (array) non supporta argomenti di tipo insieme"
 
-#: executor/execQual.c:3100
+#: executor/execQual.c:3098
 #, c-format
 msgid "cannot merge incompatible arrays"
 msgstr "non è possibile unire array non compatibili"
 
-#: executor/execQual.c:3101
+#: executor/execQual.c:3099
 #, c-format
 msgid "Array with element type %s cannot be included in ARRAY construct with element type %s."
 msgstr "Un array con tipo di elementi %s non può essere incluso nel costrutto ARRAY con elementi di tipo %s."
 
-#: executor/execQual.c:3142 executor/execQual.c:3169
+#: executor/execQual.c:3140 executor/execQual.c:3167
 #: utils/adt/arrayfuncs.c:547
 #, c-format
 msgid "multidimensional arrays must have array expressions with matching dimensions"
 msgstr "gli array multidimensionali devono avere espressioni array di dimensioni corrispondenti"
 
-#: executor/execQual.c:3684
+#: executor/execQual.c:3682
 #, c-format
 msgid "NULLIF does not support set arguments"
 msgstr "NULLIF non supporta argomenti di tipo insieme"
 
-#: executor/execQual.c:3914 utils/adt/domains.c:131
+#: executor/execQual.c:3912 utils/adt/domains.c:131
 #, c-format
 msgid "domain %s does not allow null values"
 msgstr "il DOMAIN %s non consente valori nulli"
 
-#: executor/execQual.c:3944 utils/adt/domains.c:168
+#: executor/execQual.c:3942 utils/adt/domains.c:168
 #, c-format
 msgid "value for domain %s violates check constraint \"%s\""
 msgstr "il valore per il DOMAIN %s viola il vincolo di controllo \"%s\""
 
-#: executor/execQual.c:4302
+#: executor/execQual.c:4300
 #, c-format
 msgid "WHERE CURRENT OF is not supported for this table type"
 msgstr "WHERE CURRENT OF non è supportato per questo tipo di tabella"
 
-#: executor/execQual.c:4444 optimizer/util/clauses.c:573
-#: parser/parse_agg.c:347
+#: executor/execQual.c:4446 parser/parse_agg.c:434 parser/parse_agg.c:464
 #, c-format
 msgid "aggregate function calls cannot be nested"
 msgstr "le chiamate a funzioni di aggregazione non possono essere annidate"
 
-#: executor/execQual.c:4482 optimizer/util/clauses.c:647
-#: parser/parse_agg.c:443
+#: executor/execQual.c:4486 parser/parse_agg.c:565
 #, c-format
 msgid "window function calls cannot be nested"
 msgstr "le chiamate a funzioni finestra non possono essere annidate"
 
-#: executor/execQual.c:4694
+#: executor/execQual.c:4698
 #, c-format
 msgid "target type is not an array"
 msgstr "il tipo di destinazione non è un array"
 
-#: executor/execQual.c:4808
+#: executor/execQual.c:4812
 #, c-format
 msgid "ROW() column has type %s instead of type %s"
 msgstr "la colonna ROW() è di tipo %s invece di %s"
 
-#: executor/execQual.c:4943 utils/adt/arrayfuncs.c:3383
+#: executor/execQual.c:4947 utils/adt/arrayfuncs.c:3396
 #: utils/adt/rowtypes.c:921
 #, c-format
 msgid "could not identify a comparison function for type %s"
@@ -8396,22 +8780,22 @@ msgstr "la vista materializzata \"%s\" non è stata popolata"
 msgid "Use the REFRESH MATERIALIZED VIEW command."
 msgstr "Usa il comando REFRESH MATERIALIZED VIEW."
 
-#: executor/execUtils.c:1323
+#: executor/execUtils.c:1324
 #, c-format
 msgid "could not create exclusion constraint \"%s\""
 msgstr "creazione del vincolo di esclusione \"%s\" fallita"
 
-#: executor/execUtils.c:1325
+#: executor/execUtils.c:1326
 #, c-format
 msgid "Key %s conflicts with key %s."
 msgstr "La chiave %s è in conflitto con la chiave %s."
 
-#: executor/execUtils.c:1332
+#: executor/execUtils.c:1333
 #, c-format
 msgid "conflicting key value violates exclusion constraint \"%s\""
 msgstr "le chiavi in conflitto violano il vincolo di esclusione \"%s\""
 
-#: executor/execUtils.c:1334
+#: executor/execUtils.c:1335
 #, c-format
 msgid "Key %s conflicts with existing key %s."
 msgstr "La chiave %s è in conflitto con la chiave esistente %s."
@@ -8428,7 +8812,7 @@ msgid "%s is not allowed in a SQL function"
 msgstr "%s non è consentito in una funzione SQL"
 
 #. translator: %s is a SQL statement name
-#: executor/functions.c:513 executor/spi.c:1342 executor/spi.c:2126
+#: executor/functions.c:513 executor/spi.c:1343 executor/spi.c:2127
 #, c-format
 msgid "%s is not allowed in a non-volatile function"
 msgstr "%s non è consentito in una funzione non volatile"
@@ -8438,59 +8822,59 @@ msgstr "%s non è consentito in una funzione non volatile"
 msgid "could not determine actual result type for function declared to return type %s"
 msgstr "non è stato possibile determinare il tipo reale restituito dalla funzione dichiarata con tipo restituito %s"
 
-#: executor/functions.c:1403
+#: executor/functions.c:1402
 #, c-format
 msgid "SQL function \"%s\" statement %d"
 msgstr "funzione SQL \"%s\" istruzione %d"
 
-#: executor/functions.c:1429
+#: executor/functions.c:1428
 #, c-format
 msgid "SQL function \"%s\" during startup"
 msgstr "funzione SQL \"%s\" durante l'avvio"
 
-#: executor/functions.c:1588 executor/functions.c:1625
-#: executor/functions.c:1637 executor/functions.c:1750
-#: executor/functions.c:1783 executor/functions.c:1813
+#: executor/functions.c:1587 executor/functions.c:1624
+#: executor/functions.c:1636 executor/functions.c:1749
+#: executor/functions.c:1782 executor/functions.c:1812
 #, c-format
 msgid "return type mismatch in function declared to return %s"
 msgstr "il tipo restituito non combacia nella funzione dichiarata con tipo restituito %s"
 
-#: executor/functions.c:1590
+#: executor/functions.c:1589
 #, c-format
 msgid "Function's final statement must be SELECT or INSERT/UPDATE/DELETE RETURNING."
 msgstr "L'istruzione finale della funzione deve essere SELECT oppure INSERT/UPDATE/DELETE RETURNING."
 
-#: executor/functions.c:1627
+#: executor/functions.c:1626
 #, c-format
 msgid "Final statement must return exactly one column."
 msgstr "L'istruzione finale deve restituire esattamente una colonna."
 
-#: executor/functions.c:1639
+#: executor/functions.c:1638
 #, c-format
 msgid "Actual return type is %s."
 msgstr "Il tipo restituito realmente è %s."
 
-#: executor/functions.c:1752
+#: executor/functions.c:1751
 #, c-format
 msgid "Final statement returns too many columns."
 msgstr "L'istruzione finale restituisce troppe colonne."
 
-#: executor/functions.c:1785
+#: executor/functions.c:1784
 #, c-format
 msgid "Final statement returns %s instead of %s at column %d."
 msgstr "L'istruzione finale restituisce %s invece di %s alla colonna %d."
 
-#: executor/functions.c:1815
+#: executor/functions.c:1814
 #, c-format
 msgid "Final statement returns too few columns."
 msgstr "L'istruzione finale restituisce troppe poche colonne."
 
-#: executor/functions.c:1864
+#: executor/functions.c:1863
 #, c-format
 msgid "return type %s is not supported for SQL functions"
 msgstr "il tipo di risultato %s non è supportato per le funzioni SQL"
 
-#: executor/nodeAgg.c:1739 executor/nodeWindowAgg.c:1856
+#: executor/nodeAgg.c:1865 executor/nodeWindowAgg.c:2285
 #, c-format
 msgid "aggregate %u needs to have compatible input type and transition type"
 msgstr "l'aggregato %u deve avere tipi di input e transizione compatibili"
@@ -8551,22 +8935,27 @@ msgstr "La query ha troppe poche colonne."
 msgid "more than one row returned by a subquery used as an expression"
 msgstr "più di una riga restituita da una sottoquery usata come espressione"
 
-#: executor/nodeWindowAgg.c:1240
+#: executor/nodeWindowAgg.c:353
+#, c-format
+msgid "moving-aggregate transition function must not return NULL"
+msgstr "le funzioni di transizione per aggregati mobili non possono restituire NULL"
+
+#: executor/nodeWindowAgg.c:1609
 #, c-format
 msgid "frame starting offset must not be null"
 msgstr "l'offset di inizio della finestra dev'essere non nullo"
 
-#: executor/nodeWindowAgg.c:1253
+#: executor/nodeWindowAgg.c:1622
 #, c-format
 msgid "frame starting offset must not be negative"
 msgstr "l'offset di inizio della finestra non può essere negativo"
 
-#: executor/nodeWindowAgg.c:1266
+#: executor/nodeWindowAgg.c:1635
 #, c-format
 msgid "frame ending offset must not be null"
 msgstr "l'offset di fine della finestra dev'essere non nullo"
 
-#: executor/nodeWindowAgg.c:1279
+#: executor/nodeWindowAgg.c:1648
 #, c-format
 msgid "frame ending offset must not be negative"
 msgstr "l'offset di fine della finestra non può essere negativo"
@@ -8586,28 +8975,28 @@ msgstr "Verifica che non ci siano chiamate \"SPI_finish\" mancanti."
 msgid "subtransaction left non-empty SPI stack"
 msgstr "la sottotransazione ha lasciato lo stack SPI non vuoto"
 
-#: executor/spi.c:1206
+#: executor/spi.c:1207
 #, c-format
 msgid "cannot open multi-query plan as cursor"
 msgstr "non è possibile aprire un piano multi-query come cursore"
 
 #. translator: %s is name of a SQL command, eg INSERT
-#: executor/spi.c:1211
+#: executor/spi.c:1212
 #, c-format
 msgid "cannot open %s query as cursor"
 msgstr "non è possibile aprire una query %s come cursore"
 
-#: executor/spi.c:1319
+#: executor/spi.c:1320
 #, c-format
 msgid "DECLARE SCROLL CURSOR ... FOR UPDATE/SHARE is not supported"
 msgstr "DECLARE SCROLL CURSOR ... FOR UPDATE/SHARE non è supportato"
 
-#: executor/spi.c:1320 parser/analyze.c:2119
+#: executor/spi.c:1321 parser/analyze.c:2132
 #, c-format
 msgid "Scrollable cursors must be READ ONLY."
 msgstr "Un cursore scorribile dev'essere READ ONLY."
 
-#: executor/spi.c:2416
+#: executor/spi.c:2417
 #, c-format
 msgid "SQL statement \"%s\""
 msgstr "istruzione SQL \"%s\""
@@ -8632,507 +9021,487 @@ msgstr "opzione \"%s\" non valida"
 msgid "Valid options in this context are: %s"
 msgstr "Le opzioni valide in questo contesto sono: %s"
 
-#: lib/stringinfo.c:267
+#: lib/stringinfo.c:259
 #, c-format
 msgid "Cannot enlarge string buffer containing %d bytes by %d more bytes."
 msgstr "Non è possibile aumentare il buffer della stringa contenente %d byte di altri %d byte."
 
-#: libpq/auth.c:257
+#: libpq/auth.c:235
 #, c-format
 msgid "authentication failed for user \"%s\": host rejected"
 msgstr "autenticazione fallita per l'utente \"%s\": host rifiutato"
 
-#: libpq/auth.c:260
-#, c-format
-msgid "Kerberos 5 authentication failed for user \"%s\""
-msgstr "autenticazione Kerberos 5 fallita per l'utente \"%s\""
-
-#: libpq/auth.c:263
+#: libpq/auth.c:238
 #, c-format
 msgid "\"trust\" authentication failed for user \"%s\""
 msgstr "autenticazione \"trust\" fallita per l'utente \"%s\""
 
-#: libpq/auth.c:266
+#: libpq/auth.c:241
 #, c-format
 msgid "Ident authentication failed for user \"%s\""
 msgstr "autenticazione Ident fallita per l'utente \"%s\""
 
-#: libpq/auth.c:269
+#: libpq/auth.c:244
 #, c-format
 msgid "Peer authentication failed for user \"%s\""
 msgstr "autenticazione Peer fallita per l'utente \"%s\""
 
-#: libpq/auth.c:273
+#: libpq/auth.c:248
 #, c-format
 msgid "password authentication failed for user \"%s\""
 msgstr "autenticazione con password fallita per l'utente \"%s\""
 
-#: libpq/auth.c:278
+#: libpq/auth.c:253
 #, c-format
 msgid "GSSAPI authentication failed for user \"%s\""
 msgstr "autenticazione GSSAPI fallita per l'utente \"%s\""
 
-#: libpq/auth.c:281
+#: libpq/auth.c:256
 #, c-format
 msgid "SSPI authentication failed for user \"%s\""
 msgstr "autenticazione SSPI fallita per l'utente \"%s\""
 
-#: libpq/auth.c:284
+#: libpq/auth.c:259
 #, c-format
 msgid "PAM authentication failed for user \"%s\""
 msgstr "autenticazione PAM fallita per l'utente \"%s\""
 
-#: libpq/auth.c:287
+#: libpq/auth.c:262
 #, c-format
 msgid "LDAP authentication failed for user \"%s\""
 msgstr "autenticazione LDAP fallita per l'utente \"%s\""
 
-#: libpq/auth.c:290
+#: libpq/auth.c:265
 #, c-format
 msgid "certificate authentication failed for user \"%s\""
 msgstr "autenticazione con certificato fallita per l'utente \"%s\""
 
-#: libpq/auth.c:293
+#: libpq/auth.c:268
 #, c-format
 msgid "RADIUS authentication failed for user \"%s\""
 msgstr "autenticazione RADIUS fallita per l'utente \"%s\""
 
-#: libpq/auth.c:296
+#: libpq/auth.c:271
 #, c-format
 msgid "authentication failed for user \"%s\": invalid authentication method"
 msgstr "autenticazione fallita per l'utente \"%s\": metodo di autenticazione non valido"
 
-#: libpq/auth.c:304
+#: libpq/auth.c:275
 #, c-format
 msgid "Connection matched pg_hba.conf line %d: \"%s\""
 msgstr "La connessione si abbina con la riga %d di pg_hba.log: \"%s\""
 
-#: libpq/auth.c:359
+#: libpq/auth.c:337
 #, c-format
 msgid "connection requires a valid client certificate"
 msgstr "la connessione richiede un certificato valido per il client"
 
-#: libpq/auth.c:401
+#: libpq/auth.c:379
 #, c-format
 msgid "pg_hba.conf rejects replication connection for host \"%s\", user \"%s\", %s"
 msgstr "pg_hba.conf rifiuta connessioni di replica per l'host \"%s\", utente \"%s\", %s"
 
-#: libpq/auth.c:403 libpq/auth.c:419 libpq/auth.c:467 libpq/auth.c:485
+#: libpq/auth.c:381 libpq/auth.c:397 libpq/auth.c:455 libpq/auth.c:473
 msgid "SSL off"
 msgstr "SSL non abilitato"
 
-#: libpq/auth.c:403 libpq/auth.c:419 libpq/auth.c:467 libpq/auth.c:485
+#: libpq/auth.c:381 libpq/auth.c:397 libpq/auth.c:455 libpq/auth.c:473
 msgid "SSL on"
 msgstr "SSL abilitato"
 
-#: libpq/auth.c:407
+#: libpq/auth.c:385
 #, c-format
 msgid "pg_hba.conf rejects replication connection for host \"%s\", user \"%s\""
 msgstr "pg_hba.conf rifiuta connessioni di replica per l'host \"%s\", utente \"%s\""
 
-#: libpq/auth.c:416
+#: libpq/auth.c:394
 #, c-format
 msgid "pg_hba.conf rejects connection for host \"%s\", user \"%s\", database \"%s\", %s"
 msgstr "pg_hba.conf rifiuta connessioni per l'host \"%s\", utente \"%s\", database \"%s\", %s"
 
-#: libpq/auth.c:423
+#: libpq/auth.c:401
 #, c-format
 msgid "pg_hba.conf rejects connection for host \"%s\", user \"%s\", database \"%s\""
 msgstr "pg_hba.conf rifiuta connessioni per l'host \"%s\", user \"%s\", database \"%s\""
 
-#: libpq/auth.c:452
+#: libpq/auth.c:430
 #, c-format
 msgid "Client IP address resolved to \"%s\", forward lookup matches."
 msgstr "Indirizzo IP del client risolto in \"%s\", il forward lookup combacia."
 
-#: libpq/auth.c:454
+#: libpq/auth.c:433
 #, c-format
 msgid "Client IP address resolved to \"%s\", forward lookup not checked."
 msgstr "Indirizzo IP del client risolto in \"%s\", forward lookup non controllato."
 
-#: libpq/auth.c:456
+#: libpq/auth.c:436
 #, c-format
 msgid "Client IP address resolved to \"%s\", forward lookup does not match."
 msgstr "Indirizzo IP del client risolto in \"%s\", il forward lookup non combacia."
 
-#: libpq/auth.c:465
+#: libpq/auth.c:439
+#, c-format
+msgid "Could not translate client host name \"%s\" to IP address: %s."
+msgstr "Conversione del nome host \"%s\" in indirizzo IP non riuscita: %s."
+
+#: libpq/auth.c:444
+#, c-format
+msgid "Could not resolve client IP address to a host name: %s."
+msgstr "Risoluzione dell'indirizzo IP del client in nome host non riuscita: %s."
+
+#: libpq/auth.c:453
 #, c-format
 msgid "no pg_hba.conf entry for replication connection from host \"%s\", user \"%s\", %s"
 msgstr "nessuna voce in pg_hba.conf per connessioni di replica da host \"%s\", utente \"%s\", database \"%s\""
 
-#: libpq/auth.c:472
+#: libpq/auth.c:460
 #, c-format
 msgid "no pg_hba.conf entry for replication connection from host \"%s\", user \"%s\""
 msgstr "nessuna voce in pg_hba.conf per connessioni di replica da host \"%s\", user \"%s\""
 
-#: libpq/auth.c:482
+#: libpq/auth.c:470
 #, c-format
 msgid "no pg_hba.conf entry for host \"%s\", user \"%s\", database \"%s\", %s"
 msgstr "nessuna voce in pg_hba.conf per l'host \"%s\", utente \"%s\", database \"%s\", %s"
 
-#: libpq/auth.c:490
+#: libpq/auth.c:478
 #, c-format
 msgid "no pg_hba.conf entry for host \"%s\", user \"%s\", database \"%s\""
 msgstr "nessuna voce in pg_hba.conf per l'host \"%s\", utente \"%s\", database \"%s\""
 
-#: libpq/auth.c:542 libpq/hba.c:1206
+#: libpq/auth.c:521 libpq/hba.c:1212
 #, c-format
 msgid "MD5 authentication is not supported when \"db_user_namespace\" is enabled"
 msgstr "l'autenticazione MD5 non è supportata quando \"db_user_namespace\" è abilitato"
 
-#: libpq/auth.c:666
+#: libpq/auth.c:645
 #, c-format
 msgid "expected password response, got message type %d"
 msgstr "era attesa una risposta password, ricevuto messaggio di tipo %d"
 
-#: libpq/auth.c:694
+#: libpq/auth.c:673
 #, c-format
 msgid "invalid password packet size"
 msgstr "dimensione del pacchetto password non valida"
 
-#: libpq/auth.c:698
+#: libpq/auth.c:677
 #, c-format
 msgid "received password packet"
 msgstr "pacchetto password ricevuto"
 
-#: libpq/auth.c:756
-#, c-format
-msgid "Kerberos initialization returned error %d"
-msgstr "l'inizializzazione Kerberos è fallita con errore %d"
-
-#: libpq/auth.c:766
-#, c-format
-msgid "Kerberos keytab resolving returned error %d"
-msgstr "la risoluzione della keytab di Kerberos è fallita con errore %d"
-
-#: libpq/auth.c:790
-#, c-format
-msgid "Kerberos sname_to_principal(\"%s\", \"%s\") returned error %d"
-msgstr "Kerberos sname_to_principal(\"%s\", \"%s\") fallito con errore %d"
-
-#: libpq/auth.c:835
-#, c-format
-msgid "Kerberos recvauth returned error %d"
-msgstr "Kerberos recvauth fallito con errore %d"
-
-#: libpq/auth.c:858
-#, c-format
-msgid "Kerberos unparse_name returned error %d"
-msgstr "Kerberos unparse_name fallito con errore %d"
-
-#: libpq/auth.c:1006
+#: libpq/auth.c:804
 #, c-format
 msgid "GSSAPI is not supported in protocol version 2"
 msgstr "GSSAPI non è supportato con la versione 2 del protocollo"
 
-#: libpq/auth.c:1061
+#: libpq/auth.c:859
 #, c-format
 msgid "expected GSS response, got message type %d"
 msgstr "era attesa una risposta GSS, ricevuto messaggio di tipo %d"
 
-#: libpq/auth.c:1120
+#: libpq/auth.c:918
 msgid "accepting GSS security context failed"
 msgstr "contesto di sicurezza accettazione GSS fallito"
 
-#: libpq/auth.c:1146
+#: libpq/auth.c:944
 msgid "retrieving GSS user name failed"
 msgstr "la richiesta del GSS user name è fallita"
 
-#: libpq/auth.c:1263
+#: libpq/auth.c:1061
 #, c-format
 msgid "SSPI is not supported in protocol version 2"
 msgstr "SSPI non è supportato con la versione 2 del protocollo"
 
-#: libpq/auth.c:1278
+#: libpq/auth.c:1076
 msgid "could not acquire SSPI credentials"
 msgstr "non è stato possibile ottenere le credenziali SSPI"
 
-#: libpq/auth.c:1295
+#: libpq/auth.c:1093
 #, c-format
 msgid "expected SSPI response, got message type %d"
 msgstr "era attesa una risposta SSPI, ricevuto messaggio di tipo %d"
 
-#: libpq/auth.c:1367
+#: libpq/auth.c:1165
 msgid "could not accept SSPI security context"
 msgstr "non è stato possibile accettare il contesto di sicurezza SSPI"
 
-#: libpq/auth.c:1429
+#: libpq/auth.c:1227
 msgid "could not get token from SSPI security context"
 msgstr "non è stato possibile ottenere il token dal contesto di sicurezza SSPI"
 
-#: libpq/auth.c:1673
+#: libpq/auth.c:1470
 #, c-format
 msgid "could not create socket for Ident connection: %m"
 msgstr "creazione del socket per la connessione Ident fallita: %m"
 
-#: libpq/auth.c:1688
+#: libpq/auth.c:1485
 #, c-format
 msgid "could not bind to local address \"%s\": %m"
 msgstr "bind sull'indirizzo locale \"%s\" fallito: %m"
 
-#: libpq/auth.c:1700
+#: libpq/auth.c:1497
 #, c-format
 msgid "could not connect to Ident server at address \"%s\", port %s: %m"
 msgstr "connessione al server Ident all'indirizzo \"%s\", porta %s fallita: %m"
 
-#: libpq/auth.c:1720
+#: libpq/auth.c:1517
 #, c-format
 msgid "could not send query to Ident server at address \"%s\", port %s: %m"
 msgstr "invio della query al server Ident all'indirizzo \"%s\", porta %s fallito: %m"
 
-#: libpq/auth.c:1735
+#: libpq/auth.c:1532
 #, c-format
 msgid "could not receive response from Ident server at address \"%s\", port %s: %m"
 msgstr "ricezione della risposta dal server Ident all'indirizzo \"%s\", porta %s fallita: %m"
 
-#: libpq/auth.c:1745
+#: libpq/auth.c:1542
 #, c-format
 msgid "invalidly formatted response from Ident server: \"%s\""
 msgstr "risposta dal server Ident formattata in maniera non corretta: \"%s\""
 
-#: libpq/auth.c:1784
+#: libpq/auth.c:1580
 #, c-format
 msgid "peer authentication is not supported on this platform"
 msgstr "il metodo di autenticazione peer non è supportato su questa piattaforma"
 
-#: libpq/auth.c:1788
+#: libpq/auth.c:1584
 #, c-format
 msgid "could not get peer credentials: %m"
 msgstr "non è stato possibile recuperare le credenziali del peer: %m"
 
-#: libpq/auth.c:1797
+#: libpq/auth.c:1593
 #, c-format
-msgid "local user with ID %d does not exist"
-msgstr "l'utente locale con ID %d non esiste"
+msgid "failed to look up local user id %ld: %s"
+msgstr "ricerca dell'id utente locale %ld non riuscita: %s"
 
-#: libpq/auth.c:1880 libpq/auth.c:2151 libpq/auth.c:2516
+#: libpq/auth.c:1676 libpq/auth.c:1947 libpq/auth.c:2304
 #, c-format
 msgid "empty password returned by client"
 msgstr "il client ha restituito una password vuota"
 
-#: libpq/auth.c:1890
+#: libpq/auth.c:1686
 #, c-format
 msgid "error from underlying PAM layer: %s"
 msgstr "errore dal livello PAM sottostante: %s"
 
-#: libpq/auth.c:1959
+#: libpq/auth.c:1755
 #, c-format
 msgid "could not create PAM authenticator: %s"
 msgstr "creazione dell'autenticatore PAM fallita: %s"
 
-#: libpq/auth.c:1970
+#: libpq/auth.c:1766
 #, c-format
 msgid "pam_set_item(PAM_USER) failed: %s"
 msgstr "pam_set_item(PAM_USER) fallita: %s"
 
-#: libpq/auth.c:1981
+#: libpq/auth.c:1777
 #, c-format
 msgid "pam_set_item(PAM_CONV) failed: %s"
 msgstr "pam_set_item(PAM_CONV) fallita: %s"
 
-#: libpq/auth.c:1992
+#: libpq/auth.c:1788
 #, c-format
 msgid "pam_authenticate failed: %s"
 msgstr "pam_authenticate fallita: %s"
 
-#: libpq/auth.c:2003
+#: libpq/auth.c:1799
 #, c-format
 msgid "pam_acct_mgmt failed: %s"
 msgstr "pam_acct_mgmt fallita: %s"
 
-#: libpq/auth.c:2014
+#: libpq/auth.c:1810
 #, c-format
 msgid "could not release PAM authenticator: %s"
 msgstr "rilascio dell'autenticatore PAM fallito: %s"
 
-#: libpq/auth.c:2047
+#: libpq/auth.c:1843
 #, c-format
 msgid "could not initialize LDAP: %m"
 msgstr "inizializzazione LDAP fallita: %m"
 
-#: libpq/auth.c:2050
+#: libpq/auth.c:1846
 #, c-format
 msgid "could not initialize LDAP: error code %d"
 msgstr "inizializzazione LDAP fallita: codice errore %d"
 
-#: libpq/auth.c:2060
+#: libpq/auth.c:1856
 #, c-format
 msgid "could not set LDAP protocol version: %s"
 msgstr "impostazione della versione del protocollo LDAP fallita: %s"
 
-#: libpq/auth.c:2089
+#: libpq/auth.c:1885
 #, c-format
 msgid "could not load wldap32.dll"
 msgstr "caricamento wldap32.dll fallito"
 
-#: libpq/auth.c:2097
+#: libpq/auth.c:1893
 #, c-format
 msgid "could not load function _ldap_start_tls_sA in wldap32.dll"
 msgstr "caricamento della funzione _ldap_start_tls_sA in wldap32.dll fallito"
 
-#: libpq/auth.c:2098
+#: libpq/auth.c:1894
 #, c-format
 msgid "LDAP over SSL is not supported on this platform."
 msgstr "LDAP su SSL non è supportato su questa piattaforma."
 
-#: libpq/auth.c:2113
+#: libpq/auth.c:1909
 #, c-format
 msgid "could not start LDAP TLS session: %s"
 msgstr "avvio della sessione TLS LDAP fallito: %s"
 
-#: libpq/auth.c:2135
+#: libpq/auth.c:1931
 #, c-format
 msgid "LDAP server not specified"
 msgstr "server LDAP non specificato"
 
-#: libpq/auth.c:2188
+#: libpq/auth.c:1984
 #, c-format
 msgid "invalid character in user name for LDAP authentication"
 msgstr "carattere non valido nel nome utente per l'autenticazione LDAP"
 
-#: libpq/auth.c:2203
+#: libpq/auth.c:1999
 #, c-format
 msgid "could not perform initial LDAP bind for ldapbinddn \"%s\" on server \"%s\": %s"
 msgstr "bind iniziale LDAP fallito per ldapbinddn \"%s\" sul server \"%s\": %s"
 
-#: libpq/auth.c:2228
+#: libpq/auth.c:2023
 #, c-format
 msgid "could not search LDAP for filter \"%s\" on server \"%s\": %s"
 msgstr "ricerca in LDAP del filtro \"%s\" sul server \"%s\" fallita: %s"
 
-#: libpq/auth.c:2239
+#: libpq/auth.c:2034
 #, c-format
 msgid "LDAP user \"%s\" does not exist"
 msgstr "l'utente LDAP \"%s\" non esiste"
 
-#: libpq/auth.c:2240
+#: libpq/auth.c:2035
 #, c-format
 msgid "LDAP search for filter \"%s\" on server \"%s\" returned no entries."
 msgstr "La ricerca LDAP del filtro \"%s\" sul server \"%s\" non ha restituito risultati."
 
-#: libpq/auth.c:2244
+#: libpq/auth.c:2039
 #, c-format
 msgid "LDAP user \"%s\" is not unique"
 msgstr "L'utente LDAP \"%s\" non è unico"
 
-#: libpq/auth.c:2245
+#: libpq/auth.c:2040
 #, c-format
 msgid "LDAP search for filter \"%s\" on server \"%s\" returned %d entry."
 msgid_plural "LDAP search for filter \"%s\" on server \"%s\" returned %d entries."
 msgstr[0] "La ricerca LDAP del filtro \"%s\" sul server \"%s\" ha restituito %d risultato."
 msgstr[1] "La ricerca LDAP del filtro \"%s\" sul server \"%s\" ha restituito %d risultati."
 
-#: libpq/auth.c:2263
+#: libpq/auth.c:2058
 #, c-format
 msgid "could not get dn for the first entry matching \"%s\" on server \"%s\": %s"
 msgstr "dn per il primo risultato di \"%s\" non trovato sul server \"%s\": %s"
 
-#: libpq/auth.c:2283
+#: libpq/auth.c:2078
 #, c-format
 msgid "could not unbind after searching for user \"%s\" on server \"%s\": %s"
 msgstr "unbind fallito dopo aver cercato l'utente \"%s\" sul server \"%s\": %s"
 
-#: libpq/auth.c:2320
+#: libpq/auth.c:2108
 #, c-format
 msgid "LDAP login failed for user \"%s\" on server \"%s\": %s"
 msgstr "login LDAP fallito per l'utente \"%s\" sul server \"%s\": %s"
 
-#: libpq/auth.c:2348
+#: libpq/auth.c:2136
 #, c-format
 msgid "certificate authentication failed for user \"%s\": client certificate contains no user name"
 msgstr "autenticazione con certificato fallita per l'utente \"%s\": il certificato del client non contiene alcun nome utente"
 
-#: libpq/auth.c:2472
+#: libpq/auth.c:2260
 #, c-format
 msgid "RADIUS server not specified"
 msgstr "server RADIUS non specificato"
 
-#: libpq/auth.c:2479
+#: libpq/auth.c:2267
 #, c-format
 msgid "RADIUS secret not specified"
 msgstr "segreto RADIUS non specificato"
 
-#: libpq/auth.c:2495 libpq/hba.c:1622
+#: libpq/auth.c:2283 libpq/hba.c:1609
 #, c-format
 msgid "could not translate RADIUS server name \"%s\" to address: %s"
 msgstr "conversione del nome del server RADIUS \"%s\" in indirizzo fallita: %s"
 
-#: libpq/auth.c:2523
+#: libpq/auth.c:2311
 #, c-format
 msgid "RADIUS authentication does not support passwords longer than 16 characters"
 msgstr "l'autenticazione RADIUS non supporta password più lunghe di 16 caratteri"
 
-#: libpq/auth.c:2534
+#: libpq/auth.c:2322
 #, c-format
 msgid "could not generate random encryption vector"
 msgstr "generazione del vettore di criptaggio casuale fallita"
 
-#: libpq/auth.c:2557
+#: libpq/auth.c:2345
 #, c-format
 msgid "could not perform MD5 encryption of password"
 msgstr "criptaggio MD5 della password fallito"
 
-#: libpq/auth.c:2579
+#: libpq/auth.c:2367
 #, c-format
 msgid "could not create RADIUS socket: %m"
 msgstr "creazione del socket RADIUS fallita: %m"
 
-#: libpq/auth.c:2600
+#: libpq/auth.c:2388
 #, c-format
 msgid "could not bind local RADIUS socket: %m"
 msgstr "bind del socket RADIUS fallito: %m"
 
-#: libpq/auth.c:2610
+#: libpq/auth.c:2398
 #, c-format
 msgid "could not send RADIUS packet: %m"
 msgstr "invio del pacchetto RADIUS fallito: %m"
 
-#: libpq/auth.c:2639 libpq/auth.c:2664
+#: libpq/auth.c:2427 libpq/auth.c:2452
 #, c-format
 msgid "timeout waiting for RADIUS response"
 msgstr "tempo scaduto in attesa della risposta RADIUS"
 
-#: libpq/auth.c:2657
+#: libpq/auth.c:2445
 #, c-format
 msgid "could not check status on RADIUS socket: %m"
 msgstr "controllo dello stato sul socket RADIUS fallito: %m"
 
-#: libpq/auth.c:2686
+#: libpq/auth.c:2474
 #, c-format
 msgid "could not read RADIUS response: %m"
 msgstr "lettura della risposta RADIUS fallita: %m"
 
-#: libpq/auth.c:2698 libpq/auth.c:2702
+#: libpq/auth.c:2486 libpq/auth.c:2490
 #, c-format
 msgid "RADIUS response was sent from incorrect port: %d"
 msgstr "la risposta RADIUS è stata inviata da una porta sbagliata: %d"
 
-#: libpq/auth.c:2711
+#: libpq/auth.c:2499
 #, c-format
 msgid "RADIUS response too short: %d"
 msgstr "risposta RADIUS troppo breve: %d"
 
-#: libpq/auth.c:2718
+#: libpq/auth.c:2506
 #, c-format
 msgid "RADIUS response has corrupt length: %d (actual length %d)"
 msgstr "la risposta RADIUS ha una lunghezza corrotta: %d (lunghezza reale %d)"
 
-#: libpq/auth.c:2726
+#: libpq/auth.c:2514
 #, c-format
 msgid "RADIUS response is to a different request: %d (should be %d)"
 msgstr "la risposta RADIUS è a una richiesta differente: %d (dovrebbe essere %d)"
 
-#: libpq/auth.c:2751
+#: libpq/auth.c:2539
 #, c-format
 msgid "could not perform MD5 encryption of received packet"
 msgstr "criptaggio MD5 dei pacchetti ricevuti fallito"
 
-#: libpq/auth.c:2760
+#: libpq/auth.c:2548
 #, c-format
 msgid "RADIUS response has incorrect MD5 signature"
 msgstr "la firma MD5 della risposta RADIUS non è corretta"
 
-#: libpq/auth.c:2777
+#: libpq/auth.c:2565
 #, c-format
 msgid "RADIUS response has invalid code (%d) for user \"%s\""
 msgstr "il codice della risposta RADIUS (%d) per l'utente \"%s\" non è corretto"
@@ -9145,6 +9514,7 @@ msgid "invalid large-object descriptor: %d"
 msgstr "descrittore di large object non valido: %d"
 
 #: libpq/be-fsstubs.c:180 libpq/be-fsstubs.c:218 libpq/be-fsstubs.c:602
+#: libpq/be-fsstubs.c:790
 #, c-format
 msgid "permission denied for large object %u"
 msgstr "permesso per il large object %u negato"
@@ -9204,125 +9574,165 @@ msgstr "creazione del file del server \"%s\" fallita: %m"
 msgid "could not write server file \"%s\": %m"
 msgstr "scrittura del file del server \"%s\" fallita: %m"
 
-#: libpq/be-secure.c:284 libpq/be-secure.c:379
+#: libpq/be-fsstubs.c:815
+#, c-format
+msgid "large object read request is too large"
+msgstr "la richiesta di lettura per il large object è troppo grande"
+
+#: libpq/be-fsstubs.c:857 utils/adt/genfile.c:187 utils/adt/genfile.c:232
+#, c-format
+msgid "requested length cannot be negative"
+msgstr "la lunghezza richiesta non può essere negativa"
+
+#: libpq/be-secure.c:296 libpq/be-secure.c:418
 #, c-format
 msgid "SSL error: %s"
 msgstr "errore SSL: %s"
 
-#: libpq/be-secure.c:293 libpq/be-secure.c:388 libpq/be-secure.c:943
+#: libpq/be-secure.c:305 libpq/be-secure.c:427 libpq/be-secure.c:1046
 #, c-format
 msgid "unrecognized SSL error code: %d"
 msgstr "codice di errore SSL sconosciuto: %d"
 
-#: libpq/be-secure.c:332 libpq/be-secure.c:336 libpq/be-secure.c:346
+#: libpq/be-secure.c:365
+#, c-format
+msgid "SSL failure during renegotiation start"
+msgstr "errore SSL durante l'avvio della rinegoziazione"
+
+#: libpq/be-secure.c:380
+#, c-format
+msgid "SSL handshake failure on renegotiation, retrying"
+msgstr "errore di handshake SSL su rinegoziazione, sto riprovando"
+
+#: libpq/be-secure.c:384
+#, c-format
+msgid "unable to complete SSL handshake"
+msgstr "completamento dell'handshake SSL non riuscito"
+
+#: libpq/be-secure.c:453
+#, c-format
+msgid "SSL failed to renegotiate connection before limit expired"
+msgstr "SSL non è riuscito a rinegoziare la connessione prima di raggiungere il limite"
+
+#: libpq/be-secure.c:793
 #, c-format
-msgid "SSL renegotiation failure"
-msgstr "negoziazione SSL fallita"
+msgid "ECDH: unrecognized curve name: %s"
+msgstr "ECDH: nome della curva non riconosciuto: %s"
 
-#: libpq/be-secure.c:340
+#: libpq/be-secure.c:798
 #, c-format
-msgid "SSL failed to send renegotiation request"
-msgstr "SSL non è riuscito a inviare la richiesta di rinegoziazione"
+msgid "ECDH: could not create key"
+msgstr "ECDH: chiave non creata"
 
-#: libpq/be-secure.c:741
+#: libpq/be-secure.c:835
 #, c-format
 msgid "could not create SSL context: %s"
 msgstr "creazione del contesto SSL fallita: %s"
 
-#: libpq/be-secure.c:757
+#: libpq/be-secure.c:851
 #, c-format
 msgid "could not load server certificate file \"%s\": %s"
 msgstr "caricamento del file di certificato del server \"%s\" fallito: %s"
 
-#: libpq/be-secure.c:763
+#: libpq/be-secure.c:857
 #, c-format
 msgid "could not access private key file \"%s\": %m"
 msgstr "accesso fallito al file della chiave privata \"%s\": %m"
 
-#: libpq/be-secure.c:778
+#: libpq/be-secure.c:872
 #, c-format
 msgid "private key file \"%s\" has group or world access"
 msgstr "il file della chiave primaria \"%s\" ha accesso al gruppo o a chiunque"
 
-#: libpq/be-secure.c:780
+#: libpq/be-secure.c:874
 #, c-format
 msgid "Permissions should be u=rw (0600) or less."
 msgstr "Il permesso dovrebbe essere u=rw (0600) o inferiore."
 
-#: libpq/be-secure.c:787
+#: libpq/be-secure.c:881
 #, c-format
 msgid "could not load private key file \"%s\": %s"
 msgstr "caricamento del file della chiave privata \"%s\" fallito: %s"
 
-#: libpq/be-secure.c:792
+#: libpq/be-secure.c:886
 #, c-format
 msgid "check of private key failed: %s"
 msgstr "controllo della chiave privata fallito: %s"
 
-#: libpq/be-secure.c:812
+#: libpq/be-secure.c:915
 #, c-format
 msgid "could not load root certificate file \"%s\": %s"
 msgstr "caricamento del file del certificato radice \"%s\" fallito: %s"
 
-#: libpq/be-secure.c:836
+#: libpq/be-secure.c:939
 #, c-format
 msgid "SSL certificate revocation list file \"%s\" ignored"
 msgstr "il file di lista di revoche di certificati SSL \"%s\" è stato ignorato"
 
-#: libpq/be-secure.c:838
+#: libpq/be-secure.c:941
 #, c-format
 msgid "SSL library does not support certificate revocation lists."
 msgstr "La libreria SSL non supporta le liste di revoca dei certificati."
 
-#: libpq/be-secure.c:843
+#: libpq/be-secure.c:946
 #, c-format
 msgid "could not load SSL certificate revocation list file \"%s\": %s"
 msgstr "caricamento del file di lista di revoche di certificati SSL \"%s\" fallito: %s"
 
-#: libpq/be-secure.c:888
+#: libpq/be-secure.c:991
 #, c-format
 msgid "could not initialize SSL connection: %s"
 msgstr "inizializzazione della connessione SSL fallita: %s"
 
-#: libpq/be-secure.c:897
+#: libpq/be-secure.c:1000
 #, c-format
 msgid "could not set SSL socket: %s"
 msgstr "impostazione del socket SSL fallita: %s"
 
-#: libpq/be-secure.c:923
+#: libpq/be-secure.c:1026
 #, c-format
 msgid "could not accept SSL connection: %m"
 msgstr "accettazione della connessione SSL fallita: %m"
 
-#: libpq/be-secure.c:927 libpq/be-secure.c:938
+#: libpq/be-secure.c:1030 libpq/be-secure.c:1041
 #, c-format
 msgid "could not accept SSL connection: EOF detected"
 msgstr "accettazione della connessione SSL fallita: fine file individuata"
 
-#: libpq/be-secure.c:932
+#: libpq/be-secure.c:1035
 #, c-format
 msgid "could not accept SSL connection: %s"
 msgstr "accettazione della connessione SSL fallita: %s"
 
-#: libpq/be-secure.c:988
+#: libpq/be-secure.c:1091
 #, c-format
 msgid "SSL certificate's common name contains embedded null"
 msgstr "Il nome comune del certificato SSL contiene un null"
 
-#: libpq/be-secure.c:999
+#: libpq/be-secure.c:1102
 #, c-format
 msgid "SSL connection from \"%s\""
 msgstr "connessione SSL da \"%s\""
 
-#: libpq/be-secure.c:1050
+#: libpq/be-secure.c:1153
 msgid "no SSL error reported"
 msgstr "nessun errore SSL riportato"
 
-#: libpq/be-secure.c:1054
+#: libpq/be-secure.c:1157
 #, c-format
 msgid "SSL error code %lu"
 msgstr "codice di errore SSL: %lu"
 
+#: libpq/crypt.c:67
+#, c-format
+msgid "User \"%s\" has no password assigned."
+msgstr "L'utente \"%s\" non ha una password assegnata."
+
+#: libpq/crypt.c:160
+#, c-format
+msgid "User \"%s\" has an expired password."
+msgstr "L'utente \"%s\" ha la password scaduta."
+
 #: libpq/hba.c:188
 #, c-format
 msgid "authentication file token too long, skipping: \"%s\""
@@ -9338,310 +9748,300 @@ msgstr "apertura del file secondario di autenticazione \"@%s\" come \"%s\" falli
 msgid "authentication file line too long"
 msgstr "riga del file di autenticazione troppo lunga"
 
-#: libpq/hba.c:410 libpq/hba.c:775 libpq/hba.c:791 libpq/hba.c:821
-#: libpq/hba.c:867 libpq/hba.c:880 libpq/hba.c:902 libpq/hba.c:911
-#: libpq/hba.c:934 libpq/hba.c:946 libpq/hba.c:965 libpq/hba.c:986
-#: libpq/hba.c:997 libpq/hba.c:1052 libpq/hba.c:1070 libpq/hba.c:1082
-#: libpq/hba.c:1099 libpq/hba.c:1109 libpq/hba.c:1123 libpq/hba.c:1139
-#: libpq/hba.c:1154 libpq/hba.c:1165 libpq/hba.c:1207 libpq/hba.c:1239
-#: libpq/hba.c:1250 libpq/hba.c:1270 libpq/hba.c:1281 libpq/hba.c:1292
-#: libpq/hba.c:1309 libpq/hba.c:1334 libpq/hba.c:1371 libpq/hba.c:1381
-#: libpq/hba.c:1438 libpq/hba.c:1450 libpq/hba.c:1463 libpq/hba.c:1546
-#: libpq/hba.c:1624 libpq/hba.c:1642 libpq/hba.c:1663 tsearch/ts_locale.c:182
+#: libpq/hba.c:410 libpq/hba.c:787 libpq/hba.c:803 libpq/hba.c:833
+#: libpq/hba.c:879 libpq/hba.c:892 libpq/hba.c:914 libpq/hba.c:923
+#: libpq/hba.c:946 libpq/hba.c:958 libpq/hba.c:977 libpq/hba.c:998
+#: libpq/hba.c:1009 libpq/hba.c:1064 libpq/hba.c:1082 libpq/hba.c:1094
+#: libpq/hba.c:1111 libpq/hba.c:1121 libpq/hba.c:1135 libpq/hba.c:1151
+#: libpq/hba.c:1166 libpq/hba.c:1177 libpq/hba.c:1213 libpq/hba.c:1245
+#: libpq/hba.c:1256 libpq/hba.c:1276 libpq/hba.c:1287 libpq/hba.c:1304
+#: libpq/hba.c:1329 libpq/hba.c:1366 libpq/hba.c:1376 libpq/hba.c:1432
+#: libpq/hba.c:1444 libpq/hba.c:1457 libpq/hba.c:1540 libpq/hba.c:1611
+#: libpq/hba.c:1629 libpq/hba.c:1650 tsearch/ts_locale.c:182
 #, c-format
 msgid "line %d of configuration file \"%s\""
 msgstr "riga %d del file di configurazione \"%s\""
 
-#: libpq/hba.c:622
-#, c-format
-msgid "could not translate host name \"%s\" to address: %s"
-msgstr "conversione del nome host \"%s\" in indirizzo fallita: %s"
-
 #. translator: the second %s is a list of auth methods
-#: libpq/hba.c:773
+#: libpq/hba.c:785
 #, c-format
 msgid "authentication option \"%s\" is only valid for authentication methods %s"
 msgstr "l'opzione di autenticazione \"%s\" è valida solo per i metodi di autenticazione %s"
 
-#: libpq/hba.c:789
+#: libpq/hba.c:801
 #, c-format
 msgid "authentication method \"%s\" requires argument \"%s\" to be set"
 msgstr "il metodo di autenticazione \"%s\" richiede che l'argomenti \"%s\" sia impostato"
 
-#: libpq/hba.c:810
+#: libpq/hba.c:822
 #, c-format
 msgid "missing entry in file \"%s\" at end of line %d"
 msgstr "voce mancante nel file \"%s\" alla fine della riga %d"
 
-#: libpq/hba.c:820
+#: libpq/hba.c:832
 #, c-format
 msgid "multiple values in ident field"
 msgstr "più di un valore nel campo ident"
 
-#: libpq/hba.c:865
+#: libpq/hba.c:877
 #, c-format
 msgid "multiple values specified for connection type"
 msgstr "più di un valore specificato per il tipo di connessione"
 
-#: libpq/hba.c:866
+#: libpq/hba.c:878
 #, c-format
 msgid "Specify exactly one connection type per line."
 msgstr "Specifica esattamente un tipo di connessione per riga."
 
-#: libpq/hba.c:879
+#: libpq/hba.c:891
 #, c-format
 msgid "local connections are not supported by this build"
 msgstr "le connessioni locali non sono supportate in questo binario"
 
-#: libpq/hba.c:900
+#: libpq/hba.c:912
 #, c-format
 msgid "hostssl requires SSL to be turned on"
 msgstr "hostssl richiede che SSL sia abilitato"
 
-#: libpq/hba.c:901
+#: libpq/hba.c:913
 #, c-format
 msgid "Set ssl = on in postgresql.conf."
 msgstr "Imposta ssl = on in postgresql.conf."
 
-#: libpq/hba.c:909
+#: libpq/hba.c:921
 #, c-format
 msgid "hostssl is not supported by this build"
 msgstr "hostssl non è supportato in questo binario"
 
-#: libpq/hba.c:910
+#: libpq/hba.c:922
 #, c-format
 msgid "Compile with --with-openssl to use SSL connections."
 msgstr "Compila con --with-openssl per usare connessioni SSL."
 
-#: libpq/hba.c:932
+#: libpq/hba.c:944
 #, c-format
 msgid "invalid connection type \"%s\""
 msgstr "tipo di connessione \"%s\" non valido"
 
-#: libpq/hba.c:945
+#: libpq/hba.c:957
 #, c-format
 msgid "end-of-line before database specification"
 msgstr "fine riga prima della specificazione del database"
 
-#: libpq/hba.c:964
+#: libpq/hba.c:976
 #, c-format
 msgid "end-of-line before role specification"
 msgstr "fine riga prima della specificazione del ruolo"
 
-#: libpq/hba.c:985
+#: libpq/hba.c:997
 #, c-format
 msgid "end-of-line before IP address specification"
 msgstr "fine riga prima della specificazione dell'indirizzo IP"
 
-#: libpq/hba.c:995
+#: libpq/hba.c:1007
 #, c-format
 msgid "multiple values specified for host address"
 msgstr "più di un valore specificato per l'indirizzo host"
 
-#: libpq/hba.c:996
+#: libpq/hba.c:1008
 #, c-format
 msgid "Specify one address range per line."
 msgstr "Specifica un intervallo di indirizzi per riga."
 
-#: libpq/hba.c:1050
+#: libpq/hba.c:1062
 #, c-format
 msgid "invalid IP address \"%s\": %s"
 msgstr "indirizzo IP non valido \"%s\": %s"
 
-#: libpq/hba.c:1068
+#: libpq/hba.c:1080
 #, c-format
 msgid "specifying both host name and CIDR mask is invalid: \"%s\""
 msgstr "specificare sia un nome host che una maschera CIDR non è consentito: \"%s\""
 
-#: libpq/hba.c:1080
+#: libpq/hba.c:1092
 #, c-format
 msgid "invalid CIDR mask in address \"%s\""
 msgstr "maschera CIDR non valida nell'indirizzo \"%s\""
 
-#: libpq/hba.c:1097
+#: libpq/hba.c:1109
 #, c-format
 msgid "end-of-line before netmask specification"
 msgstr "fine riga prima della specificazione della maschera di rete"
 
-#: libpq/hba.c:1098
+#: libpq/hba.c:1110
 #, c-format
 msgid "Specify an address range in CIDR notation, or provide a separate netmask."
 msgstr "Specifica un intervallo di indirizzi in notazione CIDR, oppure fornisci una maschera di rete separata."
 
-#: libpq/hba.c:1108
+#: libpq/hba.c:1120
 #, c-format
 msgid "multiple values specified for netmask"
 msgstr "più di un valore specificato per la maschera di rete"
 
-#: libpq/hba.c:1121
+#: libpq/hba.c:1133
 #, c-format
 msgid "invalid IP mask \"%s\": %s"
 msgstr "maschera IP non valida \"%s\": %s"
 
-#: libpq/hba.c:1138
+#: libpq/hba.c:1150
 #, c-format
 msgid "IP address and mask do not match"
 msgstr "l'indirizzo IP e la maschera non combaciano"
 
-#: libpq/hba.c:1153
+#: libpq/hba.c:1165
 #, c-format
 msgid "end-of-line before authentication method"
 msgstr "fine riga prima del metodo di autenticazione"
 
-#: libpq/hba.c:1163
+#: libpq/hba.c:1175
 #, c-format
 msgid "multiple values specified for authentication type"
 msgstr "più di un valore specificato per il tipo di autenticazione"
 
-#: libpq/hba.c:1164
+#: libpq/hba.c:1176
 #, c-format
 msgid "Specify exactly one authentication type per line."
 msgstr "Specifica esattamente un tipo di autenticazione per riga."
 
-#: libpq/hba.c:1237
+#: libpq/hba.c:1243
 #, c-format
 msgid "invalid authentication method \"%s\""
 msgstr "metodo di autenticazione \"%s\" non valido"
 
-#: libpq/hba.c:1248
+#: libpq/hba.c:1254
 #, c-format
 msgid "invalid authentication method \"%s\": not supported by this build"
 msgstr "metodo di autenticazione \"%s\" non valido: non supportato in questo binario"
 
-#: libpq/hba.c:1269
-#, c-format
-msgid "krb5 authentication is not supported on local sockets"
-msgstr "l'autenticazione krb5 non è supportata su socket locali"
-
-#: libpq/hba.c:1280
+#: libpq/hba.c:1275
 #, c-format
 msgid "gssapi authentication is not supported on local sockets"
 msgstr "l'autenticazione gssapi non è supportata su socket locali"
 
-#: libpq/hba.c:1291
+#: libpq/hba.c:1286
 #, c-format
 msgid "peer authentication is only supported on local sockets"
 msgstr "l'autenticazione peer è supportata solo su socket locali"
 
-#: libpq/hba.c:1308
+#: libpq/hba.c:1303
 #, c-format
 msgid "cert authentication is only supported on hostssl connections"
 msgstr "l'autenticazione cert è supportata solo su connessioni hostssl"
 
-#: libpq/hba.c:1333
+#: libpq/hba.c:1328
 #, c-format
 msgid "authentication option not in name=value format: %s"
 msgstr "opzione di autenticazione non in formato nome=valore: %s"
 
-#: libpq/hba.c:1370
+#: libpq/hba.c:1365
 #, c-format
 msgid "cannot use ldapbasedn, ldapbinddn, ldapbindpasswd, ldapsearchattribute, or ldapurl together with ldapprefix"
 msgstr "non si possono usare ldapbasedn, ldapbinddn, ldapbindpasswd, ldapsearchattribute né ldapurl insieme a ldapprefix"
 
-#: libpq/hba.c:1380
+#: libpq/hba.c:1375
 #, c-format
 msgid "authentication method \"ldap\" requires argument \"ldapbasedn\", \"ldapprefix\", or \"ldapsuffix\" to be set"
-msgstr "il metodo di autenticazione \"ldap\" richede che gli argomenti \"ldapbasedn\", \"ldapprefix\" o \"ldapsuffix\" siano impostati"
+msgstr "il metodo di autenticazione \"ldap\" richiede che gli argomenti \"ldapbasedn\", \"ldapprefix\" o \"ldapsuffix\" siano impostati"
 
-#: libpq/hba.c:1424
-msgid "ident, peer, krb5, gssapi, sspi, and cert"
-msgstr "ident, peer, krb5, gssapi, sspi e cert"
+#: libpq/hba.c:1418
+msgid "ident, peer, gssapi, sspi, and cert"
+msgstr "ident, peer, gssapi, sspi e cert"
 
-#: libpq/hba.c:1437
+#: libpq/hba.c:1431
 #, c-format
 msgid "clientcert can only be configured for \"hostssl\" rows"
 msgstr "il clientcert può essere configurato solo per le righe \"hostssl\""
 
-#: libpq/hba.c:1448
+#: libpq/hba.c:1442
 #, c-format
 msgid "client certificates can only be checked if a root certificate store is available"
 msgstr "il certificato del client può essere controllato solo se un root certificate store è disponibile"
 
-#: libpq/hba.c:1449
+#: libpq/hba.c:1443
 #, c-format
 msgid "Make sure the configuration parameter \"ssl_ca_file\" is set."
 msgstr "Assicurati che il parametro di configurazione \"ssl_ca_file\" sia impostato."
 
-#: libpq/hba.c:1462
+#: libpq/hba.c:1456
 #, c-format
 msgid "clientcert can not be set to 0 when using \"cert\" authentication"
 msgstr "clientcert non può essere impostato a 0 quando si usa l'autenticazione \"cert\""
 
-#: libpq/hba.c:1489
+#: libpq/hba.c:1483
 #, c-format
 msgid "could not parse LDAP URL \"%s\": %s"
 msgstr "impossibile interpretare la URL LDAP \"%s\": %s"
 
-#: libpq/hba.c:1497
+#: libpq/hba.c:1491
 #, c-format
 msgid "unsupported LDAP URL scheme: %s"
 msgstr "schema di URL LDAP non supportato: %s"
 
-#: libpq/hba.c:1513
+#: libpq/hba.c:1507
 #, c-format
 msgid "filters not supported in LDAP URLs"
 msgstr "i filtri non sono supportati nelle URL LDAP"
 
-#: libpq/hba.c:1521
+#: libpq/hba.c:1515
 #, c-format
 msgid "LDAP URLs not supported on this platform"
 msgstr "URL LDAP non supportate su questa piattaforma"
 
-#: libpq/hba.c:1545
+#: libpq/hba.c:1539
 #, c-format
 msgid "invalid LDAP port number: \"%s\""
 msgstr "numero di porta LDAP non valido: \"%s\""
 
-#: libpq/hba.c:1591 libpq/hba.c:1599
-msgid "krb5, gssapi, and sspi"
-msgstr "krb5, gssapi e sspi"
+#: libpq/hba.c:1579 libpq/hba.c:1586
+msgid "gssapi and sspi"
+msgstr "gssapi e sspi"
 
-#: libpq/hba.c:1641
+#: libpq/hba.c:1628
 #, c-format
 msgid "invalid RADIUS port number: \"%s\""
 msgstr "numero di porta RADIUS non valido: \"%s\""
 
-#: libpq/hba.c:1661
+#: libpq/hba.c:1648
 #, c-format
 msgid "unrecognized authentication option name: \"%s\""
 msgstr "nome di opzione di autenticazione sconosciuto: \"%s\""
 
-#: libpq/hba.c:1802 guc-file.l:439
+#: libpq/hba.c:1789 guc-file.l:517
 #, c-format
 msgid "could not open configuration file \"%s\": %m"
 msgstr "apertura del file di configurazione \"%s\" fallita: %m"
 
-#: libpq/hba.c:1852
+#: libpq/hba.c:1839
 #, c-format
 msgid "configuration file \"%s\" contains no entries"
 msgstr "il file di configurazione \"%s\" non contiene alcuna voce"
 
-#: libpq/hba.c:1948
+#: libpq/hba.c:1935
 #, c-format
 msgid "invalid regular expression \"%s\": %s"
 msgstr "espressione regolare non valida \"%s\": %s"
 
-#: libpq/hba.c:2008
+#: libpq/hba.c:1995
 #, c-format
 msgid "regular expression match for \"%s\" failed: %s"
 msgstr "corrispondenza dell'espressione regolare \"%s\" fallita: %s"
 
-#: libpq/hba.c:2025
+#: libpq/hba.c:2012
 #, c-format
 msgid "regular expression \"%s\" has no subexpressions as requested by backreference in \"%s\""
 msgstr "l'espressione regolare \"%s\" non ha la sottoespressione richiesta dal riferimento in \"%s\""
 
-#: libpq/hba.c:2121
+#: libpq/hba.c:2108
 #, c-format
 msgid "provided user name (%s) and authenticated user name (%s) do not match"
 msgstr "il nome utente fornito (%s) e il nome utente autenticato (%s) non combaciano"
 
-#: libpq/hba.c:2141
+#: libpq/hba.c:2128
 #, c-format
 msgid "no match in usermap \"%s\" for user \"%s\" authenticated as \"%s\""
 msgstr "nessuna corrispondenza nella mappa utenti \"%s\" per l'utente \"%s\" autenticato come \"%s\""
 
-#: libpq/hba.c:2176
+#: libpq/hba.c:2163
 #, c-format
 msgid "could not open usermap file \"%s\": %m"
 msgstr "apertura del file usermap \"%s\" fallita: %m"
@@ -9782,7 +10182,7 @@ msgid "no data left in message"
 msgstr "nessun dato rimasto nel messaggio"
 
 #: libpq/pqformat.c:556 libpq/pqformat.c:574 libpq/pqformat.c:595
-#: utils/adt/arrayfuncs.c:1416 utils/adt/rowtypes.c:559
+#: utils/adt/arrayfuncs.c:1416 utils/adt/rowtypes.c:561
 #, c-format
 msgid "insufficient data left in message"
 msgstr "i dati rimasti nel messaggio non sono sufficienti"
@@ -9797,17 +10197,17 @@ msgstr "stringa non valida nel messaggio"
 msgid "invalid message format"
 msgstr "formato del messaggio non valido"
 
-#: main/main.c:241
+#: main/main.c:262
 #, c-format
 msgid "%s: setsysinfo failed: %s\n"
 msgstr "%s: setsysinfo fallita: %s\n"
 
-#: main/main.c:263
+#: main/main.c:284
 #, c-format
 msgid "%s: WSAStartup failed: %d\n"
 msgstr "%s: WSAStartup fallita: %d\n"
 
-#: main/main.c:282
+#: main/main.c:313
 #, c-format
 msgid ""
 "%s is the PostgreSQL server.\n"
@@ -9816,7 +10216,7 @@ msgstr ""
 "%s è il server PostgreSQL.\n"
 "\n"
 
-#: main/main.c:283
+#: main/main.c:314
 #, c-format
 msgid ""
 "Usage:\n"
@@ -9827,119 +10227,119 @@ msgstr ""
 "  %s [OPZIONE]...\n"
 "\n"
 
-#: main/main.c:284
+#: main/main.c:315
 #, c-format
 msgid "Options:\n"
 msgstr "Opzioni:\n"
 
-#: main/main.c:286
+#: main/main.c:317
 #, c-format
 msgid "  -A 1|0             enable/disable run-time assert checking\n"
 msgstr "  -A 1|0             abilita/disabilita il controllo delle asserzioni in esecuzione\n"
 
-#: main/main.c:288
+#: main/main.c:319
 #, c-format
 msgid "  -B NBUFFERS        number of shared buffers\n"
 msgstr "  -B NBUFFERS        numero di buffer condivisi\n"
 
-#: main/main.c:289
+#: main/main.c:320
 #, c-format
 msgid "  -c NAME=VALUE      set run-time parameter\n"
 msgstr "  -c NOME=VALORE     imposta un parametro di esecuzione\n"
 
-#: main/main.c:290
+#: main/main.c:321
 #, c-format
 msgid "  -C NAME            print value of run-time parameter, then exit\n"
 msgstr "  -C NAME            stampa il valore del parametro di esecuzione ed esci\n"
 
-#: main/main.c:291
+#: main/main.c:322
 #, c-format
 msgid "  -d 1-5             debugging level\n"
 msgstr "  -d 1-5             livello di debugging\n"
 
-#: main/main.c:292
+#: main/main.c:323
 #, c-format
 msgid "  -D DATADIR         database directory\n"
 msgstr "  -D DATADIR         directory del database\n"
 
-#: main/main.c:293
+#: main/main.c:324
 #, c-format
 msgid "  -e                 use European date input format (DMY)\n"
 msgstr "  -e                 usa il formato date europeo (GMA)\n"
 
-#: main/main.c:294
+#: main/main.c:325
 #, c-format
 msgid "  -F                 turn fsync off\n"
 msgstr "  -F                 disabilita fsync\n"
 
-#: main/main.c:295
+#: main/main.c:326
 #, c-format
 msgid "  -h HOSTNAME        host name or IP address to listen on\n"
 msgstr "  -h HOSTNAME        nome host o indirizzo IP su cui ascoltare\n"
 
-#: main/main.c:296
+#: main/main.c:327
 #, c-format
 msgid "  -i                 enable TCP/IP connections\n"
 msgstr "  -i                 abilita le connessioni TCP/IP\n"
 
-#: main/main.c:297
+#: main/main.c:328
 #, c-format
 msgid "  -k DIRECTORY       Unix-domain socket location\n"
 msgstr "  -k DIRECTORY       posizione dei socket di dominio Unix\n"
 
-#: main/main.c:299
+#: main/main.c:330
 #, c-format
 msgid "  -l                 enable SSL connections\n"
 msgstr "  -l                 abilita la connessione SSL\n"
 
-#: main/main.c:301
+#: main/main.c:332
 #, c-format
 msgid "  -N MAX-CONNECT     maximum number of allowed connections\n"
 msgstr "  -N MAX-CONNECT     numero massimo di connessioni consentite\n"
 
-#: main/main.c:302
+#: main/main.c:333
 #, c-format
 msgid "  -o OPTIONS         pass \"OPTIONS\" to each server process (obsolete)\n"
 msgstr "  -o OPZIONI         passa \"OPZIONI\" ad ogni processo server (obsoleto)\n"
 
-#: main/main.c:303
+#: main/main.c:334
 #, c-format
 msgid "  -p PORT            port number to listen on\n"
 msgstr "  -p PORT            numero di porta sul quale ascoltare\n"
 
-#: main/main.c:304
+#: main/main.c:335
 #, c-format
 msgid "  -s                 show statistics after each query\n"
 msgstr "  -s                 mostra le statistiche dopo ogni query\n"
 
-#: main/main.c:305
+#: main/main.c:336
 #, c-format
 msgid "  -S WORK-MEM        set amount of memory for sorts (in kB)\n"
 msgstr ""
 "  -S WORK-MEM        imposta la dimensione della memoria per gli ordinamenti\n"
 "                     (in kB)\n"
 
-#: main/main.c:306
+#: main/main.c:337
 #, c-format
 msgid "  -V, --version      output version information, then exit\n"
 msgstr "  -V, --version      mostra informazioni sulla versione ed esci\n"
 
-#: main/main.c:307
+#: main/main.c:338
 #, c-format
 msgid "  --NAME=VALUE       set run-time parameter\n"
 msgstr "  --NOME=VALORE      imposta un parametro di esecuzione\n"
 
-#: main/main.c:308
+#: main/main.c:339
 #, c-format
 msgid "  --describe-config  describe configuration parameters, then exit\n"
 msgstr "  --describe-config  descrivi i parametri di configurazione ed esci\n"
 
-#: main/main.c:309
+#: main/main.c:340
 #, c-format
 msgid "  -?, --help         show this help, then exit\n"
 msgstr "  -?, --help         mostra questo aiuto ed esci\n"
 
-#: main/main.c:311
+#: main/main.c:342
 #, c-format
 msgid ""
 "\n"
@@ -9948,48 +10348,48 @@ msgstr ""
 "\n"
 "Opzioni per gli sviluppatori:\n"
 
-#: main/main.c:312
+#: main/main.c:343
 #, c-format
 msgid "  -f s|i|n|m|h       forbid use of some plan types\n"
 msgstr "  -f s|i|n|m|h       vieta l'uso di alcuni tipi di piani\n"
 
-#: main/main.c:313
+#: main/main.c:344
 #, c-format
 msgid "  -n                 do not reinitialize shared memory after abnormal exit\n"
 msgstr ""
 "  -n                 non reinizializzare la memoria condivisa dopo un'uscita\n"
 "                     anormale\n"
 
-#: main/main.c:314
+#: main/main.c:345
 #, c-format
 msgid "  -O                 allow system table structure changes\n"
 msgstr ""
 "  -O                 consenti cambiamenti alla struttura delle tabelle\n"
 "                     di sistema\n"
 
-#: main/main.c:315
+#: main/main.c:346
 #, c-format
 msgid "  -P                 disable system indexes\n"
 msgstr "  -P                 disabilita gli indici di sistema\n"
 
-#: main/main.c:316
+#: main/main.c:347
 #, c-format
 msgid "  -t pa|pl|ex        show timings after each query\n"
 msgstr "  -t pa|pl|ex        mostra i tempi impiegati dopo ogni query\n"
 
-#: main/main.c:317
+#: main/main.c:348
 #, c-format
 msgid "  -T                 send SIGSTOP to all backend processes if one dies\n"
 msgstr "  -T                 invia SIGSTOP a tutti i processi backend se uno muore\n"
 
-#: main/main.c:318
+#: main/main.c:349
 #, c-format
 msgid "  -W NUM             wait NUM seconds to allow attach from a debugger\n"
 msgstr ""
 "  -W NUM             attendi NUM secondi per consentire ad un debugger\n"
 "                     di collegarsi\n"
 
-#: main/main.c:320
+#: main/main.c:351
 #, c-format
 msgid ""
 "\n"
@@ -9998,41 +10398,41 @@ msgstr ""
 "\n"
 "Opzione per la modalità a singolo utente:\n"
 
-#: main/main.c:321
+#: main/main.c:352
 #, c-format
 msgid "  --single           selects single-user mode (must be first argument)\n"
 msgstr ""
 "  --single           imposta la modalità utente singolo (deve essere il primo\n"
 "                     argomento)\n"
 
-#: main/main.c:322
+#: main/main.c:353
 #, c-format
 msgid "  DBNAME             database name (defaults to user name)\n"
 msgstr "  DBNAME             nome del database (il predefinito è il nome dell'utente)\n"
 
-#: main/main.c:323
+#: main/main.c:354
 #, c-format
 msgid "  -d 0-5             override debugging level\n"
 msgstr "  -d 0-5             scavalca il livello di debugging\n"
 
-#: main/main.c:324
+#: main/main.c:355
 #, c-format
 msgid "  -E                 echo statement before execution\n"
 msgstr "  -E                 stampa le istruzioni prima dell'esecuzione\n"
 
-#: main/main.c:325
+#: main/main.c:356
 #, c-format
 msgid "  -j                 do not use newline as interactive query delimiter\n"
 msgstr ""
 "  -j                 non usare \"a capo\" come delimitatore delle query\n"
 "                     interattivo\n"
 
-#: main/main.c:326 main/main.c:331
+#: main/main.c:357 main/main.c:362
 #, c-format
 msgid "  -r FILENAME        send stdout and stderr to given file\n"
-msgstr "  -r FILENAME        invia stdout e stderr al file in argomento\n"
+msgstr "  -r NOMEFILE        invia stdout e stderr al file in argomento\n"
 
-#: main/main.c:328
+#: main/main.c:359
 #, c-format
 msgid ""
 "\n"
@@ -10041,26 +10441,26 @@ msgstr ""
 "\n"
 "Opzioni per la modalità di inizializzazione:\n"
 
-#: main/main.c:329
+#: main/main.c:360
 #, c-format
 msgid "  --boot             selects bootstrapping mode (must be first argument)\n"
 msgstr ""
 "  --boot             seleziona la modalità di inizializzazione (dev'essere\n"
 "                     il primo argomento)\n"
 
-#: main/main.c:330
+#: main/main.c:361
 #, c-format
 msgid "  DBNAME             database name (mandatory argument in bootstrapping mode)\n"
 msgstr ""
 "  DBNAME             nome del database (obbligatorio in modalità di\n"
 "                     inizializzazione)\n"
 
-#: main/main.c:332
+#: main/main.c:363
 #, c-format
 msgid "  -x NUM             internal use\n"
 msgstr "  -x NUM             uso interno\n"
 
-#: main/main.c:334
+#: main/main.c:365
 #, c-format
 msgid ""
 "\n"
@@ -10077,7 +10477,7 @@ msgstr ""
 "\n"
 "Puoi segnalare eventuali bug a .\n"
 
-#: main/main.c:348
+#: main/main.c:379
 #, c-format
 msgid ""
 "\"root\" execution of the PostgreSQL server is not permitted.\n"
@@ -10090,12 +10490,12 @@ msgstr ""
 "prevenire possibili problemi di sicurezza. Consulta la documentazione\n"
 "per avere maggiori informazioni su come avviare il server correttamente.\n"
 
-#: main/main.c:365
+#: main/main.c:396
 #, c-format
 msgid "%s: real and effective user IDs must match\n"
 msgstr "%s: utente gli ID reale e quello effettivo devono coincidere\n"
 
-#: main/main.c:372
+#: main/main.c:403
 #, c-format
 msgid ""
 "Execution of PostgreSQL by a user with administrative permissions is not\n"
@@ -10110,19 +10510,9 @@ msgstr ""
 "prevenire possibili problemi di sicurezza. Consulta la documentazione\n"
 "per avere maggiori informazioni su come avviare il server correttamente.\n"
 
-#: main/main.c:393
-#, c-format
-msgid "%s: invalid effective UID: %d\n"
-msgstr "%s: UID effettivo non valido: %d\n"
-
-#: main/main.c:406
-#, c-format
-msgid "%s: could not determine user name (GetUserName failed)\n"
-msgstr "%s: non è stato possibile determinare il nome utente (GetUserName fallita)\n"
-
 #: nodes/nodeFuncs.c:115 nodes/nodeFuncs.c:141 parser/parse_coerce.c:1782
 #: parser/parse_coerce.c:1810 parser/parse_coerce.c:1886
-#: parser/parse_expr.c:1722 parser/parse_func.c:369 parser/parse_oper.c:948
+#: parser/parse_expr.c:1739 parser/parse_func.c:590 parser/parse_oper.c:948
 #, c-format
 msgid "could not find array type for data type %s"
 msgstr "non è stato possibile trovare il tipo di array per il tipo di dati %s"
@@ -10139,70 +10529,70 @@ msgid "%s cannot be applied to the nullable side of an outer join"
 msgstr "%s non può essere applicato sul lato che può essere nullo di un join esterno"
 
 #. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: optimizer/plan/planner.c:1093 parser/analyze.c:1334 parser/analyze.c:1532
-#: parser/analyze.c:2278
+#: optimizer/plan/planner.c:1158 parser/analyze.c:1334 parser/analyze.c:1532
+#: parser/analyze.c:2291
 #, c-format
 msgid "%s is not allowed with UNION/INTERSECT/EXCEPT"
 msgstr "%s non è consentito con UNION/INTERSECT/EXCEPT"
 
-#: optimizer/plan/planner.c:2515
+#: optimizer/plan/planner.c:2723
 #, c-format
 msgid "could not implement GROUP BY"
 msgstr "non è stato possibile implementare GROUP BY"
 
-#: optimizer/plan/planner.c:2516 optimizer/plan/planner.c:2688
-#: optimizer/prep/prepunion.c:824
+#: optimizer/plan/planner.c:2724 optimizer/plan/planner.c:2892
+#: optimizer/prep/prepunion.c:825
 #, c-format
 msgid "Some of the datatypes only support hashing, while others only support sorting."
 msgstr "Alcuni dei tipi di dati supportano solo l'hashing, mentre altri supportano solo l'ordinamento."
 
-#: optimizer/plan/planner.c:2687
+#: optimizer/plan/planner.c:2891
 #, c-format
 msgid "could not implement DISTINCT"
 msgstr "non è stato possibile implementare DISTINCT"
 
-#: optimizer/plan/planner.c:3297
+#: optimizer/plan/planner.c:3497
 #, c-format
 msgid "could not implement window PARTITION BY"
 msgstr "non è stato possibile implementare PARTITION BY della finestra"
 
-#: optimizer/plan/planner.c:3298
+#: optimizer/plan/planner.c:3498
 #, c-format
 msgid "Window partitioning columns must be of sortable datatypes."
 msgstr "La colonna di partizionamento della finestra dev'essere un tipo di dato ordinabile."
 
-#: optimizer/plan/planner.c:3302
+#: optimizer/plan/planner.c:3502
 #, c-format
 msgid "could not implement window ORDER BY"
 msgstr "non è stato possibile implementare ORDER BY della finestra"
 
-#: optimizer/plan/planner.c:3303
+#: optimizer/plan/planner.c:3503
 #, c-format
 msgid "Window ordering columns must be of sortable datatypes."
 msgstr "La colonna di ordinamento della finestra dev'essere un tipo di dato ordinabile."
 
-#: optimizer/plan/setrefs.c:405
+#: optimizer/plan/setrefs.c:402
 #, c-format
 msgid "too many range table entries"
 msgstr "troppi intervalli di tabella"
 
-#: optimizer/prep/prepunion.c:418
+#: optimizer/prep/prepunion.c:419
 #, c-format
 msgid "could not implement recursive UNION"
 msgstr "non è stato possibile implementare la UNION ricorsiva"
 
-#: optimizer/prep/prepunion.c:419
+#: optimizer/prep/prepunion.c:420
 #, c-format
 msgid "All column datatypes must be hashable."
 msgstr "Tutti i tipi di dati devono supportare l'hash."
 
 #. translator: %s is UNION, INTERSECT, or EXCEPT
-#: optimizer/prep/prepunion.c:823
+#: optimizer/prep/prepunion.c:824
 #, c-format
 msgid "could not implement %s"
 msgstr "non è stato possibile implementare %s"
 
-#: optimizer/util/clauses.c:4438
+#: optimizer/util/clauses.c:4519
 #, c-format
 msgid "SQL function \"%s\" during inlining"
 msgstr "funzione SQL \"%s\" durante l'inlining"
@@ -10243,7 +10633,7 @@ msgid "DEFAULT can only appear in a VALUES list within INSERT"
 msgstr "DEFAULT può apparire solo nella lista di VALUES usata in un INSERT"
 
 #. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:1239 parser/analyze.c:2450
+#: parser/analyze.c:1239 parser/analyze.c:2463
 #, c-format
 msgid "%s cannot be applied to VALUES"
 msgstr "%s non è consentito con VALUES"
@@ -10278,373 +10668,433 @@ msgstr "l'istruzione membro di UNION/INTERSECT/EXCEPT non può riferirsi al altr
 msgid "each %s query must have the same number of columns"
 msgstr "ogni query in %s deve avere lo stesso numero di colonne"
 
-#: parser/analyze.c:2079
+#: parser/analyze.c:2055
+#, c-format
+msgid "RETURNING must have at least one column"
+msgstr "RETURNING deve avere almeno una colonna"
+
+#: parser/analyze.c:2092
 #, c-format
 msgid "cannot specify both SCROLL and NO SCROLL"
 msgstr "non è possibile specificare sia SCROLL che NO SCROLL"
 
-#: parser/analyze.c:2097
+#: parser/analyze.c:2110
 #, c-format
 msgid "DECLARE CURSOR must not contain data-modifying statements in WITH"
 msgstr "DECLARE CURSOR non può contenere istruzioni di modifica dei dati nel WITH"
 
 #. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:2105
+#: parser/analyze.c:2118
 #, c-format
 msgid "DECLARE CURSOR WITH HOLD ... %s is not supported"
 msgstr "DECLARE CURSOR WITH HOLD ... %s non è supportato"
 
-#: parser/analyze.c:2108
+#: parser/analyze.c:2121
 #, c-format
 msgid "Holdable cursors must be READ ONLY."
 msgstr "I cursori trattenibili devono essere READ ONLY."
 
 #. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:2116
+#: parser/analyze.c:2129
 #, c-format
 msgid "DECLARE SCROLL CURSOR ... %s is not supported"
 msgstr "DECLARE SCROLL CURSOR ... %s non è supportato"
 
 #. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:2127
+#: parser/analyze.c:2140
 #, c-format
 msgid "DECLARE INSENSITIVE CURSOR ... %s is not supported"
 msgstr "DECLARE INSENSITIVE CURSOR ... %s non è supportato"
 
-#: parser/analyze.c:2130
+#: parser/analyze.c:2143
 #, c-format
 msgid "Insensitive cursors must be READ ONLY."
 msgstr "I cursori Insensitive devono essere READ ONLY."
 
-#: parser/analyze.c:2196
+#: parser/analyze.c:2209
 #, c-format
 msgid "materialized views must not use data-modifying statements in WITH"
 msgstr "le viste materializzate non possono usare istruzioni di modifica dei dati nel WITH"
 
-#: parser/analyze.c:2206
+#: parser/analyze.c:2219
 #, c-format
 msgid "materialized views must not use temporary tables or views"
 msgstr "le viste materializzate non possono usare tabelle temporanee o viste"
 
-#: parser/analyze.c:2216
+#: parser/analyze.c:2229
 #, c-format
 msgid "materialized views may not be defined using bound parameters"
 msgstr "le viste materializzate non possono essere definite con parametri impostati"
 
-#: parser/analyze.c:2228
+#: parser/analyze.c:2241
 #, c-format
 msgid "materialized views cannot be UNLOGGED"
 msgstr "le viste materializzate non possono essere UNLOGGED"
 
 #. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:2285
+#: parser/analyze.c:2298
 #, c-format
 msgid "%s is not allowed with DISTINCT clause"
 msgstr "%s non è consentito con la clausola DISTINCT"
 
 #. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:2292
+#: parser/analyze.c:2305
 #, c-format
 msgid "%s is not allowed with GROUP BY clause"
 msgstr "%s non è consentito con la clausola GROUP BY"
 
 #. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:2299
+#: parser/analyze.c:2312
 #, c-format
 msgid "%s is not allowed with HAVING clause"
 msgstr "%s non è consentito con la clausola HAVING"
 
 #. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:2306
+#: parser/analyze.c:2319
 #, c-format
 msgid "%s is not allowed with aggregate functions"
 msgstr "%s non è consentito con funzioni di aggregazione"
 
 #. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:2313
+#: parser/analyze.c:2326
 #, c-format
 msgid "%s is not allowed with window functions"
 msgstr "%s non è consentito con funzioni finestra"
 
 #. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:2320
+#: parser/analyze.c:2333
 #, c-format
 msgid "%s is not allowed with set-returning functions in the target list"
 msgstr "%s non è consentito con la le funzioni che restituiscono insiemi nella lista di destinazione"
 
 #. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:2399
+#: parser/analyze.c:2412
 #, c-format
 msgid "%s must specify unqualified relation names"
 msgstr "%s deve specificare nomi di tabelle non qualificati"
 
 #. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:2432
+#: parser/analyze.c:2445
 #, c-format
 msgid "%s cannot be applied to a join"
 msgstr "%s non può essere applicato ad un join"
 
 #. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:2441
+#: parser/analyze.c:2454
 #, c-format
 msgid "%s cannot be applied to a function"
 msgstr "%s non può essere applicato ad una funzione"
 
 #. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:2459
+#: parser/analyze.c:2472
 #, c-format
 msgid "%s cannot be applied to a WITH query"
 msgstr "%s non può essere applicato ad una query WITH"
 
 #. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:2476
+#: parser/analyze.c:2489
 #, c-format
 msgid "relation \"%s\" in %s clause not found in FROM clause"
 msgstr "la relazione \"%s\" nella clausola %s non è stata trovata nella clausola FROM"
 
-#: parser/parse_agg.c:144 parser/parse_oper.c:219
+#: parser/parse_agg.c:201 parser/parse_oper.c:219
 #, c-format
 msgid "could not identify an ordering operator for type %s"
 msgstr "non è stato possibile identificare un operatore di ordinamento per il tipo %s"
 
-#: parser/parse_agg.c:146
+#: parser/parse_agg.c:203
 #, c-format
 msgid "Aggregates with DISTINCT must be able to sort their inputs."
-msgstr "Gli aggregati cin DISTINCT devono essere in grado di ordinare i loro input."
+msgstr "Gli aggregati con DISTINCT devono essere in grado di ordinare i loro input."
 
-#: parser/parse_agg.c:193
+#: parser/parse_agg.c:254
 msgid "aggregate functions are not allowed in JOIN conditions"
 msgstr "le funzioni di aggregazione non sono ammesse nelle condizioni di JOIN"
 
-#: parser/parse_agg.c:199
+#: parser/parse_agg.c:260
 msgid "aggregate functions are not allowed in FROM clause of their own query level"
 msgstr "le funzioni di aggregazione non sono ammesse nella clausola FROM del loro stesso livello della query"
 
-#: parser/parse_agg.c:202
+#: parser/parse_agg.c:263
 msgid "aggregate functions are not allowed in functions in FROM"
 msgstr "le funzioni di aggregazione non sono ammesse nelle funzioni in FROM"
 
-#: parser/parse_agg.c:217
+#: parser/parse_agg.c:281
 msgid "aggregate functions are not allowed in window RANGE"
 msgstr "le funzioni di aggregazione non sono ammesse nel RANGE della finestra"
 
-#: parser/parse_agg.c:220
+#: parser/parse_agg.c:284
 msgid "aggregate functions are not allowed in window ROWS"
 msgstr "le funzioni di aggregazione non sono ammesse nel ROWS della finestra"
 
-#: parser/parse_agg.c:251
+#: parser/parse_agg.c:315
 msgid "aggregate functions are not allowed in check constraints"
 msgstr "le funzioni di aggregazione non sono ammesse nei vincoli di controllo"
 
-#: parser/parse_agg.c:255
+#: parser/parse_agg.c:319
 msgid "aggregate functions are not allowed in DEFAULT expressions"
 msgstr "le funzioni di aggregazione non sono ammesse nelle espressioni DEFAULT"
 
-#: parser/parse_agg.c:258
+#: parser/parse_agg.c:322
 msgid "aggregate functions are not allowed in index expressions"
 msgstr "le funzioni di aggregazione non sono ammesse nelle espressioni degli indici"
 
-#: parser/parse_agg.c:261
+#: parser/parse_agg.c:325
 msgid "aggregate functions are not allowed in index predicates"
 msgstr "le funzioni di aggregazione non sono ammesse nei predicati degli indici"
 
-#: parser/parse_agg.c:264
+#: parser/parse_agg.c:328
 msgid "aggregate functions are not allowed in transform expressions"
 msgstr "le funzioni di aggregazione non sono ammesse nelle espressioni di trasformazione"
 
-#: parser/parse_agg.c:267
+#: parser/parse_agg.c:331
 msgid "aggregate functions are not allowed in EXECUTE parameters"
 msgstr "le funzioni di aggregazione non sono ammesse nei parametri di EXECUTE"
 
-#: parser/parse_agg.c:270
+#: parser/parse_agg.c:334
 msgid "aggregate functions are not allowed in trigger WHEN conditions"
 msgstr "le funzioni di aggregazione non sono ammesse nelle condizioni WHEN dei trigger"
 
 #. translator: %s is name of a SQL construct, eg GROUP BY
-#: parser/parse_agg.c:290 parser/parse_clause.c:1291
+#: parser/parse_agg.c:354 parser/parse_clause.c:1407
 #, c-format
 msgid "aggregate functions are not allowed in %s"
 msgstr "le funzioni di aggregazione non sono ammesse in %s"
 
-#: parser/parse_agg.c:396
+#: parser/parse_agg.c:457
+#, c-format
+msgid "outer-level aggregate cannot contain a lower-level variable in its direct arguments"
+msgstr "gli aggregati di livello esterno non possono contenere una variabile di livello inferiore tra gli argomenti diretti"
+
+#: parser/parse_agg.c:514
 #, c-format
 msgid "aggregate function calls cannot contain window function calls"
 msgstr "le chiamate a funzioni di aggregazione non possono contenere chiamate a funzioni finestra"
 
-#: parser/parse_agg.c:469
+#: parser/parse_agg.c:591
 msgid "window functions are not allowed in JOIN conditions"
 msgstr "le funzioni finestra non sono ammesse nelle condizioni JOIN"
 
-#: parser/parse_agg.c:476
+#: parser/parse_agg.c:598
 msgid "window functions are not allowed in functions in FROM"
 msgstr "le funzioni finestra non sono ammesse nelle funzioni in FROM"
 
-#: parser/parse_agg.c:488
+#: parser/parse_agg.c:613
 msgid "window functions are not allowed in window definitions"
 msgstr "le funzioni finestra non sono ammesse nelle definizioni di finestre"
 
-#: parser/parse_agg.c:519
+#: parser/parse_agg.c:644
 msgid "window functions are not allowed in check constraints"
 msgstr "le funzioni finestra non sono ammesse nei vincoli di controllo"
 
-#: parser/parse_agg.c:523
+#: parser/parse_agg.c:648
 msgid "window functions are not allowed in DEFAULT expressions"
 msgstr "le funzioni finestra non sono ammesse nelle espressioni DEFAULT"
 
-#: parser/parse_agg.c:526
+#: parser/parse_agg.c:651
 msgid "window functions are not allowed in index expressions"
 msgstr "le funzioni finestra non sono ammesse nelle espressioni degli indici"
 
-#: parser/parse_agg.c:529
+#: parser/parse_agg.c:654
 msgid "window functions are not allowed in index predicates"
 msgstr "le funzioni finestra non sono ammesse nei predicati degli indici"
 
-#: parser/parse_agg.c:532
+#: parser/parse_agg.c:657
 msgid "window functions are not allowed in transform expressions"
 msgstr "le funzioni finestra non sono ammesse nelle espressioni di trasformazione"
 
-#: parser/parse_agg.c:535
+#: parser/parse_agg.c:660
 msgid "window functions are not allowed in EXECUTE parameters"
 msgstr "le funzioni finestra non sono ammesse nei parametri di EXECUTE"
 
-#: parser/parse_agg.c:538
+#: parser/parse_agg.c:663
 msgid "window functions are not allowed in trigger WHEN conditions"
 msgstr "le funzioni finestra non sono ammesse nelle condizioni WHEN dei trigger"
 
 #. translator: %s is name of a SQL construct, eg GROUP BY
-#: parser/parse_agg.c:558 parser/parse_clause.c:1300
+#: parser/parse_agg.c:683 parser/parse_clause.c:1416
 #, c-format
 msgid "window functions are not allowed in %s"
 msgstr "le funzioni finestra non sono ammesse in %s"
 
-#: parser/parse_agg.c:592 parser/parse_clause.c:1711
+#: parser/parse_agg.c:717 parser/parse_clause.c:1827
 #, c-format
 msgid "window \"%s\" does not exist"
 msgstr "la finestra \"%s\" non esiste"
 
-#: parser/parse_agg.c:754
+#: parser/parse_agg.c:879
 #, c-format
 msgid "aggregate functions are not allowed in a recursive query's recursive term"
-msgstr "le funzioni di aggregazione non sono ammesse nel termine ricosivo di una query ricorsiva"
+msgstr "le funzioni di aggregazione non sono ammesse nel termine ricorsivo di una query ricorsiva"
 
-#: parser/parse_agg.c:909
+#: parser/parse_agg.c:1057
 #, c-format
 msgid "column \"%s.%s\" must appear in the GROUP BY clause or be used in an aggregate function"
 msgstr "la colonna \"%s.%s\" deve comparire nella clausola GROUP BY o essere usata in una funzione di aggregazione"
 
-#: parser/parse_agg.c:915
+#: parser/parse_agg.c:1060
+#, c-format
+msgid "Direct arguments of an ordered-set aggregate must use only grouped columns."
+msgstr "Gli argomenti diretti di un aggregato su insieme ordinato devono usare solo colonne raggruppate."
+
+#: parser/parse_agg.c:1065
 #, c-format
 msgid "subquery uses ungrouped column \"%s.%s\" from outer query"
 msgstr "la sottoquery usa la colonna non raggruppata \"%s.%s\" dalla query esterna"
 
-#: parser/parse_clause.c:851
+#: parser/parse_clause.c:636
+#, c-format
+msgid "multiple column definition lists are not allowed for the same function"
+msgstr "non è consentita più di una lista di definizione di colonne multiple per la stessa funzione"
+
+#: parser/parse_clause.c:669
+#, c-format
+msgid "ROWS FROM() with multiple functions cannot have a column definition list"
+msgstr "ROWS FROM() con più di una funzione non può avere una lista di definizioni di colonne"
+
+#: parser/parse_clause.c:670
+#, c-format
+msgid "Put a separate column definition list for each function inside ROWS FROM()."
+msgstr "Specifica una lista di definizioni colonna separata per ogni funzione dentro ROWS FROM()"
+
+#: parser/parse_clause.c:676
+#, c-format
+msgid "UNNEST() with multiple arguments cannot have a column definition list"
+msgstr "UNNEST() con più di un argomento non può avere una lista di definizioni di colonne"
+
+#: parser/parse_clause.c:677
+#, c-format
+msgid "Use separate UNNEST() calls inside ROWS FROM(), and attach a column definition list to each one."
+msgstr "Usa una invocazione di UNNEST() separata in ROWS FROM() e collega una lista di definizioni di colonne ad ognuna di esse."
+
+#: parser/parse_clause.c:684
+#, c-format
+msgid "WITH ORDINALITY cannot be used with a column definition list"
+msgstr "WITH ORDINALITY non può essere usata con una lista di definizioni di colonne"
+
+#: parser/parse_clause.c:685
+#, c-format
+msgid "Put the column definition list inside ROWS FROM()."
+msgstr "Specifica la lista di definizioni di colonne dentro ROWS FROM()."
+
+#: parser/parse_clause.c:967
 #, c-format
 msgid "column name \"%s\" appears more than once in USING clause"
 msgstr "il nome della colonna \"%s\" compare più di una volta nella clausola USING"
 
-#: parser/parse_clause.c:866
+#: parser/parse_clause.c:982
 #, c-format
 msgid "common column name \"%s\" appears more than once in left table"
 msgstr "il nome comune della colonna \"%s\" compare più di una volta nella tabella di sinistra"
 
-#: parser/parse_clause.c:875
+#: parser/parse_clause.c:991
 #, c-format
 msgid "column \"%s\" specified in USING clause does not exist in left table"
 msgstr "la colonna \"%s\" specificata nella clausola USING non esiste nella tabella di sinistra"
 
-#: parser/parse_clause.c:889
+#: parser/parse_clause.c:1005
 #, c-format
 msgid "common column name \"%s\" appears more than once in right table"
 msgstr "il nome comune della colonna \"%s\" compare più di una volta nella tabella di destra"
 
-#: parser/parse_clause.c:898
+#: parser/parse_clause.c:1014
 #, c-format
 msgid "column \"%s\" specified in USING clause does not exist in right table"
 msgstr "la colonna \"%s\" specificata nella clausola USING non esiste nella tabella di destra"
 
-#: parser/parse_clause.c:952
+#: parser/parse_clause.c:1068
 #, c-format
 msgid "column alias list for \"%s\" has too many entries"
 msgstr "la lista di alias delle colonne per \"%s\" ha troppi elementi"
 
 #. translator: %s is name of a SQL construct, eg LIMIT
-#: parser/parse_clause.c:1261
+#: parser/parse_clause.c:1377
 #, c-format
 msgid "argument of %s must not contain variables"
 msgstr "l'argomento di %s non può contenere variabili"
 
 #. translator: first %s is name of a SQL construct, eg ORDER BY
-#: parser/parse_clause.c:1426
+#: parser/parse_clause.c:1542
 #, c-format
 msgid "%s \"%s\" is ambiguous"
 msgstr "%s \"%s\" è ambiguo"
 
 #. translator: %s is name of a SQL construct, eg ORDER BY
-#: parser/parse_clause.c:1455
+#: parser/parse_clause.c:1571
 #, c-format
 msgid "non-integer constant in %s"
 msgstr "costante non intera in %s"
 
 #  translator: %s is name of a SQL construct, eg ORDER BY
 #. translator: %s is name of a SQL construct, eg ORDER BY
-#: parser/parse_clause.c:1477
+#: parser/parse_clause.c:1593
 #, c-format
 msgid "%s position %d is not in select list"
 msgstr "%s in posizione %d non è nella lista SELECT"
 
-#: parser/parse_clause.c:1699
+#: parser/parse_clause.c:1815
 #, c-format
 msgid "window \"%s\" is already defined"
 msgstr "la finestra \"%s\" è già definita"
 
-#: parser/parse_clause.c:1760
+#: parser/parse_clause.c:1876
 #, c-format
 msgid "cannot override PARTITION BY clause of window \"%s\""
 msgstr "non è possibile scavalcare la clausola PARTITION BY della finestra \"%s\""
 
-#: parser/parse_clause.c:1772
+#: parser/parse_clause.c:1888
 #, c-format
 msgid "cannot override ORDER BY clause of window \"%s\""
 msgstr "non è possibile scavalcare la clausola ORDER BY della finestra \"%s\""
 
-#: parser/parse_clause.c:1802 parser/parse_clause.c:1808
+#: parser/parse_clause.c:1918 parser/parse_clause.c:1924
 #, c-format
 msgid "cannot copy window \"%s\" because it has a frame clause"
 msgstr "non è possibile copiare la finestra \"%s\" perché ha una clausola frame"
 
-#: parser/parse_clause.c:1810
+#: parser/parse_clause.c:1926
 #, c-format
 msgid "Omit the parentheses in this OVER clause."
 msgstr "Omettere le parentesi in questa clausola OVER."
 
-#: parser/parse_clause.c:1876
+#: parser/parse_clause.c:1992
 #, c-format
 msgid "in an aggregate with DISTINCT, ORDER BY expressions must appear in argument list"
 msgstr "in un aggregato con DISTINCT, le espressioni ORDER BY devono figurare nella lista di argomenti"
 
-#: parser/parse_clause.c:1877
+#: parser/parse_clause.c:1993
 #, c-format
 msgid "for SELECT DISTINCT, ORDER BY expressions must appear in select list"
 msgstr "per SELECT DISTINCT, le espressioni ORDER BY devono figurare nella lista di argomenti"
 
-#: parser/parse_clause.c:1963 parser/parse_clause.c:1995
+#: parser/parse_clause.c:2026
+#, c-format
+msgid "an aggregate with DISTINCT must have at least one argument"
+msgstr "un aggregato con DISTINCT deve avere almeno un argomento"
+
+#: parser/parse_clause.c:2027
+#, c-format
+msgid "SELECT DISTINCT must have at least one column"
+msgstr "SELECT DISTINCT deve avere almeno una colonna"
+
+#: parser/parse_clause.c:2093 parser/parse_clause.c:2125
 #, c-format
 msgid "SELECT DISTINCT ON expressions must match initial ORDER BY expressions"
 msgstr "le espressioni SELECT DISTINCT ON devono coincidere con l'espressione ORDER BY iniziale"
 
-#: parser/parse_clause.c:2117
+#: parser/parse_clause.c:2253
 #, c-format
 msgid "operator %s is not a valid ordering operator"
 msgstr "l'operatore %s non è un operatore di ordinamento valido"
 
-#: parser/parse_clause.c:2119
+#: parser/parse_clause.c:2255
 #, c-format
 msgid "Ordering operators must be \"<\" or \">\" members of btree operator families."
 msgstr "Gli operatori di ordinamento devono essere i membri \"<\" oppure \">\" di una famiglia di operatori btree."
 
 #: parser/parse_coerce.c:933 parser/parse_coerce.c:963
 #: parser/parse_coerce.c:981 parser/parse_coerce.c:996
-#: parser/parse_expr.c:1756 parser/parse_expr.c:2230 parser/parse_target.c:854
+#: parser/parse_expr.c:1773 parser/parse_expr.c:2247 parser/parse_target.c:854
 #, c-format
 msgid "cannot cast type %s to %s"
 msgstr "non è possibile convertire il tipo %s in %s"
@@ -10751,17 +11201,19 @@ msgstr "il tipo associato ad anyenum non è una enumerazione: %s"
 msgid "could not find range type for data type %s"
 msgstr "tipo dell'intervallo non trovato per il tipo di dato %s"
 
-#: parser/parse_collate.c:214 parser/parse_collate.c:458
+#: parser/parse_collate.c:228 parser/parse_collate.c:475
+#: parser/parse_collate.c:984
 #, c-format
 msgid "collation mismatch between implicit collations \"%s\" and \"%s\""
 msgstr "mancata corrispondenza degli ordinamenti impliciti \"%s\" e \"%s\""
 
-#: parser/parse_collate.c:217 parser/parse_collate.c:461
+#: parser/parse_collate.c:231 parser/parse_collate.c:478
+#: parser/parse_collate.c:987
 #, c-format
 msgid "You can choose the collation by applying the COLLATE clause to one or both expressions."
 msgstr "Puoi scegliere l'ordinamento applicando la clausola COLLATE ad una o ad entrambe le espressioni."
 
-#: parser/parse_collate.c:778
+#: parser/parse_collate.c:832
 #, c-format
 msgid "collation mismatch between explicit collations \"%s\" and \"%s\""
 msgstr "mancata corrispondenza degli ordinamenti espliciti \"%s\" e \"%s\""
@@ -10866,267 +11318,322 @@ msgstr "FOR UPDATE/SHARE non è implementato in una query ricorsiva"
 msgid "recursive reference to query \"%s\" must not appear more than once"
 msgstr "il riferimento ricorsivo alla query \"%s\" non può apparire più di una volta"
 
-#: parser/parse_expr.c:388 parser/parse_relation.c:2638
+#: parser/parse_expr.c:389 parser/parse_relation.c:2875
 #, c-format
 msgid "column %s.%s does not exist"
 msgstr "la colonna %s.%s non esiste"
 
-#: parser/parse_expr.c:400
+#: parser/parse_expr.c:401
 #, c-format
 msgid "column \"%s\" not found in data type %s"
 msgstr "la colonna \"%s\" non è stata trovata nel tipo di dato %s"
 
-#: parser/parse_expr.c:406
+#: parser/parse_expr.c:407
 #, c-format
 msgid "could not identify column \"%s\" in record data type"
 msgstr "la colonna \"%s\" non identificata nel tipo di dato record"
 
-#: parser/parse_expr.c:412
+#: parser/parse_expr.c:413
 #, c-format
 msgid "column notation .%s applied to type %s, which is not a composite type"
 msgstr "la notazione della colonna .%s sembra essere di tipo %s, che non è un tipo composito"
 
-#: parser/parse_expr.c:442 parser/parse_target.c:640
+#: parser/parse_expr.c:443 parser/parse_target.c:640
 #, c-format
 msgid "row expansion via \"*\" is not supported here"
 msgstr "l'espansione della riga tramite \"*\" non è supportata qui"
 
-#: parser/parse_expr.c:765 parser/parse_relation.c:561
-#: parser/parse_relation.c:642 parser/parse_target.c:1089
+#: parser/parse_expr.c:766 parser/parse_relation.c:561
+#: parser/parse_relation.c:652 parser/parse_target.c:1089
 #, c-format
 msgid "column reference \"%s\" is ambiguous"
 msgstr "il riferimento alla colonna \"%s\" è ambiguo"
 
-#: parser/parse_expr.c:821 parser/parse_param.c:110 parser/parse_param.c:142
+#: parser/parse_expr.c:822 parser/parse_param.c:110 parser/parse_param.c:142
 #: parser/parse_param.c:199 parser/parse_param.c:298
 #, c-format
 msgid "there is no parameter $%d"
 msgstr "parametro $%d non presente"
 
-#: parser/parse_expr.c:1033
+#: parser/parse_expr.c:1034
 #, c-format
 msgid "NULLIF requires = operator to yield boolean"
 msgstr "NULLIF richiede che l'operatore = restituisca un valore booleano"
 
-#: parser/parse_expr.c:1452
+#: parser/parse_expr.c:1469
 msgid "cannot use subquery in check constraint"
 msgstr "non si può usare una sottoquery nel vincolo di controllo"
 
-#: parser/parse_expr.c:1456
+#: parser/parse_expr.c:1473
 msgid "cannot use subquery in DEFAULT expression"
 msgstr "non si può usare una sottoquery in un'espressione DEFAULT"
 
-#: parser/parse_expr.c:1459
+#: parser/parse_expr.c:1476
 msgid "cannot use subquery in index expression"
 msgstr "non si possono usare sottoquery nell'espressione dell'indice"
 
-#: parser/parse_expr.c:1462
+#: parser/parse_expr.c:1479
 msgid "cannot use subquery in index predicate"
 msgstr "non è possibile usare sottoquery nel predicato dell'indice"
 
-#: parser/parse_expr.c:1465
+#: parser/parse_expr.c:1482
 msgid "cannot use subquery in transform expression"
 msgstr "non è possibile usare sottoquery in un'espressione di trasformazione"
 
-#: parser/parse_expr.c:1468
+#: parser/parse_expr.c:1485
 msgid "cannot use subquery in EXECUTE parameter"
 msgstr "non si possono usare sottoquery nel parametro EXECUTE"
 
-#: parser/parse_expr.c:1471
+#: parser/parse_expr.c:1488
 msgid "cannot use subquery in trigger WHEN condition"
 msgstr "non è possibile usare sottoquery nella condizione WHEN del trigger"
 
-#: parser/parse_expr.c:1528
+#: parser/parse_expr.c:1545
 #, c-format
 msgid "subquery must return a column"
 msgstr "la sottoquery deve restituire una colonna"
 
-#: parser/parse_expr.c:1535
+#: parser/parse_expr.c:1552
 #, c-format
 msgid "subquery must return only one column"
 msgstr "la sottoquery deve restituire solo una colonna"
 
-#: parser/parse_expr.c:1595
+#: parser/parse_expr.c:1612
 #, c-format
 msgid "subquery has too many columns"
 msgstr "la sottoquery ha troppe colonne"
 
-#: parser/parse_expr.c:1600
+#: parser/parse_expr.c:1617
 #, c-format
 msgid "subquery has too few columns"
 msgstr "la sottoquery ha troppe poche colonne"
 
-#: parser/parse_expr.c:1696
+#: parser/parse_expr.c:1713
 #, c-format
 msgid "cannot determine type of empty array"
 msgstr "non è possibile determinare il tipo di un array vuoto"
 
-#: parser/parse_expr.c:1697
+#: parser/parse_expr.c:1714
 #, c-format
 msgid "Explicitly cast to the desired type, for example ARRAY[]::integer[]."
 msgstr "Effettua una conversione esplicita al tipo desiderato, ad esempio ARRAY[]::integer[]."
 
-#: parser/parse_expr.c:1711
+#: parser/parse_expr.c:1728
 #, c-format
 msgid "could not find element type for data type %s"
 msgstr "tipo dell'elemento non trovato per il tipo di dato %s"
 
-#: parser/parse_expr.c:1937
+#: parser/parse_expr.c:1954
 #, c-format
 msgid "unnamed XML attribute value must be a column reference"
 msgstr "il valore dell'attributo XML senza nome dev'essere un riferimento ad una colonna"
 
-#: parser/parse_expr.c:1938
+#: parser/parse_expr.c:1955
 #, c-format
 msgid "unnamed XML element value must be a column reference"
 msgstr "il valore dell'elemento XML senza nome dev'essere un riferimento ad una colonna"
 
-#: parser/parse_expr.c:1953
+#: parser/parse_expr.c:1970
 #, c-format
 msgid "XML attribute name \"%s\" appears more than once"
 msgstr "l'attributo XML di nome \"%s\" compare più di una volta"
 
-#: parser/parse_expr.c:2060
+#: parser/parse_expr.c:2077
 #, c-format
 msgid "cannot cast XMLSERIALIZE result to %s"
 msgstr "non è possibile convertire il risultato di XMLSERIALIZE a %s"
 
-#: parser/parse_expr.c:2303 parser/parse_expr.c:2503
+#: parser/parse_expr.c:2320 parser/parse_expr.c:2520
 #, c-format
 msgid "unequal number of entries in row expressions"
 msgstr "numero di elementi differente nelle espressioni di riga"
 
-#: parser/parse_expr.c:2313
+#: parser/parse_expr.c:2330
 #, c-format
 msgid "cannot compare rows of zero length"
 msgstr "non possono comparire righe di lunghezza zero"
 
-#: parser/parse_expr.c:2338
+#: parser/parse_expr.c:2355
 #, c-format
 msgid "row comparison operator must yield type boolean, not type %s"
 msgstr "l'operatore di comparazione tra righe deve restituire il tipo booleano, non il tipo %s"
 
-#: parser/parse_expr.c:2345
+#: parser/parse_expr.c:2362
 #, c-format
 msgid "row comparison operator must not return a set"
 msgstr "l'operatore di comparazione tra righe non può restituire un insieme"
 
-#: parser/parse_expr.c:2404 parser/parse_expr.c:2449
+#: parser/parse_expr.c:2421 parser/parse_expr.c:2466
 #, c-format
 msgid "could not determine interpretation of row comparison operator %s"
 msgstr "non è stato possibile determinare un'interpretazione dell'operatore di comparazione tra righe %s"
 
-#: parser/parse_expr.c:2406
+#: parser/parse_expr.c:2423
 #, c-format
 msgid "Row comparison operators must be associated with btree operator families."
 msgstr "Gli operatori di comparazione tra righe devono essere associati a famiglie di operatori btree."
 
-#: parser/parse_expr.c:2451
+#: parser/parse_expr.c:2468
 #, c-format
 msgid "There are multiple equally-plausible candidates."
 msgstr "C'è più di un candidato egualmente plausibile."
 
-#: parser/parse_expr.c:2543
+#: parser/parse_expr.c:2560
 #, c-format
 msgid "IS DISTINCT FROM requires = operator to yield boolean"
 msgstr "IS DISTINCT FROM richiede che l'operatore = restituisca un valore booleano"
 
-#: parser/parse_func.c:149
+#: parser/parse_func.c:173
 #, c-format
 msgid "argument name \"%s\" used more than once"
 msgstr "il nome dell'argomento \"%s\" è usato più di una volta"
 
-#: parser/parse_func.c:160
+#: parser/parse_func.c:184
 #, c-format
 msgid "positional argument cannot follow named argument"
 msgstr "gli argomenti posizionali non possono seguire gli argomenti con nome"
 
-#: parser/parse_func.c:238
+#: parser/parse_func.c:263
 #, c-format
 msgid "%s(*) specified, but %s is not an aggregate function"
 msgstr "%s(*) specificato, ma %s non è una funzione di aggregazione"
 
-#: parser/parse_func.c:245
+#: parser/parse_func.c:270
 #, c-format
 msgid "DISTINCT specified, but %s is not an aggregate function"
 msgstr "DISTINCT specificato, ma %s non è una funzione di aggregazione"
 
-#: parser/parse_func.c:251
+#: parser/parse_func.c:276
+#, c-format
+msgid "WITHIN GROUP specified, but %s is not an aggregate function"
+msgstr "WITHIN GROUP specificato, ma %s non è una funzione di aggregazione"
+
+#: parser/parse_func.c:282
 #, c-format
 msgid "ORDER BY specified, but %s is not an aggregate function"
 msgstr "ORDER BY specificato, ma %s non è una funzione di aggregazione"
 
-#: parser/parse_func.c:257
+#: parser/parse_func.c:288
+#, c-format
+msgid "FILTER specified, but %s is not an aggregate function"
+msgstr "FILTER specificato, ma %s non è una funzione di aggregazione"
+
+#: parser/parse_func.c:294
 #, c-format
 msgid "OVER specified, but %s is not a window function nor an aggregate function"
 msgstr "OVER specificato, ma %s non è una funzione finestra né una funzione di aggregazione"
 
-#: parser/parse_func.c:279
+#: parser/parse_func.c:324
+#, c-format
+msgid "WITHIN GROUP is required for ordered-set aggregate %s"
+msgstr "WITHIN GROUP è richiesto per l'aggregato su insieme ordinato %s"
+
+#: parser/parse_func.c:330
+#, c-format
+msgid "OVER is not supported for ordered-set aggregate %s"
+msgstr "OVER non è supportato per l'aggregato su insieme ordinato %s"
+
+#: parser/parse_func.c:361 parser/parse_func.c:390
+#, c-format
+msgid "There is an ordered-set aggregate %s, but it requires %d direct arguments, not %d."
+msgstr "Esiste un aggregato su insieme ordinato %s, ma richiede %d argomenti diretti, non %d."
+
+#: parser/parse_func.c:415
+#, c-format
+msgid "To use the hypothetical-set aggregate %s, the number of hypothetical direct arguments (here %d) must match the number of ordering columns (here %d)."
+msgstr "Per usare l'aggregato su insieme ipotetico %s il numero di argomenti ipotetici diretti (qui %d) deve combaciare con quello di colonne di ordinamento (qui %d)."
+
+#: parser/parse_func.c:429
+#, c-format
+msgid "There is an ordered-set aggregate %s, but it requires at least %d direct arguments."
+msgstr "Esiste un aggregato su insieme ordinato %s, ma richiede almeno %d argomenti diretti."
+
+#: parser/parse_func.c:448
+#, c-format
+msgid "%s is not an ordered-set aggregate, so it cannot have WITHIN GROUP"
+msgstr "%s non è un aggregato su insieme ordinato, per cui non può avere WITHIN GROUP"
+
+#: parser/parse_func.c:461
+#, c-format
+msgid "window function %s requires an OVER clause"
+msgstr "la funzione finestra %s richiede una clausola OVER"
+
+#: parser/parse_func.c:468
+#, c-format
+msgid "window function %s cannot have WITHIN GROUP"
+msgstr "la funzione di aggregazione %s non può avere WITHIN GROUP"
+
+#: parser/parse_func.c:489
 #, c-format
 msgid "function %s is not unique"
 msgstr "la funzione %s non è unica"
 
-#: parser/parse_func.c:282
+#: parser/parse_func.c:492
 #, c-format
 msgid "Could not choose a best candidate function. You might need to add explicit type casts."
 msgstr "Non è stato possibile scegliere la funzione migliore. Potrebbe essere necessario convertire i tipi esplicitamente."
 
-#: parser/parse_func.c:293
+#: parser/parse_func.c:503
 #, c-format
 msgid "No aggregate function matches the given name and argument types. Perhaps you misplaced ORDER BY; ORDER BY must appear after all regular arguments of the aggregate."
 msgstr "Nessuna funzione di aggregazione trovata con nome e tipi di argomenti forniti. Forse hai posizionato ORDER BY male: ORDER BY deve apparire dopo tutti gli argomenti regolari della funzione di aggregazione."
 
-#: parser/parse_func.c:304
+#: parser/parse_func.c:514
 #, c-format
 msgid "No function matches the given name and argument types. You might need to add explicit type casts."
 msgstr "Nessuna funzione trovata con nome e tipi di argomenti forniti. Potrebbe essere necessario convertire i tipi esplicitamente."
 
-#: parser/parse_func.c:415 parser/parse_func.c:481
+#: parser/parse_func.c:616
+#, c-format
+msgid "VARIADIC argument must be an array"
+msgstr "l'argomento VARIADIC deve essere un array"
+
+#: parser/parse_func.c:661 parser/parse_func.c:725
 #, c-format
 msgid "%s(*) must be used to call a parameterless aggregate function"
 msgstr "%s(*) dev'essere usato per richiamare una funzione di aggregazione senza parametri"
 
-#: parser/parse_func.c:422
+#: parser/parse_func.c:668
 #, c-format
 msgid "aggregates cannot return sets"
 msgstr "le funzioni di aggregazione non possono restituire insiemi"
 
-#: parser/parse_func.c:434
+#: parser/parse_func.c:683
 #, c-format
 msgid "aggregates cannot use named arguments"
 msgstr "le funzioni di aggregazione non possono usare argomenti con nome"
 
-#: parser/parse_func.c:453
-#, c-format
-msgid "window function call requires an OVER clause"
-msgstr "una chiamata ad una funzione finestra richiede una clausola OVER"
-
-#: parser/parse_func.c:471
+#: parser/parse_func.c:715
 #, c-format
 msgid "DISTINCT is not implemented for window functions"
 msgstr "DISTINCT non è implementato per funzioni finestra"
 
-#: parser/parse_func.c:491
+#: parser/parse_func.c:735
 #, c-format
 msgid "aggregate ORDER BY is not implemented for window functions"
 msgstr "ORDER BY delle funzioni di aggregazione non è implementato per funzioni finestra"
 
-#: parser/parse_func.c:497
+#: parser/parse_func.c:744
+#, c-format
+msgid "FILTER is not implemented for non-aggregate window functions"
+msgstr "FILTER non è implementato per funzioni finestra non aggregate"
+
+#: parser/parse_func.c:750
 #, c-format
 msgid "window functions cannot return sets"
 msgstr "le funzioni finestra non possono restituire insiemi"
 
-#: parser/parse_func.c:1662
+#: parser/parse_func.c:1994
 #, c-format
 msgid "aggregate %s(*) does not exist"
 msgstr "la funzione di aggregazione %s(*) non esiste"
 
-#: parser/parse_func.c:1667
+#: parser/parse_func.c:1999
 #, c-format
 msgid "aggregate %s does not exist"
 msgstr "la funzione di aggregazione %s non esiste"
 
-#: parser/parse_func.c:1686
+#: parser/parse_func.c:2018
 #, c-format
 msgid "function %s is not an aggregate"
 msgstr "la funzione %s non è una funzione di aggregazione"
@@ -11151,8 +11658,8 @@ msgstr "l'indice di un array dev'essere di tipo intero"
 msgid "array assignment requires type %s but expression is of type %s"
 msgstr "l'assegnamento all'array richiede il tipo %s ma l'espressione è di tipo %s"
 
-#: parser/parse_oper.c:124 parser/parse_oper.c:718 utils/adt/regproc.c:490
-#: utils/adt/regproc.c:510 utils/adt/regproc.c:669
+#: parser/parse_oper.c:124 parser/parse_oper.c:718 utils/adt/regproc.c:547
+#: utils/adt/regproc.c:567 utils/adt/regproc.c:751
 #, c-format
 msgid "operator does not exist: %s"
 msgstr "l'operatore non esiste: %s"
@@ -11162,9 +11669,9 @@ msgstr "l'operatore non esiste: %s"
 msgid "Use an explicit ordering operator or modify the query."
 msgstr "Usa un operatore di ordinamento esplicito, oppure modifica la query."
 
-#: parser/parse_oper.c:225 utils/adt/arrayfuncs.c:3181
-#: utils/adt/arrayfuncs.c:3700 utils/adt/arrayfuncs.c:5253
-#: utils/adt/rowtypes.c:1156
+#: parser/parse_oper.c:225 utils/adt/arrayfuncs.c:3194
+#: utils/adt/arrayfuncs.c:3713 utils/adt/arrayfuncs.c:5266
+#: utils/adt/rowtypes.c:1159
 #, c-format
 msgid "could not identify an equality operator for type %s"
 msgstr "operatore di uguaglianza per il tipo %s non trovato"
@@ -11229,12 +11736,12 @@ msgstr "il riferimento alla tabella %u è ambiguo"
 msgid "table name \"%s\" specified more than once"
 msgstr "la tabella di nome \"%s\" è stata specificata più di una volta"
 
-#: parser/parse_relation.c:422 parser/parse_relation.c:2602
+#: parser/parse_relation.c:422 parser/parse_relation.c:2839
 #, c-format
 msgid "invalid reference to FROM-clause entry for table \"%s\""
 msgstr "riferimento non valido all'elemento della clausola FROM per la tabella \"%s\""
 
-#: parser/parse_relation.c:425 parser/parse_relation.c:2607
+#: parser/parse_relation.c:425 parser/parse_relation.c:2844
 #, c-format
 msgid "There is an entry for table \"%s\", but it cannot be referenced from this part of the query."
 msgstr "C'è un elemento per la tabella \"%s\", ma non può essere referenziato da questa parte della query."
@@ -11244,73 +11751,73 @@ msgstr "C'è un elemento per la tabella \"%s\", ma non può essere referenziato
 msgid "The combining JOIN type must be INNER or LEFT for a LATERAL reference."
 msgstr "Il tipo del JOIN deve essere INNER oppure LEFT per un riferimento LATERAL."
 
-#: parser/parse_relation.c:881 parser/parse_relation.c:1167
-#: parser/parse_relation.c:1544
+#: parser/parse_relation.c:591
 #, c-format
-msgid "table \"%s\" has %d columns available but %d columns specified"
-msgstr "la tabella \"%s\" ha %d colonne disponibili ma %d colonne specificate"
+msgid "system column \"%s\" reference in check constraint is invalid"
+msgstr "la colonna di sistema \"%s\" referenziata nel vincolo di controllo non è valida"
 
-#: parser/parse_relation.c:911
+#: parser/parse_relation.c:892 parser/parse_relation.c:1169
+#: parser/parse_relation.c:1663
 #, c-format
-msgid "too many column aliases specified for function %s"
-msgstr "troppi alias di colonna specificati per la funzione %s"
+msgid "table \"%s\" has %d columns available but %d columns specified"
+msgstr "la tabella \"%s\" ha %d colonne disponibili ma %d colonne specificate"
 
-#: parser/parse_relation.c:977
+#: parser/parse_relation.c:979
 #, c-format
 msgid "There is a WITH item named \"%s\", but it cannot be referenced from this part of the query."
 msgstr "C'è un elemento di WITH di nome \"%s\", ma non può essere referenziato da questa parte della query."
 
-#: parser/parse_relation.c:979
+#: parser/parse_relation.c:981
 #, c-format
 msgid "Use WITH RECURSIVE, or re-order the WITH items to remove forward references."
 msgstr "Usa WITH RECURSIVE, oppure riordina gli elementi di WITH per rimuovere i riferimenti in avanti."
 
-#: parser/parse_relation.c:1245
+#: parser/parse_relation.c:1287
 #, c-format
 msgid "a column definition list is only allowed for functions returning \"record\""
 msgstr "la lista di definizione di colonne è consentita solo per funzioni che restituiscono \"record\""
 
-#: parser/parse_relation.c:1253
+#: parser/parse_relation.c:1296
 #, c-format
 msgid "a column definition list is required for functions returning \"record\""
 msgstr "la lista di definizione di colonne è necessaria per funzioni che restituiscono \"record\""
 
-#: parser/parse_relation.c:1304
+#: parser/parse_relation.c:1375
 #, c-format
 msgid "function \"%s\" in FROM has unsupported return type %s"
 msgstr "la funzione \"%s\" in FROM restituisce il tipo non supportato %s"
 
-#: parser/parse_relation.c:1376
+#: parser/parse_relation.c:1495
 #, c-format
 msgid "VALUES lists \"%s\" have %d columns available but %d columns specified"
 msgstr "le liste VALUES \"%s\" hanno %d colonne disponibili ma %d colonne specificate"
 
-#: parser/parse_relation.c:1429
+#: parser/parse_relation.c:1548
 #, c-format
 msgid "joins can have at most %d columns"
 msgstr "i join possono avere al più %d colonne"
 
-#: parser/parse_relation.c:1517
+#: parser/parse_relation.c:1636
 #, c-format
 msgid "WITH query \"%s\" does not have a RETURNING clause"
 msgstr "la query WITH \"%s\" non ha una clausola RETURNING"
 
-#: parser/parse_relation.c:2217
+#: parser/parse_relation.c:2468 parser/parse_relation.c:2623
 #, c-format
 msgid "column %d of relation \"%s\" does not exist"
 msgstr "la colonna %d della relazione \"%s\" non esiste"
 
-#: parser/parse_relation.c:2605
+#: parser/parse_relation.c:2842
 #, c-format
 msgid "Perhaps you meant to reference the table alias \"%s\"."
 msgstr "Forse intendevi utilizzare l'alias \"%s\" della tabella."
 
-#: parser/parse_relation.c:2613
+#: parser/parse_relation.c:2850
 #, c-format
 msgid "missing FROM-clause entry for table \"%s\""
 msgstr "elemento FROM per la tabella \"%s\" mancante"
 
-#: parser/parse_relation.c:2653
+#: parser/parse_relation.c:2890
 #, c-format
 msgid "There is a column named \"%s\" in table \"%s\", but it cannot be referenced from this part of the query."
 msgstr "Esiste una colonna di nome \"%s\" nella tabella \"%s\", ma non può essere referenziata da questa parte della query."
@@ -11370,27 +11877,27 @@ msgstr "riferimento %%TYPE improprio (troppi pochi nomi puntati): %s"
 msgid "improper %%TYPE reference (too many dotted names): %s"
 msgstr "riferimento %%TYPE improprio (troppi nomi puntati): %s"
 
-#: parser/parse_type.c:134
+#: parser/parse_type.c:141
 #, c-format
 msgid "type reference %s converted to %s"
 msgstr "riferimento al tipo %s convertito in %s"
 
-#: parser/parse_type.c:209 utils/cache/typcache.c:198
+#: parser/parse_type.c:257 parser/parse_type.c:805 utils/cache/typcache.c:198
 #, c-format
 msgid "type \"%s\" is only a shell"
 msgstr "il tipo \"%s\" non è completamente definito"
 
-#: parser/parse_type.c:294
+#: parser/parse_type.c:342
 #, c-format
 msgid "type modifier is not allowed for type \"%s\""
 msgstr "modificatore di tipo non ammesso per il tipo \"%s\""
 
-#: parser/parse_type.c:337
+#: parser/parse_type.c:384
 #, c-format
 msgid "type modifiers must be simple constants or identifiers"
 msgstr "i modificatori di tipo devono essere costanti o identificatori semplici"
 
-#: parser/parse_type.c:648 parser/parse_type.c:747
+#: parser/parse_type.c:695 parser/parse_type.c:819
 #, c-format
 msgid "invalid type name \"%s\""
 msgstr "nome di tipo \"%s\" non valido"
@@ -11410,189 +11917,189 @@ msgstr "gli array di serial non sono implementati"
 msgid "%s will create implicit sequence \"%s\" for serial column \"%s.%s\""
 msgstr "%s creerà la sequenza implicita \"%s\" per la colonna serial \"%s.%s\""
 
-#: parser/parse_utilcmd.c:491 parser/parse_utilcmd.c:503
+#: parser/parse_utilcmd.c:484 parser/parse_utilcmd.c:496
 #, c-format
 msgid "conflicting NULL/NOT NULL declarations for column \"%s\" of table \"%s\""
 msgstr "dichiarazioni NULL/NOT NULL in conflitto per la colonna \"%s\" della tabella \"%s\""
 
-#: parser/parse_utilcmd.c:515
+#: parser/parse_utilcmd.c:508
 #, c-format
 msgid "multiple default values specified for column \"%s\" of table \"%s\""
 msgstr "più di un valore predefinito specificato per la colonna \"%s\" della tabella \"%s\""
 
-#: parser/parse_utilcmd.c:682
+#: parser/parse_utilcmd.c:675
 #, c-format
 msgid "LIKE is not supported for creating foreign tables"
 msgstr "LIKE non è supportato nella creazione di tabelle esterne"
 
-#: parser/parse_utilcmd.c:1201 parser/parse_utilcmd.c:1277
+#: parser/parse_utilcmd.c:1196 parser/parse_utilcmd.c:1272
 #, c-format
 msgid "Index \"%s\" contains a whole-row table reference."
 msgstr "L'indice \"%s\" contiene un riferimento all'intera riga della tabella."
 
-#: parser/parse_utilcmd.c:1544
+#: parser/parse_utilcmd.c:1539
 #, c-format
 msgid "cannot use an existing index in CREATE TABLE"
 msgstr "non è possibile usare un indice preesistente in CREATE TABLE"
 
-#: parser/parse_utilcmd.c:1564
+#: parser/parse_utilcmd.c:1559
 #, c-format
 msgid "index \"%s\" is already associated with a constraint"
 msgstr "l'indice \"%s\" è già associato ad un vincolo"
 
-#: parser/parse_utilcmd.c:1572
+#: parser/parse_utilcmd.c:1567
 #, c-format
 msgid "index \"%s\" does not belong to table \"%s\""
 msgstr "l'indice \"%s\" non appartiene alla tabella \"%s\""
 
-#: parser/parse_utilcmd.c:1579
+#: parser/parse_utilcmd.c:1574
 #, c-format
 msgid "index \"%s\" is not valid"
 msgstr "l'indice \"%s\" non è valido"
 
-#: parser/parse_utilcmd.c:1585
+#: parser/parse_utilcmd.c:1580
 #, c-format
 msgid "\"%s\" is not a unique index"
 msgstr "\"%s\" non è un indice univoco"
 
-#: parser/parse_utilcmd.c:1586 parser/parse_utilcmd.c:1593
-#: parser/parse_utilcmd.c:1600 parser/parse_utilcmd.c:1670
+#: parser/parse_utilcmd.c:1581 parser/parse_utilcmd.c:1588
+#: parser/parse_utilcmd.c:1595 parser/parse_utilcmd.c:1665
 #, c-format
 msgid "Cannot create a primary key or unique constraint using such an index."
 msgstr "Non è possibile creare una chiave primaria o un vincolo univoco usando tale indice."
 
-#: parser/parse_utilcmd.c:1592
+#: parser/parse_utilcmd.c:1587
 #, c-format
 msgid "index \"%s\" contains expressions"
 msgstr "l'indice \"%s\" contiene espressioni"
 
-#: parser/parse_utilcmd.c:1599
+#: parser/parse_utilcmd.c:1594
 #, c-format
 msgid "\"%s\" is a partial index"
 msgstr "\"%s\" è un indice parziale"
 
-#: parser/parse_utilcmd.c:1611
+#: parser/parse_utilcmd.c:1606
 #, c-format
 msgid "\"%s\" is a deferrable index"
 msgstr "\"%s\" è un indice deferibile"
 
-#: parser/parse_utilcmd.c:1612
+#: parser/parse_utilcmd.c:1607
 #, c-format
 msgid "Cannot create a non-deferrable constraint using a deferrable index."
 msgstr "Non è possibile creare un vincolo non deferibile usando un indice deferibile."
 
-#: parser/parse_utilcmd.c:1669
+#: parser/parse_utilcmd.c:1664
 #, c-format
 msgid "index \"%s\" does not have default sorting behavior"
 msgstr "l'indice \"%s\" non ha un ordinamento predefinito"
 
-#: parser/parse_utilcmd.c:1814
+#: parser/parse_utilcmd.c:1809
 #, c-format
 msgid "column \"%s\" appears twice in primary key constraint"
 msgstr "la colonna \"%s\" appare due volte nel vincolo di chiave primaria"
 
-#: parser/parse_utilcmd.c:1820
+#: parser/parse_utilcmd.c:1815
 #, c-format
 msgid "column \"%s\" appears twice in unique constraint"
 msgstr "la colonna \"%s\" appare due volte nel vincolo univoco"
 
-#: parser/parse_utilcmd.c:1991
+#: parser/parse_utilcmd.c:1981
 #, c-format
 msgid "index expression cannot return a set"
 msgstr "l'espressione dell'indice non può restituire un insieme"
 
-#: parser/parse_utilcmd.c:2002
+#: parser/parse_utilcmd.c:1992
 #, c-format
 msgid "index expressions and predicates can refer only to the table being indexed"
 msgstr "le espressioni e i predicati dell'indice possono riferirsi solo alla tabella indicizzata"
 
-#: parser/parse_utilcmd.c:2045
+#: parser/parse_utilcmd.c:2035
 #, c-format
 msgid "rules on materialized views are not supported"
 msgstr "le regole sulle viste materializzate non sono supportate"
 
-#: parser/parse_utilcmd.c:2106
+#: parser/parse_utilcmd.c:2096
 #, c-format
 msgid "rule WHERE condition cannot contain references to other relations"
 msgstr "le condizioni WHERE delle regole non possono avere riferimenti ad altre relazioni"
 
-#: parser/parse_utilcmd.c:2178
+#: parser/parse_utilcmd.c:2168
 #, c-format
 msgid "rules with WHERE conditions can only have SELECT, INSERT, UPDATE, or DELETE actions"
 msgstr "le regole con una condizione WHERE possono avere solo azione SELECT, INSERT, UPDATE o DELETE"
 
-#: parser/parse_utilcmd.c:2196 parser/parse_utilcmd.c:2295
-#: rewrite/rewriteHandler.c:443 rewrite/rewriteManip.c:1032
+#: parser/parse_utilcmd.c:2186 parser/parse_utilcmd.c:2285
+#: rewrite/rewriteHandler.c:469 rewrite/rewriteManip.c:968
 #, c-format
 msgid "conditional UNION/INTERSECT/EXCEPT statements are not implemented"
 msgstr "le istruzioni UNION/INTERSECT/EXCEPT condizionali non sono implementate"
 
-#: parser/parse_utilcmd.c:2214
+#: parser/parse_utilcmd.c:2204
 #, c-format
 msgid "ON SELECT rule cannot use OLD"
 msgstr "la regola ON SELECT non può usare OLD"
 
-#: parser/parse_utilcmd.c:2218
+#: parser/parse_utilcmd.c:2208
 #, c-format
 msgid "ON SELECT rule cannot use NEW"
 msgstr "la regola ON SELECT non può usare NEW"
 
-#: parser/parse_utilcmd.c:2227
+#: parser/parse_utilcmd.c:2217
 #, c-format
 msgid "ON INSERT rule cannot use OLD"
 msgstr "la regola ON INSERT non può usare OLD"
 
-#: parser/parse_utilcmd.c:2233
+#: parser/parse_utilcmd.c:2223
 #, c-format
 msgid "ON DELETE rule cannot use NEW"
 msgstr "La regola ON DELETE non può usare NEW"
 
-#: parser/parse_utilcmd.c:2261
+#: parser/parse_utilcmd.c:2251
 #, c-format
 msgid "cannot refer to OLD within WITH query"
 msgstr "non ci si può riferire ad OLD nella query WITH"
 
-#: parser/parse_utilcmd.c:2268
+#: parser/parse_utilcmd.c:2258
 #, c-format
 msgid "cannot refer to NEW within WITH query"
 msgstr "non ci si può riferire a NEW nella query WITH"
 
-#: parser/parse_utilcmd.c:2568
+#: parser/parse_utilcmd.c:2541
 #, c-format
 msgid "misplaced DEFERRABLE clause"
 msgstr "clausola DEFERRABLE mal posizionata"
 
-#: parser/parse_utilcmd.c:2573 parser/parse_utilcmd.c:2588
+#: parser/parse_utilcmd.c:2546 parser/parse_utilcmd.c:2561
 #, c-format
 msgid "multiple DEFERRABLE/NOT DEFERRABLE clauses not allowed"
 msgstr "clausole DEFERRABLE/NOT DEFERRABLE multiple non consentite"
 
-#: parser/parse_utilcmd.c:2583
+#: parser/parse_utilcmd.c:2556
 #, c-format
 msgid "misplaced NOT DEFERRABLE clause"
 msgstr "clausola NOT DEFERRABLE mal posizionata"
 
-#: parser/parse_utilcmd.c:2596 parser/parse_utilcmd.c:2622 gram.y:4420
+#: parser/parse_utilcmd.c:2569 parser/parse_utilcmd.c:2595 gram.y:4568
 #, c-format
 msgid "constraint declared INITIALLY DEFERRED must be DEFERRABLE"
 msgstr "un vincolo dichiarato INITIALLY DEFERRED dev'essere DEFERRABLE"
 
-#: parser/parse_utilcmd.c:2604
+#: parser/parse_utilcmd.c:2577
 #, c-format
 msgid "misplaced INITIALLY DEFERRED clause"
 msgstr "clausola INITIALLY DEFERRED mal posizionata"
 
-#: parser/parse_utilcmd.c:2609 parser/parse_utilcmd.c:2635
+#: parser/parse_utilcmd.c:2582 parser/parse_utilcmd.c:2608
 #, c-format
 msgid "multiple INITIALLY IMMEDIATE/DEFERRED clauses not allowed"
 msgstr "clausole INITIALLY IMMEDIATE/DEFERRED multiple non sono consentite"
 
-#: parser/parse_utilcmd.c:2630
+#: parser/parse_utilcmd.c:2603
 #, c-format
 msgid "misplaced INITIALLY IMMEDIATE clause"
 msgstr "clausola INITIALLY IMMEDIATE mal posizionata"
 
-#: parser/parse_utilcmd.c:2821
+#: parser/parse_utilcmd.c:2794
 #, c-format
 msgid "CREATE specifies a schema (%s) different from the one being created (%s)"
 msgstr "CREATE specifica uno schema (%s) differente da quello che sta venendo creato (%s)"
@@ -11608,7 +12115,7 @@ msgid "poll() failed: %m"
 msgstr "poll() fallito: %m"
 
 #: port/pg_latch.c:423 port/unix_latch.c:423
-#: replication/libpqwalreceiver/libpqwalreceiver.c:356
+#: replication/libpqwalreceiver/libpqwalreceiver.c:363
 #, c-format
 msgid "select() failed: %m"
 msgstr "select() fallita: %m"
@@ -11637,17 +12144,17 @@ msgstr ""
 msgid "You possibly need to raise your kernel's SEMVMX value to be at least %d.  Look into the PostgreSQL documentation for details."
 msgstr "Potresti dover aumentare il valore SEMVMX del tuo kernel ad almeno %d. Consulta la documentazione di PostgreSQL per ulteriori dettagli."
 
-#: port/pg_shmem.c:163 port/sysv_shmem.c:163
+#: port/pg_shmem.c:141 port/sysv_shmem.c:141
 #, c-format
 msgid "could not create shared memory segment: %m"
 msgstr "creazione del segmento di memoria condivisa fallita: %m"
 
-#: port/pg_shmem.c:164 port/sysv_shmem.c:164
+#: port/pg_shmem.c:142 port/sysv_shmem.c:142
 #, c-format
-msgid "Failed system call was shmget(key=%lu, size=%lu, 0%o)."
-msgstr "La chiamata di sistema fallita era shmget(key=%lu, size=%lu, 0%o)."
+msgid "Failed system call was shmget(key=%lu, size=%zu, 0%o)."
+msgstr "La chiamata di sistema fallita era shmget(key=%lu, size=%zu, 0%o)."
 
-#: port/pg_shmem.c:168 port/sysv_shmem.c:168
+#: port/pg_shmem.c:146 port/sysv_shmem.c:146
 #, c-format
 msgid ""
 "This error usually means that PostgreSQL's request for a shared memory segment exceeded your kernel's SHMMAX parameter, or possibly that it is less than your kernel's SHMMIN parameter.\n"
@@ -11656,7 +12163,7 @@ msgstr ""
 "Questo errore di solito vuol dire che la richiesta di PostgreSQL di un segmento di memoria condivisa eccede il valore del parametro SHMMAX del tuo kernel, o anche che sia inferiore del parametro SHMMIN.\n"
 "La documentazione di PostgreSQL contiene ulteriori informazioni sulla configurazione della memoria condivisa."
 
-#: port/pg_shmem.c:175 port/sysv_shmem.c:175
+#: port/pg_shmem.c:153 port/sysv_shmem.c:153
 #, c-format
 msgid ""
 "This error usually means that PostgreSQL's request for a shared memory segment exceeded your kernel's SHMALL parameter.  You might need to reconfigure the kernel with larger SHMALL.\n"
@@ -11665,7 +12172,7 @@ msgstr ""
 "Questo errore di solito vuol dire che la richiesta di PostgreSQL di un segmento di memoria condivisa eccede il valore del parametro SHMALL del tuo kernel. Potresti dover riconfigurare il kernel con uno SHMALL più grande.\n"
 "La documentazione di PostgreSQL contiene ulteriori informazioni sulla configurazione della memoria condivisa."
 
-#: port/pg_shmem.c:181 port/sysv_shmem.c:181
+#: port/pg_shmem.c:159 port/sysv_shmem.c:159
 #, 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.\n"
@@ -11674,17 +12181,27 @@ msgstr ""
 "Questo errore *non* significa che è finito lo spazio su disco. Può succedere se tutti gli ID di memoria condivisa sono stati presi, nel cui caso è necessario aumentare il parametro SHMMNI del tuo kernel, oppure perché il limite globale la memoria condivisa di sistema è stato raggiunto.\n"
 "La documentazione di PostgreSQL contiene ulteriori informazioni sulla configurazione della memoria condivisa."
 
-#: port/pg_shmem.c:419 port/sysv_shmem.c:419
+#: port/pg_shmem.c:340 port/sysv_shmem.c:340
+#, c-format
+msgid "huge TLB pages not supported on this platform"
+msgstr "pagine TLB huge non supportate su questa piattaforma"
+
+#: port/pg_shmem.c:390 port/sysv_shmem.c:390
 #, c-format
 msgid "could not map anonymous shared memory: %m"
 msgstr "mappatura della memoria condivisa anonima fallita: %m"
 
-#: port/pg_shmem.c:421 port/sysv_shmem.c:421
+#: port/pg_shmem.c:392 port/sysv_shmem.c:392
+#, c-format
+msgid "This error usually means that PostgreSQL's request for a shared memory segment exceeded available memory, swap space or huge pages. To reduce the request size (currently %zu bytes), reduce PostgreSQL's shared memory usage, perhaps by reducing shared_buffers or max_connections."
+msgstr "Questo errore di solito vuol dire che la richiesta di PostgreSQL di un segmento di memoria condivisa supera la memoria disponibile, lo spazio di swap o le pagine huge. Per ridurre la dimensione richiesta (attualmente %zu byte), riduci l'utilizzo di memoria condivisa di PostgreSQL, ad esempio riducendo \"shared_buffers o max_connections."
+
+#: port/pg_shmem.c:439 port/sysv_shmem.c:439 port/win32_shmem.c:136
 #, c-format
-msgid "This error usually means that PostgreSQL's request for a shared memory segment exceeded available memory or swap space. To reduce the request size (currently %lu bytes), reduce PostgreSQL's shared memory usage, perhaps by reducing shared_buffers or max_connections."
-msgstr "Questo errore di solito vuol dire che la richiesta di PostgreSQL di un segmento di memoria condivisa supera la memoria disponibile o lo spazio di swap. Per ridurre la dimensione richiesta (attualmente %lu byte), riduci l'utilizzo di memoria condivisa di PostgreSQL, ad esempio riducendo shared_buffers o max_connections."
+msgid "huge pages not supported on this platform"
+msgstr "pagine huge non supportate su questa piattaforma"
 
-#: port/pg_shmem.c:508 port/sysv_shmem.c:508
+#: port/pg_shmem.c:553 port/sysv_shmem.c:553
 #, c-format
 msgid "could not stat data directory \"%s\": %m"
 msgstr "non è stato possibile ottenere informazioni sulla directory dati \"%s\": %m"
@@ -11764,91 +12281,148 @@ msgstr "unlock del semaforo fallito: codice errore %lu"
 msgid "could not try-lock semaphore: error code %lu"
 msgstr "try-lock del semaforo fallito: codice errore %lu"
 
-#: port/win32_shmem.c:168 port/win32_shmem.c:203 port/win32_shmem.c:224
+#: port/win32_shmem.c:175 port/win32_shmem.c:210 port/win32_shmem.c:231
 #, c-format
 msgid "could not create shared memory segment: error code %lu"
 msgstr "creazione del segmento di memoria condivisa fallito: codice errore %lu"
 
-#: port/win32_shmem.c:169
+#: port/win32_shmem.c:176
 #, c-format
-msgid "Failed system call was CreateFileMapping(size=%lu, name=%s)."
-msgstr "La chiamata di sistema fallita era CreateFileMapping(size=%lu, name=%s)."
+msgid "Failed system call was CreateFileMapping(size=%zu, name=%s)."
+msgstr "La funzione di sistema fallita era CreateFileMapping(size=%zu, name=%s)."
 
-#: port/win32_shmem.c:193
+#: port/win32_shmem.c:200
 #, c-format
 msgid "pre-existing shared memory block is still in use"
 msgstr "blocco di memoria condivisa preesistente ancora in uso"
 
-#: port/win32_shmem.c:194
+#: port/win32_shmem.c:201
 #, c-format
 msgid "Check if there are any old server processes still running, and terminate them."
 msgstr "Controlla se ci sono vecchi processi server ancora in esecuzione ed interrompili."
 
-#: port/win32_shmem.c:204
+#: port/win32_shmem.c:211
 #, c-format
 msgid "Failed system call was DuplicateHandle."
 msgstr "La chiamata di sistema fallita era DuplicateHandle."
 
-#: port/win32_shmem.c:225
+#: port/win32_shmem.c:232
 #, c-format
 msgid "Failed system call was MapViewOfFileEx."
 msgstr "La chiamata di sistema fallita era MapViewOfFileEx."
 
-#: postmaster/autovacuum.c:372
+#: postmaster/autovacuum.c:378
 #, c-format
 msgid "could not fork autovacuum launcher process: %m"
 msgstr "fork del processo di esecuzione di autovacuum fallito: %m"
 
-#: postmaster/autovacuum.c:417
+#: postmaster/autovacuum.c:423
 #, c-format
 msgid "autovacuum launcher started"
 msgstr "esecutore di autovacuum avviato"
 
-#: postmaster/autovacuum.c:782
+#: postmaster/autovacuum.c:788
 #, c-format
 msgid "autovacuum launcher shutting down"
 msgstr "arresto dell'esecutore di autovacuum"
 
-#: postmaster/autovacuum.c:1445
+#: postmaster/autovacuum.c:1451
 #, c-format
 msgid "could not fork autovacuum worker process: %m"
 msgstr "fork del processo di lavoro di autovacuum fallito: %m"
 
-#: postmaster/autovacuum.c:1664
+#: postmaster/autovacuum.c:1670
 #, c-format
 msgid "autovacuum: processing database \"%s\""
 msgstr "autovacuum: elaborazione del database \"%s\""
 
-#: postmaster/autovacuum.c:2058
+#: postmaster/autovacuum.c:2068
 #, c-format
 msgid "autovacuum: dropping orphan temp table \"%s\".\"%s\" in database \"%s\""
 msgstr "autovacuum: eliminazione della tabella temporanea orfana \"%s\".\"%s\" nel database \"%s\""
 
-#: postmaster/autovacuum.c:2070
+#: postmaster/autovacuum.c:2080
 #, c-format
 msgid "autovacuum: found orphan temp table \"%s\".\"%s\" in database \"%s\""
 msgstr "autovacuum: trovata tabella temporanea orfana \"%s\".\"%s\" nel database \"%s\""
 
-#: postmaster/autovacuum.c:2334
+#: postmaster/autovacuum.c:2344
 #, c-format
 msgid "automatic vacuum of table \"%s.%s.%s\""
 msgstr "pulizia automatica della tabella \"%s.%s.%s\""
 
-#: postmaster/autovacuum.c:2337
+#: postmaster/autovacuum.c:2347
 #, c-format
 msgid "automatic analyze of table \"%s.%s.%s\""
 msgstr "analisi automatica della tabella \"%s.%s.%s\""
 
-#: postmaster/autovacuum.c:2833
+#: postmaster/autovacuum.c:2872
 #, c-format
 msgid "autovacuum not started because of misconfiguration"
 msgstr "autovacuum non avviato a causa di configurazione errata"
 
-#: postmaster/autovacuum.c:2834
+#: postmaster/autovacuum.c:2873
 #, c-format
 msgid "Enable the \"track_counts\" option."
 msgstr "Abilita l'opzione \"track_counts\"."
 
+#: postmaster/bgworker.c:323 postmaster/bgworker.c:732
+#, c-format
+msgid "registering background worker \"%s\""
+msgstr "registrazione del processo di lavoro in background \"%s\""
+
+#: postmaster/bgworker.c:352
+#, c-format
+msgid "unregistering background worker \"%s\""
+msgstr "annullamento registrazione del processo di lavoro in background \"%s\""
+
+#: postmaster/bgworker.c:454
+#, c-format
+msgid "background worker \"%s\": must attach to shared memory in order to request a database connection"
+msgstr "processo di lavoro in background \"%s\": occorre collegarsi al segmento di memoria per richiedere una connessione al database"
+
+#: postmaster/bgworker.c:463
+#, c-format
+msgid "background worker \"%s\": cannot request database access if starting at postmaster start"
+msgstr "processo di lavoro in background \"%s\": non è possibile richiedere accesso al database se avviato all'avvio di postmaster"
+
+#: postmaster/bgworker.c:477
+#, c-format
+msgid "background worker \"%s\": invalid restart interval"
+msgstr "processo di lavoro in background \"%s\": intervallo di riavvio non valido"
+
+#: postmaster/bgworker.c:522
+#, c-format
+msgid "terminating background worker \"%s\" due to administrator command"
+msgstr "interruzione del processo di lavoro in background \"%s\" a causa di comando amministrativo"
+
+#: postmaster/bgworker.c:739
+#, c-format
+msgid "background worker \"%s\": must be registered in shared_preload_libraries"
+msgstr "processo di lavoro in background \"%s\": deve essere registrato in shared_preload_libraries"
+
+#: postmaster/bgworker.c:751
+#, c-format
+msgid "background worker \"%s\": only dynamic background workers can request notification"
+msgstr "processo di lavoro in background \"%s\": solo i processi dinamici possono richiedere notifiche"
+
+#: postmaster/bgworker.c:766
+#, c-format
+msgid "too many background workers"
+msgstr "troppi processi di lavoro in background"
+
+#: postmaster/bgworker.c:767
+#, c-format
+msgid "Up to %d background worker can be registered with the current settings."
+msgid_plural "Up to %d background workers can be registered with the current settings."
+msgstr[0] "Le impostazioni correnti consentono la registrazione di un massimo di %d processi di lavoro in background."
+msgstr[1] "Le impostazioni correnti consentono la registrazione di un massimo di %d processi di lavoro in background."
+
+#: postmaster/bgworker.c:771
+#, c-format
+msgid "Consider increasing the configuration parameter \"max_worker_processes\"."
+msgstr "Considera di incrementare il parametro di configurazione \"max_worker_processes\"."
+
 #: postmaster/checkpointer.c:481
 #, c-format
 msgid "checkpoints are occurring too frequently (%d second apart)"
@@ -11881,192 +12455,193 @@ msgstr "Consulta i messaggi recenti nel log del server per i dettagli."
 msgid "compacted fsync request queue from %d entries to %d entries"
 msgstr "coda di richieste di fsync ridotta da %d a %d elementi"
 
-#: postmaster/pgarch.c:165
+#: postmaster/pgarch.c:154
 #, c-format
 msgid "could not fork archiver: %m"
 msgstr "non è possibile fare un fork dell'archiver: %m"
 
-#: postmaster/pgarch.c:491
+#: postmaster/pgarch.c:481
 #, c-format
 msgid "archive_mode enabled, yet archive_command is not set"
 msgstr "archive_mode abilitato, ma archive_command non è impostato"
 
-#: postmaster/pgarch.c:506
+#: postmaster/pgarch.c:509
 #, c-format
 msgid "archiving transaction log file \"%s\" failed too many times, will try again later"
 msgstr "archiviazione del file di log delle transazioni \"%s\" fallita troppe volte, verrà riprovato più tardi"
 
-#: postmaster/pgarch.c:609
+#: postmaster/pgarch.c:612
 #, c-format
 msgid "archive command failed with exit code %d"
 msgstr "comando di archiviazione fallito con codice di uscita %d"
 
-#: postmaster/pgarch.c:611 postmaster/pgarch.c:621 postmaster/pgarch.c:628
-#: postmaster/pgarch.c:634 postmaster/pgarch.c:643
+#: postmaster/pgarch.c:614 postmaster/pgarch.c:624 postmaster/pgarch.c:631
+#: postmaster/pgarch.c:637 postmaster/pgarch.c:646
 #, c-format
 msgid "The failed archive command was: %s"
 msgstr "Il comando di archiviazione fallito era: %s"
 
-#: postmaster/pgarch.c:618
+#: postmaster/pgarch.c:621
 #, c-format
 msgid "archive command was terminated by exception 0x%X"
 msgstr "comando di archiviazione terminato da eccezione 0x%X"
 
-#: postmaster/pgarch.c:620 postmaster/postmaster.c:3228
+#: postmaster/pgarch.c:623 postmaster/postmaster.c:3297
 #, c-format
 msgid "See C include file \"ntstatus.h\" for a description of the hexadecimal value."
 msgstr "Consulta il file include C \"ntstatus.h\" per una spiegazione del valore esadecimale."
 
-#: postmaster/pgarch.c:625
+#: postmaster/pgarch.c:628
 #, c-format
 msgid "archive command was terminated by signal %d: %s"
 msgstr "comando di archiviazione terminato dal segnale %d: %s"
 
-#: postmaster/pgarch.c:632
+#: postmaster/pgarch.c:635
 #, c-format
 msgid "archive command was terminated by signal %d"
 msgstr "comando di archiviazione terminato dal segnale %d"
 
-#: postmaster/pgarch.c:641
+#: postmaster/pgarch.c:644
 #, c-format
 msgid "archive command exited with unrecognized status %d"
 msgstr "processo di archiviazione uscito con stato sconosciuto %d"
 
-#: postmaster/pgarch.c:653
+#: postmaster/pgarch.c:656
 #, c-format
 msgid "archived transaction log file \"%s\""
 msgstr "file di log delle transazioni archiviato \"%s\""
 
-#: postmaster/pgarch.c:702
+#: postmaster/pgarch.c:705
 #, c-format
 msgid "could not open archive status directory \"%s\": %m"
 msgstr "apertura della directory dello stato dell'archivio \"%s\" fallita: %m"
 
-#: postmaster/pgstat.c:346
+#: postmaster/pgstat.c:354
 #, c-format
 msgid "could not resolve \"localhost\": %s"
 msgstr "risoluzione di \"localhost\" fallita: %s"
 
-#: postmaster/pgstat.c:369
+#: postmaster/pgstat.c:377
 #, c-format
 msgid "trying another address for the statistics collector"
 msgstr "si sta tentando di usare un diverso indirizzo per il raccoglitore di statistiche"
 
-#: postmaster/pgstat.c:378
+#: postmaster/pgstat.c:386
 #, c-format
 msgid "could not create socket for statistics collector: %m"
 msgstr "creazione del socket per il raccoglitore di statistiche fallita: %m"
 
-#: postmaster/pgstat.c:390
+#: postmaster/pgstat.c:398
 #, c-format
 msgid "could not bind socket for statistics collector: %m"
 msgstr "bind del socket per il raccoglitore di statistiche fallito: %m"
 
-#: postmaster/pgstat.c:401
+#: postmaster/pgstat.c:409
 #, c-format
 msgid "could not get address of socket for statistics collector: %m"
 msgstr "non è stato possibile ottenere l'indirizzo del socket per il raccoglitore di statistiche: %m"
 
-#: postmaster/pgstat.c:417
+#: postmaster/pgstat.c:425
 #, c-format
 msgid "could not connect socket for statistics collector: %m"
 msgstr "connessione al socket per il raccoglitore statistiche fallita: %m"
 
-#: postmaster/pgstat.c:438
+#: postmaster/pgstat.c:446
 #, c-format
 msgid "could not send test message on socket for statistics collector: %m"
 msgstr "invio del messaggio di prova al socket per il raccoglitore di statistiche fallito: %m"
 
-#: postmaster/pgstat.c:464
+#: postmaster/pgstat.c:472
 #, c-format
 msgid "select() failed in statistics collector: %m"
 msgstr "select() fallita nel raccoglitore di statistiche: %m"
 
-#: postmaster/pgstat.c:479
+#: postmaster/pgstat.c:487
 #, c-format
 msgid "test message did not get through on socket for statistics collector"
 msgstr "il messaggio di prova non ha raggiunto il socket per il raccoglitore di statistiche"
 
-#: postmaster/pgstat.c:494
+#: postmaster/pgstat.c:502
 #, c-format
 msgid "could not receive test message on socket for statistics collector: %m"
 msgstr "ricezione del messaggio di prova sul socket per il raccoglitore di statistiche fallito: %m"
 
-#: postmaster/pgstat.c:504
+#: postmaster/pgstat.c:512
 #, c-format
 msgid "incorrect test message transmission on socket for statistics collector"
 msgstr "trasmissione errata del messaggio di prova per il raccoglitore di statistiche"
 
-#: postmaster/pgstat.c:527
+#: postmaster/pgstat.c:535
 #, c-format
 msgid "could not set statistics collector socket to nonblocking mode: %m"
 msgstr "impostazione del socket per il raccoglitore di statistiche in modalità non bloccante fallita: %m"
 
-#: postmaster/pgstat.c:537
+#: postmaster/pgstat.c:545
 #, c-format
 msgid "disabling statistics collector for lack of working socket"
 msgstr "raccoglitore di statistiche disabilitato per mancanza di un socket funzionante"
 
-#: postmaster/pgstat.c:684
+#: postmaster/pgstat.c:692
 #, c-format
 msgid "could not fork statistics collector: %m"
 msgstr "fork del raccoglitore di statistiche fallito: %m"
 
-#: postmaster/pgstat.c:1220 postmaster/pgstat.c:1244 postmaster/pgstat.c:1275
+#: postmaster/pgstat.c:1233 postmaster/pgstat.c:1257 postmaster/pgstat.c:1290
 #, c-format
 msgid "must be superuser to reset statistics counters"
 msgstr "occorre essere un superutente per resettare i contatori delle statistiche"
 
-#: postmaster/pgstat.c:1251
+#: postmaster/pgstat.c:1266
 #, c-format
 msgid "unrecognized reset target: \"%s\""
 msgstr "obiettivo del reset sconosciuto: \"%s\""
 
-#: postmaster/pgstat.c:1252
+#: postmaster/pgstat.c:1267
 #, c-format
-msgid "Target must be \"bgwriter\"."
-msgstr "L'obiettivo deve essere \"bgwriter\"."
+msgid "Target must be \"archiver\" or \"bgwriter\"."
+msgstr "L'obiettivo deve essere \"archiver\" o \"bgwriter\"."
 
-#: postmaster/pgstat.c:3197
+#: postmaster/pgstat.c:3280
 #, c-format
 msgid "could not read statistics message: %m"
 msgstr "lettura del messaggio delle statistiche fallito: %m"
 
-#: postmaster/pgstat.c:3526 postmaster/pgstat.c:3697
+#: postmaster/pgstat.c:3613 postmaster/pgstat.c:3790
 #, c-format
 msgid "could not open temporary statistics file \"%s\": %m"
 msgstr "apertura del file temporaneo delle statistiche \"%s\" fallita: %m"
 
-#: postmaster/pgstat.c:3588 postmaster/pgstat.c:3742
+#: postmaster/pgstat.c:3681 postmaster/pgstat.c:3835
 #, c-format
 msgid "could not write temporary statistics file \"%s\": %m"
 msgstr "scrittura del file temporaneo delle statistiche \"%s\" fallita: %m"
 
-#: postmaster/pgstat.c:3597 postmaster/pgstat.c:3751
+#: postmaster/pgstat.c:3690 postmaster/pgstat.c:3844
 #, c-format
 msgid "could not close temporary statistics file \"%s\": %m"
 msgstr "chiusura del file temporaneo delle statistiche \"%s\" fallita: %m"
 
-#: postmaster/pgstat.c:3605 postmaster/pgstat.c:3759
+#: postmaster/pgstat.c:3698 postmaster/pgstat.c:3852
 #, c-format
 msgid "could not rename temporary statistics file \"%s\" to \"%s\": %m"
 msgstr "non è stato possibile rinominare il file temporaneo delle statistiche \"%s\" in \"%s\": %m"
 
-#: postmaster/pgstat.c:3840 postmaster/pgstat.c:4015 postmaster/pgstat.c:4169
+#: postmaster/pgstat.c:3935 postmaster/pgstat.c:4120 postmaster/pgstat.c:4275
 #, c-format
 msgid "could not open statistics file \"%s\": %m"
 msgstr "apertura del file delle statistiche \"%s\" fallita: %m"
 
-#: postmaster/pgstat.c:3852 postmaster/pgstat.c:3862 postmaster/pgstat.c:3883
-#: postmaster/pgstat.c:3898 postmaster/pgstat.c:3956 postmaster/pgstat.c:4027
-#: postmaster/pgstat.c:4047 postmaster/pgstat.c:4065 postmaster/pgstat.c:4081
-#: postmaster/pgstat.c:4099 postmaster/pgstat.c:4115 postmaster/pgstat.c:4181
-#: postmaster/pgstat.c:4193 postmaster/pgstat.c:4218 postmaster/pgstat.c:4240
+#: postmaster/pgstat.c:3947 postmaster/pgstat.c:3957 postmaster/pgstat.c:3967
+#: postmaster/pgstat.c:3988 postmaster/pgstat.c:4003 postmaster/pgstat.c:4061
+#: postmaster/pgstat.c:4132 postmaster/pgstat.c:4152 postmaster/pgstat.c:4170
+#: postmaster/pgstat.c:4186 postmaster/pgstat.c:4204 postmaster/pgstat.c:4220
+#: postmaster/pgstat.c:4287 postmaster/pgstat.c:4299 postmaster/pgstat.c:4311
+#: postmaster/pgstat.c:4336 postmaster/pgstat.c:4358
 #, c-format
 msgid "corrupted statistics file \"%s\""
 msgstr "file delle statistiche corrotto \"%s\""
 
-#: postmaster/pgstat.c:4667
+#: postmaster/pgstat.c:4785
 #, c-format
 msgid "database hash table corrupted during cleanup --- abort"
 msgstr "tabella hash del database corrotta durante la pulizia --- interruzione"
@@ -12098,13 +12673,13 @@ msgstr "%s: max_wal_senders dev'essere minore di max_connections\n"
 
 #: postmaster/postmaster.c:832
 #, c-format
-msgid "WAL archival (archive_mode=on) requires wal_level \"archive\" or \"hot_standby\""
-msgstr "L'archiviazione dei WAL (archive_mode=on) richiede wal_level \"archive\" oppure \"hot_standby\""
+msgid "WAL archival (archive_mode=on) requires wal_level \"archive\", \"hot_standby\", or \"logical\""
+msgstr "l'archiviazione WAL (archive_mode=on) richiede wal_level \"archive\", \"hot_standby\" oppure \"logical\""
 
 #: postmaster/postmaster.c:835
 #, c-format
-msgid "WAL streaming (max_wal_senders > 0) requires wal_level \"archive\" or \"hot_standby\""
-msgstr "lo streaming dei WAL (max_wal_senders > 0) richiede  wal_level \"archive\" oppure \"hot_standby\""
+msgid "WAL streaming (max_wal_senders > 0) requires wal_level \"archive\", \"hot_standby\", or \"logical\""
+msgstr "lo streaming WAL (max_wal_senders > 0) richiede wal_level \"archive\", \"hot_standby\" oppure \"logical\""
 
 #: postmaster/postmaster.c:843
 #, c-format
@@ -12112,7 +12687,7 @@ msgid "%s: invalid datetoken tables, please fix\n"
 msgstr "%s: datetoken tables non valido, per favore correggilo\n"
 
 #: postmaster/postmaster.c:925 postmaster/postmaster.c:1023
-#: utils/init/miscinit.c:1259
+#: utils/init/miscinit.c:1188
 #, c-format
 msgid "invalid list syntax in parameter \"%s\""
 msgstr "sintassi di lista non valida nel parametro \"%s\""
@@ -12157,67 +12732,67 @@ msgstr "%s: modifica dei permessi del file PID esterno \"%s\" fallita: %s\n"
 msgid "%s: could not write external PID file \"%s\": %s\n"
 msgstr "%s: scrittura del file PID esterno \"%s\" fallita: %s\n"
 
-#: postmaster/postmaster.c:1190
+#: postmaster/postmaster.c:1160
 #, c-format
 msgid "ending log output to stderr"
 msgstr "terminazione dell'output del log su stderr"
 
-#: postmaster/postmaster.c:1191
+#: postmaster/postmaster.c:1161
 #, c-format
 msgid "Future log output will go to log destination \"%s\"."
 msgstr "L'output dei prossimi log andrà su \"%s\"."
 
-#: postmaster/postmaster.c:1217 utils/init/postinit.c:199
+#: postmaster/postmaster.c:1187 utils/init/postinit.c:199
 #, c-format
 msgid "could not load pg_hba.conf"
 msgstr "caricamento di pg_hba.conf fallito"
 
-#: postmaster/postmaster.c:1293
+#: postmaster/postmaster.c:1263
 #, c-format
 msgid "%s: could not locate matching postgres executable"
 msgstr "%s: eseguibile postgres corrispondente non trovato"
 
-#: postmaster/postmaster.c:1316 utils/misc/tzparser.c:325
+#: postmaster/postmaster.c:1286 utils/misc/tzparser.c:325
 #, c-format
 msgid "This may indicate an incomplete PostgreSQL installation, or that the file \"%s\" has been moved away from its proper location."
 msgstr "Questo potrebbe indicare una installazione di PostgreSQL incompleta, o che il file \"%s\" sia stato spostato dalla sua posizione corretta."
 
-#: postmaster/postmaster.c:1344
+#: postmaster/postmaster.c:1314
 #, c-format
 msgid "data directory \"%s\" does not exist"
 msgstr "la directory dei dati \"%s\" non esiste"
 
-#: postmaster/postmaster.c:1349
+#: postmaster/postmaster.c:1319
 #, c-format
 msgid "could not read permissions of directory \"%s\": %m"
 msgstr "lettura dei permessi della directory \"%s\" fallita: %m"
 
-#: postmaster/postmaster.c:1357
+#: postmaster/postmaster.c:1327
 #, c-format
 msgid "specified data directory \"%s\" is not a directory"
 msgstr "la directory dei dati specificata \"%s\" non è una directory"
 
-#: postmaster/postmaster.c:1373
+#: postmaster/postmaster.c:1343
 #, c-format
 msgid "data directory \"%s\" has wrong ownership"
 msgstr "la directory dei dati \"%s\" ha il proprietario errato"
 
-#: postmaster/postmaster.c:1375
+#: postmaster/postmaster.c:1345
 #, c-format
 msgid "The server must be started by the user that owns the data directory."
 msgstr "Il server deve essere avviato dall'utente che possiede la directory dei dati."
 
-#: postmaster/postmaster.c:1395
+#: postmaster/postmaster.c:1365
 #, c-format
 msgid "data directory \"%s\" has group or world access"
 msgstr "la directory dei dati \"%s\" è accessibile dal gruppo o da tutti"
 
-#: postmaster/postmaster.c:1397
+#: postmaster/postmaster.c:1367
 #, c-format
 msgid "Permissions should be u=rwx (0700)."
 msgstr "I permessi dovrebbero essere u=rwx (0700)."
 
-#: postmaster/postmaster.c:1408
+#: postmaster/postmaster.c:1378
 #, c-format
 msgid ""
 "%s: could not find the database system\n"
@@ -12228,441 +12803,404 @@ msgstr ""
 "Sarebbe dovuto essere nella directory \"%s\",\n"
 "ma l'apertura del file \"%s\" è fallita: %s\n"
 
-#: postmaster/postmaster.c:1560
+#: postmaster/postmaster.c:1546
 #, c-format
 msgid "select() failed in postmaster: %m"
 msgstr "select() fallita in postmaster: %m"
 
-#: postmaster/postmaster.c:1730 postmaster/postmaster.c:1761
+#: postmaster/postmaster.c:1741 postmaster/postmaster.c:1772
 #, c-format
 msgid "incomplete startup packet"
 msgstr "pacchetto di avvio incompleto"
 
-#: postmaster/postmaster.c:1742
+#: postmaster/postmaster.c:1753
 #, c-format
 msgid "invalid length of startup packet"
 msgstr "dimensione del pacchetto di avvio non valida"
 
-#: postmaster/postmaster.c:1799
+#: postmaster/postmaster.c:1810
 #, c-format
 msgid "failed to send SSL negotiation response: %m"
 msgstr "invio della risposta di negoziazione SSL fallito: %m"
 
-#: postmaster/postmaster.c:1828
+#: postmaster/postmaster.c:1839
 #, c-format
 msgid "unsupported frontend protocol %u.%u: server supports %u.0 to %u.%u"
 msgstr "protocollo frontend non supportato %u.%u: il server supporta da %u.0 a %u.%u"
 
-#: postmaster/postmaster.c:1879
+#: postmaster/postmaster.c:1902
 #, c-format
-msgid "invalid value for boolean option \"replication\""
-msgstr "valore per l'opzione booleana \"replication\" non valido"
+msgid "invalid value for parameter \"replication\""
+msgstr "valore non valido per il parametro \"replication\""
 
-#: postmaster/postmaster.c:1899
+#: postmaster/postmaster.c:1903
+#, c-format
+msgid "Valid values are: false, 0, true, 1, database."
+msgstr "I valori validi sono: false, 0, true, 1, database."
+
+#: postmaster/postmaster.c:1923
 #, c-format
 msgid "invalid startup packet layout: expected terminator as last byte"
 msgstr "formato del pacchetto di avvio non valido: atteso il terminatore all'ultimo byte"
 
-#: postmaster/postmaster.c:1927
+#: postmaster/postmaster.c:1951
 #, c-format
 msgid "no PostgreSQL user name specified in startup packet"
 msgstr "nessun utente PostgreSQL specificato nel pacchetto di avvio"
 
-#: postmaster/postmaster.c:1984
+#: postmaster/postmaster.c:2010
 #, c-format
 msgid "the database system is starting up"
 msgstr "il database si sta avviando"
 
-#: postmaster/postmaster.c:1989
+#: postmaster/postmaster.c:2015
 #, c-format
 msgid "the database system is shutting down"
 msgstr "il database si sta spegnendo"
 
-#: postmaster/postmaster.c:1994
+#: postmaster/postmaster.c:2020
 #, c-format
 msgid "the database system is in recovery mode"
 msgstr "il database è in modalità di ripristino"
 
-#: postmaster/postmaster.c:1999 storage/ipc/procarray.c:278
-#: storage/ipc/sinvaladt.c:304 storage/lmgr/proc.c:339
+#: postmaster/postmaster.c:2025 storage/ipc/procarray.c:286
+#: storage/ipc/sinvaladt.c:305 storage/lmgr/proc.c:339
 #, c-format
 msgid "sorry, too many clients already"
 msgstr "spiacente, troppi client già connessi"
 
-#: postmaster/postmaster.c:2061
+#: postmaster/postmaster.c:2087
 #, c-format
 msgid "wrong key in cancel request for process %d"
 msgstr "chiave sbagliata nella richiesta di annullamento per il processo %d"
 
-#: postmaster/postmaster.c:2069
+#: postmaster/postmaster.c:2095
 #, c-format
 msgid "PID %d in cancel request did not match any process"
 msgstr "il PID %d nella richiesta di annullamento non corrisponde ad alcun processo"
 
-#: postmaster/postmaster.c:2289
+#: postmaster/postmaster.c:2315
 #, c-format
 msgid "received SIGHUP, reloading configuration files"
 msgstr "SIGHUP ricevuto, sto ricaricando i file di configurazione"
 
-#: postmaster/postmaster.c:2315
+#: postmaster/postmaster.c:2341
 #, c-format
 msgid "pg_hba.conf not reloaded"
 msgstr "pg_hba.conf non è stato ricaricato"
 
-#: postmaster/postmaster.c:2319
+#: postmaster/postmaster.c:2345
 #, c-format
 msgid "pg_ident.conf not reloaded"
 msgstr "pg_ident.conf non è stato ricaricato"
 
-#: postmaster/postmaster.c:2360
+#: postmaster/postmaster.c:2386
 #, c-format
 msgid "received smart shutdown request"
 msgstr "richiesta di arresto smart ricevuta"
 
-#: postmaster/postmaster.c:2413
+#: postmaster/postmaster.c:2439
 #, c-format
 msgid "received fast shutdown request"
 msgstr "richiesta di arresto fast ricevuta"
 
-#: postmaster/postmaster.c:2439
+#: postmaster/postmaster.c:2465
 #, c-format
 msgid "aborting any active transactions"
 msgstr "interruzione di tutte le transazioni attive"
 
-#: postmaster/postmaster.c:2469
+#: postmaster/postmaster.c:2499
 #, c-format
 msgid "received immediate shutdown request"
 msgstr "richiesta di arresto immediate ricevuta"
 
-#: postmaster/postmaster.c:2540 postmaster/postmaster.c:2561
+#: postmaster/postmaster.c:2563 postmaster/postmaster.c:2584
 msgid "startup process"
 msgstr "avvio del processo"
 
-#: postmaster/postmaster.c:2543
+#: postmaster/postmaster.c:2566
 #, c-format
 msgid "aborting startup due to startup process failure"
 msgstr "avvio interrotto a causa del fallimento del processo di avvio"
 
-#: postmaster/postmaster.c:2600
+#: postmaster/postmaster.c:2624
 #, c-format
 msgid "database system is ready to accept connections"
 msgstr "il database è pronto ad accettare connessioni"
 
-#: postmaster/postmaster.c:2615
+#: postmaster/postmaster.c:2639
 msgid "background writer process"
 msgstr "processo di scrittura in background"
 
-#: postmaster/postmaster.c:2669
+#: postmaster/postmaster.c:2693
 msgid "checkpointer process"
 msgstr "processo di creazione checkpoint"
 
-#: postmaster/postmaster.c:2685
+#: postmaster/postmaster.c:2709
 msgid "WAL writer process"
 msgstr "processo di scrittura WAL"
 
-#: postmaster/postmaster.c:2699
+#: postmaster/postmaster.c:2723
 msgid "WAL receiver process"
 msgstr "processo di ricezione WAL"
 
-#: postmaster/postmaster.c:2714
+#: postmaster/postmaster.c:2738
 msgid "autovacuum launcher process"
 msgstr "processo del lanciatore di autovacuum"
 
-#: postmaster/postmaster.c:2729
+#: postmaster/postmaster.c:2753
 msgid "archiver process"
 msgstr "processo di archiviazione"
 
-#: postmaster/postmaster.c:2745
+#: postmaster/postmaster.c:2769
 msgid "statistics collector process"
 msgstr "processo del raccoglitore di statistiche"
 
-#: postmaster/postmaster.c:2759
+#: postmaster/postmaster.c:2783
 msgid "system logger process"
 msgstr "processo del logger di sistema"
 
-#: postmaster/postmaster.c:2821
+#: postmaster/postmaster.c:2845
 msgid "worker process"
 msgstr "processo di lavoro"
 
-#: postmaster/postmaster.c:2891 postmaster/postmaster.c:2910
-#: postmaster/postmaster.c:2917 postmaster/postmaster.c:2935
+#: postmaster/postmaster.c:2931 postmaster/postmaster.c:2951
+#: postmaster/postmaster.c:2958 postmaster/postmaster.c:2976
 msgid "server process"
 msgstr "processo del server"
 
-#: postmaster/postmaster.c:2971
+#: postmaster/postmaster.c:3030
 #, c-format
 msgid "terminating any other active server processes"
 msgstr "interruzione di tutti gli altri processi attivi del server"
 
 #. translator: %s is a noun phrase describing a child process, such as
 #. "server process"
-#: postmaster/postmaster.c:3216
+#: postmaster/postmaster.c:3285
 #, c-format
 msgid "%s (PID %d) exited with exit code %d"
 msgstr "%s (PID %d) è uscito con codice di uscita %d"
 
-#: postmaster/postmaster.c:3218 postmaster/postmaster.c:3229
-#: postmaster/postmaster.c:3240 postmaster/postmaster.c:3249
-#: postmaster/postmaster.c:3259
+#: postmaster/postmaster.c:3287 postmaster/postmaster.c:3298
+#: postmaster/postmaster.c:3309 postmaster/postmaster.c:3318
+#: postmaster/postmaster.c:3328
 #, c-format
 msgid "Failed process was running: %s"
 msgstr "Il processo fallito stava eseguendo: %s"
 
 #. translator: %s is a noun phrase describing a child process, such as
 #. "server process"
-#: postmaster/postmaster.c:3226
+#: postmaster/postmaster.c:3295
 #, c-format
 msgid "%s (PID %d) was terminated by exception 0x%X"
 msgstr "%s (PID %d) è stato terminato dall'eccezione 0x%X"
 
 #. translator: %s is a noun phrase describing a child process, such as
 #. "server process"
-#: postmaster/postmaster.c:3236
+#: postmaster/postmaster.c:3305
 #, c-format
 msgid "%s (PID %d) was terminated by signal %d: %s"
 msgstr "%s (PID %d) è stato terminato dal segnale %d: %s"
 
 #. translator: %s is a noun phrase describing a child process, such as
 #. "server process"
-#: postmaster/postmaster.c:3247
+#: postmaster/postmaster.c:3316
 #, c-format
 msgid "%s (PID %d) was terminated by signal %d"
 msgstr "%s (PID %d) è stato terminato dal segnale %d"
 
 #. translator: %s is a noun phrase describing a child process, such as
 #. "server process"
-#: postmaster/postmaster.c:3257
+#: postmaster/postmaster.c:3326
 #, c-format
 msgid "%s (PID %d) exited with unrecognized status %d"
 msgstr "%s (PID %d) uscito con stato sconosciuto %d"
 
-#: postmaster/postmaster.c:3442
+#: postmaster/postmaster.c:3514
 #, c-format
 msgid "abnormal database system shutdown"
 msgstr "spegnimento anormale del database"
 
-#: postmaster/postmaster.c:3481
+#: postmaster/postmaster.c:3553
 #, c-format
 msgid "all server processes terminated; reinitializing"
 msgstr "tutti i processi server sono terminati; re-inizializzazione"
 
-#: postmaster/postmaster.c:3697
+#: postmaster/postmaster.c:3805
 #, c-format
 msgid "could not fork new process for connection: %m"
 msgstr "fork del nuovo processo per la connessione fallito: %m"
 
-#: postmaster/postmaster.c:3739
+#: postmaster/postmaster.c:3847
 msgid "could not fork new process for connection: "
 msgstr "fork del nuovo processo per la connessione fallito: "
 
-#: postmaster/postmaster.c:3846
+#: postmaster/postmaster.c:3954
 #, c-format
 msgid "connection received: host=%s port=%s"
 msgstr "connessione ricevuta: host=%s porta=%s"
 
-#: postmaster/postmaster.c:3851
+#: postmaster/postmaster.c:3959
 #, c-format
 msgid "connection received: host=%s"
 msgstr "connessione ricevuta: host=%s"
 
-#: postmaster/postmaster.c:4126
+#: postmaster/postmaster.c:4249
 #, c-format
 msgid "could not execute server process \"%s\": %m"
 msgstr "esecuzione del processo del server \"%s\" fallita: %m"
 
-#: postmaster/postmaster.c:4664
+#: postmaster/postmaster.c:4799
 #, c-format
 msgid "database system is ready to accept read only connections"
 msgstr "il database è pronto ad accettare connessioni in sola lettura"
 
-#: postmaster/postmaster.c:4975
+#: postmaster/postmaster.c:5112
 #, c-format
 msgid "could not fork startup process: %m"
 msgstr "fork del processo di avvio fallito: %m"
 
-#: postmaster/postmaster.c:4979
+#: postmaster/postmaster.c:5116
 #, c-format
 msgid "could not fork background writer process: %m"
 msgstr "fork del processo di scrittura in background fallito: %m"
 
-#: postmaster/postmaster.c:4983
+#: postmaster/postmaster.c:5120
 #, c-format
 msgid "could not fork checkpointer process: %m"
 msgstr "fork del processo di creazione dei checkpoint fallito: %m"
 
-#: postmaster/postmaster.c:4987
+#: postmaster/postmaster.c:5124
 #, c-format
 msgid "could not fork WAL writer process: %m"
 msgstr "fork del processo di scrittura dei WAL fallito: %m"
 
-#: postmaster/postmaster.c:4991
+#: postmaster/postmaster.c:5128
 #, c-format
 msgid "could not fork WAL receiver process: %m"
 msgstr "fork del processo di ricezione dei WAL fallito: %m"
 
-#: postmaster/postmaster.c:4995
+#: postmaster/postmaster.c:5132
 #, c-format
 msgid "could not fork process: %m"
 msgstr "fork del processo fallito: %m"
 
-#: postmaster/postmaster.c:5174
-#, c-format
-msgid "registering background worker \"%s\""
-msgstr "registrazione del processo di lavoro in background \"%s\""
-
-#: postmaster/postmaster.c:5181
-#, c-format
-msgid "background worker \"%s\": must be registered in shared_preload_libraries"
-msgstr "processo di lavoro in background \"%s\": deve essere registrato in shared_preload_libraries"
-
-#: postmaster/postmaster.c:5194
-#, c-format
-msgid "background worker \"%s\": must attach to shared memory in order to be able to request a database connection"
-msgstr "processo di lavoro in background \"%s\": deve essere attaccato alla memoria condivisa per poter richiedere una connessione di database"
-
-#: postmaster/postmaster.c:5204
-#, c-format
-msgid "background worker \"%s\": cannot request database access if starting at postmaster start"
-msgstr "processo di lavoro in background \"%s\": non è possibile richiedere accesso al database se avviato all'avvio di postmaster"
-
-#: postmaster/postmaster.c:5219
-#, c-format
-msgid "background worker \"%s\": invalid restart interval"
-msgstr "processo di lavoro in background \"%s\": intervallo di riavvio non valido"
-
-#: postmaster/postmaster.c:5235
-#, c-format
-msgid "too many background workers"
-msgstr "troppi processi di lavoro in background"
-
-#: postmaster/postmaster.c:5236
-#, c-format
-msgid "Up to %d background worker can be registered with the current settings."
-msgid_plural "Up to %d background workers can be registered with the current settings."
-msgstr[0] "Le impostazioni correnti consentono la registrazione di un massimo di %d processi di lavoro in background."
-msgstr[1] "Le impostazioni correnti consentono la registrazione di un massimo di %d processi di lavoro in background."
-
-#: postmaster/postmaster.c:5279
+#: postmaster/postmaster.c:5294
 #, c-format
 msgid "database connection requirement not indicated during registration"
 msgstr "requisiti di connessione a database non indicati durante la registrazione"
 
-#: postmaster/postmaster.c:5286
+#: postmaster/postmaster.c:5301
 #, c-format
 msgid "invalid processing mode in background worker"
 msgstr "modalità di processo non valida nel processo di lavoro in background"
 
-#: postmaster/postmaster.c:5360
-#, c-format
-msgid "terminating background worker \"%s\" due to administrator command"
-msgstr "interruzione del processo di lavoro in background \"%s\" a causa di comando amministrativo"
-
-#: postmaster/postmaster.c:5577
+#: postmaster/postmaster.c:5353
 #, c-format
 msgid "starting background worker process \"%s\""
 msgstr "avvio del processo di lavoro in background \"%s\""
 
-#: postmaster/postmaster.c:5588
+#: postmaster/postmaster.c:5364
 #, c-format
 msgid "could not fork worker process: %m"
 msgstr "fork del processo di lavoro in background fallito: %m"
 
-#: postmaster/postmaster.c:5940
+#: postmaster/postmaster.c:5753
 #, c-format
 msgid "could not duplicate socket %d for use in backend: error code %d"
 msgstr "duplicazione del socket %d da usare nel backend fallita: codice errore %d"
 
-#: postmaster/postmaster.c:5972
+#: postmaster/postmaster.c:5785
 #, c-format
 msgid "could not create inherited socket: error code %d\n"
 msgstr "creazione del socket ereditato fallita: codice errore %d\n"
 
-#: postmaster/postmaster.c:6001 postmaster/postmaster.c:6008
+#: postmaster/postmaster.c:5814 postmaster/postmaster.c:5821
 #, c-format
 msgid "could not read from backend variables file \"%s\": %s\n"
 msgstr "lettura dal file delle variabili del backend \"%s\" fallita: %s\n"
 
-#: postmaster/postmaster.c:6017
+#: postmaster/postmaster.c:5830
 #, c-format
 msgid "could not remove file \"%s\": %s\n"
 msgstr "rimozione del file \"%s\" fallita: %s\n"
 
-#: postmaster/postmaster.c:6034
+#: postmaster/postmaster.c:5847
 #, c-format
 msgid "could not map view of backend variables: error code %lu\n"
 msgstr "non è stato possibile mappare la vista delle variabili del backend: codice errore %lu\n"
 
-#: postmaster/postmaster.c:6043
+#: postmaster/postmaster.c:5856
 #, c-format
 msgid "could not unmap view of backend variables: error code %lu\n"
 msgstr "non è stato possibile rimuovere la mappa della vista delle variabili del backend: codice errore %lu\n"
 
-#: postmaster/postmaster.c:6050
+#: postmaster/postmaster.c:5863
 #, c-format
 msgid "could not close handle to backend parameter variables: error code %lu\n"
 msgstr "chiusura dell'handle dei parametri variabili del backend fallita: codice errore %lu\n"
 
-#: postmaster/postmaster.c:6206
+#: postmaster/postmaster.c:6022
 #, c-format
 msgid "could not read exit code for process\n"
 msgstr "lettura del codice di uscita del processo fallita\n"
 
-#: postmaster/postmaster.c:6211
+#: postmaster/postmaster.c:6027
 #, c-format
 msgid "could not post child completion status\n"
 msgstr "invio dello stato di completamento del figlio fallito\n"
 
-#: postmaster/syslogger.c:468 postmaster/syslogger.c:1067
+#: postmaster/syslogger.c:463 postmaster/syslogger.c:1064
 #, c-format
 msgid "could not read from logger pipe: %m"
 msgstr "lettura dalla pipe del logger fallita: %m"
 
-#: postmaster/syslogger.c:517
+#: postmaster/syslogger.c:512
 #, c-format
 msgid "logger shutting down"
 msgstr "spegnimento del logger"
 
-#: postmaster/syslogger.c:561 postmaster/syslogger.c:575
+#: postmaster/syslogger.c:556 postmaster/syslogger.c:570
 #, c-format
 msgid "could not create pipe for syslog: %m"
 msgstr "creazione della pipe per il syslog fallita: %m"
 
-#: postmaster/syslogger.c:611
+#: postmaster/syslogger.c:606
 #, c-format
 msgid "could not fork system logger: %m"
 msgstr "fork del logger di sistema fallito: %m"
 
-#: postmaster/syslogger.c:647
+#: postmaster/syslogger.c:643
 #, c-format
 msgid "redirecting log output to logging collector process"
 msgstr "redirezione dell'output ti log al processo di raccolta dei log"
 
-#: postmaster/syslogger.c:648
+#: postmaster/syslogger.c:644
 #, c-format
 msgid "Future log output will appear in directory \"%s\"."
 msgstr "I prossimi output di log appariranno nella directory \"%s\"."
 
-#: postmaster/syslogger.c:656
+#: postmaster/syslogger.c:652
 #, c-format
 msgid "could not redirect stdout: %m"
 msgstr "redirezione di stdout fallita: %m"
 
-#: postmaster/syslogger.c:661 postmaster/syslogger.c:677
+#: postmaster/syslogger.c:657 postmaster/syslogger.c:674
 #, c-format
 msgid "could not redirect stderr: %m"
 msgstr "redirezione di stderr fallita: %m"
 
-#: postmaster/syslogger.c:1022
+#: postmaster/syslogger.c:1019
 #, c-format
 msgid "could not write to log file: %s\n"
 msgstr "scrittura nel file di log fallita: %s\n"
 
-#: postmaster/syslogger.c:1162
+#: postmaster/syslogger.c:1159
 #, c-format
 msgid "could not open log file \"%s\": %m"
 msgstr "apertura del file di log \"%s\" fallita: %m"
 
-#: postmaster/syslogger.c:1224 postmaster/syslogger.c:1268
+#: postmaster/syslogger.c:1221 postmaster/syslogger.c:1265
 #, c-format
 msgid "disabling automatic rotation (use SIGHUP to re-enable)"
 msgstr "rotazione automatica disabilitata (usa SIGHUP per abilitarla di nuovo)"
@@ -12672,170 +13210,468 @@ msgstr "rotazione automatica disabilitata (usa SIGHUP per abilitarla di nuovo)"
 msgid "could not determine which collation to use for regular expression"
 msgstr "non è stato possibile determinare quale ordinamento usare per le espressioni regolari"
 
-#: replication/basebackup.c:140 replication/basebackup.c:922
-#: utils/adt/misc.c:360
+#: replication/basebackup.c:184 replication/basebackup.c:1044
+#: utils/adt/misc.c:353
 #, c-format
 msgid "could not read symbolic link \"%s\": %m"
 msgstr "lettura del link simbolico \"%s\" fallita: %m"
 
-#: replication/basebackup.c:147 replication/basebackup.c:926
-#: utils/adt/misc.c:364
+#: replication/basebackup.c:191 replication/basebackup.c:1048
+#: utils/adt/misc.c:357
 #, c-format
 msgid "symbolic link \"%s\" target is too long"
 msgstr "la destinazione del link simbolico \"%s\" è troppo lunga"
 
-#: replication/basebackup.c:216
+#: replication/basebackup.c:284
 #, c-format
 msgid "could not stat control file \"%s\": %m"
 msgstr "non è stato possibile ottenere informazioni sul file di controllo \"%s\": %m"
 
-#: replication/basebackup.c:328
+#: replication/basebackup.c:396
 #, c-format
 msgid "could not find any WAL files"
 msgstr "nessun file WAL trovato"
 
-#: replication/basebackup.c:341 replication/basebackup.c:355
-#: replication/basebackup.c:364
+#: replication/basebackup.c:409 replication/basebackup.c:423
+#: replication/basebackup.c:432
 #, c-format
 msgid "could not find WAL file \"%s\""
 msgstr "file WAL \"%s\" non trovato"
 
-#: replication/basebackup.c:403 replication/basebackup.c:426
+#: replication/basebackup.c:471 replication/basebackup.c:496
 #, c-format
 msgid "unexpected WAL file size \"%s\""
 msgstr "dimensione inaspettata del file WAL \"%s\""
 
-#: replication/basebackup.c:414 replication/basebackup.c:1064
+#: replication/basebackup.c:482 replication/basebackup.c:1186
 #, c-format
 msgid "base backup could not send data, aborting backup"
 msgstr "invio dati da parte del backup di base fallito, backup interrotto"
 
-#: replication/basebackup.c:498 replication/basebackup.c:507
-#: replication/basebackup.c:516 replication/basebackup.c:525
-#: replication/basebackup.c:534
+#: replication/basebackup.c:569 replication/basebackup.c:578
+#: replication/basebackup.c:587 replication/basebackup.c:596
+#: replication/basebackup.c:605 replication/basebackup.c:616
 #, c-format
 msgid "duplicate option \"%s\""
 msgstr "opzione duplicata \"%s\""
 
-#: replication/basebackup.c:789 replication/basebackup.c:876
+#: replication/basebackup.c:622 utils/misc/guc.c:5420
+#, c-format
+msgid "%d is outside the valid range for parameter \"%s\" (%d .. %d)"
+msgstr "%d non è compreso nell'intervallo di validità del il parametro \"%s\" (%d .. %d)"
+
+#: replication/basebackup.c:879 replication/basebackup.c:972
 #, c-format
 msgid "could not stat file or directory \"%s\": %m"
 msgstr "non è stato possibile ottenere informazioni sul file o directory \"%s\": %m"
 
-#: replication/basebackup.c:1000
+#: replication/basebackup.c:1122
 #, c-format
 msgid "skipping special file \"%s\""
 msgstr "file speciale \"%s\" saltato"
 
-#: replication/basebackup.c:1054
+#: replication/basebackup.c:1176
 #, c-format
 msgid "archive member \"%s\" too large for tar format"
 msgstr "il membro \"%s\" dell'archivio è troppo grande per il formato tar"
 
-#: replication/libpqwalreceiver/libpqwalreceiver.c:105
+#: replication/libpqwalreceiver/libpqwalreceiver.c:106
 #, c-format
 msgid "could not connect to the primary server: %s"
 msgstr "connessione al server primario fallita: %s"
 
-#: replication/libpqwalreceiver/libpqwalreceiver.c:129
+#: replication/libpqwalreceiver/libpqwalreceiver.c:130
 #, c-format
 msgid "could not receive database system identifier and timeline ID from the primary server: %s"
 msgstr "ricezione fallita dell'identificativo del database e l'ID della timeline dal server primario: %s"
 
-#: replication/libpqwalreceiver/libpqwalreceiver.c:140
-#: replication/libpqwalreceiver/libpqwalreceiver.c:287
+#: replication/libpqwalreceiver/libpqwalreceiver.c:141
+#: replication/libpqwalreceiver/libpqwalreceiver.c:294
 #, c-format
 msgid "invalid response from primary server"
 msgstr "risposta non valida dal server primario"
 
-#: replication/libpqwalreceiver/libpqwalreceiver.c:141
+#: replication/libpqwalreceiver/libpqwalreceiver.c:142
 #, c-format
-msgid "Expected 1 tuple with 3 fields, got %d tuples with %d fields."
-msgstr "Attesa una tupla con tre campi, ricevute %d tuple con %d campi."
+msgid "Could not identify system: got %d rows and %d fields, expected %d rows and %d or more fields."
+msgstr "Identificazione del sistema non riuscita: ricevute %d righe and %d campi, attese %d righe e %d o più campi."
 
-#: replication/libpqwalreceiver/libpqwalreceiver.c:156
+#: replication/libpqwalreceiver/libpqwalreceiver.c:158
 #, c-format
 msgid "database system identifier differs between the primary and standby"
 msgstr "l'identificativo del database è diverso tra il primario e lo standby"
 
-#: replication/libpqwalreceiver/libpqwalreceiver.c:157
+#: replication/libpqwalreceiver/libpqwalreceiver.c:159
 #, c-format
 msgid "The primary's identifier is %s, the standby's identifier is %s."
 msgstr "L'identificativo del primario è %s, quello dello standby è %s."
 
-#: replication/libpqwalreceiver/libpqwalreceiver.c:194
+#: replication/libpqwalreceiver/libpqwalreceiver.c:201
 #, c-format
 msgid "could not start WAL streaming: %s"
 msgstr "avvio dello streaming dei WAL fallito: %s"
 
-#: replication/libpqwalreceiver/libpqwalreceiver.c:212
+#: replication/libpqwalreceiver/libpqwalreceiver.c:219
 #, c-format
 msgid "could not send end-of-streaming message to primary: %s"
 msgstr "invio del messaggio di fine stream al primario fallito: %s"
 
-#: replication/libpqwalreceiver/libpqwalreceiver.c:234
+#: replication/libpqwalreceiver/libpqwalreceiver.c:241
 #, c-format
 msgid "unexpected result set after end-of-streaming"
 msgstr "risultato imprevisto dopo la fine stream"
 
-#: replication/libpqwalreceiver/libpqwalreceiver.c:246
+#: replication/libpqwalreceiver/libpqwalreceiver.c:253
 #, c-format
 msgid "error reading result of streaming command: %s"
 msgstr "errore nella lettura del risultato del comando di streaming: %s"
 
-#: replication/libpqwalreceiver/libpqwalreceiver.c:253
+#: replication/libpqwalreceiver/libpqwalreceiver.c:260
 #, c-format
 msgid "unexpected result after CommandComplete: %s"
 msgstr "risultato imprevisto dopo CommandComplete: %s"
 
-#: replication/libpqwalreceiver/libpqwalreceiver.c:276
+#: replication/libpqwalreceiver/libpqwalreceiver.c:283
 #, c-format
 msgid "could not receive timeline history file from the primary server: %s"
 msgstr "errore nella ricezione del file di storia della timeline dal server primario: %s"
 
-#: replication/libpqwalreceiver/libpqwalreceiver.c:288
+#: replication/libpqwalreceiver/libpqwalreceiver.c:295
 #, c-format
 msgid "Expected 1 tuple with 2 fields, got %d tuples with %d fields."
 msgstr "Attesa una tupla con 2 campi, ricevute %d tuple con %d campi."
 
-#: replication/libpqwalreceiver/libpqwalreceiver.c:316
+#: replication/libpqwalreceiver/libpqwalreceiver.c:323
 #, c-format
 msgid "socket not open"
 msgstr "socket non aperto"
 
-#: replication/libpqwalreceiver/libpqwalreceiver.c:489
-#: replication/libpqwalreceiver/libpqwalreceiver.c:512
-#: replication/libpqwalreceiver/libpqwalreceiver.c:518
+#: replication/libpqwalreceiver/libpqwalreceiver.c:496
+#: replication/libpqwalreceiver/libpqwalreceiver.c:519
+#: replication/libpqwalreceiver/libpqwalreceiver.c:525
 #, c-format
 msgid "could not receive data from WAL stream: %s"
 msgstr "ricezione dati dallo stream WAL fallita: %s"
 
-#: replication/libpqwalreceiver/libpqwalreceiver.c:537
+#: replication/libpqwalreceiver/libpqwalreceiver.c:544
 #, c-format
 msgid "could not send data to WAL stream: %s"
 msgstr "invio dati allo stream WAL fallito: %s"
 
-#: replication/syncrep.c:207
+#: replication/logical/logical.c:81
+#, c-format
+msgid "logical decoding requires wal_level >= logical"
+msgstr "la decodifica logica richiede wal_level >= logical"
+
+#: replication/logical/logical.c:86
+#, c-format
+msgid "logical decoding requires a database connection"
+msgstr "la decodifica logica richiede una connessione al database"
+
+#: replication/logical/logical.c:104
+#, c-format
+msgid "logical decoding cannot be used while in recovery"
+msgstr "la decodifica logica non può essere usata in modalità di recupero"
+
+#: replication/logical/logical.c:221
+#, c-format
+msgid "cannot use physical replication slot created for logical decoding"
+msgstr "non si possono usare slot di replica fisica creati per la decodifica logica"
+
+#: replication/logical/logical.c:226 replication/logical/logical.c:377
+#, c-format
+msgid "replication slot \"%s\" was not created in this database"
+msgstr "lo slot di replica \"%s\" non è stato creato in questo database"
+
+#: replication/logical/logical.c:233
+#, c-format
+msgid "cannot create logical replication slot in transaction that has performed writes"
+msgstr "non si possono creare slot di replica logica in transazioni che hanno effettuato scritture"
+
+#: replication/logical/logical.c:372
+#, c-format
+msgid "cannot use physical replication slot for logical decoding"
+msgstr "non si possono usare slot di replica fisica per la decodifica logica"
+
+#: replication/logical/logical.c:413
+#, c-format
+msgid "starting logical decoding for slot %s"
+msgstr "avvio della decodifica logica per lo slot %s"
+
+#: replication/logical/logical.c:415
+#, c-format
+msgid "streaming transactions committing after %X/%X, reading WAL from %X/%X"
+msgstr "commit dello streaming delle transazioni dopo %X/%X, lettura del wal a partire da %X/%X"
+
+#: replication/logical/logical.c:550
+#, c-format
+msgid "slot \"%s\", output plugin \"%s\", in the %s callback, associated LSN %X/%X"
+msgstr "slot \"%s\", plugin di output \"%s\", nel callback %s, LSN associato %X/%X"
+
+#: replication/logical/logical.c:557
+#, c-format
+msgid "slot \"%s\", output plugin \"%s\", in the %s callback"
+msgstr "slot \"%s\", plugin di output \"%s\", nel callback %s"
+
+#: replication/logical/logicalfuncs.c:190 replication/walsender.c:2123
+#, c-format
+msgid "could not read from log segment %s, offset %u, length %lu: %m"
+msgstr "lettura del segmento di log %s, posizione %u, lunghezza %lu fallita: %m"
+
+#: replication/logical/logicalfuncs.c:209 replication/slotfuncs.c:32
+#, c-format
+msgid "must be superuser or replication role to use replication slots"
+msgstr "solo un superutente o il ruolo di replica può usare uno slot di replica"
+
+#: replication/logical/logicalfuncs.c:339
+#, c-format
+msgid "array must be one-dimensional"
+msgstr "l'array deve essere monodimensionale"
+
+#: replication/logical/logicalfuncs.c:345
+#, c-format
+msgid "array must not contain nulls"
+msgstr "l'array non deve contenere NULL"
+
+#: replication/logical/logicalfuncs.c:361 utils/adt/json.c:2159
+#, c-format
+msgid "array must have even number of elements"
+msgstr "l'array deve avere un numero pari di elementi"
+
+#: replication/logical/logicalfuncs.c:404
+#, c-format
+msgid "output plugin cannot produce binary output"
+msgstr "un plugin di output non può produrre un output binario"
+
+#: replication/logical/reorderbuffer.c:2101
+#, c-format
+msgid "could not write to data file for XID %u: %m"
+msgstr "scrittura nel file di dati per lo XID %u non riuscita: %m"
+
+#: replication/logical/reorderbuffer.c:2197
+#: replication/logical/reorderbuffer.c:2217
+#, c-format
+msgid "could not read from reorderbuffer spill file: %m"
+msgstr "lettura dal file spill reorderbuffer non riuscita: %m"
+
+#: replication/logical/reorderbuffer.c:2201
+#, c-format
+msgid "incomplete read from reorderbuffer spill file: read %d instead of %u bytes"
+msgstr "lettura incompleta dal file spill reorderbuffer: letti %d byte invece di %u"
+
+#: replication/logical/reorderbuffer.c:2221
+#, c-format
+msgid "could not read from reorderbuffer spill file: read %d instead of %u bytes"
+msgstr "lettura dal file spill reorderbuffer non riuscita: letti %d byte invece di %u"
+
+#: replication/logical/reorderbuffer.c:2827
+#, c-format
+msgid "could not read from file \"%s\": read %d instead of %d bytes"
+msgstr "lettura dal file \"%s\" non riuscita: letti %d byte invece di %d"
+
+#: replication/logical/snapbuild.c:601
+#, c-format
+msgid "exported logical decoding snapshot: \"%s\" with %u xids"
+msgstr "snapshot di decidifica logica esportati: \"%s\" con %u xid"
+
+#: replication/logical/snapbuild.c:902 replication/logical/snapbuild.c:1266
+#: replication/logical/snapbuild.c:1785
+#, c-format
+msgid "logical decoding found consistent point at %X/%X"
+msgstr "la decodifica logica ha trovato un punto consistente a %X/%X"
+
+#: replication/logical/snapbuild.c:904
+#, c-format
+msgid "xid %u finished, no running transactions anymore"
+msgstr "xid %u terminato, non ci sono altre transazioni in esecuzione"
+
+#: replication/logical/snapbuild.c:1231
+#, c-format
+msgid "skipping snapshot at %X/%X while building logical decoding snapshot, xmin horizon too low"
+msgstr "snapshot a %X/%X saltato durante la costruzione dello snapshot di decodifica logica, orizzonte xmin troppo basso"
+
+#: replication/logical/snapbuild.c:1233
+#, c-format
+msgid "initial xmin horizon of %u vs the snapshot's %u"
+msgstr "orizzonte xmin iniziale %u contro quello dello snapshot %u"
+
+#: replication/logical/snapbuild.c:1268
+#, c-format
+msgid "running xacts with xcnt == 0"
+msgstr "esecuzione di xacts con xcnt == 0"
+
+#: replication/logical/snapbuild.c:1325
+#, c-format
+msgid "logical decoding found initial starting point at %X/%X"
+msgstr "la decodifica logica ha trovato un punto di avvio iniziale a %X/%X"
+
+#: replication/logical/snapbuild.c:1327
+#, c-format
+msgid "%u xacts need to finish"
+msgstr "%u xact richieste per finire"
+
+#: replication/logical/snapbuild.c:1661 replication/logical/snapbuild.c:1687
+#: replication/logical/snapbuild.c:1701 replication/logical/snapbuild.c:1715
+#, c-format
+msgid "could not read file \"%s\", read %d of %d: %m"
+msgstr "lettura del file \"%s\" non riuscita, letti %d su %d: %m"
+
+#: replication/logical/snapbuild.c:1667
+#, c-format
+msgid "snapbuild state file \"%s\" has wrong magic %u instead of %u"
+msgstr "il file di stato snapbuild \"%s\" ha il numero magico sbagliato %u invece di %u"
+
+#: replication/logical/snapbuild.c:1672
+#, c-format
+msgid "snapbuild state file \"%s\" has unsupported version %u instead of %u"
+msgstr "il file di stato snapbuild \"%s\" ha la versione non supportata %u invece di %u"
+
+#: replication/logical/snapbuild.c:1726
+#, c-format
+msgid "snapbuild state file %s: checksum mismatch, is %u, should be %u"
+msgstr "file di stato snapbuild %s: il checksum %u non combacia, sarebbe dovuto essere %u"
+
+#: replication/logical/snapbuild.c:1787
+#, c-format
+msgid "found initial snapshot in snapbuild file"
+msgstr "tovati snapshot iniziali nel file snapbuild"
+
+#: replication/logical/snapbuild.c:1860
+#, c-format
+msgid "could not parse filename \"%s\""
+msgstr "non è stato possibile interpretare il nome di file \"%s\""
+
+#: replication/slot.c:162
+#, c-format
+msgid "replication slot name \"%s\" is too short"
+msgstr "il nome dello slot di replica \"%s\" è troppo corto"
+
+#: replication/slot.c:171
+#, c-format
+msgid "replication slot name \"%s\" is too long"
+msgstr "il nome dello slot di replica \"%s\" è troppo lungo"
+
+#: replication/slot.c:184
+#, c-format
+msgid "replication slot name \"%s\" contains invalid character"
+msgstr "il nome dello slot di replica \"%s\" contiene caratteri non validi"
+
+#: replication/slot.c:186
+#, c-format
+msgid "Replication slot names may only contain letters, numbers and the underscore character."
+msgstr "I nomi degli slot di replica possono contenere solo lettere, numeri e il carattere underscore."
+
+#: replication/slot.c:233
+#, c-format
+msgid "replication slot \"%s\" already exists"
+msgstr "lo slot di replica \"%s\" esiste già"
+
+#: replication/slot.c:243
+#, c-format
+msgid "all replication slots are in use"
+msgstr "tutti gli slot di replica sono in uso"
+
+#: replication/slot.c:244
+#, c-format
+msgid "Free one or increase max_replication_slots."
+msgstr "Liberane uno o incrementa max_replication_slots."
+
+#: replication/slot.c:336
+#, c-format
+msgid "replication slot \"%s\" does not exist"
+msgstr "lo slot di replica \"%s\" non esiste"
+
+#: replication/slot.c:340
+#, c-format
+msgid "replication slot \"%s\" is already active"
+msgstr "lo slot di replica \"%s\" è già attivo"
+
+#: replication/slot.c:457 replication/slot.c:1044
+#, c-format
+msgid "could not rename \"%s\" to \"%s\": %m"
+msgstr "rinominazione di \"%s\" in \"%s\" fallita: %m"
+
+#: replication/slot.c:488 replication/slot.c:864 replication/slot.c:1207
+#, c-format
+msgid "could not remove directory \"%s\""
+msgstr "eliminazione della directory \"%s\" fallita"
+
+#: replication/slot.c:763
+#, c-format
+msgid "replication slots can only be used if max_replication_slots > 0"
+msgstr "gli slot di replica possono essere usati solo se max_replication_slots > 0"
+
+#: replication/slot.c:768
+#, c-format
+msgid "replication slots can only be used if wal_level >= archive"
+msgstr "gli slot di replica possono essere usati solo se wal_level >= archive"
+
+#: replication/slot.c:801
+#, c-format
+msgid "performing replication slot checkpoint"
+msgstr "esecuzione di un checkpoint dello slot di replica"
+
+#: replication/slot.c:838
+#, c-format
+msgid "starting up replication slots"
+msgstr "avvio degli slot di replica"
+
+#: replication/slot.c:1140 replication/slot.c:1178
+#, c-format
+msgid "could not read file \"%s\", read %d of %u: %m"
+msgstr "lettura del file \"%s\" fallita, letti %d su %u: %m"
+
+#: replication/slot.c:1149
+#, c-format
+msgid "replication slot file \"%s\" has wrong magic %u instead of %u"
+msgstr "il file dello slot di replica \"%s\" ha il numero magico sbagliato %u invece di %u"
+
+#: replication/slot.c:1156
+#, c-format
+msgid "replication slot file \"%s\" has unsupported version %u"
+msgstr "il file dello slot di replica \"%s\" ha la versione non supportata %u"
+
+#: replication/slot.c:1163
+#, c-format
+msgid "replication slot file \"%s\" has corrupted length %u"
+msgstr "il file dello slot di replica \"%s\" ha la lunghezza corrotta %u"
+
+#: replication/slot.c:1192
+#, c-format
+msgid "replication slot file %s: checksum mismatch, is %u, should be %u"
+msgstr "file dello slot di replica %s: il checksum %u non combacia, sarebbe dovuto essere %u"
+
+#: replication/slot.c:1245
+#, c-format
+msgid "too many replication slots active before shutdown"
+msgstr "troppi slot di replica attivi prima dell'arresto"
+
+#: replication/slot.c:1246
+#, c-format
+msgid "Increase max_replication_slots and try again."
+msgstr "Incrementa max_replication_slots e prova di nuovo."
+
+#: replication/syncrep.c:208
 #, c-format
 msgid "canceling the wait for synchronous replication and terminating connection due to administrator command"
 msgstr "annullamento dell'attesa di replica sincrona ed interruzione della connessione su comando dell'amministratore"
 
-#: replication/syncrep.c:208 replication/syncrep.c:225
+#: replication/syncrep.c:209 replication/syncrep.c:226
 #, c-format
 msgid "The transaction has already committed locally, but might not have been replicated to the standby."
 msgstr "La transazione ha già effettuato il commit localmente, ma potrebbe non essere stata replicata agli standby."
 
-#: replication/syncrep.c:224
+#: replication/syncrep.c:225
 #, c-format
 msgid "canceling wait for synchronous replication due to user request"
 msgstr "annullamento dell'attesa di replica sincrona su richiesta utente"
 
-#: replication/syncrep.c:354
+#: replication/syncrep.c:355
 #, c-format
 msgid "standby \"%s\" now has synchronous standby priority %u"
 msgstr "lo standby \"%s\" ha ora priorità di standby sincrono %u"
 
-#: replication/syncrep.c:456
+#: replication/syncrep.c:457
 #, c-format
 msgid "standby \"%s\" is now the synchronous standby with priority %u"
 msgstr "lo standby \"%s\" è ora in standby sincrono con priorità %u"
@@ -12845,193 +13681,198 @@ msgstr "lo standby \"%s\" è ora in standby sincrono con priorità %u"
 msgid "terminating walreceiver process due to administrator command"
 msgstr "interruzione del processo walreceiver su comando dell'amministratore"
 
-#: replication/walreceiver.c:330
+#: replication/walreceiver.c:332
 #, c-format
 msgid "highest timeline %u of the primary is behind recovery timeline %u"
 msgstr "la timeline massima %u del primario è dietro la timeline di recupero %u"
 
-#: replication/walreceiver.c:364
+#: replication/walreceiver.c:367
 #, c-format
 msgid "started streaming WAL from primary at %X/%X on timeline %u"
 msgstr "streaming WAL avviato dal primario a %X/%X sulla timeline %u"
 
-#: replication/walreceiver.c:369
+#: replication/walreceiver.c:372
 #, c-format
 msgid "restarted WAL streaming at %X/%X on timeline %u"
 msgstr "streaming WAL riavviato sulla timeline %X/%X sulla timeline %u"
 
-#: replication/walreceiver.c:403
+#: replication/walreceiver.c:406
 #, c-format
 msgid "cannot continue WAL streaming, recovery has already ended"
 msgstr "non è possibile continuare lo streaming dei WAL, il recupero è già terminato"
 
-#: replication/walreceiver.c:440
+#: replication/walreceiver.c:443
 #, c-format
 msgid "replication terminated by primary server"
 msgstr "replica terminata dal server primario"
 
-#: replication/walreceiver.c:441
+#: replication/walreceiver.c:444
 #, c-format
 msgid "End of WAL reached on timeline %u at %X/%X."
 msgstr "Fine del WAL raggiunta sulla timeline %u a %X/%X."
 
-#: replication/walreceiver.c:488
+#: replication/walreceiver.c:491
 #, c-format
 msgid "terminating walreceiver due to timeout"
 msgstr "walreceiver terminato a causa di timeout"
 
-#: replication/walreceiver.c:528
+#: replication/walreceiver.c:531
 #, c-format
 msgid "primary server contains no more WAL on requested timeline %u"
 msgstr "il server primario non contiene più alcun WAL sulla timeline richiesta %u"
 
-#: replication/walreceiver.c:543 replication/walreceiver.c:900
+#: replication/walreceiver.c:546 replication/walreceiver.c:903
 #, c-format
 msgid "could not close log segment %s: %m"
 msgstr "chiusura del segmento di log %s fallita: %m"
 
-#: replication/walreceiver.c:665
+#: replication/walreceiver.c:668
 #, c-format
 msgid "fetching timeline history file for timeline %u from primary server"
 msgstr "recupero del file di storia della timeline %u dal server primario"
 
-#: replication/walreceiver.c:951
+#: replication/walreceiver.c:954
 #, c-format
 msgid "could not write to log segment %s at offset %u, length %lu: %m"
 msgstr "scrittura nel segmento di log %s in posizione %u, lunghezza %lu fallita: %m"
 
-#: replication/walsender.c:375 storage/smgr/md.c:1785
+#: replication/walsender.c:465 storage/smgr/md.c:1782
 #, c-format
 msgid "could not seek to end of file \"%s\": %m"
 msgstr "non è stato possibile spostarsi alla fine del file \"%s\": %m"
 
-#: replication/walsender.c:379
+#: replication/walsender.c:469
 #, c-format
 msgid "could not seek to beginning of file \"%s\": %m"
 msgstr "spostamento all'inizio del file \"%s\" fallito: %m"
 
-#: replication/walsender.c:484
+#: replication/walsender.c:520
+#, c-format
+msgid "cannot use a logical replication slot for physical replication"
+msgstr "non si può usare una slot di replica logico per la replica fisica"
+
+#: replication/walsender.c:583
 #, c-format
 msgid "requested starting point %X/%X on timeline %u is not in this server's history"
 msgstr "il punto di avvio richiesto %X/%X sulla timeline %u non è nella storia di questo server"
 
-#: replication/walsender.c:488
+#: replication/walsender.c:587
 #, c-format
 msgid "This server's history forked from timeline %u at %X/%X."
 msgstr "La storia di questo server si è separata dalla timeline %u a %X/%X."
 
-#: replication/walsender.c:533
+#: replication/walsender.c:632
 #, c-format
 msgid "requested starting point %X/%X is ahead of the WAL flush position of this server %X/%X"
 msgstr "il punto di avvio richiesto %X/%X è più avanti della posizione di flush del WAL %X/%X di questo server"
 
-#: replication/walsender.c:707 replication/walsender.c:757
-#: replication/walsender.c:806
+#: replication/walsender.c:947
+#, c-format
+msgid "terminating walsender process after promotion"
+msgstr "interruzione del processo walsender dopo la promozione"
+
+#: replication/walsender.c:1362 replication/walsender.c:1412
+#: replication/walsender.c:1461
 #, c-format
 msgid "unexpected EOF on standby connection"
 msgstr "fine del file inaspettato sulla connessione di standby"
 
-#: replication/walsender.c:726
+#: replication/walsender.c:1381
 #, c-format
 msgid "unexpected standby message type \"%c\", after receiving CopyDone"
 msgstr "tipo di messaggio di standby \"%c\" imprevisto, dopo la ricezione di CopyDone"
 
-#: replication/walsender.c:774
+#: replication/walsender.c:1429
 #, c-format
 msgid "invalid standby message type \"%c\""
 msgstr "tipo di messaggio \"%c\" di standby non valido"
 
-#: replication/walsender.c:828
+#: replication/walsender.c:1483
 #, c-format
 msgid "unexpected message type \"%c\""
 msgstr "tipo di messaggio \"%c\" inatteso"
 
-#: replication/walsender.c:1042
-#, c-format
-msgid "standby \"%s\" has now caught up with primary"
-msgstr "lo standby \"%s\" ha ora raggiunto il primario"
-
-#: replication/walsender.c:1135
+#: replication/walsender.c:1770
 #, c-format
 msgid "terminating walsender process due to replication timeout"
 msgstr "interruzione del processo walsender a causa di timeout di replica"
 
-#: replication/walsender.c:1205
+#: replication/walsender.c:1863
 #, c-format
-msgid "number of requested standby connections exceeds max_wal_senders (currently %d)"
-msgstr "il numero di richieste di connessioni di standby supera max_wal_senders (attualmente %d)"
+msgid "standby \"%s\" has now caught up with primary"
+msgstr "lo standby \"%s\" ha ora raggiunto il primario"
 
-#: replication/walsender.c:1361
+#: replication/walsender.c:1967
 #, c-format
-msgid "could not read from log segment %s, offset %u, length %lu: %m"
-msgstr "lettura del segmento di log %s, posizione %u, lunghezza %lu fallita: %m"
+msgid "number of requested standby connections exceeds max_wal_senders (currently %d)"
+msgstr "il numero di richieste di connessioni di standby supera max_wal_senders (attualmente %d)"
 
-#: rewrite/rewriteDefine.c:112 rewrite/rewriteDefine.c:922
+#: rewrite/rewriteDefine.c:111 rewrite/rewriteDefine.c:942
 #, c-format
 msgid "rule \"%s\" for relation \"%s\" already exists"
 msgstr "la regola \"%s\" per la relazione \"%s\" esiste già"
 
-#: rewrite/rewriteDefine.c:298
+#: rewrite/rewriteDefine.c:295
 #, c-format
 msgid "rule actions on OLD are not implemented"
 msgstr "le regole di azione su OLD non sono implementate"
 
-#: rewrite/rewriteDefine.c:299
+#: rewrite/rewriteDefine.c:296
 #, c-format
 msgid "Use views or triggers instead."
 msgstr "Usa le viste o i trigger invece."
 
-#: rewrite/rewriteDefine.c:303
+#: rewrite/rewriteDefine.c:300
 #, c-format
 msgid "rule actions on NEW are not implemented"
 msgstr "le regole di azione su NEW non sono implementate"
 
-#: rewrite/rewriteDefine.c:304
+#: rewrite/rewriteDefine.c:301
 #, c-format
 msgid "Use triggers instead."
 msgstr "Usa i trigger invece."
 
-#: rewrite/rewriteDefine.c:317
+#: rewrite/rewriteDefine.c:314
 #, c-format
 msgid "INSTEAD NOTHING rules on SELECT are not implemented"
 msgstr "le regole INSTEAD NOTHING su SELECT non sono implementate"
 
-#: rewrite/rewriteDefine.c:318
+#: rewrite/rewriteDefine.c:315
 #, c-format
 msgid "Use views instead."
 msgstr "Usa le viste invece."
 
-#: rewrite/rewriteDefine.c:326
+#: rewrite/rewriteDefine.c:323
 #, c-format
 msgid "multiple actions for rules on SELECT are not implemented"
 msgstr "avere più di una azione per le regole su SELECT non è implementato"
 
-#: rewrite/rewriteDefine.c:337
+#: rewrite/rewriteDefine.c:334
 #, c-format
 msgid "rules on SELECT must have action INSTEAD SELECT"
 msgstr "le regole su SELECT devono avere un'azione INSTEAD SELECT"
 
-#: rewrite/rewriteDefine.c:345
+#: rewrite/rewriteDefine.c:342
 #, c-format
 msgid "rules on SELECT must not contain data-modifying statements in WITH"
 msgstr "le regole su SELECT non possono contenere istruzioni di modifica dei dati nel WITH"
 
-#: rewrite/rewriteDefine.c:353
+#: rewrite/rewriteDefine.c:350
 #, c-format
 msgid "event qualifications are not implemented for rules on SELECT"
 msgstr "le qualificazioni di evento non sono implementate per le regole su SELECT"
 
-#: rewrite/rewriteDefine.c:380
+#: rewrite/rewriteDefine.c:377
 #, c-format
 msgid "\"%s\" is already a view"
 msgstr "\"%s\" è già una vista"
 
-#: rewrite/rewriteDefine.c:404
+#: rewrite/rewriteDefine.c:401
 #, c-format
 msgid "view rule for \"%s\" must be named \"%s\""
 msgstr "la regola della vista \"%s\" deve essere chiamata \"%s\""
 
-#: rewrite/rewriteDefine.c:430
+#: rewrite/rewriteDefine.c:429
 #, c-format
 msgid "could not convert table \"%s\" to a view because it is not empty"
 msgstr "conversione della tabella \"%s\" in vista fallita perché non è vuota"
@@ -13071,197 +13912,234 @@ msgstr "le liste RETURNING non sono supportate in regole condizionali"
 msgid "RETURNING lists are not supported in non-INSTEAD rules"
 msgstr "le liste RETURNING non sono supportate in regole che non siano INSTEAD"
 
-#: rewrite/rewriteDefine.c:651
+#: rewrite/rewriteDefine.c:649
 #, c-format
 msgid "SELECT rule's target list has too many entries"
 msgstr "la lista di destinazione della regola SELECT ha troppi elementi"
 
-#: rewrite/rewriteDefine.c:652
+#: rewrite/rewriteDefine.c:650
 #, c-format
 msgid "RETURNING list has too many entries"
 msgstr "la lista RETURNING ha troppi elementi"
 
-#: rewrite/rewriteDefine.c:668
+#: rewrite/rewriteDefine.c:666
 #, c-format
 msgid "cannot convert relation containing dropped columns to view"
 msgstr "non è possibile convertire una relazione contenente colonne eliminate in una vista"
 
-#: rewrite/rewriteDefine.c:673
+#: rewrite/rewriteDefine.c:672
+#, c-format
+msgid "SELECT rule's target entry %d has different column name from column \"%s\""
+msgstr "elemento di destinazione %d della regola SELECT ha nome di colonna diverso dalla colonna \"%s\""
+
+#: rewrite/rewriteDefine.c:674
 #, c-format
-msgid "SELECT rule's target entry %d has different column name from \"%s\""
-msgstr "l'elemento %d di destinazione della regola SELECT ha nome di colonna diverso da \"%s\""
+msgid "SELECT target entry is named \"%s\"."
+msgstr "L'elemento di destinazione di SELECT si chiama \"%s\"."
 
-#: rewrite/rewriteDefine.c:679
+#: rewrite/rewriteDefine.c:683
 #, c-format
 msgid "SELECT rule's target entry %d has different type from column \"%s\""
 msgstr "l'elemento %d di destinazione della regola SELECT è di tipo diverso dalla colonna \"%s\""
 
-#: rewrite/rewriteDefine.c:681
+#: rewrite/rewriteDefine.c:685
 #, c-format
 msgid "RETURNING list's entry %d has different type from column \"%s\""
 msgstr "l'elemento %d della lista RETURNING è di tipo diverso dalla colonna \"%s\""
 
-#: rewrite/rewriteDefine.c:696
+#: rewrite/rewriteDefine.c:688 rewrite/rewriteDefine.c:712
+#, c-format
+msgid "SELECT target entry has type %s, but column has type %s."
+msgstr "L'elemento di destinazione di SELECT è di tipo %s, ma la colonna è di tipo %s."
+
+#: rewrite/rewriteDefine.c:691 rewrite/rewriteDefine.c:716
+#, c-format
+msgid "RETURNING list entry has type %s, but column has type %s."
+msgstr "la lista di elementi di RETURNING è di tipo %s, ma la colonna è di tipo %s."
+
+#: rewrite/rewriteDefine.c:707
 #, c-format
 msgid "SELECT rule's target entry %d has different size from column \"%s\""
 msgstr "l'elemento %d di destinazione della regola SELECT ha dimensione diversa dalla colonna \"%s\""
 
-#: rewrite/rewriteDefine.c:698
+#: rewrite/rewriteDefine.c:709
 #, c-format
 msgid "RETURNING list's entry %d has different size from column \"%s\""
 msgstr "l'elemento %d della lista RETURNING ha dimensione diversa dalla colonna \"%s\""
 
-#: rewrite/rewriteDefine.c:706
+#: rewrite/rewriteDefine.c:726
 #, c-format
 msgid "SELECT rule's target list has too few entries"
 msgstr "la lista di destinazione della regola SELECT ha troppi pochi elementi"
 
-#: rewrite/rewriteDefine.c:707
+#: rewrite/rewriteDefine.c:727
 #, c-format
 msgid "RETURNING list has too few entries"
 msgstr "la lista RETURNING ha troppi pochi elementi"
 
-#: rewrite/rewriteDefine.c:799 rewrite/rewriteDefine.c:913
+#: rewrite/rewriteDefine.c:819 rewrite/rewriteDefine.c:933
 #: rewrite/rewriteSupport.c:112
 #, c-format
 msgid "rule \"%s\" for relation \"%s\" does not exist"
 msgstr "la regola \"%s\" per la relazione \"%s\" non esiste"
 
-#: rewrite/rewriteDefine.c:932
+#: rewrite/rewriteDefine.c:952
 #, c-format
 msgid "renaming an ON SELECT rule is not allowed"
 msgstr "non è consentire rinominare una regola ON SELECT"
 
-#: rewrite/rewriteHandler.c:486
+#: rewrite/rewriteHandler.c:512
 #, c-format
 msgid "WITH query name \"%s\" appears in both a rule action and the query being rewritten"
 msgstr "la query WITH \"%s\" appare sia in una regola di azione che nella query che deve essere riscritta"
 
-#: rewrite/rewriteHandler.c:546
+#: rewrite/rewriteHandler.c:572
 #, c-format
 msgid "cannot have RETURNING lists in multiple rules"
 msgstr "non è possibile avere liste RETURNING in più di una regola"
 
-#: rewrite/rewriteHandler.c:877 rewrite/rewriteHandler.c:895
+#: rewrite/rewriteHandler.c:910 rewrite/rewriteHandler.c:928
 #, c-format
 msgid "multiple assignments to same column \"%s\""
 msgstr "più di un assegnamento alla stessa colonna \"%s\""
 
-#: rewrite/rewriteHandler.c:1657 rewrite/rewriteHandler.c:2781
+#: rewrite/rewriteHandler.c:1698 rewrite/rewriteHandler.c:3129
 #, c-format
 msgid "infinite recursion detected in rules for relation \"%s\""
 msgstr "ricorsione infinita individuata nelle regole per la relazione \"%s\""
 
-#: rewrite/rewriteHandler.c:1978
+#: rewrite/rewriteHandler.c:1995
+msgid "Junk view columns are not updatable."
+msgstr "Le colonne junk di una vista non sono aggiornabili."
+
+#: rewrite/rewriteHandler.c:2000
+msgid "View columns that are not columns of their base relation are not updatable."
+msgstr "Le colonne di vista che non sono colonne della loro relazione di base non sono aggiornabili."
+
+#: rewrite/rewriteHandler.c:2003
+msgid "View columns that refer to system columns are not updatable."
+msgstr "Le colonne di vista che si riferiscono a colonne di sistema non sono aggiornabili."
+
+#: rewrite/rewriteHandler.c:2006
+msgid "View columns that return whole-row references are not updatable."
+msgstr "Le colonne di vista che restituiscono riferimenti a righe intere non sono aggiornabili."
+
+#: rewrite/rewriteHandler.c:2064
 msgid "Views containing DISTINCT are not automatically updatable."
 msgstr "Le viste contenenti DISTINCT non sono aggiornabili automaticamente."
 
-#: rewrite/rewriteHandler.c:1981
+#: rewrite/rewriteHandler.c:2067
 msgid "Views containing GROUP BY are not automatically updatable."
 msgstr "Le viste contenenti GROUP BY non sono aggiornabili automaticamente."
 
-#: rewrite/rewriteHandler.c:1984
+#: rewrite/rewriteHandler.c:2070
 msgid "Views containing HAVING are not automatically updatable."
 msgstr "Le viste contenenti HAVING non sono aggiornabili automaticamente."
 
-#: rewrite/rewriteHandler.c:1987
+#: rewrite/rewriteHandler.c:2073
 msgid "Views containing UNION, INTERSECT, or EXCEPT are not automatically updatable."
 msgstr "Le viste che contengono UNION, INTERSECT o EXCEPT non sono automaticamente aggiornabili."
 
-#: rewrite/rewriteHandler.c:1990
+#: rewrite/rewriteHandler.c:2076
 msgid "Views containing WITH are not automatically updatable."
 msgstr "Le viste contenenti WITH non sono aggiornabili automaticamente."
 
-#: rewrite/rewriteHandler.c:1993
+#: rewrite/rewriteHandler.c:2079
 msgid "Views containing LIMIT or OFFSET are not automatically updatable."
 msgstr "Le viste contenenti LIMIT o OFFSET non sono aggiornabili automaticamente."
 
-#: rewrite/rewriteHandler.c:2001
-msgid "Security-barrier views are not automatically updatable."
-msgstr "Le viste su barriere di sicurezza non sono aggiornabili automaticamente."
+#: rewrite/rewriteHandler.c:2091
+msgid "Views that return aggregate functions are not automatically updatable"
+msgstr "Le viste che restituiscono funzioni di aggregazione non sono aggiornabili automaticamente"
+
+#: rewrite/rewriteHandler.c:2094
+msgid "Views that return window functions are not automatically updatable"
+msgstr "Le viste che restituiscono funzioni finestra non sono aggiornabili automaticamente"
+
+#: rewrite/rewriteHandler.c:2097
+msgid "Views that return set-returning functions are not automatically updatable."
+msgstr "Le viste che restituiscono funzioni insieme non sono aggiornabili automaticamente"
 
-#: rewrite/rewriteHandler.c:2008 rewrite/rewriteHandler.c:2012
-#: rewrite/rewriteHandler.c:2019
+#: rewrite/rewriteHandler.c:2104 rewrite/rewriteHandler.c:2108
+#: rewrite/rewriteHandler.c:2115
 msgid "Views that do not select from a single table or view are not automatically updatable."
 msgstr "Le viste che non leggono da una singola tabella o vista non sono aggiornabili automaticamente."
 
-#: rewrite/rewriteHandler.c:2042
-msgid "Views that return columns that are not columns of their base relation are not automatically updatable."
-msgstr "Le viste che restituiscono colonne che non sono colonne della loro relazione di base non sono aggiornabili automaticamente."
+#: rewrite/rewriteHandler.c:2139
+msgid "Views that have no updatable columns are not automatically updatable."
+msgstr "Le viste che non hanno colonne aggiornabili non sono automaticamente aggiornabili."
 
-#: rewrite/rewriteHandler.c:2045
-msgid "Views that return system columns are not automatically updatable."
-msgstr "Le viste che restituiscono colonne di sistema non sono aggiornabili automaticamente."
-
-#: rewrite/rewriteHandler.c:2048
-msgid "Views that return whole-row references are not automatically updatable."
-msgstr "Le viste che restituiscono riferimenti a righe intere non sono aggiornabili automaticamente."
+#: rewrite/rewriteHandler.c:2576
+#, c-format
+msgid "cannot insert into column \"%s\" of view \"%s\""
+msgstr "non si può inserire nella colonna \"%s\" della vista \"%s\""
 
-#: rewrite/rewriteHandler.c:2051
-msgid "Views that return the same column more than once are not automatically updatable."
-msgstr "Le viste che restituiscono la stessa colonna più volte non sono aggiornabili automaticamente."
+#: rewrite/rewriteHandler.c:2584
+#, c-format
+msgid "cannot update column \"%s\" of view \"%s\""
+msgstr "non si può modificare la colonna \"%s\" della vista \"%s\""
 
-#: rewrite/rewriteHandler.c:2604
+#: rewrite/rewriteHandler.c:2952
 #, c-format
 msgid "DO INSTEAD NOTHING rules are not supported for data-modifying statements in WITH"
 msgstr "le regole DO INSTEAD NOTHING non sono supportate per istruzioni di modifica dei dati nel WITH"
 
-#: rewrite/rewriteHandler.c:2618
+#: rewrite/rewriteHandler.c:2966
 #, c-format
 msgid "conditional DO INSTEAD rules are not supported for data-modifying statements in WITH"
 msgstr "le regole DO INSTEAD NOTHING condizionali non sono supportate per istruzioni di modifica dei dati nel WITH"
 
-#: rewrite/rewriteHandler.c:2622
+#: rewrite/rewriteHandler.c:2970
 #, c-format
 msgid "DO ALSO rules are not supported for data-modifying statements in WITH"
 msgstr "le regole DO ALSO non sono supportate per istruzioni di modifica dei dati nel WITH"
 
-#: rewrite/rewriteHandler.c:2627
+#: rewrite/rewriteHandler.c:2975
 #, c-format
 msgid "multi-statement DO INSTEAD rules are not supported for data-modifying statements in WITH"
 msgstr "le regole DO INSTEAD multi-istruzione non sono supportate per istruzioni di modifica dei dati nel WITH"
 
-#: rewrite/rewriteHandler.c:2818
+#: rewrite/rewriteHandler.c:3166
 #, c-format
 msgid "cannot perform INSERT RETURNING on relation \"%s\""
 msgstr "non è possibile eseguire INSERT RETURNING sulla relazione \"%s\""
 
-#: rewrite/rewriteHandler.c:2820
+#: rewrite/rewriteHandler.c:3168
 #, c-format
 msgid "You need an unconditional ON INSERT DO INSTEAD rule with a RETURNING clause."
 msgstr "È necessaria una regola ON INSERT DO INSTEAD non condizionale con una clausola RETURNING."
 
-#: rewrite/rewriteHandler.c:2825
+#: rewrite/rewriteHandler.c:3173
 #, c-format
 msgid "cannot perform UPDATE RETURNING on relation \"%s\""
 msgstr "non è possibile eseguire UPDATE RETURNING sulla relazione \"%s\""
 
-#: rewrite/rewriteHandler.c:2827
+#: rewrite/rewriteHandler.c:3175
 #, c-format
 msgid "You need an unconditional ON UPDATE DO INSTEAD rule with a RETURNING clause."
 msgstr "È necessaria una regola ON UPDATE DO INSTEAD non condizionale con una clausola RETURNING."
 
-#: rewrite/rewriteHandler.c:2832
+#: rewrite/rewriteHandler.c:3180
 #, c-format
 msgid "cannot perform DELETE RETURNING on relation \"%s\""
 msgstr "non è possibile eseguire DELETE RETURNING sulla relazione \"%s\""
 
-#: rewrite/rewriteHandler.c:2834
+#: rewrite/rewriteHandler.c:3182
 #, c-format
 msgid "You need an unconditional ON DELETE DO INSTEAD rule with a RETURNING clause."
 msgstr "È necessaria una regola ON DELETE DO INSTEAD non condizionale con una clausola RETURNING."
 
-#: rewrite/rewriteHandler.c:2898
+#: rewrite/rewriteHandler.c:3246
 #, c-format
 msgid "WITH cannot be used in a query that is rewritten by rules into multiple queries"
 msgstr "WITH non può essere usato in una query che viene riscritta da regole in più di una query"
 
-#: rewrite/rewriteManip.c:1020
+#: rewrite/rewriteManip.c:956
 #, c-format
 msgid "conditional utility statements are not implemented"
 msgstr "i comandi di utilità condizionali non sono implementati"
 
-#: rewrite/rewriteManip.c:1185
+#: rewrite/rewriteManip.c:1121
 #, c-format
 msgid "WHERE CURRENT OF on a view is not implemented"
 msgstr "WHERE CURRENT OF su una vista non è implementato"
@@ -13307,148 +14185,230 @@ msgstr "parametro Snowball sconosciuto: \"%s\""
 msgid "missing Language parameter"
 msgstr "parametro Language mancante"
 
-#: storage/buffer/bufmgr.c:140 storage/buffer/bufmgr.c:248
+#: storage/buffer/bufmgr.c:139 storage/buffer/bufmgr.c:247
 #, c-format
 msgid "cannot access temporary tables of other sessions"
 msgstr "non è possibile accedere a tabelle temporanee di altre sessioni"
 
-#: storage/buffer/bufmgr.c:385
+#: storage/buffer/bufmgr.c:384
 #, c-format
 msgid "unexpected data beyond EOF in block %u of relation %s"
 msgstr "dati oltre fine file inaspettati nel blocco %u della relazione %s"
 
-#: storage/buffer/bufmgr.c:387
+#: storage/buffer/bufmgr.c:386
 #, c-format
 msgid "This has been seen to occur with buggy kernels; consider updating your system."
 msgstr "Questo fenomeno è stato riportato con kernel difettosi: considera l'aggiornamento del tuo sistema."
 
-#: storage/buffer/bufmgr.c:474
+#: storage/buffer/bufmgr.c:473
 #, c-format
 msgid "invalid page in block %u of relation %s; zeroing out page"
 msgstr "pagina non valida nel blocco %u della relazione %s; azzeramento della pagina"
 
-#: storage/buffer/bufmgr.c:3144
+#: storage/buffer/bufmgr.c:3143
 #, c-format
 msgid "could not write block %u of %s"
 msgstr "scrittura del blocco %u di %s fallita"
 
-#: storage/buffer/bufmgr.c:3146
+#: storage/buffer/bufmgr.c:3145
 #, c-format
 msgid "Multiple failures --- write error might be permanent."
 msgstr "Più di un fallimento --- l'errore in scrittura potrebbe essere permanente."
 
-#: storage/buffer/bufmgr.c:3167 storage/buffer/bufmgr.c:3186
+#: storage/buffer/bufmgr.c:3166 storage/buffer/bufmgr.c:3185
 #, c-format
 msgid "writing block %u of relation %s"
 msgstr "scrittura del blocco %u della relazione %s"
 
-#: storage/buffer/localbuf.c:190
+#: storage/buffer/localbuf.c:189
 #, c-format
 msgid "no empty local buffer available"
 msgstr "nessun buffer locale vuoto disponibile"
 
-#: storage/file/fd.c:450
+#: storage/file/fd.c:505
 #, c-format
 msgid "getrlimit failed: %m"
 msgstr "getrlimit fallito: %m"
 
-#: storage/file/fd.c:540
+#: storage/file/fd.c:595
 #, c-format
 msgid "insufficient file descriptors available to start server process"
 msgstr "descrittori di file non sufficienti per avviare il processo server"
 
-#: storage/file/fd.c:541
+#: storage/file/fd.c:596
 #, c-format
 msgid "System allows %d, we need at least %d."
 msgstr "Il sistema ne consente %d, ne occorrono almeno %d."
 
-#: storage/file/fd.c:582 storage/file/fd.c:1616 storage/file/fd.c:1709
-#: storage/file/fd.c:1857
+#: storage/file/fd.c:637 storage/file/fd.c:1671 storage/file/fd.c:1764
+#: storage/file/fd.c:1912
 #, c-format
 msgid "out of file descriptors: %m; release and retry"
 msgstr "descrittori di file esauriti: %m; sto rilasciando e riprovando"
 
-#: storage/file/fd.c:1156
+#: storage/file/fd.c:1211
 #, c-format
 msgid "temporary file: path \"%s\", size %lu"
 msgstr "file temporaneo: percorso \"%s\", dimensione %lu"
 
-#: storage/file/fd.c:1305
+#: storage/file/fd.c:1360
 #, c-format
 msgid "temporary file size exceeds temp_file_limit (%dkB)"
 msgstr "la dimensione del file temporaneo supera temp_file_limit (%dkB)"
 
-#: storage/file/fd.c:1592 storage/file/fd.c:1642
+#: storage/file/fd.c:1647 storage/file/fd.c:1697
 #, c-format
 msgid "exceeded maxAllocatedDescs (%d) while trying to open file \"%s\""
 msgstr "maxAllocatedDescs (%d) superato tentando di aprire il file \"%s\""
 
-#: storage/file/fd.c:1682
+#: storage/file/fd.c:1737
 #, c-format
 msgid "exceeded maxAllocatedDescs (%d) while trying to execute command \"%s\""
 msgstr "maxAllocatedDescs (%d) superato tentando di eseguire il comando \"%s\""
 
-#: storage/file/fd.c:1833
+#: storage/file/fd.c:1888
 #, c-format
 msgid "exceeded maxAllocatedDescs (%d) while trying to open directory \"%s\""
 msgstr "maxAllocatedDescs (%d) superato tentando di aprire la directory \"%s\""
 
-#: storage/file/fd.c:1916
+#: storage/file/fd.c:1961
 #, c-format
 msgid "could not read directory \"%s\": %m"
 msgstr "lettura della directory \"%s\" fallita: %m"
 
-#: storage/ipc/shmem.c:190 storage/lmgr/lock.c:872 storage/lmgr/lock.c:906
-#: storage/lmgr/lock.c:2599 storage/lmgr/lock.c:3708 storage/lmgr/lock.c:3773
-#: storage/lmgr/lock.c:4063 storage/lmgr/predicate.c:2320
-#: storage/lmgr/predicate.c:2335 storage/lmgr/predicate.c:3728
-#: storage/lmgr/predicate.c:4871 storage/lmgr/proc.c:198
-#: utils/hash/dynahash.c:966
+#: storage/ipc/dsm.c:363
+#, c-format
+msgid "dynamic shared memory control segment is corrupt"
+msgstr "il segmento di controllo della memoria dinamica condivisa è corrotto"
+
+#: storage/ipc/dsm.c:410
+#, c-format
+msgid "dynamic shared memory is disabled"
+msgstr "la memoria dinamica condivisa è disabilitata"
+
+#: storage/ipc/dsm.c:411
+#, c-format
+msgid "Set dynamic_shared_memory_type to a value other than \"none\"."
+msgstr "Imposta dynamic_shared_memory_type ad un valore diverso da \"none\"."
+
+#: storage/ipc/dsm.c:431
+#, c-format
+msgid "dynamic shared memory control segment is not valid"
+msgstr "il segmento di controllo della memoria dinamica condivisa non è valido"
+
+#: storage/ipc/dsm.c:501
+#, c-format
+msgid "too many dynamic shared memory segments"
+msgstr "troppi segmenti di memoria dinamica condivisa"
+
+#: storage/ipc/dsm_impl.c:261 storage/ipc/dsm_impl.c:361
+#: storage/ipc/dsm_impl.c:533 storage/ipc/dsm_impl.c:648
+#: storage/ipc/dsm_impl.c:811 storage/ipc/dsm_impl.c:953
+#, c-format
+msgid "could not unmap shared memory segment \"%s\": %m"
+msgstr "unmap del segmento di memoria condivisa \"%s\" fallito: %m"
+
+#: storage/ipc/dsm_impl.c:271 storage/ipc/dsm_impl.c:543
+#: storage/ipc/dsm_impl.c:658 storage/ipc/dsm_impl.c:821
+#, c-format
+msgid "could not remove shared memory segment \"%s\": %m"
+msgstr "rimozione del segmento di memoria condivisa \"%s\" fallito: %m"
+
+#: storage/ipc/dsm_impl.c:292 storage/ipc/dsm_impl.c:721
+#: storage/ipc/dsm_impl.c:835
+#, c-format
+msgid "could not open shared memory segment \"%s\": %m"
+msgstr "apertura del segmento di memoria condivisa \"%s\" fallito: %m"
+
+#: storage/ipc/dsm_impl.c:316 storage/ipc/dsm_impl.c:559
+#: storage/ipc/dsm_impl.c:766 storage/ipc/dsm_impl.c:859
+#, c-format
+msgid "could not stat shared memory segment \"%s\": %m"
+msgstr "lettura informazioni sul segmento di memoria condivisa \"%s\" fallito: %m"
+
+#: storage/ipc/dsm_impl.c:335 storage/ipc/dsm_impl.c:878
+#: storage/ipc/dsm_impl.c:926
+#, c-format
+msgid "could not resize shared memory segment %s to %zu bytes: %m"
+msgstr "ridimensionamento del segmento di memoria condivisa %s a %zu byte fallito: %m"
+
+#: storage/ipc/dsm_impl.c:385 storage/ipc/dsm_impl.c:580
+#: storage/ipc/dsm_impl.c:742 storage/ipc/dsm_impl.c:977
+#, c-format
+msgid "could not map shared memory segment \"%s\": %m"
+msgstr "map del segmento di memoria condivisa \"%s\" fallito: %m"
+
+#: storage/ipc/dsm_impl.c:515
+#, c-format
+msgid "could not get shared memory segment: %m"
+msgstr "impossibile ottenere un segmento di memoria condivisa: %m"
+
+#: storage/ipc/dsm_impl.c:694
+#, c-format
+msgid "could not create shared memory segment \"%s\": %m"
+msgstr "creazione del segmento di memoria condivisa \"%s\" fallito: %m"
+
+#: storage/ipc/dsm_impl.c:1018
+#, c-format
+msgid "could not duplicate handle for \"%s\": %m"
+msgstr "duplicazione dell'handle per \"%s\" fallita: %m"
+
+#: storage/ipc/shm_toc.c:108 storage/ipc/shm_toc.c:189 storage/ipc/shmem.c:205
+#: storage/lmgr/lock.c:872 storage/lmgr/lock.c:906 storage/lmgr/lock.c:2601
+#: storage/lmgr/lock.c:3713 storage/lmgr/lock.c:3778 storage/lmgr/lock.c:4068
+#: storage/lmgr/predicate.c:2323 storage/lmgr/predicate.c:2338
+#: storage/lmgr/predicate.c:3731 storage/lmgr/predicate.c:4874
+#: storage/lmgr/proc.c:198 utils/hash/dynahash.c:966
 #, c-format
 msgid "out of shared memory"
 msgstr "memoria condivisa esaurita"
 
-#: storage/ipc/shmem.c:346 storage/ipc/shmem.c:399
+#: storage/ipc/shmem.c:361 storage/ipc/shmem.c:412
 #, c-format
-msgid "not enough shared memory for data structure \"%s\" (%lu bytes requested)"
-msgstr "memoria condivisa insufficiente per la struttura di dati \"%s\" (%lu byte richiesti)"
+msgid "not enough shared memory for data structure \"%s\" (%zu bytes requested)"
+msgstr "memoria condivisa per la struttura di dati \"%s\" insufficiente (richiesti %zu byte)"
 
-#: storage/ipc/shmem.c:365
+#: storage/ipc/shmem.c:380
 #, c-format
 msgid "could not create ShmemIndex entry for data structure \"%s\""
 msgstr "creazione dell'elemento ShmemIndex fallita per la struttura di dati \"%s\""
 
-#: storage/ipc/shmem.c:380
+#: storage/ipc/shmem.c:395
 #, c-format
-msgid "ShmemIndex entry size is wrong for data structure \"%s\": expected %lu, actual %lu"
-msgstr "La dimensione di ShmemIndex è errata per la struttura di dati \"%s\": attesi %lu, reali %lu"
+msgid "ShmemIndex entry size is wrong for data structure \"%s\": expected %zu, actual %zu"
+msgstr "dimensione elemento ShmemIndex errata per la struttura di dati \"%s\": attesi %zu, effettivi %zu"
 
-#: storage/ipc/shmem.c:427 storage/ipc/shmem.c:446
+#: storage/ipc/shmem.c:440 storage/ipc/shmem.c:459
 #, c-format
 msgid "requested shared memory size overflows size_t"
 msgstr "la dimensione richiesta di memoria condivisa supera size_t"
 
-#: storage/ipc/standby.c:499 tcop/postgres.c:2943
+#: storage/ipc/standby.c:499 tcop/postgres.c:2950
 #, c-format
 msgid "canceling statement due to conflict with recovery"
 msgstr "annullamento dell'istruzione a causa di un conflitto con il ripristino"
 
-#: storage/ipc/standby.c:500 tcop/postgres.c:2217
+#: storage/ipc/standby.c:500 tcop/postgres.c:2214
 #, c-format
 msgid "User transaction caused buffer deadlock with recovery."
 msgstr "La transazione utente ha causato un deadlock del buffer con il ripristino."
 
-#: storage/large_object/inv_api.c:259
+#: storage/large_object/inv_api.c:203
+#, c-format
+msgid "pg_largeobject entry for OID %u, page %d has invalid data field size %d"
+msgstr "elemento pg_largeobject per OID %u, pagina %d ha la dimensione del campo dati errata %d"
+
+#: storage/large_object/inv_api.c:284
 #, c-format
 msgid "invalid flags for opening a large object: %d"
 msgstr "flag non validi per l'apertura di un large object: %d"
 
-#: storage/large_object/inv_api.c:418
+#: storage/large_object/inv_api.c:436
 #, c-format
 msgid "invalid whence setting: %d"
 msgstr "impostazione \"da dove\" non valida: %d"
 
-#: storage/large_object/inv_api.c:581
+#: storage/large_object/inv_api.c:591
 #, c-format
 msgid "invalid large object write request size: %d"
 msgstr "dimensione della richiesta di scrittura large object non valida: %d"
@@ -13473,52 +14433,92 @@ msgstr "rilevato deadlock"
 msgid "See server log for query details."
 msgstr "Vedi i log del server per i dettagli della query."
 
-#: storage/lmgr/lmgr.c:675
+#: storage/lmgr/lmgr.c:599
+#, c-format
+msgid "while updating tuple (%u,%u) in relation \"%s\""
+msgstr "durante la modifica della tupla (%u,%u) nella relazione \"%s\""
+
+#: storage/lmgr/lmgr.c:602
+#, c-format
+msgid "while deleting tuple (%u,%u) in relation \"%s\""
+msgstr "durante l'eliminazione della tupla (%u,%u) nella relazione \"%s\""
+
+#: storage/lmgr/lmgr.c:605
+#, c-format
+msgid "while locking tuple (%u,%u) in relation \"%s\""
+msgstr "durante il blocco della tupla (%u,%u) nella relazione \"%s\""
+
+#: storage/lmgr/lmgr.c:608
+#, c-format
+msgid "while locking updated version (%u,%u) of tuple in relation \"%s\""
+msgstr "durante il blocco della versione modificata (%u,%u) della tupla nella relazione \"%s\""
+
+#: storage/lmgr/lmgr.c:611
+#, c-format
+msgid "while inserting index tuple (%u,%u) in relation \"%s\""
+msgstr "durante l'inserimento della tupla di indice (%u,%u) nella relazione \"%s\""
+
+#: storage/lmgr/lmgr.c:614
+#, c-format
+msgid "while checking uniqueness of tuple (%u,%u) in relation \"%s\""
+msgstr "durante il controllo di univocità della tupla (%u,%u) nella relazione \"%s\""
+
+#: storage/lmgr/lmgr.c:617
+#, c-format
+msgid "while rechecking updated tuple (%u,%u) in relation \"%s\""
+msgstr "durante il ricontrollo della tupla modificata (%u,%u) nella relazione \"%s\""
+
+#: storage/lmgr/lmgr.c:620
+#, c-format
+msgid "while checking exclusion constraint on tuple (%u,%u) in relation \"%s\""
+msgstr "durante il controllo del vincolo di esclusione sulla tupla (%u,%u) nella relazione \"%s\""
+
+#: storage/lmgr/lmgr.c:840
 #, c-format
 msgid "relation %u of database %u"
 msgstr "la relazione %u del database %u"
 
-#: storage/lmgr/lmgr.c:681
+#: storage/lmgr/lmgr.c:846
 #, c-format
 msgid "extension of relation %u of database %u"
 msgstr "l'estensione della relazione %u del database %u"
 
-#: storage/lmgr/lmgr.c:687
+#: storage/lmgr/lmgr.c:852
 #, c-format
 msgid "page %u of relation %u of database %u"
 msgstr "la pagina %u della relazione %u del database %u"
 
-#: storage/lmgr/lmgr.c:694
+#: storage/lmgr/lmgr.c:859
 #, c-format
 msgid "tuple (%u,%u) of relation %u of database %u"
 msgstr "la tupla (%u,%u) della relazione %u del database %u"
 
-#: storage/lmgr/lmgr.c:702
+#: storage/lmgr/lmgr.c:867
 #, c-format
 msgid "transaction %u"
 msgstr "la transazione %u"
 
-#: storage/lmgr/lmgr.c:707
+#: storage/lmgr/lmgr.c:872
 #, c-format
 msgid "virtual transaction %d/%u"
 msgstr "la transazione virtuale %d/%u"
 
-#: storage/lmgr/lmgr.c:713
+#: storage/lmgr/lmgr.c:878
 #, c-format
 msgid "object %u of class %u of database %u"
 msgstr "l'oggetto %u di classe %u del database %u"
 
-#: storage/lmgr/lmgr.c:721
+#: storage/lmgr/lmgr.c:886
 #, c-format
 msgid "user lock [%u,%u,%u]"
 msgstr "il lock utente [%u,%u,%u]"
 
-#: storage/lmgr/lmgr.c:728
+#: storage/lmgr/lmgr.c:893
 #, c-format
 msgid "advisory lock [%u,%u,%u,%u]"
 msgstr "l'advisory lock [%u,%u,%u,%u]"
 
-#: storage/lmgr/lmgr.c:736
+#: storage/lmgr/lmgr.c:901
 #, c-format
 msgid "unrecognized locktag type %d"
 msgstr "tipo di locktag %d sconosciuto"
@@ -13533,238 +14533,238 @@ msgstr "non è possibile acquisire lock in modo %s sugli oggetti del database me
 msgid "Only RowExclusiveLock or less can be acquired on database objects during recovery."
 msgstr "Solo RowExclusiveLock o inferiore può essere acquisito sugli oggetti database durante il ripristino."
 
-#: storage/lmgr/lock.c:873 storage/lmgr/lock.c:907 storage/lmgr/lock.c:2600
-#: storage/lmgr/lock.c:3709 storage/lmgr/lock.c:3774 storage/lmgr/lock.c:4064
+#: storage/lmgr/lock.c:873 storage/lmgr/lock.c:907 storage/lmgr/lock.c:2602
+#: storage/lmgr/lock.c:3714 storage/lmgr/lock.c:3779 storage/lmgr/lock.c:4069
 #, c-format
 msgid "You might need to increase max_locks_per_transaction."
 msgstr "Potrebbe essere necessario incrementare max_locks_per_transaction."
 
-#: storage/lmgr/lock.c:3036 storage/lmgr/lock.c:3148
+#: storage/lmgr/lock.c:3039 storage/lmgr/lock.c:3151
 #, c-format
 msgid "cannot PREPARE while holding both session-level and transaction-level locks on the same object"
 msgstr "non è possibile eseguire PREPARE tenendo sia lock a livello di sessione che di transazione sullo stesso oggetto"
 
-#: storage/lmgr/predicate.c:671
+#: storage/lmgr/predicate.c:674
 #, c-format
 msgid "not enough elements in RWConflictPool to record a read/write conflict"
 msgstr "elementi non sufficienti in RWConflictPool per registrare un conflitto di lettura/scrittura"
 
-#: storage/lmgr/predicate.c:672 storage/lmgr/predicate.c:700
+#: storage/lmgr/predicate.c:675 storage/lmgr/predicate.c:703
 #, c-format
 msgid "You might need to run fewer transactions at a time or increase max_connections."
 msgstr "Potrebbe essere necessario eseguire meno transazioni per volta oppure incrementare max_connections."
 
-#: storage/lmgr/predicate.c:699
+#: storage/lmgr/predicate.c:702
 #, c-format
 msgid "not enough elements in RWConflictPool to record a potential read/write conflict"
 msgstr "elementi non sufficienti in RWConflictPool per registrare un potenziale conflitto di lettura/scrittura"
 
-#: storage/lmgr/predicate.c:904
+#: storage/lmgr/predicate.c:907
 #, c-format
 msgid "memory for serializable conflict tracking is nearly exhausted"
 msgstr "la memoria per il tracciamento dei conflitti di serializzazione è quasi esaurita"
 
-#: storage/lmgr/predicate.c:905
+#: storage/lmgr/predicate.c:908
 #, c-format
 msgid "There might be an idle transaction or a forgotten prepared transaction causing this."
 msgstr "Ciò potrebbe essere causato da una transazione inattiva o una transazione preparata dimenticata."
 
-#: storage/lmgr/predicate.c:1187 storage/lmgr/predicate.c:1259
+#: storage/lmgr/predicate.c:1190 storage/lmgr/predicate.c:1262
 #, c-format
-msgid "not enough shared memory for elements of data structure \"%s\" (%lu bytes requested)"
-msgstr "memoria condivisa non sufficiente per gli elementi della struttura dati \"%s\" (richiesti %lu byte)"
+msgid "not enough shared memory for elements of data structure \"%s\" (%zu bytes requested)"
+msgstr "memoria condivisa non sufficiente per gli elementi della struttura di dati \"%s\" (%zu byte richiesti)"
 
-#: storage/lmgr/predicate.c:1547
+#: storage/lmgr/predicate.c:1550
 #, c-format
 msgid "deferrable snapshot was unsafe; trying a new one"
 msgstr "lo snapshot deferibile era insicuro; ne sto provando uno nuovo"
 
-#: storage/lmgr/predicate.c:1586
+#: storage/lmgr/predicate.c:1589
 #, c-format
 msgid "\"default_transaction_isolation\" is set to \"serializable\"."
 msgstr "\"default_transaction_isolation\" è impostato a \"serializable\"."
 
-#: storage/lmgr/predicate.c:1587
+#: storage/lmgr/predicate.c:1590
 #, c-format
 msgid "You can use \"SET default_transaction_isolation = 'repeatable read'\" to change the default."
 msgstr "Puoi usare \"SET default_transaction_isolation = 'repeatable read'\" per cambiare il valore predefinito."
 
-#: storage/lmgr/predicate.c:1626
+#: storage/lmgr/predicate.c:1629
 #, c-format
 msgid "a snapshot-importing transaction must not be READ ONLY DEFERRABLE"
 msgstr "una transazione che importa uno snapshot non può essere READ ONLY DEFERRABLE"
 
-#: storage/lmgr/predicate.c:1696 utils/time/snapmgr.c:283
+#: storage/lmgr/predicate.c:1699 utils/time/snapmgr.c:398
 #, c-format
 msgid "could not import the requested snapshot"
 msgstr "non è stato possibile importare lo snapshot richiesto"
 
-#: storage/lmgr/predicate.c:1697 utils/time/snapmgr.c:284
+#: storage/lmgr/predicate.c:1700 utils/time/snapmgr.c:399
 #, c-format
 msgid "The source transaction %u is not running anymore."
 msgstr "La transazione di origine %u non è più in esecuzione."
 
-#: storage/lmgr/predicate.c:2321 storage/lmgr/predicate.c:2336
-#: storage/lmgr/predicate.c:3729
+#: storage/lmgr/predicate.c:2324 storage/lmgr/predicate.c:2339
+#: storage/lmgr/predicate.c:3732
 #, c-format
 msgid "You might need to increase max_pred_locks_per_transaction."
 msgstr "Potrebbe essere necessario incrementare max_pred_locks_per_transaction."
 
-#: storage/lmgr/predicate.c:3883 storage/lmgr/predicate.c:3972
-#: storage/lmgr/predicate.c:3980 storage/lmgr/predicate.c:4019
-#: storage/lmgr/predicate.c:4258 storage/lmgr/predicate.c:4595
-#: storage/lmgr/predicate.c:4607 storage/lmgr/predicate.c:4649
-#: storage/lmgr/predicate.c:4687
+#: storage/lmgr/predicate.c:3886 storage/lmgr/predicate.c:3975
+#: storage/lmgr/predicate.c:3983 storage/lmgr/predicate.c:4022
+#: storage/lmgr/predicate.c:4261 storage/lmgr/predicate.c:4598
+#: storage/lmgr/predicate.c:4610 storage/lmgr/predicate.c:4652
+#: storage/lmgr/predicate.c:4690
 #, c-format
 msgid "could not serialize access due to read/write dependencies among transactions"
 msgstr "serializzazione dell'accesso fallita a causa di dipendenze di lettura/scrittura tra le transazioni"
 
-#: storage/lmgr/predicate.c:3885 storage/lmgr/predicate.c:3974
-#: storage/lmgr/predicate.c:3982 storage/lmgr/predicate.c:4021
-#: storage/lmgr/predicate.c:4260 storage/lmgr/predicate.c:4597
-#: storage/lmgr/predicate.c:4609 storage/lmgr/predicate.c:4651
-#: storage/lmgr/predicate.c:4689
+#: storage/lmgr/predicate.c:3888 storage/lmgr/predicate.c:3977
+#: storage/lmgr/predicate.c:3985 storage/lmgr/predicate.c:4024
+#: storage/lmgr/predicate.c:4263 storage/lmgr/predicate.c:4600
+#: storage/lmgr/predicate.c:4612 storage/lmgr/predicate.c:4654
+#: storage/lmgr/predicate.c:4692
 #, c-format
 msgid "The transaction might succeed if retried."
 msgstr "La transazione potrebbe riuscire se ritentata."
 
-#: storage/lmgr/proc.c:1170
+#: storage/lmgr/proc.c:1172
 #, c-format
 msgid "Process %d waits for %s on %s."
 msgstr "Processo %d in attesa di %s su %s."
 
-#: storage/lmgr/proc.c:1180
+#: storage/lmgr/proc.c:1182
 #, c-format
 msgid "sending cancel to blocking autovacuum PID %d"
 msgstr "invio di annullamento per bloccare l'autovacuum con PID %d"
 
-#: storage/lmgr/proc.c:1192 utils/adt/misc.c:136
+#: storage/lmgr/proc.c:1194 utils/adt/misc.c:136
 #, c-format
 msgid "could not send signal to process %d: %m"
 msgstr "invio del segnale al processo %d fallito: %m"
 
-#: storage/lmgr/proc.c:1227
+#: storage/lmgr/proc.c:1293
 #, c-format
 msgid "process %d avoided deadlock for %s on %s by rearranging queue order after %ld.%03d ms"
 msgstr "il processo %d ha evitato un deadlock per %s su %s modificando l'ordine della coda dopo %ld.%03d ms"
 
-#: storage/lmgr/proc.c:1239
+#: storage/lmgr/proc.c:1308
 #, c-format
 msgid "process %d detected deadlock while waiting for %s on %s after %ld.%03d ms"
 msgstr "il processo %d ha individuato un deadlock mentre era in attesa di %s su %s dopo %ld.%03d ms"
 
-#: storage/lmgr/proc.c:1245
+#: storage/lmgr/proc.c:1317
 #, c-format
 msgid "process %d still waiting for %s on %s after %ld.%03d ms"
 msgstr "il processo %d è ancora un attesa di %s su %s dopo %ld.%03d ms"
 
-#: storage/lmgr/proc.c:1249
+#: storage/lmgr/proc.c:1324
 #, c-format
 msgid "process %d acquired %s on %s after %ld.%03d ms"
 msgstr "il processo %d ha acquisito %s su %s dopo %ld.%03d ms"
 
-#: storage/lmgr/proc.c:1265
+#: storage/lmgr/proc.c:1340
 #, c-format
 msgid "process %d failed to acquire %s on %s after %ld.%03d ms"
 msgstr "il processo %d ha fallito l'acquisizione di %s su %s dopo %ld.%03d ms"
 
-#: storage/page/bufpage.c:142
+#: storage/page/bufpage.c:144
 #, c-format
 msgid "page verification failed, calculated checksum %u but expected %u"
 msgstr "verifica della pagina fallita, somma di controllo calcolata %u ma era attesa %u"
 
-#: storage/page/bufpage.c:198 storage/page/bufpage.c:445
-#: storage/page/bufpage.c:678 storage/page/bufpage.c:808
+#: storage/page/bufpage.c:200 storage/page/bufpage.c:459
+#: storage/page/bufpage.c:691 storage/page/bufpage.c:823
 #, c-format
 msgid "corrupted page pointers: lower = %u, upper = %u, special = %u"
 msgstr "puntatore di pagina corrotto: lower = %u, upper = %u, special = %u"
 
-#: storage/page/bufpage.c:488
+#: storage/page/bufpage.c:503
 #, c-format
 msgid "corrupted item pointer: %u"
 msgstr "puntatore di elemento corrotto: %u"
 
-#: storage/page/bufpage.c:499 storage/page/bufpage.c:860
+#: storage/page/bufpage.c:514 storage/page/bufpage.c:874
 #, c-format
 msgid "corrupted item lengths: total %u, available space %u"
 msgstr "lunghezza dell'elemento corrotta: totale %u, spazio disponibile %u"
 
-#: storage/page/bufpage.c:697 storage/page/bufpage.c:833
+#: storage/page/bufpage.c:710 storage/page/bufpage.c:847
 #, c-format
 msgid "corrupted item pointer: offset = %u, size = %u"
 msgstr "puntatore di elemento corrotto: offset = %u, size = %u"
 
-#: storage/smgr/md.c:427 storage/smgr/md.c:898
+#: storage/smgr/md.c:426 storage/smgr/md.c:897
 #, c-format
 msgid "could not truncate file \"%s\": %m"
 msgstr "troncamento del file \"%s\" fallito: %m"
 
-#: storage/smgr/md.c:494
+#: storage/smgr/md.c:493
 #, c-format
 msgid "cannot extend file \"%s\" beyond %u blocks"
 msgstr "estendere il file \"%s\" oltre %u blocchi"
 
-#: storage/smgr/md.c:516 storage/smgr/md.c:677 storage/smgr/md.c:752
+#: storage/smgr/md.c:515 storage/smgr/md.c:676 storage/smgr/md.c:751
 #, c-format
 msgid "could not seek to block %u in file \"%s\": %m"
 msgstr "spostamento al blocco %u nel file \"%s\" fallito: %m"
 
-#: storage/smgr/md.c:524
+#: storage/smgr/md.c:523
 #, c-format
 msgid "could not extend file \"%s\": %m"
 msgstr "non è stato possibile estendere il file \"%s\": %m"
 
-#: storage/smgr/md.c:526 storage/smgr/md.c:533 storage/smgr/md.c:779
+#: storage/smgr/md.c:525 storage/smgr/md.c:532 storage/smgr/md.c:778
 #, c-format
 msgid "Check free disk space."
 msgstr "Controlla lo spazio libero sul disco."
 
-#: storage/smgr/md.c:530
+#: storage/smgr/md.c:529
 #, c-format
 msgid "could not extend file \"%s\": wrote only %d of %d bytes at block %u"
 msgstr "non è stato possibile estendere il file \"%s\": scritti soli %d byte di %d nel blocco %u"
 
-#: storage/smgr/md.c:695
+#: storage/smgr/md.c:694
 #, c-format
 msgid "could not read block %u in file \"%s\": %m"
 msgstr "lettura del blocco %u nel file \"%s\" fallita: %m"
 
-#: storage/smgr/md.c:711
+#: storage/smgr/md.c:710
 #, c-format
 msgid "could not read block %u in file \"%s\": read only %d of %d bytes"
 msgstr "lettura del blocco %u nel file \"%s\" fallita: letti soli %d byte di %d"
 
-#: storage/smgr/md.c:770
+#: storage/smgr/md.c:769
 #, c-format
 msgid "could not write block %u in file \"%s\": %m"
 msgstr "scrittura del blocco %u nel file \"%s\" fallita: %m"
 
-#: storage/smgr/md.c:775
+#: storage/smgr/md.c:774
 #, c-format
 msgid "could not write block %u in file \"%s\": wrote only %d of %d bytes"
 msgstr "lettura del blocco %u nel file \"%s\" fallita: scritti solo %d byte di %d"
 
-#: storage/smgr/md.c:874
+#: storage/smgr/md.c:873
 #, c-format
 msgid "could not truncate file \"%s\" to %u blocks: it's only %u blocks now"
 msgstr "troncamento del file \"%s\" a %u blocchi fallito: ora è di soli %u blocchi"
 
-#: storage/smgr/md.c:923
+#: storage/smgr/md.c:922
 #, c-format
 msgid "could not truncate file \"%s\" to %u blocks: %m"
 msgstr "troncamento del file \"%s\" a %u blocchi fallito: %m"
 
-#: storage/smgr/md.c:1203
+#: storage/smgr/md.c:1202
 #, c-format
 msgid "could not fsync file \"%s\" but retrying: %m"
 msgstr "fsync del file \"%s\" fallito ma sto ritentando: %m"
 
-#: storage/smgr/md.c:1366
+#: storage/smgr/md.c:1365
 #, c-format
 msgid "could not forward fsync request because request queue is full"
 msgstr "inoltro della richiesta di fsync fallito perché la coda di richieste è piena"
 
-#: storage/smgr/md.c:1763
+#: storage/smgr/md.c:1760
 #, c-format
 msgid "could not open file \"%s\" (target block %u): %m"
 msgstr "apertura del file \"%s\" fallita (blocco di destinazione %u): %m"
@@ -13774,14 +14774,14 @@ msgstr "apertura del file \"%s\" fallita (blocco di destinazione %u): %m"
 msgid "invalid argument size %d in function call message"
 msgstr "La dimensione dell'argomento %d non è valida nel messaggi di chiamata di funzione"
 
-#: tcop/fastpath.c:304 tcop/postgres.c:362 tcop/postgres.c:398
+#: tcop/fastpath.c:304 tcop/postgres.c:353 tcop/postgres.c:389
 #, c-format
 msgid "unexpected EOF on client connection"
 msgstr "fine file inaspettata nella connessione al client"
 
-#: tcop/fastpath.c:318 tcop/postgres.c:947 tcop/postgres.c:1257
-#: tcop/postgres.c:1515 tcop/postgres.c:1918 tcop/postgres.c:2285
-#: tcop/postgres.c:2360
+#: tcop/fastpath.c:318 tcop/postgres.c:944 tcop/postgres.c:1254
+#: tcop/postgres.c:1512 tcop/postgres.c:1915 tcop/postgres.c:2282
+#: tcop/postgres.c:2357
 #, c-format
 msgid "current transaction is aborted, commands ignored until end of transaction block"
 msgstr "la transazione corrente è interrotta, i comandi saranno ignorati fino alla fine del blocco della transazione"
@@ -13791,8 +14791,8 @@ msgstr "la transazione corrente è interrotta, i comandi saranno ignorati fino a
 msgid "fastpath function call: \"%s\" (OID %u)"
 msgstr "chiamata funzione fastpath: \"%s\" (OID %u)"
 
-#: tcop/fastpath.c:428 tcop/postgres.c:1117 tcop/postgres.c:1382
-#: tcop/postgres.c:1759 tcop/postgres.c:1976
+#: tcop/fastpath.c:428 tcop/postgres.c:1114 tcop/postgres.c:1379
+#: tcop/postgres.c:1756 tcop/postgres.c:1973
 #, c-format
 msgid "duration: %s ms"
 msgstr "durata: %s ms"
@@ -13817,261 +14817,261 @@ msgstr "la chiamata alla funzione contiene %d formati di parametri ma %d paramet
 msgid "incorrect binary data format in function argument %d"
 msgstr "formato dei dati binari non corretto nell'argomento %d della funzione"
 
-#: tcop/postgres.c:426 tcop/postgres.c:438 tcop/postgres.c:449
-#: tcop/postgres.c:461 tcop/postgres.c:4235
+#: tcop/postgres.c:417 tcop/postgres.c:429 tcop/postgres.c:440
+#: tcop/postgres.c:452 tcop/postgres.c:4252
 #, c-format
 msgid "invalid frontend message type %d"
 msgstr "messaggio frontend di tipo %d non valido"
 
-#: tcop/postgres.c:888
+#: tcop/postgres.c:885
 #, c-format
 msgid "statement: %s"
 msgstr "istruzione: %s"
 
-#: tcop/postgres.c:1122
+#: tcop/postgres.c:1119
 #, c-format
 msgid "duration: %s ms  statement: %s"
 msgstr "durata: %s ms  istruzione: %s"
 
-#: tcop/postgres.c:1172
+#: tcop/postgres.c:1169
 #, c-format
 msgid "parse %s: %s"
 msgstr "analisi di %s: %s"
 
-#: tcop/postgres.c:1230
+#: tcop/postgres.c:1227
 #, c-format
 msgid "cannot insert multiple commands into a prepared statement"
 msgstr "non è possibile inserire comandi multipli in una istruzione preparata"
 
-#: tcop/postgres.c:1387
+#: tcop/postgres.c:1384
 #, c-format
 msgid "duration: %s ms  parse %s: %s"
 msgstr "durata: %s ms  analisi di %s: %s"
 
-#: tcop/postgres.c:1432
+#: tcop/postgres.c:1429
 #, c-format
 msgid "bind %s to %s"
 msgstr "bind di %s a %s"
 
-#: tcop/postgres.c:1451 tcop/postgres.c:2266
+#: tcop/postgres.c:1448 tcop/postgres.c:2263
 #, c-format
 msgid "unnamed prepared statement does not exist"
 msgstr "l'istruzione preparata senza nome non esiste"
 
-#: tcop/postgres.c:1493
+#: tcop/postgres.c:1490
 #, c-format
 msgid "bind message has %d parameter formats but %d parameters"
 msgstr "il messaggio di bind ha %d formati di parametri ma %d parametri"
 
-#: tcop/postgres.c:1499
+#: tcop/postgres.c:1496
 #, c-format
 msgid "bind message supplies %d parameters, but prepared statement \"%s\" requires %d"
 msgstr "il messaggio di bind fornisce %d paramatri, ma l'istruzione preparata \"%s\" ne richiede %d"
 
-#: tcop/postgres.c:1666
+#: tcop/postgres.c:1663
 #, c-format
 msgid "incorrect binary data format in bind parameter %d"
 msgstr "formato del dato binario errato nel parametro di bind %d"
 
-#: tcop/postgres.c:1764
+#: tcop/postgres.c:1761
 #, c-format
 msgid "duration: %s ms  bind %s%s%s: %s"
 msgstr "durata: %s ms  bind %s%s%s: %s"
 
-#: tcop/postgres.c:1812 tcop/postgres.c:2346
+#: tcop/postgres.c:1809 tcop/postgres.c:2343
 #, c-format
 msgid "portal \"%s\" does not exist"
 msgstr "il portale \"%s\" non esiste"
 
-#: tcop/postgres.c:1897
+#: tcop/postgres.c:1894
 #, c-format
 msgid "%s %s%s%s: %s"
 msgstr "%s %s%s%s: %s"
 
-#: tcop/postgres.c:1899 tcop/postgres.c:1984
+#: tcop/postgres.c:1896 tcop/postgres.c:1981
 msgid "execute fetch from"
 msgstr "esecuzione di fetch da"
 
-#: tcop/postgres.c:1900 tcop/postgres.c:1985
+#: tcop/postgres.c:1897 tcop/postgres.c:1982
 msgid "execute"
 msgstr "esecuzione di"
 
-#: tcop/postgres.c:1981
+#: tcop/postgres.c:1978
 #, c-format
 msgid "duration: %s ms  %s %s%s%s: %s"
 msgstr "durata: %s ms  %s %s%s%s: %s"
 
-#: tcop/postgres.c:2107
+#: tcop/postgres.c:2104
 #, c-format
 msgid "prepare: %s"
 msgstr "preparazione: %s"
 
-#: tcop/postgres.c:2170
+#: tcop/postgres.c:2167
 #, c-format
 msgid "parameters: %s"
 msgstr "parametri: %s"
 
-#: tcop/postgres.c:2189
+#: tcop/postgres.c:2186
 #, c-format
 msgid "abort reason: recovery conflict"
 msgstr "motivo dell'interruzione: conflitto di recupero"
 
-#: tcop/postgres.c:2205
+#: tcop/postgres.c:2202
 #, c-format
 msgid "User was holding shared buffer pin for too long."
 msgstr "L'utente stava trattenendo un pin di shared buffer troppo a lungo."
 
-#: tcop/postgres.c:2208
+#: tcop/postgres.c:2205
 #, c-format
 msgid "User was holding a relation lock for too long."
 msgstr "L'utente stava trattenendo un lock di relazione troppo a lungo."
 
-#: tcop/postgres.c:2211
+#: tcop/postgres.c:2208
 #, c-format
 msgid "User was or might have been using tablespace that must be dropped."
 msgstr "L'utente stava usando o potrebbe aver usato un tablespace che deve essere eliminato."
 
-#: tcop/postgres.c:2214
+#: tcop/postgres.c:2211
 #, c-format
 msgid "User query might have needed to see row versions that must be removed."
 msgstr "L'utente potrebbe aver avuto bisogno di vedere versioni di righe che devono essere rimosse."
 
-#: tcop/postgres.c:2220
+#: tcop/postgres.c:2217
 #, c-format
 msgid "User was connected to a database that must be dropped."
 msgstr "L'utente era connesso ad un database che deve essere eliminato."
 
-#: tcop/postgres.c:2549
+#: tcop/postgres.c:2546
 #, c-format
 msgid "terminating connection because of crash of another server process"
 msgstr "la connessione è stata terminata a causa del crash di un altro processo del server"
 
-#: tcop/postgres.c:2550
+#: tcop/postgres.c:2547
 #, c-format
 msgid "The postmaster has commanded this server process to roll back the current transaction and exit, because another server process exited abnormally and possibly corrupted shared memory."
 msgstr "Il postmaster ha obbligato questo processo del server di attuare il roll back della transazione corrente e di uscire, perché un altro processo del server è terminato anormalmente e con possibile corruzione della memoria condivisa."
 
-#: tcop/postgres.c:2554 tcop/postgres.c:2938
+#: tcop/postgres.c:2551 tcop/postgres.c:2945
 #, c-format
 msgid "In a moment you should be able to reconnect to the database and repeat your command."
 msgstr "In un momento sarai in grado di riconnetterti al database e di ripetere il comando."
 
-#: tcop/postgres.c:2667
+#: tcop/postgres.c:2664
 #, c-format
 msgid "floating-point exception"
 msgstr "eccezione floating-point"
 
-#: tcop/postgres.c:2668
+#: tcop/postgres.c:2665
 #, c-format
 msgid "An invalid floating-point operation was signaled. This probably means an out-of-range result or an invalid operation, such as division by zero."
 msgstr "Un'operazione in floating-point non valida è stata segnalata. Questo probabilmente sta a significare che il risultato è un valore fuori limite o l'operazione non è valida, ad esempio una divisione per zero."
 
-#: tcop/postgres.c:2842
+#: tcop/postgres.c:2849
 #, c-format
 msgid "terminating autovacuum process due to administrator command"
 msgstr "interruzione del processo autovacuum su comando dell'amministratore"
 
-#: tcop/postgres.c:2848 tcop/postgres.c:2858 tcop/postgres.c:2936
+#: tcop/postgres.c:2855 tcop/postgres.c:2865 tcop/postgres.c:2943
 #, c-format
 msgid "terminating connection due to conflict with recovery"
 msgstr "interruzione della connessione a causa di conflitto con il ripristino"
 
-#: tcop/postgres.c:2864
+#: tcop/postgres.c:2871
 #, c-format
 msgid "terminating connection due to administrator command"
 msgstr "interruzione della connessione su comando dell'amministratore"
 
-#: tcop/postgres.c:2876
+#: tcop/postgres.c:2883
 #, c-format
 msgid "connection to client lost"
 msgstr "connessione al client persa"
 
-#: tcop/postgres.c:2891
+#: tcop/postgres.c:2898
 #, c-format
 msgid "canceling authentication due to timeout"
 msgstr "annullamento dell'autenticazione a causa di timeout"
 
-#: tcop/postgres.c:2906
+#: tcop/postgres.c:2913
 #, c-format
 msgid "canceling statement due to lock timeout"
 msgstr "annullamento dell'istruzione a causa di timeout di lock"
 
-#: tcop/postgres.c:2915
+#: tcop/postgres.c:2922
 #, c-format
 msgid "canceling statement due to statement timeout"
 msgstr "annullamento dell'istruzione a causa di timeout"
 
-#: tcop/postgres.c:2924
+#: tcop/postgres.c:2931
 #, c-format
 msgid "canceling autovacuum task"
 msgstr "annullamento del task di autovacuum"
 
-#: tcop/postgres.c:2959
+#: tcop/postgres.c:2966
 #, c-format
 msgid "canceling statement due to user request"
 msgstr "annullamento dell'istruzione su richiesta dell'utente"
 
-#: tcop/postgres.c:3087 tcop/postgres.c:3109
+#: tcop/postgres.c:3094 tcop/postgres.c:3116
 #, c-format
 msgid "stack depth limit exceeded"
 msgstr "limite di profondità dello stack superato"
 
-#: tcop/postgres.c:3088 tcop/postgres.c:3110
+#: tcop/postgres.c:3095 tcop/postgres.c:3117
 #, c-format
 msgid "Increase the configuration parameter \"max_stack_depth\" (currently %dkB), after ensuring the platform's stack depth limit is adequate."
 msgstr "Incrementa il parametro di configurazione \"max_stack_depth\" (attualmente %dkB), dopo esserti assicurato che il limite dello stack della piattaforma sia adeguato."
 
-#: tcop/postgres.c:3126
+#: tcop/postgres.c:3133
 #, c-format
 msgid "\"max_stack_depth\" must not exceed %ldkB."
 msgstr "\"max_stack_depth\" non deve superare %ldkB"
 
-#: tcop/postgres.c:3128
+#: tcop/postgres.c:3135
 #, c-format
 msgid "Increase the platform's stack depth limit via \"ulimit -s\" or local equivalent."
 msgstr "Incrementa il limite dello stack della piattaforma usando \"ulimit -s\" on un comando equivalente."
 
-#: tcop/postgres.c:3492
+#: tcop/postgres.c:3499
 #, c-format
 msgid "invalid command-line argument for server process: %s"
 msgstr "argomento della riga di comando non valido per il processo server: %s"
 
-#: tcop/postgres.c:3493 tcop/postgres.c:3499
+#: tcop/postgres.c:3500 tcop/postgres.c:3506
 #, c-format
 msgid "Try \"%s --help\" for more information."
 msgstr "Prova \"%s --help\" per maggiori informazioni."
 
-#: tcop/postgres.c:3497
+#: tcop/postgres.c:3504
 #, c-format
 msgid "%s: invalid command-line argument: %s"
 msgstr "%s: argomento della riga di comando non valido: %s"
 
-#: tcop/postgres.c:3576
+#: tcop/postgres.c:3583
 #, c-format
 msgid "%s: no database nor user name specified"
 msgstr "%s: nessun database né nome utente specificato"
 
-#: tcop/postgres.c:4143
+#: tcop/postgres.c:4160
 #, c-format
 msgid "invalid CLOSE message subtype %d"
 msgstr "sottotipo %d del messaggio CLOSE non valido"
 
-#: tcop/postgres.c:4178
+#: tcop/postgres.c:4195
 #, c-format
 msgid "invalid DESCRIBE message subtype %d"
 msgstr "sottotipo %d del messaggio DESCRIBE non valido"
 
-#: tcop/postgres.c:4256
+#: tcop/postgres.c:4273
 #, c-format
 msgid "fastpath function calls not supported in a replication connection"
 msgstr "le chiamate di funzione fastpath non sono supportate in una connessione di replica"
 
-#: tcop/postgres.c:4260
+#: tcop/postgres.c:4277
 #, c-format
 msgid "extended query protocol not supported in a replication connection"
 msgstr "il protocollo di query esteso non è supportato in una connessione di replica"
 
-#: tcop/postgres.c:4430
+#: tcop/postgres.c:4447
 #, c-format
 msgid "disconnection: session time: %d:%02d:%02d.%03d user=%s database=%s host=%s%s%s"
 msgstr "disconnessione: tempo della sessione: %d:%02d:%02d.%03d utente=%s database=%s host=%s%s%s"
@@ -14092,24 +15092,24 @@ msgid "Declare it with SCROLL option to enable backward scan."
 msgstr "Dichiaralo con l'opzione SCROLL per abilitare le scansioni all'indietro."
 
 #. translator: %s is name of a SQL command, eg CREATE
-#: tcop/utility.c:269
+#: tcop/utility.c:227
 #, c-format
 msgid "cannot execute %s in a read-only transaction"
 msgstr "non è possibile eseguire %s in una transazione a sola lettura"
 
 #. translator: %s is name of a SQL command, eg CREATE
-#: tcop/utility.c:288
+#: tcop/utility.c:246
 #, c-format
 msgid "cannot execute %s during recovery"
 msgstr "non è possibile eseguire %s durante il recupero"
 
 #. translator: %s is name of a SQL command, eg PREPARE
-#: tcop/utility.c:306
+#: tcop/utility.c:264
 #, c-format
 msgid "cannot execute %s within security-restricted operation"
 msgstr "non è possibile eseguire %s nell'ambito di operazioni a sicurezza ristretta"
 
-#: tcop/utility.c:764
+#: tcop/utility.c:732
 #, c-format
 msgid "must be superuser to do CHECKPOINT"
 msgstr "solo un superutente può eseguire CHECKPOINT"
@@ -14234,13 +15234,13 @@ msgstr "parametro di Dictionary mancante"
 msgid "could not open dictionary file \"%s\": %m"
 msgstr "apertura del file dictionary \"%s\" fallita: %m"
 
-#: tsearch/spell.c:439 utils/adt/regexp.c:194
+#: tsearch/spell.c:439 utils/adt/regexp.c:204
 #, c-format
 msgid "invalid regular expression: %s"
 msgstr "espressione regolare non valida: %s"
 
 #: tsearch/spell.c:518 tsearch/spell.c:535 tsearch/spell.c:552
-#: tsearch/spell.c:569 tsearch/spell.c:591 gram.y:13326 gram.y:13343
+#: tsearch/spell.c:569 tsearch/spell.c:591 gram.y:13407 gram.y:13424
 #, c-format
 msgid "syntax error"
 msgstr "errore di sintassi"
@@ -14265,7 +15265,7 @@ msgstr "il dizionario Ispell supporta solo il flag di valore default"
 msgid "wrong affix file format for flag"
 msgstr "formato del file affix non corretto per il flag"
 
-#: tsearch/to_tsany.c:163 utils/adt/tsvector.c:269 utils/adt/tsvector_op.c:530
+#: tsearch/to_tsany.c:163 utils/adt/tsvector.c:270 utils/adt/tsvector_op.c:530
 #, c-format
 msgid "string is too long for tsvector (%d bytes, max %d bytes)"
 msgstr "la stringa è troppo lunga per tsvector (%d byte, massimo %d byte)"
@@ -14275,7 +15275,7 @@ msgstr "la stringa è troppo lunga per tsvector (%d byte, massimo %d byte)"
 msgid "line %d of configuration file \"%s\": \"%s\""
 msgstr "riga %d del file di configurazione \"%s\": \"%s\""
 
-#: tsearch/ts_locale.c:302
+#: tsearch/ts_locale.c:299
 #, c-format
 msgid "conversion from wchar_t to server encoding failed: %m"
 msgstr "conversione da wchar_t a codifica server fallita: %m"
@@ -14433,12 +15433,12 @@ msgid "unrecognized privilege type: \"%s\""
 msgstr "tipo di privilegio sconosciuto: \"%s\""
 
 #: utils/adt/acl.c:3427 utils/adt/regproc.c:122 utils/adt/regproc.c:143
-#: utils/adt/regproc.c:293
+#: utils/adt/regproc.c:318
 #, c-format
 msgid "function \"%s\" does not exist"
 msgstr "la funzione \"%s\" non esiste"
 
-#: utils/adt/acl.c:4876
+#: utils/adt/acl.c:4881
 #, c-format
 msgid "must be member of role \"%s\""
 msgstr "occorre far parte del ruolo \"%s\""
@@ -14454,14 +15454,14 @@ msgid "neither input type is an array"
 msgstr "nessuno dei tipi in input è un array"
 
 #: utils/adt/array_userfuncs.c:103 utils/adt/array_userfuncs.c:113
-#: utils/adt/arrayfuncs.c:1281 utils/adt/float.c:1225 utils/adt/float.c:1284
-#: utils/adt/float.c:2835 utils/adt/float.c:2851 utils/adt/int.c:623
+#: utils/adt/arrayfuncs.c:1281 utils/adt/float.c:1161 utils/adt/float.c:1220
+#: utils/adt/float.c:2771 utils/adt/float.c:2787 utils/adt/int.c:623
 #: utils/adt/int.c:652 utils/adt/int.c:673 utils/adt/int.c:704
 #: utils/adt/int.c:737 utils/adt/int.c:759 utils/adt/int.c:907
 #: utils/adt/int.c:928 utils/adt/int.c:955 utils/adt/int.c:995
 #: utils/adt/int.c:1016 utils/adt/int.c:1043 utils/adt/int.c:1076
-#: utils/adt/int.c:1159 utils/adt/int8.c:1247 utils/adt/numeric.c:2242
-#: utils/adt/numeric.c:2251 utils/adt/varbit.c:1145 utils/adt/varbit.c:1537
+#: utils/adt/int.c:1159 utils/adt/int8.c:1298 utils/adt/numeric.c:2281
+#: utils/adt/numeric.c:2290 utils/adt/varbit.c:1173 utils/adt/varbit.c:1565
 #: utils/adt/varlena.c:1013 utils/adt/varlena.c:2036
 #, c-format
 msgid "integer out of range"
@@ -14500,12 +15500,13 @@ msgid "Arrays with differing dimensions are not compatible for concatenation."
 msgstr "Array con dimensioni diverse non sono compatibili per il concatenamento."
 
 #: utils/adt/array_userfuncs.c:426 utils/adt/arrayfuncs.c:1243
-#: utils/adt/arrayfuncs.c:2916 utils/adt/arrayfuncs.c:4941
+#: utils/adt/arrayfuncs.c:2929 utils/adt/arrayfuncs.c:4954
 #, c-format
 msgid "invalid number of dimensions: %d"
 msgstr "numero di dimensioni non valido: %d"
 
-#: utils/adt/array_userfuncs.c:487 utils/adt/json.c:1595 utils/adt/json.c:1672
+#: utils/adt/array_userfuncs.c:487 utils/adt/json.c:1676 utils/adt/json.c:1771
+#: utils/adt/json.c:1800
 #, c-format
 msgid "could not determine input data type"
 msgstr "non è stato possibile determinare il tipo di dato di input"
@@ -14520,8 +15521,8 @@ msgstr "manca il valore della dimensione"
 msgid "missing \"]\" in array dimensions"
 msgstr "manca \"]\" nelle dimensioni dell'array"
 
-#: utils/adt/arrayfuncs.c:270 utils/adt/arrayfuncs.c:2441
-#: utils/adt/arrayfuncs.c:2469 utils/adt/arrayfuncs.c:2484
+#: utils/adt/arrayfuncs.c:270 utils/adt/arrayfuncs.c:2454
+#: utils/adt/arrayfuncs.c:2482 utils/adt/arrayfuncs.c:2497
 #, c-format
 msgid "upper bound cannot be less than lower bound"
 msgstr "il limite massimo non può essere minore del limite minimo"
@@ -14554,8 +15555,8 @@ msgid "malformed array literal: \"%s\""
 msgstr "il letterale array non è definito in modo corretto: \"%s\""
 
 #: utils/adt/arrayfuncs.c:876 utils/adt/arrayfuncs.c:1478
-#: utils/adt/arrayfuncs.c:2800 utils/adt/arrayfuncs.c:2948
-#: utils/adt/arrayfuncs.c:5041 utils/adt/arrayfuncs.c:5373
+#: utils/adt/arrayfuncs.c:2813 utils/adt/arrayfuncs.c:2961
+#: utils/adt/arrayfuncs.c:5054 utils/adt/arrayfuncs.c:5386
 #: utils/adt/arrayutils.c:93 utils/adt/arrayutils.c:102
 #: utils/adt/arrayutils.c:109
 #, c-format
@@ -14573,7 +15574,7 @@ msgid "wrong element type"
 msgstr "il tipo di elemento è errato"
 
 #: utils/adt/arrayfuncs.c:1312 utils/adt/rangetypes.c:325
-#: utils/cache/lsyscache.c:2530
+#: utils/cache/lsyscache.c:2549
 #, c-format
 msgid "no binary input function available for type %s"
 msgstr "non esiste una funzione di input binario per il tipo %s"
@@ -14584,92 +15585,92 @@ msgid "improper binary format in array element %d"
 msgstr "il formato binario nell'elemento dell'array %d non è corretto"
 
 #: utils/adt/arrayfuncs.c:1534 utils/adt/rangetypes.c:330
-#: utils/cache/lsyscache.c:2563
+#: utils/cache/lsyscache.c:2582
 #, c-format
 msgid "no binary output function available for type %s"
 msgstr "non esiste una funzione di output binario per il tipo %s"
 
-#: utils/adt/arrayfuncs.c:1908
+#: utils/adt/arrayfuncs.c:1921
 #, c-format
 msgid "slices of fixed-length arrays not implemented"
 msgstr "le sezioni di array a lunghezza fissa non sono implementate"
 
-#: utils/adt/arrayfuncs.c:2081 utils/adt/arrayfuncs.c:2103
-#: utils/adt/arrayfuncs.c:2137 utils/adt/arrayfuncs.c:2423
-#: utils/adt/arrayfuncs.c:4921 utils/adt/arrayfuncs.c:4953
-#: utils/adt/arrayfuncs.c:4970
+#: utils/adt/arrayfuncs.c:2094 utils/adt/arrayfuncs.c:2116
+#: utils/adt/arrayfuncs.c:2150 utils/adt/arrayfuncs.c:2436
+#: utils/adt/arrayfuncs.c:4934 utils/adt/arrayfuncs.c:4966
+#: utils/adt/arrayfuncs.c:4983 utils/adt/json.c:2172 utils/adt/json.c:2247
 #, c-format
 msgid "wrong number of array subscripts"
 msgstr "il numero di indici di array è errato"
 
-#: utils/adt/arrayfuncs.c:2086 utils/adt/arrayfuncs.c:2179
-#: utils/adt/arrayfuncs.c:2474
+#: utils/adt/arrayfuncs.c:2099 utils/adt/arrayfuncs.c:2192
+#: utils/adt/arrayfuncs.c:2487
 #, c-format
 msgid "array subscript out of range"
 msgstr "indice dell'array fuori dall'intervallo"
 
-#: utils/adt/arrayfuncs.c:2091
+#: utils/adt/arrayfuncs.c:2104
 #, c-format
 msgid "cannot assign null value to an element of a fixed-length array"
 msgstr "non è possibile assegnare un valore nullo a un elemento di un array a dimensione fissa"
 
-#: utils/adt/arrayfuncs.c:2377
+#: utils/adt/arrayfuncs.c:2390
 #, c-format
 msgid "updates on slices of fixed-length arrays not implemented"
 msgstr "la modifica di sezioni di array a lunghezza fissa non è implementate"
 
-#: utils/adt/arrayfuncs.c:2413 utils/adt/arrayfuncs.c:2500
+#: utils/adt/arrayfuncs.c:2426 utils/adt/arrayfuncs.c:2513
 #, c-format
 msgid "source array too small"
 msgstr "l'array di origine è troppo piccolo"
 
-#: utils/adt/arrayfuncs.c:3055
+#: utils/adt/arrayfuncs.c:3068
 #, c-format
 msgid "null array element not allowed in this context"
 msgstr "in questo contesto non è consentito un elemento di array nullo"
 
-#: utils/adt/arrayfuncs.c:3158 utils/adt/arrayfuncs.c:3366
-#: utils/adt/arrayfuncs.c:3683
+#: utils/adt/arrayfuncs.c:3171 utils/adt/arrayfuncs.c:3379
+#: utils/adt/arrayfuncs.c:3696
 #, c-format
 msgid "cannot compare arrays of different element types"
 msgstr "non è possibile confrontare array con elementi di tipo diverso"
 
-#: utils/adt/arrayfuncs.c:3568 utils/adt/rangetypes.c:1212
+#: utils/adt/arrayfuncs.c:3581 utils/adt/rangetypes.c:1212
 #, c-format
 msgid "could not identify a hash function for type %s"
 msgstr "non è stato possibile trovare una funzione di hash per il tipo %s"
 
-#: utils/adt/arrayfuncs.c:4819 utils/adt/arrayfuncs.c:4859
+#: utils/adt/arrayfuncs.c:4832 utils/adt/arrayfuncs.c:4872
 #, c-format
 msgid "dimension array or low bound array cannot be null"
 msgstr "la dimensione dell'array o il suo limite inferiore non possono essere nulli"
 
-#: utils/adt/arrayfuncs.c:4922 utils/adt/arrayfuncs.c:4954
+#: utils/adt/arrayfuncs.c:4935 utils/adt/arrayfuncs.c:4967
 #, c-format
 msgid "Dimension array must be one dimensional."
 msgstr "L'array delle dimensioni deve avere una sola dimensione."
 
-#: utils/adt/arrayfuncs.c:4927 utils/adt/arrayfuncs.c:4959
+#: utils/adt/arrayfuncs.c:4940 utils/adt/arrayfuncs.c:4972
 #, c-format
 msgid "wrong range of array subscripts"
 msgstr "il range degli indici dell'array non è corretto"
 
-#: utils/adt/arrayfuncs.c:4928 utils/adt/arrayfuncs.c:4960
+#: utils/adt/arrayfuncs.c:4941 utils/adt/arrayfuncs.c:4973
 #, c-format
 msgid "Lower bound of dimension array must be one."
 msgstr "Il valore minimo dell'array delle dimensioni deve essere uno."
 
-#: utils/adt/arrayfuncs.c:4933 utils/adt/arrayfuncs.c:4965
+#: utils/adt/arrayfuncs.c:4946 utils/adt/arrayfuncs.c:4978
 #, c-format
 msgid "dimension values cannot be null"
 msgstr "i valori di dimensione non possono essere nulli"
 
-#: utils/adt/arrayfuncs.c:4971
+#: utils/adt/arrayfuncs.c:4984
 #, c-format
 msgid "Low bound array has different size than dimensions array."
 msgstr "L'array dei valori inferiori ha dimensione differente dal numero di dimensioni dell'array."
 
-#: utils/adt/arrayfuncs.c:5238
+#: utils/adt/arrayfuncs.c:5251
 #, c-format
 msgid "removing elements from multidimensional arrays is not supported"
 msgstr "la rimozione di elementi da array multidimensionali non è supportata"
@@ -14704,15 +15705,15 @@ msgstr "sintassi di input non valida per il tipo booleano: \"%s\""
 msgid "invalid input syntax for type money: \"%s\""
 msgstr "sintassi di input non valida per il tipo money: \"%s\""
 
-#: utils/adt/cash.c:609 utils/adt/cash.c:659 utils/adt/cash.c:710
-#: utils/adt/cash.c:759 utils/adt/cash.c:811 utils/adt/cash.c:861
-#: utils/adt/float.c:852 utils/adt/float.c:916 utils/adt/float.c:2594
-#: utils/adt/float.c:2657 utils/adt/geo_ops.c:4125 utils/adt/int.c:719
+#: utils/adt/cash.c:607 utils/adt/cash.c:657 utils/adt/cash.c:708
+#: utils/adt/cash.c:757 utils/adt/cash.c:809 utils/adt/cash.c:859
+#: utils/adt/float.c:788 utils/adt/float.c:852 utils/adt/float.c:2530
+#: utils/adt/float.c:2593 utils/adt/geo_ops.c:4115 utils/adt/int.c:719
 #: utils/adt/int.c:861 utils/adt/int.c:969 utils/adt/int.c:1058
 #: utils/adt/int.c:1097 utils/adt/int.c:1125 utils/adt/int8.c:597
-#: utils/adt/int8.c:657 utils/adt/int8.c:846 utils/adt/int8.c:954
-#: utils/adt/int8.c:1043 utils/adt/int8.c:1151 utils/adt/numeric.c:4510
-#: utils/adt/numeric.c:4793 utils/adt/timestamp.c:3021
+#: utils/adt/int8.c:657 utils/adt/int8.c:897 utils/adt/int8.c:1005
+#: utils/adt/int8.c:1094 utils/adt/int8.c:1202 utils/adt/numeric.c:4938
+#: utils/adt/numeric.c:5221 utils/adt/timestamp.c:3346
 #, c-format
 msgid "division by zero"
 msgstr "divisione per zero"
@@ -14722,7 +15723,7 @@ msgstr "divisione per zero"
 msgid "\"char\" out of range"
 msgstr "\"char\" fuori dall'intervallo consentito"
 
-#: utils/adt/date.c:68 utils/adt/timestamp.c:93 utils/adt/varbit.c:52
+#: utils/adt/date.c:68 utils/adt/timestamp.c:102 utils/adt/varbit.c:52
 #: utils/adt/varchar.c:44
 #, c-format
 msgid "invalid type modifier"
@@ -14738,115 +15739,132 @@ msgstr "la precisione di TIME(%d)%s non può essere negativa"
 msgid "TIME(%d)%s precision reduced to maximum allowed, %d"
 msgstr "la precisione di TIME(%d)%s è stata ridotta al massimo consentito (%d)"
 
-#: utils/adt/date.c:144 utils/adt/datetime.c:1200 utils/adt/datetime.c:1936
+#: utils/adt/date.c:142 utils/adt/datetime.c:1210 utils/adt/datetime.c:1946
 #, c-format
 msgid "date/time value \"current\" is no longer supported"
 msgstr "il valore \"current\" per i tipi date/time non è più supportato"
 
-#: utils/adt/date.c:169 utils/adt/formatting.c:3399
+#: utils/adt/date.c:167 utils/adt/formatting.c:3411
 #, c-format
 msgid "date out of range: \"%s\""
 msgstr "data fuori dall'intervallo consentito: \"%s\""
 
-#: utils/adt/date.c:219 utils/adt/xml.c:2033
+#: utils/adt/date.c:217 utils/adt/json.c:1409 utils/adt/xml.c:2024
 #, c-format
 msgid "date out of range"
 msgstr "data fuori dall'intervallo consentito"
 
-#: utils/adt/date.c:383
+#: utils/adt/date.c:259 utils/adt/timestamp.c:589
+#, c-format
+msgid "date field value out of range: %d-%02d-%02d"
+msgstr "valori del campo data fuori dall'intervallo consentito: %d-%02d-%02d"
+
+#: utils/adt/date.c:265 utils/adt/timestamp.c:595
+#, c-format
+msgid "date out of range: %d-%02d-%02d"
+msgstr "data fuori dall'intervallo consentito: %d-%02d-%02d"
+
+#: utils/adt/date.c:418
 #, c-format
 msgid "cannot subtract infinite dates"
 msgstr "non si possono sottrarre date infinite"
 
-#: utils/adt/date.c:440 utils/adt/date.c:477
+#: utils/adt/date.c:475 utils/adt/date.c:512
 #, c-format
 msgid "date out of range for timestamp"
 msgstr "data fuori dall'intervallo consentito per timestamp"
 
-#: utils/adt/date.c:936 utils/adt/date.c:982 utils/adt/date.c:1549
-#: utils/adt/date.c:1585 utils/adt/date.c:2457 utils/adt/formatting.c:3275
-#: utils/adt/formatting.c:3307 utils/adt/formatting.c:3375
-#: utils/adt/nabstime.c:481 utils/adt/nabstime.c:524 utils/adt/nabstime.c:554
-#: utils/adt/nabstime.c:597 utils/adt/timestamp.c:226
-#: utils/adt/timestamp.c:269 utils/adt/timestamp.c:502
-#: utils/adt/timestamp.c:541 utils/adt/timestamp.c:2676
-#: utils/adt/timestamp.c:2697 utils/adt/timestamp.c:2710
-#: utils/adt/timestamp.c:2719 utils/adt/timestamp.c:2776
-#: utils/adt/timestamp.c:2799 utils/adt/timestamp.c:2812
-#: utils/adt/timestamp.c:2823 utils/adt/timestamp.c:3259
-#: utils/adt/timestamp.c:3388 utils/adt/timestamp.c:3429
-#: utils/adt/timestamp.c:3517 utils/adt/timestamp.c:3563
-#: utils/adt/timestamp.c:3674 utils/adt/timestamp.c:3998
-#: utils/adt/timestamp.c:4137 utils/adt/timestamp.c:4147
-#: utils/adt/timestamp.c:4209 utils/adt/timestamp.c:4349
-#: utils/adt/timestamp.c:4359 utils/adt/timestamp.c:4574
-#: utils/adt/timestamp.c:4653 utils/adt/timestamp.c:4660
-#: utils/adt/timestamp.c:4686 utils/adt/timestamp.c:4690
-#: utils/adt/timestamp.c:4747 utils/adt/xml.c:2055 utils/adt/xml.c:2062
-#: utils/adt/xml.c:2082 utils/adt/xml.c:2089
+#: utils/adt/date.c:971 utils/adt/date.c:1017 utils/adt/date.c:1617
+#: utils/adt/date.c:1653 utils/adt/date.c:2525 utils/adt/formatting.c:3287
+#: utils/adt/formatting.c:3319 utils/adt/formatting.c:3387
+#: utils/adt/json.c:1434 utils/adt/json.c:1441 utils/adt/json.c:1461
+#: utils/adt/json.c:1468 utils/adt/nabstime.c:455 utils/adt/nabstime.c:498
+#: utils/adt/nabstime.c:528 utils/adt/nabstime.c:571 utils/adt/timestamp.c:232
+#: utils/adt/timestamp.c:275 utils/adt/timestamp.c:713
+#: utils/adt/timestamp.c:742 utils/adt/timestamp.c:781
+#: utils/adt/timestamp.c:2935 utils/adt/timestamp.c:2956
+#: utils/adt/timestamp.c:2969 utils/adt/timestamp.c:2978
+#: utils/adt/timestamp.c:3035 utils/adt/timestamp.c:3058
+#: utils/adt/timestamp.c:3071 utils/adt/timestamp.c:3082
+#: utils/adt/timestamp.c:3607 utils/adt/timestamp.c:3736
+#: utils/adt/timestamp.c:3777 utils/adt/timestamp.c:3865
+#: utils/adt/timestamp.c:3911 utils/adt/timestamp.c:4022
+#: utils/adt/timestamp.c:4346 utils/adt/timestamp.c:4485
+#: utils/adt/timestamp.c:4495 utils/adt/timestamp.c:4557
+#: utils/adt/timestamp.c:4697 utils/adt/timestamp.c:4707
+#: utils/adt/timestamp.c:4922 utils/adt/timestamp.c:5001
+#: utils/adt/timestamp.c:5008 utils/adt/timestamp.c:5034
+#: utils/adt/timestamp.c:5038 utils/adt/timestamp.c:5095 utils/adt/xml.c:2046
+#: utils/adt/xml.c:2053 utils/adt/xml.c:2073 utils/adt/xml.c:2080
 #, c-format
 msgid "timestamp out of range"
 msgstr "timestamp fuori dall'intervallo consentito"
 
-#: utils/adt/date.c:1008
+#: utils/adt/date.c:1043
 #, c-format
 msgid "cannot convert reserved abstime value to date"
 msgstr "non è possibile convertire un valore speciale per abstime in una data"
 
-#: utils/adt/date.c:1162 utils/adt/date.c:1169 utils/adt/date.c:1947
-#: utils/adt/date.c:1954
+#: utils/adt/date.c:1197 utils/adt/date.c:1204 utils/adt/date.c:2015
+#: utils/adt/date.c:2022
 #, c-format
 msgid "time out of range"
 msgstr "ora fuori dall'intervallo consentito"
 
-#: utils/adt/date.c:1825 utils/adt/date.c:1842
+#: utils/adt/date.c:1265 utils/adt/timestamp.c:614
+#, c-format
+msgid "time field value out of range: %d:%02d:%02g"
+msgstr "campo temporale fuori dall'intervallo consentito: %d:%02d:%02g"
+
+#: utils/adt/date.c:1893 utils/adt/date.c:1910
 #, c-format
 msgid "\"time\" units \"%s\" not recognized"
 msgstr "unità \"%s\" di \"time\" non è riconosciuta"
 
-#: utils/adt/date.c:1963
+#: utils/adt/date.c:2031
 #, c-format
 msgid "time zone displacement out of range"
 msgstr "la differenza di fuso orario è fuori dall'intervallo consentito"
 
-#: utils/adt/date.c:2587 utils/adt/date.c:2604
+#: utils/adt/date.c:2655 utils/adt/date.c:2672
 #, c-format
 msgid "\"time with time zone\" units \"%s\" not recognized"
 msgstr "unità \"%s\" di \"time with time zone\" non è riconosciuta"
 
-#: utils/adt/date.c:2662 utils/adt/datetime.c:931 utils/adt/datetime.c:1665
-#: utils/adt/timestamp.c:4586 utils/adt/timestamp.c:4758
+#: utils/adt/date.c:2730 utils/adt/datetime.c:930 utils/adt/datetime.c:1675
+#: utils/adt/timestamp.c:535 utils/adt/timestamp.c:555
+#: utils/adt/timestamp.c:4934 utils/adt/timestamp.c:5106
 #, c-format
 msgid "time zone \"%s\" not recognized"
 msgstr "fuso orario \"%s\" non riconosciuto"
 
-#: utils/adt/date.c:2702 utils/adt/timestamp.c:4611 utils/adt/timestamp.c:4784
+#: utils/adt/date.c:2770 utils/adt/timestamp.c:4959 utils/adt/timestamp.c:5132
 #, c-format
 msgid "interval time zone \"%s\" must not include months or days"
 msgstr "l'intervallo di fusi orari \"%s\" non può contenere mesi o giorni"
 
-#: utils/adt/datetime.c:3539 utils/adt/datetime.c:3546
+#: utils/adt/datetime.c:3547 utils/adt/datetime.c:3554
 #, c-format
 msgid "date/time field value out of range: \"%s\""
 msgstr "valore del campo date/time fuori dall'intervallo consentito: \"%s\""
 
-#: utils/adt/datetime.c:3548
+#: utils/adt/datetime.c:3556
 #, c-format
 msgid "Perhaps you need a different \"datestyle\" setting."
 msgstr "Forse è necessario impostare un \"datestyle\" diverso."
 
-#: utils/adt/datetime.c:3553
+#: utils/adt/datetime.c:3561
 #, c-format
 msgid "interval field value out of range: \"%s\""
 msgstr "valore del campo interval fuori dall'intervallo consentito: \"%s\""
 
-#: utils/adt/datetime.c:3559
+#: utils/adt/datetime.c:3567
 #, c-format
 msgid "time zone displacement out of range: \"%s\""
 msgstr "la differenza di fuso orario è fuori dall'intervallo consentito: \"%s\""
 
 #. translator: first %s is inet or cidr
-#: utils/adt/datetime.c:3566 utils/adt/network.c:107
+#: utils/adt/datetime.c:3574 utils/adt/network.c:58
 #, c-format
 msgid "invalid input syntax for type %s: \"%s\""
 msgstr "sintassi di input non valida per il tipo %s: \"%s\""
@@ -14934,7 +15952,7 @@ msgstr "il valore è fuori dall'intervallo consentito: overflow"
 msgid "value out of range: underflow"
 msgstr "il valore è fuori dall'intervallo consentito: underflow"
 
-#: utils/adt/float.c:218 utils/adt/float.c:292 utils/adt/float.c:348
+#: utils/adt/float.c:218 utils/adt/float.c:292 utils/adt/float.c:316
 #, c-format
 msgid "invalid input syntax for type real: \"%s\""
 msgstr "la sintassi in input per il tipo real non è valida: \"%s\""
@@ -14944,274 +15962,274 @@ msgstr "la sintassi in input per il tipo real non è valida: \"%s\""
 msgid "\"%s\" is out of range for type real"
 msgstr "\"%s\" è fuori dall'intervallo consentito per il tipo real"
 
-#: utils/adt/float.c:449 utils/adt/float.c:523 utils/adt/float.c:579
-#: utils/adt/numeric.c:3972 utils/adt/numeric.c:3998
+#: utils/adt/float.c:417 utils/adt/float.c:491 utils/adt/float.c:515
+#: utils/adt/numeric.c:4400 utils/adt/numeric.c:4426
 #, c-format
 msgid "invalid input syntax for type double precision: \"%s\""
 msgstr "la sintassi in input per il tipo double precision non è valida: \"%s\""
 
-#: utils/adt/float.c:517
+#: utils/adt/float.c:485
 #, c-format
 msgid "\"%s\" is out of range for type double precision"
 msgstr "\"%s\" è fuori dall'intervallo consentito per il tipo double precision"
 
-#: utils/adt/float.c:1243 utils/adt/float.c:1301 utils/adt/int.c:349
+#: utils/adt/float.c:1179 utils/adt/float.c:1237 utils/adt/int.c:349
 #: utils/adt/int.c:775 utils/adt/int.c:804 utils/adt/int.c:825
 #: utils/adt/int.c:845 utils/adt/int.c:879 utils/adt/int.c:1174
-#: utils/adt/int8.c:1272 utils/adt/numeric.c:2339 utils/adt/numeric.c:2348
+#: utils/adt/int8.c:1323 utils/adt/numeric.c:2378 utils/adt/numeric.c:2387
 #, c-format
 msgid "smallint out of range"
 msgstr "il valore è fuori dall'intervallo consentito per il tipo smallint"
 
-#: utils/adt/float.c:1427 utils/adt/numeric.c:5186
+#: utils/adt/float.c:1363 utils/adt/numeric.c:5614
 #, c-format
 msgid "cannot take square root of a negative number"
 msgstr "non è possibile estrarre la radice quadrata di un numero negativo"
 
-#: utils/adt/float.c:1469 utils/adt/numeric.c:2159
+#: utils/adt/float.c:1405 utils/adt/numeric.c:2198
 #, c-format
 msgid "zero raised to a negative power is undefined"
 msgstr "zero elevato a potenza negativa non è definito"
 
-#: utils/adt/float.c:1473 utils/adt/numeric.c:2165
+#: utils/adt/float.c:1409 utils/adt/numeric.c:2204
 #, c-format
 msgid "a negative number raised to a non-integer power yields a complex result"
 msgstr "un numero negativo elevato a potenza non intera è un valore di tipo complesso"
 
-#: utils/adt/float.c:1539 utils/adt/float.c:1569 utils/adt/numeric.c:5404
+#: utils/adt/float.c:1475 utils/adt/float.c:1505 utils/adt/numeric.c:5832
 #, c-format
 msgid "cannot take logarithm of zero"
 msgstr "non è possibile calcolare il logaritmo di zero"
 
-#: utils/adt/float.c:1543 utils/adt/float.c:1573 utils/adt/numeric.c:5408
+#: utils/adt/float.c:1479 utils/adt/float.c:1509 utils/adt/numeric.c:5836
 #, c-format
 msgid "cannot take logarithm of a negative number"
 msgstr "non è possibile calcolare il logaritmo di un numero negativo"
 
+#: utils/adt/float.c:1536 utils/adt/float.c:1557 utils/adt/float.c:1578
 #: utils/adt/float.c:1600 utils/adt/float.c:1621 utils/adt/float.c:1642
-#: utils/adt/float.c:1664 utils/adt/float.c:1685 utils/adt/float.c:1706
-#: utils/adt/float.c:1728 utils/adt/float.c:1749
+#: utils/adt/float.c:1664 utils/adt/float.c:1685
 #, c-format
 msgid "input is out of range"
 msgstr "il valore di input è fuori dall'intervallo consentito"
 
-#: utils/adt/float.c:2811 utils/adt/numeric.c:1212
+#: utils/adt/float.c:2747 utils/adt/numeric.c:1251
 #, c-format
 msgid "count must be greater than zero"
 msgstr "il valore count dev'essere maggiore di zero"
 
-#: utils/adt/float.c:2816 utils/adt/numeric.c:1219
+#: utils/adt/float.c:2752 utils/adt/numeric.c:1258
 #, c-format
 msgid "operand, lower bound, and upper bound cannot be NaN"
 msgstr "l'operando e i valori minimo e massimo non possono essere NaN"
 
-#: utils/adt/float.c:2822
+#: utils/adt/float.c:2758
 #, c-format
 msgid "lower and upper bounds must be finite"
 msgstr "i valori minimo e massimo devono essere finiti"
 
-#: utils/adt/float.c:2860 utils/adt/numeric.c:1232
+#: utils/adt/float.c:2796 utils/adt/numeric.c:1271
 #, c-format
 msgid "lower bound cannot equal upper bound"
 msgstr "il valore minimo non può essere uguale a quello massimo"
 
-#: utils/adt/formatting.c:492
+#: utils/adt/formatting.c:485
 #, c-format
 msgid "invalid format specification for an interval value"
 msgstr "la specifica di formato per un intervallo non è valida"
 
-#: utils/adt/formatting.c:493
+#: utils/adt/formatting.c:486
 #, c-format
 msgid "Intervals are not tied to specific calendar dates."
 msgstr "Gli intervalli non sono legati a specifiche date di calendario."
 
-#: utils/adt/formatting.c:1060
+#: utils/adt/formatting.c:1055
 #, c-format
 msgid "\"EEEE\" must be the last pattern used"
 msgstr "\"EEEE\" dev'essere l'ultimo pattern usato"
 
-#: utils/adt/formatting.c:1068
+#: utils/adt/formatting.c:1063
 #, c-format
 msgid "\"9\" must be ahead of \"PR\""
 msgstr "\"9\" dev'essere più avanti di \"PR\""
 
-#: utils/adt/formatting.c:1084
+#: utils/adt/formatting.c:1079
 #, c-format
 msgid "\"0\" must be ahead of \"PR\""
 msgstr "\"0\" dev'essere più avanti di \"PR\""
 
-#: utils/adt/formatting.c:1111
+#: utils/adt/formatting.c:1106
 #, c-format
 msgid "multiple decimal points"
 msgstr "troppi punti decimali"
 
-#: utils/adt/formatting.c:1115 utils/adt/formatting.c:1198
+#: utils/adt/formatting.c:1110 utils/adt/formatting.c:1193
 #, c-format
 msgid "cannot use \"V\" and decimal point together"
 msgstr "non è possibile usare \"V\" ed un punto decimale insieme"
 
-#: utils/adt/formatting.c:1127
+#: utils/adt/formatting.c:1122
 #, c-format
 msgid "cannot use \"S\" twice"
 msgstr "non è possibile usare \"S\" due volte"
 
-#: utils/adt/formatting.c:1131
+#: utils/adt/formatting.c:1126
 #, c-format
 msgid "cannot use \"S\" and \"PL\"/\"MI\"/\"SG\"/\"PR\" together"
 msgstr "non è possibile usare sia \"S\" che \"PL\"/\"MI\"/\"SG\"/\"PR\" insieme"
 
-#: utils/adt/formatting.c:1151
+#: utils/adt/formatting.c:1146
 #, c-format
 msgid "cannot use \"S\" and \"MI\" together"
 msgstr "non è possibile usare sia \"S\" che \"MI\" insieme"
 
-#: utils/adt/formatting.c:1161
+#: utils/adt/formatting.c:1156
 #, c-format
 msgid "cannot use \"S\" and \"PL\" together"
 msgstr "non è possibile usare sia \"S\" che \"PL\" insieme"
 
-#: utils/adt/formatting.c:1171
+#: utils/adt/formatting.c:1166
 #, c-format
 msgid "cannot use \"S\" and \"SG\" together"
 msgstr "non è possibile usare sia \"S\" che \"SG\" insieme"
 
-#: utils/adt/formatting.c:1180
+#: utils/adt/formatting.c:1175
 #, c-format
 msgid "cannot use \"PR\" and \"S\"/\"PL\"/\"MI\"/\"SG\" together"
 msgstr "non è possibile usare sia \"PR\" che \"S\"/\"PL\"/\"MI\"/\"SG\" insieme"
 
-#: utils/adt/formatting.c:1206
+#: utils/adt/formatting.c:1201
 #, c-format
 msgid "cannot use \"EEEE\" twice"
 msgstr "non è possibile usare \"EEEE\" due volte"
 
-#: utils/adt/formatting.c:1212
+#: utils/adt/formatting.c:1207
 #, c-format
 msgid "\"EEEE\" is incompatible with other formats"
 msgstr "\"EEEE\" non è compatibile con altri formati"
 
-#: utils/adt/formatting.c:1213
+#: utils/adt/formatting.c:1208
 #, c-format
 msgid "\"EEEE\" may only be used together with digit and decimal point patterns."
 msgstr "\"EEEE\" può essere usato soltanto insieme a pattern di cifre e punti decimali."
 
-#: utils/adt/formatting.c:1413
+#: utils/adt/formatting.c:1408
 #, c-format
 msgid "\"%s\" is not a number"
 msgstr "\"%s\" non è un numero"
 
-#: utils/adt/formatting.c:1514 utils/adt/formatting.c:1566
+#: utils/adt/formatting.c:1509 utils/adt/formatting.c:1561
 #, c-format
 msgid "could not determine which collation to use for lower() function"
 msgstr "non è stato possibile determinare quale ordinamento usare per la funzione lower()"
 
-#: utils/adt/formatting.c:1634 utils/adt/formatting.c:1686
+#: utils/adt/formatting.c:1629 utils/adt/formatting.c:1681
 #, c-format
 msgid "could not determine which collation to use for upper() function"
 msgstr "non è stato possibile determinare quale ordinamento usare per la funzione upper()"
 
-#: utils/adt/formatting.c:1755 utils/adt/formatting.c:1819
+#: utils/adt/formatting.c:1750 utils/adt/formatting.c:1814
 #, c-format
 msgid "could not determine which collation to use for initcap() function"
 msgstr "non è stato possibile determinare quale ordinamento usare per la funzione initcap()"
 
-#: utils/adt/formatting.c:2123
+#: utils/adt/formatting.c:2118
 #, c-format
 msgid "invalid combination of date conventions"
 msgstr "la combinazione di convenzioni di date non è valida"
 
-#: utils/adt/formatting.c:2124
+#: utils/adt/formatting.c:2119
 #, c-format
 msgid "Do not mix Gregorian and ISO week date conventions in a formatting template."
 msgstr "Non è possibile usare la convenzione gregoriana e ISO per settimane in un modello di formattazione."
 
-#: utils/adt/formatting.c:2141
+#: utils/adt/formatting.c:2136
 #, c-format
 msgid "conflicting values for \"%s\" field in formatting string"
 msgstr "sono presenti valori contraddittori per il campo \"%s\" nella stringa di formattazione"
 
-#: utils/adt/formatting.c:2143
+#: utils/adt/formatting.c:2138
 #, c-format
 msgid "This value contradicts a previous setting for the same field type."
 msgstr "Questo valore contraddice una impostazione precedente per lo stesso tipo di campo"
 
-#: utils/adt/formatting.c:2204
+#: utils/adt/formatting.c:2199
 #, c-format
 msgid "source string too short for \"%s\" formatting field"
 msgstr "la stringa di origine è troppo corta per il campo di formattazione \"%s\""
 
-#: utils/adt/formatting.c:2206
+#: utils/adt/formatting.c:2201
 #, c-format
 msgid "Field requires %d characters, but only %d remain."
 msgstr "Il campo necessita di %d caratteri ma ne restano solo %d."
 
-#: utils/adt/formatting.c:2209 utils/adt/formatting.c:2223
+#: utils/adt/formatting.c:2204 utils/adt/formatting.c:2218
 #, c-format
 msgid "If your source string is not fixed-width, try using the \"FM\" modifier."
 msgstr "Se la stringa di partenza non ha lunghezza fissa, prova ad usare il modificatore \"FM\"."
 
-#: utils/adt/formatting.c:2219 utils/adt/formatting.c:2232
-#: utils/adt/formatting.c:2362
+#: utils/adt/formatting.c:2214 utils/adt/formatting.c:2227
+#: utils/adt/formatting.c:2357
 #, c-format
 msgid "invalid value \"%s\" for \"%s\""
 msgstr "valore \"%s\" per \"%s\" non valido"
 
-#: utils/adt/formatting.c:2221
+#: utils/adt/formatting.c:2216
 #, c-format
 msgid "Field requires %d characters, but only %d could be parsed."
 msgstr "Il campo necessita di %d caratteri, ma è stato possibile analizzarne solo %d."
 
-#: utils/adt/formatting.c:2234
+#: utils/adt/formatting.c:2229
 #, c-format
 msgid "Value must be an integer."
 msgstr "Il valore deve essere un integer."
 
-#: utils/adt/formatting.c:2239
+#: utils/adt/formatting.c:2234
 #, c-format
 msgid "value for \"%s\" in source string is out of range"
 msgstr "il valore \"%s\" nella stringa di origine è fuori dall'intervallo consentito"
 
-#: utils/adt/formatting.c:2241
+#: utils/adt/formatting.c:2236
 #, c-format
 msgid "Value must be in the range %d to %d."
 msgstr "Il valore deve essere compreso fra %d e %d."
 
-#: utils/adt/formatting.c:2364
+#: utils/adt/formatting.c:2359
 #, c-format
 msgid "The given value did not match any of the allowed values for this field."
 msgstr "Il valore fornito non corrisponde a nessuno di quelli consentiti per questo campo."
 
-#: utils/adt/formatting.c:2920
+#: utils/adt/formatting.c:2932
 #, c-format
-msgid "\"TZ\"/\"tz\" format patterns are not supported in to_date"
-msgstr "I pattern di formato \"TZ\"/\"tz\" non sono supportati nella funzione to_date"
+msgid "\"TZ\"/\"tz\"/\"OF\" format patterns are not supported in to_date"
+msgstr "i pattern di formato \"TZ\"/\"tz\"/\"OF\" non sono supportati in to_date"
 
-#: utils/adt/formatting.c:3028
+#: utils/adt/formatting.c:3040
 #, c-format
 msgid "invalid input string for \"Y,YYY\""
 msgstr "stringa di input non valida per \"Y,YYY\""
 
-#: utils/adt/formatting.c:3531
+#: utils/adt/formatting.c:3543
 #, c-format
 msgid "hour \"%d\" is invalid for the 12-hour clock"
 msgstr "l'ora \"%d\" non è valida su un orologio a 12 ore"
 
-#: utils/adt/formatting.c:3533
+#: utils/adt/formatting.c:3545
 #, c-format
 msgid "Use the 24-hour clock, or give an hour between 1 and 12."
 msgstr "Usa l'orologio a 24 ore o fornisci un'ora compresa fra 1 e 12."
 
-#: utils/adt/formatting.c:3628
+#: utils/adt/formatting.c:3640
 #, c-format
 msgid "cannot calculate day of year without year information"
 msgstr "non è possibile calcolare il giorno dell'anno senza informazioni sull'anno"
 
-#: utils/adt/formatting.c:4478
+#: utils/adt/formatting.c:4490
 #, c-format
 msgid "\"EEEE\" not supported for input"
 msgstr "l'uso di \"EEEE\" non è supportato per l'input"
 
-#: utils/adt/formatting.c:4490
+#: utils/adt/formatting.c:4502
 #, c-format
 msgid "\"RN\" not supported for input"
 msgstr "l'uso di \"RN\" non è supportato per l'input"
@@ -15233,7 +16251,7 @@ msgstr "il percorso dev'essere nella directory corrente o in una sua sottodirect
 
 #: utils/adt/genfile.c:118 utils/adt/oracle_compat.c:184
 #: utils/adt/oracle_compat.c:282 utils/adt/oracle_compat.c:758
-#: utils/adt/oracle_compat.c:1048
+#: utils/adt/oracle_compat.c:1059
 #, c-format
 msgid "requested length too large"
 msgstr "la lunghezza richiesta è eccessiva"
@@ -15249,11 +16267,6 @@ msgstr "spostamento nel file \"%s\" fallito: %m"
 msgid "must be superuser to read files"
 msgstr "solo un superutente può leggere i file"
 
-#: utils/adt/genfile.c:187 utils/adt/genfile.c:232
-#, c-format
-msgid "requested length cannot be negative"
-msgstr "la lunghezza richiesta non può essere negativa"
-
 #: utils/adt/genfile.c:273
 #, c-format
 msgid "must be superuser to get file information"
@@ -15264,119 +16277,129 @@ msgstr "solo un superutente può ottenere informazioni sul file"
 msgid "must be superuser to get directory listings"
 msgstr "solo un superutente può elencare il contenuto della directory"
 
-#: utils/adt/geo_ops.c:294 utils/adt/geo_ops.c:4246 utils/adt/geo_ops.c:5167
+#: utils/adt/geo_ops.c:299 utils/adt/geo_ops.c:1398 utils/adt/geo_ops.c:3460
+#: utils/adt/geo_ops.c:4236 utils/adt/geo_ops.c:5165
 #, c-format
 msgid "too many points requested"
 msgstr "il numero di punti richiesti è eccessivo"
 
-#: utils/adt/geo_ops.c:317
+#: utils/adt/geo_ops.c:322
 #, c-format
 msgid "could not format \"path\" value"
 msgstr "formattazione del valore \"path\" fallita"
 
-#: utils/adt/geo_ops.c:392
+#: utils/adt/geo_ops.c:397
 #, c-format
 msgid "invalid input syntax for type box: \"%s\""
 msgstr "sintassi di input non valida per il tipo box: \"%s\""
 
-#: utils/adt/geo_ops.c:951
+#: utils/adt/geo_ops.c:992
+#, c-format
+msgid "invalid line specification: must be two distinct points"
+msgstr "specificazione di linea non valida: devono essere due punti distinti"
+
+#: utils/adt/geo_ops.c:1001
+#, c-format
+msgid "invalid line specification: A and B cannot both be zero"
+msgstr "specificazione di linea non valida: A e B non possono essere entrambi zero"
+
+#: utils/adt/geo_ops.c:1006
 #, c-format
 msgid "invalid input syntax for type line: \"%s\""
 msgstr "sintassi di input non valida per il tipo line: \"%s\""
 
-#: utils/adt/geo_ops.c:958 utils/adt/geo_ops.c:1025 utils/adt/geo_ops.c:1040
-#: utils/adt/geo_ops.c:1052
-#, c-format
-msgid "type \"line\" not yet implemented"
-msgstr "il tipo \"line\" non è stato ancora implementato"
-
-#: utils/adt/geo_ops.c:1406 utils/adt/geo_ops.c:1429
+#: utils/adt/geo_ops.c:1378 utils/adt/geo_ops.c:1409
 #, c-format
 msgid "invalid input syntax for type path: \"%s\""
 msgstr "sintassi di input non valida per il tipo path: \"%s\""
 
-#: utils/adt/geo_ops.c:1468
+#: utils/adt/geo_ops.c:1448
 #, c-format
 msgid "invalid number of points in external \"path\" value"
 msgstr "il numero di punti nel valore del \"path\" esterno non è valido"
 
-#: utils/adt/geo_ops.c:1811
+#: utils/adt/geo_ops.c:1791
 #, c-format
 msgid "invalid input syntax for type point: \"%s\""
 msgstr "sintassi di input non valida per il tipo point: \"%s\""
 
-#: utils/adt/geo_ops.c:2039
+#: utils/adt/geo_ops.c:2019
 #, c-format
 msgid "invalid input syntax for type lseg: \"%s\""
 msgstr "sintassi di input non valida per il tipo lseg: \"%s\""
 
-#: utils/adt/geo_ops.c:2643
+#: utils/adt/geo_ops.c:2623
 #, c-format
 msgid "function \"dist_lb\" not implemented"
 msgstr "la funzione \"dist_lb\" non è implementata"
 
-#: utils/adt/geo_ops.c:3156
+#: utils/adt/geo_ops.c:3035
+#, c-format
+msgid "function \"close_sl\" not implemented"
+msgstr "la funzione \"close_sl\" non è implementata"
+
+#: utils/adt/geo_ops.c:3137
 #, c-format
 msgid "function \"close_lb\" not implemented"
 msgstr "la funzione \"close_lb\" non è implementata"
 
-#: utils/adt/geo_ops.c:3445
+#: utils/adt/geo_ops.c:3426
 #, c-format
 msgid "cannot create bounding box for empty polygon"
 msgstr "non è possibile creare un bounding box per il poligono vuoto"
 
-#: utils/adt/geo_ops.c:3469 utils/adt/geo_ops.c:3481
+#: utils/adt/geo_ops.c:3451 utils/adt/geo_ops.c:3471
 #, c-format
 msgid "invalid input syntax for type polygon: \"%s\""
 msgstr "sintassi di input non valida per il tipo polygon: \"%s\""
 
-#: utils/adt/geo_ops.c:3521
+#: utils/adt/geo_ops.c:3511
 #, c-format
 msgid "invalid number of points in external \"polygon\" value"
 msgstr "il numero di punti nel valore \"polygon\" esterno non è valido"
 
-#: utils/adt/geo_ops.c:4044
+#: utils/adt/geo_ops.c:4034
 #, c-format
 msgid "function \"poly_distance\" not implemented"
 msgstr "la funzione \"poly_distance\" non è implementata"
 
-#: utils/adt/geo_ops.c:4358
+#: utils/adt/geo_ops.c:4348
 #, c-format
 msgid "function \"path_center\" not implemented"
 msgstr "la funzione \"path_center\" non è implementata"
 
-#: utils/adt/geo_ops.c:4375
+#: utils/adt/geo_ops.c:4365
 #, c-format
 msgid "open path cannot be converted to polygon"
 msgstr "un path aperto non può essere convertito in un poligono"
 
-#: utils/adt/geo_ops.c:4544 utils/adt/geo_ops.c:4554 utils/adt/geo_ops.c:4569
-#: utils/adt/geo_ops.c:4575
+#: utils/adt/geo_ops.c:4542 utils/adt/geo_ops.c:4552 utils/adt/geo_ops.c:4567
+#: utils/adt/geo_ops.c:4573
 #, c-format
 msgid "invalid input syntax for type circle: \"%s\""
 msgstr "sintassi di input non valida per il tipo circle: \"%s\""
 
-#: utils/adt/geo_ops.c:4597 utils/adt/geo_ops.c:4605
+#: utils/adt/geo_ops.c:4595 utils/adt/geo_ops.c:4603
 #, c-format
 msgid "could not format \"circle\" value"
 msgstr "formattazione del valore \"circle\" fallita"
 
-#: utils/adt/geo_ops.c:4632
+#: utils/adt/geo_ops.c:4630
 #, c-format
 msgid "invalid radius in external \"circle\" value"
 msgstr "il raggio nel valore esterno di \"circle\" non è valido"
 
-#: utils/adt/geo_ops.c:5153
+#: utils/adt/geo_ops.c:5151
 #, c-format
 msgid "cannot convert circle with radius zero to polygon"
 msgstr "non è possibile convertire un cerchio con raggio nullo in un poligono"
 
-#: utils/adt/geo_ops.c:5158
+#: utils/adt/geo_ops.c:5156
 #, c-format
 msgid "must request at least 2 points"
 msgstr "devono essere richiesti almeno 2 punti"
 
-#: utils/adt/geo_ops.c:5202 utils/adt/geo_ops.c:5225
+#: utils/adt/geo_ops.c:5200
 #, c-format
 msgid "cannot convert empty polygon to circle"
 msgstr "non è possibile convertire un poligono vuoto in un cerchio"
@@ -15396,8 +16419,8 @@ msgstr "dati int2vector non validi"
 msgid "oidvector has too many elements"
 msgstr "ci sono troppi elementi nell'oidvector"
 
-#: utils/adt/int.c:1362 utils/adt/int8.c:1409 utils/adt/timestamp.c:4845
-#: utils/adt/timestamp.c:4926
+#: utils/adt/int.c:1362 utils/adt/int8.c:1460 utils/adt/timestamp.c:5193
+#: utils/adt/timestamp.c:5274
 #, c-format
 msgid "step size cannot equal zero"
 msgstr "il valore del passo non può essere uguale a zero"
@@ -15415,241 +16438,293 @@ msgstr "il valore \"%s\" è fuori dall'intervallo consentito per il tipo bigint"
 
 #: utils/adt/int8.c:500 utils/adt/int8.c:529 utils/adt/int8.c:550
 #: utils/adt/int8.c:581 utils/adt/int8.c:615 utils/adt/int8.c:640
-#: utils/adt/int8.c:697 utils/adt/int8.c:714 utils/adt/int8.c:783
-#: utils/adt/int8.c:804 utils/adt/int8.c:831 utils/adt/int8.c:864
-#: utils/adt/int8.c:892 utils/adt/int8.c:913 utils/adt/int8.c:940
-#: utils/adt/int8.c:980 utils/adt/int8.c:1001 utils/adt/int8.c:1028
-#: utils/adt/int8.c:1061 utils/adt/int8.c:1089 utils/adt/int8.c:1110
-#: utils/adt/int8.c:1137 utils/adt/int8.c:1310 utils/adt/int8.c:1349
-#: utils/adt/numeric.c:2294 utils/adt/varbit.c:1617
+#: utils/adt/int8.c:697 utils/adt/int8.c:714 utils/adt/int8.c:741
+#: utils/adt/int8.c:758 utils/adt/int8.c:834 utils/adt/int8.c:855
+#: utils/adt/int8.c:882 utils/adt/int8.c:915 utils/adt/int8.c:943
+#: utils/adt/int8.c:964 utils/adt/int8.c:991 utils/adt/int8.c:1031
+#: utils/adt/int8.c:1052 utils/adt/int8.c:1079 utils/adt/int8.c:1112
+#: utils/adt/int8.c:1140 utils/adt/int8.c:1161 utils/adt/int8.c:1188
+#: utils/adt/int8.c:1361 utils/adt/int8.c:1400 utils/adt/numeric.c:2333
+#: utils/adt/varbit.c:1645
 #, c-format
 msgid "bigint out of range"
 msgstr "bigint fuori dall'intervallo consentito"
 
-#: utils/adt/int8.c:1366
+#: utils/adt/int8.c:1417
 #, c-format
 msgid "OID out of range"
 msgstr "OID fuori dall'intervallo consentito"
 
-#: utils/adt/json.c:673 utils/adt/json.c:713 utils/adt/json.c:728
-#: utils/adt/json.c:739 utils/adt/json.c:749 utils/adt/json.c:783
-#: utils/adt/json.c:795 utils/adt/json.c:826 utils/adt/json.c:844
-#: utils/adt/json.c:856 utils/adt/json.c:868 utils/adt/json.c:1007
-#: utils/adt/json.c:1021 utils/adt/json.c:1032 utils/adt/json.c:1040
-#: utils/adt/json.c:1048 utils/adt/json.c:1056 utils/adt/json.c:1064
+#: utils/adt/json.c:695 utils/adt/json.c:735 utils/adt/json.c:750
+#: utils/adt/json.c:761 utils/adt/json.c:771 utils/adt/json.c:807
+#: utils/adt/json.c:819 utils/adt/json.c:850 utils/adt/json.c:868
+#: utils/adt/json.c:880 utils/adt/json.c:892 utils/adt/json.c:1031
+#: utils/adt/json.c:1045 utils/adt/json.c:1056 utils/adt/json.c:1064
 #: utils/adt/json.c:1072 utils/adt/json.c:1080 utils/adt/json.c:1088
-#: utils/adt/json.c:1118
+#: utils/adt/json.c:1096 utils/adt/json.c:1104 utils/adt/json.c:1112
+#: utils/adt/json.c:1142
 #, c-format
 msgid "invalid input syntax for type json"
 msgstr "sintassi di input per il tipo json non valida"
 
-#: utils/adt/json.c:674
+#: utils/adt/json.c:696
 #, c-format
 msgid "Character with value 0x%02x must be escaped."
 msgstr "Il carattere con valore 0x%02x deve essere sottoposto ad escape."
 
-#: utils/adt/json.c:714
+#: utils/adt/json.c:736
 #, c-format
 msgid "\"\\u\" must be followed by four hexadecimal digits."
 msgstr "\"\\u\" deve essere seguito da quattro cifre esadecimali."
 
-#: utils/adt/json.c:729
+#: utils/adt/json.c:751
 #, c-format
 msgid "Unicode high surrogate must not follow a high surrogate."
 msgstr "un carattere surrogato alto Unicode non può seguire un altro surrogato alto"
 
-#: utils/adt/json.c:740 utils/adt/json.c:750 utils/adt/json.c:796
-#: utils/adt/json.c:857 utils/adt/json.c:869
+#: utils/adt/json.c:762 utils/adt/json.c:772 utils/adt/json.c:820
+#: utils/adt/json.c:881 utils/adt/json.c:893
 #, c-format
 msgid "Unicode low surrogate must follow a high surrogate."
 msgstr "un carattere surrogato basso Unicode deve seguire un surrogato alto"
 
-#: utils/adt/json.c:784
+#: utils/adt/json.c:808
 #, c-format
 msgid "Unicode escape values cannot be used for code point values above 007F when the server encoding is not UTF8."
 msgstr "i codici escape Unicode non possono essere usati per caratteri con codice superiore ad 007F quando l'encoding del server non è UTF8"
 
-#: utils/adt/json.c:827 utils/adt/json.c:845
+#: utils/adt/json.c:851 utils/adt/json.c:869
 #, c-format
 msgid "Escape sequence \"\\%s\" is invalid."
 msgstr "La sequenza di escape \"\\%s\" non è valida."
 
-#: utils/adt/json.c:1008
+#: utils/adt/json.c:1032
 #, c-format
 msgid "The input string ended unexpectedly."
 msgstr "La stringa di input è terminata inaspettatamente."
 
-#: utils/adt/json.c:1022
+#: utils/adt/json.c:1046
 #, c-format
 msgid "Expected end of input, but found \"%s\"."
 msgstr "Era prevista la fine dell'input, trovato \"%s\" invece."
 
-#: utils/adt/json.c:1033
+#: utils/adt/json.c:1057
 #, c-format
 msgid "Expected JSON value, but found \"%s\"."
 msgstr "Era previsto un valore JSON, trovato \"%s\" invece."
 
-#: utils/adt/json.c:1041 utils/adt/json.c:1089
+#: utils/adt/json.c:1065 utils/adt/json.c:1113
 #, c-format
 msgid "Expected string, but found \"%s\"."
 msgstr "Era prevista una stringa, trovato \"%s\" invece."
 
-#: utils/adt/json.c:1049
+#: utils/adt/json.c:1073
 #, c-format
 msgid "Expected array element or \"]\", but found \"%s\"."
 msgstr "Era previsto un elemento di array oppure \"]\", trovato \"%s\" invece."
 
-#: utils/adt/json.c:1057
+#: utils/adt/json.c:1081
 #, c-format
 msgid "Expected \",\" or \"]\", but found \"%s\"."
 msgstr "Era previsto \",\" oppure \"]\", trovato \"%s\" invece."
 
-#: utils/adt/json.c:1065
+#: utils/adt/json.c:1089
 #, c-format
 msgid "Expected string or \"}\", but found \"%s\"."
 msgstr "Era prevista una stringa oppure \"}\", trovato \"%s\" invece."
 
-#: utils/adt/json.c:1073
+#: utils/adt/json.c:1097
 #, c-format
 msgid "Expected \":\", but found \"%s\"."
 msgstr "Era previsto \":\", trovato \"%s\" invece."
 
-#: utils/adt/json.c:1081
+#: utils/adt/json.c:1105
 #, c-format
 msgid "Expected \",\" or \"}\", but found \"%s\"."
 msgstr "Era previsto \",\" oppure \"}\", trovato \"%s\" invece."
 
-#: utils/adt/json.c:1119
+#: utils/adt/json.c:1143
 #, c-format
 msgid "Token \"%s\" is invalid."
 msgstr "Il token \"%s\" non è valido."
 
-#: utils/adt/json.c:1191
+#: utils/adt/json.c:1215
 #, c-format
 msgid "JSON data, line %d: %s%s%s"
 msgstr "dati JSON, riga %d: %s%s%s"
 
-#: utils/adt/jsonfuncs.c:323
+#: utils/adt/json.c:1357
 #, c-format
-msgid "cannot call json_object_keys on an array"
-msgstr "non è possibile eseguire json_object_keys su un array"
+msgid "key value must be scalar, not array, composite, or json"
+msgstr "la chiave deve essere uno scalare, non array, composito né json"
 
-#: utils/adt/jsonfuncs.c:335
+#: utils/adt/json.c:1410
 #, c-format
-msgid "cannot call json_object_keys on a scalar"
-msgstr "non è possibile eseguire json_object_keys su uno scalare"
+msgid "JSON does not support infinite date values."
+msgstr "JSON non supporta il valore infinito come data."
 
-#: utils/adt/jsonfuncs.c:440
+#: utils/adt/json.c:1435 utils/adt/json.c:1462
 #, c-format
-msgid "cannot call function with null path elements"
-msgstr "non è possibile eseguire la funzione con elementi di percorso null"
+msgid "JSON does not support infinite timestamp values."
+msgstr "JSON non supporta il timestamp infinito."
 
-#: utils/adt/jsonfuncs.c:457
+#: utils/adt/json.c:1492
 #, c-format
-msgid "cannot call function with empty path elements"
-msgstr "non è possibile eseguire la funzione con elementi di percorso vuoti"
+msgid "key value must not be empty"
+msgstr "il valore della chiave non può essere vuoto"
 
-#: utils/adt/jsonfuncs.c:569
+#: utils/adt/json.c:1931 utils/adt/json.c:1949 utils/adt/json.c:2024
+#: utils/adt/json.c:2045 utils/adt/json.c:2104
 #, c-format
-msgid "cannot extract array element from a non-array"
-msgstr "non è possibile estrarre elementi da un oggetto che non è un array"
+msgid "could not determine data type for argument %d"
+msgstr "impossibile determinare il tipo di dato per l'argomento %d"
 
-#: utils/adt/jsonfuncs.c:684
+#: utils/adt/json.c:1936
 #, c-format
-msgid "cannot extract field from a non-object"
-msgstr "non è possibile estrarre campi da qualcosa che non è un oggetto"
+msgid "field name must not be null"
+msgstr "il nome del campo non può essere nullo"
 
-#: utils/adt/jsonfuncs.c:800
+#: utils/adt/json.c:1999
 #, c-format
-msgid "cannot extract element from a scalar"
-msgstr "non è possibile estrarre elementi da uno scalare"
+msgid "argument list must have even number of elements"
+msgstr "la lista di argomenti deve avere un numero pari di elementi"
 
-#: utils/adt/jsonfuncs.c:856
+#: utils/adt/json.c:2000
 #, c-format
-msgid "cannot get array length of a non-array"
-msgstr "non è possibile ottenere la lunghezza di un oggetto che non è un array"
+msgid "The arguments of json_build_object() must consist of alternating keys and values."
+msgstr "Gli argomenti di json_build_object() devono consistere in una serie alternata di chiavi e valori."
 
-#: utils/adt/jsonfuncs.c:868
+#: utils/adt/json.c:2030
 #, c-format
-msgid "cannot get array length of a scalar"
-msgstr "non è possibile ottenere la lunghezza di uno scalare"
+msgid "argument %d cannot be null"
+msgstr "l'argomento %d non può essere nullo"
 
-#: utils/adt/jsonfuncs.c:1046
+#: utils/adt/json.c:2031
 #, c-format
-msgid "cannot deconstruct an array as an object"
-msgstr "non è possibile decostruire un array come un oggetto"
+msgid "Object keys should be text."
+msgstr "Le chiavi degli oggetti devono essere testo."
 
-#: utils/adt/jsonfuncs.c:1058
+#: utils/adt/json.c:2166
 #, c-format
-msgid "cannot deconstruct a scalar"
-msgstr "non è possibile decostruire uno scalare"
+msgid "array must have two columns"
+msgstr "l'array deve avere due colonne"
 
-#: utils/adt/jsonfuncs.c:1189
+#: utils/adt/json.c:2190 utils/adt/json.c:2274
 #, c-format
-msgid "cannot call json_array_elements on a non-array"
-msgstr "non è possibile eseguire json_array_elements su un oggetto che non è un array"
+msgid "null value not allowed for object key"
+msgstr "valori null non ammessi per le chiavi di oggetti"
 
-#: utils/adt/jsonfuncs.c:1201
+#: utils/adt/json.c:2263
 #, c-format
-msgid "cannot call json_array_elements on a scalar"
-msgstr "non è possibile eseguire json_array_elements su uno scalare"
+msgid "mismatched array dimensions"
+msgstr "le dimensioni degli array non combaciano"
 
-#: utils/adt/jsonfuncs.c:1246
+#: utils/adt/jsonb.c:202
 #, c-format
-msgid "first argument of json_populate_record must be a row type"
-msgstr "il primo argomento di json_populate_record deve essere un tipo riga"
+msgid "string too long to represent as jsonb string"
+msgstr "la stringa è troppo lunga per essere rappresentata come stringa jsonb"
 
-#: utils/adt/jsonfuncs.c:1476
+#: utils/adt/jsonb.c:203
 #, c-format
-msgid "cannot call %s on a nested object"
-msgstr "non è possibile eseguire %s su un oggetto annidato"
+msgid "Due to an implementation restriction, jsonb strings cannot exceed %d bytes."
+msgstr "A causa di una restrizione nell'implementazione le stringhe jsonb non possono superare i %d byte."
 
-#: utils/adt/jsonfuncs.c:1537
+#: utils/adt/jsonb_util.c:550
 #, c-format
-msgid "cannot call %s on an array"
-msgstr "non è possibile eseguire %s su un array"
+msgid "number of jsonb object pairs exceeds the maximum allowed (%zu)"
+msgstr "il numero di coppie dell'oggetto jsonb supera il massimo consentito (%zu)"
+
+#: utils/adt/jsonb_util.c:591
+#, c-format
+msgid "number of jsonb array elements exceeds the maximum allowed (%zu)"
+msgstr "il numero di elementi dell'array jsonb supera il massimo consentito (%zu)"
+
+#: utils/adt/jsonb_util.c:1378 utils/adt/jsonb_util.c:1430
+#: utils/adt/jsonb_util.c:1445
+#, c-format
+msgid "total size of jsonb array elements exceeds the maximum of %u bytes"
+msgstr "il numero di coppie dell'oggetto jsonb supera il massimo di %u byte"
 
-#: utils/adt/jsonfuncs.c:1548
+#: utils/adt/jsonfuncs.c:263 utils/adt/jsonfuncs.c:428
+#: utils/adt/jsonfuncs.c:1968 utils/adt/jsonfuncs.c:2405
+#: utils/adt/jsonfuncs.c:2911
 #, c-format
 msgid "cannot call %s on a scalar"
 msgstr "non è possibile eseguire %s su uno scalare"
 
-#: utils/adt/jsonfuncs.c:1588
+#: utils/adt/jsonfuncs.c:268 utils/adt/jsonfuncs.c:415
+#: utils/adt/jsonfuncs.c:2394
+#, c-format
+msgid "cannot call %s on an array"
+msgstr "non è possibile eseguire %s su un array"
+
+#: utils/adt/jsonfuncs.c:1276 utils/adt/jsonfuncs.c:1311
+#, c-format
+msgid "cannot get array length of a scalar"
+msgstr "non è possibile ottenere la lunghezza di uno scalare"
+
+#: utils/adt/jsonfuncs.c:1280 utils/adt/jsonfuncs.c:1299
+#, c-format
+msgid "cannot get array length of a non-array"
+msgstr "non è possibile ottenere la lunghezza di un oggetto che non è un array"
+
+#: utils/adt/jsonfuncs.c:1376
+#, c-format
+msgid "cannot call %s on a non-object"
+msgstr "non è possibile eseguire %s su un argomento che non è un oggetto"
+
+#: utils/adt/jsonfuncs.c:1394 utils/adt/jsonfuncs.c:2081
+#: utils/adt/jsonfuncs.c:2614
+#, c-format
+msgid "function returning record called in context that cannot accept type record"
+msgstr "funzione che restituisce record eseguita in un contesto che non può accettare il tipo record"
+
+#: utils/adt/jsonfuncs.c:1637
+#, c-format
+msgid "cannot deconstruct an array as an object"
+msgstr "non è possibile decostruire un array come un oggetto"
+
+#: utils/adt/jsonfuncs.c:1649
+#, c-format
+msgid "cannot deconstruct a scalar"
+msgstr "non è possibile decostruire uno scalare"
+
+#: utils/adt/jsonfuncs.c:1695
 #, c-format
-msgid "first argument of json_populate_recordset must be a row type"
-msgstr "il primo argomento di json_populate_recordset deve essere un tipo riga"
+msgid "cannot extract elements from a scalar"
+msgstr "non è possibile estrarre elementi da uno scalare"
 
-#: utils/adt/jsonfuncs.c:1704
+#: utils/adt/jsonfuncs.c:1699
 #, c-format
-msgid "cannot call json_populate_recordset on an object"
-msgstr "non è possibile eseguire json_populate_recordset su un oggetto"
+msgid "cannot extract elements from an object"
+msgstr "non è possibile estrarre elementi da un oggetto"
 
-#: utils/adt/jsonfuncs.c:1708
+#: utils/adt/jsonfuncs.c:1955 utils/adt/jsonfuncs.c:2710
 #, c-format
-msgid "cannot call json_populate_recordset with nested objects"
-msgstr "non è possibile eseguire json_populate_recordset con oggetti annidati"
+msgid "cannot call %s on a non-array"
+msgstr "non è possibile eseguire %s su un argomento che non è un array"
 
-#: utils/adt/jsonfuncs.c:1843
+#: utils/adt/jsonfuncs.c:2042 utils/adt/jsonfuncs.c:2590
 #, c-format
-msgid "must call json_populate_recordset on an array of objects"
-msgstr "json_populate_recordset deve essere invocato su un array di oggetti"
+msgid "first argument of %s must be a row type"
+msgstr "il primo elemento di %s deve essere di tipo riga"
 
-#: utils/adt/jsonfuncs.c:1854
+#: utils/adt/jsonfuncs.c:2083
 #, c-format
-msgid "cannot call json_populate_recordset with nested arrays"
-msgstr "non è possibile eseguire json_populate_recordset con array annidati"
+msgid "Try calling the function in the FROM clause using a column definition list."
+msgstr "Prova ad eseguire la funzione nella clausola FROM usando una lista di definizioni di colonne."
 
-#: utils/adt/jsonfuncs.c:1865
+#: utils/adt/jsonfuncs.c:2726 utils/adt/jsonfuncs.c:2893
 #, c-format
-msgid "cannot call json_populate_recordset on a scalar"
-msgstr "non è possibile eseguire json_populate_recordset su uno scalare"
+msgid "argument of %s must be an array of objects"
+msgstr "l'argomento di %s deve essere un array di oggetti"
 
-#: utils/adt/jsonfuncs.c:1885
+#: utils/adt/jsonfuncs.c:2750
 #, c-format
-msgid "cannot call json_populate_recordset on a nested object"
-msgstr "non è possibile eseguire json_populate_recordset su un oggetto annidato"
+msgid "cannot call %s on an object"
+msgstr "non è possibile eseguire %s su un oggetto"
 
-#: utils/adt/like.c:211 utils/adt/selfuncs.c:5199
+#: utils/adt/like.c:211 utils/adt/selfuncs.c:5220
 #, c-format
 msgid "could not determine which collation to use for ILIKE"
 msgstr "non è stato possibile determinare quale ordinamento usare per ILIKE"
@@ -15659,12 +16734,12 @@ msgstr "non è stato possibile determinare quale ordinamento usare per ILIKE"
 msgid "LIKE pattern must not end with escape character"
 msgstr "i pattern per LIKE non possono terminare con un carattere di escape"
 
-#: utils/adt/like_match.c:289 utils/adt/regexp.c:683
+#: utils/adt/like_match.c:289 utils/adt/regexp.c:694
 #, c-format
 msgid "invalid escape string"
 msgstr "la stringa di escape non è valida"
 
-#: utils/adt/like_match.c:290 utils/adt/regexp.c:684
+#: utils/adt/like_match.c:290 utils/adt/regexp.c:695
 #, c-format
 msgid "Escape string must be empty or one character."
 msgstr "La stringa di escape deve essere vuota o contenere un solo carattere."
@@ -15714,193 +16789,193 @@ msgstr "solo un superutente può eseguire la rotazione dei file di log"
 msgid "rotation not possible because log collection not active"
 msgstr "non è stato possibile eseguire la rotazione perché la raccolta dei log non è attiva"
 
-#: utils/adt/misc.c:254
+#: utils/adt/misc.c:249
 #, c-format
 msgid "global tablespace never has databases"
 msgstr "il tablespace globale non contiene mai dei database"
 
-#: utils/adt/misc.c:275
+#: utils/adt/misc.c:270
 #, c-format
 msgid "%u is not a tablespace OID"
 msgstr "%u non è l'OID di un tablespace"
 
-#: utils/adt/misc.c:472
+#: utils/adt/misc.c:465
 msgid "unreserved"
 msgstr "non riservato"
 
-#: utils/adt/misc.c:476
+#: utils/adt/misc.c:469
 msgid "unreserved (cannot be function or type name)"
 msgstr "non riservato (non può essere una funzione o il nome di un tipo)"
 
-#: utils/adt/misc.c:480
+#: utils/adt/misc.c:473
 msgid "reserved (can be function or type name)"
 msgstr "riservato (può essere una funzione o il nome di un tipo)"
 
-#: utils/adt/misc.c:484
+#: utils/adt/misc.c:477
 msgid "reserved"
 msgstr "riservato"
 
-#: utils/adt/nabstime.c:161
+#: utils/adt/nabstime.c:136
 #, c-format
 msgid "invalid time zone name: \"%s\""
 msgstr "il nome del fuso orario \"%s\" non è valido"
 
-#: utils/adt/nabstime.c:507 utils/adt/nabstime.c:580
+#: utils/adt/nabstime.c:481 utils/adt/nabstime.c:554
 #, c-format
 msgid "cannot convert abstime \"invalid\" to timestamp"
 msgstr "non è possibile convertire il valore abstime \"invalid\" in timestamp"
 
-#: utils/adt/nabstime.c:807
+#: utils/adt/nabstime.c:781
 #, c-format
 msgid "invalid status in external \"tinterval\" value"
 msgstr "lo stato nel valore del \"tinterval\" esterno non è valido"
 
-#: utils/adt/nabstime.c:881
+#: utils/adt/nabstime.c:855
 #, c-format
 msgid "cannot convert reltime \"invalid\" to interval"
 msgstr "non è possibile convertire il valore reltime \"invalid\" in interval"
 
-#: utils/adt/nabstime.c:1576
+#: utils/adt/nabstime.c:1550
 #, c-format
 msgid "invalid input syntax for type tinterval: \"%s\""
 msgstr "sintassi di input non valida per il tipo tinterval: \"%s\""
 
-#: utils/adt/network.c:118
+#: utils/adt/network.c:69
 #, c-format
 msgid "invalid cidr value: \"%s\""
 msgstr "il valore \"%s\" non è valido per cidr"
 
-#: utils/adt/network.c:119 utils/adt/network.c:249
+#: utils/adt/network.c:70 utils/adt/network.c:200
 #, c-format
 msgid "Value has bits set to right of mask."
 msgstr "Il valore ha dei bit settati a destra della maschera."
 
-#: utils/adt/network.c:160 utils/adt/network.c:614 utils/adt/network.c:639
-#: utils/adt/network.c:664
+#: utils/adt/network.c:111 utils/adt/network.c:580 utils/adt/network.c:605
+#: utils/adt/network.c:630
 #, c-format
 msgid "could not format inet value: %m"
 msgstr "formattazione del valore inet fallita: %m"
 
 #. translator: %s is inet or cidr
-#: utils/adt/network.c:217
+#: utils/adt/network.c:168
 #, c-format
 msgid "invalid address family in external \"%s\" value"
 msgstr "la famiglia di indirizzi nel valore \"%s\" esterno non è valida"
 
 #. translator: %s is inet or cidr
-#: utils/adt/network.c:224
+#: utils/adt/network.c:175
 #, c-format
 msgid "invalid bits in external \"%s\" value"
 msgstr "bit non validi nel valore esterno \"%s\""
 
 #. translator: %s is inet or cidr
-#: utils/adt/network.c:233
+#: utils/adt/network.c:184
 #, c-format
 msgid "invalid length in external \"%s\" value"
 msgstr "lunghezza non valida nel valore esterno \"%s\""
 
-#: utils/adt/network.c:248
+#: utils/adt/network.c:199
 #, c-format
 msgid "invalid external \"cidr\" value"
 msgstr "valore \"cidr\" esterno non valido"
 
-#: utils/adt/network.c:370 utils/adt/network.c:397
+#: utils/adt/network.c:321 utils/adt/network.c:348
 #, c-format
 msgid "invalid mask length: %d"
 msgstr "la lunghezza della maschera non è valida: %d"
 
-#: utils/adt/network.c:682
+#: utils/adt/network.c:648
 #, c-format
 msgid "could not format cidr value: %m"
 msgstr "formattazione del valore cidr fallita: %m"
 
-#: utils/adt/network.c:1255
+#: utils/adt/network.c:1264
 #, c-format
 msgid "cannot AND inet values of different sizes"
 msgstr "non è possibile eseguire l'AND fra valori di tipo inet di dimensione diversa"
 
-#: utils/adt/network.c:1287
+#: utils/adt/network.c:1296
 #, c-format
 msgid "cannot OR inet values of different sizes"
 msgstr "non è possibile eseguire l'OR fra valori di tipo inet di dimensione diversa"
 
-#: utils/adt/network.c:1348 utils/adt/network.c:1424
+#: utils/adt/network.c:1357 utils/adt/network.c:1433
 #, c-format
 msgid "result is out of range"
 msgstr "il risultato è fuori dall'intervallo consentito"
 
-#: utils/adt/network.c:1389
+#: utils/adt/network.c:1398
 #, c-format
 msgid "cannot subtract inet values of different sizes"
 msgstr "non è possibile sottrarre valori di tipo inet di dimensione diversa"
 
-#: utils/adt/numeric.c:485 utils/adt/numeric.c:512 utils/adt/numeric.c:3253
-#: utils/adt/numeric.c:3276 utils/adt/numeric.c:3300 utils/adt/numeric.c:3307
+#: utils/adt/numeric.c:485 utils/adt/numeric.c:512 utils/adt/numeric.c:3681
+#: utils/adt/numeric.c:3704 utils/adt/numeric.c:3728 utils/adt/numeric.c:3735
 #, c-format
 msgid "invalid input syntax for type numeric: \"%s\""
 msgstr "la sintassi di input non è valida per il tipo numeric: \"%s\""
 
-#: utils/adt/numeric.c:655
+#: utils/adt/numeric.c:694
 #, c-format
 msgid "invalid length in external \"numeric\" value"
 msgstr "la lunghezza nel valore \"numeric\" esterno non è valida"
 
-#: utils/adt/numeric.c:666
+#: utils/adt/numeric.c:705
 #, c-format
 msgid "invalid sign in external \"numeric\" value"
 msgstr "il segno nel valore \"numeric\" esterno non è valido"
 
-#: utils/adt/numeric.c:676
+#: utils/adt/numeric.c:715
 #, c-format
 msgid "invalid digit in external \"numeric\" value"
 msgstr "una delle cifre nel valore \"numeric\" esterno non è valida"
 
-#: utils/adt/numeric.c:859 utils/adt/numeric.c:873
+#: utils/adt/numeric.c:898 utils/adt/numeric.c:912
 #, c-format
 msgid "NUMERIC precision %d must be between 1 and %d"
 msgstr "la precisione di NUMERIC (%d) deve essere compresa fra 1 e %d"
 
-#: utils/adt/numeric.c:864
+#: utils/adt/numeric.c:903
 #, c-format
 msgid "NUMERIC scale %d must be between 0 and precision %d"
 msgstr "il numero di cifre decimali di NUMERIC (%d) deve essere compreso fra 0 e la precisione %d"
 
-#: utils/adt/numeric.c:882
+#: utils/adt/numeric.c:921
 #, c-format
 msgid "invalid NUMERIC type modifier"
 msgstr "modificatore del tipo NUMERIC non valido"
 
-#: utils/adt/numeric.c:1889 utils/adt/numeric.c:3750
+#: utils/adt/numeric.c:1928 utils/adt/numeric.c:4178
 #, c-format
 msgid "value overflows numeric format"
 msgstr "il valore causa un overflow nel formato numeric"
 
-#: utils/adt/numeric.c:2220
+#: utils/adt/numeric.c:2259
 #, c-format
 msgid "cannot convert NaN to integer"
 msgstr "non è possibile convertire NaN in un integer"
 
-#: utils/adt/numeric.c:2286
+#: utils/adt/numeric.c:2325
 #, c-format
 msgid "cannot convert NaN to bigint"
 msgstr "non è possibile convertire NaN in un bigint"
 
-#: utils/adt/numeric.c:2331
+#: utils/adt/numeric.c:2370
 #, c-format
 msgid "cannot convert NaN to smallint"
 msgstr "non è possibile convertire NaN in uno smallint"
 
-#: utils/adt/numeric.c:3820
+#: utils/adt/numeric.c:4248
 #, c-format
 msgid "numeric field overflow"
 msgstr "il campo numeric causa un overflow"
 
-#: utils/adt/numeric.c:3821
+#: utils/adt/numeric.c:4249
 #, c-format
 msgid "A field with precision %d, scale %d must round to an absolute value less than %s%d."
 msgstr "Un campo con precisione %d e %d cifre decimali deve arrotondarsi ad un valore assoluto inferiore a %s%d."
 
-#: utils/adt/numeric.c:5276
+#: utils/adt/numeric.c:5704
 #, c-format
 msgid "argument for function \"exp\" too big"
 msgstr "il valore dell'argomento per la funzione \"exp\" è troppo grande"
@@ -15940,46 +17015,62 @@ msgstr "i dati nell'oidvector non sono validi"
 msgid "requested character too large"
 msgstr "il carattere richiesto è troppo grande"
 
-#: utils/adt/oracle_compat.c:941 utils/adt/oracle_compat.c:995
+#: utils/adt/oracle_compat.c:945 utils/adt/oracle_compat.c:1007
 #, c-format
 msgid "requested character too large for encoding: %d"
 msgstr "il carattere richiesto è troppo grande per la codifica: %d"
 
-#: utils/adt/oracle_compat.c:988
+#: utils/adt/oracle_compat.c:986
+#, c-format
+msgid "requested character not valid for encoding: %d"
+msgstr "il carattere richiesto non è valido per la codifica: %d"
+
+#: utils/adt/oracle_compat.c:1000
 #, c-format
 msgid "null character not permitted"
 msgstr "non sono consentiti caratteri nulli"
 
-#: utils/adt/pg_locale.c:1026
+#: utils/adt/orderedsetaggs.c:423 utils/adt/orderedsetaggs.c:528
+#: utils/adt/orderedsetaggs.c:667
+#, c-format
+msgid "percentile value %g is not between 0 and 1"
+msgstr "il valore percentile %g non è tra 0 e 1"
+
+#: utils/adt/pg_locale.c:1039
 #, c-format
 msgid "could not create locale \"%s\": %m"
 msgstr "creazione del locale \"%s\" fallita: %m"
 
-#: utils/adt/pg_locale.c:1029
+#: utils/adt/pg_locale.c:1042
 #, c-format
 msgid "The operating system could not find any locale data for the locale name \"%s\"."
 msgstr "Il sistema operativo non ha trovato dati di locale per il locale di nome \"%s\"."
 
-#: utils/adt/pg_locale.c:1116
+#: utils/adt/pg_locale.c:1129
 #, c-format
 msgid "collations with different collate and ctype values are not supported on this platform"
 msgstr "le collazioni con tipi diversi di ordinamento e ctype non sono supportati su questa piattaforma"
 
-#: utils/adt/pg_locale.c:1131
+#: utils/adt/pg_locale.c:1144
 #, c-format
 msgid "nondefault collations are not supported on this platform"
 msgstr "le collazioni non predefinite non sono supportate su questa piattaforma"
 
-#: utils/adt/pg_locale.c:1302
+#: utils/adt/pg_locale.c:1315
 #, c-format
 msgid "invalid multibyte character for locale"
 msgstr "carattere multibyte non valido per il locale"
 
-#: utils/adt/pg_locale.c:1303
+#: utils/adt/pg_locale.c:1316
 #, c-format
 msgid "The server's LC_CTYPE locale is probably incompatible with the database encoding."
 msgstr "Il locale LC_CTYPE del server probabilmente non è compatibile con la codifica del database."
 
+#: utils/adt/pg_lsn.c:44 utils/adt/pg_lsn.c:49
+#, c-format
+msgid "invalid input syntax for type pg_lsn: \"%s\""
+msgstr "sintassi di input non valida per il tipo pg_lsn: \"%s\""
+
 #: utils/adt/pseudotypes.c:95
 #, c-format
 msgid "cannot accept a value of type any"
@@ -16166,22 +17257,22 @@ msgid "Junk after right parenthesis or bracket."
 msgstr "Caratteri spuri dopo la parentesi chiusa."
 
 #: utils/adt/rangetypes.c:2083 utils/adt/rangetypes.c:2091
-#: utils/adt/rowtypes.c:206 utils/adt/rowtypes.c:214
+#: utils/adt/rowtypes.c:208 utils/adt/rowtypes.c:216
 #, c-format
 msgid "Unexpected end of input."
 msgstr "L'input è terminato in modo inatteso."
 
-#: utils/adt/regexp.c:274 utils/adt/regexp.c:1222 utils/adt/varlena.c:3041
+#: utils/adt/regexp.c:285 utils/adt/regexp.c:1234 utils/adt/varlena.c:3042
 #, c-format
 msgid "regular expression failed: %s"
 msgstr "l'espressione regolare %s è fallita"
 
-#: utils/adt/regexp.c:411
+#: utils/adt/regexp.c:422
 #, c-format
 msgid "invalid regexp option: \"%c\""
 msgstr "l'opzione regexp \"%c\" non è valida"
 
-#: utils/adt/regexp.c:883
+#: utils/adt/regexp.c:894
 #, c-format
 msgid "regexp_split does not support the global option"
 msgstr "l'opzione global (g) non è supportata per regexp_split"
@@ -16191,54 +17282,54 @@ msgstr "l'opzione global (g) non è supportata per regexp_split"
 msgid "more than one function named \"%s\""
 msgstr "più di una funzione si chiama \"%s\""
 
-#: utils/adt/regproc.c:494 utils/adt/regproc.c:514
+#: utils/adt/regproc.c:551 utils/adt/regproc.c:571
 #, c-format
 msgid "more than one operator named %s"
 msgstr "più di un operatore si chiama %s"
 
-#: utils/adt/regproc.c:656 gram.y:6628
+#: utils/adt/regproc.c:738 utils/adt/regproc.c:779 gram.y:6837
 #, c-format
 msgid "missing argument"
 msgstr "argomento mancante"
 
-#: utils/adt/regproc.c:657 gram.y:6629
+#: utils/adt/regproc.c:739 utils/adt/regproc.c:780 gram.y:6838
 #, c-format
 msgid "Use NONE to denote the missing argument of a unary operator."
 msgstr "Usa NONE per indicare l'argomento mancante in un operatore unario."
 
-#: utils/adt/regproc.c:661 utils/adt/regproc.c:1531 utils/adt/ruleutils.c:7389
-#: utils/adt/ruleutils.c:7445 utils/adt/ruleutils.c:7484
+#: utils/adt/regproc.c:743 utils/adt/regproc.c:784 utils/adt/regproc.c:1702
+#: utils/adt/ruleutils.c:7626 utils/adt/ruleutils.c:7749
 #, c-format
 msgid "too many arguments"
 msgstr "troppi argomenti"
 
-#: utils/adt/regproc.c:662
+#: utils/adt/regproc.c:744 utils/adt/regproc.c:785
 #, c-format
 msgid "Provide two argument types for operator."
 msgstr "Fornisci due tipi di argomento per l'operatore."
 
-#: utils/adt/regproc.c:1366 utils/adt/regproc.c:1371 utils/adt/varlena.c:2313
+#: utils/adt/regproc.c:1537 utils/adt/regproc.c:1542 utils/adt/varlena.c:2313
 #: utils/adt/varlena.c:2318
 #, c-format
 msgid "invalid name syntax"
 msgstr "la sintassi per il nome non è valida"
 
-#: utils/adt/regproc.c:1429
+#: utils/adt/regproc.c:1600
 #, c-format
 msgid "expected a left parenthesis"
 msgstr "era attesa un parentesi tonda aperta"
 
-#: utils/adt/regproc.c:1445
+#: utils/adt/regproc.c:1616
 #, c-format
 msgid "expected a right parenthesis"
 msgstr "era attesa un parentesi tonda chiusa"
 
-#: utils/adt/regproc.c:1464
+#: utils/adt/regproc.c:1635
 #, c-format
 msgid "expected a type name"
 msgstr "era atteso il nome di un tipo"
 
-#: utils/adt/regproc.c:1496
+#: utils/adt/regproc.c:1667
 #, c-format
 msgid "improper type name"
 msgstr "il nome del tipo non è corretto"
@@ -16249,13 +17340,13 @@ msgstr "il nome del tipo non è corretto"
 #: utils/adt/ri_triggers.c:1511 utils/adt/ri_triggers.c:1687
 #: utils/adt/ri_triggers.c:1867 utils/adt/ri_triggers.c:2058
 #: utils/adt/ri_triggers.c:2116 utils/adt/ri_triggers.c:2221
-#: utils/adt/ri_triggers.c:2386 gram.y:3093
+#: utils/adt/ri_triggers.c:2386 gram.y:3239
 #, c-format
 msgid "MATCH PARTIAL not yet implemented"
 msgstr "il MATCH PARTIAL non è stato ancora implementato"
 
 #: utils/adt/ri_triggers.c:339 utils/adt/ri_triggers.c:2474
-#: utils/adt/ri_triggers.c:3226
+#: utils/adt/ri_triggers.c:3227
 #, c-format
 msgid "insert or update on table \"%s\" violates foreign key constraint \"%s\""
 msgstr "la INSERT o l'UPDATE sulla tabella \"%s\" viola il vincolo di chiave esterna \"%s\""
@@ -16290,207 +17381,236 @@ msgstr "non ci sono elementi pg_constraint per il trigger \"%s\" sulla tabella \
 msgid "Remove this referential integrity trigger and its mates, then do ALTER TABLE ADD CONSTRAINT."
 msgstr "Rimuovi questo trigger di integrità referenziale e relativi elementi collegati, poi esegui ALTER TABLE ADD CONSTRAINT."
 
-#: utils/adt/ri_triggers.c:3176
+#: utils/adt/ri_triggers.c:3177
 #, c-format
 msgid "referential integrity query on \"%s\" from constraint \"%s\" on \"%s\" gave unexpected result"
 msgstr "la query di integrità referenziale su \"%s\" dal vincolo \"%s\" su \"%s\" ha restituito un risultato inatteso"
 
-#: utils/adt/ri_triggers.c:3180
+#: utils/adt/ri_triggers.c:3181
 #, c-format
 msgid "This is most likely due to a rule having rewritten the query."
 msgstr "Ciò è probabilmente dovuto ad una RULE che ha riscritto la query."
 
-#: utils/adt/ri_triggers.c:3229
+#: utils/adt/ri_triggers.c:3230
 #, c-format
 msgid "Key (%s)=(%s) is not present in table \"%s\"."
 msgstr "La chiave (%s)=(%s) non è presente nella tabella \"%s\"."
 
-#: utils/adt/ri_triggers.c:3236
+#: utils/adt/ri_triggers.c:3237
 #, c-format
 msgid "update or delete on table \"%s\" violates foreign key constraint \"%s\" on table \"%s\""
 msgstr "l'istruzione UPDATE o DELETE sulla tabella \"%s\" viola il vincolo di chiave esterna \"%s\" sulla tabella \"%s\""
 
-#: utils/adt/ri_triggers.c:3240
+#: utils/adt/ri_triggers.c:3241
 #, c-format
 msgid "Key (%s)=(%s) is still referenced from table \"%s\"."
 msgstr "La chiave (%s)=(%s) è ancora referenziata dalla tabella \"%s\"."
 
-#: utils/adt/rowtypes.c:100 utils/adt/rowtypes.c:475
+#: utils/adt/rowtypes.c:102 utils/adt/rowtypes.c:477
 #, c-format
 msgid "input of anonymous composite types is not implemented"
 msgstr "l'input di un tipo composito anonimo non è implementato"
 
-#: utils/adt/rowtypes.c:153 utils/adt/rowtypes.c:181 utils/adt/rowtypes.c:204
-#: utils/adt/rowtypes.c:212 utils/adt/rowtypes.c:264 utils/adt/rowtypes.c:272
+#: utils/adt/rowtypes.c:155 utils/adt/rowtypes.c:183 utils/adt/rowtypes.c:206
+#: utils/adt/rowtypes.c:214 utils/adt/rowtypes.c:266 utils/adt/rowtypes.c:274
 #, c-format
 msgid "malformed record literal: \"%s\""
 msgstr "letterale record non corretto: \"%s\""
 
-#: utils/adt/rowtypes.c:154
+#: utils/adt/rowtypes.c:156
 #, c-format
 msgid "Missing left parenthesis."
 msgstr "Manca la parentesi tonda aperta."
 
-#: utils/adt/rowtypes.c:182
+#: utils/adt/rowtypes.c:184
 #, c-format
 msgid "Too few columns."
 msgstr "Il numero di colonne è insufficiente."
 
-#: utils/adt/rowtypes.c:265
+#: utils/adt/rowtypes.c:267
 #, c-format
 msgid "Too many columns."
 msgstr "Troppe colonne."
 
-#: utils/adt/rowtypes.c:273
+#: utils/adt/rowtypes.c:275
 #, c-format
 msgid "Junk after right parenthesis."
 msgstr "Sono presenti caratteri spuri dopo la parentesi chiusa."
 
-#: utils/adt/rowtypes.c:524
+#: utils/adt/rowtypes.c:526
 #, c-format
 msgid "wrong number of columns: %d, expected %d"
 msgstr "il numero di colonne non è corretto, %d invece di %d"
 
-#: utils/adt/rowtypes.c:551
+#: utils/adt/rowtypes.c:553
 #, c-format
 msgid "wrong data type: %u, expected %u"
 msgstr "il tipo di dati non è corretto, %u invece di %u"
 
-#: utils/adt/rowtypes.c:612
+#: utils/adt/rowtypes.c:614
 #, c-format
 msgid "improper binary format in record column %d"
 msgstr "il formato binario nella colonna %d del record non è corretto"
 
-#: utils/adt/rowtypes.c:896 utils/adt/rowtypes.c:1131
+#: utils/adt/rowtypes.c:896 utils/adt/rowtypes.c:1134
+#: utils/adt/rowtypes.c:1388 utils/adt/rowtypes.c:1665
 #, c-format
 msgid "cannot compare dissimilar column types %s and %s at record column %d"
 msgstr "non è possibile confrontare i tipi di colonne dissimili %s e %s alla colonna %d del record"
 
-#: utils/adt/rowtypes.c:982 utils/adt/rowtypes.c:1202
+#: utils/adt/rowtypes.c:985 utils/adt/rowtypes.c:1205
+#: utils/adt/rowtypes.c:1521 utils/adt/rowtypes.c:1761
 #, c-format
 msgid "cannot compare record types with different numbers of columns"
 msgstr "non è possibile confrontare tipi di record con diverso numero di colonne"
 
-#: utils/adt/ruleutils.c:3818
+#: utils/adt/ruleutils.c:3999
 #, c-format
 msgid "rule \"%s\" has unsupported event type %d"
 msgstr "la regola \"%s\" ha un tipo di evento non supportato %d"
 
-#: utils/adt/selfuncs.c:5184
+#: utils/adt/selfuncs.c:5205
 #, c-format
 msgid "case insensitive matching not supported on type bytea"
 msgstr "il confronto case insensitive sul tipo bytea non è supportato"
 
-#: utils/adt/selfuncs.c:5287
+#: utils/adt/selfuncs.c:5308
 #, c-format
 msgid "regular-expression matching not supported on type bytea"
 msgstr "il confronto con espressioni regolari sul tipo bytea non è supportato"
 
-#: utils/adt/tid.c:70 utils/adt/tid.c:78 utils/adt/tid.c:86
+#: utils/adt/tid.c:71 utils/adt/tid.c:79 utils/adt/tid.c:87
 #, c-format
 msgid "invalid input syntax for type tid: \"%s\""
 msgstr "sintassi di input non valida per il tipo tid: \"%s\""
 
-#: utils/adt/timestamp.c:98
+#: utils/adt/timestamp.c:107
 #, c-format
 msgid "TIMESTAMP(%d)%s precision must not be negative"
 msgstr "la precisione di TIMESTAMP(%d)%s non può essere negativa"
 
-#: utils/adt/timestamp.c:104
+#: utils/adt/timestamp.c:113
 #, c-format
 msgid "TIMESTAMP(%d)%s precision reduced to maximum allowed, %d"
 msgstr "la precisione di TIMESTAMP(%d)%s è stata ridotta al massimo consentito %d"
 
-#: utils/adt/timestamp.c:172 utils/adt/timestamp.c:446
+#: utils/adt/timestamp.c:178 utils/adt/timestamp.c:452
 #, c-format
 msgid "timestamp out of range: \"%s\""
 msgstr "timestamp fuori dall'intervallo consentito: \"%s\""
 
-#: utils/adt/timestamp.c:190 utils/adt/timestamp.c:464
-#: utils/adt/timestamp.c:674
+#: utils/adt/timestamp.c:196 utils/adt/timestamp.c:470
+#: utils/adt/timestamp.c:914
 #, c-format
 msgid "date/time value \"%s\" is no longer supported"
 msgstr "il valore \"%s\" per i tipi date/time non è più supportato"
 
-#: utils/adt/timestamp.c:260
+#: utils/adt/timestamp.c:266
 #, c-format
 msgid "timestamp cannot be NaN"
 msgstr "il timestamp non può essere NaN"
 
-#: utils/adt/timestamp.c:381
+#: utils/adt/timestamp.c:387
 #, c-format
 msgid "timestamp(%d) precision must be between %d and %d"
 msgstr "la precisione di timestamp(%d) deve essere compresa fra %d e %d"
 
-#: utils/adt/timestamp.c:668 utils/adt/timestamp.c:3254
-#: utils/adt/timestamp.c:3383 utils/adt/timestamp.c:3774
+#: utils/adt/timestamp.c:517
+#, c-format
+msgid "invalid input syntax for numeric time zone: \"%s\""
+msgstr "sintassi di input non valida per il fuso orario numerico: \"%s\""
+
+#: utils/adt/timestamp.c:519
+#, c-format
+msgid "Numeric time zones must have \"-\" or \"+\" as first character."
+msgstr "Il primo carattere dei fusi orari numerici deve essere \"-\" o \"+\"."
+
+#: utils/adt/timestamp.c:531
+#, c-format
+msgid "numeric time zone \"%s\" out of range"
+msgstr "fuso orario numerico \"%s\" fuori dall'intervallo consentito"
+
+#: utils/adt/timestamp.c:627 utils/adt/timestamp.c:637
+#, c-format
+msgid "timestamp out of range: %d-%02d-%02d %d:%02d:%02g"
+msgstr "timestamp fuori dall'intervallo consentito: %d-%02d-%02d %d:%02d:%02g"
+
+#: utils/adt/timestamp.c:908 utils/adt/timestamp.c:1479
+#: utils/adt/timestamp.c:1982 utils/adt/timestamp.c:3122
+#: utils/adt/timestamp.c:3127 utils/adt/timestamp.c:3132
+#: utils/adt/timestamp.c:3182 utils/adt/timestamp.c:3189
+#: utils/adt/timestamp.c:3196 utils/adt/timestamp.c:3216
+#: utils/adt/timestamp.c:3223 utils/adt/timestamp.c:3230
+#: utils/adt/timestamp.c:3259 utils/adt/timestamp.c:3266
+#: utils/adt/timestamp.c:3311 utils/adt/timestamp.c:3602
+#: utils/adt/timestamp.c:3731 utils/adt/timestamp.c:4122
 #, c-format
 msgid "interval out of range"
 msgstr "il valore di interval è fuori dall'intervallo consentito"
 
-#: utils/adt/timestamp.c:809 utils/adt/timestamp.c:842
+#: utils/adt/timestamp.c:1049 utils/adt/timestamp.c:1082
 #, c-format
 msgid "invalid INTERVAL type modifier"
 msgstr "il modificatore di tipo su INTERVAL non è valido"
 
-#: utils/adt/timestamp.c:825
+#: utils/adt/timestamp.c:1065
 #, c-format
 msgid "INTERVAL(%d) precision must not be negative"
 msgstr "la precisione di INTERVAL(%d) non può essere negativa"
 
-#: utils/adt/timestamp.c:831
+#: utils/adt/timestamp.c:1071
 #, c-format
 msgid "INTERVAL(%d) precision reduced to maximum allowed, %d"
 msgstr "la precisione di INTERVAL(%d) è stata ridotta al massimo consentito %d"
 
-#: utils/adt/timestamp.c:1183
+#: utils/adt/timestamp.c:1423
 #, c-format
 msgid "interval(%d) precision must be between %d and %d"
 msgstr "la precisione di INTERVAL(%d) deve essere compresa fra %d e %d"
 
-#: utils/adt/timestamp.c:2452
+#: utils/adt/timestamp.c:2711
 #, c-format
 msgid "cannot subtract infinite timestamps"
 msgstr "non è possibile sottrarre valori infiniti di TIMESTAMP"
 
-#: utils/adt/timestamp.c:3509 utils/adt/timestamp.c:4115
-#: utils/adt/timestamp.c:4155
+#: utils/adt/timestamp.c:3857 utils/adt/timestamp.c:4463
+#: utils/adt/timestamp.c:4503
 #, c-format
 msgid "timestamp units \"%s\" not supported"
 msgstr "unità \"%s\" di timestamp non supportata"
 
-#: utils/adt/timestamp.c:3523 utils/adt/timestamp.c:4165
+#: utils/adt/timestamp.c:3871 utils/adt/timestamp.c:4513
 #, c-format
 msgid "timestamp units \"%s\" not recognized"
 msgstr "unità \"%s\" di timestamp non riconosciuta"
 
-#: utils/adt/timestamp.c:3663 utils/adt/timestamp.c:4326
-#: utils/adt/timestamp.c:4367
+#: utils/adt/timestamp.c:4011 utils/adt/timestamp.c:4674
+#: utils/adt/timestamp.c:4715
 #, c-format
 msgid "timestamp with time zone units \"%s\" not supported"
 msgstr "unità \"%s\" di timestamp with time zone non supportata"
 
-#: utils/adt/timestamp.c:3680 utils/adt/timestamp.c:4376
+#: utils/adt/timestamp.c:4028 utils/adt/timestamp.c:4724
 #, c-format
 msgid "timestamp with time zone units \"%s\" not recognized"
 msgstr "unità \"%s\" di timestamp with time zone non riconosciuta"
 
-#: utils/adt/timestamp.c:3761
+#: utils/adt/timestamp.c:4109
 #, c-format
 msgid "interval units \"%s\" not supported because months usually have fractional weeks"
 msgstr "le unità di intervallo \"%s\" non sono supportate perché generalmente i mesi hanno settimane frazionali"
 
-#: utils/adt/timestamp.c:3767 utils/adt/timestamp.c:4482
+#: utils/adt/timestamp.c:4115 utils/adt/timestamp.c:4830
 #, c-format
 msgid "interval units \"%s\" not supported"
 msgstr "unità \"%s\" di interval non supportata"
 
-#: utils/adt/timestamp.c:3783 utils/adt/timestamp.c:4509
+#: utils/adt/timestamp.c:4131 utils/adt/timestamp.c:4857
 #, c-format
 msgid "interval units \"%s\" not recognized"
 msgstr "unità \"%s\" di interval non riconosciuta"
 
-#: utils/adt/timestamp.c:4579 utils/adt/timestamp.c:4751
+#: utils/adt/timestamp.c:4927 utils/adt/timestamp.c:5099
 #, c-format
 msgid "could not convert to time zone \"%s\""
 msgstr "conversione al fuso orario \"%s\" fallita"
@@ -16551,6 +17671,11 @@ msgstr "la parola in tsquery è troppo lunga: \"%s\""
 msgid "text-search query doesn't contain lexemes: \"%s\""
 msgstr "la query di ricerca di testo non contiene alcun lessema: \"%s\""
 
+#: utils/adt/tsquery.c:520 utils/adt/tsquery_util.c:340
+#, c-format
+msgid "tsquery is too large"
+msgstr "tsquery troppo grande"
+
 #: utils/adt/tsquery_cleanup.c:284
 #, c-format
 msgid "text-search query contains only stop words or doesn't contain lexemes, ignored"
@@ -16576,17 +17701,17 @@ msgstr "l'array dei pesi è troppo corto"
 msgid "array of weight must not contain nulls"
 msgstr "l'array dei pesi non può contenere valori nulli"
 
-#: utils/adt/tsrank.c:422 utils/adt/tsrank.c:748
+#: utils/adt/tsrank.c:422 utils/adt/tsrank.c:749
 #, c-format
 msgid "weight out of range"
 msgstr "il peso è fuori dall'intervallo consentito"
 
-#: utils/adt/tsvector.c:212
+#: utils/adt/tsvector.c:213
 #, c-format
 msgid "word is too long (%ld bytes, max %ld bytes)"
 msgstr "la lunghezza della parola (%ld byte) eccede il massimo (%ld byte)"
 
-#: utils/adt/tsvector.c:219
+#: utils/adt/tsvector.c:220
 #, c-format
 msgid "string is too long for tsvector (%ld bytes, max %ld bytes)"
 msgstr "la lunghezza della stringa (%ld byte) eccede il massimo per un tsvector (%ld byte)"
@@ -16661,59 +17786,64 @@ msgstr "la lunghezza per il tipo %s dev'essere almeno 1"
 msgid "length for type %s cannot exceed %d"
 msgstr "la lunghezza per il tipo %s non può essere superiore a %d"
 
-#: utils/adt/varbit.c:167 utils/adt/varbit.c:310 utils/adt/varbit.c:367
+#: utils/adt/varbit.c:163 utils/adt/varbit.c:475 utils/adt/varbit.c:973
+#, c-format
+msgid "bit string length exceeds the maximum allowed (%d)"
+msgstr "la lunghezza della stringa di bit supera il massimo consentito (%d)"
+
+#: utils/adt/varbit.c:177 utils/adt/varbit.c:320 utils/adt/varbit.c:377
 #, c-format
 msgid "bit string length %d does not match type bit(%d)"
 msgstr "la lunghezza della stringa di bit %d non corrisponde a quella del tipo bit(%d)"
 
-#: utils/adt/varbit.c:189 utils/adt/varbit.c:491
+#: utils/adt/varbit.c:199 utils/adt/varbit.c:511
 #, c-format
 msgid "\"%c\" is not a valid binary digit"
 msgstr "\"%c\" non è una cifra binaria valida"
 
-#: utils/adt/varbit.c:214 utils/adt/varbit.c:516
+#: utils/adt/varbit.c:224 utils/adt/varbit.c:536
 #, c-format
 msgid "\"%c\" is not a valid hexadecimal digit"
 msgstr "\"%c\" non è una cifra esadecimale valida"
 
-#: utils/adt/varbit.c:301 utils/adt/varbit.c:604
+#: utils/adt/varbit.c:311 utils/adt/varbit.c:627
 #, c-format
 msgid "invalid length in external bit string"
 msgstr "la lunghezza della stringa esterna di bit non è valida"
 
-#: utils/adt/varbit.c:469 utils/adt/varbit.c:613 utils/adt/varbit.c:708
+#: utils/adt/varbit.c:489 utils/adt/varbit.c:636 utils/adt/varbit.c:731
 #, c-format
 msgid "bit string too long for type bit varying(%d)"
 msgstr "la stringa di bit è troppo lunga per il tipo bit varying(%d)"
 
-#: utils/adt/varbit.c:1038 utils/adt/varbit.c:1140 utils/adt/varlena.c:800
+#: utils/adt/varbit.c:1066 utils/adt/varbit.c:1168 utils/adt/varlena.c:800
 #: utils/adt/varlena.c:864 utils/adt/varlena.c:1008 utils/adt/varlena.c:1964
 #: utils/adt/varlena.c:2031
 #, c-format
 msgid "negative substring length not allowed"
 msgstr "non è consentita una stringa con lunghezza negativa"
 
-#: utils/adt/varbit.c:1198
+#: utils/adt/varbit.c:1226
 #, c-format
 msgid "cannot AND bit strings of different sizes"
 msgstr "non è possibile eseguire l'AND fra stringhe di bit di dimensioni diverse"
 
-#: utils/adt/varbit.c:1240
+#: utils/adt/varbit.c:1268
 #, c-format
 msgid "cannot OR bit strings of different sizes"
 msgstr "non è possibile eseguire l'OR fra stringhe di bit di dimensioni diverse"
 
-#: utils/adt/varbit.c:1287
+#: utils/adt/varbit.c:1315
 #, c-format
 msgid "cannot XOR bit strings of different sizes"
 msgstr "non è possibile eseguire lo XOR fra stringhe di bit di dimensioni diverse"
 
-#: utils/adt/varbit.c:1765 utils/adt/varbit.c:1823
+#: utils/adt/varbit.c:1793 utils/adt/varbit.c:1851
 #, c-format
 msgid "bit index %d out of valid range (0..%d)"
 msgstr "l'indice %d è fuori dall'intervallo valido (0..%d)"
 
-#: utils/adt/varbit.c:1774 utils/adt/varlena.c:2231
+#: utils/adt/varbit.c:1802 utils/adt/varlena.c:2231
 #, c-format
 msgid "new bit must be 0 or 1"
 msgstr "il nuovo bit deve essere 0 o 1"
@@ -16749,47 +17879,42 @@ msgstr "comparazione delle stringhe Unicode fallita: %m"
 msgid "index %d out of valid range, 0..%d"
 msgstr "l'indice %d è fuori dall'intervallo valido, 0..%d"
 
-#: utils/adt/varlena.c:3137
+#: utils/adt/varlena.c:3138
 #, c-format
 msgid "field position must be greater than zero"
 msgstr "il campo deve essere maggiore di zero"
 
-#: utils/adt/varlena.c:3848 utils/adt/varlena.c:4082
-#, c-format
-msgid "VARIADIC argument must be an array"
-msgstr "l'argomento VARIADIC deve essere un array"
-
-#: utils/adt/varlena.c:4022
+#: utils/adt/varlena.c:4017
 #, c-format
 msgid "unterminated format specifier"
 msgstr "specificatore di formato non terminato"
 
-#: utils/adt/varlena.c:4160 utils/adt/varlena.c:4280
+#: utils/adt/varlena.c:4149 utils/adt/varlena.c:4269
 #, c-format
 msgid "unrecognized conversion type specifier \"%c\""
 msgstr "specificatore di tipo \"%c\" non riconosciuto"
 
-#: utils/adt/varlena.c:4172 utils/adt/varlena.c:4229
+#: utils/adt/varlena.c:4161 utils/adt/varlena.c:4218
 #, c-format
 msgid "too few arguments for format"
 msgstr "troppi pochi argomenti per il formato"
 
-#: utils/adt/varlena.c:4323 utils/adt/varlena.c:4506
+#: utils/adt/varlena.c:4312 utils/adt/varlena.c:4495
 #, c-format
 msgid "number is out of range"
 msgstr "il numero è al di fuori dell'intervallo consentito"
 
-#: utils/adt/varlena.c:4387 utils/adt/varlena.c:4415
+#: utils/adt/varlena.c:4376 utils/adt/varlena.c:4404
 #, c-format
 msgid "format specifies argument 0, but arguments are numbered from 1"
 msgstr "il formato specifica l'argomento 0, ma gli argomenti sono numerati a partire da 1"
 
-#: utils/adt/varlena.c:4408
+#: utils/adt/varlena.c:4397
 #, c-format
 msgid "width argument position must be ended by \"$\""
 msgstr "la posizione dell'argomento di larghezza deve finire con \"$\""
 
-#: utils/adt/varlena.c:4453
+#: utils/adt/varlena.c:4442
 #, c-format
 msgid "null values cannot be formatted as an SQL identifier"
 msgstr "i valori vuoti non possono essere formattati come un identificativo SQL"
@@ -16819,142 +17944,142 @@ msgstr "Per questa funzionalità è necessario che il server sia compilato con i
 msgid "You need to rebuild PostgreSQL using --with-libxml."
 msgstr "Occorre configurare PostgreSQL con l'opzione --with-libxml e ricompilarlo."
 
-#: utils/adt/xml.c:191 utils/mb/mbutils.c:515
+#: utils/adt/xml.c:191 utils/mb/mbutils.c:523
 #, c-format
 msgid "invalid encoding name \"%s\""
 msgstr "nome di codifica non valido \"%s\""
 
-#: utils/adt/xml.c:437 utils/adt/xml.c:442
+#: utils/adt/xml.c:434 utils/adt/xml.c:439
 #, c-format
 msgid "invalid XML comment"
 msgstr "commento XML non valido"
 
-#: utils/adt/xml.c:571
+#: utils/adt/xml.c:568
 #, c-format
 msgid "not an XML document"
 msgstr "non è un documento XML"
 
-#: utils/adt/xml.c:730 utils/adt/xml.c:753
+#: utils/adt/xml.c:727 utils/adt/xml.c:750
 #, c-format
 msgid "invalid XML processing instruction"
 msgstr "istruzione di elaborazione XML non valida"
 
-#: utils/adt/xml.c:731
+#: utils/adt/xml.c:728
 #, c-format
 msgid "XML processing instruction target name cannot be \"%s\"."
 msgstr "Il nome di destinazione di un'istruzione di elaborazione XML non può essere \"%s\"."
 
-#: utils/adt/xml.c:754
+#: utils/adt/xml.c:751
 #, c-format
 msgid "XML processing instruction cannot contain \"?>\"."
 msgstr "Un'istruzione di elaborazione XML non può contenere \"?>\"."
 
-#: utils/adt/xml.c:833
+#: utils/adt/xml.c:830
 #, c-format
 msgid "xmlvalidate is not implemented"
 msgstr "la funzione xmlvalidate non è implementata"
 
-#: utils/adt/xml.c:912
+#: utils/adt/xml.c:909
 #, c-format
 msgid "could not initialize XML library"
 msgstr "inizializzazione della libreria XML fallita"
 
-#: utils/adt/xml.c:913
+#: utils/adt/xml.c:910
 #, c-format
 msgid "libxml2 has incompatible char type: sizeof(char)=%u, sizeof(xmlChar)=%u."
 msgstr "La libreria libxml2 ha un tipo char non compatibile: sizeof(char)=%u, sizeof(xmlChar)=%u."
 
-#: utils/adt/xml.c:999
+#: utils/adt/xml.c:996
 #, c-format
 msgid "could not set up XML error handler"
 msgstr "impostazione del gestore di errori XML fallita"
 
-#: utils/adt/xml.c:1000
+#: utils/adt/xml.c:997
 #, c-format
 msgid "This probably indicates that the version of libxml2 being used is not compatible with the libxml2 header files that PostgreSQL was built with."
 msgstr "Questo vuol dire probabilmente che la versione di libxml2 in uso non è compatibile con i file di header libxml2 con cui PostgreSQL è stato compilato."
 
-#: utils/adt/xml.c:1735
+#: utils/adt/xml.c:1732
 msgid "Invalid character value."
 msgstr "Valore di carattere non valido."
 
-#: utils/adt/xml.c:1738
+#: utils/adt/xml.c:1735
 msgid "Space required."
 msgstr "È necessario uno spazio."
 
-#: utils/adt/xml.c:1741
+#: utils/adt/xml.c:1738
 msgid "standalone accepts only 'yes' or 'no'."
 msgstr "Solo 'yes' o 'no' sono accettati da standalone."
 
-#: utils/adt/xml.c:1744
+#: utils/adt/xml.c:1741
 msgid "Malformed declaration: missing version."
 msgstr "La dichiarazione non è definita correttamente: manca la versione."
 
-#: utils/adt/xml.c:1747
+#: utils/adt/xml.c:1744
 msgid "Missing encoding in text declaration."
 msgstr "Manca la codifica nella dichiarazione del testo."
 
-#: utils/adt/xml.c:1750
+#: utils/adt/xml.c:1747
 msgid "Parsing XML declaration: '?>' expected."
 msgstr "Durante l'analisi XML è stato riscontrato che manca '?>'."
 
-#: utils/adt/xml.c:1753
+#: utils/adt/xml.c:1750
 #, c-format
 msgid "Unrecognized libxml error code: %d."
 msgstr "Codice di errore di libxml sconosciuto: %d."
 
-#: utils/adt/xml.c:2034
+#: utils/adt/xml.c:2025
 #, c-format
 msgid "XML does not support infinite date values."
 msgstr "XML non supporta i valori infiniti per il tipo date."
 
-#: utils/adt/xml.c:2056 utils/adt/xml.c:2083
+#: utils/adt/xml.c:2047 utils/adt/xml.c:2074
 #, c-format
 msgid "XML does not support infinite timestamp values."
 msgstr "XML non supporta i valori infiniti per il tipo timestamp."
 
-#: utils/adt/xml.c:2474
+#: utils/adt/xml.c:2465
 #, c-format
 msgid "invalid query"
 msgstr "query non valida"
 
-#: utils/adt/xml.c:3789
+#: utils/adt/xml.c:3778
 #, c-format
 msgid "invalid array for XML namespace mapping"
 msgstr "l'array per il mapping del namespace XML non è valido"
 
-#: utils/adt/xml.c:3790
+#: utils/adt/xml.c:3779
 #, c-format
 msgid "The array must be two-dimensional with length of the second axis equal to 2."
 msgstr "L'array deve avere due dimensioni e la lunghezza del secondo asse deve essere pari a 2."
 
-#: utils/adt/xml.c:3814
+#: utils/adt/xml.c:3803
 #, c-format
 msgid "empty XPath expression"
 msgstr "l'espressione XPath è vuota"
 
-#: utils/adt/xml.c:3863
+#: utils/adt/xml.c:3852
 #, c-format
 msgid "neither namespace name nor URI may be null"
 msgstr "né il nome del namespace né l'URI possono essere nulli"
 
-#: utils/adt/xml.c:3870
+#: utils/adt/xml.c:3859
 #, c-format
 msgid "could not register XML namespace with name \"%s\" and URI \"%s\""
 msgstr "registrazione del namespace XML con nome \"%s\" ed URI \"%s\" fallita"
 
-#: utils/cache/lsyscache.c:2459 utils/cache/lsyscache.c:2492
-#: utils/cache/lsyscache.c:2525 utils/cache/lsyscache.c:2558
+#: utils/cache/lsyscache.c:2478 utils/cache/lsyscache.c:2511
+#: utils/cache/lsyscache.c:2544 utils/cache/lsyscache.c:2577
 #, c-format
 msgid "type %s is only a shell"
 msgstr "il tipo %s non è completamente definito"
 
-#: utils/cache/lsyscache.c:2464
+#: utils/cache/lsyscache.c:2483
 #, c-format
 msgid "no input function available for type %s"
 msgstr "nessuna funzione di input disponibile per il tipo %s"
 
-#: utils/cache/lsyscache.c:2497
+#: utils/cache/lsyscache.c:2516
 #, c-format
 msgid "no output function available for type %s"
 msgstr "nessuna funzione di output disponibile per il tipo %s"
@@ -16964,57 +18089,57 @@ msgstr "nessuna funzione di output disponibile per il tipo %s"
 msgid "cached plan must not change result type"
 msgstr "il cached plan non deve cambiare il tipo del risultato"
 
-#: utils/cache/relcache.c:4541
+#: utils/cache/relcache.c:4828
 #, c-format
 msgid "could not create relation-cache initialization file \"%s\": %m"
 msgstr "creazione del file di inizializzazione della cache delle relazioni \"%s\" fallita: %m"
 
-#: utils/cache/relcache.c:4543
+#: utils/cache/relcache.c:4830
 #, c-format
 msgid "Continuing anyway, but there's something wrong."
 msgstr "Proseguo in ogni caso, ma c'è qualcosa che non funziona."
 
-#: utils/cache/relcache.c:4757
+#: utils/cache/relcache.c:5044
 #, c-format
 msgid "could not remove cache file \"%s\": %m"
 msgstr "rimozione del file di cache \"%s\" fallita: %m"
 
-#: utils/cache/relmapper.c:453
+#: utils/cache/relmapper.c:506
 #, c-format
 msgid "cannot PREPARE a transaction that modified relation mapping"
 msgstr "non è possibile eseguire PREPARE in una transazione che ha modificato la mappa delle relazioni"
 
-#: utils/cache/relmapper.c:596 utils/cache/relmapper.c:696
+#: utils/cache/relmapper.c:649 utils/cache/relmapper.c:749
 #, c-format
 msgid "could not open relation mapping file \"%s\": %m"
 msgstr "apertura del file della mappa delle relazioni \"%s\" fallita: %m"
 
-#: utils/cache/relmapper.c:609
+#: utils/cache/relmapper.c:662
 #, c-format
 msgid "could not read relation mapping file \"%s\": %m"
 msgstr "lettura del file della mappa delle relazioni \"%s\" fallita: %m"
 
-#: utils/cache/relmapper.c:619
+#: utils/cache/relmapper.c:672
 #, c-format
 msgid "relation mapping file \"%s\" contains invalid data"
 msgstr "il file della mappa delle relazioni \"%s\" contiene dati non validi"
 
-#: utils/cache/relmapper.c:629
+#: utils/cache/relmapper.c:682
 #, c-format
 msgid "relation mapping file \"%s\" contains incorrect checksum"
 msgstr "il file della mappa delle relazioni \"%s\" ha un checksum non valido"
 
-#: utils/cache/relmapper.c:735
+#: utils/cache/relmapper.c:788
 #, c-format
 msgid "could not write to relation mapping file \"%s\": %m"
 msgstr "scrittura nel file della mappa delle relazioni \"%s\" fallita: %m"
 
-#: utils/cache/relmapper.c:748
+#: utils/cache/relmapper.c:801
 #, c-format
 msgid "could not fsync relation mapping file \"%s\": %m"
 msgstr "fsync del file della mappa delle relazioni \"%s\" fallito: %m"
 
-#: utils/cache/relmapper.c:754
+#: utils/cache/relmapper.c:807
 #, c-format
 msgid "could not close relation mapping file \"%s\": %m"
 msgstr "chiusura del file della mappa delle relazioni \"%s\" fallita: %m"
@@ -17039,101 +18164,101 @@ msgstr "TRAP: ExceptionalCondition: argomenti non corretti\n"
 msgid "TRAP: %s(\"%s\", File: \"%s\", Line: %d)\n"
 msgstr "TRAP: %s(\"%s\", File: \"%s\", Linea: %d)\n"
 
-#: utils/error/elog.c:319 utils/error/elog.c:1250
+#: utils/error/elog.c:320 utils/error/elog.c:1291
 #, c-format
 msgid "error occurred at %s:%d before error message processing is available\n"
 msgstr "l'errore è avvenuto a %s:%d prima che fosse possibile processare i messaggi d'errore\n"
 
-#: utils/error/elog.c:1682
+#: utils/error/elog.c:1807
 #, c-format
 msgid "could not reopen file \"%s\" as stderr: %m"
 msgstr "riapertura del file \"%s\" come stderr fallita: %m"
 
-#: utils/error/elog.c:1695
+#: utils/error/elog.c:1820
 #, c-format
 msgid "could not reopen file \"%s\" as stdout: %m"
 msgstr "riapertura del file \"%s\" come stdout fallita: %m"
 
-#: utils/error/elog.c:2084 utils/error/elog.c:2094 utils/error/elog.c:2104
+#: utils/error/elog.c:2295 utils/error/elog.c:2312 utils/error/elog.c:2328
 msgid "[unknown]"
 msgstr "[sconosciuto]"
 
-#: utils/error/elog.c:2452 utils/error/elog.c:2751 utils/error/elog.c:2859
+#: utils/error/elog.c:2766 utils/error/elog.c:3065 utils/error/elog.c:3173
 msgid "missing error text"
 msgstr "testo dell'errore mancante"
 
-#: utils/error/elog.c:2455 utils/error/elog.c:2458 utils/error/elog.c:2862
-#: utils/error/elog.c:2865
+#: utils/error/elog.c:2769 utils/error/elog.c:2772 utils/error/elog.c:3176
+#: utils/error/elog.c:3179
 #, c-format
 msgid " at character %d"
 msgstr " al carattere %d"
 
-#: utils/error/elog.c:2468 utils/error/elog.c:2475
+#: utils/error/elog.c:2782 utils/error/elog.c:2789
 msgid "DETAIL:  "
 msgstr "DETTAGLI:  "
 
-#: utils/error/elog.c:2482
+#: utils/error/elog.c:2796
 msgid "HINT:  "
 msgstr "SUGGERIMENTO:  "
 
-#: utils/error/elog.c:2489
+#: utils/error/elog.c:2803
 msgid "QUERY:  "
 msgstr "QUERY:  "
 
-#: utils/error/elog.c:2496
+#: utils/error/elog.c:2810
 msgid "CONTEXT:  "
 msgstr "CONTESTO:  "
 
-#: utils/error/elog.c:2506
+#: utils/error/elog.c:2820
 #, c-format
 msgid "LOCATION:  %s, %s:%d\n"
 msgstr "POSIZIONE:  %s, %s:%d\n"
 
-#: utils/error/elog.c:2513
+#: utils/error/elog.c:2827
 #, c-format
 msgid "LOCATION:  %s:%d\n"
 msgstr "POSIZIONE:  %s:%d\n"
 
-#: utils/error/elog.c:2527
+#: utils/error/elog.c:2841
 msgid "STATEMENT:  "
 msgstr "ISTRUZIONE:  "
 
 #. translator: This string will be truncated at 47
 #. characters expanded.
-#: utils/error/elog.c:2980
+#: utils/error/elog.c:3294
 #, c-format
 msgid "operating system error %d"
 msgstr "errore del sistema operativo %d"
 
-#: utils/error/elog.c:3175
+#: utils/error/elog.c:3489
 msgid "DEBUG"
 msgstr "DEBUG"
 
-#: utils/error/elog.c:3179
+#: utils/error/elog.c:3493
 msgid "LOG"
 msgstr "LOG"
 
-#: utils/error/elog.c:3182
+#: utils/error/elog.c:3496
 msgid "INFO"
 msgstr "INFO"
 
-#: utils/error/elog.c:3185
+#: utils/error/elog.c:3499
 msgid "NOTICE"
 msgstr "NOTIFICA"
 
-#: utils/error/elog.c:3188
+#: utils/error/elog.c:3502
 msgid "WARNING"
 msgstr "ATTENZIONE"
 
-#: utils/error/elog.c:3191
+#: utils/error/elog.c:3505
 msgid "ERROR"
 msgstr "ERRORE"
 
-#: utils/error/elog.c:3194
+#: utils/error/elog.c:3508
 msgid "FATAL"
 msgstr "FATALE"
 
-#: utils/error/elog.c:3197
+#: utils/error/elog.c:3511
 msgid "PANIC"
 msgstr "PANICO"
 
@@ -17206,57 +18331,62 @@ msgstr "Il magic block ha una lunghezza imprevista o una differenza di allineame
 msgid "incompatible library \"%s\": magic block mismatch"
 msgstr "la libreria \"%s\" non è compatibile: magic block non corrispondente"
 
-#: utils/fmgr/dfmgr.c:545
+#: utils/fmgr/dfmgr.c:543
 #, c-format
 msgid "access to library \"%s\" is not allowed"
 msgstr "l'accesso alla libreria \"%s\" non è consentito"
 
-#: utils/fmgr/dfmgr.c:572
+#: utils/fmgr/dfmgr.c:569
 #, c-format
 msgid "invalid macro name in dynamic library path: %s"
 msgstr "nome della macro non valido nel percorso della libreria dinamica: %s"
 
-#: utils/fmgr/dfmgr.c:617
+#: utils/fmgr/dfmgr.c:609
 #, c-format
 msgid "zero-length component in parameter \"dynamic_library_path\""
 msgstr "componente di lunghezza zero nel parametro \"dynamic_library_path\""
 
-#: utils/fmgr/dfmgr.c:636
+#: utils/fmgr/dfmgr.c:628
 #, c-format
 msgid "component in parameter \"dynamic_library_path\" is not an absolute path"
 msgstr "il componente nel parametro \"dynamic_library_path\" non è un percorso assoluto."
 
-#: utils/fmgr/fmgr.c:271
+#: utils/fmgr/fmgr.c:272
 #, c-format
 msgid "internal function \"%s\" is not in internal lookup table"
 msgstr "la funzione interna \"%s\" non è nella tabella interna di lookup"
 
-#: utils/fmgr/fmgr.c:481
+#: utils/fmgr/fmgr.c:479
 #, c-format
 msgid "unrecognized API version %d reported by info function \"%s\""
 msgstr "versione API sconosciuto %d riportata dalla funzione info \"%s\""
 
-#: utils/fmgr/fmgr.c:852 utils/fmgr/fmgr.c:2113
+#: utils/fmgr/fmgr.c:850 utils/fmgr/fmgr.c:2111
 #, c-format
 msgid "function %u has too many arguments (%d, maximum is %d)"
 msgstr "la funzione %u ha troppo argomenti (%d, il massimo è %d)"
 
+#: utils/fmgr/fmgr.c:2532
+#, c-format
+msgid "language validation function %u called for language %u instead of %u"
+msgstr "funzione di validazione del linguaggio %u chiamata per il linguaggio %u invece di %u"
+
 #: utils/fmgr/funcapi.c:355
 #, c-format
 msgid "could not determine actual result type for function \"%s\" declared to return type %s"
 msgstr "non è stato possibile determinare il tipo reale di risultato della funzione \"%s\" dichiarata con tipo restituito %s"
 
-#: utils/fmgr/funcapi.c:1301 utils/fmgr/funcapi.c:1332
+#: utils/fmgr/funcapi.c:1300 utils/fmgr/funcapi.c:1331
 #, c-format
 msgid "number of aliases does not match number of columns"
 msgstr "il numero di alias non corrisponde al numero delle colonne"
 
-#: utils/fmgr/funcapi.c:1326
+#: utils/fmgr/funcapi.c:1325
 #, c-format
 msgid "no column alias was provided"
 msgstr "non è stato fornito nessun alias colonna"
 
-#: utils/fmgr/funcapi.c:1350
+#: utils/fmgr/funcapi.c:1349
 #, c-format
 msgid "could not determine row description for function returning record"
 msgstr "non è stato possibile determinare la descrizione della riga per la funzione che restituisce record"
@@ -17266,258 +18396,276 @@ msgstr "non è stato possibile determinare la descrizione della riga per la funz
 msgid "could not change directory to \"%s\": %m"
 msgstr "spostamento nella directory \"%s\" fallito: %m"
 
-#: utils/init/miscinit.c:382 utils/misc/guc.c:5325
+#: utils/init/miscinit.c:311 utils/misc/guc.c:5772
 #, c-format
 msgid "cannot set parameter \"%s\" within security-restricted operation"
 msgstr "non è possibile impostare il parametro \"%s\" nell'ambito di operazioni a sicurezza ristretta"
 
-#: utils/init/miscinit.c:461
+#: utils/init/miscinit.c:390
 #, c-format
 msgid "role \"%s\" is not permitted to log in"
 msgstr "al ruolo \"%s\" non è consentito effettuare il login"
 
-#: utils/init/miscinit.c:479
+#: utils/init/miscinit.c:408
 #, c-format
 msgid "too many connections for role \"%s\""
 msgstr "troppe connessioni per il ruolo \"%s\""
 
-#: utils/init/miscinit.c:539
+#: utils/init/miscinit.c:468
 #, c-format
 msgid "permission denied to set session authorization"
 msgstr "permesso di impostare l'autorizzazione della sessione negato"
 
-#: utils/init/miscinit.c:619
+#: utils/init/miscinit.c:548
 #, c-format
 msgid "invalid role OID: %u"
 msgstr "OID del ruolo non valido: %u"
 
-#: utils/init/miscinit.c:746
+#: utils/init/miscinit.c:675
 #, c-format
 msgid "could not create lock file \"%s\": %m"
 msgstr "creazione del file di lock \"%s\" fallita: %m"
 
-#: utils/init/miscinit.c:760
+#: utils/init/miscinit.c:689
 #, c-format
 msgid "could not open lock file \"%s\": %m"
 msgstr "apertura del file di lock \"%s\" fallita: %m"
 
-#: utils/init/miscinit.c:766
+#: utils/init/miscinit.c:695
 #, c-format
 msgid "could not read lock file \"%s\": %m"
 msgstr "lettura dal file di lock \"%s\" fallita: %m"
 
-#: utils/init/miscinit.c:774
+#: utils/init/miscinit.c:703
 #, c-format
 msgid "lock file \"%s\" is empty"
 msgstr "il file di lock \"%s\" è vuoto"
 
-#: utils/init/miscinit.c:775
+#: utils/init/miscinit.c:704
 #, c-format
 msgid "Either another server is starting, or the lock file is the remnant of a previous server startup crash."
 msgstr "O c'è un altro server in avvio, oppure il file di lock è rimasto da un precedente crash in avvio del server."
 
-#: utils/init/miscinit.c:822
+#: utils/init/miscinit.c:751
 #, c-format
 msgid "lock file \"%s\" already exists"
 msgstr "il file di lock \"%s\" esiste già"
 
-#: utils/init/miscinit.c:826
+#: utils/init/miscinit.c:755
 #, c-format
 msgid "Is another postgres (PID %d) running in data directory \"%s\"?"
 msgstr "C'è un altro postgres (PID %d) in esecuzione nella directory dei dati \"%s\"?"
 
-#: utils/init/miscinit.c:828
+#: utils/init/miscinit.c:757
 #, c-format
 msgid "Is another postmaster (PID %d) running in data directory \"%s\"?"
 msgstr "C'è un altro postmaster (PID %d) in esecuzione nella directory dei dati \"%s\"?"
 
-#: utils/init/miscinit.c:831
+#: utils/init/miscinit.c:760
 #, c-format
 msgid "Is another postgres (PID %d) using socket file \"%s\"?"
 msgstr "C'è un altro postgres (PID %d) che sta usando il file socket \"%s\"?"
 
-#: utils/init/miscinit.c:833
+#: utils/init/miscinit.c:762
 #, c-format
 msgid "Is another postmaster (PID %d) using socket file \"%s\"?"
 msgstr "C'è un altro postmaster (PID %d) che sta usando il file socket \"%s\"?"
 
-#: utils/init/miscinit.c:869
+#: utils/init/miscinit.c:798
 #, c-format
 msgid "pre-existing shared memory block (key %lu, ID %lu) is still in use"
 msgstr "il blocco di memoria condivisa preesistente (key %lu, ID %lu) è ancora in uso"
 
-#: utils/init/miscinit.c:872
+#: utils/init/miscinit.c:801
 #, c-format
 msgid "If you're sure there are no old server processes still running, remove the shared memory block or just delete the file \"%s\"."
 msgstr "Se sei sicuro che non ci siano vecchi processi server ancora in esecuzione, rimuovi il blocco di memoria condivisa, o semplicemente cancella il file \"%s\"."
 
-#: utils/init/miscinit.c:888
+#: utils/init/miscinit.c:817
 #, c-format
 msgid "could not remove old lock file \"%s\": %m"
 msgstr "rimozione del vecchio file di lock \"%s\" fallita: %m"
 
-#: utils/init/miscinit.c:890
+#: utils/init/miscinit.c:819
 #, c-format
 msgid "The file seems accidentally left over, but it could not be removed. Please remove the file by hand and try again."
 msgstr "Sembra che il file sia stato abbandonato accidentalmente, ma non può essere rimosso. Per favore rimuovilo manualmente e riprova."
 
-#: utils/init/miscinit.c:926 utils/init/miscinit.c:937
-#: utils/init/miscinit.c:947
+#: utils/init/miscinit.c:855 utils/init/miscinit.c:866
+#: utils/init/miscinit.c:876
 #, c-format
 msgid "could not write lock file \"%s\": %m"
 msgstr "scrittura del file di lock \"%s\" fallita: %m"
 
-#: utils/init/miscinit.c:1072 utils/misc/guc.c:7681
+#: utils/init/miscinit.c:1001 utils/misc/guc.c:8370
 #, c-format
 msgid "could not read from file \"%s\": %m"
 msgstr "lettura dal file \"%s\" fallita: %m"
 
-#: utils/init/miscinit.c:1186 utils/init/miscinit.c:1199
+#: utils/init/miscinit.c:1115 utils/init/miscinit.c:1128
 #, c-format
 msgid "\"%s\" is not a valid data directory"
 msgstr "\"%s\" non è una directory di dati valida"
 
-#: utils/init/miscinit.c:1188
+#: utils/init/miscinit.c:1117
 #, c-format
 msgid "File \"%s\" is missing."
 msgstr "Il file \"%s\" è mancante."
 
-#: utils/init/miscinit.c:1201
+#: utils/init/miscinit.c:1130
 #, c-format
 msgid "File \"%s\" does not contain valid data."
 msgstr "Il file \"%s\" non contiene dati validi."
 
-#: utils/init/miscinit.c:1203
+#: utils/init/miscinit.c:1132
 #, c-format
 msgid "You might need to initdb."
 msgstr "Potrebbe essere necessario eseguire initdb."
 
-#: utils/init/miscinit.c:1211
+#: utils/init/miscinit.c:1140
 #, c-format
 msgid "The data directory was initialized by PostgreSQL version %ld.%ld, which is not compatible with this version %s."
 msgstr "La directory dati è stata inizializzata da PostgreSQL versione %ld.%ld, che non è compatibile con questa versione %s."
 
-#: utils/init/miscinit.c:1296
+#: utils/init/miscinit.c:1211
 #, c-format
 msgid "loaded library \"%s\""
 msgstr "libreria \"%s\" caricata"
 
-#: utils/init/postinit.c:234
+#: utils/init/postinit.c:237
+#, c-format
+msgid "replication connection authorized: user=%s SSL enabled (protocol=%s, cipher=%s, compression=%s)"
+msgstr "connessione di replica autorizzata: utente=%s SSL abilitato (protocollo=%s, cifrario=%s, compressione=%s)"
+
+#: utils/init/postinit.c:239 utils/init/postinit.c:253
+msgid "off"
+msgstr "disattivato"
+
+#: utils/init/postinit.c:239 utils/init/postinit.c:253
+msgid "on"
+msgstr "attivato"
+
+#: utils/init/postinit.c:243
 #, c-format
 msgid "replication connection authorized: user=%s"
 msgstr "connessione di replica autorizzata: utente=%s"
 
-#: utils/init/postinit.c:238
+#: utils/init/postinit.c:251
+#, c-format
+msgid "connection authorized: user=%s database=%s SSL enabled (protocol=%s, cipher=%s, compression=%s)"
+msgstr "connessione autorizzata: utente=%s database=%s SSL abilitato (protocollo=%s, cifrario=%s, compressione=%s)"
+
+#: utils/init/postinit.c:257
 #, c-format
 msgid "connection authorized: user=%s database=%s"
 msgstr "connessione autorizzata: utente=%s database=%s"
 
-#: utils/init/postinit.c:269
+#: utils/init/postinit.c:289
 #, c-format
 msgid "database \"%s\" has disappeared from pg_database"
 msgstr "il database \"%s\" è scomparso da database pg_database"
 
-#: utils/init/postinit.c:271
+#: utils/init/postinit.c:291
 #, c-format
 msgid "Database OID %u now seems to belong to \"%s\"."
 msgstr "L'OID %u del database ora sembra appartenere a \"%s\"."
 
-#: utils/init/postinit.c:291
+#: utils/init/postinit.c:311
 #, c-format
 msgid "database \"%s\" is not currently accepting connections"
 msgstr "il database \"%s\" attualmente non accetta connessioni"
 
-#: utils/init/postinit.c:304
+#: utils/init/postinit.c:324
 #, c-format
 msgid "permission denied for database \"%s\""
 msgstr "permesso negato per il database \"%s\""
 
-#: utils/init/postinit.c:305
+#: utils/init/postinit.c:325
 #, c-format
 msgid "User does not have CONNECT privilege."
 msgstr "L'utente non ha il privilegio CONNECT."
 
-#: utils/init/postinit.c:322
+#: utils/init/postinit.c:342
 #, c-format
 msgid "too many connections for database \"%s\""
 msgstr "troppe connessioni al database \"%s\""
 
-#: utils/init/postinit.c:344 utils/init/postinit.c:351
+#: utils/init/postinit.c:364 utils/init/postinit.c:371
 #, c-format
 msgid "database locale is incompatible with operating system"
 msgstr "il locale del database è incompatibile col sistema operativo"
 
-#: utils/init/postinit.c:345
+#: utils/init/postinit.c:365
 #, c-format
 msgid "The database was initialized with LC_COLLATE \"%s\",  which is not recognized by setlocale()."
 msgstr "Il database di database è stato inizializzato con LC_COLLATE \"%s\", che non è riconosciuto da setlocale()."
 
-#: utils/init/postinit.c:347 utils/init/postinit.c:354
+#: utils/init/postinit.c:367 utils/init/postinit.c:374
 #, c-format
 msgid "Recreate the database with another locale or install the missing locale."
 msgstr "Crea di nuovo il database con un altro locale oppure installa il locale mancante."
 
-#: utils/init/postinit.c:352
+#: utils/init/postinit.c:372
 #, c-format
 msgid "The database was initialized with LC_CTYPE \"%s\",  which is not recognized by setlocale()."
 msgstr "Il database è stato inizializzato con LC_CTYPE \"%s\", che non è riconosciuto da setlocale()."
 
-#: utils/init/postinit.c:653
+#: utils/init/postinit.c:667
 #, c-format
 msgid "no roles are defined in this database system"
 msgstr "nessun ruolo definito in questo database"
 
-#: utils/init/postinit.c:654
+#: utils/init/postinit.c:668
 #, c-format
 msgid "You should immediately run CREATE USER \"%s\" SUPERUSER;."
 msgstr "Dovresti eseguire immediatamente CREATE USER \"%s\" SUPERUSER;."
 
-#: utils/init/postinit.c:690
+#: utils/init/postinit.c:704
 #, c-format
 msgid "new replication connections are not allowed during database shutdown"
 msgstr "non sono accettate nuove connessioni di replica durante lo spegnimento del database"
 
-#: utils/init/postinit.c:694
+#: utils/init/postinit.c:708
 #, c-format
 msgid "must be superuser to connect during database shutdown"
 msgstr "solo un superutente può connettersi durante lo spegnimento del database"
 
-#: utils/init/postinit.c:704
+#: utils/init/postinit.c:718
 #, c-format
 msgid "must be superuser to connect in binary upgrade mode"
 msgstr "solo un superutente può connettersi in modalità di aggiornamento binario"
 
-#: utils/init/postinit.c:718
+#: utils/init/postinit.c:732
 #, c-format
 msgid "remaining connection slots are reserved for non-replication superuser connections"
 msgstr "i rimanenti slot di connessione sono riservati a connessioni di superutenti non di replica"
 
-#: utils/init/postinit.c:732
+#: utils/init/postinit.c:742
 #, c-format
 msgid "must be superuser or replication role to start walsender"
 msgstr "solo un superutente o il ruolo di replica può avviare walsender"
 
-#: utils/init/postinit.c:792
+#: utils/init/postinit.c:811
 #, c-format
 msgid "database %u does not exist"
 msgstr "il database %u non esiste"
 
-#: utils/init/postinit.c:844
+#: utils/init/postinit.c:863
 #, c-format
 msgid "It seems to have just been dropped or renamed."
 msgstr "Sembra sia stato appena eliminato o rinominato."
 
-#: utils/init/postinit.c:862
+#: utils/init/postinit.c:881
 #, c-format
 msgid "The database subdirectory \"%s\" is missing."
 msgstr "La sottodirectory del database \"%s\" risulta mancante."
 
-#: utils/init/postinit.c:867
+#: utils/init/postinit.c:886
 #, c-format
 msgid "could not access directory \"%s\": %m"
 msgstr "accesso alla directory \"%s\" fallito: %m"
 
-#: utils/mb/conv.c:509
+#: utils/mb/conv.c:519
 #, c-format
 msgid "invalid encoding number: %d"
 msgstr "il numero di codifica non è valido: %d"
@@ -17534,1363 +18682,1450 @@ msgstr "ID di codifica %d non previsto per il set di caratteri ISO 8859"
 msgid "unexpected encoding ID %d for WIN character sets"
 msgstr "ID di codifica %d non previsto per il set di caratteri WIN"
 
-#: utils/mb/encnames.c:484
+#: utils/mb/encnames.c:496
 #, c-format
 msgid "encoding name too long"
 msgstr "il nome della codifica è troppo lungo"
 
-#: utils/mb/mbutils.c:281
+#: utils/mb/mbutils.c:307
 #, c-format
 msgid "conversion between %s and %s is not supported"
 msgstr "la conversione fra %s e %s non è supportata"
 
-#: utils/mb/mbutils.c:351
+#: utils/mb/mbutils.c:366
 #, c-format
 msgid "default conversion function for encoding \"%s\" to \"%s\" does not exist"
 msgstr "la funzione di conversione predefinita da \"%s\" a \"%s\" non esiste"
 
-#: utils/mb/mbutils.c:375 utils/mb/mbutils.c:676
+#: utils/mb/mbutils.c:377 utils/mb/mbutils.c:710
 #, c-format
 msgid "String of %d bytes is too long for encoding conversion."
 msgstr "La stringa di %d byte è troppo lunga per una conversione di codifica."
 
-#: utils/mb/mbutils.c:462
+#: utils/mb/mbutils.c:464
 #, c-format
 msgid "invalid source encoding name \"%s\""
 msgstr "il nome della codifica di origine \"%s\" non è valido"
 
-#: utils/mb/mbutils.c:467
+#: utils/mb/mbutils.c:469
 #, c-format
 msgid "invalid destination encoding name \"%s\""
 msgstr "il nome della codifica di destinazione \"%s\" non è valido"
 
-#: utils/mb/mbutils.c:589
+#: utils/mb/mbutils.c:609
 #, c-format
 msgid "invalid byte value for encoding \"%s\": 0x%02x"
 msgstr "byte non valido per la codifica \"%s\": 0x%02x"
 
-#: utils/mb/wchar.c:2018
+#: utils/mb/mbutils.c:951
+#, c-format
+msgid "bind_textdomain_codeset failed"
+msgstr "bind_textdomain_codeset fallito"
+
+#: utils/mb/wchar.c:2009
 #, c-format
 msgid "invalid byte sequence for encoding \"%s\": %s"
 msgstr "sequenza di byte non valida per la codifica \"%s\": %s"
 
-#: utils/mb/wchar.c:2051
+#: utils/mb/wchar.c:2042
 #, c-format
 msgid "character with byte sequence %s in encoding \"%s\" has no equivalent in encoding \"%s\""
 msgstr "il carattere con sequenza di byte %s nella codifica \"%s\" non ha un equivalente nella codifica \"%s\""
 
-#: utils/misc/guc.c:519
+#: utils/misc/guc.c:552
 msgid "Ungrouped"
 msgstr "Varie"
 
-#: utils/misc/guc.c:521
+#: utils/misc/guc.c:554
 msgid "File Locations"
 msgstr "Posizione dei File"
 
-#: utils/misc/guc.c:523
+#: utils/misc/guc.c:556
 msgid "Connections and Authentication"
 msgstr "Connessioni ed Autenticazione"
 
-#: utils/misc/guc.c:525
+#: utils/misc/guc.c:558
 msgid "Connections and Authentication / Connection Settings"
 msgstr "Connessioni ed Autenticazione / Impostazioni di Connessione"
 
-#: utils/misc/guc.c:527
+#: utils/misc/guc.c:560
 msgid "Connections and Authentication / Security and Authentication"
 msgstr "Connessioni ed Autenticazione / Sicurezza ed Autenticazione"
 
-#: utils/misc/guc.c:529
+#: utils/misc/guc.c:562
 msgid "Resource Usage"
 msgstr "Uso delle Risorse"
 
-#: utils/misc/guc.c:531
+#: utils/misc/guc.c:564
 msgid "Resource Usage / Memory"
 msgstr "Uso delle Risorse / Memoria"
 
-#: utils/misc/guc.c:533
+#: utils/misc/guc.c:566
 msgid "Resource Usage / Disk"
 msgstr "Uso delle Risorse / Disco"
 
-#: utils/misc/guc.c:535
+#: utils/misc/guc.c:568
 msgid "Resource Usage / Kernel Resources"
 msgstr "Uso delle Risorse / Risorse del Kernel"
 
-#: utils/misc/guc.c:537
+#: utils/misc/guc.c:570
 msgid "Resource Usage / Cost-Based Vacuum Delay"
 msgstr "Uso delle Risorse / Intervallo di Vacuum Basato sul Costo"
 
-#: utils/misc/guc.c:539
+#: utils/misc/guc.c:572
 msgid "Resource Usage / Background Writer"
 msgstr "Uso delle Risorse / Scrittura in Background"
 
-#: utils/misc/guc.c:541
+#: utils/misc/guc.c:574
 msgid "Resource Usage / Asynchronous Behavior"
 msgstr "Uso delle Risorse / Comportamento Asincrono"
 
-#: utils/misc/guc.c:543
+#: utils/misc/guc.c:576
 msgid "Write-Ahead Log"
 msgstr "Write-Ahead Log"
 
-#: utils/misc/guc.c:545
+#: utils/misc/guc.c:578
 msgid "Write-Ahead Log / Settings"
 msgstr "Write-Ahead Log / Impostazioni"
 
-#: utils/misc/guc.c:547
+#: utils/misc/guc.c:580
 msgid "Write-Ahead Log / Checkpoints"
 msgstr "Write-Ahead Log / Checkpoint"
 
-#: utils/misc/guc.c:549
+#: utils/misc/guc.c:582
 msgid "Write-Ahead Log / Archiving"
 msgstr "Write-Ahead Log / Archiviazione"
 
-#: utils/misc/guc.c:551
+#: utils/misc/guc.c:584
 msgid "Replication"
 msgstr "Replica"
 
-#: utils/misc/guc.c:553
+#: utils/misc/guc.c:586
 msgid "Replication / Sending Servers"
 msgstr "Replica / Server di Invio"
 
-#: utils/misc/guc.c:555
+#: utils/misc/guc.c:588
 msgid "Replication / Master Server"
 msgstr "Replica / Server Master"
 
-#: utils/misc/guc.c:557
+#: utils/misc/guc.c:590
 msgid "Replication / Standby Servers"
 msgstr "Replica / Serve in Standby"
 
-#: utils/misc/guc.c:559
+#: utils/misc/guc.c:592
 msgid "Query Tuning"
 msgstr "Tuning delle Query"
 
-#: utils/misc/guc.c:561
+#: utils/misc/guc.c:594
 msgid "Query Tuning / Planner Method Configuration"
 msgstr "Tuning delle Query / Configurazione dei Metodi del Planner"
 
-#: utils/misc/guc.c:563
+#: utils/misc/guc.c:596
 msgid "Query Tuning / Planner Cost Constants"
 msgstr "Tuning delle Query / Costanti di Costo del Planner"
 
-#: utils/misc/guc.c:565
+#: utils/misc/guc.c:598
 msgid "Query Tuning / Genetic Query Optimizer"
 msgstr "Tuning delle Query / Ottimizzatore Genetico delle Query"
 
-#: utils/misc/guc.c:567
+#: utils/misc/guc.c:600
 msgid "Query Tuning / Other Planner Options"
 msgstr "Tuning delle Query / Altre Opzioni del Planner"
 
-#: utils/misc/guc.c:569
+#: utils/misc/guc.c:602
 msgid "Reporting and Logging"
 msgstr "Report e Log"
 
-#: utils/misc/guc.c:571
+#: utils/misc/guc.c:604
 msgid "Reporting and Logging / Where to Log"
 msgstr "Report e Log / Dove inviare i Log"
 
-#: utils/misc/guc.c:573
+#: utils/misc/guc.c:606
 msgid "Reporting and Logging / When to Log"
 msgstr "Report e Log / Quando inviare i Log"
 
-#: utils/misc/guc.c:575
+#: utils/misc/guc.c:608
 msgid "Reporting and Logging / What to Log"
 msgstr "Report e Log / Cosa indicare nei Log"
 
-#: utils/misc/guc.c:577
+#: utils/misc/guc.c:610
 msgid "Statistics"
 msgstr "Statistiche"
 
-#: utils/misc/guc.c:579
+#: utils/misc/guc.c:612
 msgid "Statistics / Monitoring"
 msgstr "Statistiche / Monitoring"
 
-#: utils/misc/guc.c:581
+#: utils/misc/guc.c:614
 msgid "Statistics / Query and Index Statistics Collector"
 msgstr "Statistiche / Raccolta delle Statistiche su Query e Indici"
 
-#: utils/misc/guc.c:583
+#: utils/misc/guc.c:616
 msgid "Autovacuum"
 msgstr "Autovacuum"
 
-#: utils/misc/guc.c:585
+#: utils/misc/guc.c:618
 msgid "Client Connection Defaults"
 msgstr "Valori Predefiniti Connessioni Client"
 
-#: utils/misc/guc.c:587
+#: utils/misc/guc.c:620
 msgid "Client Connection Defaults / Statement Behavior"
 msgstr "Valori Predefiniti Connessioni Client / Comportamento Istruzioni"
 
-#: utils/misc/guc.c:589
+#: utils/misc/guc.c:622
 msgid "Client Connection Defaults / Locale and Formatting"
 msgstr "Valori Predefiniti Connessioni Client / Locale e Formattazione"
 
-#: utils/misc/guc.c:591
+#: utils/misc/guc.c:624
+msgid "Client Connection Defaults / Shared Library Preloading"
+msgstr "Valori Predefiniti Connessioni Client / Precaricamento Librerie Condivise"
+
+#: utils/misc/guc.c:626
 msgid "Client Connection Defaults / Other Defaults"
 msgstr "Valori Predefiniti Connessioni Client / Altri Default"
 
-#: utils/misc/guc.c:593
+#: utils/misc/guc.c:628
 msgid "Lock Management"
 msgstr "Gestione dei Lock"
 
-#: utils/misc/guc.c:595
+#: utils/misc/guc.c:630
 msgid "Version and Platform Compatibility"
 msgstr "Versione e Compatibilità della Piattaforma"
 
-#: utils/misc/guc.c:597
+#: utils/misc/guc.c:632
 msgid "Version and Platform Compatibility / Previous PostgreSQL Versions"
 msgstr "Versione e Compatibilità della Piattaforma / Versioni Precedenti di PostgreSQL"
 
-#: utils/misc/guc.c:599
+#: utils/misc/guc.c:634
 msgid "Version and Platform Compatibility / Other Platforms and Clients"
 msgstr "Versione e Compatibilità della Piattaforma / Altre Piattaforme e Client"
 
-#: utils/misc/guc.c:601
+#: utils/misc/guc.c:636
 msgid "Error Handling"
 msgstr "Gestione degli Errori"
 
-#: utils/misc/guc.c:603
+#: utils/misc/guc.c:638
 msgid "Preset Options"
 msgstr "Opzioni Preimpostate"
 
-#: utils/misc/guc.c:605
+#: utils/misc/guc.c:640
 msgid "Customized Options"
 msgstr "Opzioni Personalizzate"
 
-#: utils/misc/guc.c:607
+#: utils/misc/guc.c:642
 msgid "Developer Options"
 msgstr "Opzioni di Sviluppo"
 
-#: utils/misc/guc.c:661
+#: utils/misc/guc.c:696
 msgid "Enables the planner's use of sequential-scan plans."
 msgstr "Abilita l'uso da parte del planner dei piani di scansione sequenziale."
 
-#: utils/misc/guc.c:670
+#: utils/misc/guc.c:705
 msgid "Enables the planner's use of index-scan plans."
 msgstr "Abilita l'uso da parte del planner dei piani di scansione degli indici."
 
-#: utils/misc/guc.c:679
+#: utils/misc/guc.c:714
 msgid "Enables the planner's use of index-only-scan plans."
 msgstr "Abilita l'uso da parte del planner dei piani di scansione dei soli indici."
 
-#: utils/misc/guc.c:688
+#: utils/misc/guc.c:723
 msgid "Enables the planner's use of bitmap-scan plans."
 msgstr "Abilita l'uso da parte del planner dei piani di scansione bitmap."
 
-#: utils/misc/guc.c:697
+#: utils/misc/guc.c:732
 msgid "Enables the planner's use of TID scan plans."
 msgstr "Abilita l'uso da parte del planner dei piani di scansione TID."
 
-#: utils/misc/guc.c:706
+#: utils/misc/guc.c:741
 msgid "Enables the planner's use of explicit sort steps."
 msgstr "Abilita l'uso da parte del planner di passaggi di ordinamento esplicito."
 
-#: utils/misc/guc.c:715
+#: utils/misc/guc.c:750
 msgid "Enables the planner's use of hashed aggregation plans."
 msgstr "Abilita l'uso da parte del planner di piani di aggregazione basati su hash."
 
-#: utils/misc/guc.c:724
+#: utils/misc/guc.c:759
 msgid "Enables the planner's use of materialization."
 msgstr "Abilita l'uso da parte del planner di materializzazione."
 
-#: utils/misc/guc.c:733
+#: utils/misc/guc.c:768
 msgid "Enables the planner's use of nested-loop join plans."
 msgstr "Abilita l'uso da parte del planner di piani di join annidati."
 
-#: utils/misc/guc.c:742
+#: utils/misc/guc.c:777
 msgid "Enables the planner's use of merge join plans."
 msgstr "Abilita l'uso da parte del planner di piani di join ad unione."
 
-#: utils/misc/guc.c:751
+#: utils/misc/guc.c:786
 msgid "Enables the planner's use of hash join plans."
 msgstr "Abilita l'uso da parte del planner di piani di join basati su hash."
 
-#: utils/misc/guc.c:760
+#: utils/misc/guc.c:795
 msgid "Enables genetic query optimization."
 msgstr "Abilita l'ottimizzatore genetico di query."
 
-#: utils/misc/guc.c:761
+#: utils/misc/guc.c:796
 msgid "This algorithm attempts to do planning without exhaustive searching."
 msgstr "Questo algoritmo cerca di realizzare piani senza effettuare una ricerca esaustiva."
 
-#: utils/misc/guc.c:771
+#: utils/misc/guc.c:806
 msgid "Shows whether the current user is a superuser."
 msgstr "Mostra se l'utente attuale è un superutente o meno."
 
-#: utils/misc/guc.c:781
+#: utils/misc/guc.c:816
 msgid "Enables advertising the server via Bonjour."
 msgstr "Abilita la pubblicazione del server via Bonjour."
 
-#: utils/misc/guc.c:790
+#: utils/misc/guc.c:825
 msgid "Enables SSL connections."
 msgstr "Abilita le connessioni SSL."
 
-#: utils/misc/guc.c:799
+#: utils/misc/guc.c:834
+msgid "Give priority to server ciphersuite order."
+msgstr "Dai priorità all'ordine di cifrari del server."
+
+#: utils/misc/guc.c:843
 msgid "Forces synchronization of updates to disk."
 msgstr "Forza la sincronizzazione degli aggiornamenti sul disco."
 
-#: utils/misc/guc.c:800
+#: utils/misc/guc.c:844
 msgid "The server will use the fsync() system call in several places to make sure that updates are physically written to disk. This insures that a database cluster will recover to a consistent state after an operating system or hardware crash."
 msgstr "Il server userà in diversi punti la chiamata di sistema fsync() per assicurarsi che gli aggiornamenti vengano scritti fisicamente sul disco. Questo assicura che un cluster di database possa essere recuperato in uno stato consistente dopo un crash di sistema o dell'hardware."
 
-#: utils/misc/guc.c:811
+#: utils/misc/guc.c:855
 msgid "Continues processing after a checksum failure."
 msgstr "Condinua l'elaborazione dopo un errore in una somma di controllo."
 
-#: utils/misc/guc.c:812
+#: utils/misc/guc.c:856
 msgid "Detection of a checksum failure normally causes PostgreSQL to report an error, aborting the current transaction. Setting ignore_checksum_failure to true causes the system to ignore the failure (but still report a warning), and continue processing. This behavior could cause crashes or other serious problems. Only has an effect if checksums are enabled."
 msgstr "La rilevazione di un errore in una somma di controllo di solito fa generare a PostgreSQL un errore che fa abortire la transazione corrente. Impostare ignore_checksum_failure a \"true\" fa sì che il sistema ignori l'errore (che viene riportato come un avviso), consentendo al processo di continuare. Questo comportamento potrebbe causare crash o altri problemi gravi. Ha effetto solo se se somme di controllo sono abilitate."
 
-#: utils/misc/guc.c:826
+#: utils/misc/guc.c:870
 msgid "Continues processing past damaged page headers."
 msgstr "Continua l'esecuzione oltre le intestazioni di pagina danneggiate."
 
-#: utils/misc/guc.c:827
+#: utils/misc/guc.c:871
 msgid "Detection of a damaged page header normally causes PostgreSQL to report an error, aborting the current transaction. Setting zero_damaged_pages to true causes the system to instead report a warning, zero out the damaged page, and continue processing. This behavior will destroy data, namely all the rows on the damaged page."
 msgstr "Il rilevamento di una intestazione di pagina danneggiata normalmente fa sì che PostgreSQL segnali un errore, interrompendo la transazione corrente. L'attivazione di zero_damaged_pages fa sì che il sistema invece riporti un warning, azzeri la pagina danneggiata e continui l'esecuzione. Questo comportamento può distruggere dei dati, in particolare tutte quelle righe situate nella pagina danneggiata."
 
-#: utils/misc/guc.c:840
+#: utils/misc/guc.c:884
 msgid "Writes full pages to WAL when first modified after a checkpoint."
 msgstr "Scrivi pagine intere nel WAL non appena modificate dopo un checkpoint."
 
-#: utils/misc/guc.c:841
+#: utils/misc/guc.c:885
 msgid "A page write in process during an operating system crash might be only partially written to disk.  During recovery, the row changes stored in WAL are not enough to recover.  This option writes pages when first modified after a checkpoint to WAL so full recovery is possible."
 msgstr "La scrittura di una pagina durante un crash del sistema operativo potrebbe essere stata scritta su disco solo parzialmente. Durante il ripristino, le variazioni di riga memorizzate nel WAL non sono sufficienti al ripristino. Questa operazione scrive le pagine nel WAL appena modificate dopo un checkpoint nel WAL in maniera da rendere possibile un ripristino completo."
 
-#: utils/misc/guc.c:853
+#: utils/misc/guc.c:898
+msgid "Writes full pages to WAL when first modified after a checkpoint, even for a non-critical modifications"
+msgstr "Scrivi pagine complete nel WAL appena modificate dopo un checkpoint, anche dopo modifiche non critiche"
+
+#: utils/misc/guc.c:908
 msgid "Logs each checkpoint."
 msgstr "Registra nel log ogni checkpoint."
 
-#: utils/misc/guc.c:862
+#: utils/misc/guc.c:917
 msgid "Logs each successful connection."
 msgstr "Registra nel log tutte le connessioni avvenute con successo."
 
-#: utils/misc/guc.c:871
+#: utils/misc/guc.c:926
 msgid "Logs end of a session, including duration."
 msgstr "Registra nel log la fine delle sessioni, compresa la sua durata."
 
-#: utils/misc/guc.c:880
+#: utils/misc/guc.c:935
 msgid "Turns on various assertion checks."
 msgstr "Abilita vari controlli di asserzione."
 
-#: utils/misc/guc.c:881
+#: utils/misc/guc.c:936
 msgid "This is a debugging aid."
 msgstr "Questo è un ausilio al debug."
 
-#: utils/misc/guc.c:895
+#: utils/misc/guc.c:950
 msgid "Terminate session on any error."
 msgstr "Termina la sessione su qualunque errore."
 
-#: utils/misc/guc.c:904
+#: utils/misc/guc.c:959
 msgid "Reinitialize server after backend crash."
 msgstr "Reinizializza il server dopo un crash del backend."
 
-#: utils/misc/guc.c:914
+#: utils/misc/guc.c:969
 msgid "Logs the duration of each completed SQL statement."
 msgstr "Registra nel log la durata di ogni istruzione SQL completata."
 
-#: utils/misc/guc.c:923
+#: utils/misc/guc.c:978
 msgid "Logs each query's parse tree."
 msgstr "Registra nel log l'albero di parsing di tutte le query."
 
-#: utils/misc/guc.c:932
+#: utils/misc/guc.c:987
 msgid "Logs each query's rewritten parse tree."
 msgstr "Registra nel log l'albero di parsing riscritto di tutte le query."
 
-#: utils/misc/guc.c:941
+#: utils/misc/guc.c:996
 msgid "Logs each query's execution plan."
 msgstr "Registra nel log il piano di esecuzione di tutte le query."
 
-#: utils/misc/guc.c:950
+#: utils/misc/guc.c:1005
 msgid "Indents parse and plan tree displays."
 msgstr "Indenta gli alberi di parsing e dei piani di esecuzione."
 
-#: utils/misc/guc.c:959
+#: utils/misc/guc.c:1014
 msgid "Writes parser performance statistics to the server log."
 msgstr "Registra nel log del server le statistiche sulle prestazioni del parser."
 
-#: utils/misc/guc.c:968
+#: utils/misc/guc.c:1023
 msgid "Writes planner performance statistics to the server log."
 msgstr "Registra nel log del server le statistiche sulle prestazioni del planner."
 
-#: utils/misc/guc.c:977
+#: utils/misc/guc.c:1032
 msgid "Writes executor performance statistics to the server log."
 msgstr "Registra nel log del server le statistiche sulle prestazioni dell'esecutore."
 
-#: utils/misc/guc.c:986
+#: utils/misc/guc.c:1041
 msgid "Writes cumulative performance statistics to the server log."
 msgstr "Registra nel log del server le statistiche sulle prestazioni cumulative."
 
-#: utils/misc/guc.c:996 utils/misc/guc.c:1070 utils/misc/guc.c:1080
-#: utils/misc/guc.c:1090 utils/misc/guc.c:1100 utils/misc/guc.c:1847
-#: utils/misc/guc.c:1857
-msgid "No description available."
-msgstr "Nessuna descrizione disponibile."
+#: utils/misc/guc.c:1051
+msgid "Logs system resource usage statistics (memory and CPU) on various B-tree operations."
+msgstr "Registra nel log statistiche sull'uso di risorse di sistema (memoria e CPU) su varie operazioni B-tree."
 
-#: utils/misc/guc.c:1008
+#: utils/misc/guc.c:1063
 msgid "Collects information about executing commands."
 msgstr "Raccogli informazioni sull'esecuzione dei comandi."
 
-#: utils/misc/guc.c:1009
+#: utils/misc/guc.c:1064
 msgid "Enables the collection of information on the currently executing command of each session, along with the time at which that command began execution."
 msgstr "Abilita la raccolta di informazioni sui comandi in esecuzione per ogni sessione, insieme all'orario in cui l'esecuzione del comando è iniziata."
 
-#: utils/misc/guc.c:1019
+#: utils/misc/guc.c:1074
 msgid "Collects statistics on database activity."
 msgstr "Raccogli statistiche sull'attività del database."
 
-#: utils/misc/guc.c:1028
+#: utils/misc/guc.c:1083
 msgid "Collects timing statistics for database I/O activity."
 msgstr "Raccogli statistiche sull'attività di I/O del database."
 
-#: utils/misc/guc.c:1038
+#: utils/misc/guc.c:1093
 msgid "Updates the process title to show the active SQL command."
 msgstr "Aggiorna il titolo del processo per indicare il comando SQL in esecuzione."
 
-#: utils/misc/guc.c:1039
+#: utils/misc/guc.c:1094
 msgid "Enables updating of the process title every time a new SQL command is received by the server."
 msgstr "Abilita l'aggiornamento del titolo del processo ogni volta che un nuovo comando SQL viene ricevuto dal server."
 
-#: utils/misc/guc.c:1048
+#: utils/misc/guc.c:1103
 msgid "Starts the autovacuum subprocess."
 msgstr "Avvia il sottoprocesso autovacuum."
 
-#: utils/misc/guc.c:1058
+#: utils/misc/guc.c:1113
 msgid "Generates debugging output for LISTEN and NOTIFY."
 msgstr "Genera un output di debug per LISTEN e NOTIFY."
 
-#: utils/misc/guc.c:1112
+#: utils/misc/guc.c:1125
+msgid "Emits information about lock usage."
+msgstr "Emette informazioni sull'uso dei lock."
+
+#: utils/misc/guc.c:1135
+msgid "Emits information about user lock usage."
+msgstr "Emette informazioni sull'uso dei lock utente."
+
+#: utils/misc/guc.c:1145
+msgid "Emits information about lightweight lock usage."
+msgstr "Emette informazioni sull'uso dei lock leggeri."
+
+#: utils/misc/guc.c:1155
+msgid "Dumps information about all current locks when a deadlock timeout occurs."
+msgstr "Emette informazioni su tutti i lock attivi quando avviene un timeout di lock."
+
+#: utils/misc/guc.c:1167
 msgid "Logs long lock waits."
 msgstr "Inserisci nel log le attese lunghe su lock."
 
-#: utils/misc/guc.c:1122
+#: utils/misc/guc.c:1177
 msgid "Logs the host name in the connection logs."
 msgstr "Inserisci nel log lo host name delle connessioni."
 
-#: utils/misc/guc.c:1123
+#: utils/misc/guc.c:1178
 msgid "By default, connection logs only show the IP address of the connecting host. If you want them to show the host name you can turn this on, but depending on your host name resolution setup it might impose a non-negligible performance penalty."
 msgstr "Normalmente, viene inserito nel log solo l'indirizzo IP dell'host connesso. Se vuoi mostrare anche il nome host puoi attivando questa parametro ma, a seconda di come è definito il sistema di risoluzione dei nomi, ciò potrebbe comportare una penalizzazione delle prestazioni non trascurabile."
 
-#: utils/misc/guc.c:1134
+#: utils/misc/guc.c:1189
 msgid "Causes subtables to be included by default in various commands."
 msgstr "Fa in modo che le sotto-tabelle vengano incluse in maniera predefinita in vari comandi."
 
-#: utils/misc/guc.c:1143
+#: utils/misc/guc.c:1198
 msgid "Encrypt passwords."
 msgstr "Cripta le password."
 
-#: utils/misc/guc.c:1144
+#: utils/misc/guc.c:1199
 msgid "When a password is specified in CREATE USER or ALTER USER without writing either ENCRYPTED or UNENCRYPTED, this parameter determines whether the password is to be encrypted."
 msgstr "Quando si indica una password in CREATE USER o ALTER USER senza indicare ENCRYPTED o UNENCRYPTED, questo parametro determina se la password debba essere criptata o meno."
 
-#: utils/misc/guc.c:1154
+#: utils/misc/guc.c:1209
 msgid "Treats \"expr=NULL\" as \"expr IS NULL\"."
 msgstr "Tratta l'espressione \"expr=NULL\" come \"expr IS NULL\"."
 
-#: utils/misc/guc.c:1155
+#: utils/misc/guc.c:1210
 msgid "When turned on, expressions of the form expr = NULL (or NULL = expr) are treated as expr IS NULL, that is, they return true if expr evaluates to the null value, and false otherwise. The correct behavior of expr = NULL is to always return null (unknown)."
 msgstr "Se abilitato, le espressioni nella forma expr = NULL (o NULL = expr) vengono trattate come expr IS NULL, in modo cioè che restituiscano TRUE se expr viene valutato con valore NULL e falso in ogni altro caso. Il comportamento corretto prevede che expr = NULL valga sempre NULL (sconosciuto)."
 
-#: utils/misc/guc.c:1167
+#: utils/misc/guc.c:1222
 msgid "Enables per-database user names."
 msgstr "Abilita nomi di utenti diversificati per ogni database."
 
-#: utils/misc/guc.c:1177
+#: utils/misc/guc.c:1232
 msgid "This parameter doesn't do anything."
 msgstr "Questo parametro non comporta alcuna azione."
 
-#: utils/misc/guc.c:1178
+#: utils/misc/guc.c:1233
 msgid "It's just here so that we won't choke on SET AUTOCOMMIT TO ON from 7.3-vintage clients."
 msgstr "Si trova qui in modo da non creare problemi con la SET AUTOCOMMIT TO ON con i client vecchio tipo v7.3."
 
-#: utils/misc/guc.c:1187
+#: utils/misc/guc.c:1242
 msgid "Sets the default read-only status of new transactions."
 msgstr "Imposta lo stato predefinito di sola lettura per le nuove transazioni."
 
-#: utils/misc/guc.c:1196
+#: utils/misc/guc.c:1251
 msgid "Sets the current transaction's read-only status."
 msgstr "Imposta lo stato di sola lettura per la transazione corrente."
 
-#: utils/misc/guc.c:1206
+#: utils/misc/guc.c:1261
 msgid "Sets the default deferrable status of new transactions."
 msgstr "Imposta lo stato predefinito deferibile per le nuove transazioni."
 
-#: utils/misc/guc.c:1215
+#: utils/misc/guc.c:1270
 msgid "Whether to defer a read-only serializable transaction until it can be executed with no possible serialization failures."
 msgstr "Indica se deferire una transazione serializzabile in sola lettura finché possa essere eseguita senza possibili fallimenti di serializzazione."
 
-#: utils/misc/guc.c:1225
+#: utils/misc/guc.c:1280
 msgid "Check function bodies during CREATE FUNCTION."
 msgstr "Esegui un controllo sulla definizione del corpo durante la CREATE FUNCTION."
 
-#: utils/misc/guc.c:1234
+#: utils/misc/guc.c:1289
 msgid "Enable input of NULL elements in arrays."
 msgstr "Abilita l'input di elementi NULL negli array."
 
-#: utils/misc/guc.c:1235
+#: utils/misc/guc.c:1290
 msgid "When turned on, unquoted NULL in an array input value means a null value; otherwise it is taken literally."
 msgstr "Se abilitato, un NULL senza apici come valore di input in un array indica un valore nullo; altrimenti è preso letteralmente."
 
-#: utils/misc/guc.c:1245
+#: utils/misc/guc.c:1300
 msgid "Create new tables with OIDs by default."
 msgstr "Crea le nuove tabella con gli OID in maniera predefinita."
 
-#: utils/misc/guc.c:1254
+#: utils/misc/guc.c:1309
 msgid "Start a subprocess to capture stderr output and/or csvlogs into log files."
 msgstr "Avvia un sottoprocesso per catturare in un file di log l'output di stderr e/o di csvlog."
 
-#: utils/misc/guc.c:1263
+#: utils/misc/guc.c:1318
 msgid "Truncate existing log files of same name during log rotation."
 msgstr "Tronca un file di log esistente con lo stesso nome durante la rotazione dei log."
 
-#: utils/misc/guc.c:1274
+#: utils/misc/guc.c:1329
 msgid "Emit information about resource usage in sorting."
 msgstr "Genera informazioni sull'uso delle risorse durante gli ordinamenti."
 
-#: utils/misc/guc.c:1288
+#: utils/misc/guc.c:1343
 msgid "Generate debugging output for synchronized scanning."
 msgstr "Genera output di debug per le scansioni sincronizzate."
 
-#: utils/misc/guc.c:1303
+#: utils/misc/guc.c:1358
 msgid "Enable bounded sorting using heap sort."
 msgstr "Abilita il bounded sorting usando lo heap sort."
 
-#: utils/misc/guc.c:1316
+#: utils/misc/guc.c:1371
 msgid "Emit WAL-related debugging output."
 msgstr "Genera output di debug relativo al WAL."
 
-#: utils/misc/guc.c:1328
+#: utils/misc/guc.c:1383
 msgid "Datetimes are integer based."
 msgstr "I valori di data e tempo sono basati su interi."
 
-#: utils/misc/guc.c:1343
+#: utils/misc/guc.c:1398
 msgid "Sets whether Kerberos and GSSAPI user names should be treated as case-insensitive."
 msgstr "Imposta se i nomi di utente con Kerberos e GSSAPI debbano essere trattati come case-insensitive."
 
-#: utils/misc/guc.c:1353
+#: utils/misc/guc.c:1408
 msgid "Warn about backslash escapes in ordinary string literals."
 msgstr "Avverti sull'uso degli escape con backslash nei letterali stringa ordinarie."
 
-#: utils/misc/guc.c:1363
+#: utils/misc/guc.c:1418
 msgid "Causes '...' strings to treat backslashes literally."
 msgstr "Fa sì che le stringhe '...' trattino i backslash letteralmente."
 
-#: utils/misc/guc.c:1374
+#: utils/misc/guc.c:1429
 msgid "Enable synchronized sequential scans."
 msgstr "Abilita le scansioni sequenziali sincronizzate."
 
-#: utils/misc/guc.c:1384
+#: utils/misc/guc.c:1439
 msgid "Allows archiving of WAL files using archive_command."
 msgstr "Consente l'archiviazione dei file WAL con l'uso di archive_command."
 
-#: utils/misc/guc.c:1394
+#: utils/misc/guc.c:1449
 msgid "Allows connections and queries during recovery."
 msgstr "Consente connessioni e query durante il recupero"
 
-#: utils/misc/guc.c:1404
+#: utils/misc/guc.c:1459
 msgid "Allows feedback from a hot standby to the primary that will avoid query conflicts."
 msgstr "Consente un feedback da un hot standby al primario che eviterà conflitti di query"
 
-#: utils/misc/guc.c:1414
+#: utils/misc/guc.c:1469
 msgid "Allows modifications of the structure of system tables."
 msgstr "Consente le modifiche alla struttura delle tabelle di sistema."
 
-#: utils/misc/guc.c:1425
+#: utils/misc/guc.c:1480
 msgid "Disables reading from system indexes."
 msgstr "Disabilita la lettura dagli indici di sistema."
 
-#: utils/misc/guc.c:1426
+#: utils/misc/guc.c:1481
 msgid "It does not prevent updating the indexes, so it is safe to use.  The worst consequence is slowness."
 msgstr "Non impedisce l'aggiornamento degli indici ed è perciò utilizzabile tranquillamente. Al peggio causa rallentamenti."
 
-#: utils/misc/guc.c:1437
+#: utils/misc/guc.c:1492
 msgid "Enables backward compatibility mode for privilege checks on large objects."
 msgstr "Abilita la modalità compatibile col passato del controllo dei privilegi sui large object."
 
-#: utils/misc/guc.c:1438
+#: utils/misc/guc.c:1493
 msgid "Skips privilege checks when reading or modifying large objects, for compatibility with PostgreSQL releases prior to 9.0."
 msgstr "Evita il controllo dei privilegi quando si leggono o modificano large object, per compatibilità con versioni di PostgreSQL precedenti la 9.0."
 
-#: utils/misc/guc.c:1448
+#: utils/misc/guc.c:1503
 msgid "When generating SQL fragments, quote all identifiers."
 msgstr "Quando vengono generati frammenti SQL, metti tra virgolette tutti gli identificatori."
 
-#: utils/misc/guc.c:1467
+#: utils/misc/guc.c:1513
+msgid "Shows whether data checksums are turned on for this cluster."
+msgstr "Mostra se i checksum di dati sono attivi in questo cluster."
+
+#: utils/misc/guc.c:1533
 msgid "Forces a switch to the next xlog file if a new file has not been started within N seconds."
 msgstr "Forza il passaggio al successivo file xlog se un nuovo file non è avviato entro N secondi."
 
-#: utils/misc/guc.c:1478
+#: utils/misc/guc.c:1544
 msgid "Waits N seconds on connection startup after authentication."
 msgstr "Attendi N secondi all'avvio della connessione dopo l'autenticazione."
 
-#: utils/misc/guc.c:1479 utils/misc/guc.c:1961
+#: utils/misc/guc.c:1545 utils/misc/guc.c:2047
 msgid "This allows attaching a debugger to the process."
 msgstr "Ciò consente di agganciare un debugger al processo."
 
-#: utils/misc/guc.c:1488
+#: utils/misc/guc.c:1554
 msgid "Sets the default statistics target."
 msgstr "Definisce la destinazione delle statistiche di default."
 
-#: utils/misc/guc.c:1489
+#: utils/misc/guc.c:1555
 msgid "This applies to table columns that have not had a column-specific target set via ALTER TABLE SET STATISTICS."
 msgstr "Questo vale per le colonne di tabelle che non hanno definito una destinazione specifica per colonne per mezzo di un ALTER TABLE SET STATISTICS."
 
-#: utils/misc/guc.c:1498
+#: utils/misc/guc.c:1564
 msgid "Sets the FROM-list size beyond which subqueries are not collapsed."
 msgstr "Definisce la dimensione della lista FROM oltre la quale le sottoquery non vengono ridotte."
 
-#: utils/misc/guc.c:1500
+#: utils/misc/guc.c:1566
 msgid "The planner will merge subqueries into upper queries if the resulting FROM list would have no more than this many items."
 msgstr "Il planner fonderà le sottoquery nelle query superiori se la lista FROM risultante avrebbe non più di questi elementi."
 
-#: utils/misc/guc.c:1510
+#: utils/misc/guc.c:1576
 msgid "Sets the FROM-list size beyond which JOIN constructs are not flattened."
 msgstr "Definisce la dimensione della lista FROM oltre la quale i costrutti JOIN non vengono più appiattiti."
 
-#: utils/misc/guc.c:1512
+#: utils/misc/guc.c:1578
 msgid "The planner will flatten explicit JOIN constructs into lists of FROM items whenever a list of no more than this many items would result."
 msgstr "Il planner appiattisce i costrutti di JOIN espliciti in liste di elementi FROM ogni volta che ne risulterebbe una lista con non più di questi elementi."
 
-#: utils/misc/guc.c:1522
+#: utils/misc/guc.c:1588
 msgid "Sets the threshold of FROM items beyond which GEQO is used."
 msgstr "Definisce la soglia di elementi FROM oltre la quale viene usato il GEQO."
 
-#: utils/misc/guc.c:1531
+#: utils/misc/guc.c:1597
 msgid "GEQO: effort is used to set the default for other GEQO parameters."
 msgstr "GEQO: prova a definire i default per gli altri parametri di GEQO."
 
-#: utils/misc/guc.c:1540
+#: utils/misc/guc.c:1606
 msgid "GEQO: number of individuals in the population."
 msgstr "GEQO: numero di individui nella popolazione."
 
-#: utils/misc/guc.c:1541 utils/misc/guc.c:1550
+#: utils/misc/guc.c:1607 utils/misc/guc.c:1616
 msgid "Zero selects a suitable default value."
 msgstr "Lo zero selezione un valore ammissibile come default."
 
-#: utils/misc/guc.c:1549
+#: utils/misc/guc.c:1615
 msgid "GEQO: number of iterations of the algorithm."
 msgstr "GEQO: numero di iterazioni dell'algoritmo."
 
-#: utils/misc/guc.c:1560
+#: utils/misc/guc.c:1626
 msgid "Sets the time to wait on a lock before checking for deadlock."
 msgstr "Definisce il tempo di attesa su un lock prima di verificare si tratti di un deadlock."
 
-#: utils/misc/guc.c:1571
+#: utils/misc/guc.c:1637
 msgid "Sets the maximum delay before canceling queries when a hot standby server is processing archived WAL data."
 msgstr "Imposta l'intervallo massimo prima di annullare le query quando un server in hot standby sta processando dati da un WAL archiviato."
 
-#: utils/misc/guc.c:1582
+#: utils/misc/guc.c:1648
 msgid "Sets the maximum delay before canceling queries when a hot standby server is processing streamed WAL data."
 msgstr "Imposta l'intervallo massimo prima di annullare le query quando un server in hot standby sta processando dati da un WAL streamed."
 
-#: utils/misc/guc.c:1593
+#: utils/misc/guc.c:1659
 msgid "Sets the maximum interval between WAL receiver status reports to the primary."
 msgstr "Imposta l'intervallo massimo tra i rapporti di stato del ricevitore dei WAL al primario."
 
-#: utils/misc/guc.c:1604
+#: utils/misc/guc.c:1670
 msgid "Sets the maximum wait time to receive data from the primary."
 msgstr "Imposta un tempo massimo di attesa per la ricezione di dati dal primario."
 
-#: utils/misc/guc.c:1615
+#: utils/misc/guc.c:1681
 msgid "Sets the maximum number of concurrent connections."
 msgstr "Imposta il numero massimo di connessioni concorrenti."
 
-#: utils/misc/guc.c:1625
+#: utils/misc/guc.c:1691
 msgid "Sets the number of connection slots reserved for superusers."
 msgstr "Imposta il numero di slot per connessioni riservate ai superutenti."
 
-#: utils/misc/guc.c:1639
+#: utils/misc/guc.c:1705
 msgid "Sets the number of shared memory buffers used by the server."
 msgstr "Imposta il numero di buffer di memoria condivisa usati dal server."
 
-#: utils/misc/guc.c:1650
+#: utils/misc/guc.c:1716
 msgid "Sets the maximum number of temporary buffers used by each session."
 msgstr "Definisce il numero massimo di buffer temporanei usati da ogni sessione."
 
-#: utils/misc/guc.c:1661
+#: utils/misc/guc.c:1727
 msgid "Sets the TCP port the server listens on."
 msgstr "Imposta il numero di porta TCP sulla quale il server è in ascolto."
 
-#: utils/misc/guc.c:1671
+#: utils/misc/guc.c:1737
 msgid "Sets the access permissions of the Unix-domain socket."
 msgstr "Imposta i permessi di accesso del socket di dominio Unix."
 
-#: utils/misc/guc.c:1672
+#: utils/misc/guc.c:1738
 msgid "Unix-domain sockets use the usual Unix file system permission set. The parameter value is expected to be a numeric mode specification in the form accepted by the chmod and umask system calls. (To use the customary octal format the number must start with a 0 (zero).)"
 msgstr "I socket di dominio Unix utilizzano i normali permessi dei file system Unix. Il valore del parametro deve essere la specifica numerica dei permessi nella stessa forma accettata dalle chiamate di sistema chmod e umask. (Per usare il classico formato ottale, il valore numerico deve iniziare con 0 (zero).)"
 
-#: utils/misc/guc.c:1686
+#: utils/misc/guc.c:1752
 msgid "Sets the file permissions for log files."
 msgstr "Imposta i permessi dei file di log."
 
-#: utils/misc/guc.c:1687
+#: utils/misc/guc.c:1753
 msgid "The parameter value is expected to be a numeric mode specification in the form accepted by the chmod and umask system calls. (To use the customary octal format the number must start with a 0 (zero).)"
 msgstr "Il valore del parametro deve essere la specifica numerica dei permessi nella stessa forma accettata dalle chiamate di sistema chmod e umask. (Per usare il classico formato ottale, il valore numerico deve iniziare con 0 (zero).)"
 
-#: utils/misc/guc.c:1700
+#: utils/misc/guc.c:1766
 msgid "Sets the maximum memory to be used for query workspaces."
 msgstr "Imposta la quantità massima di memoria utilizzabile per gli spazi di lavoro delle query."
 
-#: utils/misc/guc.c:1701
+#: utils/misc/guc.c:1767
 msgid "This much memory can be used by each internal sort operation and hash table before switching to temporary disk files."
 msgstr "Questa quantità di memoria può essere utilizzata per ogni operazione di ordinamento interno e per ogni tabella hash prima di passare ai file temporanei su disco."
 
-#: utils/misc/guc.c:1713
+#: utils/misc/guc.c:1779
 msgid "Sets the maximum memory to be used for maintenance operations."
 msgstr "Imposta la quantità massima di memoria utilizzabile per le operazioni di manutenzione."
 
-#: utils/misc/guc.c:1714
+#: utils/misc/guc.c:1780
 msgid "This includes operations such as VACUUM and CREATE INDEX."
 msgstr "Queste includono operazioni quali VACUUM e CREATE INDEX."
 
-#: utils/misc/guc.c:1729
+#: utils/misc/guc.c:1795
 msgid "Sets the maximum stack depth, in kilobytes."
 msgstr "Imposta la profondità massima dello stack, in kilobyte."
 
-#: utils/misc/guc.c:1740
+#: utils/misc/guc.c:1806
 msgid "Limits the total size of all temporary files used by each session."
 msgstr "Limita la dimensione totale di tutti i file temporanei usata da ogni sessione"
 
-#: utils/misc/guc.c:1741
+#: utils/misc/guc.c:1807
 msgid "-1 means no limit."
 msgstr "-1 vuol dire senza limiti."
 
-#: utils/misc/guc.c:1751
+#: utils/misc/guc.c:1817
 msgid "Vacuum cost for a page found in the buffer cache."
 msgstr "Costo del VACUUM per una pagina trovata nella cache dei buffer."
 
-#: utils/misc/guc.c:1761
+#: utils/misc/guc.c:1827
 msgid "Vacuum cost for a page not found in the buffer cache."
 msgstr "Costo del VACUUM per una pagina non trovata nella cache dei buffer."
 
-#: utils/misc/guc.c:1771
+#: utils/misc/guc.c:1837
 msgid "Vacuum cost for a page dirtied by vacuum."
 msgstr "Costo del VACUUM per una pagina resa sporca dal VACUUM."
 
-#: utils/misc/guc.c:1781
+#: utils/misc/guc.c:1847
 msgid "Vacuum cost amount available before napping."
 msgstr "Costo totale del VACUUM prima della pausa."
 
-#: utils/misc/guc.c:1791
+#: utils/misc/guc.c:1857
 msgid "Vacuum cost delay in milliseconds."
 msgstr "Il costo del VACUUM come ritardo in millisecondi."
 
-#: utils/misc/guc.c:1802
+#: utils/misc/guc.c:1868
 msgid "Vacuum cost delay in milliseconds, for autovacuum."
 msgstr "Il costo del VACUUM come ritardo in millisecondi, per l'autovacuum."
 
-#: utils/misc/guc.c:1813
+#: utils/misc/guc.c:1879
 msgid "Vacuum cost amount available before napping, for autovacuum."
 msgstr "Il costo totale del VACUUM prima della pausa, per l'autovacuum."
 
-#: utils/misc/guc.c:1823
+#: utils/misc/guc.c:1889
 msgid "Sets the maximum number of simultaneously open files for each server process."
 msgstr "Imposta il numero massimo di file aperti contemporaneamente per ogni processo server."
 
-#: utils/misc/guc.c:1836
+#: utils/misc/guc.c:1902
 msgid "Sets the maximum number of simultaneously prepared transactions."
 msgstr "Imposta il numero massimo di transazioni preparate contemporanee."
 
-#: utils/misc/guc.c:1869
+#: utils/misc/guc.c:1913
+msgid "Sets the minimum OID of tables for tracking locks."
+msgstr "Imposta l'OID minimo delle tabelle per tracciare i lock."
+
+#: utils/misc/guc.c:1914
+msgid "Is used to avoid output on system tables."
+msgstr "È usato per evitare l'output su tabelle di sistema."
+
+#: utils/misc/guc.c:1923
+msgid "Sets the OID of the table with unconditionally lock tracing."
+msgstr "Imposta l'OID delle tabelle con tracciamento dei lock non facoltativo."
+
+#: utils/misc/guc.c:1935
 msgid "Sets the maximum allowed duration of any statement."
 msgstr "Imposta la durata massima consentita per qualsiasi istruzione."
 
-#: utils/misc/guc.c:1870 utils/misc/guc.c:1881
+#: utils/misc/guc.c:1936 utils/misc/guc.c:1947
 msgid "A value of 0 turns off the timeout."
 msgstr "Il valore 0 disabilita il timeout."
 
-#: utils/misc/guc.c:1880
+#: utils/misc/guc.c:1946
 msgid "Sets the maximum allowed duration of any wait for a lock."
 msgstr "Imposta la durata massima consentita di qualsiasi attesa per un lock."
 
-#: utils/misc/guc.c:1891
+#: utils/misc/guc.c:1957
 msgid "Minimum age at which VACUUM should freeze a table row."
 msgstr "Anzianità minima alla quale il VACUUM deve congelare una riga di tabella."
 
-#: utils/misc/guc.c:1901
+#: utils/misc/guc.c:1967
 msgid "Age at which VACUUM should scan whole table to freeze tuples."
 msgstr "Anzianità alla quale il VACUUM deve scandire l'intera tabella per congelarne le tuple."
 
-#: utils/misc/guc.c:1911
+#: utils/misc/guc.c:1977
+msgid "Minimum age at which VACUUM should freeze a MultiXactId in a table row."
+msgstr "Anzianità minima alla quale VACUUM deve congelare un MultiXactId in una riga di tabella."
+
+#: utils/misc/guc.c:1987
+msgid "Multixact age at which VACUUM should scan whole table to freeze tuples."
+msgstr "Anzianità del multixact alla quale VACUUM deve scandire tutta la tabella per congelare le tuple."
+
+#: utils/misc/guc.c:1997
 msgid "Number of transactions by which VACUUM and HOT cleanup should be deferred, if any."
 msgstr "Numero di transazioni per cui VACUUM e pulizia HOT devono essere deferibili, se impostata."
 
-#: utils/misc/guc.c:1924
+#: utils/misc/guc.c:2010
 msgid "Sets the maximum number of locks per transaction."
 msgstr "Definisce il numero massimo di lock per transazione."
 
-#: utils/misc/guc.c:1925
+#: utils/misc/guc.c:2011
 msgid "The shared lock table is sized on the assumption that at most max_locks_per_transaction * max_connections distinct objects will need to be locked at any one time."
 msgstr "La tabella degli shared lock è dimensionata secondo l'assunzione che al massimo max_locks_per_transaction * max_connections distinti oggetti avranno bisogni di essere lockati in un determinato istante."
 
-#: utils/misc/guc.c:1936
+#: utils/misc/guc.c:2022
 msgid "Sets the maximum number of predicate locks per transaction."
 msgstr "Imposta il numero massimo di lock di predicato per transazione."
 
-#: utils/misc/guc.c:1937
+#: utils/misc/guc.c:2023
 msgid "The shared predicate lock table is sized on the assumption that at most max_pred_locks_per_transaction * max_connections distinct objects will need to be locked at any one time."
 msgstr "La tabella dei lock di predicato è dimensionata secondo l'assunzione che al massimo max_pred_locks_per_transaction * max_connections distinti oggetti avranno bisogni di essere lockati in un determinato istante."
 
-#: utils/misc/guc.c:1948
+#: utils/misc/guc.c:2034
 msgid "Sets the maximum allowed time to complete client authentication."
 msgstr "Imposta il tempo massimo consentito per completare l'autenticazione del client."
 
-#: utils/misc/guc.c:1960
+#: utils/misc/guc.c:2046
 msgid "Waits N seconds on connection startup before authentication."
 msgstr "Attendi N secondi all'avvio della connessione prima dell'autenticazione."
 
-#: utils/misc/guc.c:1971
+#: utils/misc/guc.c:2057
 msgid "Sets the number of WAL files held for standby servers."
 msgstr "Imposta il numero di file WAL trattenuti dai server in standby."
 
-#: utils/misc/guc.c:1981
+#: utils/misc/guc.c:2067
 msgid "Sets the maximum distance in log segments between automatic WAL checkpoints."
 msgstr "Imposta la distanza massima in segmenti di log fra due checkpoint del WAL automatico."
 
-#: utils/misc/guc.c:1991
+#: utils/misc/guc.c:2077
 msgid "Sets the maximum time between automatic WAL checkpoints."
 msgstr "Imposta il tempo massimo intercorrente fra due checkpoint automatici del WAL."
 
-#: utils/misc/guc.c:2002
+#: utils/misc/guc.c:2088
 msgid "Enables warnings if checkpoint segments are filled more frequently than this."
 msgstr "Abilita gli avvertimenti se i segmenti dei checkpoint sono riempiti più frequentemente di questo valore."
 
-#: utils/misc/guc.c:2004
+#: utils/misc/guc.c:2090
 msgid "Write a message to the server log if checkpoints caused by the filling of checkpoint segment files happens more frequently than this number of seconds. Zero turns off the warning."
 msgstr "Scrive un messaggio nel log del server se i checkpoint dovuti al riempimento dei file dei segmenti dei checkpoint avvengono più frequentemente di questo numero di secondi. Il valore 0 (zero) disabilita questi avvisi."
 
-#: utils/misc/guc.c:2016
+#: utils/misc/guc.c:2102
 msgid "Sets the number of disk-page buffers in shared memory for WAL."
 msgstr "Imposta il numero di buffer delle pagine su disco in shared memory per il WAL."
 
-#: utils/misc/guc.c:2027
+#: utils/misc/guc.c:2113
 msgid "WAL writer sleep time between WAL flushes."
 msgstr "Tempo di pausa del WAL writer tra due flush dei WAL."
 
-#: utils/misc/guc.c:2039
+#: utils/misc/guc.c:2124
+msgid "Sets the number of locks used for concurrent xlog insertions."
+msgstr "Imposta il numero di lock usati per inserimenti xlog concorrenti."
+
+#: utils/misc/guc.c:2136
 msgid "Sets the maximum number of simultaneously running WAL sender processes."
 msgstr "Imposta il numero massimo di processi WAL sender in esecuzione simultanea."
 
-#: utils/misc/guc.c:2049
+#: utils/misc/guc.c:2147
+msgid "Sets the maximum number of simultaneously defined replication slots."
+msgstr "Imposta il numero massimo di slot di replica definiti simultaneamente."
+
+#: utils/misc/guc.c:2157
 msgid "Sets the maximum time to wait for WAL replication."
 msgstr "Imposta il tempo di attesa massimo per una replica WAL."
 
-#: utils/misc/guc.c:2060
+#: utils/misc/guc.c:2168
 msgid "Sets the delay in microseconds between transaction commit and flushing WAL to disk."
 msgstr "Imposta il ritardo in microsecondi tra il commit della transazione e il flushing del WAL su disco."
 
-#: utils/misc/guc.c:2072
+#: utils/misc/guc.c:2180
 msgid "Sets the minimum concurrent open transactions before performing commit_delay."
 msgstr "Imposta il numero minimo di transazioni concorrenti aperte prima di eseguire un commit_delay"
 
-#: utils/misc/guc.c:2083
+#: utils/misc/guc.c:2191
 msgid "Sets the number of digits displayed for floating-point values."
 msgstr "Imposta il numero di cifre visualizzate per i valori in virgola mobile."
 
-#: utils/misc/guc.c:2084
+#: utils/misc/guc.c:2192
 msgid "This affects real, double precision, and geometric data types. The parameter value is added to the standard number of digits (FLT_DIG or DBL_DIG as appropriate)."
 msgstr "Ciò ha effetto sui tipi di dati real, double precision e geometrici. Il valore del parametro è sommato al numero standard di cifre (FLT_DIG o DBL_DIG a seconda dei casi)."
 
-#: utils/misc/guc.c:2095
+#: utils/misc/guc.c:2203
 msgid "Sets the minimum execution time above which statements will be logged."
 msgstr "Imposta il tempo minimo di esecuzione oltre il quale le istruzioni vengono registrate nel log."
 
-#: utils/misc/guc.c:2097
+#: utils/misc/guc.c:2205
 msgid "Zero prints all queries. -1 turns this feature off."
 msgstr "Il valore 0 (zero) fa sì che tutte le query siano registrate. Il valore -1 disabilita questa caratteristica."
 
-#: utils/misc/guc.c:2107
+#: utils/misc/guc.c:2215
 msgid "Sets the minimum execution time above which autovacuum actions will be logged."
 msgstr "Imposta il tempo minimo di esecuzione oltre il quale le azioni dell'autovacuum vengono registrate nel log."
 
-#: utils/misc/guc.c:2109
+#: utils/misc/guc.c:2217
 msgid "Zero prints all actions. -1 turns autovacuum logging off."
 msgstr "Il valore 0 (zero) fa sì che tutte le azioni siano registrate. Il valore -1 disabilita il logging dell'autovacuum."
 
-#: utils/misc/guc.c:2119
+#: utils/misc/guc.c:2227
 msgid "Background writer sleep time between rounds."
 msgstr "Il tempo di pausa fra due tornate del background writer."
 
-#: utils/misc/guc.c:2130
+#: utils/misc/guc.c:2238
 msgid "Background writer maximum number of LRU pages to flush per round."
 msgstr "Il numero massimo di pagine LRU che il background writer scarica ad ogni tornata."
 
-#: utils/misc/guc.c:2146
+#: utils/misc/guc.c:2254
 msgid "Number of simultaneous requests that can be handled efficiently by the disk subsystem."
 msgstr "Il numero di richieste simultanee che possono essere gestite con efficienza dal sottosistema a dischi."
 
-#: utils/misc/guc.c:2147
+#: utils/misc/guc.c:2255
 msgid "For RAID arrays, this should be approximately the number of drive spindles in the array."
 msgstr "Per i sistemi RAID, questo valore è pari all'incirca al numero di dischi fisici nell'array."
 
-#: utils/misc/guc.c:2160
+#: utils/misc/guc.c:2270
+msgid "Maximum number of concurrent worker processes."
+msgstr "Numero massimo di processi worker concorrenti."
+
+#: utils/misc/guc.c:2280
 msgid "Automatic log file rotation will occur after N minutes."
 msgstr "La rotazione automatica dei log avviene dopo N minuti."
 
-#: utils/misc/guc.c:2171
+#: utils/misc/guc.c:2291
 msgid "Automatic log file rotation will occur after N kilobytes."
 msgstr "La rotazione automatica dei log avviene dopo N kilobyte."
 
-#: utils/misc/guc.c:2182
+#: utils/misc/guc.c:2302
 msgid "Shows the maximum number of function arguments."
 msgstr "Mostra il numero massimo di argomenti delle funzioni."
 
-#: utils/misc/guc.c:2193
+#: utils/misc/guc.c:2313
 msgid "Shows the maximum number of index keys."
 msgstr "Mostra il numero massimo di chiavi degli indici."
 
-#: utils/misc/guc.c:2204
+#: utils/misc/guc.c:2324
 msgid "Shows the maximum identifier length."
 msgstr "Mostra la lunghezza massima per gli identificatori."
 
-#: utils/misc/guc.c:2215
+#: utils/misc/guc.c:2335
 msgid "Shows the size of a disk block."
 msgstr "Mostra la dimensione di un blocco su disco."
 
-#: utils/misc/guc.c:2226
+#: utils/misc/guc.c:2346
 msgid "Shows the number of pages per disk file."
 msgstr "Mostra il numero di pagine per file su disco."
 
-#: utils/misc/guc.c:2237
+#: utils/misc/guc.c:2357
 msgid "Shows the block size in the write ahead log."
 msgstr "Mostra la dimensione del log di write ahead."
 
-#: utils/misc/guc.c:2248
+#: utils/misc/guc.c:2368
 msgid "Shows the number of pages per write ahead log segment."
 msgstr "Mostra il numero di pagine per un segmento del log di write ahead."
 
-#: utils/misc/guc.c:2261
+#: utils/misc/guc.c:2381
 msgid "Time to sleep between autovacuum runs."
 msgstr "Tempo di pausa fra due esecuzioni di autovacuum."
 
-#: utils/misc/guc.c:2271
+#: utils/misc/guc.c:2391
 msgid "Minimum number of tuple updates or deletes prior to vacuum."
 msgstr "Numero minimo di modifiche o cancellazioni di tuple prima dell'esecuzione di un autovacuum."
 
-#: utils/misc/guc.c:2280
+#: utils/misc/guc.c:2400
 msgid "Minimum number of tuple inserts, updates, or deletes prior to analyze."
 msgstr "Numero minimo di inserimenti, modifiche o cancellazioni di tuple prima dell'esecuzione di un analyze."
 
-#: utils/misc/guc.c:2290
+#: utils/misc/guc.c:2410
 msgid "Age at which to autovacuum a table to prevent transaction ID wraparound."
 msgstr "Anzianità alla quale eseguire un autovacuum su una tabella per prevenire il wraparound dell'ID delle transazioni."
 
-#: utils/misc/guc.c:2301
+#: utils/misc/guc.c:2421
+msgid "Multixact age at which to autovacuum a table to prevent multixact wraparound."
+msgstr "Anzianità multixaxt a cui eseguire l'autovacuum di una tabella per prevenire il wraparound del multixact."
+
+#: utils/misc/guc.c:2431
 msgid "Sets the maximum number of simultaneously running autovacuum worker processes."
 msgstr "Imposta il numero massimo dei processi worker dell'autovacuum in esecuzione contemporanea."
 
-#: utils/misc/guc.c:2311
+#: utils/misc/guc.c:2441
+msgid "Sets the maximum memory to be used by each autovacuum worker process."
+msgstr "Imposta la memoria massima utilizzabile da ogni processo autovacuum."
+
+#: utils/misc/guc.c:2452
 msgid "Time between issuing TCP keepalives."
 msgstr "Tempo di attesa fra due keepalive TCP."
 
-#: utils/misc/guc.c:2312 utils/misc/guc.c:2323
+#: utils/misc/guc.c:2453 utils/misc/guc.c:2464
 msgid "A value of 0 uses the system default."
 msgstr "Il valore 0 (zero) fa sì che si applichi il valore predefinito di sistema."
 
-#: utils/misc/guc.c:2322
+#: utils/misc/guc.c:2463
 msgid "Time between TCP keepalive retransmits."
 msgstr "Tempo che intercorre fra due ritrasmissioni del keepalive TCP."
 
-#: utils/misc/guc.c:2333
+#: utils/misc/guc.c:2474
 msgid "Set the amount of traffic to send and receive before renegotiating the encryption keys."
 msgstr "Imposta l'ammontare di traffico da inviare e ricevere prima di rinegoziare le chiavi di criptaggio."
 
-#: utils/misc/guc.c:2344
+#: utils/misc/guc.c:2485
 msgid "Maximum number of TCP keepalive retransmits."
 msgstr "Numero massimo di ritrasmissioni del keepalive TCP."
 
-#: utils/misc/guc.c:2345
+#: utils/misc/guc.c:2486
 msgid "This controls the number of consecutive keepalive retransmits that can be lost before a connection is considered dead. A value of 0 uses the system default."
 msgstr "Ciò controlla il numero di ritrasmissioni consecutive del keepalive che possono andare perdute prima che una connessione sia considerata morta. Il valore 0 (zero) fa sì che si applichi il valore predefinito di sistema."
 
-#: utils/misc/guc.c:2356
+#: utils/misc/guc.c:2497
 msgid "Sets the maximum allowed result for exact search by GIN."
 msgstr "Imposta il risultato massimo consentito per le ricerche esatte tramite GIN."
 
-#: utils/misc/guc.c:2367
+#: utils/misc/guc.c:2508
 msgid "Sets the planner's assumption about the size of the disk cache."
 msgstr "Imposta le assunzioni del planner in merito alla dimensione della cache dei dischi."
 
-#: utils/misc/guc.c:2368
+#: utils/misc/guc.c:2509
 msgid "That is, the portion of the kernel's disk cache that will be used for PostgreSQL data files. This is measured in disk pages, which are normally 8 kB each."
 msgstr "Cioè la porzione della cache dei dischi nel kernel che sarà usata per i file dati di PostgreSQL. Viene misurata in pagine disco, che normalmente sono da 8 KB ciascuna."
 
-#: utils/misc/guc.c:2381
+#: utils/misc/guc.c:2522
 msgid "Shows the server version as an integer."
 msgstr "Mostra la versione del server come un intero."
 
-#: utils/misc/guc.c:2392
+#: utils/misc/guc.c:2533
 msgid "Log the use of temporary files larger than this number of kilobytes."
 msgstr "Registra nel log l'uso di file temporanei più grandi di questo numero di kilobyte."
 
-#: utils/misc/guc.c:2393
+#: utils/misc/guc.c:2534
 msgid "Zero logs all files. The default is -1 (turning this feature off)."
 msgstr "Il valore 0 (zero) fa registrare tutti i file. Il default è -1 (che disabilita la registrazione)."
 
-#: utils/misc/guc.c:2403
+#: utils/misc/guc.c:2544
 msgid "Sets the size reserved for pg_stat_activity.query, in bytes."
 msgstr "Imposta la dimensione in byte riservata a pg_stat_activity.query."
 
-#: utils/misc/guc.c:2422
+#: utils/misc/guc.c:2568
 msgid "Sets the planner's estimate of the cost of a sequentially fetched disk page."
 msgstr "Imposta la stima del planner del costo di una pagina di disco letta sequenzialmente."
 
-#: utils/misc/guc.c:2432
+#: utils/misc/guc.c:2578
 msgid "Sets the planner's estimate of the cost of a nonsequentially fetched disk page."
 msgstr "Imposta la stima del planner del costo di una pagina di disco letta non sequenzialmente."
 
-#: utils/misc/guc.c:2442
+#: utils/misc/guc.c:2588
 msgid "Sets the planner's estimate of the cost of processing each tuple (row)."
 msgstr "Imposta la stima del planner del costo di elaborazione di ogni tupla (riga)."
 
-#: utils/misc/guc.c:2452
+#: utils/misc/guc.c:2598
 msgid "Sets the planner's estimate of the cost of processing each index entry during an index scan."
 msgstr "Imposta la stima del il planner del costo di elaborazione di un singolo elemento di indice durante una scansione di indice."
 
-#: utils/misc/guc.c:2462
+#: utils/misc/guc.c:2608
 msgid "Sets the planner's estimate of the cost of processing each operator or function call."
 msgstr "Imposta la stima del planner del costo di elaborazione di un singolo operatore o chiamata di funzione."
 
-#: utils/misc/guc.c:2473
+#: utils/misc/guc.c:2619
 msgid "Sets the planner's estimate of the fraction of a cursor's rows that will be retrieved."
 msgstr "Imposta la stima del planner della frazione delle righe di un cursore che verranno lette."
 
-#: utils/misc/guc.c:2484
+#: utils/misc/guc.c:2630
 msgid "GEQO: selective pressure within the population."
 msgstr "GEQO: pressione selettiva all'interno della popolazione."
 
-#: utils/misc/guc.c:2494
+#: utils/misc/guc.c:2640
 msgid "GEQO: seed for random path selection."
 msgstr "GEQO: seme per la selezione casuale dei percorsi."
 
-#: utils/misc/guc.c:2504
+#: utils/misc/guc.c:2650
 msgid "Multiple of the average buffer usage to free per round."
 msgstr "Multiplo dell'utilizzo medio dei buffer da liberarsi ad ogni giro."
 
-#: utils/misc/guc.c:2514
+#: utils/misc/guc.c:2660
 msgid "Sets the seed for random-number generation."
 msgstr "Imposta il seme per la generazione di numeri casuali."
 
-#: utils/misc/guc.c:2525
+#: utils/misc/guc.c:2671
 msgid "Number of tuple updates or deletes prior to vacuum as a fraction of reltuples."
 msgstr "Il numero di modifiche o cancellazioni di tuple prima di un VACUUM, come frazione di reltuples."
 
-#: utils/misc/guc.c:2534
+#: utils/misc/guc.c:2680
 msgid "Number of tuple inserts, updates, or deletes prior to analyze as a fraction of reltuples."
 msgstr "Numero di inserimenti, modifiche o cancellazioni di tuple prima di un ANALYZE, come frazione di reltuples."
 
-#: utils/misc/guc.c:2544
+#: utils/misc/guc.c:2690
 msgid "Time spent flushing dirty buffers during checkpoint, as fraction of checkpoint interval."
 msgstr "Il tempo speso nell'eseguire il flush dei buffer sporchi durante i checkpoint, come frazione dell'intervallo di checkpoint."
 
-#: utils/misc/guc.c:2563
+#: utils/misc/guc.c:2709
 msgid "Sets the shell command that will be called to archive a WAL file."
 msgstr "Imposta il comando di shell che verrà eseguito per archiviare un file WAL."
 
-#: utils/misc/guc.c:2573
+#: utils/misc/guc.c:2719
 msgid "Sets the client's character set encoding."
 msgstr "Imposta la codifica dei caratteri del client."
 
-#: utils/misc/guc.c:2584
+#: utils/misc/guc.c:2730
 msgid "Controls information prefixed to each log line."
 msgstr "Controlla l'informazione usata come prefisso per ogni riga di log."
 
-#: utils/misc/guc.c:2585
+#: utils/misc/guc.c:2731
 msgid "If blank, no prefix is used."
 msgstr "Se lasciata vuota non sarà usato alcun prefisso."
 
-#: utils/misc/guc.c:2594
+#: utils/misc/guc.c:2740
 msgid "Sets the time zone to use in log messages."
 msgstr "Imposta il fuso orario da usarsi nei messaggi di log."
 
-#: utils/misc/guc.c:2604
+#: utils/misc/guc.c:2750
 msgid "Sets the display format for date and time values."
 msgstr "Imposta il formato per la visualizzazione dei valori di data e ora."
 
-#: utils/misc/guc.c:2605
+#: utils/misc/guc.c:2751
 msgid "Also controls interpretation of ambiguous date inputs."
 msgstr "Controlla anche l'interpretazione di input ambigui per le date."
 
-#: utils/misc/guc.c:2616
+#: utils/misc/guc.c:2762
 msgid "Sets the default tablespace to create tables and indexes in."
 msgstr "Imposta il tablespace di default in cui create tabelle e indici."
 
-#: utils/misc/guc.c:2617
+#: utils/misc/guc.c:2763
 msgid "An empty string selects the database's default tablespace."
 msgstr "Una stringa vuota selezione il tablespace predefinito del database."
 
-#: utils/misc/guc.c:2627
+#: utils/misc/guc.c:2773
 msgid "Sets the tablespace(s) to use for temporary tables and sort files."
 msgstr "Definisce i(l) tablespace da usarsi per le tabelle temporanee e i file di ordinamento."
 
-#: utils/misc/guc.c:2638
+#: utils/misc/guc.c:2784
 msgid "Sets the path for dynamically loadable modules."
 msgstr "Definisce il percorso per i moduli caricabili dinamicamente."
 
-#: utils/misc/guc.c:2639
+#: utils/misc/guc.c:2785
 msgid "If a dynamically loadable module needs to be opened and the specified name does not have a directory component (i.e., the name does not contain a slash), the system will search this path for the specified file."
 msgstr "Se si deve aprire un modulo caricabile dinamicamente e il nome specificato non contiene un percorso di directory (se non contiene uno slash) il sistema cercherà il file specificato in questo percorso."
 
-#: utils/misc/guc.c:2652
+#: utils/misc/guc.c:2798
 msgid "Sets the location of the Kerberos server key file."
 msgstr "Imposta la posizione del key file del server Kerberos."
 
-#: utils/misc/guc.c:2663
-msgid "Sets the name of the Kerberos service."
-msgstr "Imposta il nome del servizio Kerberos."
-
-#: utils/misc/guc.c:2673
+#: utils/misc/guc.c:2809
 msgid "Sets the Bonjour service name."
 msgstr "Imposta il nome del servizio Bonjour."
 
-#: utils/misc/guc.c:2685
+#: utils/misc/guc.c:2821
 msgid "Shows the collation order locale."
 msgstr "Mostra la localizzazione dell'ordine di collazione."
 
-#: utils/misc/guc.c:2696
+#: utils/misc/guc.c:2832
 msgid "Shows the character classification and case conversion locale."
 msgstr "Mostra la localizzazione per la classificazione dei caratteri e la conversione maiuscole/minuscole."
 
-#: utils/misc/guc.c:2707
+#: utils/misc/guc.c:2843
 msgid "Sets the language in which messages are displayed."
 msgstr "Mostra la lingua in cui i messaggi sono visualizzati."
 
-#: utils/misc/guc.c:2717
+#: utils/misc/guc.c:2853
 msgid "Sets the locale for formatting monetary amounts."
 msgstr "Imposta la localizzazione per la formattazione delle quantità monetarie."
 
-#: utils/misc/guc.c:2727
+#: utils/misc/guc.c:2863
 msgid "Sets the locale for formatting numbers."
 msgstr "Imposta la localizzazione per la formattazione dei numeri."
 
-#: utils/misc/guc.c:2737
+#: utils/misc/guc.c:2873
 msgid "Sets the locale for formatting date and time values."
 msgstr "Imposta la localizzazione per la formattazione per i valori di tipo data e ora."
 
-#: utils/misc/guc.c:2747
+#: utils/misc/guc.c:2883
+msgid "Lists shared libraries to preload into each backend."
+msgstr "Imposta la lista delle librerie condivise da precaricare on ogni backend."
+
+#: utils/misc/guc.c:2894
 msgid "Lists shared libraries to preload into server."
 msgstr "Imposta la lista delle librerie condivise da precaricare nel server."
 
-#: utils/misc/guc.c:2758
-msgid "Lists shared libraries to preload into each backend."
-msgstr "Imposta la lista delle librerie condivise da precaricare on ogni backend."
+#: utils/misc/guc.c:2905
+msgid "Lists unprivileged shared libraries to preload into each backend."
+msgstr "Imposta la lista delle librarie condivise non privilegiate da precaricare in ogni backend."
 
-#: utils/misc/guc.c:2769
+#: utils/misc/guc.c:2916
 msgid "Sets the schema search order for names that are not schema-qualified."
 msgstr "Imposta l'ordine di ricerca degli schema per i nomi che non hanno un qualifica di schema."
 
-#: utils/misc/guc.c:2781
+#: utils/misc/guc.c:2928
 msgid "Sets the server (database) character set encoding."
 msgstr "Imposta la codifica del set di caratteri per il server (database)."
 
-#: utils/misc/guc.c:2793
+#: utils/misc/guc.c:2940
 msgid "Shows the server version."
 msgstr "Mostra la versione del server."
 
-#: utils/misc/guc.c:2805
+#: utils/misc/guc.c:2952
 msgid "Sets the current role."
 msgstr "Mostra il ruolo corrente."
 
-#: utils/misc/guc.c:2817
+#: utils/misc/guc.c:2964
 msgid "Sets the session user name."
 msgstr "Mostra il nome dell'utente della sessione."
 
-#: utils/misc/guc.c:2828
+#: utils/misc/guc.c:2975
 msgid "Sets the destination for server log output."
 msgstr "Imposta la destinazione per l'output dei log del server."
 
-#: utils/misc/guc.c:2829
+#: utils/misc/guc.c:2976
 msgid "Valid values are combinations of \"stderr\", \"syslog\", \"csvlog\", and \"eventlog\", depending on the platform."
 msgstr "I valori validi sono combinazioni di \"stderr\", \"syslog\", \"csvlog\" ed \"eventlog\", a seconda delle piattaforme."
 
-#: utils/misc/guc.c:2840
+#: utils/misc/guc.c:2987
 msgid "Sets the destination directory for log files."
 msgstr "Imposta la directory di destinazione dei file di log."
 
-#: utils/misc/guc.c:2841
+#: utils/misc/guc.c:2988
 msgid "Can be specified as relative to the data directory or as absolute path."
 msgstr "Può essere specificata sia come relativa alla directory data sia come percorso assoluto."
 
-#: utils/misc/guc.c:2851
+#: utils/misc/guc.c:2998
 msgid "Sets the file name pattern for log files."
 msgstr "Imposta il pattern dei nomi dei file di log."
 
-#: utils/misc/guc.c:2862
+#: utils/misc/guc.c:3009
 msgid "Sets the program name used to identify PostgreSQL messages in syslog."
 msgstr "Imposta il nome del programma da utilizzato per identificare i messaggi di PostgreSQL in syslog."
 
-#: utils/misc/guc.c:2873
+#: utils/misc/guc.c:3020
 msgid "Sets the application name used to identify PostgreSQL messages in the event log."
 msgstr "Imposta il nome del programma da usarsi per identificare i messaggi di PostgreSQL nel registro degli eventi."
 
-#: utils/misc/guc.c:2884
+#: utils/misc/guc.c:3031
 msgid "Sets the time zone for displaying and interpreting time stamps."
 msgstr "Imposta il fuso orario per visualizzare ed interpretare gli orari."
 
-#: utils/misc/guc.c:2894
+#: utils/misc/guc.c:3041
 msgid "Selects a file of time zone abbreviations."
 msgstr "Seleziona un file contenente le abbreviazioni dei fusi orari."
 
-#: utils/misc/guc.c:2904
+#: utils/misc/guc.c:3051
 msgid "Sets the current transaction's isolation level."
 msgstr "Imposta il livello di isolamento per la transazione in corso."
 
-#: utils/misc/guc.c:2915
+#: utils/misc/guc.c:3062
 msgid "Sets the owning group of the Unix-domain socket."
 msgstr "Imposta il gruppo di appartenenza per i socket di dominio Unix."
 
-#: utils/misc/guc.c:2916
+#: utils/misc/guc.c:3063
 msgid "The owning user of the socket is always the user that starts the server."
 msgstr "L'utente che possiede il socket è sempre l'utente che ha avviato il server."
 
-#: utils/misc/guc.c:2926
+#: utils/misc/guc.c:3073
 msgid "Sets the directories where Unix-domain sockets will be created."
 msgstr "Imposta la directory dove i socket di dominio Unix verranno creati."
 
-#: utils/misc/guc.c:2941
+#: utils/misc/guc.c:3088
 msgid "Sets the host name or IP address(es) to listen to."
 msgstr "Imposta il nome host o gli indirizzi IP su cui ascoltare."
 
-#: utils/misc/guc.c:2952
+#: utils/misc/guc.c:3103
 msgid "Sets the server's data directory."
 msgstr "Imposta la posizione della directory dati"
 
-#: utils/misc/guc.c:2963
+#: utils/misc/guc.c:3114
 msgid "Sets the server's main configuration file."
 msgstr "Imposta il file primario di configurazione del server."
 
-#: utils/misc/guc.c:2974
+#: utils/misc/guc.c:3125
 msgid "Sets the server's \"hba\" configuration file."
 msgstr "Imposta il file di configurazione \"hba\" del server."
 
-#: utils/misc/guc.c:2985
+#: utils/misc/guc.c:3136
 msgid "Sets the server's \"ident\" configuration file."
 msgstr "Imposta il file di configurazione \"ident\" del server."
 
-#: utils/misc/guc.c:2996
+#: utils/misc/guc.c:3147
 msgid "Writes the postmaster PID to the specified file."
 msgstr "Scrivi il PID del postmaster nel file specificato."
 
-#: utils/misc/guc.c:3007
+#: utils/misc/guc.c:3158
 msgid "Location of the SSL server certificate file."
 msgstr "Posizione del file di certificati del server SSL."
 
-#: utils/misc/guc.c:3017
+#: utils/misc/guc.c:3168
 msgid "Location of the SSL server private key file."
 msgstr "Posizione del file della chiave primaria del server SSL."
 
-#: utils/misc/guc.c:3027
+#: utils/misc/guc.c:3178
 msgid "Location of the SSL certificate authority file."
 msgstr "Posizione del file di autorità dei certificati del server SSL."
 
-#: utils/misc/guc.c:3037
+#: utils/misc/guc.c:3188
 msgid "Location of the SSL certificate revocation list file."
 msgstr "Posizione del file della lista di revoche di certificati SSL."
 
-#: utils/misc/guc.c:3047
+#: utils/misc/guc.c:3198
 msgid "Writes temporary statistics files to the specified directory."
 msgstr "Scrive i file di statistiche temporanee nella directory specificata."
 
-#: utils/misc/guc.c:3058
+#: utils/misc/guc.c:3209
 msgid "List of names of potential synchronous standbys."
 msgstr "Elenco dei nomi dei potenziali standby sincroni."
 
-#: utils/misc/guc.c:3069
+#: utils/misc/guc.c:3220
 msgid "Sets default text search configuration."
 msgstr "Imposta la configurazione di ricerca di testo predefinita."
 
-#: utils/misc/guc.c:3079
+#: utils/misc/guc.c:3230
 msgid "Sets the list of allowed SSL ciphers."
 msgstr "Imposta la lista di codici SSL consentiti."
 
-#: utils/misc/guc.c:3094
+#: utils/misc/guc.c:3245
+msgid "Sets the curve to use for ECDH."
+msgstr "Imposta la curva da usare per l'ECHD."
+
+#: utils/misc/guc.c:3260
 msgid "Sets the application name to be reported in statistics and logs."
 msgstr "Imposta il nome dell'applicazione da riportare nelle statistiche e nei log."
 
-#: utils/misc/guc.c:3114
+#: utils/misc/guc.c:3280
 msgid "Sets whether \"\\'\" is allowed in string literals."
 msgstr "Imposta se \"\\'\" è consentito nei letterali stringa."
 
-#: utils/misc/guc.c:3124
+#: utils/misc/guc.c:3290
 msgid "Sets the output format for bytea."
 msgstr "Imposta il formato di output di bytea."
 
-#: utils/misc/guc.c:3134
+#: utils/misc/guc.c:3300
 msgid "Sets the message levels that are sent to the client."
 msgstr "Imposta quali livelli di messaggi sono inviati al client"
 
-#: utils/misc/guc.c:3135 utils/misc/guc.c:3188 utils/misc/guc.c:3199
-#: utils/misc/guc.c:3255
+#: utils/misc/guc.c:3301 utils/misc/guc.c:3354 utils/misc/guc.c:3365
+#: utils/misc/guc.c:3421
 msgid "Each level includes all the levels that follow it. The later the level, the fewer messages are sent."
 msgstr "Ogni livello include tutti i livelli che lo seguono. Più avanti il livello, meno messaggi sono inviati."
 
-#: utils/misc/guc.c:3145
+#: utils/misc/guc.c:3311
 msgid "Enables the planner to use constraints to optimize queries."
 msgstr "Permette al planner di usare i vincoli per ottimizzare le query."
 
-#: utils/misc/guc.c:3146
+#: utils/misc/guc.c:3312
 msgid "Table scans will be skipped if their constraints guarantee that no rows match the query."
 msgstr "La scansioni delle tabelle saranno evitate se i loro vincoli garantiscono che nessuna riga corrisponda con la query."
 
-#: utils/misc/guc.c:3156
+#: utils/misc/guc.c:3322
 msgid "Sets the transaction isolation level of each new transaction."
 msgstr "Imposta il livello di isolamento predefinito per ogni nuova transazione."
 
-#: utils/misc/guc.c:3166
+#: utils/misc/guc.c:3332
 msgid "Sets the display format for interval values."
 msgstr "Imposta il formato di visualizzazione per intervalli."
 
-#: utils/misc/guc.c:3177
+#: utils/misc/guc.c:3343
 msgid "Sets the verbosity of logged messages."
 msgstr "Imposta la prolissità dei messaggi registrati."
 
-#: utils/misc/guc.c:3187
+#: utils/misc/guc.c:3353
 msgid "Sets the message levels that are logged."
 msgstr "Imposta i livelli dei messaggi registrati."
 
-#: utils/misc/guc.c:3198
+#: utils/misc/guc.c:3364
 msgid "Causes all statements generating error at or above this level to be logged."
 msgstr "Fa in modo che tutti gli eventi che generano errore a questo livello o a un livello superiore siano registrati nel log."
 
-#: utils/misc/guc.c:3209
+#: utils/misc/guc.c:3375
 msgid "Sets the type of statements logged."
 msgstr "Imposta il tipo di istruzioni registrato nel log."
 
-#: utils/misc/guc.c:3219
+#: utils/misc/guc.c:3385
 msgid "Sets the syslog \"facility\" to be used when syslog enabled."
 msgstr "Imposta la \"facility\" da usare quando syslog è abilitato."
 
-#: utils/misc/guc.c:3234
+#: utils/misc/guc.c:3400
 msgid "Sets the session's behavior for triggers and rewrite rules."
 msgstr "Imposta il comportamento delle sessioni per i trigger e le regole di riscrittura."
 
-#: utils/misc/guc.c:3244
+#: utils/misc/guc.c:3410
 msgid "Sets the current transaction's synchronization level."
 msgstr "Imposta il livello di sincronizzazione della transazione corrente."
 
-#: utils/misc/guc.c:3254
+#: utils/misc/guc.c:3420
 msgid "Enables logging of recovery-related debugging information."
 msgstr "Abilita il logging di informazioni di debug relative al recupero."
 
-#: utils/misc/guc.c:3270
+#: utils/misc/guc.c:3436
 msgid "Collects function-level statistics on database activity."
 msgstr "Raccogli statistiche al livello di funzioni sull'attività del database."
 
-#: utils/misc/guc.c:3280
+#: utils/misc/guc.c:3446
 msgid "Set the level of information written to the WAL."
 msgstr "Imposta il livello delle informazioni scritte nel WAL."
 
-#: utils/misc/guc.c:3290
+#: utils/misc/guc.c:3456
+msgid "Selects the dynamic shared memory implementation used."
+msgstr "Seleziona l'implementazione di memoria dinamica condivisa utilizzata."
+
+#: utils/misc/guc.c:3466
 msgid "Selects the method used for forcing WAL updates to disk."
 msgstr "Seleziona il metodo usato per forzare aggiornamenti WAL su disco."
 
-#: utils/misc/guc.c:3300
+#: utils/misc/guc.c:3476
 msgid "Sets how binary values are to be encoded in XML."
 msgstr "imposta come i valori binari devono essere codificati nel formato XML."
 
-#: utils/misc/guc.c:3310
+#: utils/misc/guc.c:3486
 msgid "Sets whether XML data in implicit parsing and serialization operations is to be considered as documents or content fragments."
 msgstr "Imposta se qualunque dato XML nelle operazioni di parsing e serializzazione implicite debba essere considerato come un documento o frammento di un contenuto."
 
-#: utils/misc/guc.c:4124
+#: utils/misc/guc.c:3497
+msgid "Use of huge pages on Linux"
+msgstr "Uso delle pagine huge su Linux"
+
+#: utils/misc/guc.c:4312
 #, c-format
 msgid ""
 "%s does not know where to find the server configuration file.\n"
@@ -18899,12 +20134,12 @@ msgstr ""
 "%s non sa dove trovare il file di configurazione del server.\n"
 "Devi specificare le opzioni --config-file o -D, oppure impostare la variabile d'ambiente PGDATA.\n"
 
-#: utils/misc/guc.c:4143
+#: utils/misc/guc.c:4331
 #, c-format
 msgid "%s cannot access the server configuration file \"%s\": %s\n"
 msgstr "%s non può accedere al file di configurazione del server \"%s\": %s\n"
 
-#: utils/misc/guc.c:4164
+#: utils/misc/guc.c:4359
 #, c-format
 msgid ""
 "%s does not know where to find the database system data.\n"
@@ -18913,7 +20148,7 @@ msgstr ""
 "%s non sa dove trovare i dati di sistema del database.\n"
 "Possono essere specificati come \"data_directory\" in \"%s\", oppure dall'opzione -D, oppure dalla variabile d'ambiente PGDATA.\n"
 
-#: utils/misc/guc.c:4204
+#: utils/misc/guc.c:4407
 #, c-format
 msgid ""
 "%s does not know where to find the \"hba\" configuration file.\n"
@@ -18922,7 +20157,7 @@ msgstr ""
 "%s non sa dove trovare il file di configurazione \"hba\".\n"
 "Può essere specificato come \"hba_file\" in \"%s\", oppure dall'opzione -D, oppure dalla variabile d'ambiente PGDATA.\n"
 
-#: utils/misc/guc.c:4227
+#: utils/misc/guc.c:4430
 #, c-format
 msgid ""
 "%s does not know where to find the \"ident\" configuration file.\n"
@@ -18931,148 +20166,169 @@ msgstr ""
 "%s non sa dove trovare il file di configurazione \"ident\".\n"
 "Può essere specificato come \"ident_file\" in \"%s\", oppure dall'opzione -D, oppure dalla variabile d'ambiente PGDATA.\n"
 
-#: utils/misc/guc.c:4819 utils/misc/guc.c:4983
+#: utils/misc/guc.c:5022 utils/misc/guc.c:5202
 msgid "Value exceeds integer range."
 msgstr "Il valore non rientra nel limite possibile per gli interi."
 
-#: utils/misc/guc.c:4838
-msgid "Valid units for this parameter are \"kB\", \"MB\", and \"GB\"."
-msgstr "Le unità di misura valide sono \"kB\", \"MB\" e \"GB\"."
+#: utils/misc/guc.c:5041
+msgid "Valid units for this parameter are \"kB\", \"MB\", \"GB\", and \"TB\"."
+msgstr "Le unità di misura valide sono \"kB\", \"MB\", \"GB\", and \"TB\"."
 
-#: utils/misc/guc.c:4897
+#: utils/misc/guc.c:5116
 msgid "Valid units for this parameter are \"ms\", \"s\", \"min\", \"h\", and \"d\"."
 msgstr "Le unità di misura valide sono \"ms\", \"s\", \"min\", \"h\" e \"d\"."
 
-#: utils/misc/guc.c:5190 utils/misc/guc.c:5972 utils/misc/guc.c:6024
-#: utils/misc/guc.c:6757 utils/misc/guc.c:6916 utils/misc/guc.c:8085
+#: utils/misc/guc.c:5410 utils/misc/guc.c:5535 utils/misc/guc.c:6765
+#: utils/misc/guc.c:8953 utils/misc/guc.c:8987
+#, c-format
+msgid "invalid value for parameter \"%s\": \"%s\""
+msgstr "valore non valido per il parametro \"%s\": \"%s\""
+
+#: utils/misc/guc.c:5448
+#, c-format
+msgid "parameter \"%s\" requires a numeric value"
+msgstr "il parametro \"%s\" richiede un valore numerico"
+
+#: utils/misc/guc.c:5457
+#, c-format
+msgid "%g is outside the valid range for parameter \"%s\" (%g .. %g)"
+msgstr "%g non è compreso nell'intervallo di validità del il parametro \"%s\" (%g .. %g)"
+
+#: utils/misc/guc.c:5623 utils/misc/guc.c:6345 utils/misc/guc.c:6397
+#: utils/misc/guc.c:6747 utils/misc/guc.c:7435 utils/misc/guc.c:7594
+#: utils/misc/guc.c:8773
 #, c-format
 msgid "unrecognized configuration parameter \"%s\""
 msgstr "parametro di configurazione \"%s\" sconosciuto"
 
-#: utils/misc/guc.c:5205
+#: utils/misc/guc.c:5638 utils/misc/guc.c:6758
 #, c-format
 msgid "parameter \"%s\" cannot be changed"
 msgstr "il parametro \"%s\" non può essere cambiato"
 
-#: utils/misc/guc.c:5228 utils/misc/guc.c:5404 utils/misc/guc.c:5508
-#: utils/misc/guc.c:5609 utils/misc/guc.c:5730 utils/misc/guc.c:5838
-#: guc-file.l:227
+#: utils/misc/guc.c:5661 utils/misc/guc.c:5844 utils/misc/guc.c:5930
+#: utils/misc/guc.c:6016 utils/misc/guc.c:6120 utils/misc/guc.c:6211
+#: guc-file.l:299
 #, c-format
 msgid "parameter \"%s\" cannot be changed without restarting the server"
 msgstr "il parametro \"%s\" non può essere cambiato senza riavviare il server"
 
-#: utils/misc/guc.c:5238
+#: utils/misc/guc.c:5671
 #, c-format
 msgid "parameter \"%s\" cannot be changed now"
 msgstr "il parametro \"%s\" non può essere cambiato ora"
 
-#: utils/misc/guc.c:5269
+#: utils/misc/guc.c:5716
 #, c-format
 msgid "parameter \"%s\" cannot be set after connection start"
 msgstr "il parametro \"%s\" non può essere impostato dopo l'avvio della connessione"
 
-#: utils/misc/guc.c:5279 utils/misc/guc.c:8101
+#: utils/misc/guc.c:5726 utils/misc/guc.c:8789
 #, c-format
 msgid "permission denied to set parameter \"%s\""
 msgstr "permesso di impostare il parametro \"%s\" negato"
 
-#: utils/misc/guc.c:5317
+#: utils/misc/guc.c:5764
 #, c-format
 msgid "cannot set parameter \"%s\" within security-definer function"
 msgstr "il parametro \"%s\" non può essere impostato da una funzione che ha i privilegi del creatore"
 
-#: utils/misc/guc.c:5470 utils/misc/guc.c:5805 utils/misc/guc.c:8265
-#: utils/misc/guc.c:8299
+#: utils/misc/guc.c:6353 utils/misc/guc.c:6401 utils/misc/guc.c:7598
 #, c-format
-msgid "invalid value for parameter \"%s\": \"%s\""
-msgstr "valore non valido per il parametro \"%s\": \"%s\""
+msgid "must be superuser to examine \"%s\""
+msgstr "solo un superutente può esaminare \"%s\""
 
-#: utils/misc/guc.c:5479
+#: utils/misc/guc.c:6467
 #, c-format
-msgid "%d is outside the valid range for parameter \"%s\" (%d .. %d)"
-msgstr "%d non è compreso nell'intervallo di validità del il parametro \"%s\" (%d .. %d)"
+msgid "SET %s takes only one argument"
+msgstr "SET %s accetta un unico argomento"
 
-#: utils/misc/guc.c:5572
+#: utils/misc/guc.c:6578 utils/misc/guc.c:6603
 #, c-format
-msgid "parameter \"%s\" requires a numeric value"
-msgstr "il parametro \"%s\" richiede un valore numerico"
+msgid "failed to write to \"%s\" file"
+msgstr "scrittura nel file \"%s\" fallita"
 
-#: utils/misc/guc.c:5580
+#: utils/misc/guc.c:6721
 #, c-format
-msgid "%g is outside the valid range for parameter \"%s\" (%g .. %g)"
-msgstr "%g non è compreso nell'intervallo di validità del il parametro \"%s\" (%g .. %g)"
+msgid "must be superuser to execute ALTER SYSTEM command"
+msgstr "solo un superutente può eseguire il comando ALTER SYSTEM"
 
-#: utils/misc/guc.c:5980 utils/misc/guc.c:6028 utils/misc/guc.c:6920
+#: utils/misc/guc.c:6792
 #, c-format
-msgid "must be superuser to examine \"%s\""
-msgstr "solo un superutente può esaminare \"%s\""
+msgid "failed to open auto conf temp file \"%s\": %m "
+msgstr "apertura del file temporaneo di configurazione automatica \"%s\" fallita: %m "
 
-#: utils/misc/guc.c:6094
+#: utils/misc/guc.c:6803
 #, c-format
-msgid "SET %s takes only one argument"
-msgstr "SET %s accetta un unico argomento"
+msgid "failed to open auto conf file \"%s\": %m "
+msgstr "apertura del file di configurazione automatica \"%s\" fallita: %m "
 
-#: utils/misc/guc.c:6265
+#: utils/misc/guc.c:6832
+#, c-format
+msgid "could not rename file \"%s\" to \"%s\" : %m"
+msgstr "rinominazione del file \"%s\" in \"%s\" fallita: %m"
+
+#: utils/misc/guc.c:6935
 #, c-format
 msgid "SET LOCAL TRANSACTION SNAPSHOT is not implemented"
 msgstr "SET LOCAL TRANSACTION SNAPSHOT non è implementato"
 
-#: utils/misc/guc.c:6345
+#: utils/misc/guc.c:7023
 #, c-format
 msgid "SET requires parameter name"
 msgstr "SET richiede il nome del parametro"
 
-#: utils/misc/guc.c:6459
+#: utils/misc/guc.c:7137
 #, c-format
 msgid "attempt to redefine parameter \"%s\""
 msgstr "tentativo di ridefinire il parametro \"%s\""
 
-#: utils/misc/guc.c:7804
+#: utils/misc/guc.c:8493
 #, c-format
 msgid "could not parse setting for parameter \"%s\""
 msgstr "non è stato possibile interpretare l'impostazione del parametro \"%s\""
 
-#: utils/misc/guc.c:8163 utils/misc/guc.c:8197
+#: utils/misc/guc.c:8851 utils/misc/guc.c:8885
 #, c-format
 msgid "invalid value for parameter \"%s\": %d"
 msgstr "valore non valido per il parametro \"%s\": %d"
 
-#: utils/misc/guc.c:8231
+#: utils/misc/guc.c:8919
 #, c-format
 msgid "invalid value for parameter \"%s\": %g"
 msgstr "valore non valido per il parametro \"%s\": %g"
 
-#: utils/misc/guc.c:8421
+#: utils/misc/guc.c:9109
 #, c-format
 msgid "\"temp_buffers\" cannot be changed after any temporary tables have been accessed in the session."
 msgstr "\"temp_buffers\" non può essere modificato dopo che la sessione ha utilizzato qualsiasi tabella temporanea."
 
-#: utils/misc/guc.c:8433
+#: utils/misc/guc.c:9121
 #, c-format
 msgid "SET AUTOCOMMIT TO OFF is no longer supported"
 msgstr "SET AUTOCOMMIT TO OFF non è più supportato"
 
-#: utils/misc/guc.c:8445
+#: utils/misc/guc.c:9133
 #, c-format
 msgid "assertion checking is not supported by this build"
 msgstr "il controllo delle asserzioni non è supportato in questo binario"
 
-#: utils/misc/guc.c:8458
+#: utils/misc/guc.c:9146
 #, c-format
 msgid "Bonjour is not supported by this build"
 msgstr "Bonjour non è supportato in questo binario"
 
-#: utils/misc/guc.c:8471
+#: utils/misc/guc.c:9159
 #, c-format
 msgid "SSL is not supported by this build"
 msgstr "SSL non è supportato in questo binario"
 
-#: utils/misc/guc.c:8483
+#: utils/misc/guc.c:9171
 #, c-format
 msgid "Cannot enable parameter when \"log_statement_stats\" is true."
 msgstr "Non è possibile abilitare il parametro quando \"log_statement_stats\" è abilitato."
 
-#: utils/misc/guc.c:8495
+#: utils/misc/guc.c:9183
 #, c-format
 msgid "Cannot enable \"log_statement_stats\" when \"log_parser_stats\", \"log_planner_stats\", or \"log_executor_stats\" is true."
 msgstr "Non è possibile abilitare \"log_statement_stats\" quando \"log_parser_stats\", \"log_planner_stats\" o \"log_executor_stats\" sono abilitati."
@@ -19157,15 +20413,15 @@ msgstr "la riga è troppo lunga nel file di fusi orari \"%s\", riga %d"
 msgid "@INCLUDE without file name in time zone file \"%s\", line %d"
 msgstr "@INCLUDE senza nome del file nel file di fusi orari \"%s\", riga %d"
 
-#: utils/mmgr/aset.c:417
+#: utils/mmgr/aset.c:500
 #, c-format
 msgid "Failed while creating memory context \"%s\"."
 msgstr "Errore durante la creazione del contesto di memoria \"%s\"."
 
-#: utils/mmgr/aset.c:588 utils/mmgr/aset.c:766 utils/mmgr/aset.c:967
+#: utils/mmgr/aset.c:679 utils/mmgr/aset.c:873 utils/mmgr/aset.c:1115
 #, c-format
-msgid "Failed on request of size %lu."
-msgstr "Errore nella richiesta della dimensione %lu."
+msgid "Failed on request of size %zu."
+msgstr "Errore durante la richiesta di dimensione %zu."
 
 #: utils/mmgr/portalmem.c:208
 #, c-format
@@ -19187,365 +20443,412 @@ msgstr "non è possibile eliminare il portale attivo \"%s\""
 msgid "cannot PREPARE a transaction that has created a cursor WITH HOLD"
 msgstr "non è possibile eseguire PREPARE in una transazione che ha creato un cursore WITH HOLD"
 
-#: utils/sort/logtape.c:215
-#, c-format
-msgid "Perhaps out of disk space?"
-msgstr "Possibile che lo spazio su disco sia esaurito?"
-
-#: utils/sort/logtape.c:232
+#: utils/sort/logtape.c:229
 #, c-format
 msgid "could not read block %ld of temporary file: %m"
 msgstr "lettura del blocco %ld dal file temporaneo fallita: %m"
 
-#: utils/sort/tuplesort.c:3175
+#: utils/sort/tuplesort.c:3255
 #, c-format
 msgid "could not create unique index \"%s\""
 msgstr "creazione dell'indice univoco \"%s\" fallita"
 
-#: utils/sort/tuplesort.c:3177
+#: utils/sort/tuplesort.c:3257
 #, c-format
 msgid "Key %s is duplicated."
 msgstr "La chiave %s è duplicata."
 
+#: utils/sort/tuplestore.c:506 utils/sort/tuplestore.c:516
+#: utils/sort/tuplestore.c:843 utils/sort/tuplestore.c:947
+#: utils/sort/tuplestore.c:1011 utils/sort/tuplestore.c:1028
+#: utils/sort/tuplestore.c:1230 utils/sort/tuplestore.c:1295
+#: utils/sort/tuplestore.c:1304
+#, c-format
+msgid "could not seek in tuplestore temporary file: %m"
+msgstr "ricerca nel file temporaneo tuplestore fallita: %m"
+
+#: utils/sort/tuplestore.c:1451 utils/sort/tuplestore.c:1524
+#: utils/sort/tuplestore.c:1530
+#, c-format
+msgid "could not read from tuplestore temporary file: %m"
+msgstr "lettura dal file temporaneo tuplestore fallita: %m"
+
+#: utils/sort/tuplestore.c:1492 utils/sort/tuplestore.c:1497
+#: utils/sort/tuplestore.c:1503
+#, c-format
+msgid "could not write to tuplestore temporary file: %m"
+msgstr "scrittura nel file temporaneo tuplestore fallita: %m"
+
 #  translator: %s represents an SQL statement name
-#: utils/time/snapmgr.c:775
+#: utils/time/snapmgr.c:890
 #, c-format
 msgid "cannot export a snapshot from a subtransaction"
 msgstr "non è possibile esportare uno snapshot da una sotto-transazione"
 
-#: utils/time/snapmgr.c:925 utils/time/snapmgr.c:930 utils/time/snapmgr.c:935
-#: utils/time/snapmgr.c:950 utils/time/snapmgr.c:955 utils/time/snapmgr.c:960
-#: utils/time/snapmgr.c:1059 utils/time/snapmgr.c:1075
-#: utils/time/snapmgr.c:1100
+#: utils/time/snapmgr.c:1040 utils/time/snapmgr.c:1045
+#: utils/time/snapmgr.c:1050 utils/time/snapmgr.c:1065
+#: utils/time/snapmgr.c:1070 utils/time/snapmgr.c:1075
+#: utils/time/snapmgr.c:1174 utils/time/snapmgr.c:1190
+#: utils/time/snapmgr.c:1215
 #, c-format
 msgid "invalid snapshot data in file \"%s\""
 msgstr "dati dello snapshot non validi nel file \"%s\""
 
-#: utils/time/snapmgr.c:997
+#: utils/time/snapmgr.c:1112
 #, c-format
 msgid "SET TRANSACTION SNAPSHOT must be called before any query"
 msgstr "SET TRANSACTION SNAPSHOT dev'essere invocato prima di qualunque query"
 
-#: utils/time/snapmgr.c:1006
+#: utils/time/snapmgr.c:1121
 #, c-format
 msgid "a snapshot-importing transaction must have isolation level SERIALIZABLE or REPEATABLE READ"
 msgstr "una transazione che importa uno snapshot deve avere livello di isolamento SERIALIZABLE o REPEATABLE READ"
 
-#: utils/time/snapmgr.c:1015 utils/time/snapmgr.c:1024
+#: utils/time/snapmgr.c:1130 utils/time/snapmgr.c:1139
 #, c-format
 msgid "invalid snapshot identifier: \"%s\""
 msgstr "identificativo di snapshot non valido: \"%s\""
 
-#: utils/time/snapmgr.c:1113
+#: utils/time/snapmgr.c:1228
 #, c-format
 msgid "a serializable transaction cannot import a snapshot from a non-serializable transaction"
 msgstr "una transazione serializzabile non può importare uno snapshot da una transazione non serializzabile"
 
-#: utils/time/snapmgr.c:1117
+#: utils/time/snapmgr.c:1232
 #, c-format
 msgid "a non-read-only serializable transaction cannot import a snapshot from a read-only transaction"
 msgstr "una transazione non di sola lettura non può importare uno snapshot da una transazione di sola lettura"
 
-#: utils/time/snapmgr.c:1132
+#: utils/time/snapmgr.c:1247
 #, c-format
 msgid "cannot import a snapshot from a different database"
 msgstr "non è possibile importare uno snapshot da un database diverso"
 
-#: gram.y:944
+#: gram.y:955
 #, c-format
 msgid "unrecognized role option \"%s\""
 msgstr "opzione di ruolo \"%s\" sconosciuta"
 
-#: gram.y:1226 gram.y:1241
+#: gram.y:1237 gram.y:1252
 #, c-format
 msgid "CREATE SCHEMA IF NOT EXISTS cannot include schema elements"
 msgstr "CREATE SCHEMA IF NOT EXISTS non può includere elementi dello schema"
 
-#: gram.y:1383
+#: gram.y:1397
 #, c-format
 msgid "current database cannot be changed"
 msgstr "il database corrente non può essere cambiato"
 
-#: gram.y:1510 gram.y:1525
+#: gram.y:1521 gram.y:1536
 #, c-format
 msgid "time zone interval must be HOUR or HOUR TO MINUTE"
 msgstr "l'intervallo della time zone deve essere HOUR o HOUR TO MINUTE"
 
-#: gram.y:1530 gram.y:10031 gram.y:12563
+#: gram.y:1541 gram.y:10336 gram.y:12673
 #, c-format
 msgid "interval precision specified twice"
 msgstr "intervallo di precisione specificato due volte"
 
-#: gram.y:2362 gram.y:2391
+#: gram.y:2502 gram.y:2531
 #, c-format
 msgid "STDIN/STDOUT not allowed with PROGRAM"
 msgstr "STDIN/STDOUT non sono consentiti con PROGRAM"
 
-#: gram.y:2649 gram.y:2656 gram.y:9314 gram.y:9322
+#: gram.y:2793 gram.y:2800 gram.y:9574 gram.y:9582
 #, c-format
 msgid "GLOBAL is deprecated in temporary table creation"
 msgstr "GLOBAL è deprecato nella creazione di tabelle temporanee"
 
-#: gram.y:4325
+#: gram.y:4473
 msgid "duplicate trigger events specified"
 msgstr "evento del trigger specificato più volte"
 
-#: gram.y:4427
+#: gram.y:4575
 #, c-format
 msgid "conflicting constraint properties"
 msgstr "proprietà del vincolo in conflitto"
 
-#: gram.y:4559
+#: gram.y:4707
 #, c-format
 msgid "CREATE ASSERTION is not yet implemented"
 msgstr "CREATE ASSERTION non è stata ancora implementata"
 
-#: gram.y:4575
+#: gram.y:4723
 #, c-format
 msgid "DROP ASSERTION is not yet implemented"
 msgstr "DROP ASSERTION non è stata ancora implementata"
 
-#: gram.y:4925
+#: gram.y:5069
 #, c-format
 msgid "RECHECK is no longer required"
 msgstr "RECHECK non è più richiesto"
 
-#: gram.y:4926
+#: gram.y:5070
 #, c-format
 msgid "Update your data type."
 msgstr "Aggiorna il tuo tipo di dato."
 
-#: gram.y:8024 gram.y:8030 gram.y:8036
+#: gram.y:6531
 #, c-format
-msgid "WITH CHECK OPTION is not implemented"
-msgstr "WITH CHECK OPTION non è implementata"
+msgid "aggregates cannot have output arguments"
+msgstr "gli aggregati non possono avere argomenti di output"
 
-#: gram.y:8959
+#: gram.y:8227 gram.y:8245
+#, c-format
+msgid "WITH CHECK OPTION not supported on recursive views"
+msgstr "WITH CHECK OPTION non supportato su viste ricorsive"
+
+#: gram.y:9219
 #, c-format
 msgid "number of columns does not match number of values"
 msgstr "il numero di colonne non corrisponde al numero di valori"
 
-#: gram.y:9418
+#: gram.y:9678
 #, c-format
 msgid "LIMIT #,# syntax is not supported"
 msgstr "La sintassi LIMIT #,# non è supportata"
 
-#: gram.y:9419
+#: gram.y:9679
 #, c-format
 msgid "Use separate LIMIT and OFFSET clauses."
 msgstr "Usa separatamente le clausole LIMIT ed OFFSET."
 
-#: gram.y:9610 gram.y:9635
+#: gram.y:9867 gram.y:9892
 #, c-format
 msgid "VALUES in FROM must have an alias"
 msgstr "VALUES nel FROM deve avere un alias"
 
-#: gram.y:9611 gram.y:9636
+#: gram.y:9868 gram.y:9893
 #, c-format
 msgid "For example, FROM (VALUES ...) [AS] foo."
 msgstr "Per esempio, FROM (VALUES ...) [AS] foo."
 
-#: gram.y:9616 gram.y:9641
+#: gram.y:9873 gram.y:9898
 #, c-format
 msgid "subquery in FROM must have an alias"
 msgstr "la sottoquery in FROM deve avere un alias"
 
-#: gram.y:9617 gram.y:9642
+#: gram.y:9874 gram.y:9899
 #, c-format
 msgid "For example, FROM (SELECT ...) [AS] foo."
 msgstr "Per esempio, FROM (SELECT ...) [AS] foo."
 
-#: gram.y:10157
+#: gram.y:10462
 #, c-format
 msgid "precision for type float must be at least 1 bit"
 msgstr "la precisione per il tipo float dev'essere di almeno un bit"
 
-#: gram.y:10166
+#: gram.y:10471
 #, c-format
 msgid "precision for type float must be less than 54 bits"
 msgstr "la precisione per il tipo float dev'essere inferiore a 54 bit"
 
-#: gram.y:10880
+#: gram.y:10937
+#, c-format
+msgid "wrong number of parameters on left side of OVERLAPS expression"
+msgstr "numero errato di parametri a sinistra dell'espressione OVERLAPS"
+
+#: gram.y:10942
+#, c-format
+msgid "wrong number of parameters on right side of OVERLAPS expression"
+msgstr "numero errato di parametri a destra dell'espressione OVERLAPS"
+
+#: gram.y:11126
 #, c-format
 msgid "UNIQUE predicate is not yet implemented"
 msgstr "il predicato UNIQUE non è stato ancora implementato"
 
-#: gram.y:11830
+#: gram.y:11413
+#, c-format
+msgid "cannot use multiple ORDER BY clauses with WITHIN GROUP"
+msgstr "non si può usare più di una clausola ORDER BY con WITHIN GROUOP"
+
+#: gram.y:11418
+#, c-format
+msgid "cannot use DISTINCT with WITHIN GROUP"
+msgstr "non si può usare DISTINCT con WITHIN GROUP"
+
+#: gram.y:11423
+#, c-format
+msgid "cannot use VARIADIC with WITHIN GROUP"
+msgstr "non si può usare VARIADIC con WITHIN GROUP"
+
+#: gram.y:11929
 #, c-format
 msgid "RANGE PRECEDING is only supported with UNBOUNDED"
 msgstr "RANGE PRECEDING è supportato solo con UNBOUNDED"
 
-#: gram.y:11836
+#: gram.y:11935
 #, c-format
 msgid "RANGE FOLLOWING is only supported with UNBOUNDED"
 msgstr "RANGE FOLLOWING è supportato solo con UNBOUNDED"
 
-#: gram.y:11863 gram.y:11886
+#: gram.y:11962 gram.y:11985
 #, c-format
 msgid "frame start cannot be UNBOUNDED FOLLOWING"
 msgstr "l'inizio della finestra non può essere UNBOUNDED FOLLOWING"
 
-#: gram.y:11868
+#: gram.y:11967
 #, c-format
 msgid "frame starting from following row cannot end with current row"
 msgstr "una finestra che inizia dalla riga seguente non può terminare alla riga corrente"
 
-#: gram.y:11891
+#: gram.y:11990
 #, c-format
 msgid "frame end cannot be UNBOUNDED PRECEDING"
 msgstr "la fine della finestra non può essere UNBOUNDED PRECEDING"
 
-#: gram.y:11897
+#: gram.y:11996
 #, c-format
 msgid "frame starting from current row cannot have preceding rows"
 msgstr "una finestra che inizia dalla riga corrente non può avere righe precedenti"
 
-#: gram.y:11904
+#: gram.y:12003
 #, c-format
 msgid "frame starting from following row cannot have preceding rows"
 msgstr "una finestra che inizia dalla riga seguente non può avere righe precedenti"
 
-#: gram.y:12538
+#: gram.y:12642
 #, c-format
 msgid "type modifier cannot have parameter name"
 msgstr "un modificatore di tipo non può avere un nome di parametro"
 
-#: gram.y:13155 gram.y:13363
+#: gram.y:12648
+#, c-format
+msgid "type modifier cannot have ORDER BY"
+msgstr "un modificatore di tipo non può avere ORDER BY"
+
+#: gram.y:13269 gram.y:13444
 msgid "improper use of \"*\""
 msgstr "uso improprio di \"*\""
 
-#: gram.y:13294
-#, c-format
-msgid "wrong number of parameters on left side of OVERLAPS expression"
-msgstr "numero errato di parametri a sinistra dell'espressione OVERLAPS"
-
-#: gram.y:13301
+#: gram.y:13508
 #, c-format
-msgid "wrong number of parameters on right side of OVERLAPS expression"
-msgstr "numero errato di parametri a destra dell'espressione OVERLAPS"
+msgid "an ordered-set aggregate with a VARIADIC direct argument must have one VARIADIC aggregated argument of the same data type"
+msgstr "un aggregato su insiemi ordinati con un argomento diretto VARIADIC deve avere un argomento aggregato VARIADIC sullo stesso tipo"
 
-#: gram.y:13414
+#: gram.y:13545
 #, c-format
 msgid "multiple ORDER BY clauses not allowed"
 msgstr "non è possibile avere più di una clausola ORDER BY"
 
-#: gram.y:13425
+#: gram.y:13556
 #, c-format
 msgid "multiple OFFSET clauses not allowed"
 msgstr "non è possibile avere più di una clausola OFFSET"
 
-#: gram.y:13434
+#: gram.y:13565
 #, c-format
 msgid "multiple LIMIT clauses not allowed"
 msgstr "non è possibile avere più di una clausola LIMIT"
 
-#: gram.y:13443
+#: gram.y:13574
 #, c-format
 msgid "multiple WITH clauses not allowed"
 msgstr "non è possibile avere più di una clausola WITH"
 
-#: gram.y:13589
+#: gram.y:13714
 #, c-format
 msgid "OUT and INOUT arguments aren't allowed in TABLE functions"
 msgstr "gli argomenti OUT e INOUT non sono permessi nelle funzioni TABLE"
 
-#: gram.y:13690
+#: gram.y:13815
 #, c-format
 msgid "multiple COLLATE clauses not allowed"
 msgstr "non è possibile avere più di una clausola COLLATE"
 
 #. translator: %s is CHECK, UNIQUE, or similar
-#: gram.y:13728 gram.y:13741
+#: gram.y:13853 gram.y:13866
 #, c-format
 msgid "%s constraints cannot be marked DEFERRABLE"
 msgstr "un vincolo %s non può essere marcato DEFERRABLE"
 
 #. translator: %s is CHECK, UNIQUE, or similar
-#: gram.y:13754
+#: gram.y:13879
 #, c-format
 msgid "%s constraints cannot be marked NOT VALID"
 msgstr "un vincolo %s non può essere marcato NOT VALID"
 
 #. translator: %s is CHECK, UNIQUE, or similar
-#: gram.y:13767
+#: gram.y:13892
 #, c-format
 msgid "%s constraints cannot be marked NO INHERIT"
 msgstr "un vincolo %s non può essere marcato NO INHERIT"
 
-#: guc-file.l:192
+#: guc-file.l:263
 #, c-format
 msgid "unrecognized configuration parameter \"%s\" in file \"%s\" line %u"
 msgstr "parametro di configurazione \"%s\" sconosciuto nel file \"%s\" riga %u"
 
-#: guc-file.l:255
+#: guc-file.l:327
 #, c-format
 msgid "parameter \"%s\" removed from configuration file, reset to default"
 msgstr "il parametro \"%s\" è stato rimosso dal file di configurazione, valore predefinito ripristinato"
 
-#: guc-file.l:317
+#: guc-file.l:389
 #, c-format
 msgid "parameter \"%s\" changed to \"%s\""
 msgstr "il parametro \"%s\" è stato modificato a \"%s\""
 
-#: guc-file.l:351
+#: guc-file.l:424
 #, c-format
 msgid "configuration file \"%s\" contains errors"
 msgstr "il file di configurazione \"%s\" contiene errori"
 
-#: guc-file.l:356
+#: guc-file.l:429
 #, c-format
 msgid "configuration file \"%s\" contains errors; unaffected changes were applied"
 msgstr "il file di configurazione \"%s\" contiene errori; i cambiamenti senza errori sono stati applicati"
 
-#: guc-file.l:361
+#: guc-file.l:434
 #, c-format
 msgid "configuration file \"%s\" contains errors; no changes were applied"
 msgstr "il file di configurazione \"%s\" contiene errori; nessun cambiamento effettuato"
 
-#: guc-file.l:426
+#: guc-file.l:504
 #, c-format
 msgid "could not open configuration file \"%s\": maximum nesting depth exceeded"
 msgstr "apertura del file di configurazione \"%s\" fallita: massima profondità di annidamento raggiunta"
 
-#: guc-file.l:446
+#: guc-file.l:524
 #, c-format
 msgid "skipping missing configuration file \"%s\""
 msgstr "file di configurazione mancante \"%s\" saltato"
 
-#: guc-file.l:655
+#: guc-file.l:763
 #, c-format
 msgid "syntax error in file \"%s\" line %u, near end of line"
 msgstr "errore di sintassi nel file \"%s\" riga %u, vicino alla fine della riga"
 
-#: guc-file.l:660
+#: guc-file.l:768
 #, c-format
 msgid "syntax error in file \"%s\" line %u, near token \"%s\""
 msgstr "errore di sintassi nel file \"%s\" riga %u, vicino al token \"%s\""
 
-#: guc-file.l:676
+#: guc-file.l:784
 #, c-format
 msgid "too many syntax errors found, abandoning file \"%s\""
 msgstr "troppi errori di sintassi, file \"%s\" abbandonato"
 
-#: guc-file.l:721
+#: guc-file.l:829
 #, c-format
 msgid "could not open configuration directory \"%s\": %m"
 msgstr "apertura della directory di configurazione \"%s\" fallita: %m"
 
-#: repl_gram.y:183 repl_gram.y:200
+#: repl_gram.y:247 repl_gram.y:274
 #, c-format
 msgid "invalid timeline %u"
 msgstr "timeline %u non valida"
 
-#: repl_scanner.l:94
+#: repl_scanner.l:118
 msgid "invalid streaming start location"
 msgstr "posizione di avvio dello streaming non valida"
 
-#: repl_scanner.l:116 scan.l:661
+#: repl_scanner.l:169 scan.l:661
 msgid "unterminated quoted string"
 msgstr "stringa tra virgolette non terminata"
 
-#: repl_scanner.l:126
+#: repl_scanner.l:179
 #, c-format
 msgid "syntax error: unexpected character \"%s\""
 msgstr "errore di sintassi: carattere \"%s\" inaspettato"
@@ -19572,12 +20875,12 @@ msgstr "uso non sicuro di stringa costante con gli escape Unicode"
 msgid "String constants with Unicode escapes cannot be used when standard_conforming_strings is off."
 msgstr "Le stringhe costanti con escape Unicode non possono essere usate quando standard_conforming_strings è disabilitato."
 
-#: scan.l:571 scan.l:764
+#: scan.l:571 scan.l:767
 msgid "invalid Unicode escape character"
 msgstr "carattere escape Unicode non valido"
 
-#: scan.l:596 scan.l:604 scan.l:612 scan.l:613 scan.l:614 scan.l:1293
-#: scan.l:1320 scan.l:1324 scan.l:1362 scan.l:1366 scan.l:1388
+#: scan.l:596 scan.l:604 scan.l:612 scan.l:613 scan.l:614 scan.l:1297
+#: scan.l:1324 scan.l:1328 scan.l:1366 scan.l:1370 scan.l:1392
 msgid "invalid Unicode surrogate pair"
 msgstr "coppia surrogata Unicode non valida"
 
@@ -19605,64 +20908,64 @@ msgstr "Usa '' per scrivere gli apici in una stringa. \\' non è sicuro in codif
 msgid "unterminated dollar-quoted string"
 msgstr "stringa delimitata da dollari non terminata"
 
-#: scan.l:723 scan.l:746 scan.l:759
+#: scan.l:723 scan.l:747 scan.l:762
 msgid "zero-length delimited identifier"
 msgstr "identificativo delimitato di lunghezza zero"
 
-#: scan.l:778
+#: scan.l:782
 msgid "unterminated quoted identifier"
 msgstr "identificativo tra virgolette non terminato"
 
-#: scan.l:882
+#: scan.l:886
 msgid "operator too long"
 msgstr "operatore troppo lungo"
 
 #. translator: %s is typically the translation of "syntax error"
-#: scan.l:1040
+#: scan.l:1044
 #, c-format
 msgid "%s at end of input"
 msgstr "%s alla fine dell'input"
 
 #. translator: first %s is typically the translation of "syntax error"
-#: scan.l:1048
+#: scan.l:1052
 #, c-format
 msgid "%s at or near \"%s\""
 msgstr "%s a o presso \"%s\""
 
-#: scan.l:1209 scan.l:1241
+#: scan.l:1213 scan.l:1245
 msgid "Unicode escape values cannot be used for code point values above 007F when the server encoding is not UTF8"
 msgstr "i valori escape Unicode non possono essere usati per code point superiori a 007F se la codifica del server non è UTF8"
 
-#: scan.l:1237 scan.l:1380
+#: scan.l:1241 scan.l:1384
 msgid "invalid Unicode escape value"
 msgstr "valore escape Unicode non valido"
 
-#: scan.l:1436
+#: scan.l:1440
 #, c-format
 msgid "nonstandard use of \\' in a string literal"
 msgstr "uso non standard di \\' in una stringa letterale"
 
-#: scan.l:1437
+#: scan.l:1441
 #, c-format
 msgid "Use '' to write quotes in strings, or use the escape string syntax (E'...')."
 msgstr "Usa '' per scrivere gli apici nelle stringhe, oppure usa la sintassi di escape delle stringhe (E'...')."
 
-#: scan.l:1446
+#: scan.l:1450
 #, c-format
 msgid "nonstandard use of \\\\ in a string literal"
 msgstr "uso non standard di \\\\ in una stringa letterale"
 
-#: scan.l:1447
+#: scan.l:1451
 #, c-format
 msgid "Use the escape string syntax for backslashes, e.g., E'\\\\'."
 msgstr "Usa la sintassi di escape delle stringhe per i backslash, cioè E'\\\\'."
 
-#: scan.l:1461
+#: scan.l:1465
 #, c-format
 msgid "nonstandard use of escape in a string literal"
 msgstr "uso non standard dell'escape in una stringa letterale"
 
-#: scan.l:1462
+#: scan.l:1466
 #, c-format
 msgid "Use the escape string syntax for escapes, e.g., E'\\r\\n'."
 msgstr "Usa la sintassi di escape per le stringhe per effettuare gli escape, cioè, E'\\r\\n'."
index b8f1d42cb0546b80971dd62214da9d1f12e7f772..2fa5d48a8269d80df9dc82bb28d1d1eeda5703f1 100644 (file)
@@ -6,7 +6,7 @@ msgstr ""
 "Project-Id-Version: PostgreSQL 9.1 beta 2\n"
 "Report-Msgid-Bugs-To: [email protected]\n"
 "POT-Creation-Date: 2013-08-18 13:05+0900\n"
-"PO-Revision-Date: 2013-08-18 16:46+0900\n"
+"PO-Revision-Date: 2014-08-16 16:41+0900\n"
 "Last-Translator: HOTTA Michihide \n"
 "Language-Team: jpug-doc \n"
 "Language: ja\n"
@@ -8653,7 +8653,7 @@ msgstr "集約%uは入力データ型と遷移用の型間で互換性が必要
 #: executor/nodeHashjoin.c:823 executor/nodeHashjoin.c:853
 #, c-format
 msgid "could not rewind hash-join temporary file: %m"
-msgstr "ハッシュ結合用一時ファイルを巻き戻しできません"
+msgstr "ハッシュ結合用一時ファイルを巻き戻しできません: %m"
 
 #: executor/nodeHashjoin.c:888 executor/nodeHashjoin.c:894
 #, c-format
@@ -12603,7 +12603,7 @@ msgstr "統計情報コレクタのソケットから試験メッセージを入
 #: postmaster/pgstat.c:495
 #, c-format
 msgid "could not receive test message on socket for statistics collector: %m"
-msgstr "統計情報コレクタのソケットから試験メッセージを受信できませんでした"
+msgstr "統計情報コレクタのソケットから試験メッセージを受信できませんでした: %m"
 
 #: postmaster/pgstat.c:505
 #, c-format
index e11013d8ce0f10c6c3acb6b60f44dc77a50354a5..370ec7a284da51ef2079012363fae574b9489f81 100644 (file)
@@ -5,9 +5,9 @@
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: PostgreSQL 9.3\n"
+"Project-Id-Version: PostgreSQL 9.4\n"
 "Report-Msgid-Bugs-To: [email protected]\n"
-"POT-Creation-Date: 2014-03-02 11:52-0300\n"
+"POT-Creation-Date: 2014-09-14 23:12-0300\n"
 "PO-Revision-Date: 2010-05-11 08:53-0300\n"
 "Last-Translator: Euler Taveira de Oliveira \n"
 "Language-Team: Brazilian Portuguese \n"
@@ -17,101 +17,194 @@ msgstr ""
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=2; plural=(n>1);\n"
 
-#: ../common/fe_memutils.c:33 ../common/fe_memutils.c:60
-#: ../common/fe_memutils.c:83
+#: ../common/exec.c:127 ../common/exec.c:241 ../common/exec.c:284
 #, c-format
-msgid "out of memory\n"
-msgstr "sem memória\n"
+msgid "could not identify current directory: %s"
+msgstr "não pôde identificar diretório atual: %s"
 
-#: ../common/fe_memutils.c:77
+#: ../common/exec.c:146
 #, c-format
-msgid "cannot duplicate null pointer (internal error)\n"
-msgstr "não pode duplicar ponteiro nulo (erro interno)\n"
+msgid "invalid binary \"%s\""
+msgstr "binário \"%s\" é inválido"
 
-#: ../port/chklocale.c:352 ../port/chklocale.c:358
+#: ../common/exec.c:195
 #, c-format
-msgid "could not determine encoding for locale \"%s\": codeset is \"%s\""
-msgstr "não pôde determinar codificação para configuração regional \"%s\": codeset é \"%s\""
+msgid "could not read binary \"%s\""
+msgstr "não pôde ler o binário \"%s\""
 
-#: ../port/chklocale.c:360
+#: ../common/exec.c:202
 #, c-format
-msgid "Please report this to ."
-msgstr "Por favor relate isto a ."
+msgid "could not find a \"%s\" to execute"
+msgstr "não pôde encontrar o \"%s\" para executá-lo"
 
-#: ../port/dirmod.c:217
+#: ../common/exec.c:257 ../common/exec.c:293
 #, c-format
-msgid "could not set junction for \"%s\": %s"
-msgstr "não pôde definir junção para \"%s\": %s"
+msgid "could not change directory to \"%s\": %s"
+msgstr "não pôde mudar diretório para \"%s\": %s"
 
-#: ../port/dirmod.c:220
+#: ../common/exec.c:272
 #, c-format
-msgid "could not set junction for \"%s\": %s\n"
-msgstr "não pôde definir junção para \"%s\": %s\n"
+msgid "could not read symbolic link \"%s\""
+msgstr "não pôde ler link simbólico \"%s\""
 
-#: ../port/dirmod.c:292
+#: ../common/exec.c:523
 #, c-format
-msgid "could not get junction for \"%s\": %s"
-msgstr "não pôde obter junção para \"%s\": %s"
+msgid "pclose failed: %s"
+msgstr "pclose falhou: %s"
 
-#: ../port/dirmod.c:295
+#: ../common/fe_memutils.c:33 ../common/fe_memutils.c:60
+#: ../common/fe_memutils.c:83 ../common/psprintf.c:181 ../port/path.c:598
+#: ../port/path.c:636 ../port/path.c:653
 #, c-format
-msgid "could not get junction for \"%s\": %s\n"
-msgstr "não pôde obter junção para \"%s\": %s\n"
+msgid "out of memory\n"
+msgstr "sem memória\n"
+
+#: ../common/fe_memutils.c:77
+#, c-format
+msgid "cannot duplicate null pointer (internal error)\n"
+msgstr "não pode duplicar ponteiro nulo (erro interno)\n"
 
-#: ../port/dirmod.c:377
+#: ../common/pgfnames.c:45
 #, c-format
 msgid "could not open directory \"%s\": %s\n"
 msgstr "não pôde abrir diretório \"%s\": %s\n"
 
-#: ../port/dirmod.c:414
+#: ../common/pgfnames.c:72
 #, c-format
 msgid "could not read directory \"%s\": %s\n"
 msgstr "não pôde ler diretório \"%s\": %s\n"
 
-#: ../port/dirmod.c:497
+#: ../common/pgfnames.c:84
+#, c-format
+msgid "could not close directory \"%s\": %s\n"
+msgstr "não pôde fechar diretório \"%s\": %s\n"
+
+#: ../common/psprintf.c:179 ../port/path.c:596 ../port/path.c:634
+#: ../port/path.c:651 access/transam/xlog.c:6119 lib/stringinfo.c:258
+#: libpq/auth.c:823 libpq/auth.c:1179 libpq/auth.c:1247 libpq/auth.c:1647
+#: postmaster/bgworker.c:267 postmaster/bgworker.c:783
+#: postmaster/postmaster.c:2167 postmaster/postmaster.c:2198
+#: postmaster/postmaster.c:3734 postmaster/postmaster.c:4435
+#: postmaster/postmaster.c:4520 postmaster/postmaster.c:5213
+#: postmaster/postmaster.c:5445 storage/buffer/buf_init.c:154
+#: storage/buffer/localbuf.c:396 storage/file/fd.c:458 storage/file/fd.c:855
+#: storage/file/fd.c:973 storage/file/fd.c:1586 storage/ipc/procarray.c:909
+#: storage/ipc/procarray.c:1395 storage/ipc/procarray.c:1402
+#: storage/ipc/procarray.c:1751 storage/ipc/procarray.c:2335
+#: utils/adt/formatting.c:1519 utils/adt/formatting.c:1639
+#: utils/adt/formatting.c:1760 utils/adt/regexp.c:219 utils/adt/varlena.c:3653
+#: utils/adt/varlena.c:3674 utils/fmgr/dfmgr.c:224 utils/hash/dynahash.c:379
+#: utils/hash/dynahash.c:456 utils/hash/dynahash.c:970 utils/mb/mbutils.c:376
+#: utils/mb/mbutils.c:709 utils/misc/guc.c:3582 utils/misc/guc.c:3598
+#: utils/misc/guc.c:3611 utils/misc/tzparser.c:455 utils/mmgr/aset.c:499
+#: utils/mmgr/aset.c:678 utils/mmgr/aset.c:872 utils/mmgr/aset.c:1114
+#, c-format
+msgid "out of memory"
+msgstr "sem memória"
+
+#: ../common/relpath.c:59
+#, c-format
+msgid "invalid fork name"
+msgstr "nome de fork é inválido"
+
+#: ../common/relpath.c:60
+#, c-format
+msgid "Valid fork names are \"main\", \"fsm\", \"vm\", and \"init\"."
+msgstr "Nomes válidos são \"main\", \"fsm\", \"vm\" e \"init\"."
+
+#: ../common/rmtree.c:77
 #, c-format
 msgid "could not stat file or directory \"%s\": %s\n"
 msgstr "não pôde executar stat no arquivo ou  diretório \"%s\": %s\n"
 
-#: ../port/dirmod.c:524 ../port/dirmod.c:541
+#: ../common/rmtree.c:104 ../common/rmtree.c:121
 #, c-format
 msgid "could not remove file or directory \"%s\": %s\n"
 msgstr "não pôde remover arquivo ou diretório \"%s\": %s\n"
 
-#: ../port/exec.c:127 ../port/exec.c:241 ../port/exec.c:284
+#: ../common/username.c:45
 #, c-format
-msgid "could not identify current directory: %s"
-msgstr "não pôde identificar diretório atual: %s"
+msgid "could not look up effective user ID %ld: %s"
+msgstr "não pôde encontrar ID de usuário efetivo %ld: %s"
+
+#: ../common/username.c:47 libpq/auth.c:1594
+msgid "user does not exist"
+msgstr "usuário não existe"
 
-#: ../port/exec.c:146
+#: ../common/username.c:61
 #, c-format
-msgid "invalid binary \"%s\""
-msgstr "binário \"%s\" é inválido"
+msgid "user name lookup failure: %s"
+msgstr "falhou ao pesquisar nome de usuário: %s"
 
-#: ../port/exec.c:195
+#: ../common/wait_error.c:47
 #, c-format
-msgid "could not read binary \"%s\""
-msgstr "não pôde ler o binário \"%s\""
+msgid "command not executable"
+msgstr "comando não é executável"
 
-#: ../port/exec.c:202
+#: ../common/wait_error.c:51
 #, c-format
-msgid "could not find a \"%s\" to execute"
-msgstr "não pôde encontrar o \"%s\" para executá-lo"
+msgid "command not found"
+msgstr "comando não encontrado"
 
-#: ../port/exec.c:257 ../port/exec.c:293
+#: ../common/wait_error.c:56
 #, c-format
-msgid "could not change directory to \"%s\": %s"
-msgstr "não pôde mudar diretório para \"%s\": %s"
+msgid "child process exited with exit code %d"
+msgstr "processo filho terminou com código de saída %d"
 
-#: ../port/exec.c:272
+#: ../common/wait_error.c:63
 #, c-format
-msgid "could not read symbolic link \"%s\""
-msgstr "não pôde ler link simbólico \"%s\""
+msgid "child process was terminated by exception 0x%X"
+msgstr "processo filho foi terminado pela exceção 0x%X"
 
-#: ../port/exec.c:523
+#: ../common/wait_error.c:73
 #, c-format
-msgid "pclose failed: %s"
-msgstr "pclose falhou: %s"
+msgid "child process was terminated by signal %s"
+msgstr "processo filho foi terminado pelo sinal %s"
+
+#: ../common/wait_error.c:77
+#, c-format
+msgid "child process was terminated by signal %d"
+msgstr "processo filho foi terminado pelo sinal %d"
+
+#: ../common/wait_error.c:82
+#, c-format
+msgid "child process exited with unrecognized status %d"
+msgstr "processo filho terminou com status desconhecido %d"
+
+#: ../port/chklocale.c:259
+#, fuzzy, c-format
+msgid "could not determine encoding for codeset \"%s\""
+msgstr "não pôde determinar codificação para codeset \"%s\""
+
+#: ../port/chklocale.c:260 ../port/chklocale.c:389
+#, c-format
+msgid "Please report this to ."
+msgstr "Por favor relate isto a ."
+
+#: ../port/chklocale.c:381 ../port/chklocale.c:387
+#, c-format
+msgid "could not determine encoding for locale \"%s\": codeset is \"%s\""
+msgstr "não pôde determinar codificação para configuração regional \"%s\": codeset é \"%s\""
+
+#: ../port/dirmod.c:216
+#, c-format
+msgid "could not set junction for \"%s\": %s"
+msgstr "não pôde definir junção para \"%s\": %s"
+
+#: ../port/dirmod.c:219
+#, c-format
+msgid "could not set junction for \"%s\": %s\n"
+msgstr "não pôde definir junção para \"%s\": %s\n"
+
+#: ../port/dirmod.c:291
+#, c-format
+msgid "could not get junction for \"%s\": %s"
+msgstr "não pôde obter junção para \"%s\": %s"
+
+#: ../port/dirmod.c:294
+#, c-format
+msgid "could not get junction for \"%s\": %s\n"
+msgstr "não pôde obter junção para \"%s\": %s\n"
 
 #: ../port/open.c:112
 #, c-format
@@ -136,46 +229,16 @@ msgstr "Continuar tentando por 30 segundos."
 msgid "You might have antivirus, backup, or similar software interfering with the database system."
 msgstr "Você pode ter programa de antivírus, cópia de segurança ou similares interferindo com o sistema de banco de dados."
 
+#: ../port/path.c:620
+#, c-format
+msgid "could not get current working directory: %s\n"
+msgstr "não pôde obter diretório de trabalho atual: %s\n"
+
 #: ../port/strerror.c:25
 #, c-format
 msgid "unrecognized error %d"
 msgstr "erro desconhecido %d"
 
-#: ../port/wait_error.c:47
-#, c-format
-msgid "command not executable"
-msgstr "comando não é executável"
-
-#: ../port/wait_error.c:51
-#, c-format
-msgid "command not found"
-msgstr "comando não encontrado"
-
-#: ../port/wait_error.c:56
-#, c-format
-msgid "child process exited with exit code %d"
-msgstr "processo filho terminou com código de saída %d"
-
-#: ../port/wait_error.c:63
-#, c-format
-msgid "child process was terminated by exception 0x%X"
-msgstr "processo filho foi terminado pela exceção 0x%X"
-
-#: ../port/wait_error.c:73
-#, c-format
-msgid "child process was terminated by signal %s"
-msgstr "processo filho foi terminado pelo sinal %s"
-
-#: ../port/wait_error.c:77
-#, c-format
-msgid "child process was terminated by signal %d"
-msgstr "processo filho foi terminado pelo sinal %d"
-
-#: ../port/wait_error.c:82
-#, c-format
-msgid "child process exited with unrecognized status %d"
-msgstr "processo filho terminou com status desconhecido %d"
-
 #: ../port/win32error.c:189
 #, c-format
 msgid "mapped win32 error code %lu to %d"
@@ -186,7 +249,7 @@ msgstr "código de erro win32 mapeado de %lu para %d"
 msgid "unrecognized win32 error code: %lu"
 msgstr "código de erro win32 desconhecido: %lu"
 
-#: access/common/heaptuple.c:645 access/common/heaptuple.c:1399
+#: access/common/heaptuple.c:679 access/common/heaptuple.c:1419
 #, c-format
 msgid "number of columns (%d) exceeds limit (%d)"
 msgstr "número de colunas (%d) excede limite (%d)"
@@ -196,68 +259,68 @@ msgstr "número de colunas (%d) excede limite (%d)"
 msgid "number of index columns (%d) exceeds limit (%d)"
 msgstr "número de colunas indexadas (%d) excede limite (%d)"
 
-#: access/common/indextuple.c:168 access/spgist/spgutils.c:605
+#: access/common/indextuple.c:173 access/spgist/spgutils.c:605
 #, c-format
-msgid "index row requires %lu bytes, maximum size is %lu"
-msgstr "registro do índice requer %lu bytes, tamanho máximo é %lu"
+msgid "index row requires %zu bytes, maximum size is %zu"
+msgstr "registro do índice requer %zu bytes, tamanho máximo é %zu"
 
-#: access/common/printtup.c:293 tcop/fastpath.c:182 tcop/fastpath.c:571
-#: tcop/postgres.c:1673
+#: access/common/printtup.c:294 tcop/fastpath.c:182 tcop/fastpath.c:571
+#: tcop/postgres.c:1670
 #, c-format
 msgid "unsupported format code: %d"
 msgstr "código do formato não é suportado: %d"
 
-#: access/common/reloptions.c:375
+#: access/common/reloptions.c:396
 #, c-format
 msgid "user-defined relation parameter types limit exceeded"
 msgstr "limite dos tipos de parâmetro da relação definidos pelo usuário foi excedido"
 
-#: access/common/reloptions.c:659
+#: access/common/reloptions.c:680
 #, c-format
 msgid "RESET must not include values for parameters"
 msgstr "RESET não deve incluir valores para parâmetros"
 
-#: access/common/reloptions.c:692
+#: access/common/reloptions.c:713
 #, c-format
 msgid "unrecognized parameter namespace \"%s\""
 msgstr "namespace do parâmetro \"%s\" desconhecido"
 
-#: access/common/reloptions.c:936 parser/parse_clause.c:271
+#: access/common/reloptions.c:959 parser/parse_clause.c:268
 #, c-format
 msgid "unrecognized parameter \"%s\""
 msgstr "parâmetro \"%s\" desconhecido"
 
-#: access/common/reloptions.c:961
+#: access/common/reloptions.c:984
 #, c-format
 msgid "parameter \"%s\" specified more than once"
 msgstr "parâmetro \"%s\" foi especificado mais de uma vez"
 
-#: access/common/reloptions.c:976
+#: access/common/reloptions.c:999
 #, c-format
 msgid "invalid value for boolean option \"%s\": %s"
 msgstr "valor é inválido para opção booleano \"%s\": %s"
 
-#: access/common/reloptions.c:987
+#: access/common/reloptions.c:1010
 #, c-format
 msgid "invalid value for integer option \"%s\": %s"
 msgstr "valor é inválido para opção inteiro \"%s\": %s"
 
-#: access/common/reloptions.c:992 access/common/reloptions.c:1010
+#: access/common/reloptions.c:1015 access/common/reloptions.c:1033
 #, c-format
 msgid "value %s out of bounds for option \"%s\""
 msgstr "valor %s está fora do intervalo para opção \"%s\""
 
-#: access/common/reloptions.c:994
+#: access/common/reloptions.c:1017
 #, c-format
 msgid "Valid values are between \"%d\" and \"%d\"."
 msgstr "Valores válidos estão entre \"%d\" e \"%d\"."
 
-#: access/common/reloptions.c:1005
+#: access/common/reloptions.c:1028
 #, c-format
 msgid "invalid value for floating point option \"%s\": %s"
 msgstr "valor é inválido para opção ponto flutuante \"%s\": %s"
 
-#: access/common/reloptions.c:1012
+#: access/common/reloptions.c:1035
 #, c-format
 msgid "Valid values are between \"%f\" and \"%f\"."
 msgstr "Valores válidos estão entre \"%f\" e \"%f\"."
@@ -282,42 +345,42 @@ msgstr "Atributo \"%s\" do tipo %s não corresponde ao atributo do tipo %s."
 msgid "Attribute \"%s\" of type %s does not exist in type %s."
 msgstr "Atributo \"%s\" do tipo %s não existe no tipo %s."
 
-#: access/common/tupdesc.c:591 parser/parse_relation.c:1289
+#: access/common/tupdesc.c:635 parser/parse_relation.c:1339
 #, c-format
 msgid "column \"%s\" cannot be declared SETOF"
 msgstr "coluna \"%s\" não pode ser declarada SETOF"
 
-#: access/gin/ginentrypage.c:100 access/nbtree/nbtinsert.c:540
-#: access/nbtree/nbtsort.c:485 access/spgist/spgdoinsert.c:1888
+#: access/gin/ginentrypage.c:108 access/nbtree/nbtinsert.c:545
+#: access/nbtree/nbtsort.c:485 access/spgist/spgdoinsert.c:1880
 #, c-format
-msgid "index row size %lu exceeds maximum %lu for index \"%s\""
-msgstr "tamanho de registro do índice %lu excede o máximo %lu para índice \"%s\""
+msgid "index row size %zu exceeds maximum %zu for index \"%s\""
+msgstr "tamanho de registro do índice %zu excede o máximo %zu para índice \"%s\""
 
-#: access/gin/ginscan.c:400
+#: access/gin/ginscan.c:402
 #, c-format
 msgid "old GIN indexes do not support whole-index scans nor searches for nulls"
 msgstr "índices GIN antigos não suportam buscas em todo índice e nem buscas por nulos"
 
-#: access/gin/ginscan.c:401
+#: access/gin/ginscan.c:403
 #, c-format
 msgid "To fix this, do REINDEX INDEX \"%s\"."
 msgstr "Para corrigir isto, faça REINDEX INDEX \"%s\"."
 
-#: access/gist/gist.c:610 access/gist/gistvacuum.c:266
+#: access/gist/gist.c:624 access/gist/gistvacuum.c:266
 #, c-format
 msgid "index \"%s\" contains an inner tuple marked as invalid"
 msgstr "índice \"%s\" contém uma tupla interna marcada como inválida"
 
-#: access/gist/gist.c:612 access/gist/gistvacuum.c:268
+#: access/gist/gist.c:626 access/gist/gistvacuum.c:268
 #, c-format
 msgid "This is caused by an incomplete page split at crash recovery before upgrading to PostgreSQL 9.1."
 msgstr "Isso é causado por uma divisão de página incompleta durante recuperação de desastre antes da atualização para PostgreSQL 9.1."
 
-#: access/gist/gist.c:613 access/gist/gistutil.c:693
+#: access/gist/gist.c:627 access/gist/gistutil.c:693
 #: access/gist/gistutil.c:704 access/gist/gistvacuum.c:269
 #: access/hash/hashutil.c:172 access/hash/hashutil.c:183
 #: access/hash/hashutil.c:195 access/hash/hashutil.c:216
-#: access/nbtree/nbtpage.c:508 access/nbtree/nbtpage.c:519
+#: access/nbtree/nbtpage.c:509 access/nbtree/nbtpage.c:520
 #, c-format
 msgid "Please REINDEX it."
 msgstr "Por favor execute REINDEX."
@@ -332,7 +395,7 @@ msgstr "valor é inválido para opção \"buffering\""
 msgid "Valid values are \"on\", \"off\", and \"auto\"."
 msgstr "Valores válidos são \"on\", \"off\" e \"auto\"."
 
-#: access/gist/gistbuildbuffers.c:780 utils/sort/logtape.c:213
+#: access/gist/gistbuildbuffers.c:780 utils/sort/logtape.c:212
 #, c-format
 msgid "could not write block %ld of temporary file: %m"
 msgstr "não pôde escrever bloco %ld do arquivo temporário: %m"
@@ -348,24 +411,24 @@ msgid "The index is not optimal. To optimize it, contact a developer, or try to
 msgstr "O índice não é ótimo. Para otimizá-lo, entre em contato com um desenvolvedor ou tente utilizar a coluna como a segunda no comando CREATE INDEX."
 
 #: access/gist/gistutil.c:690 access/hash/hashutil.c:169
-#: access/nbtree/nbtpage.c:505
+#: access/nbtree/nbtpage.c:506
 #, c-format
 msgid "index \"%s\" contains unexpected zero page at block %u"
 msgstr "índice \"%s\" contém página de tamanho zero inesperada no bloco %u"
 
 #: access/gist/gistutil.c:701 access/hash/hashutil.c:180
-#: access/hash/hashutil.c:192 access/nbtree/nbtpage.c:516
+#: access/hash/hashutil.c:192 access/nbtree/nbtpage.c:517
 #, c-format
 msgid "index \"%s\" contains corrupted page at block %u"
 msgstr "índice \"%s\" contém página corrompida no bloco %u"
 
 #: access/hash/hashinsert.c:68
 #, c-format
-msgid "index row size %lu exceeds hash maximum %lu"
-msgstr "tamanho de registro do índice %lu excede tamanho máximo do hash %lu"
+msgid "index row size %zu exceeds hash maximum %zu"
+msgstr "tamanho de registro do índice %zu excede tamanho máximo do hash %zu"
 
-#: access/hash/hashinsert.c:71 access/spgist/spgdoinsert.c:1892
-#: access/spgist/spgutils.c:667
+#: access/hash/hashinsert.c:70 access/spgist/spgdoinsert.c:1884
+#: access/spgist/spgutils.c:666
 #, c-format
 msgid "Values larger than a buffer page cannot be indexed."
 msgstr "Valores maiores do que uma página do buffer não podem ser indexados."
@@ -390,58 +453,137 @@ msgstr "índice \"%s\" não é um índice hash"
 msgid "index \"%s\" has wrong hash version"
 msgstr "índice \"%s\" tem versão incorreta do hash"
 
-#: access/heap/heapam.c:1197 access/heap/heapam.c:1225
-#: access/heap/heapam.c:1257 catalog/aclchk.c:1742
+#: access/heap/heapam.c:1199 access/heap/heapam.c:1227
+#: access/heap/heapam.c:1259 catalog/aclchk.c:1742
 #, c-format
 msgid "\"%s\" is an index"
 msgstr "\"%s\" é um índice"
 
-#: access/heap/heapam.c:1202 access/heap/heapam.c:1230
-#: access/heap/heapam.c:1262 catalog/aclchk.c:1749 commands/tablecmds.c:8239
-#: commands/tablecmds.c:10592
+#: access/heap/heapam.c:1204 access/heap/heapam.c:1232
+#: access/heap/heapam.c:1264 catalog/aclchk.c:1749 commands/tablecmds.c:8495
+#: commands/tablecmds.c:11279
 #, c-format
 msgid "\"%s\" is a composite type"
 msgstr "\"%s\" é um tipo composto"
 
-#: access/heap/heapam.c:4017 access/heap/heapam.c:4229
-#: access/heap/heapam.c:4284
+#: access/heap/heapam.c:4223 access/heap/heapam.c:4436
+#: access/heap/heapam.c:4493 executor/execMain.c:1992
 #, c-format
 msgid "could not obtain lock on row in relation \"%s\""
 msgstr "não pôde obter bloqueio no registro da relação \"%s\""
 
-#: access/heap/hio.c:240 access/heap/rewriteheap.c:603
+#: access/heap/hio.c:240 access/heap/rewriteheap.c:666
+#, c-format
+msgid "row is too big: size %zu, maximum size %zu"
+msgstr "registro é muito grande: tamanho %zu, tamanho máximo %zu"
+
+#: access/heap/rewriteheap.c:932
+#, c-format
+msgid "could not write to file \"%s\", wrote %d of %d: %m"
+msgstr "não pôde escrever no arquivo \"%s\", escreveu %d de %d: %m"
+
+#: access/heap/rewriteheap.c:973 access/heap/rewriteheap.c:1185
+#: access/heap/rewriteheap.c:1282 access/transam/timeline.c:406
+#: access/transam/timeline.c:493 access/transam/xlog.c:3179
+#: access/transam/xlog.c:3309 replication/logical/snapbuild.c:1579
+#: replication/slot.c:1032 replication/slot.c:1121 storage/file/fd.c:436
+#: storage/smgr/md.c:966 storage/smgr/md.c:1197 storage/smgr/md.c:1370
+#: utils/misc/guc.c:6610
+#, c-format
+msgid "could not fsync file \"%s\": %m"
+msgstr "não pôde executar fsync no arquivo \"%s\": %m"
+
+#: access/heap/rewriteheap.c:1028 access/heap/rewriteheap.c:1148
+#: access/transam/timeline.c:314 access/transam/timeline.c:471
+#: access/transam/xlog.c:3135 access/transam/xlog.c:3270
+#: access/transam/xlog.c:9908 access/transam/xlog.c:10223
+#: postmaster/postmaster.c:4210 replication/slot.c:990
+#: storage/file/copydir.c:162 storage/smgr/md.c:304 utils/time/snapmgr.c:976
+#, c-format
+msgid "could not create file \"%s\": %m"
+msgstr "não pôde criar arquivo \"%s\": %m"
+
+#: access/heap/rewriteheap.c:1157
+#, c-format
+msgid "could not truncate file \"%s\" to %u: %m"
+msgstr "não pôde truncar arquivo \"%s\" para %u: %m"
+
+#: access/heap/rewriteheap.c:1164 replication/walsender.c:465
+#: storage/smgr/md.c:1782
+#, c-format
+msgid "could not seek to end of file \"%s\": %m"
+msgstr "não pôde posicionar no fim do arquivo \"%s\": %m"
+
+#: access/heap/rewriteheap.c:1175 access/transam/timeline.c:366
+#: access/transam/timeline.c:400 access/transam/timeline.c:487
+#: access/transam/xlog.c:3170 access/transam/xlog.c:3302
+#: postmaster/postmaster.c:4220 postmaster/postmaster.c:4230
+#: replication/logical/snapbuild.c:1563 replication/slot.c:1018
+#: storage/file/copydir.c:187 utils/init/miscinit.c:1057
+#: utils/init/miscinit.c:1066 utils/init/miscinit.c:1073 utils/misc/guc.c:8301
+#: utils/misc/guc.c:8315 utils/time/snapmgr.c:981 utils/time/snapmgr.c:988
+#, c-format
+msgid "could not write to file \"%s\": %m"
+msgstr "não pôde escrever no arquivo \"%s\": %m"
+
+#: access/heap/rewriteheap.c:1258 access/transam/xlog.c:10092
+#: access/transam/xlogarchive.c:114 access/transam/xlogarchive.c:467
+#: replication/logical/reorderbuffer.c:2353
+#: replication/logical/reorderbuffer.c:2410
+#: replication/logical/snapbuild.c:1509 replication/logical/snapbuild.c:1880
+#: replication/slot.c:1095 storage/ipc/dsm.c:326 storage/smgr/md.c:404
+#: storage/smgr/md.c:453 storage/smgr/md.c:1317
+#, c-format
+msgid "could not remove file \"%s\": %m"
+msgstr "não pôde remover arquivo \"%s\": %m"
+
+#: access/heap/rewriteheap.c:1272 access/transam/timeline.c:110
+#: access/transam/timeline.c:235 access/transam/timeline.c:333
+#: access/transam/xlog.c:3111 access/transam/xlog.c:3218
+#: access/transam/xlog.c:3255 access/transam/xlog.c:3530
+#: access/transam/xlog.c:3608 replication/basebackup.c:458
+#: replication/basebackup.c:1167 replication/logical/logicalfuncs.c:152
+#: replication/logical/reorderbuffer.c:1966
+#: replication/logical/reorderbuffer.c:2173
+#: replication/logical/reorderbuffer.c:2802
+#: replication/logical/snapbuild.c:1556 replication/logical/snapbuild.c:1640
+#: replication/slot.c:1110 replication/walsender.c:458
+#: replication/walsender.c:2094 storage/file/copydir.c:155
+#: storage/file/fd.c:422 storage/smgr/md.c:586 storage/smgr/md.c:844
+#: utils/error/elog.c:1797 utils/init/miscinit.c:992
+#: utils/init/miscinit.c:1121
 #, c-format
-msgid "row is too big: size %lu, maximum size %lu"
-msgstr "registro é muito grande: tamanho %lu, tamanho máximo %lu"
+msgid "could not open file \"%s\": %m"
+msgstr "não pôde abrir arquivo \"%s\": %m"
 
-#: access/index/indexam.c:169 catalog/objectaddress.c:842
-#: commands/indexcmds.c:1744 commands/tablecmds.c:231
-#: commands/tablecmds.c:10583
+#: access/index/indexam.c:172 catalog/objectaddress.c:855
+#: commands/indexcmds.c:1725 commands/tablecmds.c:232
+#: commands/tablecmds.c:11270
 #, c-format
 msgid "\"%s\" is not an index"
 msgstr "\"%s\" não é um índice"
 
-#: access/nbtree/nbtinsert.c:392
+#: access/nbtree/nbtinsert.c:396
 #, c-format
 msgid "duplicate key value violates unique constraint \"%s\""
 msgstr "duplicar valor da chave viola a restrição de unicidade \"%s\""
 
-#: access/nbtree/nbtinsert.c:394
+#: access/nbtree/nbtinsert.c:398
 #, c-format
 msgid "Key %s already exists."
 msgstr "Chave %s já existe."
 
-#: access/nbtree/nbtinsert.c:462
+#: access/nbtree/nbtinsert.c:466
 #, c-format
 msgid "failed to re-find tuple within index \"%s\""
 msgstr "falhou ao reencontrar tupla no índice \"%s\""
 
-#: access/nbtree/nbtinsert.c:464
+#: access/nbtree/nbtinsert.c:468
 #, c-format
 msgid "This may be because of a non-immutable index expression."
 msgstr "Isso pode ser por causa de uma expressão não imutável do índice."
 
-#: access/nbtree/nbtinsert.c:544 access/nbtree/nbtsort.c:489
+#: access/nbtree/nbtinsert.c:548 access/nbtree/nbtsort.c:488
 #, c-format
 msgid ""
 "Values larger than 1/3 of a buffer page cannot be indexed.\n"
@@ -450,30 +592,40 @@ msgstr ""
 "Valores maiores do que 1/3 da página do buffer não podem ser indexados.\n"
 "Considere um índice de uma função de um hash MD5 de um valor ou utilize uma indexação de texto completa."
 
-#: access/nbtree/nbtpage.c:159 access/nbtree/nbtpage.c:361
-#: access/nbtree/nbtpage.c:448 parser/parse_utilcmd.c:1625
+#: access/nbtree/nbtpage.c:166 access/nbtree/nbtpage.c:362
+#: access/nbtree/nbtpage.c:449 parser/parse_utilcmd.c:1620
 #, c-format
 msgid "index \"%s\" is not a btree"
 msgstr "índice \"%s\" não é uma árvore B"
 
-#: access/nbtree/nbtpage.c:165 access/nbtree/nbtpage.c:367
-#: access/nbtree/nbtpage.c:454
+#: access/nbtree/nbtpage.c:172 access/nbtree/nbtpage.c:368
+#: access/nbtree/nbtpage.c:455
 #, c-format
 msgid "version mismatch in index \"%s\": file version %d, code version %d"
 msgstr "versão não corresponde no índice \"%s\": versão do arquivo %d, versão do código %d"
 
-#: access/spgist/spgutils.c:664
+#: access/nbtree/nbtpage.c:1187
+#, fuzzy, c-format
+msgid "index \"%s\" contains a half-dead internal page"
+msgstr "índice \"%s\" contém uma página interna parcialmente não vigente"
+
+#: access/nbtree/nbtpage.c:1189
+#, c-format
+msgid "This can be caused by an interrupt VACUUM in version 9.3 or older, before upgrade. Please REINDEX it."
+msgstr ""
+
+#: access/spgist/spgutils.c:663
 #, c-format
-msgid "SP-GiST inner tuple size %lu exceeds maximum %lu"
-msgstr "tamanho da tupla interna do SP-GiST %lu excede o máximo %lu"
+msgid "SP-GiST inner tuple size %zu exceeds maximum %zu"
+msgstr "tamanho da tupla interna do SP-GiST %zu excede o máximo %zu"
 
-#: access/transam/multixact.c:946
+#: access/transam/multixact.c:990
 #, c-format
 msgid "database is not accepting commands that generate new MultiXactIds to avoid wraparound data loss in database \"%s\""
 msgstr "banco de dados não está aceitando comandos que geram novos MultiXactIds para evitar perda de dados por reinício no banco de dados \"%s\""
 
-#: access/transam/multixact.c:948 access/transam/multixact.c:955
-#: access/transam/multixact.c:970 access/transam/multixact.c:979
+#: access/transam/multixact.c:992 access/transam/multixact.c:999
+#: access/transam/multixact.c:1014 access/transam/multixact.c:1023
 #, c-format
 msgid ""
 "Execute a database-wide VACUUM in that database.\n"
@@ -482,41 +634,41 @@ msgstr ""
 "Execute um VACUUM completo naquele banco de dados.\n"
 "Você também pode precisar efetivar ou desfazer transações preparadas antigas."
 
-#: access/transam/multixact.c:953
+#: access/transam/multixact.c:997
 #, c-format
 msgid "database is not accepting commands that generate new MultiXactIds to avoid wraparound data loss in database with OID %u"
 msgstr "banco de dados não está aceitando comandos que geram novos MultiXactIds para evitar perda de dados por reinício no banco de dados com OID %u"
 
-#: access/transam/multixact.c:965 access/transam/multixact.c:2156
+#: access/transam/multixact.c:1009 access/transam/multixact.c:2200
 #, c-format
 msgid "database \"%s\" must be vacuumed before %u more MultiXactId is used"
 msgid_plural "database \"%s\" must be vacuumed before %u more MultiXactIds are used"
 msgstr[0] "banco de dados \"%s\" deve ser limpo antes que %u MultiXactId seja utilizado"
 msgstr[1] "banco de dados \"%s\" deve ser limpo antes que %u MultiXactIds sejam utilizados"
 
-#: access/transam/multixact.c:974 access/transam/multixact.c:2165
+#: access/transam/multixact.c:1018 access/transam/multixact.c:2209
 #, c-format
 msgid "database with OID %u must be vacuumed before %u more MultiXactId is used"
 msgid_plural "database with OID %u must be vacuumed before %u more MultiXactIds are used"
 msgstr[0] "banco de dados com OID %u deve ser limpo antes que %u MultiXactId seja utilizado"
 msgstr[1] "banco de dados com OID %u deve ser limpo antes que %u MultiXactIds sejam utilizados"
 
-#: access/transam/multixact.c:1125
+#: access/transam/multixact.c:1169
 #, c-format
 msgid "MultiXactId %u does no longer exist -- apparent wraparound"
 msgstr "MultiXactId %u não existe -- reinício aparente"
 
-#: access/transam/multixact.c:1133
+#: access/transam/multixact.c:1177
 #, c-format
 msgid "MultiXactId %u has not been created yet -- apparent wraparound"
 msgstr "MultiXactId %u não foi criado ainda -- reinício aparente"
 
-#: access/transam/multixact.c:2121
+#: access/transam/multixact.c:2165
 #, c-format
 msgid "MultiXactId wrap limit is %u, limited by database with OID %u"
 msgstr "limite de reinício do MultiXactId é %u, limitado pelo banco de dados com OID %u"
 
-#: access/transam/multixact.c:2161 access/transam/multixact.c:2170
+#: access/transam/multixact.c:2205 access/transam/multixact.c:2214
 #: access/transam/varsup.c:137 access/transam/varsup.c:144
 #: access/transam/varsup.c:374 access/transam/varsup.c:381
 #, c-format
@@ -527,7 +679,7 @@ msgstr ""
 "Para evitar um desligamento do banco de dados, execute um VACUUM completo naquele banco de dados.\n"
 "Você também pode precisar efetivar ou desfazer transações preparadas antigas."
 
-#: access/transam/multixact.c:2728
+#: access/transam/multixact.c:2798
 #, c-format
 msgid "invalid MultiXactId: %u"
 msgstr "MultiXactId é inválido: %u"
@@ -584,19 +736,6 @@ msgstr "não pôde truncar diretório \"%s\": reinício aparente"
 msgid "removing file \"%s\""
 msgstr "removendo arquivo \"%s\""
 
-#: access/transam/timeline.c:110 access/transam/timeline.c:235
-#: access/transam/timeline.c:333 access/transam/xlog.c:2271
-#: access/transam/xlog.c:2384 access/transam/xlog.c:2421
-#: access/transam/xlog.c:2696 access/transam/xlog.c:2774
-#: replication/basebackup.c:390 replication/basebackup.c:1045
-#: replication/walsender.c:368 replication/walsender.c:1332
-#: storage/file/copydir.c:158 storage/file/copydir.c:248 storage/smgr/md.c:587
-#: storage/smgr/md.c:845 utils/error/elog.c:1672 utils/init/miscinit.c:1063
-#: utils/init/miscinit.c:1192
-#, c-format
-msgid "could not open file \"%s\": %m"
-msgstr "não pôde abrir arquivo \"%s\": %m"
-
 #: access/transam/timeline.c:147 access/transam/timeline.c:152
 #, c-format
 msgid "syntax error in history file: %s"
@@ -632,48 +771,20 @@ msgstr "dado é inválido no arquivo de histórico \"%s\""
 msgid "Timeline IDs must be less than child timeline's ID."
 msgstr "IDs de linha do tempo devem ser menores do que ID de linha do tempo descendente."
 
-#: access/transam/timeline.c:314 access/transam/timeline.c:471
-#: access/transam/xlog.c:2305 access/transam/xlog.c:2436
-#: access/transam/xlog.c:8726 access/transam/xlog.c:9041
-#: postmaster/postmaster.c:4089 storage/file/copydir.c:165
-#: storage/smgr/md.c:305 utils/time/snapmgr.c:861
-#, c-format
-msgid "could not create file \"%s\": %m"
-msgstr "não pôde criar arquivo \"%s\": %m"
-
-#: access/transam/timeline.c:345 access/transam/xlog.c:2449
-#: access/transam/xlog.c:8892 access/transam/xlog.c:8905
-#: access/transam/xlog.c:9273 access/transam/xlog.c:9316
-#: access/transam/xlogfuncs.c:596 access/transam/xlogfuncs.c:615
-#: replication/walsender.c:393 storage/file/copydir.c:179
-#: utils/adt/genfile.c:139
+#: access/transam/timeline.c:345 access/transam/xlog.c:3283
+#: access/transam/xlog.c:10074 access/transam/xlog.c:10087
+#: access/transam/xlog.c:10455 access/transam/xlog.c:10498
+#: access/transam/xlogfuncs.c:468 access/transam/xlogfuncs.c:487
+#: replication/logical/reorderbuffer.c:2820 replication/walsender.c:483
+#: storage/file/copydir.c:176 utils/adt/genfile.c:139
 #, c-format
 msgid "could not read file \"%s\": %m"
 msgstr "não pôde ler arquivo \"%s\": %m"
 
-#: access/transam/timeline.c:366 access/transam/timeline.c:400
-#: access/transam/timeline.c:487 access/transam/xlog.c:2335
-#: access/transam/xlog.c:2468 postmaster/postmaster.c:4099
-#: postmaster/postmaster.c:4109 storage/file/copydir.c:190
-#: utils/init/miscinit.c:1128 utils/init/miscinit.c:1137
-#: utils/init/miscinit.c:1144 utils/misc/guc.c:7638 utils/misc/guc.c:7652
-#: utils/time/snapmgr.c:866 utils/time/snapmgr.c:873
-#, c-format
-msgid "could not write to file \"%s\": %m"
-msgstr "não pôde escrever no arquivo \"%s\": %m"
-
-#: access/transam/timeline.c:406 access/transam/timeline.c:493
-#: access/transam/xlog.c:2345 access/transam/xlog.c:2475
-#: storage/file/copydir.c:262 storage/smgr/md.c:967 storage/smgr/md.c:1198
-#: storage/smgr/md.c:1371
-#, c-format
-msgid "could not fsync file \"%s\": %m"
-msgstr "não pôde executar fsync no arquivo \"%s\": %m"
-
 #: access/transam/timeline.c:411 access/transam/timeline.c:498
-#: access/transam/xlog.c:2351 access/transam/xlog.c:2480
-#: access/transam/xlogfuncs.c:621 commands/copy.c:1469
-#: storage/file/copydir.c:204
+#: access/transam/xlog.c:3185 access/transam/xlog.c:3314
+#: access/transam/xlogfuncs.c:493 commands/copy.c:1518
+#: storage/file/copydir.c:201
 #, c-format
 msgid "could not close file \"%s\": %m"
 msgstr "não pôde fechar arquivo \"%s\": %m"
@@ -684,10 +795,12 @@ msgid "could not link file \"%s\" to \"%s\": %m"
 msgstr "não pôde vincular arquivo \"%s\" a \"%s\": %m"
 
 #: access/transam/timeline.c:435 access/transam/timeline.c:522
-#: access/transam/xlog.c:4478 access/transam/xlog.c:5363
-#: access/transam/xlogarchive.c:457 access/transam/xlogarchive.c:474
-#: access/transam/xlogarchive.c:581 postmaster/pgarch.c:756
-#: utils/time/snapmgr.c:884
+#: access/transam/xlog.c:5399 access/transam/xlog.c:6492
+#: access/transam/xlogarchive.c:458 access/transam/xlogarchive.c:475
+#: access/transam/xlogarchive.c:582 postmaster/pgarch.c:759
+#: replication/logical/snapbuild.c:1593 replication/slot.c:457
+#: replication/slot.c:933 replication/slot.c:1044 utils/misc/guc.c:6854
+#: utils/time/snapmgr.c:999
 #, c-format
 msgid "could not rename file \"%s\" to \"%s\": %m"
 msgstr "não pôde renomear arquivo \"%s\" para \"%s\": %m"
@@ -697,156 +810,156 @@ msgstr "não pôde renomear arquivo \"%s\" para \"%s\": %m"
 msgid "requested timeline %u is not in this server's history"
 msgstr "linha do tempo solicitada %u não está no histórico do servidor"
 
-#: access/transam/twophase.c:253
+#: access/transam/twophase.c:330
 #, c-format
 msgid "transaction identifier \"%s\" is too long"
 msgstr "identificador de transação \"%s\" é muito longo"
 
-#: access/transam/twophase.c:260
+#: access/transam/twophase.c:337
 #, c-format
 msgid "prepared transactions are disabled"
 msgstr "transações preparadas estão desabilitadas"
 
-#: access/transam/twophase.c:261
+#: access/transam/twophase.c:338
 #, c-format
 msgid "Set max_prepared_transactions to a nonzero value."
 msgstr "Defina max_prepared_transactions para um valor diferente de zero."
 
-#: access/transam/twophase.c:294
+#: access/transam/twophase.c:357
 #, c-format
 msgid "transaction identifier \"%s\" is already in use"
 msgstr "identificador de transação \"%s\" já está em uso"
 
-#: access/transam/twophase.c:303
+#: access/transam/twophase.c:366
 #, c-format
 msgid "maximum number of prepared transactions reached"
 msgstr "número máximo de transações preparadas foi alcançado"
 
-#: access/transam/twophase.c:304
+#: access/transam/twophase.c:367
 #, c-format
 msgid "Increase max_prepared_transactions (currently %d)."
 msgstr "Aumente max_prepared_transactions (atualmente %d)."
 
-#: access/transam/twophase.c:431
+#: access/transam/twophase.c:505
 #, c-format
 msgid "prepared transaction with identifier \"%s\" is busy"
 msgstr "transação preparada com identificador \"%s\" está sendo utilizada"
 
-#: access/transam/twophase.c:439
+#: access/transam/twophase.c:511
 #, c-format
 msgid "permission denied to finish prepared transaction"
 msgstr "permissão negada ao finalizar transação preparada"
 
-#: access/transam/twophase.c:440
+#: access/transam/twophase.c:512
 #, c-format
 msgid "Must be superuser or the user that prepared the transaction."
 msgstr "Deve ser super-usuário ou usuário que preparou a transação."
 
-#: access/transam/twophase.c:451
+#: access/transam/twophase.c:523
 #, c-format
 msgid "prepared transaction belongs to another database"
 msgstr "transação preparada pertence a outro banco de dados"
 
-#: access/transam/twophase.c:452
+#: access/transam/twophase.c:524
 #, c-format
 msgid "Connect to the database where the transaction was prepared to finish it."
 msgstr "Conecte-se ao banco de dados onde a transação foi preparada para terminá-la."
 
-#: access/transam/twophase.c:466
+#: access/transam/twophase.c:539
 #, c-format
 msgid "prepared transaction with identifier \"%s\" does not exist"
 msgstr "transação preparada com identificador \"%s\" não existe"
 
-#: access/transam/twophase.c:969
+#: access/transam/twophase.c:1042
 #, c-format
 msgid "two-phase state file maximum length exceeded"
 msgstr "tamanho máximo do arquivo de status de efetivação em duas fases foi alcançado"
 
-#: access/transam/twophase.c:982
+#: access/transam/twophase.c:1055
 #, c-format
 msgid "could not create two-phase state file \"%s\": %m"
 msgstr "não pôde criar arquivo de status de efetivação em duas fases \"%s\": %m"
 
-#: access/transam/twophase.c:996 access/transam/twophase.c:1013
-#: access/transam/twophase.c:1062 access/transam/twophase.c:1482
-#: access/transam/twophase.c:1489
+#: access/transam/twophase.c:1069 access/transam/twophase.c:1086
+#: access/transam/twophase.c:1135 access/transam/twophase.c:1564
+#: access/transam/twophase.c:1571
 #, c-format
 msgid "could not write two-phase state file: %m"
 msgstr "não pôde escrever em arquivo de status de efetivação em duas fases: %m"
 
-#: access/transam/twophase.c:1022
+#: access/transam/twophase.c:1095
 #, c-format
 msgid "could not seek in two-phase state file: %m"
 msgstr "não pôde posicionar no arquivo de status de efetivação em duas fases: %m"
 
-#: access/transam/twophase.c:1068 access/transam/twophase.c:1507
+#: access/transam/twophase.c:1141 access/transam/twophase.c:1589
 #, c-format
 msgid "could not close two-phase state file: %m"
 msgstr "não pôde fechar arquivo de status de efetivação em duas fases: %m"
 
-#: access/transam/twophase.c:1148 access/transam/twophase.c:1588
+#: access/transam/twophase.c:1228 access/transam/twophase.c:1670
 #, c-format
 msgid "could not open two-phase state file \"%s\": %m"
 msgstr "não pôde abrir arquivo de status de efetivação em duas fases \"%s\": %m"
 
-#: access/transam/twophase.c:1165
+#: access/transam/twophase.c:1245
 #, c-format
 msgid "could not stat two-phase state file \"%s\": %m"
 msgstr "não pôde executar stat no arquivo de status de efetivação em duas fases \"%s\": %m"
 
-#: access/transam/twophase.c:1197
+#: access/transam/twophase.c:1277
 #, c-format
 msgid "could not read two-phase state file \"%s\": %m"
 msgstr "não pôde ler arquivo de status de efetivação em duas fases \"%s\": %m"
 
-#: access/transam/twophase.c:1293
+#: access/transam/twophase.c:1373
 #, c-format
 msgid "two-phase state file for transaction %u is corrupt"
 msgstr "arquivo de status de efetivação em duas fases para transação %u está corrompido"
 
-#: access/transam/twophase.c:1444
+#: access/transam/twophase.c:1526
 #, c-format
 msgid "could not remove two-phase state file \"%s\": %m"
 msgstr "não pôde remover arquivo de status de efetivação em duas fases \"%s\": %m"
 
-#: access/transam/twophase.c:1473
+#: access/transam/twophase.c:1555
 #, c-format
 msgid "could not recreate two-phase state file \"%s\": %m"
 msgstr "não pôde recriar arquivo de status de efetivação em duas fases \"%s\": %m"
 
-#: access/transam/twophase.c:1501
+#: access/transam/twophase.c:1583
 #, c-format
 msgid "could not fsync two-phase state file: %m"
 msgstr "não pôde executar fsync no arquivo de status de efetivação em duas fases: %m"
 
-#: access/transam/twophase.c:1597
+#: access/transam/twophase.c:1679
 #, c-format
 msgid "could not fsync two-phase state file \"%s\": %m"
 msgstr "não pôde executar fsync no arquivo de status de efetivação em duas fases \"%s\": %m"
 
-#: access/transam/twophase.c:1604
+#: access/transam/twophase.c:1686
 #, c-format
 msgid "could not close two-phase state file \"%s\": %m"
 msgstr "não pôde fechar arquivo de status de efetivação em duas fases \"%s\": %m"
 
-#: access/transam/twophase.c:1669
+#: access/transam/twophase.c:1751
 #, c-format
 msgid "removing future two-phase state file \"%s\""
 msgstr "removendo arquivo futuro de status de efetivação em duas fases \"%s\""
 
-#: access/transam/twophase.c:1685 access/transam/twophase.c:1696
-#: access/transam/twophase.c:1815 access/transam/twophase.c:1826
-#: access/transam/twophase.c:1899
+#: access/transam/twophase.c:1767 access/transam/twophase.c:1778
+#: access/transam/twophase.c:1897 access/transam/twophase.c:1908
+#: access/transam/twophase.c:1981
 #, c-format
 msgid "removing corrupt two-phase state file \"%s\""
 msgstr "removendo arquivo corrompido de status de efetivação em duas fases \"%s\""
 
-#: access/transam/twophase.c:1804 access/transam/twophase.c:1888
+#: access/transam/twophase.c:1886 access/transam/twophase.c:1970
 #, c-format
 msgid "removing stale two-phase state file \"%s\""
 msgstr "removendo arquivo antigo de status de efetivação em duas fases \"%s\""
 
-#: access/transam/twophase.c:1906
+#: access/transam/twophase.c:1988
 #, c-format
 msgid "recovering prepared transaction %u"
 msgstr "recuperação transação preparada %u"
@@ -859,10 +972,10 @@ msgstr "banco de dados não está aceitando comandos para evitar perda de dados
 #: access/transam/varsup.c:117 access/transam/varsup.c:124
 #, c-format
 msgid ""
-"Stop the postmaster and use a standalone backend to vacuum that database.\n"
+"Stop the postmaster and vacuum that database in single-user mode.\n"
 "You might also need to commit or roll back old prepared transactions."
 msgstr ""
-"Pare o postmaster e use um servidor autônomo para limpar aquele banco de dados.\n"
+"Para o postmaster e limpe aquele banco de dados em modo monousuário.\n"
 "Você também pode precisar efetivar ou desfazer transações preparadas antigas."
 
 #: access/transam/varsup.c:122
@@ -885,1071 +998,1094 @@ msgstr "banco de dados com OID %u deve ser limpo em %u transações"
 msgid "transaction ID wrap limit is %u, limited by database with OID %u"
 msgstr "limite de reinício do ID de transação é %u, limitado pelo banco de dados com OID %u"
 
-#: access/transam/xact.c:776
+#: access/transam/xact.c:814
 #, c-format
-msgid "cannot have more than 2^32-1 commands in a transaction"
-msgstr "não pode ter mais do que 2^32-1 comandos em uma transação"
+msgid "cannot have more than 2^32-2 commands in a transaction"
+msgstr "não pode ter mais do que 2^32-2 comandos em uma transação"
 
-#: access/transam/xact.c:1324
+#: access/transam/xact.c:1370
 #, c-format
 msgid "maximum number of committed subtransactions (%d) exceeded"
 msgstr "número máximo de subtransações efetivadas (%d) foi alcançado"
 
-#: access/transam/xact.c:2104
+#: access/transam/xact.c:2151
 #, c-format
 msgid "cannot PREPARE a transaction that has operated on temporary tables"
 msgstr "não pode executar PREPARE em uma transação que utilizou tabelas temporárias"
 
-#: access/transam/xact.c:2114
+#: access/transam/xact.c:2161
 #, c-format
 msgid "cannot PREPARE a transaction that has exported snapshots"
 msgstr "não pode executar PREPARE em uma transação que tem instantâneos exportados"
 
 #. translator: %s represents an SQL statement name
-#: access/transam/xact.c:2939
+#: access/transam/xact.c:3000
 #, c-format
 msgid "%s cannot run inside a transaction block"
 msgstr "%s não pode executar dentro de um bloco de transação"
 
 #. translator: %s represents an SQL statement name
-#: access/transam/xact.c:2949
+#: access/transam/xact.c:3010
 #, c-format
 msgid "%s cannot run inside a subtransaction"
 msgstr "%s não pode executar dentro de uma subtransação"
 
 #. translator: %s represents an SQL statement name
-#: access/transam/xact.c:2959
+#: access/transam/xact.c:3020
 #, c-format
 msgid "%s cannot be executed from a function or multi-command string"
 msgstr "%s não pode ser executada a partir de uma função ou cadeia de caracteres com múltiplos comandos"
 
 #. translator: %s represents an SQL statement name
-#: access/transam/xact.c:3010
+#: access/transam/xact.c:3091
 #, c-format
 msgid "%s can only be used in transaction blocks"
 msgstr "%s só pode ser utilizado em blocos de transação"
 
-#: access/transam/xact.c:3192
+#: access/transam/xact.c:3274
 #, c-format
 msgid "there is already a transaction in progress"
 msgstr "há uma transação em execução"
 
-#: access/transam/xact.c:3360 access/transam/xact.c:3453
+#: access/transam/xact.c:3442 access/transam/xact.c:3535
 #, c-format
 msgid "there is no transaction in progress"
 msgstr "não há uma transação em execução"
 
-#: access/transam/xact.c:3549 access/transam/xact.c:3600
-#: access/transam/xact.c:3606 access/transam/xact.c:3650
-#: access/transam/xact.c:3699 access/transam/xact.c:3705
+#: access/transam/xact.c:3631 access/transam/xact.c:3682
+#: access/transam/xact.c:3688 access/transam/xact.c:3732
+#: access/transam/xact.c:3781 access/transam/xact.c:3787
 #, c-format
 msgid "no such savepoint"
 msgstr "ponto de salvamento inexistente"
 
-#: access/transam/xact.c:4382
+#: access/transam/xact.c:4464
 #, c-format
 msgid "cannot have more than 2^32-1 subtransactions in a transaction"
 msgstr "não pode ter mais do que 2^32-1 subtransações em uma transação"
 
-#: access/transam/xlog.c:1616
+#: access/transam/xlog.c:2410
 #, c-format
 msgid "could not seek in log file %s to offset %u: %m"
 msgstr "não pôde posicionar no arquivo %s na posição %u: %m"
 
-#: access/transam/xlog.c:1633
+#: access/transam/xlog.c:2430
 #, c-format
-msgid "could not write to log file %s at offset %u, length %lu: %m"
-msgstr "não pôde escrever no arquivo de log %s na posição %u, tamanho %lu: %m"
+msgid "could not write to log file %s at offset %u, length %zu: %m"
+msgstr "não pôde escrever no arquivo de log %s na posição %u, tamanho %zu: %m"
 
-#: access/transam/xlog.c:1877
+#: access/transam/xlog.c:2706
 #, c-format
 msgid "updated min recovery point to %X/%X on timeline %u"
 msgstr "ponto de recuperação mínimo atualizado para %X/%X na linha do tempo %u"
 
-#: access/transam/xlog.c:2452
+#: access/transam/xlog.c:3286
 #, c-format
 msgid "not enough data in file \"%s\""
 msgstr "dados insuficientes no arquivo \"%s\""
 
-#: access/transam/xlog.c:2571
+#: access/transam/xlog.c:3405
 #, c-format
 msgid "could not link file \"%s\" to \"%s\" (initialization of log file): %m"
 msgstr "não pôde vincular arquivo \"%s\" a \"%s\" (inicialização do arquivo de log): %m"
 
-#: access/transam/xlog.c:2583
+#: access/transam/xlog.c:3417
 #, c-format
 msgid "could not rename file \"%s\" to \"%s\" (initialization of log file): %m"
 msgstr "não pôde renomear arquivo \"%s\" para \"%s\" (inicialização do arquivo de log): %m"
 
-#: access/transam/xlog.c:2611
+#: access/transam/xlog.c:3445
 #, c-format
 msgid "could not open transaction log file \"%s\": %m"
 msgstr "não pôde abrir arquivo de log de transação \"%s\": %m"
 
-#: access/transam/xlog.c:2800
+#: access/transam/xlog.c:3634
 #, c-format
 msgid "could not close log file %s: %m"
 msgstr "não pôde fechar arquivo de log de transação \"%s\": %m"
 
-#: access/transam/xlog.c:2859 replication/walsender.c:1327
+#: access/transam/xlog.c:3693 replication/logical/logicalfuncs.c:147
+#: replication/walsender.c:2089
 #, c-format
 msgid "requested WAL segment %s has already been removed"
 msgstr "segmento do WAL solicitado %s já foi removido"
 
-#: access/transam/xlog.c:2916 access/transam/xlog.c:3093
+#: access/transam/xlog.c:3771 access/transam/xlog.c:3948
 #, c-format
 msgid "could not open transaction log directory \"%s\": %m"
 msgstr "não pôde abrir diretório do log de transação \"%s\": %m"
 
-#: access/transam/xlog.c:2964
+#: access/transam/xlog.c:3819
 #, c-format
 msgid "recycled transaction log file \"%s\""
 msgstr "arquivo do log de transação \"%s\" foi reciclado"
 
-#: access/transam/xlog.c:2980
+#: access/transam/xlog.c:3835
 #, c-format
 msgid "removing transaction log file \"%s\""
 msgstr "removendo arquivo do log de transação \"%s\""
 
-#: access/transam/xlog.c:3003
+#: access/transam/xlog.c:3858
 #, c-format
 msgid "could not rename old transaction log file \"%s\": %m"
 msgstr "não pôde renomear arquivo de log de transação antigo \"%s\": %m"
 
-#: access/transam/xlog.c:3015
+#: access/transam/xlog.c:3870
 #, c-format
 msgid "could not remove old transaction log file \"%s\": %m"
 msgstr "não pôde remover arquivo de log de transação antigo \"%s\": %m"
 
-#: access/transam/xlog.c:3053 access/transam/xlog.c:3063
+#: access/transam/xlog.c:3908 access/transam/xlog.c:3918
 #, c-format
 msgid "required WAL directory \"%s\" does not exist"
 msgstr "diretório WAL requerido \"%s\" não existe"
 
-#: access/transam/xlog.c:3069
+#: access/transam/xlog.c:3924
 #, c-format
 msgid "creating missing WAL directory \"%s\""
 msgstr "criando diretório WAL ausente \"%s\""
 
-#: access/transam/xlog.c:3072
+#: access/transam/xlog.c:3927
 #, c-format
 msgid "could not create missing directory \"%s\": %m"
 msgstr "não pôde criar diretório ausente \"%s\": %m"
 
-#: access/transam/xlog.c:3106
+#: access/transam/xlog.c:3961
 #, c-format
 msgid "removing transaction log backup history file \"%s\""
 msgstr "removendo arquivo de histórico do log de transação \"%s\""
 
-#: access/transam/xlog.c:3302
+#: access/transam/xlog.c:4157
 #, c-format
 msgid "unexpected timeline ID %u in log segment %s, offset %u"
 msgstr "ID de linha do tempo %u inesperado no arquivo de log %s, posição %u"
 
-#: access/transam/xlog.c:3424
+#: access/transam/xlog.c:4279
 #, c-format
 msgid "new timeline %u is not a child of database system timeline %u"
 msgstr "nova linha do tempo %u não é descendente da linha do tempo %u do sistema de banco de dados"
 
-#: access/transam/xlog.c:3438
+#: access/transam/xlog.c:4293
 #, c-format
 msgid "new timeline %u forked off current database system timeline %u before current recovery point %X/%X"
 msgstr "nova linha do tempo %u bifurcou da linha do tempo %u do sistema de banco de dados antes do ponto de recuperação atual %X/%X"
 
-#: access/transam/xlog.c:3457
+#: access/transam/xlog.c:4312
 #, c-format
 msgid "new target timeline is %u"
 msgstr "nova linha do tempo é %u"
 
-#: access/transam/xlog.c:3536
+#: access/transam/xlog.c:4392
 #, c-format
 msgid "could not create control file \"%s\": %m"
 msgstr "não pôde criar arquivo de controle \"%s\": %m"
 
-#: access/transam/xlog.c:3547 access/transam/xlog.c:3776
+#: access/transam/xlog.c:4403 access/transam/xlog.c:4639
 #, c-format
 msgid "could not write to control file: %m"
 msgstr "não pôde escrever em arquivo de controle: %m"
 
-#: access/transam/xlog.c:3553 access/transam/xlog.c:3782
+#: access/transam/xlog.c:4409 access/transam/xlog.c:4645
 #, c-format
 msgid "could not fsync control file: %m"
 msgstr "não pôde executar fsync no arquivo de controle: %m"
 
-#: access/transam/xlog.c:3558 access/transam/xlog.c:3787
+#: access/transam/xlog.c:4414 access/transam/xlog.c:4650
 #, c-format
 msgid "could not close control file: %m"
 msgstr "não pôde fechar arquivo de controle: %m"
 
-#: access/transam/xlog.c:3576 access/transam/xlog.c:3765
+#: access/transam/xlog.c:4432 access/transam/xlog.c:4628
 #, c-format
 msgid "could not open control file \"%s\": %m"
 msgstr "não pôde abrir arquivo de controle \"%s\": %m"
 
-#: access/transam/xlog.c:3582
+#: access/transam/xlog.c:4438
 #, c-format
 msgid "could not read from control file: %m"
 msgstr "não pôde ler do arquivo de controle: %m"
 
-#: access/transam/xlog.c:3595 access/transam/xlog.c:3604
-#: access/transam/xlog.c:3628 access/transam/xlog.c:3635
-#: access/transam/xlog.c:3642 access/transam/xlog.c:3647
-#: access/transam/xlog.c:3654 access/transam/xlog.c:3661
-#: access/transam/xlog.c:3668 access/transam/xlog.c:3675
-#: access/transam/xlog.c:3682 access/transam/xlog.c:3689
-#: access/transam/xlog.c:3698 access/transam/xlog.c:3705
-#: access/transam/xlog.c:3714 access/transam/xlog.c:3721
-#: access/transam/xlog.c:3730 access/transam/xlog.c:3737
-#: utils/init/miscinit.c:1210
+#: access/transam/xlog.c:4451 access/transam/xlog.c:4460
+#: access/transam/xlog.c:4484 access/transam/xlog.c:4491
+#: access/transam/xlog.c:4498 access/transam/xlog.c:4503
+#: access/transam/xlog.c:4510 access/transam/xlog.c:4517
+#: access/transam/xlog.c:4524 access/transam/xlog.c:4531
+#: access/transam/xlog.c:4538 access/transam/xlog.c:4545
+#: access/transam/xlog.c:4552 access/transam/xlog.c:4561
+#: access/transam/xlog.c:4568 access/transam/xlog.c:4577
+#: access/transam/xlog.c:4584 access/transam/xlog.c:4593
+#: access/transam/xlog.c:4600 utils/init/miscinit.c:1139
 #, c-format
 msgid "database files are incompatible with server"
 msgstr "arquivos do banco de dados são incompatíveis com o servidor"
 
-#: access/transam/xlog.c:3596
+#: access/transam/xlog.c:4452
 #, c-format
 msgid "The database cluster was initialized with PG_CONTROL_VERSION %d (0x%08x), but the server was compiled with PG_CONTROL_VERSION %d (0x%08x)."
 msgstr "O agrupamento de banco de dados foi inicializado com PG_CONTROL_VERSION %d (0x%08x), mas o servidor foi compilado com PG_CONTROL_VERSION %d (0x%08x)."
 
-#: access/transam/xlog.c:3600
+#: access/transam/xlog.c:4456
 #, c-format
 msgid "This could be a problem of mismatched byte ordering.  It looks like you need to initdb."
 msgstr "Isto pode ser um problema com ordenação dos bits. Parece que você precisa executar o initdb."
 
-#: access/transam/xlog.c:3605
+#: access/transam/xlog.c:4461
 #, c-format
 msgid "The database cluster was initialized with PG_CONTROL_VERSION %d, but the server was compiled with PG_CONTROL_VERSION %d."
 msgstr "O agrupamento de banco de dados foi inicializado com PG_CONTROL_VERSION %d, mas o servidor foi compilado com PG_CONTROL_VERSION %d."
 
-#: access/transam/xlog.c:3608 access/transam/xlog.c:3632
-#: access/transam/xlog.c:3639 access/transam/xlog.c:3644
+#: access/transam/xlog.c:4464 access/transam/xlog.c:4488
+#: access/transam/xlog.c:4495 access/transam/xlog.c:4500
 #, c-format
 msgid "It looks like you need to initdb."
 msgstr "Parece que você precisa executar o initdb."
 
-#: access/transam/xlog.c:3619
+#: access/transam/xlog.c:4475
 #, c-format
 msgid "incorrect checksum in control file"
 msgstr "soma de verificação está incorreta em arquivo de controle"
 
-#: access/transam/xlog.c:3629
+#: access/transam/xlog.c:4485
 #, c-format
 msgid "The database cluster was initialized with CATALOG_VERSION_NO %d, but the server was compiled with CATALOG_VERSION_NO %d."
 msgstr "O agrupamento de banco de dados foi inicializado com CATALOG_VERSION_NO %d, mas o servidor foi compilado com CATALOG_VERSION_NO %d."
 
-#: access/transam/xlog.c:3636
+#: access/transam/xlog.c:4492
 #, c-format
 msgid "The database cluster was initialized with MAXALIGN %d, but the server was compiled with MAXALIGN %d."
 msgstr "O agrupamento de banco de dados foi inicializado com MAXALIGN %d, mas o servidor foi compilado com MAXALIGN %d."
 
-#: access/transam/xlog.c:3643
+#: access/transam/xlog.c:4499
 #, c-format
 msgid "The database cluster appears to use a different floating-point number format than the server executable."
 msgstr "O agrupamento de banco de dados parece utilizar um formato de número de ponto flutuante diferente do executável do servidor."
 
-#: access/transam/xlog.c:3648
+#: access/transam/xlog.c:4504
 #, c-format
 msgid "The database cluster was initialized with BLCKSZ %d, but the server was compiled with BLCKSZ %d."
 msgstr "O agrupamento de banco de dados foi inicializado com BLCSZ %d, mas o servidor foi compilado com BLCSZ %d."
 
-#: access/transam/xlog.c:3651 access/transam/xlog.c:3658
-#: access/transam/xlog.c:3665 access/transam/xlog.c:3672
-#: access/transam/xlog.c:3679 access/transam/xlog.c:3686
-#: access/transam/xlog.c:3693 access/transam/xlog.c:3701
-#: access/transam/xlog.c:3708 access/transam/xlog.c:3717
-#: access/transam/xlog.c:3724 access/transam/xlog.c:3733
-#: access/transam/xlog.c:3740
+#: access/transam/xlog.c:4507 access/transam/xlog.c:4514
+#: access/transam/xlog.c:4521 access/transam/xlog.c:4528
+#: access/transam/xlog.c:4535 access/transam/xlog.c:4542
+#: access/transam/xlog.c:4549 access/transam/xlog.c:4556
+#: access/transam/xlog.c:4564 access/transam/xlog.c:4571
+#: access/transam/xlog.c:4580 access/transam/xlog.c:4587
+#: access/transam/xlog.c:4596 access/transam/xlog.c:4603
 #, c-format
 msgid "It looks like you need to recompile or initdb."
 msgstr "Parece que você precisa recompilar ou executar o initdb."
 
-#: access/transam/xlog.c:3655
+#: access/transam/xlog.c:4511
 #, c-format
 msgid "The database cluster was initialized with RELSEG_SIZE %d, but the server was compiled with RELSEG_SIZE %d."
 msgstr "O agrupamento de banco de dados foi inicializado com RELSEG_SIZE %d, mas o servidor foi compilado com RELSEG_SIZE %d."
 
-#: access/transam/xlog.c:3662
+#: access/transam/xlog.c:4518
 #, c-format
 msgid "The database cluster was initialized with XLOG_BLCKSZ %d, but the server was compiled with XLOG_BLCKSZ %d."
 msgstr "O agrupamento de banco de dados foi inicializado com XLOG_BLCSZ %d, mas o servidor foi compilado com XLOG_BLCSZ %d."
 
-#: access/transam/xlog.c:3669
+#: access/transam/xlog.c:4525
 #, c-format
 msgid "The database cluster was initialized with XLOG_SEG_SIZE %d, but the server was compiled with XLOG_SEG_SIZE %d."
 msgstr "O agrupamento de banco de dados foi inicializado com XLOG_SEG_SIZE %d, mas o servidor foi compilado com XLOG_SEG_SIZE %d."
 
-#: access/transam/xlog.c:3676
+#: access/transam/xlog.c:4532
 #, c-format
 msgid "The database cluster was initialized with NAMEDATALEN %d, but the server was compiled with NAMEDATALEN %d."
 msgstr "O agrupamento de banco de dados foi inicializado com NAMEDATALEN %d, mas o servidor foi compilado com NAMEDATALEN %d."
 
-#: access/transam/xlog.c:3683
+#: access/transam/xlog.c:4539
 #, c-format
 msgid "The database cluster was initialized with INDEX_MAX_KEYS %d, but the server was compiled with INDEX_MAX_KEYS %d."
 msgstr "O agrupamento de banco de dados foi inicializado com INDEX_MAX_KEYS %d, mas o servidor foi compilado com INDEX_MAX_KEYS %d."
 
-#: access/transam/xlog.c:3690
+#: access/transam/xlog.c:4546
 #, c-format
 msgid "The database cluster was initialized with TOAST_MAX_CHUNK_SIZE %d, but the server was compiled with TOAST_MAX_CHUNK_SIZE %d."
 msgstr "O agrupamento de banco de dados foi inicializado com TOAST_MAX_CHUNK_SIZE %d, mas o servidor foi compilado com TOAST_MAX_CHUNK_SIZE %d."
 
-#: access/transam/xlog.c:3699
+#: access/transam/xlog.c:4553
+#, c-format
+msgid "The database cluster was initialized with LOBLKSIZE %d, but the server was compiled with LOBLKSIZE %d."
+msgstr "O agrupamento de banco de dados foi inicializado com LOBLKSIZE %d, mas o servidor foi compilado com LOBLKSIZE %d."
+
+#: access/transam/xlog.c:4562
 #, c-format
 msgid "The database cluster was initialized without HAVE_INT64_TIMESTAMP but the server was compiled with HAVE_INT64_TIMESTAMP."
 msgstr "O agrupamento de banco de dados foi inicializado sem HAVE_INT64_TIMESTAMP mas o servidor foi compilado com HAVE_INT64_TIMESTAMP."
 
-#: access/transam/xlog.c:3706
+#: access/transam/xlog.c:4569
 #, c-format
 msgid "The database cluster was initialized with HAVE_INT64_TIMESTAMP but the server was compiled without HAVE_INT64_TIMESTAMP."
 msgstr "O agrupamento de banco de dados foi inicializado com HAVE_INT64_TIMESTAMP mas o servidor foi compilado sem HAVE_INT64_TIMESTAMP."
 
-#: access/transam/xlog.c:3715
+#: access/transam/xlog.c:4578
 #, c-format
 msgid "The database cluster was initialized without USE_FLOAT4_BYVAL but the server was compiled with USE_FLOAT4_BYVAL."
 msgstr "O agrupamento de banco de dados foi inicializado sem USE_FLOAT4_BYVAL, mas o servidor foi compilado com USE_FLOAT4_BYVAL."
 
-#: access/transam/xlog.c:3722
+#: access/transam/xlog.c:4585
 #, c-format
 msgid "The database cluster was initialized with USE_FLOAT4_BYVAL but the server was compiled without USE_FLOAT4_BYVAL."
 msgstr "O agrupamento de banco de dados foi inicializado com USE_FLOAT4_BYVAL, mas o servidor foi compilado sem USE_FLOAT4_BYVAL."
 
-#: access/transam/xlog.c:3731
+#: access/transam/xlog.c:4594
 #, c-format
 msgid "The database cluster was initialized without USE_FLOAT8_BYVAL but the server was compiled with USE_FLOAT8_BYVAL."
 msgstr "O agrupamento de banco de dados foi inicializado sem USE_FLOAT8_BYVAL, mas o servidor foi compilado com USE_FLOAT8_BYVAL."
 
-#: access/transam/xlog.c:3738
+#: access/transam/xlog.c:4601
 #, c-format
 msgid "The database cluster was initialized with USE_FLOAT8_BYVAL but the server was compiled without USE_FLOAT8_BYVAL."
 msgstr "O agrupamento de banco de dados foi inicializado com USE_FLOAT8_BYVAL, mas o servidor foi compilado sem USE_FLOAT8_BYVAL."
 
-#: access/transam/xlog.c:4105
+#: access/transam/xlog.c:5002
 #, c-format
 msgid "could not write bootstrap transaction log file: %m"
 msgstr "não pôde escrever no arquivo inicial de log de transação: %m"
 
-#: access/transam/xlog.c:4111
+#: access/transam/xlog.c:5008
 #, c-format
 msgid "could not fsync bootstrap transaction log file: %m"
 msgstr "não pôde executar fsync no arquivo inicial de log de transação: %m"
 
-#: access/transam/xlog.c:4116
+#: access/transam/xlog.c:5013
 #, c-format
 msgid "could not close bootstrap transaction log file: %m"
 msgstr "não pôde fechar arquivo inicial de log de transação: %m"
 
-#: access/transam/xlog.c:4185
+#: access/transam/xlog.c:5084
 #, c-format
 msgid "could not open recovery command file \"%s\": %m"
 msgstr "não pôde abrir arquivo de comando de recuperação \"%s\": %m"
 
-#: access/transam/xlog.c:4225 access/transam/xlog.c:4316
-#: access/transam/xlog.c:4327 commands/extension.c:527
-#: commands/extension.c:535 utils/misc/guc.c:5417
+#: access/transam/xlog.c:5124 access/transam/xlog.c:5215
+#: access/transam/xlog.c:5226 commands/extension.c:527
+#: commands/extension.c:535 utils/misc/guc.c:5380
 #, c-format
 msgid "parameter \"%s\" requires a Boolean value"
 msgstr "parâmetro \"%s\" requer um valor booleano"
 
-#: access/transam/xlog.c:4241
+#: access/transam/xlog.c:5140
 #, c-format
 msgid "recovery_target_timeline is not a valid number: \"%s\""
 msgstr "recovery_target_timeline não é um número válido: \"%s\""
 
-#: access/transam/xlog.c:4257
+#: access/transam/xlog.c:5156
 #, c-format
 msgid "recovery_target_xid is not a valid number: \"%s\""
 msgstr "recovery_target_xid não é um número válido: \"%s\""
 
-#: access/transam/xlog.c:4301
+#: access/transam/xlog.c:5187
 #, c-format
 msgid "recovery_target_name is too long (maximum %d characters)"
 msgstr "recovery_target_name é muito longo (no máximo %d caracteres)"
 
-#: access/transam/xlog.c:4348
+#: access/transam/xlog.c:5201
+#, c-format
+msgid "invalid recovery_target parameter"
+msgstr "parâmetro recovery_target é inválido"
+
+#: access/transam/xlog.c:5202
+#, c-format
+msgid "The only allowed value is 'immediate'"
+msgstr "O único valor permitido é 'immediate'"
+
+#: access/transam/xlog.c:5261
+#, fuzzy, c-format
+msgid "parameter \"%s\" requires a temporal value"
+msgstr "parâmetro \"%s\" requer um valor temporal"
+
+#: access/transam/xlog.c:5263 catalog/dependency.c:970
+#: catalog/dependency.c:971 catalog/dependency.c:977 catalog/dependency.c:978
+#: catalog/dependency.c:989 catalog/dependency.c:990
+#: catalog/objectaddress.c:764 commands/tablecmds.c:763
+#: commands/tablecmds.c:8949 commands/user.c:988 commands/view.c:475
+#: libpq/auth.c:285 port/win32/security.c:51 storage/lmgr/deadlock.c:955
+#: storage/lmgr/proc.c:1184 utils/misc/guc.c:5412 utils/misc/guc.c:5537
+#: utils/misc/guc.c:8878 utils/misc/guc.c:8912 utils/misc/guc.c:8946
+#: utils/misc/guc.c:8980 utils/misc/guc.c:9015
+#, c-format
+msgid "%s"
+msgstr "%s"
+
+#: access/transam/xlog.c:5265
+#, c-format
+msgid "recovery_min_apply_delay = '%s'"
+msgstr ""
+
+#: access/transam/xlog.c:5269
 #, c-format
 msgid "unrecognized recovery parameter \"%s\""
 msgstr "parâmetro de recuperação \"%s\" desconhecido"
 
-#: access/transam/xlog.c:4359
+#: access/transam/xlog.c:5280
 #, c-format
 msgid "recovery command file \"%s\" specified neither primary_conninfo nor restore_command"
 msgstr "arquivo de comando de recuperação \"%s\" não especificou primary_conninfo ou restore_command"
 
-#: access/transam/xlog.c:4361
+#: access/transam/xlog.c:5282
 #, c-format
 msgid "The database server will regularly poll the pg_xlog subdirectory to check for files placed there."
 msgstr "O servidor de banco de dados acessará regularmente o subdiretório pg_xlog para verificar por arquivos ali presentes."
 
-#: access/transam/xlog.c:4367
+#: access/transam/xlog.c:5288
 #, c-format
 msgid "recovery command file \"%s\" must specify restore_command when standby mode is not enabled"
 msgstr "arquivo do comando de recuperação \"%s\" deve especificar restore_command quando modo em espera não estiver habilitado"
 
-#: access/transam/xlog.c:4387
+#: access/transam/xlog.c:5308
 #, c-format
 msgid "recovery target timeline %u does not exist"
 msgstr "linha do tempo para recuperação %u não existe"
 
-#: access/transam/xlog.c:4482
+#: access/transam/xlog.c:5403
 #, c-format
 msgid "archive recovery complete"
 msgstr "recuperação do archive está completa"
 
-#: access/transam/xlog.c:4607
+#: access/transam/xlog.c:5473 access/transam/xlog.c:5667
 #, c-format
-msgid "recovery stopping after commit of transaction %u, time %s"
-msgstr "recuperação parada após efetivação da transação %u, tempo %s"
+msgid "recovery stopping after reaching consistency"
+msgstr "recuperação parada após atingir consistência"
 
-#: access/transam/xlog.c:4612
+#: access/transam/xlog.c:5548
 #, c-format
 msgid "recovery stopping before commit of transaction %u, time %s"
 msgstr "recuperação parada antes da efetivação da transação %u, tempo %s"
 
-#: access/transam/xlog.c:4620
-#, c-format
-msgid "recovery stopping after abort of transaction %u, time %s"
-msgstr "recuperação parada após interrupção da transação %u, tempo %s"
-
-#: access/transam/xlog.c:4625
+#: access/transam/xlog.c:5555
 #, c-format
 msgid "recovery stopping before abort of transaction %u, time %s"
 msgstr "recuperação parada antes interrupção da transação %u, tempo %s"
 
-#: access/transam/xlog.c:4634
+#: access/transam/xlog.c:5597
 #, c-format
 msgid "recovery stopping at restore point \"%s\", time %s"
 msgstr "recuperação parada no ponto de restauração \"%s\", tempo %s"
 
-#: access/transam/xlog.c:4668
+#: access/transam/xlog.c:5647
+#, c-format
+msgid "recovery stopping after commit of transaction %u, time %s"
+msgstr "recuperação parada após efetivação da transação %u, tempo %s"
+
+#: access/transam/xlog.c:5655
+#, c-format
+msgid "recovery stopping after abort of transaction %u, time %s"
+msgstr "recuperação parada após interrupção da transação %u, tempo %s"
+
+#: access/transam/xlog.c:5694
 #, c-format
 msgid "recovery has paused"
 msgstr "recuperação está em pausa"
 
-#: access/transam/xlog.c:4669
+#: access/transam/xlog.c:5695
 #, c-format
 msgid "Execute pg_xlog_replay_resume() to continue."
 msgstr "Execute pg_xlog_replay_resume() para continuar."
 
-#: access/transam/xlog.c:4799
+#: access/transam/xlog.c:5910
 #, c-format
 msgid "hot standby is not possible because %s = %d is a lower setting than on the master server (its value was %d)"
 msgstr "servidor em espera ativo não é possível porque %s = %d é uma configuração mais baixa do que no servidor principal (seu valor era %d)"
 
-#: access/transam/xlog.c:4821
+#: access/transam/xlog.c:5932
 #, c-format
 msgid "WAL was generated with wal_level=minimal, data may be missing"
 msgstr "WAL foi gerado com wal_level=minimal, dados podem estar faltando"
 
-#: access/transam/xlog.c:4822
+#: access/transam/xlog.c:5933
 #, c-format
 msgid "This happens if you temporarily set wal_level=minimal without taking a new base backup."
 msgstr "Isso acontece se você temporariamente definir wal_level=minimal sem realizar uma nova cópia de segurança base."
 
-#: access/transam/xlog.c:4833
+#: access/transam/xlog.c:5944
 #, c-format
-msgid "hot standby is not possible because wal_level was not set to \"hot_standby\" on the master server"
-msgstr "servidor em espera ativo não é possível porque wal_level não foi definido como \"hot_standby\" no servidor principal"
+msgid "hot standby is not possible because wal_level was not set to \"hot_standby\" or higher on the master server"
+msgstr "servidor em espera ativo não é possível porque wal_level não foi definido como \"hot_standby\" ou superior no servidor principal"
 
-#: access/transam/xlog.c:4834
+#: access/transam/xlog.c:5945
 #, c-format
 msgid "Either set wal_level to \"hot_standby\" on the master, or turn off hot_standby here."
 msgstr "Defina wal_level para \"hot_standby\" no primário ou desabilite hot_standby aqui."
 
-#: access/transam/xlog.c:4887
+#: access/transam/xlog.c:6000
 #, c-format
 msgid "control file contains invalid data"
 msgstr "arquivo de controle contém dados inválidos"
 
-#: access/transam/xlog.c:4893
+#: access/transam/xlog.c:6006
 #, c-format
 msgid "database system was shut down at %s"
 msgstr "sistema de banco de dados foi desligado em %s"
 
-#: access/transam/xlog.c:4898
+#: access/transam/xlog.c:6011
 #, c-format
 msgid "database system was shut down in recovery at %s"
 msgstr "sistema de banco de dados foi desligado durante recuperação em %s"
 
-#: access/transam/xlog.c:4902
+#: access/transam/xlog.c:6015
 #, c-format
 msgid "database system shutdown was interrupted; last known up at %s"
 msgstr "desligamento do sistema de banco de dados foi interrompido; última execução em %s"
 
-#: access/transam/xlog.c:4906
+#: access/transam/xlog.c:6019
 #, c-format
 msgid "database system was interrupted while in recovery at %s"
 msgstr "sistema de banco de dados foi interrompido enquanto estava sendo recuperado em %s"
 
-#: access/transam/xlog.c:4908
+#: access/transam/xlog.c:6021
 #, c-format
 msgid "This probably means that some data is corrupted and you will have to use the last backup for recovery."
 msgstr "Isso provavelmente significa que algum dado foi corrompido e você terá que utilizar a última cópia de segurança para recuperação."
 
-#: access/transam/xlog.c:4912
+#: access/transam/xlog.c:6025
 #, c-format
 msgid "database system was interrupted while in recovery at log time %s"
 msgstr "sistema de banco de dados foi interrompido enquanto estava sendo recuperado em %s"
 
-#: access/transam/xlog.c:4914
+#: access/transam/xlog.c:6027
 #, c-format
 msgid "If this has occurred more than once some data might be corrupted and you might need to choose an earlier recovery target."
 msgstr "Se isto ocorreu mais de uma vez algum dado pode ter sido corrompido e você pode precisar escolher um ponto de recuperação anterior ao especificado."
 
-#: access/transam/xlog.c:4918
+#: access/transam/xlog.c:6031
 #, c-format
 msgid "database system was interrupted; last known up at %s"
 msgstr "sistema de banco de dados foi interrompido; última execução em %s"
 
-#: access/transam/xlog.c:4972
+#: access/transam/xlog.c:6085
 #, c-format
 msgid "entering standby mode"
 msgstr "entrando no modo em espera"
 
-#: access/transam/xlog.c:4975
+#: access/transam/xlog.c:6088
 #, c-format
 msgid "starting point-in-time recovery to XID %u"
 msgstr "iniciando recuperação de ponto no tempo para XID %u"
 
-#: access/transam/xlog.c:4979
+#: access/transam/xlog.c:6092
 #, c-format
 msgid "starting point-in-time recovery to %s"
 msgstr "iniciando recuperação de ponto no tempo para %s"
 
-#: access/transam/xlog.c:4983
+#: access/transam/xlog.c:6096
 #, c-format
 msgid "starting point-in-time recovery to \"%s\""
 msgstr "iniciando recuperação de ponto no tempo para \"%s\""
 
-#: access/transam/xlog.c:4987
+#: access/transam/xlog.c:6100
 #, c-format
-msgid "starting archive recovery"
-msgstr "iniciando recuperação do arquivador"
+msgid "starting point-in-time recovery to earliest consistent point"
+msgstr "iniciando recuperação de ponto no tempo para ponto de consistência mais antigo"
 
-#: access/transam/xlog.c:5003 commands/sequence.c:1035 lib/stringinfo.c:266
-#: libpq/auth.c:1025 libpq/auth.c:1381 libpq/auth.c:1449 libpq/auth.c:1851
-#: postmaster/postmaster.c:2143 postmaster/postmaster.c:2174
-#: postmaster/postmaster.c:3631 postmaster/postmaster.c:4314
-#: postmaster/postmaster.c:4399 postmaster/postmaster.c:5077
-#: postmaster/postmaster.c:5253 postmaster/postmaster.c:5670
-#: storage/buffer/buf_init.c:154 storage/buffer/localbuf.c:397
-#: storage/file/fd.c:403 storage/file/fd.c:800 storage/file/fd.c:918
-#: storage/file/fd.c:1531 storage/ipc/procarray.c:901
-#: storage/ipc/procarray.c:1341 storage/ipc/procarray.c:1348
-#: storage/ipc/procarray.c:1665 storage/ipc/procarray.c:2155
-#: utils/adt/formatting.c:1524 utils/adt/formatting.c:1644
-#: utils/adt/formatting.c:1765 utils/adt/regexp.c:219 utils/adt/varlena.c:3653
-#: utils/adt/varlena.c:3674 utils/fmgr/dfmgr.c:224 utils/hash/dynahash.c:379
-#: utils/hash/dynahash.c:456 utils/hash/dynahash.c:970
-#: utils/init/miscinit.c:151 utils/init/miscinit.c:172
-#: utils/init/miscinit.c:182 utils/mb/mbutils.c:374 utils/mb/mbutils.c:675
-#: utils/misc/guc.c:3436 utils/misc/guc.c:3452 utils/misc/guc.c:3465
-#: utils/misc/tzparser.c:455 utils/mmgr/aset.c:416 utils/mmgr/aset.c:587
-#: utils/mmgr/aset.c:765 utils/mmgr/aset.c:966
+#: access/transam/xlog.c:6103
 #, c-format
-msgid "out of memory"
-msgstr "sem memória"
+msgid "starting archive recovery"
+msgstr "iniciando recuperação do arquivador"
 
-#: access/transam/xlog.c:5004
+#: access/transam/xlog.c:6120
 #, c-format
 msgid "Failed while allocating an XLog reading processor."
 msgstr "Falhou ao alocar um processador de leitura do XLog."
 
-#: access/transam/xlog.c:5029 access/transam/xlog.c:5096
+#: access/transam/xlog.c:6145 access/transam/xlog.c:6212
 #, c-format
 msgid "checkpoint record is at %X/%X"
 msgstr "registro do ponto de controle está em %X/%X"
 
-#: access/transam/xlog.c:5043
+#: access/transam/xlog.c:6159
 #, c-format
 msgid "could not find redo location referenced by checkpoint record"
 msgstr "não pôde encontrar local do redo referenciado pelo registro do ponto de controle"
 
-#: access/transam/xlog.c:5044 access/transam/xlog.c:5051
+#: access/transam/xlog.c:6160 access/transam/xlog.c:6167
 #, c-format
 msgid "If you are not restoring from a backup, try removing the file \"%s/backup_label\"."
 msgstr "Se você não está restaurando uma cópia de segurança, tente remover o arquivo \"%s/backup_label\"."
 
-#: access/transam/xlog.c:5050
+#: access/transam/xlog.c:6166
 #, c-format
 msgid "could not locate required checkpoint record"
 msgstr "não pôde localizar registro do ponto de controle requerido"
 
-#: access/transam/xlog.c:5106 access/transam/xlog.c:5121
+#: access/transam/xlog.c:6222 access/transam/xlog.c:6237
 #, c-format
 msgid "could not locate a valid checkpoint record"
 msgstr "não pôde localizar registro do ponto de controle válido"
 
-#: access/transam/xlog.c:5115
+#: access/transam/xlog.c:6231
 #, c-format
 msgid "using previous checkpoint record at %X/%X"
 msgstr "utilizando registro do ponto de controle anterior em %X/%X"
 
-#: access/transam/xlog.c:5145
+#: access/transam/xlog.c:6261
 #, c-format
 msgid "requested timeline %u is not a child of this server's history"
 msgstr "linha do tempo solicitada %u não é descendente do histórico do servidor"
 
-#: access/transam/xlog.c:5147
+#: access/transam/xlog.c:6263
 #, c-format
 msgid "Latest checkpoint is at %X/%X on timeline %u, but in the history of the requested timeline, the server forked off from that timeline at %X/%X."
 msgstr "Último ponto de controle está em %X/%X na linha do tempo %u, mas no histórico da linha do tempo solicitada, o servidor bifurcou daquela linha do tempo em %X/%X."
 
-#: access/transam/xlog.c:5163
+#: access/transam/xlog.c:6279
 #, c-format
 msgid "requested timeline %u does not contain minimum recovery point %X/%X on timeline %u"
 msgstr "linha do tempo solicitada %u não contém o ponto de recuperação mínimo %X/%X na linha do tempo %u"
 
-#: access/transam/xlog.c:5172
+#: access/transam/xlog.c:6288
 #, c-format
 msgid "redo record is at %X/%X; shutdown %s"
 msgstr "registro de redo está em %X/%X; desligamento %s"
 
-#: access/transam/xlog.c:5176
+#: access/transam/xlog.c:6292
 #, c-format
 msgid "next transaction ID: %u/%u; next OID: %u"
 msgstr "próximo ID de transação: %u/%u; próximo OID: %u"
 
-#: access/transam/xlog.c:5180
+#: access/transam/xlog.c:6296
 #, c-format
 msgid "next MultiXactId: %u; next MultiXactOffset: %u"
 msgstr "próximo MultiXactId: %u; próximo MultiXactOffset: %u"
 
-#: access/transam/xlog.c:5183
+#: access/transam/xlog.c:6299
 #, c-format
 msgid "oldest unfrozen transaction ID: %u, in database %u"
 msgstr "ID de transação descongelado mais antigo: %u, no banco de dados %u"
 
-#: access/transam/xlog.c:5186
+#: access/transam/xlog.c:6302
 #, c-format
 msgid "oldest MultiXactId: %u, in database %u"
 msgstr "MultiXactId mais antigo: %u, no banco de dados %u"
 
-#: access/transam/xlog.c:5190
+#: access/transam/xlog.c:6306
 #, c-format
 msgid "invalid next transaction ID"
 msgstr "próximo ID de transação é inválido"
 
-#: access/transam/xlog.c:5247
+#: access/transam/xlog.c:6376
 #, c-format
 msgid "invalid redo in checkpoint record"
 msgstr "redo é inválido no registro do ponto de controle"
 
-#: access/transam/xlog.c:5258
+#: access/transam/xlog.c:6387
 #, c-format
 msgid "invalid redo record in shutdown checkpoint"
 msgstr "registro de redo é inválido no ponto de controle de desligamento"
 
-#: access/transam/xlog.c:5289
+#: access/transam/xlog.c:6418
 #, c-format
 msgid "database system was not properly shut down; automatic recovery in progress"
 msgstr "sistema de banco de dados não foi desligado corretamente; recuperação automática está em andamento"
 
-#: access/transam/xlog.c:5293
+#: access/transam/xlog.c:6422
 #, c-format
 msgid "crash recovery starts in timeline %u and has target timeline %u"
 msgstr "recuperação de queda começa na linha do tempo %u e tem como linha do tempo alvo %u"
 
-#: access/transam/xlog.c:5330
+#: access/transam/xlog.c:6459
 #, c-format
 msgid "backup_label contains data inconsistent with control file"
 msgstr "backup_label contém dados inconsistentes com arquivo de controle"
 
-#: access/transam/xlog.c:5331
+#: access/transam/xlog.c:6460
 #, c-format
 msgid "This means that the backup is corrupted and you will have to use another backup for recovery."
 msgstr "Isso significa que a cópia de segurança está corrompida e você terá que utilizar outra cópia de segurança para recuperação."
 
-#: access/transam/xlog.c:5396
+#: access/transam/xlog.c:6525
 #, c-format
 msgid "initializing for hot standby"
 msgstr "inicialização para servidor em espera ativo"
 
-#: access/transam/xlog.c:5526
+#: access/transam/xlog.c:6657
 #, c-format
 msgid "redo starts at %X/%X"
 msgstr "redo inicia em %X/%X"
 
-#: access/transam/xlog.c:5718
+#: access/transam/xlog.c:6872
 #, c-format
 msgid "redo done at %X/%X"
 msgstr "redo pronto em %X/%X"
 
-#: access/transam/xlog.c:5723 access/transam/xlog.c:7578
+#: access/transam/xlog.c:6877 access/transam/xlog.c:8728
 #, c-format
 msgid "last completed transaction was at log time %s"
 msgstr "última transação efetivada foi em %s"
 
-#: access/transam/xlog.c:5731
+#: access/transam/xlog.c:6885
 #, c-format
 msgid "redo is not required"
 msgstr "redo não é requerido"
 
-#: access/transam/xlog.c:5779
+#: access/transam/xlog.c:6933
 #, c-format
 msgid "requested recovery stop point is before consistent recovery point"
 msgstr "ponto de parada de recuperação solicitado está antes do ponto de recuperação consistente"
 
-#: access/transam/xlog.c:5795 access/transam/xlog.c:5799
+#: access/transam/xlog.c:6949 access/transam/xlog.c:6953
 #, c-format
 msgid "WAL ends before end of online backup"
 msgstr "WAL terminou antes do fim da cópia de segurança online"
 
-#: access/transam/xlog.c:5796
+#: access/transam/xlog.c:6950
 #, c-format
 msgid "All WAL generated while online backup was taken must be available at recovery."
 msgstr "Todo WAL gerado enquanto a cópia de segurança online era feita deve estar disponível para recuperação."
 
-#: access/transam/xlog.c:5800
+#: access/transam/xlog.c:6954
 #, c-format
 msgid "Online backup started with pg_start_backup() must be ended with pg_stop_backup(), and all WAL up to that point must be available at recovery."
 msgstr "Cópia de segurança online que iniciou com pg_start_backup() deve ser terminada com pg_stop_backup(), e todo WAL até aquele ponto deve estar disponível para recuperação."
 
-#: access/transam/xlog.c:5803
+#: access/transam/xlog.c:6957
 #, c-format
 msgid "WAL ends before consistent recovery point"
 msgstr "Log de transação termina antes de ponto de recuperação consistente"
 
-#: access/transam/xlog.c:5830
+#: access/transam/xlog.c:6984
 #, c-format
 msgid "selected new timeline ID: %u"
 msgstr "novo ID de linha do tempo selecionado: %u"
 
-#: access/transam/xlog.c:6199
+#: access/transam/xlog.c:7333
 #, c-format
 msgid "consistent recovery state reached at %X/%X"
 msgstr "estado de recuperação consistente alcançado em %X/%X"
 
-#: access/transam/xlog.c:6382
+#: access/transam/xlog.c:7530
 #, c-format
 msgid "invalid primary checkpoint link in control file"
 msgstr "vínculo de ponto de controle primário é inválido no arquivo de controle"
 
-#: access/transam/xlog.c:6386
+#: access/transam/xlog.c:7534
 #, c-format
 msgid "invalid secondary checkpoint link in control file"
 msgstr "vínculo de ponto de controle secundário é inválido no arquivo de controle"
 
-#: access/transam/xlog.c:6390
+#: access/transam/xlog.c:7538
 #, c-format
 msgid "invalid checkpoint link in backup_label file"
 msgstr "vínculo de ponto de controle é inválido no arquivo backup_label"
 
-#: access/transam/xlog.c:6407
+#: access/transam/xlog.c:7555
 #, c-format
 msgid "invalid primary checkpoint record"
 msgstr "registro do ponto de controle primário é inválido"
 
-#: access/transam/xlog.c:6411
+#: access/transam/xlog.c:7559
 #, c-format
 msgid "invalid secondary checkpoint record"
 msgstr "registro do ponto de controle secundário é inválido"
 
-#: access/transam/xlog.c:6415
+#: access/transam/xlog.c:7563
 #, c-format
 msgid "invalid checkpoint record"
 msgstr "registro do ponto de controle é inválido"
 
-#: access/transam/xlog.c:6426
+#: access/transam/xlog.c:7574
 #, c-format
 msgid "invalid resource manager ID in primary checkpoint record"
 msgstr "ID do gerenciador de recursos é inválido no registro do ponto de controle primário"
 
-#: access/transam/xlog.c:6430
+#: access/transam/xlog.c:7578
 #, c-format
 msgid "invalid resource manager ID in secondary checkpoint record"
 msgstr "ID do gerenciador de recursos é inválido no registro do ponto de controle secundário"
 
-#: access/transam/xlog.c:6434
+#: access/transam/xlog.c:7582
 #, c-format
 msgid "invalid resource manager ID in checkpoint record"
 msgstr "ID do gerenciador de recursos é inválido no registro do ponto de controle"
 
-#: access/transam/xlog.c:6446
+#: access/transam/xlog.c:7594
 #, c-format
 msgid "invalid xl_info in primary checkpoint record"
 msgstr "xl_info é inválido no registro do ponto de controle primário"
 
-#: access/transam/xlog.c:6450
+#: access/transam/xlog.c:7598
 #, c-format
 msgid "invalid xl_info in secondary checkpoint record"
 msgstr "xl_info é inválido no registro do ponto de controle secundário"
 
-#: access/transam/xlog.c:6454
+#: access/transam/xlog.c:7602
 #, c-format
 msgid "invalid xl_info in checkpoint record"
 msgstr "xl_info é inválido no registro do ponto de contrle"
 
-#: access/transam/xlog.c:6466
+#: access/transam/xlog.c:7614
 #, c-format
 msgid "invalid length of primary checkpoint record"
 msgstr "tamanho do registro do ponto de controle primário é inválido"
 
-#: access/transam/xlog.c:6470
+#: access/transam/xlog.c:7618
 #, c-format
 msgid "invalid length of secondary checkpoint record"
 msgstr "tamanho do registro do ponto de controle secundário é inválido"
 
-#: access/transam/xlog.c:6474
+#: access/transam/xlog.c:7622
 #, c-format
 msgid "invalid length of checkpoint record"
 msgstr "tamanho do registro do ponto de controle é inválido"
 
-#: access/transam/xlog.c:6627
+#: access/transam/xlog.c:7782
 #, c-format
 msgid "shutting down"
 msgstr "desligando"
 
-#: access/transam/xlog.c:6650
+#: access/transam/xlog.c:7805
 #, c-format
 msgid "database system is shut down"
 msgstr "sistema de banco de dados está desligado"
 
-#: access/transam/xlog.c:7115
+#: access/transam/xlog.c:8270
 #, c-format
 msgid "concurrent transaction log activity while database system is shutting down"
 msgstr "atividade concorrente no log de transação enquanto o sistema de banco de dados está sendo desligado"
 
-#: access/transam/xlog.c:7392
+#: access/transam/xlog.c:8539
 #, c-format
 msgid "skipping restartpoint, recovery has already ended"
 msgstr "ignorando ponto de reinício, recuperação já terminou"
 
-#: access/transam/xlog.c:7415
+#: access/transam/xlog.c:8562
 #, c-format
 msgid "skipping restartpoint, already performed at %X/%X"
 msgstr "ignorando ponto de reinício, já foi executado em %X/%X"
 
-#: access/transam/xlog.c:7576
+#: access/transam/xlog.c:8726
 #, c-format
 msgid "recovery restart point at %X/%X"
 msgstr "ponto de reinício de recuperação em %X/%X"
 
-#: access/transam/xlog.c:7702
+#: access/transam/xlog.c:8871
 #, c-format
 msgid "restore point \"%s\" created at %X/%X"
 msgstr "ponto de restauração \"%s\" criado em %X/%X"
 
-#: access/transam/xlog.c:7917
+#: access/transam/xlog.c:9095
 #, c-format
 msgid "unexpected previous timeline ID %u (current timeline ID %u) in checkpoint record"
 msgstr "ID de linha do tempo anterior %u inesperado (ID de linha do tempo atual %u) no registro do ponto de controle"
 
-#: access/transam/xlog.c:7926
+#: access/transam/xlog.c:9104
 #, c-format
 msgid "unexpected timeline ID %u (after %u) in checkpoint record"
 msgstr "ID de linha do tempo %u inesperado (depois %u) no registro do ponto de controle"
 
-#: access/transam/xlog.c:7942
+#: access/transam/xlog.c:9120
 #, c-format
 msgid "unexpected timeline ID %u in checkpoint record, before reaching minimum recovery point %X/%X on timeline %u"
 msgstr "ID de linha do tempo %u inesperado no registro do ponto de controle, antes de alcançar ponto de recuperação mínimo %X/%X na linha do tempo %u"
 
-#: access/transam/xlog.c:8009
+#: access/transam/xlog.c:9188
 #, c-format
 msgid "online backup was canceled, recovery cannot continue"
 msgstr "cópia de segurança online foi cancelada, recuperação não pode continuar"
 
-#: access/transam/xlog.c:8070 access/transam/xlog.c:8118
-#: access/transam/xlog.c:8141
+#: access/transam/xlog.c:9249 access/transam/xlog.c:9298
+#: access/transam/xlog.c:9321
 #, c-format
 msgid "unexpected timeline ID %u (should be %u) in checkpoint record"
 msgstr "ID de linha do tempo %u inesperado (deve ser %u) no registro do ponto de controle"
 
-#: access/transam/xlog.c:8374
+#: access/transam/xlog.c:9556
 #, c-format
 msgid "could not fsync log segment %s: %m"
 msgstr "não pôde executar fsync no arquivo de log %s: %m"
 
-#: access/transam/xlog.c:8398
+#: access/transam/xlog.c:9580
 #, c-format
 msgid "could not fsync log file %s: %m"
 msgstr "não pôde executar fsync no arquivo de log %s: %m"
 
-#: access/transam/xlog.c:8406
+#: access/transam/xlog.c:9588
 #, c-format
 msgid "could not fsync write-through log file %s: %m"
 msgstr "não pôde executar fsync write-through no arquivo de log %s: %m"
 
-#: access/transam/xlog.c:8415
+#: access/transam/xlog.c:9597
 #, c-format
 msgid "could not fdatasync log file %s: %m"
 msgstr "não pôde executar fdatasync no arquivo de log %s: %m"
 
-#: access/transam/xlog.c:8493 access/transam/xlog.c:8829
-#: access/transam/xlogfuncs.c:119 access/transam/xlogfuncs.c:151
-#: access/transam/xlogfuncs.c:193 access/transam/xlogfuncs.c:217
-#: access/transam/xlogfuncs.c:299 access/transam/xlogfuncs.c:373
+#: access/transam/xlog.c:9675 access/transam/xlog.c:10011
+#: access/transam/xlogfuncs.c:111 access/transam/xlogfuncs.c:140
+#: access/transam/xlogfuncs.c:179 access/transam/xlogfuncs.c:200
+#: access/transam/xlogfuncs.c:270 access/transam/xlogfuncs.c:326
 #, c-format
 msgid "recovery is in progress"
 msgstr "recuperação está em andamento"
 
-#: access/transam/xlog.c:8494 access/transam/xlog.c:8830
-#: access/transam/xlogfuncs.c:120 access/transam/xlogfuncs.c:152
-#: access/transam/xlogfuncs.c:194 access/transam/xlogfuncs.c:218
+#: access/transam/xlog.c:9676 access/transam/xlog.c:10012
+#: access/transam/xlogfuncs.c:112 access/transam/xlogfuncs.c:141
+#: access/transam/xlogfuncs.c:180 access/transam/xlogfuncs.c:201
 #, c-format
 msgid "WAL control functions cannot be executed during recovery."
 msgstr "funções de controle do WAL não podem ser executadas durante recuperação."
 
-#: access/transam/xlog.c:8503 access/transam/xlog.c:8839
+#: access/transam/xlog.c:9685 access/transam/xlog.c:10021
 #, c-format
 msgid "WAL level not sufficient for making an online backup"
 msgstr "nível do WAL não é suficiente para fazer uma cópia de segurança online"
 
-#: access/transam/xlog.c:8504 access/transam/xlog.c:8840
-#: access/transam/xlogfuncs.c:158
+#: access/transam/xlog.c:9686 access/transam/xlog.c:10022
+#: access/transam/xlogfuncs.c:147
 #, c-format
-msgid "wal_level must be set to \"archive\" or \"hot_standby\" at server start."
-msgstr "wal_level deve ser definido como \"archive\" ou \"hot_standby\" ao iniciar o servidor."
+msgid "wal_level must be set to \"archive\", \"hot_standby\", or \"logical\" at server start."
+msgstr "wal_level deve ser definido como \"archive\", \"hot_standby\" ou \"logical\" ao iniciar o servidor."
 
-#: access/transam/xlog.c:8509
+#: access/transam/xlog.c:9691
 #, c-format
 msgid "backup label too long (max %d bytes)"
 msgstr "rótulo de cópia de segurança é muito longo (máximo de %d bytes)"
 
-#: access/transam/xlog.c:8540 access/transam/xlog.c:8717
+#: access/transam/xlog.c:9722 access/transam/xlog.c:9899
 #, c-format
 msgid "a backup is already in progress"
 msgstr "uma cópia de segurança está em andamento"
 
-#: access/transam/xlog.c:8541
+#: access/transam/xlog.c:9723
 #, c-format
 msgid "Run pg_stop_backup() and try again."
 msgstr "Execute pg_stop_backup() e tente novamente."
 
-#: access/transam/xlog.c:8635
+#: access/transam/xlog.c:9817
 #, c-format
 msgid "WAL generated with full_page_writes=off was replayed since last restartpoint"
 msgstr "WAL gerado com full_page_writes=off foi restaurado desde o último ponto de reinício"
 
-#: access/transam/xlog.c:8637 access/transam/xlog.c:8990
+#: access/transam/xlog.c:9819 access/transam/xlog.c:10172
 #, c-format
 msgid "This means that the backup being taken on the standby is corrupt and should not be used. Enable full_page_writes and run CHECKPOINT on the master, and then try an online backup again."
 msgstr "Isto significa que a cópia de segurança feita no servidor em espera está corrompida e não deve ser utilizada. Habilite full_page_writes e execute CHECKPOINT no servidor principal, e depois tente fazer uma cópia de segurança novamente."
 
-#: access/transam/xlog.c:8711 access/transam/xlog.c:8880
+#: access/transam/xlog.c:9893 access/transam/xlog.c:10062
 #: access/transam/xlogarchive.c:106 access/transam/xlogarchive.c:265
-#: guc-file.l:777 replication/basebackup.c:396 replication/basebackup.c:451
-#: storage/file/copydir.c:75 storage/file/copydir.c:118 utils/adt/dbsize.c:68
-#: utils/adt/dbsize.c:218 utils/adt/dbsize.c:298 utils/adt/genfile.c:108
-#: utils/adt/genfile.c:280
+#: guc-file.l:884 replication/basebackup.c:464 replication/basebackup.c:521
+#: replication/logical/snapbuild.c:1467 storage/file/copydir.c:72
+#: storage/file/copydir.c:115 utils/adt/dbsize.c:68 utils/adt/dbsize.c:218
+#: utils/adt/dbsize.c:298 utils/adt/genfile.c:108 utils/adt/genfile.c:280
 #, c-format
 msgid "could not stat file \"%s\": %m"
 msgstr "não pôde executar stat no arquivo \"%s\": %m"
 
-#: access/transam/xlog.c:8718
+#: access/transam/xlog.c:9900
 #, c-format
 msgid "If you're sure there is no backup in progress, remove file \"%s\" and try again."
 msgstr "Se você tem certeza que não há cópia de segurança em andamento, remova o arquivo \"%s\" e tente novamente."
 
-#: access/transam/xlog.c:8735 access/transam/xlog.c:9053
+#: access/transam/xlog.c:9917 access/transam/xlog.c:10235
 #, c-format
 msgid "could not write file \"%s\": %m"
 msgstr "não pôde escrever no arquivo \"%s\": %m"
 
-#: access/transam/xlog.c:8884
+#: access/transam/xlog.c:10066
 #, c-format
 msgid "a backup is not in progress"
 msgstr "não há uma cópia de segurança em andamento"
 
-#: access/transam/xlog.c:8910 access/transam/xlogarchive.c:114
-#: access/transam/xlogarchive.c:466 storage/smgr/md.c:405
-#: storage/smgr/md.c:454 storage/smgr/md.c:1318
-#, c-format
-msgid "could not remove file \"%s\": %m"
-msgstr "não pôde remover arquivo \"%s\": %m"
-
-#: access/transam/xlog.c:8923 access/transam/xlog.c:8936
-#: access/transam/xlog.c:9287 access/transam/xlog.c:9293
-#: access/transam/xlogfuncs.c:626
+#: access/transam/xlog.c:10105 access/transam/xlog.c:10118
+#: access/transam/xlog.c:10469 access/transam/xlog.c:10475
+#: access/transam/xlogfuncs.c:498
 #, c-format
 msgid "invalid data in file \"%s\""
 msgstr "dado é inválido no arquivo \"%s\""
 
-#: access/transam/xlog.c:8940 replication/basebackup.c:855
+#: access/transam/xlog.c:10122 replication/basebackup.c:951
 #, c-format
 msgid "the standby was promoted during online backup"
 msgstr "o servidor em espera foi promovido durante a cópia de segurança online"
 
-#: access/transam/xlog.c:8941 replication/basebackup.c:856
+#: access/transam/xlog.c:10123 replication/basebackup.c:952
 #, c-format
 msgid "This means that the backup being taken is corrupt and should not be used. Try taking another online backup."
 msgstr "Isto significa que a cópia de segurança feita está corrompida e não deve ser utilizada. Tente fazer outra cópia de segurança online."
 
-#: access/transam/xlog.c:8988
+#: access/transam/xlog.c:10170
 #, c-format
 msgid "WAL generated with full_page_writes=off was replayed during online backup"
 msgstr "WAL gerado com full_page_writes=off foi restaurado durante a cópia de segurança online"
 
-#: access/transam/xlog.c:9102
+#: access/transam/xlog.c:10284
 #, c-format
 msgid "pg_stop_backup cleanup done, waiting for required WAL segments to be archived"
 msgstr "pg_stop_backup concluído, esperando os segmentos do WAL requeridos serem arquivados"
 
-#: access/transam/xlog.c:9112
+#: access/transam/xlog.c:10294
 #, c-format
 msgid "pg_stop_backup still waiting for all required WAL segments to be archived (%d seconds elapsed)"
 msgstr "pg_stop_backup ainda está esperando o arquivamento de todos os segmentos do WAL necessários (%d segundos passados)"
 
-#: access/transam/xlog.c:9114
+#: access/transam/xlog.c:10296
 #, c-format
 msgid "Check that your archive_command is executing properly.  pg_stop_backup can be canceled safely, but the database backup will not be usable without all the WAL segments."
 msgstr "Verifique se o archive_command está sendo executado normalmente. pg_stop_backup pode ser cancelado com segurança, mas a cópia de segurança do banco de dados não será útil sem todos os segmentos do WAL."
 
-#: access/transam/xlog.c:9121
+#: access/transam/xlog.c:10303
 #, c-format
 msgid "pg_stop_backup complete, all required WAL segments have been archived"
 msgstr "pg_stop_backup concluído, todos os segmentos do WAL foram arquivados"
 
-#: access/transam/xlog.c:9125
+#: access/transam/xlog.c:10307
 #, c-format
 msgid "WAL archiving is not enabled; you must ensure that all required WAL segments are copied through other means to complete the backup"
 msgstr "arquivamento do WAL não está habilitado; você deve garantir que todos os segmentos do WAL necessários foram copiados por outros meios para completar a cópia de segurança"
 
-#: access/transam/xlog.c:9338
+#: access/transam/xlog.c:10520
 #, c-format
 msgid "xlog redo %s"
 msgstr "redo do xlog %s"
 
-#: access/transam/xlog.c:9378
+#: access/transam/xlog.c:10560
 #, c-format
 msgid "online backup mode canceled"
 msgstr "modo de cópia de segurança online foi cancelado"
 
-#: access/transam/xlog.c:9379
+#: access/transam/xlog.c:10561
 #, c-format
 msgid "\"%s\" was renamed to \"%s\"."
 msgstr "\"%s\" foi renomeado para \"%s\"."
 
-#: access/transam/xlog.c:9386
+#: access/transam/xlog.c:10568
 #, c-format
 msgid "online backup mode was not canceled"
 msgstr "modo de cópia de segurança online não foi cancelado"
 
-#: access/transam/xlog.c:9387
+#: access/transam/xlog.c:10569
 #, c-format
 msgid "Could not rename \"%s\" to \"%s\": %m."
 msgstr "não pôde renomear \"%s\" para \"%s\": %m"
 
-#: access/transam/xlog.c:9507 replication/walreceiver.c:934
-#: replication/walsender.c:1344
+#: access/transam/xlog.c:10689 replication/logical/logicalfuncs.c:169
+#: replication/walreceiver.c:937 replication/walsender.c:2106
 #, c-format
 msgid "could not seek in log segment %s to offset %u: %m"
 msgstr "não pôde posicionar no arquivo de log %s na posição %u: %m"
 
-#: access/transam/xlog.c:9519
+#: access/transam/xlog.c:10701
 #, c-format
 msgid "could not read from log segment %s, offset %u: %m"
 msgstr "não pôde ler do arquivo de log %s, posição %u: %m"
 
-#: access/transam/xlog.c:9981
+#: access/transam/xlog.c:11164
 #, c-format
 msgid "received promote request"
 msgstr "pedido de promoção foi recebido"
 
-#: access/transam/xlog.c:9994
+#: access/transam/xlog.c:11177
 #, c-format
 msgid "trigger file found: %s"
 msgstr "arquivo de gatilho encontrado: %s"
 
+#: access/transam/xlog.c:11186
+#, fuzzy, c-format
+msgid "could not stat trigger file \"%s\": %m"
+msgstr "não pôde executar stat no arquivo de gatilho \"%s\": %m"
+
 #: access/transam/xlogarchive.c:244
 #, c-format
 msgid "archive file \"%s\" has wrong size: %lu instead of %lu"
@@ -1961,108 +2097,97 @@ msgid "restored log file \"%s\" from archive"
 msgstr "arquivo de log restaurado \"%s\" do arquivador"
 
 #: access/transam/xlogarchive.c:303
-#, c-format
-msgid "could not restore file \"%s\" from archive: return code %d"
-msgstr "não pôde restaurar arquivo \"%s\" do arquivador: código retornado %d"
+#, fuzzy, c-format
+msgid "could not restore file \"%s\" from archive: %s"
+msgstr "não pôde restaurar arquivo \"%s\" do arquivador: %s"
 
 #. translator: First %s represents a recovery.conf parameter name like
-#. "recovery_end_command", and the 2nd is the value of that parameter.
-#: access/transam/xlogarchive.c:414
+#. "recovery_end_command", the 2nd is the value of that parameter, the
+#. third an already translated error message.
+#: access/transam/xlogarchive.c:415
 #, c-format
-msgid "%s \"%s\": return code %d"
-msgstr "%s \"%s\": código retornado %d"
+msgid "%s \"%s\": %s"
+msgstr "%s \"%s\": %s"
 
-#: access/transam/xlogarchive.c:524 access/transam/xlogarchive.c:593
+#: access/transam/xlogarchive.c:525 access/transam/xlogarchive.c:594
 #, c-format
 msgid "could not create archive status file \"%s\": %m"
 msgstr "não pôde criar arquivo de status do arquivador \"%s\": %m"
 
-#: access/transam/xlogarchive.c:532 access/transam/xlogarchive.c:601
+#: access/transam/xlogarchive.c:533 access/transam/xlogarchive.c:602
 #, c-format
 msgid "could not write archive status file \"%s\": %m"
 msgstr "não pôde escrever no arquivo de status do arquivador \"%s\": %m"
 
-#: access/transam/xlogfuncs.c:62 access/transam/xlogfuncs.c:93
+#: access/transam/xlogfuncs.c:60 access/transam/xlogfuncs.c:88
 #, c-format
 msgid "must be superuser or replication role to run a backup"
 msgstr "deve ser super-usuário ou role de replicação para fazer uma cópia de segurança"
 
-#: access/transam/xlogfuncs.c:114
+#: access/transam/xlogfuncs.c:106
 #, c-format
 msgid "must be superuser to switch transaction log files"
 msgstr "deve ser super-usuário para rotacionar arquivos do log de transação"
 
-#: access/transam/xlogfuncs.c:146
+#: access/transam/xlogfuncs.c:135
 #, c-format
 msgid "must be superuser to create a restore point"
 msgstr "deve ser super-usuário para criar um ponto de restauração"
 
-#: access/transam/xlogfuncs.c:157
+#: access/transam/xlogfuncs.c:146
 #, c-format
 msgid "WAL level not sufficient for creating a restore point"
 msgstr "nível do WAL não é suficiente para criar um ponto de restauração"
 
-#: access/transam/xlogfuncs.c:165
+#: access/transam/xlogfuncs.c:154
 #, c-format
 msgid "value too long for restore point (maximum %d characters)"
 msgstr "valor é muito longo para ponto de restauração (máximo de %d caracteres)"
 
-#: access/transam/xlogfuncs.c:300
+#: access/transam/xlogfuncs.c:271
 #, c-format
 msgid "pg_xlogfile_name_offset() cannot be executed during recovery."
 msgstr "pg_xlogfile_name_offset() não pode ser executado durante recuperação."
 
-#: access/transam/xlogfuncs.c:312 access/transam/xlogfuncs.c:383
-#: access/transam/xlogfuncs.c:540 access/transam/xlogfuncs.c:546
-#, c-format
-msgid "could not parse transaction log location \"%s\""
-msgstr "não pôde validar local do log de transação \"%s\""
-
-#: access/transam/xlogfuncs.c:374
+#: access/transam/xlogfuncs.c:327
 #, c-format
 msgid "pg_xlogfile_name() cannot be executed during recovery."
 msgstr "pg_xlogfile_name() não pode ser executado durante recuperação."
 
-#: access/transam/xlogfuncs.c:402 access/transam/xlogfuncs.c:424
-#: access/transam/xlogfuncs.c:446
+#: access/transam/xlogfuncs.c:344 access/transam/xlogfuncs.c:366
 #, c-format
 msgid "must be superuser to control recovery"
 msgstr "deve ser super-usuário para controlar recuperação"
 
-#: access/transam/xlogfuncs.c:407 access/transam/xlogfuncs.c:429
-#: access/transam/xlogfuncs.c:451
+#: access/transam/xlogfuncs.c:349 access/transam/xlogfuncs.c:371
+#: access/transam/xlogfuncs.c:388
 #, c-format
 msgid "recovery is not in progress"
 msgstr "recuperação não está em andamento"
 
-#: access/transam/xlogfuncs.c:408 access/transam/xlogfuncs.c:430
-#: access/transam/xlogfuncs.c:452
+#: access/transam/xlogfuncs.c:350 access/transam/xlogfuncs.c:372
+#: access/transam/xlogfuncs.c:389
 #, c-format
 msgid "Recovery control functions can only be executed during recovery."
 msgstr "Funções de controle de recuperação só podem ser executadas durante recuperação."
 
-#: access/transam/xlogfuncs.c:501 access/transam/xlogfuncs.c:507
-#, c-format
-msgid "invalid input syntax for transaction log location: \"%s\""
-msgstr "sintaxe de entrada é inválida para local do log de transação: \"%s\""
-
-#: bootstrap/bootstrap.c:278 postmaster/postmaster.c:759 tcop/postgres.c:3453
+#: bootstrap/bootstrap.c:273 postmaster/postmaster.c:759 tcop/postgres.c:3460
 #, c-format
 msgid "--%s requires a value"
 msgstr "--%s requer um valor"
 
-#: bootstrap/bootstrap.c:283 postmaster/postmaster.c:764 tcop/postgres.c:3458
+#: bootstrap/bootstrap.c:278 postmaster/postmaster.c:764 tcop/postgres.c:3465
 #, c-format
 msgid "-c %s requires a value"
 msgstr "-c %s requer um valor"
 
-#: bootstrap/bootstrap.c:294 postmaster/postmaster.c:776
+#: bootstrap/bootstrap.c:289 postmaster/postmaster.c:776
 #: postmaster/postmaster.c:789
 #, c-format
 msgid "Try \"%s --help\" for more information.\n"
 msgstr "Tente \"%s --help\" para obter informações adicionais.\n"
 
-#: bootstrap/bootstrap.c:303
+#: bootstrap/bootstrap.c:298
 #, c-format
 msgid "%s: invalid command-line arguments\n"
 msgstr "%s: argumentos de linha de comando são inválidos\n"
@@ -2177,34 +2302,34 @@ msgstr "tipo de privilégio %s é inválido para servidor externo"
 msgid "column privileges are only valid for relations"
 msgstr "privilégios de coluna só são válidos para relações"
 
-#: catalog/aclchk.c:688 catalog/aclchk.c:3901 catalog/aclchk.c:4678
-#: catalog/objectaddress.c:575 catalog/pg_largeobject.c:113
-#: storage/large_object/inv_api.c:266
+#: catalog/aclchk.c:688 catalog/aclchk.c:3904 catalog/aclchk.c:4681
+#: catalog/objectaddress.c:586 catalog/pg_largeobject.c:113
+#: storage/large_object/inv_api.c:291
 #, c-format
 msgid "large object %u does not exist"
 msgstr "objeto grande %u não existe"
 
 #: catalog/aclchk.c:875 catalog/aclchk.c:883 commands/collationcmds.c:91
-#: commands/copy.c:923 commands/copy.c:941 commands/copy.c:949
-#: commands/copy.c:957 commands/copy.c:965 commands/copy.c:973
-#: commands/copy.c:981 commands/copy.c:989 commands/copy.c:997
-#: commands/copy.c:1013 commands/copy.c:1032 commands/copy.c:1047
-#: commands/dbcommands.c:148 commands/dbcommands.c:156
+#: commands/copy.c:925 commands/copy.c:943 commands/copy.c:951
+#: commands/copy.c:959 commands/copy.c:967 commands/copy.c:975
+#: commands/copy.c:983 commands/copy.c:991 commands/copy.c:999
+#: commands/copy.c:1015 commands/copy.c:1029 commands/copy.c:1048
+#: commands/copy.c:1063 commands/dbcommands.c:148 commands/dbcommands.c:156
 #: commands/dbcommands.c:164 commands/dbcommands.c:172
 #: commands/dbcommands.c:180 commands/dbcommands.c:188
-#: commands/dbcommands.c:196 commands/dbcommands.c:1360
-#: commands/dbcommands.c:1368 commands/extension.c:1250
-#: commands/extension.c:1258 commands/extension.c:1266
-#: commands/extension.c:2674 commands/foreigncmds.c:486
-#: commands/foreigncmds.c:495 commands/functioncmds.c:496
-#: commands/functioncmds.c:588 commands/functioncmds.c:596
-#: commands/functioncmds.c:604 commands/functioncmds.c:1669
-#: commands/functioncmds.c:1677 commands/sequence.c:1164
-#: commands/sequence.c:1172 commands/sequence.c:1180 commands/sequence.c:1188
-#: commands/sequence.c:1196 commands/sequence.c:1204 commands/sequence.c:1212
-#: commands/sequence.c:1220 commands/typecmds.c:295 commands/typecmds.c:1330
-#: commands/typecmds.c:1339 commands/typecmds.c:1347 commands/typecmds.c:1355
-#: commands/typecmds.c:1363 commands/user.c:135 commands/user.c:152
+#: commands/dbcommands.c:196 commands/dbcommands.c:1351
+#: commands/dbcommands.c:1359 commands/extension.c:1246
+#: commands/extension.c:1254 commands/extension.c:1262
+#: commands/extension.c:2670 commands/foreigncmds.c:486
+#: commands/foreigncmds.c:495 commands/functioncmds.c:522
+#: commands/functioncmds.c:614 commands/functioncmds.c:622
+#: commands/functioncmds.c:630 commands/functioncmds.c:1700
+#: commands/functioncmds.c:1708 commands/sequence.c:1146
+#: commands/sequence.c:1154 commands/sequence.c:1162 commands/sequence.c:1170
+#: commands/sequence.c:1178 commands/sequence.c:1186 commands/sequence.c:1194
+#: commands/sequence.c:1202 commands/typecmds.c:297 commands/typecmds.c:1332
+#: commands/typecmds.c:1341 commands/typecmds.c:1349 commands/typecmds.c:1357
+#: commands/typecmds.c:1365 commands/user.c:135 commands/user.c:152
 #: commands/user.c:160 commands/user.c:168 commands/user.c:176
 #: commands/user.c:184 commands/user.c:192 commands/user.c:200
 #: commands/user.c:208 commands/user.c:216 commands/user.c:224
@@ -2221,22 +2346,22 @@ msgstr "opções conflitantes ou redundantes"
 msgid "default privileges cannot be set for columns"
 msgstr "privilégios padrão não podem ser definidos para colunas"
 
-#: catalog/aclchk.c:1492 catalog/objectaddress.c:1021 commands/analyze.c:386
-#: commands/copy.c:4163 commands/sequence.c:1466 commands/tablecmds.c:4825
-#: commands/tablecmds.c:4920 commands/tablecmds.c:4970
-#: commands/tablecmds.c:5074 commands/tablecmds.c:5121
-#: commands/tablecmds.c:5205 commands/tablecmds.c:5293
-#: commands/tablecmds.c:7238 commands/tablecmds.c:7442
-#: commands/tablecmds.c:7834 commands/trigger.c:610 parser/analyze.c:1998
-#: parser/parse_relation.c:2173 parser/parse_relation.c:2230
-#: parser/parse_target.c:920 parser/parse_type.c:124 utils/adt/acl.c:2840
-#: utils/adt/ruleutils.c:1781
+#: catalog/aclchk.c:1492 catalog/objectaddress.c:1042 commands/analyze.c:387
+#: commands/copy.c:4247 commands/sequence.c:1448 commands/tablecmds.c:4939
+#: commands/tablecmds.c:5034 commands/tablecmds.c:5084
+#: commands/tablecmds.c:5188 commands/tablecmds.c:5235
+#: commands/tablecmds.c:5319 commands/tablecmds.c:5407
+#: commands/tablecmds.c:7494 commands/tablecmds.c:7698
+#: commands/tablecmds.c:8090 commands/trigger.c:635 parser/analyze.c:1998
+#: parser/parse_relation.c:2358 parser/parse_relation.c:2420
+#: parser/parse_target.c:920 parser/parse_type.c:128 utils/adt/acl.c:2840
+#: utils/adt/ruleutils.c:1820
 #, c-format
 msgid "column \"%s\" of relation \"%s\" does not exist"
 msgstr "coluna \"%s\" da relação \"%s\" não existe"
 
-#: catalog/aclchk.c:1757 catalog/objectaddress.c:849 commands/sequence.c:1053
-#: commands/tablecmds.c:213 commands/tablecmds.c:10557 utils/adt/acl.c:2076
+#: catalog/aclchk.c:1757 catalog/objectaddress.c:862 commands/sequence.c:1035
+#: commands/tablecmds.c:214 commands/tablecmds.c:11244 utils/adt/acl.c:2076
 #: utils/adt/acl.c:2106 utils/adt/acl.c:2138 utils/adt/acl.c:2170
 #: utils/adt/acl.c:2198 utils/adt/acl.c:2228
 #, c-format
@@ -2283,7 +2408,7 @@ msgstr "não pode definir privilégios de tipos array"
 msgid "Set the privileges of the element type instead."
 msgstr "Defina os privilégios do tipo do elemento."
 
-#: catalog/aclchk.c:3100 catalog/objectaddress.c:1072 commands/typecmds.c:3179
+#: catalog/aclchk.c:3100 catalog/objectaddress.c:1094 commands/typecmds.c:3187
 #, c-format
 msgid "\"%s\" is not a domain"
 msgstr "\"%s\" não é um domínio"
@@ -2303,8 +2428,8 @@ msgstr "permissão negada para coluna %s"
 msgid "permission denied for relation %s"
 msgstr "permissão negada para relação %s"
 
-#: catalog/aclchk.c:3273 commands/sequence.c:560 commands/sequence.c:773
-#: commands/sequence.c:815 commands/sequence.c:852 commands/sequence.c:1518
+#: catalog/aclchk.c:3273 commands/sequence.c:535 commands/sequence.c:748
+#: commands/sequence.c:790 commands/sequence.c:827 commands/sequence.c:1500
 #, c-format
 msgid "permission denied for sequence %s"
 msgstr "permissão negada para sequência %s"
@@ -2514,106 +2639,96 @@ msgstr "role com OID %u não existe"
 msgid "attribute %d of relation with OID %u does not exist"
 msgstr "atributo %d da relação com OID %u não existe"
 
-#: catalog/aclchk.c:3617 catalog/aclchk.c:4529
+#: catalog/aclchk.c:3617 catalog/aclchk.c:4532
 #, c-format
 msgid "relation with OID %u does not exist"
 msgstr "relação com OID %u não existe"
 
-#: catalog/aclchk.c:3717 catalog/aclchk.c:4947
+#: catalog/aclchk.c:3717 catalog/aclchk.c:4950
 #, c-format
 msgid "database with OID %u does not exist"
 msgstr "banco de dados com OID %u não existe"
 
-#: catalog/aclchk.c:3771 catalog/aclchk.c:4607 tcop/fastpath.c:223
+#: catalog/aclchk.c:3771 catalog/aclchk.c:4610 tcop/fastpath.c:223
 #, c-format
 msgid "function with OID %u does not exist"
 msgstr "função com OID %u não existe"
 
-#: catalog/aclchk.c:3825 catalog/aclchk.c:4633
+#: catalog/aclchk.c:3825 catalog/aclchk.c:4636
 #, c-format
 msgid "language with OID %u does not exist"
 msgstr "linguagem com OID %u não existe"
 
-#: catalog/aclchk.c:3986 catalog/aclchk.c:4705
+#: catalog/aclchk.c:3989 catalog/aclchk.c:4708
 #, c-format
 msgid "schema with OID %u does not exist"
 msgstr "esquema com OID %u não existe"
 
-#: catalog/aclchk.c:4040 catalog/aclchk.c:4732
+#: catalog/aclchk.c:4043 catalog/aclchk.c:4735
 #, c-format
 msgid "tablespace with OID %u does not exist"
 msgstr "tablespace com OID %u não existe"
 
-#: catalog/aclchk.c:4098 catalog/aclchk.c:4866 commands/foreigncmds.c:302
+#: catalog/aclchk.c:4101 catalog/aclchk.c:4869 commands/foreigncmds.c:302
 #, c-format
 msgid "foreign-data wrapper with OID %u does not exist"
 msgstr "adaptador de dados externos com OID %u não existe"
 
-#: catalog/aclchk.c:4159 catalog/aclchk.c:4893 commands/foreigncmds.c:409
+#: catalog/aclchk.c:4162 catalog/aclchk.c:4896 commands/foreigncmds.c:409
 #, c-format
 msgid "foreign server with OID %u does not exist"
 msgstr "servidor externo com OID %u não existe"
 
-#: catalog/aclchk.c:4218 catalog/aclchk.c:4232 catalog/aclchk.c:4555
+#: catalog/aclchk.c:4221 catalog/aclchk.c:4235 catalog/aclchk.c:4558
 #, c-format
 msgid "type with OID %u does not exist"
 msgstr "tipo com OID %u não existe"
 
-#: catalog/aclchk.c:4581
+#: catalog/aclchk.c:4584
 #, c-format
 msgid "operator with OID %u does not exist"
 msgstr "operador com OID %u não existe"
 
-#: catalog/aclchk.c:4758
+#: catalog/aclchk.c:4761
 #, c-format
 msgid "operator class with OID %u does not exist"
 msgstr "classe de operadores com OID %u não existe"
 
-#: catalog/aclchk.c:4785
+#: catalog/aclchk.c:4788
 #, c-format
 msgid "operator family with OID %u does not exist"
 msgstr "família de operadores com OID %u não existe"
 
-#: catalog/aclchk.c:4812
+#: catalog/aclchk.c:4815
 #, c-format
 msgid "text search dictionary with OID %u does not exist"
 msgstr "dicionário de busca textual com OID %u não existe"
 
-#: catalog/aclchk.c:4839
+#: catalog/aclchk.c:4842
 #, c-format
 msgid "text search configuration with OID %u does not exist"
 msgstr "configuração de busca textual com OID %u não existe"
 
-#: catalog/aclchk.c:4920 commands/event_trigger.c:509
+#: catalog/aclchk.c:4923 commands/event_trigger.c:509
 #, c-format
 msgid "event trigger with OID %u does not exist"
 msgstr "gatilho de eventos com OID %u não existe"
 
-#: catalog/aclchk.c:4973
+#: catalog/aclchk.c:4976
 #, c-format
 msgid "collation with OID %u does not exist"
 msgstr "ordenação com OID %u não existe"
 
-#: catalog/aclchk.c:4999
+#: catalog/aclchk.c:5002
 #, c-format
 msgid "conversion with OID %u does not exist"
 msgstr "conversão com OID %u não existe"
 
-#: catalog/aclchk.c:5040
+#: catalog/aclchk.c:5043
 #, c-format
 msgid "extension with OID %u does not exist"
 msgstr "extensão com OID %u não existe"
 
-#: catalog/catalog.c:63
-#, c-format
-msgid "invalid fork name"
-msgstr "nome de fork é inválido"
-
-#: catalog/catalog.c:64
-#, c-format
-msgid "Valid fork names are \"main\", \"fsm\", and \"vm\"."
-msgstr "Nomes válidos são \"main\", \"fsm\" e \"vm\"."
-
 #: catalog/dependency.c:626
 #, c-format
 msgid "cannot drop %s because %s requires it"
@@ -2624,7 +2739,7 @@ msgstr "não pode remover %s porque %s o requer"
 msgid "You can drop %s instead."
 msgstr "Você pode remover %s ao invés dele."
 
-#: catalog/dependency.c:790 catalog/pg_shdepend.c:571
+#: catalog/dependency.c:790 catalog/pg_shdepend.c:573
 #, c-format
 msgid "cannot drop %s because it is required by the database system"
 msgstr "não pode remover %s porque ele é requerido pelo sistema de banco de dados"
@@ -2644,7 +2759,7 @@ msgstr "%s depende de %s"
 msgid "drop cascades to %s"
 msgstr "removendo em cascata %s"
 
-#: catalog/dependency.c:956 catalog/pg_shdepend.c:682
+#: catalog/dependency.c:956 catalog/pg_shdepend.c:684
 #, c-format
 msgid ""
 "\n"
@@ -2664,17 +2779,6 @@ msgstr[1] ""
 msgid "cannot drop %s because other objects depend on it"
 msgstr "não pode remover %s porque outros objetos dependem dele"
 
-#: catalog/dependency.c:970 catalog/dependency.c:971 catalog/dependency.c:977
-#: catalog/dependency.c:978 catalog/dependency.c:989 catalog/dependency.c:990
-#: catalog/objectaddress.c:751 commands/tablecmds.c:739 commands/user.c:988
-#: port/win32/security.c:51 storage/lmgr/deadlock.c:955
-#: storage/lmgr/proc.c:1182 utils/misc/guc.c:5514 utils/misc/guc.c:5849
-#: utils/misc/guc.c:8210 utils/misc/guc.c:8244 utils/misc/guc.c:8278
-#: utils/misc/guc.c:8312 utils/misc/guc.c:8347
-#, c-format
-msgid "%s"
-msgstr "%s"
-
 #: catalog/dependency.c:972 catalog/dependency.c:979
 #, c-format
 msgid "Use DROP ... CASCADE to drop the dependent objects too."
@@ -2693,198 +2797,198 @@ msgid_plural "drop cascades to %d other objects"
 msgstr[0] "removendo em cascata %d outro objeto"
 msgstr[1] "removendo em cascata outros %d objetos"
 
-#: catalog/heap.c:266
+#: catalog/heap.c:274
 #, c-format
 msgid "permission denied to create \"%s.%s\""
 msgstr "permissão negada ao criar \"%s.%s\""
 
-#: catalog/heap.c:268
+#: catalog/heap.c:276
 #, c-format
 msgid "System catalog modifications are currently disallowed."
 msgstr "Modificações no catálogo do sistema estão atualmente desabilitadas."
 
-#: catalog/heap.c:403 commands/tablecmds.c:1378 commands/tablecmds.c:1819
-#: commands/tablecmds.c:4470
+#: catalog/heap.c:411 commands/tablecmds.c:1402 commands/tablecmds.c:1844
+#: commands/tablecmds.c:4583
 #, c-format
 msgid "tables can have at most %d columns"
 msgstr "tabelas podem ter no máximo %d colunas"
 
-#: catalog/heap.c:420 commands/tablecmds.c:4726
+#: catalog/heap.c:428 commands/tablecmds.c:4839
 #, c-format
 msgid "column name \"%s\" conflicts with a system column name"
 msgstr "nome de coluna \"%s\" conflita com um nome de coluna do sistema"
 
-#: catalog/heap.c:436
+#: catalog/heap.c:444
 #, c-format
 msgid "column name \"%s\" specified more than once"
 msgstr "nome da coluna \"%s\" especificado mais de uma vez"
 
-#: catalog/heap.c:486
+#: catalog/heap.c:494
 #, c-format
 msgid "column \"%s\" has type \"unknown\""
 msgstr "coluna \"%s\" tem tipo \"unknown\""
 
-#: catalog/heap.c:487
+#: catalog/heap.c:495
 #, c-format
 msgid "Proceeding with relation creation anyway."
 msgstr "Prosseguindo com a criação da relação mesmo assim."
 
-#: catalog/heap.c:500
+#: catalog/heap.c:508
 #, c-format
 msgid "column \"%s\" has pseudo-type %s"
 msgstr "coluna \"%s\" tem pseudo-tipo %s"
 
-#: catalog/heap.c:530
+#: catalog/heap.c:538
 #, c-format
 msgid "composite type %s cannot be made a member of itself"
 msgstr "tipo composto %s não pode se tornar membro de si próprio"
 
-#: catalog/heap.c:572 commands/createas.c:342
+#: catalog/heap.c:580 commands/createas.c:343
 #, c-format
 msgid "no collation was derived for column \"%s\" with collatable type %s"
 msgstr "nenhuma ordenação foi derivada para coluna \"%s\" com tipo %s ordenável"
 
-#: catalog/heap.c:574 commands/createas.c:344 commands/indexcmds.c:1091
-#: commands/view.c:96 regex/regc_pg_locale.c:262 utils/adt/formatting.c:1515
-#: utils/adt/formatting.c:1567 utils/adt/formatting.c:1635
-#: utils/adt/formatting.c:1687 utils/adt/formatting.c:1756
-#: utils/adt/formatting.c:1820 utils/adt/like.c:212 utils/adt/selfuncs.c:5221
+#: catalog/heap.c:582 commands/createas.c:345 commands/indexcmds.c:1072
+#: commands/view.c:116 regex/regc_pg_locale.c:262 utils/adt/formatting.c:1510
+#: utils/adt/formatting.c:1562 utils/adt/formatting.c:1630
+#: utils/adt/formatting.c:1682 utils/adt/formatting.c:1751
+#: utils/adt/formatting.c:1815 utils/adt/like.c:212 utils/adt/selfuncs.c:5221
 #: utils/adt/varlena.c:1381
 #, c-format
 msgid "Use the COLLATE clause to set the collation explicitly."
 msgstr "Utilize a cláusula COLLATE para definir a ordenação explicitamente."
 
-#: catalog/heap.c:1047 catalog/index.c:776 commands/tablecmds.c:2521
+#: catalog/heap.c:1055 catalog/index.c:778 commands/tablecmds.c:2549
 #, c-format
 msgid "relation \"%s\" already exists"
 msgstr "relação \"%s\" já existe"
 
-#: catalog/heap.c:1063 catalog/pg_type.c:402 catalog/pg_type.c:705
-#: commands/typecmds.c:237 commands/typecmds.c:737 commands/typecmds.c:1088
-#: commands/typecmds.c:1306 commands/typecmds.c:2058
+#: catalog/heap.c:1071 catalog/pg_type.c:403 catalog/pg_type.c:706
+#: commands/typecmds.c:239 commands/typecmds.c:739 commands/typecmds.c:1090
+#: commands/typecmds.c:1308 commands/typecmds.c:2060
 #, c-format
 msgid "type \"%s\" already exists"
 msgstr "tipo \"%s\" já existe"
 
-#: catalog/heap.c:1064
+#: catalog/heap.c:1072
 #, c-format
 msgid "A relation has an associated type of the same name, so you must use a name that doesn't conflict with any existing type."
 msgstr "A relação tem um tipo associado com o mesmo nome, então você deve utilizar um nome que não conflite com outro tipo existente."
 
-#: catalog/heap.c:2249
+#: catalog/heap.c:2257
 #, c-format
 msgid "check constraint \"%s\" already exists"
 msgstr "restrição de verificação \"%s\" já existe"
 
-#: catalog/heap.c:2402 catalog/pg_constraint.c:650 commands/tablecmds.c:5620
+#: catalog/heap.c:2410 catalog/pg_constraint.c:650 commands/tablecmds.c:5734
 #, c-format
 msgid "constraint \"%s\" for relation \"%s\" already exists"
 msgstr "restrição \"%s\" para relação \"%s\" já existe"
 
-#: catalog/heap.c:2412
+#: catalog/heap.c:2420
 #, c-format
 msgid "constraint \"%s\" conflicts with non-inherited constraint on relation \"%s\""
 msgstr "restrição \"%s\" conflita com restrição não herdada na relação \"%s\""
 
-#: catalog/heap.c:2426
+#: catalog/heap.c:2434
 #, c-format
 msgid "merging constraint \"%s\" with inherited definition"
 msgstr "juntando restrição \"%s\" com definição herdada"
 
-#: catalog/heap.c:2519
+#: catalog/heap.c:2527
 #, c-format
 msgid "cannot use column references in default expression"
 msgstr "não pode utilizar referência à coluna na expressão padrão"
 
-#: catalog/heap.c:2530
+#: catalog/heap.c:2538
 #, c-format
 msgid "default expression must not return a set"
 msgstr "expressão padrão não deve retornar um conjunto"
 
-#: catalog/heap.c:2549 rewrite/rewriteHandler.c:1033
+#: catalog/heap.c:2557 rewrite/rewriteHandler.c:1066
 #, c-format
 msgid "column \"%s\" is of type %s but default expression is of type %s"
 msgstr "coluna \"%s\" é do tipo %s mas expressão padrão é do tipo %s"
 
-#: catalog/heap.c:2554 commands/prepare.c:374 parser/parse_node.c:411
+#: catalog/heap.c:2562 commands/prepare.c:374 parser/parse_node.c:411
 #: parser/parse_target.c:509 parser/parse_target.c:758
-#: parser/parse_target.c:768 rewrite/rewriteHandler.c:1038
+#: parser/parse_target.c:768 rewrite/rewriteHandler.c:1071
 #, c-format
 msgid "You will need to rewrite or cast the expression."
 msgstr "Você precisará reescrever ou converter a expressão."
 
-#: catalog/heap.c:2601
+#: catalog/heap.c:2609
 #, c-format
 msgid "only table \"%s\" can be referenced in check constraint"
 msgstr "somente a tabela \"%s\" pode ser referenciada na restrição de verificação"
 
-#: catalog/heap.c:2841
+#: catalog/heap.c:2849
 #, c-format
 msgid "unsupported ON COMMIT and foreign key combination"
 msgstr "combinação ON COMMIT e chave estrangeira não é suportada"
 
-#: catalog/heap.c:2842
+#: catalog/heap.c:2850
 #, c-format
 msgid "Table \"%s\" references \"%s\", but they do not have the same ON COMMIT setting."
 msgstr "Tabela \"%s\" referencia \"%s\", mas elas não têm a mesma definição de ON COMMIT."
 
-#: catalog/heap.c:2847
+#: catalog/heap.c:2855
 #, c-format
 msgid "cannot truncate a table referenced in a foreign key constraint"
 msgstr "não pode truncar uma tabela referenciada em uma restrição de chave estrangeira"
 
-#: catalog/heap.c:2848
+#: catalog/heap.c:2856
 #, c-format
 msgid "Table \"%s\" references \"%s\"."
 msgstr "Tabela \"%s\" referencia \"%s\"."
 
-#: catalog/heap.c:2850
+#: catalog/heap.c:2858
 #, c-format
 msgid "Truncate table \"%s\" at the same time, or use TRUNCATE ... CASCADE."
 msgstr "Trunque a tabela \"%s\" ao mesmo tempo, ou utilize TRUNCATE ... CASCADE."
 
-#: catalog/index.c:203 parser/parse_utilcmd.c:1398 parser/parse_utilcmd.c:1484
+#: catalog/index.c:204 parser/parse_utilcmd.c:1393 parser/parse_utilcmd.c:1479
 #, c-format
 msgid "multiple primary keys for table \"%s\" are not allowed"
 msgstr "chaves primárias múltiplas na tabela \"%s\" não são permitidas"
 
-#: catalog/index.c:221
+#: catalog/index.c:222
 #, c-format
 msgid "primary keys cannot be expressions"
 msgstr "chaves primárias não podem ser expressões"
 
-#: catalog/index.c:737 catalog/index.c:1142
+#: catalog/index.c:739 catalog/index.c:1143
 #, c-format
 msgid "user-defined indexes on system catalog tables are not supported"
 msgstr "índices definidos pelo usuário nas tabelas de catálogo do sistema não são suportados"
 
-#: catalog/index.c:747
+#: catalog/index.c:749
 #, c-format
 msgid "concurrent index creation on system catalog tables is not supported"
 msgstr "criação de índices concorrentes nas tabelas de catálogo do sistema não são suportados"
 
-#: catalog/index.c:765
+#: catalog/index.c:767
 #, c-format
 msgid "shared indexes cannot be created after initdb"
 msgstr "índices compartilhados não podem ser criados depois do initdb"
 
-#: catalog/index.c:1406
+#: catalog/index.c:1403
 #, c-format
 msgid "DROP INDEX CONCURRENTLY must be first action in transaction"
 msgstr "DROP INDEX CONCURRENTLY deve ser a primeira ação na transação"
 
-#: catalog/index.c:1974
+#: catalog/index.c:1944
 #, c-format
 msgid "building index \"%s\" on table \"%s\""
 msgstr "construindo índice \"%s\" na tabela \"%s\""
 
-#: catalog/index.c:3150
+#: catalog/index.c:3129
 #, c-format
 msgid "cannot reindex temporary tables of other sessions"
 msgstr "não pode reindexar tabelas temporárias de outras sessões"
 
 #: catalog/namespace.c:247 catalog/namespace.c:445 catalog/namespace.c:539
-#: commands/trigger.c:4251
+#: commands/trigger.c:4486
 #, c-format
 msgid "cross-database references are not implemented: \"%s.%s.%s\""
 msgstr "referências cruzadas entre bancos de dados não estão implementadas: \"%s.%s.%s\""
@@ -2904,19 +3008,19 @@ msgstr "não pôde obter bloqueio na relação \"%s.%s\""
 msgid "could not obtain lock on relation \"%s\""
 msgstr "não pôde obter bloqueio na relação \"%s\""
 
-#: catalog/namespace.c:412 parser/parse_relation.c:962
+#: catalog/namespace.c:412 parser/parse_relation.c:964
 #, c-format
 msgid "relation \"%s.%s\" does not exist"
 msgstr "relação \"%s.%s\" não existe"
 
-#: catalog/namespace.c:417 parser/parse_relation.c:975
-#: parser/parse_relation.c:983 utils/adt/regproc.c:853
+#: catalog/namespace.c:417 parser/parse_relation.c:977
+#: parser/parse_relation.c:985 utils/adt/regproc.c:974
 #, c-format
 msgid "relation \"%s\" does not exist"
 msgstr "relação \"%s\" não existe"
 
-#: catalog/namespace.c:485 catalog/namespace.c:2834 commands/extension.c:1400
-#: commands/extension.c:1406
+#: catalog/namespace.c:485 catalog/namespace.c:2849 commands/extension.c:1396
+#: commands/extension.c:1402
 #, c-format
 msgid "no schema has been selected to create in"
 msgstr "nenhum esquema foi selecionado para criá-lo(a)"
@@ -2936,245 +3040,246 @@ msgstr "não pode criar relação temporária em esquema que não é temporário
 msgid "only temporary relations may be created in temporary schemas"
 msgstr "somente relações temporárias podem ser criadas em esquemas temporários"
 
-#: catalog/namespace.c:2136
+#: catalog/namespace.c:2151
 #, c-format
 msgid "text search parser \"%s\" does not exist"
 msgstr "analisador de busca textual \"%s\" não existe"
 
-#: catalog/namespace.c:2262
+#: catalog/namespace.c:2277
 #, c-format
 msgid "text search dictionary \"%s\" does not exist"
 msgstr "dicionário de busca textual \"%s\" não existe"
 
-#: catalog/namespace.c:2389
+#: catalog/namespace.c:2404
 #, c-format
 msgid "text search template \"%s\" does not exist"
 msgstr "modelo de busca textual \"%s\" não existe"
 
-#: catalog/namespace.c:2515 commands/tsearchcmds.c:1168
-#: utils/cache/ts_cache.c:619
+#: catalog/namespace.c:2530 commands/tsearchcmds.c:1168
+#: utils/cache/ts_cache.c:616
 #, c-format
 msgid "text search configuration \"%s\" does not exist"
 msgstr "configuração de busca textual \"%s\" não existe"
 
-#: catalog/namespace.c:2628 parser/parse_expr.c:787 parser/parse_target.c:1110
+#: catalog/namespace.c:2643 parser/parse_expr.c:788 parser/parse_target.c:1110
 #, c-format
 msgid "cross-database references are not implemented: %s"
 msgstr "referências cruzadas entre bancos de dados não estão implementadas: %s"
 
-#: catalog/namespace.c:2634 gram.y:12481 gram.y:13658 parser/parse_expr.c:794
+#: catalog/namespace.c:2649 gram.y:12556 gram.y:13788 parser/parse_expr.c:795
 #: parser/parse_target.c:1117
 #, c-format
 msgid "improper qualified name (too many dotted names): %s"
 msgstr "nome qualificado é inválido (nomes com muitos pontos): %s"
 
-#: catalog/namespace.c:2768
+#: catalog/namespace.c:2783
 #, c-format
 msgid "%s is already in schema \"%s\""
 msgstr "%s já está no esquema \"%s\""
 
-#: catalog/namespace.c:2776
+#: catalog/namespace.c:2791
 #, c-format
 msgid "cannot move objects into or out of temporary schemas"
 msgstr "não pode mover objetos para ou de esquemas temporários"
 
-#: catalog/namespace.c:2782
+#: catalog/namespace.c:2797
 #, c-format
 msgid "cannot move objects into or out of TOAST schema"
 msgstr "não pode mover objetos para ou de esquema TOAST"
 
-#: catalog/namespace.c:2855 commands/schemacmds.c:212
-#: commands/schemacmds.c:288
+#: catalog/namespace.c:2870 commands/schemacmds.c:212
+#: commands/schemacmds.c:288 commands/tablecmds.c:708
 #, c-format
 msgid "schema \"%s\" does not exist"
 msgstr "esquema \"%s\" não existe"
 
-#: catalog/namespace.c:2886
+#: catalog/namespace.c:2901
 #, c-format
 msgid "improper relation name (too many dotted names): %s"
 msgstr "nome de relação é inválido (nomes com muitos pontos): %s"
 
-#: catalog/namespace.c:3327
+#: catalog/namespace.c:3342
 #, c-format
 msgid "collation \"%s\" for encoding \"%s\" does not exist"
 msgstr "ordenação \"%s\" para codificação \"%s\" não existe"
 
-#: catalog/namespace.c:3382
+#: catalog/namespace.c:3397
 #, c-format
 msgid "conversion \"%s\" does not exist"
 msgstr "conversão \"%s\" não existe"
 
-#: catalog/namespace.c:3590
+#: catalog/namespace.c:3605
 #, c-format
 msgid "permission denied to create temporary tables in database \"%s\""
 msgstr "permissão negada ao criar tabelas temporárias no banco de dados \"%s\""
 
-#: catalog/namespace.c:3606
+#: catalog/namespace.c:3621
 #, c-format
 msgid "cannot create temporary tables during recovery"
 msgstr "não pode criar tabelas temporárias durante recuperação"
 
-#: catalog/namespace.c:3850 commands/tablespace.c:1083 commands/variable.c:61
-#: replication/syncrep.c:676 utils/misc/guc.c:8377
+#: catalog/namespace.c:3865 commands/tablespace.c:1106 commands/variable.c:61
+#: replication/syncrep.c:677 utils/misc/guc.c:9045
 #, c-format
 msgid "List syntax is invalid."
 msgstr "Sintaxe de lista é inválida."
 
-#: catalog/objectaddress.c:719
+#: catalog/objectaddress.c:732
 msgid "database name cannot be qualified"
 msgstr "nome do banco de dados não pode ser qualificado"
 
-#: catalog/objectaddress.c:722 commands/extension.c:2427
+#: catalog/objectaddress.c:735 commands/extension.c:2423
 #, c-format
 msgid "extension name cannot be qualified"
 msgstr "nome da extensão não pode ser qualificado"
 
-#: catalog/objectaddress.c:725
+#: catalog/objectaddress.c:738
 msgid "tablespace name cannot be qualified"
 msgstr "nome da tablespace não pode ser qualificado"
 
-#: catalog/objectaddress.c:728
+#: catalog/objectaddress.c:741
 msgid "role name cannot be qualified"
 msgstr "nome da role não pode ser qualificado"
 
-#: catalog/objectaddress.c:731
+#: catalog/objectaddress.c:744
 msgid "schema name cannot be qualified"
 msgstr "nome do esquema não pode ser qualificado"
 
-#: catalog/objectaddress.c:734
+#: catalog/objectaddress.c:747
 msgid "language name cannot be qualified"
 msgstr "nome da linguagem não pode ser qualificado"
 
-#: catalog/objectaddress.c:737
+#: catalog/objectaddress.c:750
 msgid "foreign-data wrapper name cannot be qualified"
 msgstr "nome do adaptador de dados externos não pode ser qualificado"
 
-#: catalog/objectaddress.c:740
+#: catalog/objectaddress.c:753
 msgid "server name cannot be qualified"
 msgstr "nome do servidor não pode ser qualificado"
 
-#: catalog/objectaddress.c:743
+#: catalog/objectaddress.c:756
 msgid "event trigger name cannot be qualified"
 msgstr "nome do gatilho de eventos não pode ser qualificado"
 
-#: catalog/objectaddress.c:856 commands/lockcmds.c:94 commands/tablecmds.c:207
-#: commands/tablecmds.c:1239 commands/tablecmds.c:4017
-#: commands/tablecmds.c:7345
+#: catalog/objectaddress.c:869 commands/lockcmds.c:94 commands/tablecmds.c:208
+#: commands/tablecmds.c:1263 commands/tablecmds.c:4130
+#: commands/tablecmds.c:7601
 #, c-format
 msgid "\"%s\" is not a table"
 msgstr "\"%s\" não é uma tabela"
 
-#: catalog/objectaddress.c:863 commands/tablecmds.c:219
-#: commands/tablecmds.c:4041 commands/tablecmds.c:10562 commands/view.c:134
+#: catalog/objectaddress.c:876 commands/tablecmds.c:220
+#: commands/tablecmds.c:4154 commands/tablecmds.c:11249 commands/view.c:154
 #, c-format
 msgid "\"%s\" is not a view"
 msgstr "\"%s\" não é uma visão"
 
-#: catalog/objectaddress.c:870 commands/matview.c:144 commands/tablecmds.c:225
-#: commands/tablecmds.c:10567
+#: catalog/objectaddress.c:883 commands/matview.c:171 commands/tablecmds.c:226
+#: commands/tablecmds.c:11254
 #, c-format
 msgid "\"%s\" is not a materialized view"
 msgstr "\"%s\" não é uma visão materializada"
 
-#: catalog/objectaddress.c:877 commands/tablecmds.c:243
-#: commands/tablecmds.c:4044 commands/tablecmds.c:10572
+#: catalog/objectaddress.c:890 commands/tablecmds.c:244
+#: commands/tablecmds.c:4157 commands/tablecmds.c:11259
 #, c-format
 msgid "\"%s\" is not a foreign table"
 msgstr "\"%s\" não é uma tabela externa"
 
-#: catalog/objectaddress.c:1008
+#: catalog/objectaddress.c:1028
 #, c-format
 msgid "column name must be qualified"
 msgstr "nome da coluna deve ser qualificado"
 
-#: catalog/objectaddress.c:1061 commands/functioncmds.c:127
-#: commands/tablecmds.c:235 commands/typecmds.c:3245 parser/parse_func.c:1575
-#: parser/parse_type.c:203 utils/adt/acl.c:4374 utils/adt/regproc.c:1017
+#: catalog/objectaddress.c:1083 commands/functioncmds.c:126
+#: commands/tablecmds.c:236 commands/typecmds.c:3253 parser/parse_type.c:222
+#: parser/parse_type.c:251 parser/parse_type.c:795 utils/adt/acl.c:4374
+#: utils/adt/regproc.c:1165
 #, c-format
 msgid "type \"%s\" does not exist"
 msgstr "tipo \"%s\" não existe"
 
-#: catalog/objectaddress.c:1217 libpq/be-fsstubs.c:352
+#: catalog/objectaddress.c:1240 libpq/be-fsstubs.c:352
 #, c-format
 msgid "must be owner of large object %u"
 msgstr "deve ser dono do objeto grande %u"
 
-#: catalog/objectaddress.c:1232 commands/functioncmds.c:1297
+#: catalog/objectaddress.c:1255 commands/functioncmds.c:1328
 #, c-format
 msgid "must be owner of type %s or type %s"
 msgstr "deve ser dono do tipo %s ou tipo %s"
 
-#: catalog/objectaddress.c:1263 catalog/objectaddress.c:1279
+#: catalog/objectaddress.c:1286 catalog/objectaddress.c:1302
 #, c-format
 msgid "must be superuser"
 msgstr "deve ser super-usuário"
 
-#: catalog/objectaddress.c:1270
+#: catalog/objectaddress.c:1293
 #, c-format
 msgid "must have CREATEROLE privilege"
 msgstr "deve ter privilégio CREATEROLE"
 
-#: catalog/objectaddress.c:1516
+#: catalog/objectaddress.c:1539
 #, c-format
 msgid " column %s"
 msgstr "coluna %s"
 
-#: catalog/objectaddress.c:1522
+#: catalog/objectaddress.c:1545
 #, c-format
 msgid "function %s"
 msgstr "função %s"
 
-#: catalog/objectaddress.c:1527
+#: catalog/objectaddress.c:1550
 #, c-format
 msgid "type %s"
 msgstr "tipo %s"
 
-#: catalog/objectaddress.c:1557
+#: catalog/objectaddress.c:1580
 #, c-format
 msgid "cast from %s to %s"
 msgstr "converte de %s para %s"
 
-#: catalog/objectaddress.c:1577
+#: catalog/objectaddress.c:1600
 #, c-format
 msgid "collation %s"
 msgstr "ordenação %s"
 
-#: catalog/objectaddress.c:1601
+#: catalog/objectaddress.c:1624
 #, c-format
 msgid "constraint %s on %s"
 msgstr "restrição %s em %s"
 
-#: catalog/objectaddress.c:1607
+#: catalog/objectaddress.c:1630
 #, c-format
 msgid "constraint %s"
 msgstr "restrição %s"
 
-#: catalog/objectaddress.c:1624
+#: catalog/objectaddress.c:1647
 #, c-format
 msgid "conversion %s"
 msgstr "conversão %s"
 
-#: catalog/objectaddress.c:1661
+#: catalog/objectaddress.c:1684
 #, c-format
 msgid "default for %s"
 msgstr "valor padrão para %s"
 
-#: catalog/objectaddress.c:1678
+#: catalog/objectaddress.c:1701
 #, c-format
 msgid "language %s"
 msgstr "linguagem %s"
 
-#: catalog/objectaddress.c:1684
+#: catalog/objectaddress.c:1707
 #, c-format
 msgid "large object %u"
 msgstr "objeto grande %u"
 
-#: catalog/objectaddress.c:1689
+#: catalog/objectaddress.c:1712
 #, c-format
 msgid "operator %s"
 msgstr "operador %s"
 
-#: catalog/objectaddress.c:1721
+#: catalog/objectaddress.c:1744
 #, c-format
 msgid "operator class %s for access method %s"
 msgstr "classe de operadores %s para método de acesso %s"
@@ -3183,7 +3288,7 @@ msgstr "classe de operadores %s para método de acesso %s"
 #. first two %s's are data type names, the third %s is the
 #. description of the operator family, and the last %s is the
 #. textual form of the operator with arguments.
-#: catalog/objectaddress.c:1771
+#: catalog/objectaddress.c:1794
 #, c-format
 msgid "operator %d (%s, %s) of %s: %s"
 msgstr "operador %d (%s, %s) de %s: %s"
@@ -3192,226 +3297,269 @@ msgstr "operador %d (%s, %s) de %s: %s"
 #. are data type names, the third %s is the description of the
 #. operator family, and the last %s is the textual form of the
 #. function with arguments.
-#: catalog/objectaddress.c:1821
+#: catalog/objectaddress.c:1844
 #, c-format
 msgid "function %d (%s, %s) of %s: %s"
 msgstr "função %d (%s, %s) de %s: %s"
 
-#: catalog/objectaddress.c:1861
+#: catalog/objectaddress.c:1884
 #, c-format
 msgid "rule %s on "
 msgstr "regra %s em "
 
-#: catalog/objectaddress.c:1896
+#: catalog/objectaddress.c:1919
 #, c-format
 msgid "trigger %s on "
 msgstr "gatilho %s em "
 
-#: catalog/objectaddress.c:1913
+#: catalog/objectaddress.c:1936
 #, c-format
 msgid "schema %s"
 msgstr "esquema %s"
 
-#: catalog/objectaddress.c:1926
+#: catalog/objectaddress.c:1949
 #, c-format
 msgid "text search parser %s"
 msgstr "analisador de busca textual %s"
 
-#: catalog/objectaddress.c:1941
+#: catalog/objectaddress.c:1964
 #, c-format
 msgid "text search dictionary %s"
 msgstr "dicionário de busca textual %s"
 
-#: catalog/objectaddress.c:1956
+#: catalog/objectaddress.c:1979
 #, c-format
 msgid "text search template %s"
 msgstr "modelo de busca textual %s"
 
-#: catalog/objectaddress.c:1971
+#: catalog/objectaddress.c:1994
 #, c-format
 msgid "text search configuration %s"
 msgstr "configuração de busca textual %s"
 
-#: catalog/objectaddress.c:1979
+#: catalog/objectaddress.c:2002
 #, c-format
 msgid "role %s"
 msgstr "role %s"
 
-#: catalog/objectaddress.c:1992
+#: catalog/objectaddress.c:2015
 #, c-format
 msgid "database %s"
 msgstr "banco de dados %s"
 
-#: catalog/objectaddress.c:2004
+#: catalog/objectaddress.c:2027
 #, c-format
 msgid "tablespace %s"
 msgstr "tablespace %s"
 
-#: catalog/objectaddress.c:2013
+#: catalog/objectaddress.c:2036
 #, c-format
 msgid "foreign-data wrapper %s"
 msgstr "adaptador de dados externos %s"
 
-#: catalog/objectaddress.c:2022
+#: catalog/objectaddress.c:2045
 #, c-format
 msgid "server %s"
 msgstr "servidor %s"
 
-#: catalog/objectaddress.c:2047
+#: catalog/objectaddress.c:2070
 #, c-format
 msgid "user mapping for %s"
 msgstr "mapeamento de usuários para %s"
 
-#: catalog/objectaddress.c:2081
+#: catalog/objectaddress.c:2104
 #, c-format
 msgid "default privileges on new relations belonging to role %s"
 msgstr "privilégios padrão em novas relações pertencem a role %s"
 
-#: catalog/objectaddress.c:2086
+#: catalog/objectaddress.c:2109
 #, c-format
 msgid "default privileges on new sequences belonging to role %s"
 msgstr "privilégios padrão em novas sequências pertencem a role %s"
 
-#: catalog/objectaddress.c:2091
+#: catalog/objectaddress.c:2114
 #, c-format
 msgid "default privileges on new functions belonging to role %s"
 msgstr "privilégios padrão em novas funções pertencem a role %s"
 
-#: catalog/objectaddress.c:2096
+#: catalog/objectaddress.c:2119
 #, c-format
 msgid "default privileges on new types belonging to role %s"
 msgstr "privilégios padrão em novos tipos pertencem a role %s"
 
-#: catalog/objectaddress.c:2102
+#: catalog/objectaddress.c:2125
 #, c-format
 msgid "default privileges belonging to role %s"
 msgstr "privilégios padrão pertencem a role %s"
 
-#: catalog/objectaddress.c:2110
+#: catalog/objectaddress.c:2133
 #, c-format
 msgid " in schema %s"
 msgstr " no esquema %s"
 
-#: catalog/objectaddress.c:2127
+#: catalog/objectaddress.c:2150
 #, c-format
 msgid "extension %s"
 msgstr "extensão %s"
 
-#: catalog/objectaddress.c:2140
+#: catalog/objectaddress.c:2163
 #, c-format
 msgid "event trigger %s"
 msgstr "gatilho de eventos %s"
 
-#: catalog/objectaddress.c:2200
+#: catalog/objectaddress.c:2223
 #, c-format
 msgid "table %s"
 msgstr "tabela %s"
 
-#: catalog/objectaddress.c:2204
+#: catalog/objectaddress.c:2227
 #, c-format
 msgid "index %s"
 msgstr "índice %s"
 
-#: catalog/objectaddress.c:2208
+#: catalog/objectaddress.c:2231
 #, c-format
 msgid "sequence %s"
 msgstr "sequência %s"
 
-#: catalog/objectaddress.c:2212
+#: catalog/objectaddress.c:2235
 #, c-format
 msgid "toast table %s"
 msgstr "tabela toast %s"
 
-#: catalog/objectaddress.c:2216
+#: catalog/objectaddress.c:2239
 #, c-format
 msgid "view %s"
 msgstr "visão %s"
 
-#: catalog/objectaddress.c:2220
+#: catalog/objectaddress.c:2243
 #, c-format
 msgid "materialized view %s"
 msgstr "visão materializada %s"
 
-#: catalog/objectaddress.c:2224
+#: catalog/objectaddress.c:2247
 #, c-format
 msgid "composite type %s"
 msgstr "tipo composto %s"
 
-#: catalog/objectaddress.c:2228
+#: catalog/objectaddress.c:2251
 #, c-format
 msgid "foreign table %s"
 msgstr "tabela externa %s"
 
-#: catalog/objectaddress.c:2233
+#: catalog/objectaddress.c:2256
 #, c-format
 msgid "relation %s"
 msgstr "relação %s"
 
-#: catalog/objectaddress.c:2270
+#: catalog/objectaddress.c:2293
 #, c-format
 msgid "operator family %s for access method %s"
 msgstr "família de operadores %s para método de acesso %s"
 
-#: catalog/pg_aggregate.c:102
+#: catalog/pg_aggregate.c:118
+#, c-format
+msgid "aggregates cannot have more than %d argument"
+msgid_plural "aggregates cannot have more than %d arguments"
+msgstr[0] "agregações não podem ter mais do que %d argumento"
+msgstr[1] "agregações não podem ter mais do que %d argumentos"
+
+#: catalog/pg_aggregate.c:141 catalog/pg_aggregate.c:151
 #, c-format
 msgid "cannot determine transition data type"
 msgstr "não pode determinar tipo de dado transitório"
 
-#: catalog/pg_aggregate.c:103
+#: catalog/pg_aggregate.c:142 catalog/pg_aggregate.c:152
 #, c-format
 msgid "An aggregate using a polymorphic transition type must have at least one polymorphic argument."
 msgstr "Uma agregação utilizando um tipo transitório polimórfico deve ter pelo menos um argumento polimórfico."
 
-#: catalog/pg_aggregate.c:126
+#: catalog/pg_aggregate.c:165
+#, c-format
+msgid "a variadic ordered-set aggregate must use VARIADIC type ANY"
+msgstr ""
+
+#: catalog/pg_aggregate.c:191
+#, c-format
+msgid "a hypothetical-set aggregate must have direct arguments matching its aggregated arguments"
+msgstr ""
+
+#: catalog/pg_aggregate.c:238 catalog/pg_aggregate.c:282
 #, c-format
 msgid "return type of transition function %s is not %s"
 msgstr "tipo retornado da função de transição %s não é %s"
 
-#: catalog/pg_aggregate.c:146
+#: catalog/pg_aggregate.c:258 catalog/pg_aggregate.c:301
 #, c-format
 msgid "must not omit initial value when transition function is strict and transition type is not compatible with input type"
 msgstr "não deve omitir valor inicial quando a função de transição é estrita e o tipo de transição não é compatível com tipo de entrada"
 
-#: catalog/pg_aggregate.c:177 catalog/pg_proc.c:241 catalog/pg_proc.c:248
+#: catalog/pg_aggregate.c:327
+#, fuzzy, c-format
+msgid "return type of inverse transition function %s is not %s"
+msgstr "tipo retornado da função de transição inversa %s não é %s"
+
+#: catalog/pg_aggregate.c:344 executor/nodeWindowAgg.c:2301
+#, c-format
+msgid "strictness of aggregate's forward and inverse transition functions must match"
+msgstr ""
+
+#: catalog/pg_aggregate.c:388 catalog/pg_aggregate.c:464
+#, c-format
+msgid "final function with extra arguments must not be declared STRICT"
+msgstr "função final com argumentos extras não deve ser declarada STRICT"
+
+#: catalog/pg_aggregate.c:410 catalog/pg_proc.c:241 catalog/pg_proc.c:248
 #, c-format
 msgid "cannot determine result data type"
 msgstr "não pode determinar tipo de dado do resultado"
 
-#: catalog/pg_aggregate.c:178
+#: catalog/pg_aggregate.c:411
 #, c-format
 msgid "An aggregate returning a polymorphic type must have at least one polymorphic argument."
 msgstr "Uma agregação retornando um tipo polimórfico deve ter pelo menos um argumento polimórfico."
 
-#: catalog/pg_aggregate.c:190 catalog/pg_proc.c:254
+#: catalog/pg_aggregate.c:423 catalog/pg_proc.c:254
 #, c-format
 msgid "unsafe use of pseudo-type \"internal\""
 msgstr "uso inseguro do pseudo-tipo \"internal\""
 
-#: catalog/pg_aggregate.c:191 catalog/pg_proc.c:255
+#: catalog/pg_aggregate.c:424 catalog/pg_proc.c:255
 #, c-format
 msgid "A function returning \"internal\" must have at least one \"internal\" argument."
 msgstr "Uma função retornando \"internal\" deve ter pelo menos um argumento \"internal\"."
 
-#: catalog/pg_aggregate.c:199
+#: catalog/pg_aggregate.c:477
+#, c-format
+msgid "moving-aggregate implementation returns type %s, but plain implementation returns type %s"
+msgstr ""
+
+#: catalog/pg_aggregate.c:488
 #, c-format
 msgid "sort operator can only be specified for single-argument aggregates"
 msgstr "operador de ordenação só pode ser especificado por agregações de argumento único"
 
-#: catalog/pg_aggregate.c:356 commands/typecmds.c:1655
-#: commands/typecmds.c:1706 commands/typecmds.c:1737 commands/typecmds.c:1760
-#: commands/typecmds.c:1781 commands/typecmds.c:1808 commands/typecmds.c:1835
-#: commands/typecmds.c:1912 commands/typecmds.c:1954 parser/parse_func.c:290
-#: parser/parse_func.c:301 parser/parse_func.c:1554
+#: catalog/pg_aggregate.c:701 commands/typecmds.c:1657
+#: commands/typecmds.c:1708 commands/typecmds.c:1739 commands/typecmds.c:1762
+#: commands/typecmds.c:1783 commands/typecmds.c:1810 commands/typecmds.c:1837
+#: commands/typecmds.c:1914 commands/typecmds.c:1956 parser/parse_func.c:357
+#: parser/parse_func.c:386 parser/parse_func.c:411 parser/parse_func.c:425
+#: parser/parse_func.c:500 parser/parse_func.c:511 parser/parse_func.c:1907
 #, c-format
 msgid "function %s does not exist"
 msgstr "função %s não existe"
 
-#: catalog/pg_aggregate.c:362
+#: catalog/pg_aggregate.c:707
 #, c-format
 msgid "function %s returns a set"
 msgstr "função %s retorna um conjunto"
 
-#: catalog/pg_aggregate.c:387
+#: catalog/pg_aggregate.c:722
+#, c-format
+msgid "function %s must accept VARIADIC ANY to be used in this aggregate"
+msgstr ""
+
+#: catalog/pg_aggregate.c:746
 #, c-format
 msgid "function %s requires run-time type coercion"
 msgstr "função %s requer conversão de tipo em tempo de execução"
@@ -3461,7 +3609,7 @@ msgstr "conversão \"%s\" já existe"
 msgid "default conversion for %s to %s already exists"
 msgstr "conversão padrão de %s para %s já existe"
 
-#: catalog/pg_depend.c:165 commands/extension.c:2930
+#: catalog/pg_depend.c:165 commands/extension.c:2926
 #, c-format
 msgid "%s is already a member of extension \"%s\""
 msgstr "role \"%s\" já é um membro da extensão \"%s\""
@@ -3471,32 +3619,32 @@ msgstr "role \"%s\" já é um membro da extensão \"%s\""
 msgid "cannot remove dependency on %s because it is a system object"
 msgstr "não pode remover dependência em %s porque ele é um objeto do sistema"
 
-#: catalog/pg_enum.c:114 catalog/pg_enum.c:201
+#: catalog/pg_enum.c:115 catalog/pg_enum.c:202
 #, c-format
 msgid "invalid enum label \"%s\""
 msgstr "rótulo do enum \"%s\" é inválido"
 
-#: catalog/pg_enum.c:115 catalog/pg_enum.c:202
+#: catalog/pg_enum.c:116 catalog/pg_enum.c:203
 #, c-format
 msgid "Labels must be %d characters or less."
 msgstr "Rótulos devem conter %d caracteres ou menos."
 
-#: catalog/pg_enum.c:230
+#: catalog/pg_enum.c:231
 #, c-format
 msgid "enum label \"%s\" already exists, skipping"
 msgstr "rótulo do enum \"%s\" já existe, ignorando"
 
-#: catalog/pg_enum.c:237
+#: catalog/pg_enum.c:238
 #, c-format
 msgid "enum label \"%s\" already exists"
 msgstr "rótulo do enum \"%s\" já existe"
 
-#: catalog/pg_enum.c:292
+#: catalog/pg_enum.c:293
 #, c-format
 msgid "\"%s\" is not an existing enum label"
 msgstr "\"%s\" não é um rótulo do enum existente"
 
-#: catalog/pg_enum.c:353
+#: catalog/pg_enum.c:354
 #, c-format
 msgid "ALTER TYPE ADD BEFORE/AFTER is incompatible with binary upgrade"
 msgstr "ALTER TYPE ADD BEFORE/AFTER é incompatível com atualização binária"
@@ -3566,7 +3714,7 @@ msgstr "operador %s já existe"
 msgid "operator cannot be its own negator or sort operator"
 msgstr "operador não pode ser seu próprio operador de negação ou de ordenação"
 
-#: catalog/pg_proc.c:129 parser/parse_func.c:1599 parser/parse_func.c:1639
+#: catalog/pg_proc.c:129 parser/parse_func.c:1931 parser/parse_func.c:1971
 #, c-format
 msgid "functions cannot have more than %d argument"
 msgid_plural "functions cannot have more than %d arguments"
@@ -3659,12 +3807,12 @@ msgstr "funções SQL não podem retornar tipo %s"
 msgid "SQL functions cannot have arguments of type %s"
 msgstr "funções SQL não podem ter argumentos do tipo %s"
 
-#: catalog/pg_proc.c:945 executor/functions.c:1419
+#: catalog/pg_proc.c:945 executor/functions.c:1418
 #, c-format
 msgid "SQL function \"%s\""
 msgstr "função SQL \"%s\""
 
-#: catalog/pg_shdepend.c:689
+#: catalog/pg_shdepend.c:691
 #, c-format
 msgid ""
 "\n"
@@ -3679,117 +3827,164 @@ msgstr[1] ""
 "\n"
 "e objetos em %d outros bancos de dados (veja lista no log do servidor)"
 
-#: catalog/pg_shdepend.c:1001
+#: catalog/pg_shdepend.c:1003
 #, c-format
 msgid "role %u was concurrently dropped"
 msgstr "role %u foi removida simultaneamente"
 
-#: catalog/pg_shdepend.c:1020
+#: catalog/pg_shdepend.c:1022
 #, c-format
 msgid "tablespace %u was concurrently dropped"
 msgstr "tablespace %u foi removida simultaneamente"
 
-#: catalog/pg_shdepend.c:1035
+#: catalog/pg_shdepend.c:1037
 #, c-format
 msgid "database %u was concurrently dropped"
 msgstr "banco de dados %u foi removido simultaneamente"
 
-#: catalog/pg_shdepend.c:1079
+#: catalog/pg_shdepend.c:1081
 #, c-format
 msgid "owner of %s"
 msgstr "dono de %s"
 
-#: catalog/pg_shdepend.c:1081
+#: catalog/pg_shdepend.c:1083
 #, c-format
 msgid "privileges for %s"
 msgstr "privilégios para %s"
 
 #. translator: %s will always be "database %s"
-#: catalog/pg_shdepend.c:1089
+#: catalog/pg_shdepend.c:1091
 #, c-format
 msgid "%d object in %s"
 msgid_plural "%d objects in %s"
 msgstr[0] "%d objeto no %s"
 msgstr[1] "%d objetos no %s"
 
-#: catalog/pg_shdepend.c:1200
+#: catalog/pg_shdepend.c:1202
 #, c-format
 msgid "cannot drop objects owned by %s because they are required by the database system"
 msgstr "não pode remover objetos que pertencem a %s porque eles são requeridos pelo sistema de banco de dados"
 
-#: catalog/pg_shdepend.c:1303
+#: catalog/pg_shdepend.c:1305
 #, c-format
 msgid "cannot reassign ownership of objects owned by %s because they are required by the database system"
 msgstr "não pode transferir objetos que pertencem a %s porque eles são requeridos pelo sistema de banco de dados"
 
-#: catalog/pg_type.c:243
+#: catalog/pg_type.c:244
 #, c-format
 msgid "invalid type internal size %d"
 msgstr "tamanho interno de tipo %d é inválido"
 
-#: catalog/pg_type.c:259 catalog/pg_type.c:267 catalog/pg_type.c:275
-#: catalog/pg_type.c:284
+#: catalog/pg_type.c:260 catalog/pg_type.c:268 catalog/pg_type.c:276
+#: catalog/pg_type.c:285
 #, c-format
 msgid "alignment \"%c\" is invalid for passed-by-value type of size %d"
 msgstr "alinhamento \"%c\" é inválido para tipo passado por valor de tamanho %d"
 
-#: catalog/pg_type.c:291
+#: catalog/pg_type.c:292
 #, c-format
 msgid "internal size %d is invalid for passed-by-value type"
 msgstr "tamanho interno %d é inválido para tipo passado por valor"
 
-#: catalog/pg_type.c:300 catalog/pg_type.c:306
+#: catalog/pg_type.c:301 catalog/pg_type.c:307
 #, c-format
 msgid "alignment \"%c\" is invalid for variable-length type"
 msgstr "alinhamento \"%c\" é inválido para tipo de tamanho variável"
 
-#: catalog/pg_type.c:314
+#: catalog/pg_type.c:315
 #, c-format
 msgid "fixed-size types must have storage PLAIN"
 msgstr "tipos de tamanho fixo devem ter armazenamento PLAIN"
 
-#: catalog/pg_type.c:772
+#: catalog/pg_type.c:773
 #, c-format
 msgid "could not form array type name for type \"%s\""
 msgstr "não pôde construir nome de tipo array para tipo \"%s\""
 
-#: catalog/toasting.c:91 commands/indexcmds.c:381 commands/tablecmds.c:4026
-#: commands/tablecmds.c:10450
+#: catalog/toasting.c:104 commands/indexcmds.c:380 commands/tablecmds.c:4139
+#: commands/tablecmds.c:11137
 #, c-format
 msgid "\"%s\" is not a table or materialized view"
 msgstr "\"%s\" não é uma tabela ou visão materializada"
 
-#: catalog/toasting.c:142
+#: catalog/toasting.c:157
 #, c-format
 msgid "shared tables cannot be toasted after initdb"
 msgstr "tabelas compartilhadas não podem ser fatiadas após o initdb"
 
-#: commands/aggregatecmds.c:106
+#: commands/aggregatecmds.c:148
+#, c-format
+msgid "only ordered-set aggregates can be hypothetical"
+msgstr ""
+
+#: commands/aggregatecmds.c:171
 #, c-format
 msgid "aggregate attribute \"%s\" not recognized"
 msgstr "atributo da agregação \"%s\" desconhecido"
 
-#: commands/aggregatecmds.c:116
+#: commands/aggregatecmds.c:181
 #, c-format
 msgid "aggregate stype must be specified"
 msgstr "tipo de transição (stype) da agregação deve ser especificado"
 
-#: commands/aggregatecmds.c:120
+#: commands/aggregatecmds.c:185
 #, c-format
 msgid "aggregate sfunc must be specified"
 msgstr "função de transição (sfunc) da agregação deve ser especificado"
 
-#: commands/aggregatecmds.c:137
+#: commands/aggregatecmds.c:197
+#, fuzzy, c-format
+#| msgid "aggregate sfunc must be specified"
+msgid "aggregate msfunc must be specified when mstype is specified"
+msgstr "função de transição (sfunc) da agregação deve ser especificado"
+
+#: commands/aggregatecmds.c:201
+#, fuzzy, c-format
+#| msgid "aggregate sfunc must be specified"
+msgid "aggregate minvfunc must be specified when mstype is specified"
+msgstr "função de transição (sfunc) da agregação deve ser especificado"
+
+#: commands/aggregatecmds.c:208
+#, fuzzy, c-format
+#| msgid "aggregate sfunc must be specified"
+msgid "aggregate msfunc must not be specified without mstype"
+msgstr "função de transição (sfunc) da agregação deve ser especificado"
+
+#: commands/aggregatecmds.c:212
+#, fuzzy, c-format
+#| msgid "aggregate sfunc must be specified"
+msgid "aggregate minvfunc must not be specified without mstype"
+msgstr "função de transição (sfunc) da agregação deve ser especificado"
+
+#: commands/aggregatecmds.c:216
+#, fuzzy, c-format
+#| msgid "aggregate sfunc must be specified"
+msgid "aggregate mfinalfunc must not be specified without mstype"
+msgstr "função de transição (sfunc) da agregação deve ser especificado"
+
+#: commands/aggregatecmds.c:220
+#, fuzzy, c-format
+#| msgid "aggregate stype must be specified"
+msgid "aggregate msspace must not be specified without mstype"
+msgstr "tipo de transição (stype) da agregação deve ser especificado"
+
+#: commands/aggregatecmds.c:224
+#, fuzzy, c-format
+#| msgid "aggregate sfunc must be specified"
+msgid "aggregate minitcond must not be specified without mstype"
+msgstr "função de transição (sfunc) da agregação deve ser especificado"
+
+#: commands/aggregatecmds.c:244
 #, c-format
 msgid "aggregate input type must be specified"
 msgstr "tipo de entrada da agregação deve ser especificado"
 
-#: commands/aggregatecmds.c:162
+#: commands/aggregatecmds.c:274
 #, c-format
 msgid "basetype is redundant with aggregate input type specification"
 msgstr "tipo base é redundante com especificação de tipo de entrada da agregação"
 
-#: commands/aggregatecmds.c:195
+#: commands/aggregatecmds.c:315 commands/aggregatecmds.c:335
 #, c-format
 msgid "aggregate transition data type cannot be %s"
 msgstr "tipo de dado de transição da agregação não pode ser %s"
@@ -3849,166 +4044,166 @@ msgstr "deve ser super-usuário para renomear %s"
 msgid "must be superuser to set schema of %s"
 msgstr "deve ser super-usuário para definir esquema de %s"
 
-#: commands/analyze.c:155
+#: commands/analyze.c:156
 #, c-format
 msgid "skipping analyze of \"%s\" --- lock not available"
 msgstr "ignorando análise de \"%s\" --- bloqueio não está disponível"
 
-#: commands/analyze.c:172
+#: commands/analyze.c:173
 #, c-format
 msgid "skipping \"%s\" --- only superuser can analyze it"
 msgstr "ignorando \"%s\" --- somente super-usuário pode analisá-la(o)"
 
-#: commands/analyze.c:176
+#: commands/analyze.c:177
 #, c-format
 msgid "skipping \"%s\" --- only superuser or database owner can analyze it"
 msgstr "ignorando \"%s\" --- somente super-usuário ou dono de banco de dados pode analisá-la(o)"
 
-#: commands/analyze.c:180
+#: commands/analyze.c:181
 #, c-format
 msgid "skipping \"%s\" --- only table or database owner can analyze it"
 msgstr "ignorando \"%s\" --- somente dono de tabela ou de banco de dados pode analisá-la(o)"
 
-#: commands/analyze.c:240
+#: commands/analyze.c:241
 #, c-format
 msgid "skipping \"%s\" --- cannot analyze this foreign table"
 msgstr "ignorando \"%s\" --- não pode analisar esta tabela externa"
 
-#: commands/analyze.c:251
+#: commands/analyze.c:252
 #, c-format
 msgid "skipping \"%s\" --- cannot analyze non-tables or special system tables"
 msgstr "ignorando \"%s\" --- não pode analisar relações que não são tabelas ou tabelas especiais do sistema"
 
-#: commands/analyze.c:328
+#: commands/analyze.c:329
 #, c-format
 msgid "analyzing \"%s.%s\" inheritance tree"
 msgstr "analisando árvore da herança de \"%s.%s\""
 
-#: commands/analyze.c:333
+#: commands/analyze.c:334
 #, c-format
 msgid "analyzing \"%s.%s\""
 msgstr "analisando \"%s.%s\""
 
-#: commands/analyze.c:651
+#: commands/analyze.c:652
 #, c-format
 msgid "automatic analyze of table \"%s.%s.%s\" system usage: %s"
 msgstr "análise automática da tabela \"%s.%s.%s\" uso do sistema: %s"
 
-#: commands/analyze.c:1293
+#: commands/analyze.c:1295
 #, c-format
 msgid "\"%s\": scanned %d of %u pages, containing %.0f live rows and %.0f dead rows; %d rows in sample, %.0f estimated total rows"
 msgstr "\"%s\": processados %d de %u páginas, contendo %.0f registros vigentes e %.0f registros não vigentes; %d registros amostrados, %.0f registros totais estimados"
 
-#: commands/analyze.c:1557 executor/execQual.c:2869
+#: commands/analyze.c:1559 executor/execQual.c:2867
 msgid "could not convert row type"
 msgstr "não pôde converter tipo registro"
 
-#: commands/async.c:546
+#: commands/async.c:545
 #, c-format
 msgid "channel name cannot be empty"
 msgstr "nome do canal não pode ser vazio"
 
-#: commands/async.c:551
+#: commands/async.c:550
 #, c-format
 msgid "channel name too long"
 msgstr "nome do canal é muito longo"
 
-#: commands/async.c:558
+#: commands/async.c:557
 #, c-format
 msgid "payload string too long"
 msgstr "cadeia da carga é muito longa"
 
-#: commands/async.c:743
+#: commands/async.c:742
 #, c-format
 msgid "cannot PREPARE a transaction that has executed LISTEN, UNLISTEN, or NOTIFY"
 msgstr "não pode executar PREPARE em uma transação que executou LISTEN, UNLISTEN ou NOTIFY"
 
-#: commands/async.c:846
+#: commands/async.c:845
 #, c-format
 msgid "too many notifications in the NOTIFY queue"
 msgstr "muitas notificações na fila do NOTIFY"
 
-#: commands/async.c:1419
+#: commands/async.c:1418
 #, c-format
 msgid "NOTIFY queue is %.0f%% full"
 msgstr "fila do NOTIFY está %.0f%% cheia"
 
-#: commands/async.c:1421
+#: commands/async.c:1420
 #, c-format
 msgid "The server process with PID %d is among those with the oldest transactions."
 msgstr "O processo servidor com PID %d está entre aqueles com transações mais antigas."
 
-#: commands/async.c:1424
+#: commands/async.c:1423
 #, c-format
 msgid "The NOTIFY queue cannot be emptied until that process ends its current transaction."
 msgstr "A fila do NOTIFY não pode ser esvaziada até que o processo termine a transação atual."
 
-#: commands/cluster.c:131 commands/cluster.c:374
+#: commands/cluster.c:126 commands/cluster.c:363
 #, c-format
 msgid "cannot cluster temporary tables of other sessions"
 msgstr "não pode agrupar tabelas temporárias de outras sessões"
 
-#: commands/cluster.c:161
+#: commands/cluster.c:156
 #, c-format
 msgid "there is no previously clustered index for table \"%s\""
 msgstr "não há nenhum índice previamente agrupado na tabela \"%s\""
 
-#: commands/cluster.c:175 commands/tablecmds.c:8539
+#: commands/cluster.c:170 commands/tablecmds.c:8795 commands/tablecmds.c:10461
 #, c-format
 msgid "index \"%s\" for table \"%s\" does not exist"
 msgstr "índice \"%s\" na tabela \"%s\" não existe"
 
-#: commands/cluster.c:363
+#: commands/cluster.c:352
 #, c-format
 msgid "cannot cluster a shared catalog"
 msgstr "não pode agrupar um catálogo compartilhado"
 
-#: commands/cluster.c:378
+#: commands/cluster.c:367
 #, c-format
 msgid "cannot vacuum temporary tables of other sessions"
 msgstr "não pode limpar tabelas temporárias de outras sessões"
 
-#: commands/cluster.c:443
+#: commands/cluster.c:430 commands/tablecmds.c:10471
 #, c-format
 msgid "\"%s\" is not an index for table \"%s\""
 msgstr "\"%s\" não é um índice na tabela \"%s\""
 
-#: commands/cluster.c:451
+#: commands/cluster.c:438
 #, c-format
 msgid "cannot cluster on index \"%s\" because access method does not support clustering"
 msgstr "não pode agrupar índice \"%s\" porque o método de acesso não suporta agrupamento"
 
-#: commands/cluster.c:463
+#: commands/cluster.c:450
 #, c-format
 msgid "cannot cluster on partial index \"%s\""
 msgstr "não pode agrupar índice parcial \"%s\""
 
-#: commands/cluster.c:477
+#: commands/cluster.c:464
 #, c-format
 msgid "cannot cluster on invalid index \"%s\""
 msgstr "não pode agrupar por índice inválido \"%s\""
 
-#: commands/cluster.c:926
+#: commands/cluster.c:920
 #, c-format
 msgid "clustering \"%s.%s\" using index scan on \"%s\""
 msgstr "agrupando \"%s.%s\" utilizando busca por índice em \"%s\""
 
-#: commands/cluster.c:932
+#: commands/cluster.c:926
 #, c-format
 msgid "clustering \"%s.%s\" using sequential scan and sort"
 msgstr "agrupando \"%s.%s\" utilizando busca sequencial e ordenação"
 
-#: commands/cluster.c:937 commands/vacuumlazy.c:435
+#: commands/cluster.c:931 commands/vacuumlazy.c:444
 #, c-format
 msgid "vacuuming \"%s.%s\""
 msgstr "limpando \"%s.%s\""
 
-#: commands/cluster.c:1096
+#: commands/cluster.c:1090
 #, c-format
 msgid "\"%s\": found %.0f removable, %.0f nonremovable row versions in %u pages"
 msgstr "\"%s\": encontrados %.0f versões de registros removíveis e %.0f não-removíveis em %u páginas"
 
-#: commands/cluster.c:1100
+#: commands/cluster.c:1094
 #, c-format
 msgid ""
 "%.0f dead row versions cannot be removed yet.\n"
@@ -4042,16 +4237,16 @@ msgstr "ordenação \"%s\" para codificação \"%s\" já existe no esquema \"%s\
 msgid "collation \"%s\" already exists in schema \"%s\""
 msgstr "ordenação \"%s\" já existe no esquema \"%s\""
 
-#: commands/comment.c:62 commands/dbcommands.c:797 commands/dbcommands.c:946
-#: commands/dbcommands.c:1049 commands/dbcommands.c:1222
-#: commands/dbcommands.c:1411 commands/dbcommands.c:1506
-#: commands/dbcommands.c:1946 utils/init/postinit.c:775
-#: utils/init/postinit.c:843 utils/init/postinit.c:860
+#: commands/comment.c:62 commands/dbcommands.c:773 commands/dbcommands.c:937
+#: commands/dbcommands.c:1040 commands/dbcommands.c:1213
+#: commands/dbcommands.c:1402 commands/dbcommands.c:1497
+#: commands/dbcommands.c:1914 utils/init/postinit.c:794
+#: utils/init/postinit.c:862 utils/init/postinit.c:879
 #, c-format
 msgid "database \"%s\" does not exist"
 msgstr "banco de dados \"%s\" não existe"
 
-#: commands/comment.c:101 commands/seclabel.c:114 parser/parse_utilcmd.c:693
+#: commands/comment.c:101 commands/seclabel.c:114 parser/parse_utilcmd.c:686
 #, c-format
 msgid "\"%s\" is not a table, view, materialized view, composite type, or foreign table"
 msgstr "\"%s\" não é uma tabela, visão, visão materializada, tipo composto ou tabela externa"
@@ -4086,467 +4281,483 @@ msgstr "codificação de destino \"%s\" não existe"
 msgid "encoding conversion function %s must return type \"void\""
 msgstr "função de conversão de codificação %s deve retornar tipo \"void\""
 
-#: commands/copy.c:358 commands/copy.c:370 commands/copy.c:404
-#: commands/copy.c:414
+#: commands/copy.c:360 commands/copy.c:372 commands/copy.c:406
+#: commands/copy.c:416
 #, c-format
 msgid "COPY BINARY is not supported to stdout or from stdin"
 msgstr "COPY BINARY não é suportado para saída stdout ou da entrada padrão"
 
-#: commands/copy.c:512
+#: commands/copy.c:514
 #, c-format
 msgid "could not write to COPY program: %m"
 msgstr "não pôde escrever em programa COPY: %m"
 
-#: commands/copy.c:517
+#: commands/copy.c:519
 #, c-format
 msgid "could not write to COPY file: %m"
 msgstr "não pôde escrever em arquivo COPY: %m"
 
-#: commands/copy.c:530
+#: commands/copy.c:532
 #, c-format
 msgid "connection lost during COPY to stdout"
 msgstr "conexão perdida durante COPY para saída stdout"
 
-#: commands/copy.c:571
+#: commands/copy.c:573
 #, c-format
 msgid "could not read from COPY file: %m"
 msgstr "não pôde ler de arquivo COPY: %m"
 
-#: commands/copy.c:587 commands/copy.c:606 commands/copy.c:610
-#: tcop/fastpath.c:293 tcop/postgres.c:351 tcop/postgres.c:387
+#: commands/copy.c:589 commands/copy.c:608 commands/copy.c:612
+#: tcop/fastpath.c:293 tcop/postgres.c:342 tcop/postgres.c:378
 #, c-format
 msgid "unexpected EOF on client connection with an open transaction"
 msgstr "EOF inesperado durante conexão do cliente com uma transação aberta"
 
-#: commands/copy.c:622
+#: commands/copy.c:624
 #, c-format
 msgid "COPY from stdin failed: %s"
 msgstr "COPY da entrada padrão falhou: %s"
 
-#: commands/copy.c:638
+#: commands/copy.c:640
 #, c-format
 msgid "unexpected message type 0x%02X during COPY from stdin"
 msgstr "tipo de mensagem inesperada 0x%02X durante COPY da entrada padrão"
 
-#: commands/copy.c:792
+#: commands/copy.c:794
 #, c-format
 msgid "must be superuser to COPY to or from an external program"
 msgstr "deve ser super-usuário para utilizar COPY para ou de um programa externo"
 
-#: commands/copy.c:793 commands/copy.c:799
+#: commands/copy.c:795 commands/copy.c:801
 #, c-format
 msgid "Anyone can COPY to stdout or from stdin. psql's \\copy command also works for anyone."
 msgstr "Qualquer um pode utilizar COPY para saída stdout ou da entrada padrão. comando \\copy do psql também funciona para qualquer um."
 
-#: commands/copy.c:798
+#: commands/copy.c:800
 #, c-format
 msgid "must be superuser to COPY to or from a file"
 msgstr "deve ser super-usuário para utilizar COPY para ou de um arquivo"
 
-#: commands/copy.c:934
+#: commands/copy.c:936
 #, c-format
 msgid "COPY format \"%s\" not recognized"
 msgstr "formato COPY \"%s\" desconhecido"
 
-#: commands/copy.c:1005 commands/copy.c:1019 commands/copy.c:1039
+#: commands/copy.c:1007 commands/copy.c:1021 commands/copy.c:1035
+#: commands/copy.c:1055
 #, c-format
 msgid "argument to option \"%s\" must be a list of column names"
 msgstr "argumento para opção \"%s\" deve ser uma lista de nomes de colunas"
 
-#: commands/copy.c:1052
+#: commands/copy.c:1068
 #, c-format
 msgid "argument to option \"%s\" must be a valid encoding name"
 msgstr "argumento para opção \"%s\" deve ser um nome de codificação válido"
 
-#: commands/copy.c:1058
+#: commands/copy.c:1074
 #, c-format
 msgid "option \"%s\" not recognized"
 msgstr "opção \"%s\" desconhecida"
 
-#: commands/copy.c:1069
+#: commands/copy.c:1085
 #, c-format
 msgid "cannot specify DELIMITER in BINARY mode"
 msgstr "não pode especificar DELIMITER no modo BINARY"
 
-#: commands/copy.c:1074
+#: commands/copy.c:1090
 #, c-format
 msgid "cannot specify NULL in BINARY mode"
 msgstr "não pode especificar NULL no modo BINARY"
 
-#: commands/copy.c:1096
+#: commands/copy.c:1112
 #, c-format
 msgid "COPY delimiter must be a single one-byte character"
 msgstr "delimitador do COPY deve ter um único caracter de um byte"
 
-#: commands/copy.c:1103
+#: commands/copy.c:1119
 #, c-format
 msgid "COPY delimiter cannot be newline or carriage return"
 msgstr "delimitador do COPY não pode ser nova linha ou retorno de carro"
 
-#: commands/copy.c:1109
+#: commands/copy.c:1125
 #, c-format
 msgid "COPY null representation cannot use newline or carriage return"
 msgstr "representação do nulo do COPY não pode ser nova linha ou retorno de carro"
 
-#: commands/copy.c:1126
+#: commands/copy.c:1142
 #, c-format
 msgid "COPY delimiter cannot be \"%s\""
 msgstr "delimitador do COPY não pode ser \"%s\""
 
-#: commands/copy.c:1132
+#: commands/copy.c:1148
 #, c-format
 msgid "COPY HEADER available only in CSV mode"
 msgstr "COPY HEADER só está disponível no modo CSV"
 
-#: commands/copy.c:1138
+#: commands/copy.c:1154
 #, c-format
 msgid "COPY quote available only in CSV mode"
 msgstr "delimitador de dados do COPY só está disponível no modo CSV"
 
-#: commands/copy.c:1143
+#: commands/copy.c:1159
 #, c-format
 msgid "COPY quote must be a single one-byte character"
 msgstr "delimitador de dados do COPY deve ter um único caracter de um byte"
 
-#: commands/copy.c:1148
+#: commands/copy.c:1164
 #, c-format
 msgid "COPY delimiter and quote must be different"
 msgstr "delimitador e delimitador de dados do COPY devem ser diferentes"
 
-#: commands/copy.c:1154
+#: commands/copy.c:1170
 #, c-format
 msgid "COPY escape available only in CSV mode"
 msgstr "escape do COPY só está disponível no modo CSV"
 
-#: commands/copy.c:1159
+#: commands/copy.c:1175
 #, c-format
 msgid "COPY escape must be a single one-byte character"
 msgstr "escape do COPY deve ter um único caracter de um byte"
 
-#: commands/copy.c:1165
+#: commands/copy.c:1181
 #, c-format
 msgid "COPY force quote available only in CSV mode"
 msgstr "opção force quote do COPY somente está disponível no modo CSV"
 
-#: commands/copy.c:1169
+#: commands/copy.c:1185
 #, c-format
 msgid "COPY force quote only available using COPY TO"
 msgstr "opção force quote do COPY somente está disponível ao utilizar COPY TO"
 
-#: commands/copy.c:1175
+#: commands/copy.c:1191
 #, c-format
 msgid "COPY force not null available only in CSV mode"
 msgstr "opção force not null do COPY somente está disponível no modo CSV"
 
-#: commands/copy.c:1179
+#: commands/copy.c:1195
 #, c-format
 msgid "COPY force not null only available using COPY FROM"
 msgstr "opção force not null do COPY somente está disponível ao utilizar COPY FROM"
 
-#: commands/copy.c:1185
+#: commands/copy.c:1201
+#, c-format
+msgid "COPY force null available only in CSV mode"
+msgstr "opção force null do COPY somente está disponível no modo CSV"
+
+#: commands/copy.c:1206
+#, c-format
+msgid "COPY force null only available using COPY FROM"
+msgstr "opção force null do COPY somente está disponível ao utilizar COPY FROM"
+
+#: commands/copy.c:1212
 #, c-format
 msgid "COPY delimiter must not appear in the NULL specification"
 msgstr "delimitador do COPY não deve aparecer em uma especificação NULL"
 
-#: commands/copy.c:1192
+#: commands/copy.c:1219
 #, c-format
 msgid "CSV quote character must not appear in the NULL specification"
 msgstr "caracter delimitador de dados do CSV não deve aparecer na especificação NULL"
 
-#: commands/copy.c:1254
+#: commands/copy.c:1281
 #, c-format
 msgid "table \"%s\" does not have OIDs"
 msgstr "tabela \"%s\" não tem OIDs"
 
-#: commands/copy.c:1271
+#: commands/copy.c:1298
 #, c-format
 msgid "COPY (SELECT) WITH OIDS is not supported"
 msgstr "COPY (SELECT) WITH OIDS não é mais suportado"
 
-#: commands/copy.c:1297
+#: commands/copy.c:1324
 #, c-format
 msgid "COPY (SELECT INTO) is not supported"
 msgstr "COPY (SELECT INTO) não é suportado"
 
-#: commands/copy.c:1360
+#: commands/copy.c:1387
 #, c-format
 msgid "FORCE QUOTE column \"%s\" not referenced by COPY"
 msgstr "coluna do tipo FORCE QUOTE \"%s\" não é referenciada pelo COPY"
 
-#: commands/copy.c:1382
+#: commands/copy.c:1409
 #, c-format
 msgid "FORCE NOT NULL column \"%s\" not referenced by COPY"
 msgstr "coluna do tipo FORCE NOT NULL \"%s\" não é referenciada pelo COPY"
 
-#: commands/copy.c:1446
+#: commands/copy.c:1431
+#, c-format
+msgid "FORCE NULL column \"%s\" not referenced by COPY"
+msgstr "coluna do tipo FORCE NULL \"%s\" não é referenciada pelo COPY"
+
+#: commands/copy.c:1495
 #, c-format
 msgid "could not close pipe to external command: %m"
 msgstr "não pôde fechar pipe para comando externo: %m"
 
-#: commands/copy.c:1449
+#: commands/copy.c:1498
 #, c-format
 msgid "program \"%s\" failed"
 msgstr "programa \"%s\" falhou"
 
-#: commands/copy.c:1498
+#: commands/copy.c:1547
 #, c-format
 msgid "cannot copy from view \"%s\""
 msgstr "não pode copiar visão \"%s\""
 
-#: commands/copy.c:1500 commands/copy.c:1506 commands/copy.c:1512
+#: commands/copy.c:1549 commands/copy.c:1555 commands/copy.c:1561
 #, c-format
 msgid "Try the COPY (SELECT ...) TO variant."
 msgstr "Tente a variante COPY (SELECT ...) TO."
 
-#: commands/copy.c:1504
+#: commands/copy.c:1553
 #, c-format
 msgid "cannot copy from materialized view \"%s\""
 msgstr "não pode copiar visão materializada \"%s\""
 
-#: commands/copy.c:1510
+#: commands/copy.c:1559
 #, c-format
 msgid "cannot copy from foreign table \"%s\""
 msgstr "não pode copiar tabela externa \"%s\""
 
-#: commands/copy.c:1516
+#: commands/copy.c:1565
 #, c-format
 msgid "cannot copy from sequence \"%s\""
 msgstr "não pode copiar sequência \"%s\""
 
-#: commands/copy.c:1521
+#: commands/copy.c:1570
 #, c-format
 msgid "cannot copy from non-table relation \"%s\""
 msgstr "não pode copiar relação \"%s\" que não é uma tabela"
 
-#: commands/copy.c:1544 commands/copy.c:2549
+#: commands/copy.c:1593 commands/copy.c:2616
 #, c-format
 msgid "could not execute command \"%s\": %m"
 msgstr "não pôde executar comando \"%s\": %m"
 
-#: commands/copy.c:1559
+#: commands/copy.c:1608
 #, c-format
 msgid "relative path not allowed for COPY to file"
 msgstr "caminho relativo não é permitido pelo COPY para arquivo"
 
-#: commands/copy.c:1567
+#: commands/copy.c:1616
 #, c-format
 msgid "could not open file \"%s\" for writing: %m"
 msgstr "não pôde abrir arquivo \"%s\" para escrita: %m"
 
-#: commands/copy.c:1574 commands/copy.c:2567
+#: commands/copy.c:1623 commands/copy.c:2634
 #, c-format
 msgid "\"%s\" is a directory"
 msgstr "\"%s\" é um diretório"
 
-#: commands/copy.c:1899
+#: commands/copy.c:1948
 #, c-format
 msgid "COPY %s, line %d, column %s"
 msgstr "COPY %s, linha %d, coluna %s"
 
-#: commands/copy.c:1903 commands/copy.c:1950
+#: commands/copy.c:1952 commands/copy.c:1999
 #, c-format
 msgid "COPY %s, line %d"
 msgstr "COPY %s, linha %d"
 
-#: commands/copy.c:1914
+#: commands/copy.c:1963
 #, c-format
 msgid "COPY %s, line %d, column %s: \"%s\""
 msgstr "COPY %s, linha %d, coluna %s: \"%s\""
 
-#: commands/copy.c:1922
+#: commands/copy.c:1971
 #, c-format
 msgid "COPY %s, line %d, column %s: null input"
 msgstr "COPY %s, linha %d, coluna %s: entrada nula"
 
-#: commands/copy.c:1944
+#: commands/copy.c:1993
 #, c-format
 msgid "COPY %s, line %d: \"%s\""
 msgstr "COPY %s, linha %d: \"%s\""
 
-#: commands/copy.c:2028
+#: commands/copy.c:2077
 #, c-format
 msgid "cannot copy to view \"%s\""
 msgstr "não pode copiar para visão \"%s\""
 
-#: commands/copy.c:2033
+#: commands/copy.c:2082
 #, c-format
 msgid "cannot copy to materialized view \"%s\""
 msgstr "não pode copiar para visão materializada \"%s\""
 
-#: commands/copy.c:2038
+#: commands/copy.c:2087
 #, c-format
 msgid "cannot copy to foreign table \"%s\""
 msgstr "não pode copiar para tabela externa \"%s\""
 
-#: commands/copy.c:2043
+#: commands/copy.c:2092
 #, c-format
 msgid "cannot copy to sequence \"%s\""
 msgstr "não pode copiar para sequência \"%s\""
 
-#: commands/copy.c:2048
+#: commands/copy.c:2097
 #, c-format
 msgid "cannot copy to non-table relation \"%s\""
 msgstr "não pode copiar para relação \"%s\" que não é uma tabela"
 
-#: commands/copy.c:2111
+#: commands/copy.c:2160
 #, c-format
 msgid "cannot perform FREEZE because of prior transaction activity"
 msgstr "não pode executar FREEZE por causa de atividade anterior na transação"
 
-#: commands/copy.c:2117
+#: commands/copy.c:2166
 #, c-format
 msgid "cannot perform FREEZE because the table was not created or truncated in the current subtransaction"
 msgstr "não pode executar FREEZE porque a tabela não foi criada ou truncada na subtransação atual"
 
-#: commands/copy.c:2560 utils/adt/genfile.c:123
+#: commands/copy.c:2627 utils/adt/genfile.c:123
 #, c-format
 msgid "could not open file \"%s\" for reading: %m"
 msgstr "não pôde abrir arquivo \"%s\" para leitura: %m"
 
-#: commands/copy.c:2587
+#: commands/copy.c:2654
 #, c-format
 msgid "COPY file signature not recognized"
 msgstr "assinatura de arquivo COPY desconhecida"
 
-#: commands/copy.c:2592
+#: commands/copy.c:2659
 #, c-format
 msgid "invalid COPY file header (missing flags)"
 msgstr "cabeçalho de arquivo COPY é inválido (faltando marcações)"
 
-#: commands/copy.c:2598
+#: commands/copy.c:2665
 #, c-format
 msgid "unrecognized critical flags in COPY file header"
 msgstr "marcações críticas desconhecidas no cabeçalho do arquivo COPY"
 
-#: commands/copy.c:2604
+#: commands/copy.c:2671
 #, c-format
 msgid "invalid COPY file header (missing length)"
 msgstr "cabeçalho de arquivo COPY é inválido (faltando tamanho)"
 
-#: commands/copy.c:2611
+#: commands/copy.c:2678
 #, c-format
 msgid "invalid COPY file header (wrong length)"
 msgstr "cabeçalho de arquivo COPY é inválido (tamanho incorreto)"
 
-#: commands/copy.c:2744 commands/copy.c:3434 commands/copy.c:3664
+#: commands/copy.c:2811 commands/copy.c:3518 commands/copy.c:3748
 #, c-format
 msgid "extra data after last expected column"
 msgstr "dado extra após última coluna esperada"
 
-#: commands/copy.c:2754
+#: commands/copy.c:2821
 #, c-format
 msgid "missing data for OID column"
 msgstr "faltando dados da coluna OID"
 
-#: commands/copy.c:2760
+#: commands/copy.c:2827
 #, c-format
 msgid "null OID in COPY data"
 msgstr "OID nulo em dados do COPY"
 
-#: commands/copy.c:2770 commands/copy.c:2876
+#: commands/copy.c:2837 commands/copy.c:2960
 #, c-format
 msgid "invalid OID in COPY data"
 msgstr "OID inválido em dados do COPY"
 
-#: commands/copy.c:2785
+#: commands/copy.c:2852
 #, c-format
 msgid "missing data for column \"%s\""
 msgstr "faltando dados da coluna \"%s\""
 
-#: commands/copy.c:2851
+#: commands/copy.c:2935
 #, c-format
 msgid "received copy data after EOF marker"
 msgstr "dados do COPY recebidos após marcador EOF"
 
-#: commands/copy.c:2858
+#: commands/copy.c:2942
 #, c-format
 msgid "row field count is %d, expected %d"
 msgstr "quantidade de campos do registro é %d, esperado %d"
 
-#: commands/copy.c:3198 commands/copy.c:3215
+#: commands/copy.c:3282 commands/copy.c:3299
 #, c-format
 msgid "literal carriage return found in data"
 msgstr "retorno de carro foi encontrado em dados"
 
-#: commands/copy.c:3199 commands/copy.c:3216
+#: commands/copy.c:3283 commands/copy.c:3300
 #, c-format
 msgid "unquoted carriage return found in data"
 msgstr "retorno de carros sem aspas foi encontrado em dados"
 
-#: commands/copy.c:3201 commands/copy.c:3218
+#: commands/copy.c:3285 commands/copy.c:3302
 #, c-format
 msgid "Use \"\\r\" to represent carriage return."
 msgstr "Utilize \"\\r\" para representar retorno de carro."
 
-#: commands/copy.c:3202 commands/copy.c:3219
+#: commands/copy.c:3286 commands/copy.c:3303
 #, c-format
 msgid "Use quoted CSV field to represent carriage return."
 msgstr "Utilize campo entre aspas do CSV para representar retorno de carro."
 
-#: commands/copy.c:3231
+#: commands/copy.c:3315
 #, c-format
 msgid "literal newline found in data"
 msgstr "nova linha foi encontrada em dados"
 
-#: commands/copy.c:3232
+#: commands/copy.c:3316
 #, c-format
 msgid "unquoted newline found in data"
 msgstr "nova linha sem aspas foi encontrada em dados"
 
-#: commands/copy.c:3234
+#: commands/copy.c:3318
 #, c-format
 msgid "Use \"\\n\" to represent newline."
 msgstr "Utilize \"\\n\" para representar nova linha."
 
-#: commands/copy.c:3235
+#: commands/copy.c:3319
 #, c-format
 msgid "Use quoted CSV field to represent newline."
 msgstr "Utilize campo entre aspas do CSV para representar nova linha."
 
-#: commands/copy.c:3281 commands/copy.c:3317
+#: commands/copy.c:3365 commands/copy.c:3401
 #, c-format
 msgid "end-of-copy marker does not match previous newline style"
 msgstr "marcador de fim-de-cópia não corresponde com estilo de nova linha anterior"
 
-#: commands/copy.c:3290 commands/copy.c:3306
+#: commands/copy.c:3374 commands/copy.c:3390
 #, c-format
 msgid "end-of-copy marker corrupt"
 msgstr "marcador de fim-de-cópia corrompido"
 
-#: commands/copy.c:3748
+#: commands/copy.c:3832
 #, c-format
 msgid "unterminated CSV quoted field"
 msgstr "campo entre aspas do CSV não foi terminado"
 
-#: commands/copy.c:3825 commands/copy.c:3844
+#: commands/copy.c:3909 commands/copy.c:3928
 #, c-format
 msgid "unexpected EOF in COPY data"
 msgstr "EOF inesperado em dados do COPY"
 
-#: commands/copy.c:3834
+#: commands/copy.c:3918
 #, c-format
 msgid "invalid field size"
 msgstr "tamanho de campo é inválido"
 
-#: commands/copy.c:3857
+#: commands/copy.c:3941
 #, c-format
 msgid "incorrect binary data format"
 msgstr "formato de dado binário incorreto"
 
-#: commands/copy.c:4168 commands/indexcmds.c:1012 commands/tablecmds.c:1403
-#: commands/tablecmds.c:2212 parser/parse_relation.c:2652
+#: commands/copy.c:4252 commands/indexcmds.c:993 commands/tablecmds.c:1427
+#: commands/tablecmds.c:2237 parser/parse_relation.c:2889
 #: utils/adt/tsvector_op.c:1417
 #, c-format
 msgid "column \"%s\" does not exist"
 msgstr "coluna \"%s\" não existe"
 
-#: commands/copy.c:4175 commands/tablecmds.c:1429 commands/trigger.c:619
+#: commands/copy.c:4259 commands/tablecmds.c:1453 commands/trigger.c:644
 #: parser/parse_target.c:936 parser/parse_target.c:947
 #, c-format
 msgid "column \"%s\" specified more than once"
 msgstr "coluna \"%s\" especificada mais de uma vez"
 
-#: commands/createas.c:352
+#: commands/createas.c:353
 #, c-format
 msgid "too many column names were specified"
 msgstr "muitos nomes de coluna foram especificados"
@@ -4571,7 +4782,7 @@ msgstr "%d não é um código de codificação válido"
 msgid "%s is not a valid encoding name"
 msgstr "%s não é um nome de codificação válido"
 
-#: commands/dbcommands.c:255 commands/dbcommands.c:1392 commands/user.c:260
+#: commands/dbcommands.c:255 commands/dbcommands.c:1383 commands/user.c:260
 #: commands/user.c:601
 #, c-format
 msgid "invalid connection limit: %d"
@@ -4632,7 +4843,7 @@ msgstr "novo LC_CTYPE (%s) é incompatível com o LC_CTYPE do banco de dados mod
 msgid "Use the same LC_CTYPE as in the template database, or use template0 as template."
 msgstr "Utilize o mesmo LC_CTYPE do banco de dados modelo ou utilize template0 como modelo."
 
-#: commands/dbcommands.c:395 commands/dbcommands.c:1095
+#: commands/dbcommands.c:395 commands/dbcommands.c:1086
 #, c-format
 msgid "pg_global cannot be used as default tablespace"
 msgstr "pg_global não pode ser utilizado como tablespace padrão"
@@ -4647,7 +4858,7 @@ msgstr "não pode atribuir nova tablespace padrão \"%s\""
 msgid "There is a conflict because database \"%s\" already has some tables in this tablespace."
 msgstr "Há um conflito porque o banco de dados \"%s\" já tem algumas tabelas nesta tablespace."
 
-#: commands/dbcommands.c:443 commands/dbcommands.c:966
+#: commands/dbcommands.c:443 commands/dbcommands.c:957
 #, c-format
 msgid "database \"%s\" already exists"
 msgstr "banco de dados \"%s\" já existe"
@@ -4657,247 +4868,265 @@ msgstr "banco de dados \"%s\" já existe"
 msgid "source database \"%s\" is being accessed by other users"
 msgstr "banco de dados fonte \"%s\" está sendo acessado por outros usuários"
 
-#: commands/dbcommands.c:728 commands/dbcommands.c:743
+#: commands/dbcommands.c:702 commands/dbcommands.c:717
 #, c-format
 msgid "encoding \"%s\" does not match locale \"%s\""
 msgstr "codificação \"%s\" não corresponde a configuração regional \"%s\""
 
-#: commands/dbcommands.c:731
+#: commands/dbcommands.c:705
 #, c-format
 msgid "The chosen LC_CTYPE setting requires encoding \"%s\"."
 msgstr "A definição de LC_TYPE escolhida requer codificação \"%s\"."
 
-#: commands/dbcommands.c:746
+#: commands/dbcommands.c:720
 #, c-format
 msgid "The chosen LC_COLLATE setting requires encoding \"%s\"."
 msgstr "A definição de LC_COLLATE escolhida requer codificação \"%s\"."
 
-#: commands/dbcommands.c:804
+#: commands/dbcommands.c:780
 #, c-format
 msgid "database \"%s\" does not exist, skipping"
 msgstr "banco de dados \"%s\" não existe, ignorando"
 
-#: commands/dbcommands.c:828
+#: commands/dbcommands.c:804
 #, c-format
 msgid "cannot drop a template database"
 msgstr "não pode remover banco de dados modelo"
 
-#: commands/dbcommands.c:834
+#: commands/dbcommands.c:810
 #, c-format
 msgid "cannot drop the currently open database"
 msgstr "não pode remover banco de dados que se encontra aberto"
 
-#: commands/dbcommands.c:845 commands/dbcommands.c:988
-#: commands/dbcommands.c:1117
+#: commands/dbcommands.c:820
+#, fuzzy, c-format
+msgid "database \"%s\" is used by a logical decoding slot"
+msgstr "banco de dados \"%s\" está sendo utilizado por um slot de replicação lógica"
+
+#: commands/dbcommands.c:822
+#, fuzzy, c-format
+msgid "There is %d slot, %d of them active."
+msgid_plural "There are %d slots, %d of them active."
+msgstr[0] "Há %d slot(s), %d deles ativos"
+msgstr[1] "Há %d slot(s), %d deles ativos"
+
+#: commands/dbcommands.c:836 commands/dbcommands.c:979
+#: commands/dbcommands.c:1108
 #, c-format
 msgid "database \"%s\" is being accessed by other users"
 msgstr "banco de dados \"%s\" está sendo acessado por outros usuários"
 
-#: commands/dbcommands.c:957
+#: commands/dbcommands.c:948
 #, c-format
 msgid "permission denied to rename database"
 msgstr "permissão negada ao renomear banco de dados"
 
-#: commands/dbcommands.c:977
+#: commands/dbcommands.c:968
 #, c-format
 msgid "current database cannot be renamed"
 msgstr "banco de dados atual não pode ser renomeado"
 
-#: commands/dbcommands.c:1073
+#: commands/dbcommands.c:1064
 #, c-format
 msgid "cannot change the tablespace of the currently open database"
 msgstr "não pode mudar a tablespace de um banco de dados que se encontra aberto"
 
-#: commands/dbcommands.c:1157
+#: commands/dbcommands.c:1148
 #, c-format
 msgid "some relations of database \"%s\" are already in tablespace \"%s\""
 msgstr "algumas relações do banco de dados \"%s\" já estão na tablespace \"%s\""
 
-#: commands/dbcommands.c:1159
+#: commands/dbcommands.c:1150
 #, c-format
 msgid "You must move them back to the database's default tablespace before using this command."
 msgstr "Você deve movê-las de volta para a tablespace padrão do banco de dados antes de utilizar este comando."
 
-#: commands/dbcommands.c:1290 commands/dbcommands.c:1789
-#: commands/dbcommands.c:2007 commands/dbcommands.c:2055
-#: commands/tablespace.c:585
+#: commands/dbcommands.c:1281 commands/dbcommands.c:1769
+#: commands/dbcommands.c:1975 commands/dbcommands.c:2023
+#: commands/tablespace.c:597
 #, c-format
 msgid "some useless files may be left behind in old database directory \"%s\""
 msgstr "alguns arquivos inúteis podem ser deixados no diretório de banco de dados antigo \"%s\""
 
-#: commands/dbcommands.c:1546
+#: commands/dbcommands.c:1537
 #, c-format
 msgid "permission denied to change owner of database"
 msgstr "permissão negada ao mudar dono do banco de dados"
 
-#: commands/dbcommands.c:1890
+#: commands/dbcommands.c:1858
 #, c-format
 msgid "There are %d other session(s) and %d prepared transaction(s) using the database."
 msgstr "Há %d outra(s) sessão(ões) e %d transação(ões) preparada(s) utilizando o banco de dados."
 
-#: commands/dbcommands.c:1893
+#: commands/dbcommands.c:1861
 #, c-format
 msgid "There is %d other session using the database."
 msgid_plural "There are %d other sessions using the database."
 msgstr[0] "Há %d outra sessão utilizando o banco de dados."
 msgstr[1] "Há %d outras sessões utilizando o banco de dados."
 
-#: commands/dbcommands.c:1898
+#: commands/dbcommands.c:1866
 #, c-format
 msgid "There is %d prepared transaction using the database."
 msgid_plural "There are %d prepared transactions using the database."
 msgstr[0] "Há %d transação preparada utilizando o banco de dados."
 msgstr[1] "Há %d transações preparadas utilizando o banco de dados."
 
-#: commands/define.c:54 commands/define.c:209 commands/define.c:241
-#: commands/define.c:269
+#: commands/define.c:54 commands/define.c:228 commands/define.c:260
+#: commands/define.c:288
 #, c-format
 msgid "%s requires a parameter"
 msgstr "%s requer um parâmetro"
 
-#: commands/define.c:95 commands/define.c:106 commands/define.c:176
-#: commands/define.c:194
+#: commands/define.c:90 commands/define.c:101 commands/define.c:195
+#: commands/define.c:213
 #, c-format
 msgid "%s requires a numeric value"
 msgstr "%s requer um valor numérico"
 
-#: commands/define.c:162
+#: commands/define.c:157
 #, c-format
 msgid "%s requires a Boolean value"
 msgstr "%s requer um valor Booleano"
 
-#: commands/define.c:223
+#: commands/define.c:171 commands/define.c:180 commands/define.c:297
+#, c-format
+msgid "%s requires an integer value"
+msgstr "%s requer um valor inteiro"
+
+#: commands/define.c:242
 #, c-format
 msgid "argument of %s must be a name"
 msgstr "argumento de %s deve ser um nome"
 
-#: commands/define.c:253
+#: commands/define.c:272
 #, c-format
 msgid "argument of %s must be a type name"
 msgstr "argumento de %s deve ser um nome de um tipo"
 
-#: commands/define.c:278
-#, c-format
-msgid "%s requires an integer value"
-msgstr "%s requer um valor inteiro"
-
-#: commands/define.c:299
+#: commands/define.c:318
 #, c-format
 msgid "invalid argument for %s: \"%s\""
 msgstr "argumento é inválido para %s: \"%s\""
 
-#: commands/dropcmds.c:100 commands/functioncmds.c:1079
-#: utils/adt/ruleutils.c:1897
+#: commands/dropcmds.c:112 commands/functioncmds.c:1110
+#: utils/adt/ruleutils.c:1936
 #, c-format
 msgid "\"%s\" is an aggregate function"
 msgstr "\"%s\" é uma função de agregação"
 
-#: commands/dropcmds.c:102
+#: commands/dropcmds.c:114
 #, c-format
 msgid "Use DROP AGGREGATE to drop aggregate functions."
 msgstr "Utilize DROP AGGREGATE para remover funções de agregação."
 
-#: commands/dropcmds.c:143 commands/tablecmds.c:236
+#: commands/dropcmds.c:165 commands/sequence.c:400 commands/tablecmds.c:2318
+#: commands/tablecmds.c:2499 commands/tablecmds.c:10625 tcop/utility.c:1006
+#, c-format
+msgid "relation \"%s\" does not exist, skipping"
+msgstr "relação \"%s\" não existe, ignorando"
+
+#: commands/dropcmds.c:195 commands/dropcmds.c:288 commands/tablecmds.c:713
+#, c-format
+msgid "schema \"%s\" does not exist, skipping"
+msgstr "esquema \"%s\" não existe, ignorando"
+
+#: commands/dropcmds.c:237 commands/dropcmds.c:269 commands/tablecmds.c:237
 #, c-format
 msgid "type \"%s\" does not exist, skipping"
 msgstr "tipo \"%s\" não existe, ignorando"
 
-#: commands/dropcmds.c:147
+#: commands/dropcmds.c:276
 #, c-format
 msgid "collation \"%s\" does not exist, skipping"
 msgstr "ordenação \"%s\" não existe, ignorando"
 
-#: commands/dropcmds.c:151
+#: commands/dropcmds.c:283
 #, c-format
 msgid "conversion \"%s\" does not exist, skipping"
 msgstr "conversão \"%s\" não existe, ignorando"
 
-#: commands/dropcmds.c:155
-#, c-format
-msgid "schema \"%s\" does not exist, skipping"
-msgstr "esquema \"%s\" não existe, ignorando"
-
-#: commands/dropcmds.c:159
+#: commands/dropcmds.c:294
 #, c-format
 msgid "text search parser \"%s\" does not exist, skipping"
 msgstr "analisador de busca textual \"%s\" não existe, ignorando"
 
-#: commands/dropcmds.c:163
+#: commands/dropcmds.c:301
 #, c-format
 msgid "text search dictionary \"%s\" does not exist, skipping"
 msgstr "dicionário de busca textual \"%s\" não existe, ignorando"
 
-#: commands/dropcmds.c:167
+#: commands/dropcmds.c:308
 #, c-format
 msgid "text search template \"%s\" does not exist, skipping"
 msgstr "modelo de busca textual \"%s\" não existe, ignorando"
 
-#: commands/dropcmds.c:171
+#: commands/dropcmds.c:315
 #, c-format
 msgid "text search configuration \"%s\" does not exist, skipping"
 msgstr "configuração de busca textual \"%s\" não existe, ignorando"
 
-#: commands/dropcmds.c:175
+#: commands/dropcmds.c:320
 #, c-format
 msgid "extension \"%s\" does not exist, skipping"
 msgstr "extensão \"%s\" não existe, ignorando"
 
-#: commands/dropcmds.c:179
+#: commands/dropcmds.c:327
 #, c-format
 msgid "function %s(%s) does not exist, skipping"
 msgstr "função %s(%s) não existe, ignorando"
 
-#: commands/dropcmds.c:184
+#: commands/dropcmds.c:336
 #, c-format
 msgid "aggregate %s(%s) does not exist, skipping"
 msgstr "agregação %s(%s) não existe, ignorando"
 
-#: commands/dropcmds.c:189
+#: commands/dropcmds.c:345
 #, c-format
 msgid "operator %s does not exist, skipping"
 msgstr "operador %s não existe, ignorando"
 
-#: commands/dropcmds.c:193
+#: commands/dropcmds.c:350
 #, c-format
 msgid "language \"%s\" does not exist, skipping"
 msgstr "linguagem \"%s\" não existe, ignorando"
 
-#: commands/dropcmds.c:197
+#: commands/dropcmds.c:359
 #, c-format
 msgid "cast from type %s to type %s does not exist, skipping"
 msgstr "conversão do tipo %s para tipo %s não existe, ignorando"
 
-#: commands/dropcmds.c:204
+#: commands/dropcmds.c:368
 #, c-format
-msgid "trigger \"%s\" for table \"%s\" does not exist, skipping"
-msgstr "gatilho \"%s\" para tabela \"%s\" não existe, ignorando"
+msgid "trigger \"%s\" for relation \"%s\" does not exist, skipping"
+msgstr "gatilho \"%s\" para relação \"%s\" não existe, ignorando"
 
-#: commands/dropcmds.c:210
+#: commands/dropcmds.c:375
 #, c-format
 msgid "event trigger \"%s\" does not exist, skipping"
 msgstr "gatilho de eventos \"%s\" não existe, ignorando"
 
-#: commands/dropcmds.c:214
+#: commands/dropcmds.c:381
 #, c-format
 msgid "rule \"%s\" for relation \"%s\" does not exist, skipping"
 msgstr "regra \"%s\" para relação \"%s\" não existe, ignorando"
 
-#: commands/dropcmds.c:220
+#: commands/dropcmds.c:388
 #, c-format
 msgid "foreign-data wrapper \"%s\" does not exist, skipping"
 msgstr "adaptador de dados externos \"%s\" não existe, ignorando"
 
-#: commands/dropcmds.c:224
+#: commands/dropcmds.c:392
 #, c-format
 msgid "server \"%s\" does not exist, skipping"
 msgstr "servidor \"%s\" não existe, ignorando"
 
-#: commands/dropcmds.c:228
+#: commands/dropcmds.c:398
 #, c-format
 msgid "operator class \"%s\" does not exist for access method \"%s\", skipping"
 msgstr "família de operadores \"%s\" não existe para método de acesso \"%s\", ignorando"
 
-#: commands/dropcmds.c:233
+#: commands/dropcmds.c:406
 #, c-format
 msgid "operator family \"%s\" does not exist for access method \"%s\", skipping"
 msgstr "família de operadores \"%s\" não existe para método de acesso \"%s\", ignorando"
@@ -4964,46 +5193,49 @@ msgstr "O dono de um gatilho de eventos deve ser um super-usuário."
 msgid "%s can only be called in a sql_drop event trigger function"
 msgstr "%s só pode ser chamada na função de gatilho do evento sql_drop"
 
-#: commands/event_trigger.c:1226 commands/extension.c:1650
-#: commands/extension.c:1759 commands/extension.c:1952 commands/prepare.c:702
-#: executor/execQual.c:1717 executor/execQual.c:1742 executor/execQual.c:2110
-#: executor/execQual.c:5272 executor/functions.c:1019 foreign/foreign.c:421
-#: replication/walsender.c:1893 utils/adt/jsonfuncs.c:924
-#: utils/adt/jsonfuncs.c:1095 utils/adt/jsonfuncs.c:1597
+#: commands/event_trigger.c:1226 commands/extension.c:1646
+#: commands/extension.c:1755 commands/extension.c:1948 commands/prepare.c:702
+#: executor/execQual.c:1708 executor/execQual.c:1733 executor/execQual.c:2108
+#: executor/execQual.c:5276 executor/functions.c:1018 foreign/foreign.c:421
+#: replication/logical/logicalfuncs.c:310 replication/slotfuncs.c:173
+#: replication/walsender.c:2746 utils/adt/jsonfuncs.c:1386
+#: utils/adt/jsonfuncs.c:1518 utils/adt/jsonfuncs.c:1708
+#: utils/adt/jsonfuncs.c:1837 utils/adt/jsonfuncs.c:2601
 #: utils/fmgr/funcapi.c:61 utils/mmgr/portalmem.c:986
 #, c-format
 msgid "set-valued function called in context that cannot accept a set"
 msgstr "função que tem argumento do tipo conjunto foi chamada em um contexto que não pode aceitar um conjunto"
 
-#: commands/event_trigger.c:1230 commands/extension.c:1654
-#: commands/extension.c:1763 commands/extension.c:1956 commands/prepare.c:706
-#: foreign/foreign.c:426 replication/walsender.c:1897
+#: commands/event_trigger.c:1230 commands/extension.c:1650
+#: commands/extension.c:1759 commands/extension.c:1952 commands/prepare.c:706
+#: foreign/foreign.c:426 replication/logical/logicalfuncs.c:314
+#: replication/slotfuncs.c:177 replication/walsender.c:2750
 #: utils/mmgr/portalmem.c:990
 #, c-format
 msgid "materialize mode required, but it is not allowed in this context"
 msgstr "modo de materialização é requerido, mas ele não é permitido neste contexto"
 
-#: commands/explain.c:163
+#: commands/explain.c:169
 #, c-format
 msgid "unrecognized value for EXPLAIN option \"%s\": \"%s\""
 msgstr "valor desconhecido para opção EXPLAIN \"%s\": \"%s\""
 
-#: commands/explain.c:169
+#: commands/explain.c:175
 #, c-format
 msgid "unrecognized EXPLAIN option \"%s\""
 msgstr "opção EXPLAIN desconhecida \"%s\""
 
-#: commands/explain.c:176
+#: commands/explain.c:182
 #, c-format
 msgid "EXPLAIN option BUFFERS requires ANALYZE"
 msgstr "opção BUFFERS do EXPLAIN requer ANALYZE"
 
-#: commands/explain.c:185
+#: commands/explain.c:191
 #, c-format
 msgid "EXPLAIN option TIMING requires ANALYZE"
 msgstr "opção TIMING do EXPLAIN requer ANALYZE"
 
-#: commands/extension.c:148 commands/extension.c:2632
+#: commands/extension.c:148 commands/extension.c:2628
 #, c-format
 msgid "extension \"%s\" does not exist"
 msgstr "extensão \"%s\" não existe"
@@ -5090,122 +5322,122 @@ msgstr "parâmetro \"%s\" desconhecido em arquivo \"%s\""
 msgid "parameter \"schema\" cannot be specified when \"relocatable\" is true"
 msgstr "parâmetro \"schema\" não pode ser especificado quando \"relocatable\" é verdadeiro"
 
-#: commands/extension.c:726
+#: commands/extension.c:722
 #, c-format
 msgid "transaction control statements are not allowed within an extension script"
 msgstr "comandos de controle de transação não são permitidos dentro do script da extensão"
 
-#: commands/extension.c:794
+#: commands/extension.c:790
 #, c-format
 msgid "permission denied to create extension \"%s\""
 msgstr "permissão negada ao criar extensão \"%s\""
 
-#: commands/extension.c:796
+#: commands/extension.c:792
 #, c-format
 msgid "Must be superuser to create this extension."
 msgstr "Deve ser super-usuário para criar uma extensão."
 
-#: commands/extension.c:800
+#: commands/extension.c:796
 #, c-format
 msgid "permission denied to update extension \"%s\""
 msgstr "permissão negada ao atualizar extensão \"%s\""
 
-#: commands/extension.c:802
+#: commands/extension.c:798
 #, c-format
 msgid "Must be superuser to update this extension."
 msgstr "Deve ser super-usuário para atualizar esta extensão."
 
-#: commands/extension.c:1084
+#: commands/extension.c:1080
 #, c-format
 msgid "extension \"%s\" has no update path from version \"%s\" to version \"%s\""
 msgstr "extensão \"%s\" não possui caminho de atualização da versão \"%s\" para versão \"%s\""
 
-#: commands/extension.c:1211
+#: commands/extension.c:1207
 #, c-format
 msgid "extension \"%s\" already exists, skipping"
 msgstr "extensão \"%s\" já existe, ignorando"
 
-#: commands/extension.c:1218
+#: commands/extension.c:1214
 #, c-format
 msgid "extension \"%s\" already exists"
 msgstr "extensão \"%s\" já existe"
 
-#: commands/extension.c:1229
+#: commands/extension.c:1225
 #, c-format
 msgid "nested CREATE EXTENSION is not supported"
 msgstr "CREATE EXTENSION aninhado não é suportado"
 
-#: commands/extension.c:1284 commands/extension.c:2692
+#: commands/extension.c:1280 commands/extension.c:2688
 #, c-format
 msgid "version to install must be specified"
 msgstr "versão a ser instalada deve ser especificada"
 
-#: commands/extension.c:1301
+#: commands/extension.c:1297
 #, c-format
 msgid "FROM version must be different from installation target version \"%s\""
 msgstr "versão do FROM deve ser diferente da versão da instalação \"%s\""
 
-#: commands/extension.c:1356
+#: commands/extension.c:1352
 #, c-format
 msgid "extension \"%s\" must be installed in schema \"%s\""
 msgstr "extensão \"%s\" deve ser instalada no esquema \"%s\""
 
-#: commands/extension.c:1440 commands/extension.c:2835
+#: commands/extension.c:1436 commands/extension.c:2831
 #, c-format
 msgid "required extension \"%s\" is not installed"
 msgstr "extensão requerida \"%s\" não está instalada"
 
-#: commands/extension.c:1602
+#: commands/extension.c:1598
 #, c-format
 msgid "cannot drop extension \"%s\" because it is being modified"
 msgstr "não pode remover extensão \"%s\" porque ela está sendo modificada"
 
-#: commands/extension.c:2073
+#: commands/extension.c:2069
 #, c-format
 msgid "pg_extension_config_dump() can only be called from an SQL script executed by CREATE EXTENSION"
 msgstr "pg_extension_config_dump() só pode ser chamada de um script SQL executado por CREATE EXTENSION"
 
-#: commands/extension.c:2085
+#: commands/extension.c:2081
 #, c-format
 msgid "OID %u does not refer to a table"
 msgstr "OID %u não se refere a uma tabela"
 
-#: commands/extension.c:2090
+#: commands/extension.c:2086
 #, c-format
 msgid "table \"%s\" is not a member of the extension being created"
 msgstr "tabela \"%s\" não é um membro da extensão que está sendo criada"
 
-#: commands/extension.c:2454
+#: commands/extension.c:2450
 #, c-format
 msgid "cannot move extension \"%s\" into schema \"%s\" because the extension contains the schema"
 msgstr "não pode mover extensão \"%s\" para esquema \"%s\" porque a extensão contém o esquema"
 
-#: commands/extension.c:2494 commands/extension.c:2557
+#: commands/extension.c:2490 commands/extension.c:2553
 #, c-format
 msgid "extension \"%s\" does not support SET SCHEMA"
 msgstr "extensão \"%s\" não suporta SET SCHEMA"
 
-#: commands/extension.c:2559
+#: commands/extension.c:2555
 #, c-format
 msgid "%s is not in the extension's schema \"%s\""
 msgstr "%s não está no esquema da extensão \"%s\""
 
-#: commands/extension.c:2612
+#: commands/extension.c:2608
 #, c-format
 msgid "nested ALTER EXTENSION is not supported"
 msgstr "ALTER EXTENSION aninhado não é suportado"
 
-#: commands/extension.c:2703
+#: commands/extension.c:2699
 #, c-format
 msgid "version \"%s\" of extension \"%s\" is already installed"
 msgstr "versao \"%s\" da extensão \"%s\" já está instalada"
 
-#: commands/extension.c:2942
+#: commands/extension.c:2938
 #, c-format
 msgid "cannot add schema \"%s\" to extension \"%s\" because the schema contains the extension"
 msgstr "não pode adicionar esquema \"%s\" a extensão \"%s\" porque o esquema contém a extensão"
 
-#: commands/extension.c:2960
+#: commands/extension.c:2956
 #, c-format
 msgid "%s is not a member of extension \"%s\""
 msgstr "%s não é um membro da extensão \"%s\""
@@ -5301,584 +5533,625 @@ msgstr "servidor não existe, ignorando"
 msgid "user mapping \"%s\" does not exist for the server, skipping"
 msgstr "mapeamento de usuários \"%s\" não existe para o servidor, ignorando"
 
-#: commands/functioncmds.c:99
+#: commands/functioncmds.c:98
 #, c-format
 msgid "SQL function cannot return shell type %s"
 msgstr "função SQL não pode retornar tipo indefinido %s"
 
-#: commands/functioncmds.c:104
+#: commands/functioncmds.c:103
 #, c-format
 msgid "return type %s is only a shell"
 msgstr "tipo retornado %s é indefinido"
 
-#: commands/functioncmds.c:133 parser/parse_type.c:285
+#: commands/functioncmds.c:132 parser/parse_type.c:333
 #, c-format
 msgid "type modifier cannot be specified for shell type \"%s\""
 msgstr "modificador de tipo não pode ser especificado para tipo indefinido \"%s\""
 
-#: commands/functioncmds.c:139
+#: commands/functioncmds.c:138
 #, c-format
 msgid "type \"%s\" is not yet defined"
 msgstr "tipo \"%s\" ainda não foi definido"
 
-#: commands/functioncmds.c:140
+#: commands/functioncmds.c:139
 #, c-format
 msgid "Creating a shell type definition."
 msgstr "Criando uma definição de tipo indefinido."
 
-#: commands/functioncmds.c:224
+#: commands/functioncmds.c:236
 #, c-format
 msgid "SQL function cannot accept shell type %s"
 msgstr "função SQL não pode aceitar tipo indefinido %s"
 
-#: commands/functioncmds.c:229
+#: commands/functioncmds.c:242
+#, c-format
+msgid "aggregate cannot accept shell type %s"
+msgstr "agregação não pode aceitar tipo indefinido %s"
+
+#: commands/functioncmds.c:247
 #, c-format
 msgid "argument type %s is only a shell"
 msgstr "tipo de argumento %s é indefinido"
 
-#: commands/functioncmds.c:239
+#: commands/functioncmds.c:257
 #, c-format
 msgid "type %s does not exist"
 msgstr "tipo %s não existe"
 
-#: commands/functioncmds.c:251
+#: commands/functioncmds.c:271
+#, c-format
+msgid "aggregates cannot accept set arguments"
+msgstr "agregações não podem aceitar conjunto de argumentos"
+
+#: commands/functioncmds.c:275
 #, c-format
 msgid "functions cannot accept set arguments"
 msgstr "funções não podem aceitar conjunto de argumentos"
 
-#: commands/functioncmds.c:260
+#: commands/functioncmds.c:285
 #, c-format
 msgid "VARIADIC parameter must be the last input parameter"
 msgstr "parâmetro VARIADIC deve ser o último parâmetro de entrada"
 
-#: commands/functioncmds.c:287
+#: commands/functioncmds.c:313
 #, c-format
 msgid "VARIADIC parameter must be an array"
 msgstr "parâmetro VARIADIC deve ser uma matriz"
 
-#: commands/functioncmds.c:327
+#: commands/functioncmds.c:353
 #, c-format
 msgid "parameter name \"%s\" used more than once"
 msgstr "nome de parâmetro \"%s\" foi especificado mais de uma vez"
 
-#: commands/functioncmds.c:342
+#: commands/functioncmds.c:368
 #, c-format
 msgid "only input parameters can have default values"
 msgstr "somente parâmetros de entrada podem ter valores padrão"
 
-#: commands/functioncmds.c:357
+#: commands/functioncmds.c:383
 #, c-format
 msgid "cannot use table references in parameter default value"
 msgstr "não pode utilizar referência a tabela no valor padrão do parâmetro"
 
-#: commands/functioncmds.c:381
+#: commands/functioncmds.c:407
 #, c-format
 msgid "input parameters after one with a default value must also have defaults"
 msgstr "parâmetros de entrada após um parâmetro com valor padrão também devem ter valores padrão"
 
-#: commands/functioncmds.c:631
+#: commands/functioncmds.c:657
 #, c-format
 msgid "no function body specified"
 msgstr "corpo da função não foi especificado"
 
-#: commands/functioncmds.c:641
+#: commands/functioncmds.c:667
 #, c-format
 msgid "no language specified"
 msgstr "nenhuma linguagem foi especificada"
 
-#: commands/functioncmds.c:664 commands/functioncmds.c:1118
+#: commands/functioncmds.c:690 commands/functioncmds.c:1149
 #, c-format
 msgid "COST must be positive"
 msgstr "COST deve ser positivo"
 
-#: commands/functioncmds.c:672 commands/functioncmds.c:1126
+#: commands/functioncmds.c:698 commands/functioncmds.c:1157
 #, c-format
 msgid "ROWS must be positive"
 msgstr "ROWS deve ser positivo"
 
-#: commands/functioncmds.c:711
+#: commands/functioncmds.c:737
 #, c-format
 msgid "unrecognized function attribute \"%s\" ignored"
 msgstr "atributo de função desconhecido \"%s\" foi ignorado"
 
-#: commands/functioncmds.c:762
+#: commands/functioncmds.c:788
 #, c-format
 msgid "only one AS item needed for language \"%s\""
 msgstr "somente um item AS é necessário para linguagem \"%s\""
 
-#: commands/functioncmds.c:850 commands/functioncmds.c:1703
+#: commands/functioncmds.c:877 commands/functioncmds.c:1734
 #: commands/proclang.c:553
 #, c-format
 msgid "language \"%s\" does not exist"
 msgstr "linguagem \"%s\" não existe"
 
-#: commands/functioncmds.c:852 commands/functioncmds.c:1705
+#: commands/functioncmds.c:879 commands/functioncmds.c:1736
 #, c-format
 msgid "Use CREATE LANGUAGE to load the language into the database."
 msgstr "Utilize CREATE LANGUAGE para carregar uma linguagem no banco de dados."
 
-#: commands/functioncmds.c:887 commands/functioncmds.c:1109
+#: commands/functioncmds.c:914 commands/functioncmds.c:1140
 #, c-format
 msgid "only superuser can define a leakproof function"
 msgstr "somente super-usuário pode definir uma função com parâmetro leakproof"
 
-#: commands/functioncmds.c:909
+#: commands/functioncmds.c:940
 #, c-format
 msgid "function result type must be %s because of OUT parameters"
 msgstr "tipo do resultado da função deve ser %s por causa dos parâmetros OUT"
 
-#: commands/functioncmds.c:922
+#: commands/functioncmds.c:953
 #, c-format
 msgid "function result type must be specified"
 msgstr "tipo do resultado da função deve ser especificado"
 
-#: commands/functioncmds.c:957 commands/functioncmds.c:1130
+#: commands/functioncmds.c:988 commands/functioncmds.c:1161
 #, c-format
 msgid "ROWS is not applicable when function does not return a set"
 msgstr "ROWS não é aplicável quando função não retorna um conjunto"
 
-#: commands/functioncmds.c:1283
+#: commands/functioncmds.c:1314
 #, c-format
 msgid "source data type %s is a pseudo-type"
 msgstr "tipo de dado fonte %s é um pseudo-tipo"
 
-#: commands/functioncmds.c:1289
+#: commands/functioncmds.c:1320
 #, c-format
 msgid "target data type %s is a pseudo-type"
 msgstr "tipo de dado alvo %s é um pseudo-tipo"
 
-#: commands/functioncmds.c:1313
+#: commands/functioncmds.c:1344
 #, c-format
 msgid "cast will be ignored because the source data type is a domain"
 msgstr "conversão será ignorada porque o tipo de dado fonte é um domínio"
 
-#: commands/functioncmds.c:1318
+#: commands/functioncmds.c:1349
 #, c-format
 msgid "cast will be ignored because the target data type is a domain"
 msgstr "conversão será ignorada porque o tipo de dado alvo é um domínio"
 
-#: commands/functioncmds.c:1345
+#: commands/functioncmds.c:1376
 #, c-format
 msgid "cast function must take one to three arguments"
 msgstr "função de conversão deve ter de um a três argumentos"
 
-#: commands/functioncmds.c:1349
+#: commands/functioncmds.c:1380
 #, c-format
 msgid "argument of cast function must match or be binary-coercible from source data type"
 msgstr "argumento da função de conversão deve corresponder ou ser convertido no tipo de dado fonte"
 
-#: commands/functioncmds.c:1353
+#: commands/functioncmds.c:1384
 #, c-format
 msgid "second argument of cast function must be type integer"
 msgstr "segundo argumento da função de conversão deve ter tipo integer"
 
-#: commands/functioncmds.c:1357
+#: commands/functioncmds.c:1388
 #, c-format
 msgid "third argument of cast function must be type boolean"
 msgstr "terceiro argumento da função de conversão deve ter tipo boolean"
 
-#: commands/functioncmds.c:1361
+#: commands/functioncmds.c:1392
 #, c-format
 msgid "return data type of cast function must match or be binary-coercible to target data type"
 msgstr "tipo de dado de retorno da função de conversão deve corresponder ou ser convertido no tipo de dado alvo"
 
-#: commands/functioncmds.c:1372
+#: commands/functioncmds.c:1403
 #, c-format
 msgid "cast function must not be volatile"
 msgstr "função de conversão não deve ser volátil"
 
-#: commands/functioncmds.c:1377
+#: commands/functioncmds.c:1408
 #, c-format
 msgid "cast function must not be an aggregate function"
 msgstr "função de conversão não deve ser uma função de agregação"
 
-#: commands/functioncmds.c:1381
+#: commands/functioncmds.c:1412
 #, c-format
 msgid "cast function must not be a window function"
 msgstr "função de conversão não deve ser uma função deslizante"
 
-#: commands/functioncmds.c:1385
+#: commands/functioncmds.c:1416
 #, c-format
 msgid "cast function must not return a set"
 msgstr "função de conversão não deve retornar um conjunto"
 
-#: commands/functioncmds.c:1411
+#: commands/functioncmds.c:1442
 #, c-format
 msgid "must be superuser to create a cast WITHOUT FUNCTION"
 msgstr "deve ser super-usuário para criar uma conversão WITHOUT FUNCTION"
 
-#: commands/functioncmds.c:1426
+#: commands/functioncmds.c:1457
 #, c-format
 msgid "source and target data types are not physically compatible"
 msgstr "tipos de dado fonte e alvo não são fisicamente compatíveis"
 
-#: commands/functioncmds.c:1441
+#: commands/functioncmds.c:1472
 #, c-format
 msgid "composite data types are not binary-compatible"
 msgstr "tipos de dado compostos não são compatíveis no formato binário"
 
-#: commands/functioncmds.c:1447
+#: commands/functioncmds.c:1478
 #, c-format
 msgid "enum data types are not binary-compatible"
 msgstr "tipos de dado enum não são compatíveis no formato binário"
 
-#: commands/functioncmds.c:1453
+#: commands/functioncmds.c:1484
 #, c-format
 msgid "array data types are not binary-compatible"
 msgstr "tipos de dado matriz não são compatíveis no formato binário"
 
-#: commands/functioncmds.c:1470
+#: commands/functioncmds.c:1501
 #, c-format
 msgid "domain data types must not be marked binary-compatible"
 msgstr "tipos de dado de domínio não devem ser marcados como compatíveis no formato binário"
 
-#: commands/functioncmds.c:1480
+#: commands/functioncmds.c:1511
 #, c-format
 msgid "source data type and target data type are the same"
 msgstr "tipo de dado fonte e tipo de dado alvo são o mesmo"
 
-#: commands/functioncmds.c:1513
+#: commands/functioncmds.c:1544
 #, c-format
 msgid "cast from type %s to type %s already exists"
 msgstr "conversão do tipo %s para tipo %s já existe"
 
-#: commands/functioncmds.c:1588
+#: commands/functioncmds.c:1619
 #, c-format
 msgid "cast from type %s to type %s does not exist"
 msgstr "conversão do tipo %s para tipo %s não existe"
 
-#: commands/functioncmds.c:1637
+#: commands/functioncmds.c:1668
 #, c-format
 msgid "function %s already exists in schema \"%s\""
 msgstr "função %s já existe no esquema \"%s\""
 
-#: commands/functioncmds.c:1690
+#: commands/functioncmds.c:1721
 #, c-format
 msgid "no inline code specified"
 msgstr "código incorporado não foi especificado"
 
-#: commands/functioncmds.c:1735
+#: commands/functioncmds.c:1766
 #, c-format
 msgid "language \"%s\" does not support inline code execution"
 msgstr "linguagem \"%s\" não suporta execução de código incorporado"
 
-#: commands/indexcmds.c:159 commands/indexcmds.c:487
-#: commands/opclasscmds.c:364 commands/opclasscmds.c:784
-#: commands/opclasscmds.c:1743
+#: commands/indexcmds.c:159 commands/indexcmds.c:486
+#: commands/opclasscmds.c:370 commands/opclasscmds.c:790
+#: commands/opclasscmds.c:1749
 #, c-format
 msgid "access method \"%s\" does not exist"
 msgstr "método de acesso \"%s\" não existe"
 
-#: commands/indexcmds.c:341
+#: commands/indexcmds.c:340
 #, c-format
 msgid "must specify at least one column"
 msgstr "deve especificar pelo menos uma coluna"
 
-#: commands/indexcmds.c:345
+#: commands/indexcmds.c:344
 #, c-format
 msgid "cannot use more than %d columns in an index"
 msgstr "não pode utilizar mais do que %d colunas em um índice"
 
-#: commands/indexcmds.c:376
+#: commands/indexcmds.c:375
 #, c-format
 msgid "cannot create index on foreign table \"%s\""
 msgstr "não pode criar índice na tabela externa \"%s\""
 
-#: commands/indexcmds.c:391
+#: commands/indexcmds.c:390
 #, c-format
 msgid "cannot create indexes on temporary tables of other sessions"
 msgstr "não pode criar índices em tabelas temporárias de outras sessões"
 
-#: commands/indexcmds.c:446 commands/tablecmds.c:521 commands/tablecmds.c:8809
+#: commands/indexcmds.c:445 commands/tablecmds.c:525 commands/tablecmds.c:9101
 #, c-format
 msgid "only shared relations can be placed in pg_global tablespace"
 msgstr "somente relações compartilhadas podem ser armazenadas na tablespace pg_global"
 
-#: commands/indexcmds.c:479
+#: commands/indexcmds.c:478
 #, c-format
 msgid "substituting access method \"gist\" for obsolete method \"rtree\""
 msgstr "substituindo método de acesso \"gist\" pelo método obsoleto \"rtree\""
 
-#: commands/indexcmds.c:496
+#: commands/indexcmds.c:495
 #, c-format
 msgid "access method \"%s\" does not support unique indexes"
 msgstr "método de acesso \"%s\" não suporta índices únicos"
 
-#: commands/indexcmds.c:501
+#: commands/indexcmds.c:500
 #, c-format
 msgid "access method \"%s\" does not support multicolumn indexes"
 msgstr "método de acesso \"%s\" não suporta índices de múltiplas colunas"
 
-#: commands/indexcmds.c:506
+#: commands/indexcmds.c:505
 #, c-format
 msgid "access method \"%s\" does not support exclusion constraints"
 msgstr "método de acesso \"%s\" não suporta restrições de exclusão"
 
-#: commands/indexcmds.c:585
+#: commands/indexcmds.c:584
 #, c-format
 msgid "%s %s will create implicit index \"%s\" for table \"%s\""
 msgstr "%s %s criará índice implícito \"%s\" na tabela \"%s\""
 
-#: commands/indexcmds.c:941
+#: commands/indexcmds.c:922
 #, c-format
 msgid "functions in index predicate must be marked IMMUTABLE"
 msgstr "funções em predicado de índice devem ser IMMUTABLE"
 
-#: commands/indexcmds.c:1007 parser/parse_utilcmd.c:1802
+#: commands/indexcmds.c:988 parser/parse_utilcmd.c:1797
 #, c-format
 msgid "column \"%s\" named in key does not exist"
 msgstr "coluna \"%s\" indicada na chave não existe"
 
-#: commands/indexcmds.c:1067
+#: commands/indexcmds.c:1048
 #, c-format
 msgid "functions in index expression must be marked IMMUTABLE"
 msgstr "funções em expressão de índice devem ser IMMUTABLE"
 
-#: commands/indexcmds.c:1090
+#: commands/indexcmds.c:1071
 #, c-format
 msgid "could not determine which collation to use for index expression"
 msgstr "não pôde determinar qual ordenação utilizar para expressão do índice"
 
-#: commands/indexcmds.c:1098 commands/typecmds.c:780 parser/parse_expr.c:2261
-#: parser/parse_type.c:499 parser/parse_utilcmd.c:2653 utils/adt/misc.c:527
+#: commands/indexcmds.c:1079 commands/typecmds.c:782 parser/parse_expr.c:2278
+#: parser/parse_type.c:546 parser/parse_utilcmd.c:2648 utils/adt/misc.c:520
 #, c-format
 msgid "collations are not supported by type %s"
 msgstr "ordenações não são suportadas pelo tipo %s"
 
-#: commands/indexcmds.c:1136
+#: commands/indexcmds.c:1117
 #, c-format
 msgid "operator %s is not commutative"
 msgstr "operador %s não é comutativo"
 
-#: commands/indexcmds.c:1138
+#: commands/indexcmds.c:1119
 #, c-format
 msgid "Only commutative operators can be used in exclusion constraints."
 msgstr "Somente operadores comutativos pode ser utilizados em restrições de exclusão."
 
-#: commands/indexcmds.c:1164
+#: commands/indexcmds.c:1145
 #, c-format
 msgid "operator %s is not a member of operator family \"%s\""
 msgstr "operador %s não é um membro da família de operadores \"%s\""
 
-#: commands/indexcmds.c:1167
+#: commands/indexcmds.c:1148
 #, c-format
 msgid "The exclusion operator must be related to the index operator class for the constraint."
 msgstr "O operador de exclusão deve estar relacionado à classe de operadores do índice para a restrição."
 
-#: commands/indexcmds.c:1202
+#: commands/indexcmds.c:1183
 #, c-format
 msgid "access method \"%s\" does not support ASC/DESC options"
 msgstr "método de acesso \"%s\" não suporta opções ASC/DESC"
 
-#: commands/indexcmds.c:1207
+#: commands/indexcmds.c:1188
 #, c-format
 msgid "access method \"%s\" does not support NULLS FIRST/LAST options"
 msgstr "método de acesso \"%s\" não suporta opções NULLS FIRST/LAST"
 
-#: commands/indexcmds.c:1263 commands/typecmds.c:1885
+#: commands/indexcmds.c:1244 commands/typecmds.c:1887
 #, c-format
 msgid "data type %s has no default operator class for access method \"%s\""
 msgstr "tipo de dado %s não tem classe de operadores padrão para método de acesso \"%s\""
 
-#: commands/indexcmds.c:1265
+#: commands/indexcmds.c:1246
 #, c-format
 msgid "You must specify an operator class for the index or define a default operator class for the data type."
 msgstr "Você deve especificar uma classe de operadores para o índice ou definir uma classe de operadores padrão para o tipo de dado."
 
-#: commands/indexcmds.c:1294 commands/indexcmds.c:1302
-#: commands/opclasscmds.c:208
+#: commands/indexcmds.c:1275 commands/indexcmds.c:1283
+#: commands/opclasscmds.c:214
 #, c-format
 msgid "operator class \"%s\" does not exist for access method \"%s\""
 msgstr "classe de operadores \"%s\" não existe para método de acesso \"%s\""
 
-#: commands/indexcmds.c:1315 commands/typecmds.c:1873
+#: commands/indexcmds.c:1296 commands/typecmds.c:1875
 #, c-format
 msgid "operator class \"%s\" does not accept data type %s"
 msgstr "classe de operadores \"%s\" não aceita tipo de dado %s"
 
-#: commands/indexcmds.c:1405
+#: commands/indexcmds.c:1386
 #, c-format
 msgid "there are multiple default operator classes for data type %s"
 msgstr "há múltiplas classes de operadores padrão para tipo de dado %s"
 
-#: commands/indexcmds.c:1781
+#: commands/indexcmds.c:1762
 #, c-format
 msgid "table \"%s\" has no indexes"
 msgstr "tabela \"%s\" não tem índices"
 
-#: commands/indexcmds.c:1811
+#: commands/indexcmds.c:1792
 #, c-format
 msgid "can only reindex the currently open database"
 msgstr "só pode reindexar o banco de dados atualmente aberto"
 
-#: commands/indexcmds.c:1899
+#: commands/indexcmds.c:1881
 #, c-format
 msgid "table \"%s.%s\" was reindexed"
 msgstr "tabela \"%s.%s\" foi reindexada"
 
-#: commands/opclasscmds.c:132
+#: commands/matview.c:178
+#, c-format
+msgid "CONCURRENTLY cannot be used when the materialized view is not populated"
+msgstr ""
+
+#: commands/matview.c:184
+#, c-format
+msgid "CONCURRENTLY and WITH NO DATA options cannot be used together"
+msgstr "opções CONCURRENTLY  e WITH NO DATA não podem ser utilizadas juntas"
+
+#: commands/matview.c:591
+#, c-format
+msgid "new data for \"%s\" contains duplicate rows without any NULL columns"
+msgstr ""
+
+#: commands/matview.c:593
+#, c-format
+msgid "Row: %s"
+msgstr "Registro: %s"
+
+#: commands/matview.c:681
+#, fuzzy, c-format
+msgid "cannot refresh materialized view \"%s\" concurrently"
+msgstr "não pode atualizar visão materializada \"%s\" concorrentemente"
+
+#: commands/matview.c:683
+#, fuzzy, c-format
+#| msgid "Create a UNIQUE index with no WHERE clause on one or more columns of the materialized view."
+msgid "Create a unique index with no WHERE clause on one or more columns of the materialized view."
+msgstr "Crie um índice UNIQUE sem cláusula WHERE em uma ou mais colunas da visão materializada."
+
+#: commands/opclasscmds.c:135
 #, c-format
 msgid "operator family \"%s\" does not exist for access method \"%s\""
 msgstr "família de operadores \"%s\" não existe para método de acesso \"%s\""
 
-#: commands/opclasscmds.c:267
+#: commands/opclasscmds.c:273
 #, c-format
 msgid "operator family \"%s\" for access method \"%s\" already exists"
 msgstr "família de operadores \"%s\" para método de acesso \"%s\" já existe"
 
-#: commands/opclasscmds.c:403
+#: commands/opclasscmds.c:409
 #, c-format
 msgid "must be superuser to create an operator class"
 msgstr "deve ser super-usuário para criar uma classe de operadores"
 
-#: commands/opclasscmds.c:474 commands/opclasscmds.c:860
-#: commands/opclasscmds.c:990
+#: commands/opclasscmds.c:480 commands/opclasscmds.c:866
+#: commands/opclasscmds.c:996
 #, c-format
 msgid "invalid operator number %d, must be between 1 and %d"
 msgstr "número de operadores %d é inválido, deve ser entre 1 e %d"
 
-#: commands/opclasscmds.c:525 commands/opclasscmds.c:911
-#: commands/opclasscmds.c:1005
+#: commands/opclasscmds.c:531 commands/opclasscmds.c:917
+#: commands/opclasscmds.c:1011
 #, c-format
 msgid "invalid procedure number %d, must be between 1 and %d"
 msgstr "número de procedimentos %d é inválido, deve ser entre 1 e %d"
 
-#: commands/opclasscmds.c:555
+#: commands/opclasscmds.c:561
 #, c-format
 msgid "storage type specified more than once"
 msgstr "tipo de armazenamento especificado mais de uma vez"
 
-#: commands/opclasscmds.c:582
+#: commands/opclasscmds.c:588
 #, c-format
 msgid "storage type cannot be different from data type for access method \"%s\""
 msgstr "tipo de armazenamento não pode ser diferente do tipo de dado para método de acesso \"%s\""
 
-#: commands/opclasscmds.c:598
+#: commands/opclasscmds.c:604
 #, c-format
 msgid "operator class \"%s\" for access method \"%s\" already exists"
 msgstr "classe de operadores \"%s\" para método de acesso \"%s\" já existe"
 
-#: commands/opclasscmds.c:626
+#: commands/opclasscmds.c:632
 #, c-format
 msgid "could not make operator class \"%s\" be default for type %s"
 msgstr "não pôde fazer classe de operadores \"%s\" ser a padrão para tipo %s"
 
-#: commands/opclasscmds.c:629
+#: commands/opclasscmds.c:635
 #, c-format
 msgid "Operator class \"%s\" already is the default."
 msgstr "Classe de operadores \"%s\" já é a padrão."
 
-#: commands/opclasscmds.c:754
+#: commands/opclasscmds.c:760
 #, c-format
 msgid "must be superuser to create an operator family"
 msgstr "deve ser super-usuário para criar uma família de operadores"
 
-#: commands/opclasscmds.c:810
+#: commands/opclasscmds.c:816
 #, c-format
 msgid "must be superuser to alter an operator family"
 msgstr "deve ser super-usuário para alterar uma família de operadores"
 
-#: commands/opclasscmds.c:876
+#: commands/opclasscmds.c:882
 #, c-format
 msgid "operator argument types must be specified in ALTER OPERATOR FAMILY"
 msgstr "tipos dos argumentos do operador devem ser especificados em ALTER OPERATOR FAMILY"
 
-#: commands/opclasscmds.c:940
+#: commands/opclasscmds.c:946
 #, c-format
 msgid "STORAGE cannot be specified in ALTER OPERATOR FAMILY"
 msgstr "STORAGE não pode ser especificado em ALTER OPERATOR FAMILY"
 
-#: commands/opclasscmds.c:1056
+#: commands/opclasscmds.c:1062
 #, c-format
 msgid "one or two argument types must be specified"
 msgstr "um ou dois tipos de argumento devem ser especificados"
 
-#: commands/opclasscmds.c:1082
+#: commands/opclasscmds.c:1088
 #, c-format
 msgid "index operators must be binary"
 msgstr "operadores de índice devem ser binários"
 
-#: commands/opclasscmds.c:1107
+#: commands/opclasscmds.c:1113
 #, c-format
 msgid "access method \"%s\" does not support ordering operators"
 msgstr "método de acesso \"%s\" não suporta operadores de ordenação"
 
-#: commands/opclasscmds.c:1120
+#: commands/opclasscmds.c:1126
 #, c-format
 msgid "index search operators must return boolean"
 msgstr "operadores de busca no índice devem retornar booleano"
 
-#: commands/opclasscmds.c:1162
+#: commands/opclasscmds.c:1168
 #, c-format
 msgid "btree comparison procedures must have two arguments"
 msgstr "procedimentos de comparação de árvore B devem ter dois argumentos"
 
-#: commands/opclasscmds.c:1166
+#: commands/opclasscmds.c:1172
 #, c-format
 msgid "btree comparison procedures must return integer"
 msgstr "procedimentos de comparação de árvore B devem retornar inteiro"
 
-#: commands/opclasscmds.c:1183
+#: commands/opclasscmds.c:1189
 #, c-format
 msgid "btree sort support procedures must accept type \"internal\""
 msgstr "procedimentos de suporte a ordenação de árvore B devem aceitar tipo \"internal\""
 
-#: commands/opclasscmds.c:1187
+#: commands/opclasscmds.c:1193
 #, c-format
 msgid "btree sort support procedures must return void"
 msgstr "procedimentos de suporte a ordenação de árvore B devem retornar void"
 
-#: commands/opclasscmds.c:1199
+#: commands/opclasscmds.c:1205
 #, c-format
 msgid "hash procedures must have one argument"
 msgstr "procedimentos hash devem ter um argumento"
 
-#: commands/opclasscmds.c:1203
+#: commands/opclasscmds.c:1209
 #, c-format
 msgid "hash procedures must return integer"
 msgstr "procedimentos hash devem retornar inteiro"
 
-#: commands/opclasscmds.c:1227
+#: commands/opclasscmds.c:1233
 #, c-format
 msgid "associated data types must be specified for index support procedure"
 msgstr "tipos de dados associados devem ser especificados para procedimento de suporte ao índice"
 
-#: commands/opclasscmds.c:1252
+#: commands/opclasscmds.c:1258
 #, c-format
 msgid "procedure number %d for (%s,%s) appears more than once"
 msgstr "procedimento número %d para (%s,%s) aparece mais de uma vez"
 
-#: commands/opclasscmds.c:1259
+#: commands/opclasscmds.c:1265
 #, c-format
 msgid "operator number %d for (%s,%s) appears more than once"
 msgstr "operador número %d  para (%s,%s) aparece mais de uma vez"
 
-#: commands/opclasscmds.c:1308
+#: commands/opclasscmds.c:1314
 #, c-format
 msgid "operator %d(%s,%s) already exists in operator family \"%s\""
 msgstr "operador %d(%s,%s) já existe na família de operadores \"%s\""
 
-#: commands/opclasscmds.c:1424
+#: commands/opclasscmds.c:1430
 #, c-format
 msgid "function %d(%s,%s) already exists in operator family \"%s\""
 msgstr "função %d(%s,%s) já existe na família de operadores \"%s\""
 
-#: commands/opclasscmds.c:1514
+#: commands/opclasscmds.c:1520
 #, c-format
 msgid "operator %d(%s,%s) does not exist in operator family \"%s\""
 msgstr "operador %d(%s,%s) não existe na família de operadores \"%s\""
 
-#: commands/opclasscmds.c:1554
+#: commands/opclasscmds.c:1560
 #, c-format
 msgid "function %d(%s,%s) does not exist in operator family \"%s\""
 msgstr "função %d(%s,%s) não existe na família de operadores \"%s\""
 
-#: commands/opclasscmds.c:1699
+#: commands/opclasscmds.c:1705
 #, c-format
 msgid "operator class \"%s\" for access method \"%s\" already exists in schema \"%s\""
 msgstr "classe de operadores \"%s\" para método de acesso \"%s\" já existe no esquema \"%s\""
 
-#: commands/opclasscmds.c:1722
+#: commands/opclasscmds.c:1728
 #, c-format
 msgid "operator family \"%s\" for access method \"%s\" already exists in schema \"%s\""
 msgstr "família de operadores \"%s\" para método de acesso \"%s\" já existe no esquema \"%s\""
@@ -5930,7 +6203,7 @@ msgid "invalid cursor name: must not be empty"
 msgstr "nome do cursor é inválido: não deve ser vazio"
 
 #: commands/portalcmds.c:168 commands/portalcmds.c:222
-#: executor/execCurrent.c:67 utils/adt/xml.c:2395 utils/adt/xml.c:2562
+#: executor/execCurrent.c:67 utils/adt/xml.c:2386 utils/adt/xml.c:2553
 #, c-format
 msgid "cursor \"%s\" does not exist"
 msgstr "cursor \"%s\" não existe"
@@ -5940,7 +6213,7 @@ msgstr "cursor \"%s\" não existe"
 msgid "portal \"%s\" cannot be run"
 msgstr "portal \"%s\" não pode ser executado"
 
-#: commands/portalcmds.c:415
+#: commands/portalcmds.c:411
 #, c-format
 msgid "could not reposition held cursor"
 msgstr "não pôde reposicionar cursor aberto"
@@ -5950,7 +6223,7 @@ msgstr "não pôde reposicionar cursor aberto"
 msgid "invalid statement name: must not be empty"
 msgstr "nome de comando é inválido: não deve ser vazio"
 
-#: commands/prepare.c:129 parser/parse_param.c:304 tcop/postgres.c:1299
+#: commands/prepare.c:129 parser/parse_param.c:304 tcop/postgres.c:1296
 #, c-format
 msgid "could not determine data type of parameter $%d"
 msgstr "não pôde determinar o tipo de dado do parâmetro $%d"
@@ -6055,275 +6328,269 @@ msgstr "deve especificar fornecedor quando múltiplos fornecedores de rótulo de
 msgid "security label provider \"%s\" is not loaded"
 msgstr "fornecedor de rótulo de segurança \"%s\" não foi carregado"
 
-#: commands/sequence.c:127
+#: commands/sequence.c:123
 #, c-format
 msgid "unlogged sequences are not supported"
 msgstr "sequências unlogged não são suportadas"
 
-#: commands/sequence.c:425 commands/tablecmds.c:2293 commands/tablecmds.c:2472
-#: commands/tablecmds.c:9938 tcop/utility.c:999
-#, c-format
-msgid "relation \"%s\" does not exist, skipping"
-msgstr "relação \"%s\" não existe, ignorando"
-
-#: commands/sequence.c:643
+#: commands/sequence.c:618
 #, c-format
 msgid "nextval: reached maximum value of sequence \"%s\" (%s)"
 msgstr "nextval: valor máximo da sequência \"%s\" foi alcançado (%s)"
 
-#: commands/sequence.c:666
+#: commands/sequence.c:641
 #, c-format
 msgid "nextval: reached minimum value of sequence \"%s\" (%s)"
 msgstr "nextval: valor mínimo da sequência \"%s\" foi alcançado (%s)"
 
-#: commands/sequence.c:779
+#: commands/sequence.c:754
 #, c-format
 msgid "currval of sequence \"%s\" is not yet defined in this session"
 msgstr "valor atual da sequência \"%s\" ainda não foi definido nesta sessão"
 
-#: commands/sequence.c:798 commands/sequence.c:804
+#: commands/sequence.c:773 commands/sequence.c:779
 #, c-format
 msgid "lastval is not yet defined in this session"
 msgstr "lastval ainda não foi definido nesta sessão"
 
-#: commands/sequence.c:873
+#: commands/sequence.c:848
 #, c-format
 msgid "setval: value %s is out of bounds for sequence \"%s\" (%s..%s)"
 msgstr "setval: valor %s está fora do intervalo da sequência \"%s\" (%s..%s)"
 
-#: commands/sequence.c:1242
+#: commands/sequence.c:1224
 #, c-format
 msgid "INCREMENT must not be zero"
 msgstr "INCREMENT não deve ser zero"
 
-#: commands/sequence.c:1298
+#: commands/sequence.c:1280
 #, c-format
 msgid "MINVALUE (%s) must be less than MAXVALUE (%s)"
 msgstr "MINVALUE (%s) deve ser menor do que MAXVALUE (%s)"
 
-#: commands/sequence.c:1323
+#: commands/sequence.c:1305
 #, c-format
 msgid "START value (%s) cannot be less than MINVALUE (%s)"
 msgstr "valor de START (%s) não pode ser menor do que MINVALUE (%s)"
 
-#: commands/sequence.c:1335
+#: commands/sequence.c:1317
 #, c-format
 msgid "START value (%s) cannot be greater than MAXVALUE (%s)"
 msgstr "valor de START (%s) não pode ser maior do que MAXVALUE (%s)"
 
-#: commands/sequence.c:1365
+#: commands/sequence.c:1347
 #, c-format
 msgid "RESTART value (%s) cannot be less than MINVALUE (%s)"
 msgstr "valor de RESTART (%s) não pode ser menor do que MINVALUE (%s)"
 
-#: commands/sequence.c:1377
+#: commands/sequence.c:1359
 #, c-format
 msgid "RESTART value (%s) cannot be greater than MAXVALUE (%s)"
 msgstr "valor de RESTART (%s) não pode ser maior do que MAXVALUE (%s)"
 
-#: commands/sequence.c:1392
+#: commands/sequence.c:1374
 #, c-format
 msgid "CACHE (%s) must be greater than zero"
 msgstr "CACHE (%s) deve ser maior do que zero"
 
-#: commands/sequence.c:1424
+#: commands/sequence.c:1406
 #, c-format
 msgid "invalid OWNED BY option"
 msgstr "opção de OWNED BY é inválida"
 
-#: commands/sequence.c:1425
+#: commands/sequence.c:1407
 #, c-format
 msgid "Specify OWNED BY table.column or OWNED BY NONE."
 msgstr "Especifique OWNED BY tabela.coluna ou OWNED BY NONE."
 
-#: commands/sequence.c:1448
+#: commands/sequence.c:1430
 #, c-format
 msgid "referenced relation \"%s\" is not a table or foreign table"
 msgstr "relação referenciada \"%s\" não é uma tabela ou uma tabela externa"
 
-#: commands/sequence.c:1455
+#: commands/sequence.c:1437
 #, c-format
 msgid "sequence must have same owner as table it is linked to"
 msgstr "sequência deve ter mesmo dono da tabela que ela está ligada"
 
-#: commands/sequence.c:1459
+#: commands/sequence.c:1441
 #, c-format
 msgid "sequence must be in same schema as table it is linked to"
 msgstr "sequência deve estar no mesmo esquema da tabela que ela está ligada"
 
-#: commands/tablecmds.c:205
+#: commands/tablecmds.c:206
 #, c-format
 msgid "table \"%s\" does not exist"
 msgstr "tabela \"%s\" não existe"
 
-#: commands/tablecmds.c:206
+#: commands/tablecmds.c:207
 #, c-format
 msgid "table \"%s\" does not exist, skipping"
 msgstr "tabela \"%s\" não existe, ignorando"
 
-#: commands/tablecmds.c:208
+#: commands/tablecmds.c:209
 msgid "Use DROP TABLE to remove a table."
 msgstr "Use DROP TABLE para remover uma tabela."
 
-#: commands/tablecmds.c:211
+#: commands/tablecmds.c:212
 #, c-format
 msgid "sequence \"%s\" does not exist"
 msgstr "sequência \"%s\" não existe"
 
-#: commands/tablecmds.c:212
+#: commands/tablecmds.c:213
 #, c-format
 msgid "sequence \"%s\" does not exist, skipping"
 msgstr "sequência \"%s\" não existe, ignorando"
 
-#: commands/tablecmds.c:214
+#: commands/tablecmds.c:215
 msgid "Use DROP SEQUENCE to remove a sequence."
 msgstr "Use DROP SEQUENCE para remover uma sequência."
 
-#: commands/tablecmds.c:217
+#: commands/tablecmds.c:218
 #, c-format
 msgid "view \"%s\" does not exist"
 msgstr "visão \"%s\" não existe"
 
-#: commands/tablecmds.c:218
+#: commands/tablecmds.c:219
 #, c-format
 msgid "view \"%s\" does not exist, skipping"
 msgstr "visão \"%s\" não existe, ignorando"
 
-#: commands/tablecmds.c:220
+#: commands/tablecmds.c:221
 msgid "Use DROP VIEW to remove a view."
 msgstr "Use DROP VIEW para remover uma visão."
 
-#: commands/tablecmds.c:223
+#: commands/tablecmds.c:224
 #, c-format
 msgid "materialized view \"%s\" does not exist"
 msgstr "visão materializada \"%s\" não existe"
 
-#: commands/tablecmds.c:224
+#: commands/tablecmds.c:225
 #, c-format
 msgid "materialized view \"%s\" does not exist, skipping"
 msgstr "visão materializada \"%s\" não existe, ignorando"
 
-#: commands/tablecmds.c:226
+#: commands/tablecmds.c:227
 msgid "Use DROP MATERIALIZED VIEW to remove a materialized view."
 msgstr "Use DROP MATERIALIZED VIEW para remover uma visão materializada."
 
-#: commands/tablecmds.c:229 parser/parse_utilcmd.c:1553
+#: commands/tablecmds.c:230 parser/parse_utilcmd.c:1548
 #, c-format
 msgid "index \"%s\" does not exist"
 msgstr "índice \"%s\" não existe"
 
-#: commands/tablecmds.c:230
+#: commands/tablecmds.c:231
 #, c-format
 msgid "index \"%s\" does not exist, skipping"
 msgstr "índice \"%s\" não existe, ignorando"
 
-#: commands/tablecmds.c:232
+#: commands/tablecmds.c:233
 msgid "Use DROP INDEX to remove an index."
 msgstr "Use DROP INDEX para remover um índice."
 
-#: commands/tablecmds.c:237
+#: commands/tablecmds.c:238
 #, c-format
 msgid "\"%s\" is not a type"
 msgstr "\"%s\" não é um tipo"
 
-#: commands/tablecmds.c:238
+#: commands/tablecmds.c:239
 msgid "Use DROP TYPE to remove a type."
 msgstr "use DROP TYPE para remover um tipo."
 
-#: commands/tablecmds.c:241 commands/tablecmds.c:7820
-#: commands/tablecmds.c:9870
+#: commands/tablecmds.c:242 commands/tablecmds.c:8076
+#: commands/tablecmds.c:10557
 #, c-format
 msgid "foreign table \"%s\" does not exist"
 msgstr "tabela externa \"%s\" não existe"
 
-#: commands/tablecmds.c:242
+#: commands/tablecmds.c:243
 #, c-format
 msgid "foreign table \"%s\" does not exist, skipping"
 msgstr "tabela externa \"%s\" não existe, ignorando"
 
-#: commands/tablecmds.c:244
+#: commands/tablecmds.c:245
 msgid "Use DROP FOREIGN TABLE to remove a foreign table."
 msgstr "Use DROP FOREIGN TABLE para remover uma tabela externa."
 
-#: commands/tablecmds.c:465
+#: commands/tablecmds.c:469
 #, c-format
 msgid "ON COMMIT can only be used on temporary tables"
 msgstr "ON COMMIT só pode ser utilizado em tabelas temporárias"
 
-#: commands/tablecmds.c:469 parser/parse_utilcmd.c:528
-#: parser/parse_utilcmd.c:539 parser/parse_utilcmd.c:556
-#: parser/parse_utilcmd.c:618
+#: commands/tablecmds.c:473 parser/parse_utilcmd.c:521
+#: parser/parse_utilcmd.c:532 parser/parse_utilcmd.c:549
+#: parser/parse_utilcmd.c:611
 #, c-format
 msgid "constraints are not supported on foreign tables"
 msgstr "restrições não são suportadas em tabelas externas"
 
-#: commands/tablecmds.c:489
+#: commands/tablecmds.c:493
 #, c-format
 msgid "cannot create temporary table within security-restricted operation"
 msgstr "não pode criar tabela temporária em operação com restrição de segurança"
 
-#: commands/tablecmds.c:765
+#: commands/tablecmds.c:789
 #, c-format
 msgid "DROP INDEX CONCURRENTLY does not support dropping multiple objects"
 msgstr "DROP INDEX CONCURRENTLY não suporta múltiplos objetos"
 
-#: commands/tablecmds.c:769
+#: commands/tablecmds.c:793
 #, c-format
 msgid "DROP INDEX CONCURRENTLY does not support CASCADE"
 msgstr "DROP INDEX CONCURRENTLY não suporta CASCADE"
 
-#: commands/tablecmds.c:914 commands/tablecmds.c:1252
-#: commands/tablecmds.c:2108 commands/tablecmds.c:3999
-#: commands/tablecmds.c:5828 commands/tablecmds.c:10483
-#: commands/tablecmds.c:10518 commands/trigger.c:207 commands/trigger.c:1092
-#: commands/trigger.c:1198 rewrite/rewriteDefine.c:274
-#: rewrite/rewriteDefine.c:867
+#: commands/tablecmds.c:938 commands/tablecmds.c:1276
+#: commands/tablecmds.c:2133 commands/tablecmds.c:4112
+#: commands/tablecmds.c:5942 commands/tablecmds.c:11170
+#: commands/tablecmds.c:11205 commands/trigger.c:232 commands/trigger.c:1118
+#: commands/trigger.c:1226 rewrite/rewriteDefine.c:271
+#: rewrite/rewriteDefine.c:887
 #, c-format
 msgid "permission denied: \"%s\" is a system catalog"
 msgstr "permissão negada: \"%s\" é um catálogo do sistema"
 
-#: commands/tablecmds.c:1028
+#: commands/tablecmds.c:1052
 #, c-format
 msgid "truncate cascades to table \"%s\""
 msgstr "truncando em cascata tabela \"%s\""
 
-#: commands/tablecmds.c:1262
+#: commands/tablecmds.c:1286
 #, c-format
 msgid "cannot truncate temporary tables of other sessions"
 msgstr "não pode truncar tabelas temporárias de outras sessões"
 
-#: commands/tablecmds.c:1467 parser/parse_utilcmd.c:1765
+#: commands/tablecmds.c:1491 parser/parse_utilcmd.c:1760
 #, c-format
 msgid "inherited relation \"%s\" is not a table"
 msgstr "relação herdada \"%s\" não é uma tabela"
 
-#: commands/tablecmds.c:1474 commands/tablecmds.c:9055
+#: commands/tablecmds.c:1498 commands/tablecmds.c:9531
 #, c-format
 msgid "cannot inherit from temporary relation \"%s\""
 msgstr "não pode herdar de uma tabela temporária \"%s\""
 
-#: commands/tablecmds.c:1482 commands/tablecmds.c:9063
+#: commands/tablecmds.c:1506 commands/tablecmds.c:9539
 #, c-format
 msgid "cannot inherit from temporary relation of another session"
 msgstr "não pode herdar de tabela temporária de outra sessão"
 
-#: commands/tablecmds.c:1498 commands/tablecmds.c:9097
+#: commands/tablecmds.c:1522 commands/tablecmds.c:9573
 #, c-format
 msgid "relation \"%s\" would be inherited from more than once"
 msgstr "relação \"%s\" seria herdada de mais de uma vez"
 
-#: commands/tablecmds.c:1546
+#: commands/tablecmds.c:1570
 #, c-format
 msgid "merging multiple inherited definitions of column \"%s\""
 msgstr "juntando múltiplas definições herdadas da coluna \"%s\""
 
-#: commands/tablecmds.c:1554
+#: commands/tablecmds.c:1578
 #, c-format
 msgid "inherited column \"%s\" has a type conflict"
 msgstr "coluna herdada \"%s\" tem um conflito de tipo"
 
-#: commands/tablecmds.c:1556 commands/tablecmds.c:1577
-#: commands/tablecmds.c:1764 commands/tablecmds.c:1786
+#: commands/tablecmds.c:1580 commands/tablecmds.c:1601
+#: commands/tablecmds.c:1789 commands/tablecmds.c:1811
 #: parser/parse_coerce.c:1592 parser/parse_coerce.c:1612
 #: parser/parse_coerce.c:1632 parser/parse_coerce.c:1677
 #: parser/parse_coerce.c:1714 parser/parse_param.c:218
@@ -6331,920 +6598,1015 @@ msgstr "coluna herdada \"%s\" tem um conflito de tipo"
 msgid "%s versus %s"
 msgstr "%s versus %s"
 
-#: commands/tablecmds.c:1563
+#: commands/tablecmds.c:1587
 #, c-format
 msgid "inherited column \"%s\" has a collation conflict"
 msgstr "coluna herdada \"%s\" tem um conflito de ordenação"
 
-#: commands/tablecmds.c:1565 commands/tablecmds.c:1774
-#: commands/tablecmds.c:4423
+#: commands/tablecmds.c:1589 commands/tablecmds.c:1799
+#: commands/tablecmds.c:4536
 #, c-format
 msgid "\"%s\" versus \"%s\""
 msgstr "\"%s\" versus \"%s\""
 
-#: commands/tablecmds.c:1575
+#: commands/tablecmds.c:1599
 #, c-format
 msgid "inherited column \"%s\" has a storage parameter conflict"
 msgstr "coluna herdada \"%s\" tem um conflito de parâmetro de armazenamento"
 
-#: commands/tablecmds.c:1687 parser/parse_utilcmd.c:859
-#: parser/parse_utilcmd.c:1200 parser/parse_utilcmd.c:1276
+#: commands/tablecmds.c:1712 parser/parse_utilcmd.c:853
+#: parser/parse_utilcmd.c:1195 parser/parse_utilcmd.c:1271
 #, c-format
 msgid "cannot convert whole-row table reference"
 msgstr "não pode converter referência a todo registro da tabela"
 
-#: commands/tablecmds.c:1688 parser/parse_utilcmd.c:860
+#: commands/tablecmds.c:1713 parser/parse_utilcmd.c:854
 #, c-format
 msgid "Constraint \"%s\" contains a whole-row reference to table \"%s\"."
 msgstr "Restrição \"%s\" contém referência a todo registro da tabela \"%s\"."
 
-#: commands/tablecmds.c:1754
+#: commands/tablecmds.c:1779
 #, c-format
 msgid "merging column \"%s\" with inherited definition"
 msgstr "juntando coluna \"%s\" com definição herdada"
 
-#: commands/tablecmds.c:1762
+#: commands/tablecmds.c:1787
 #, c-format
 msgid "column \"%s\" has a type conflict"
 msgstr "coluna \"%s\" tem um conflito de tipo"
 
-#: commands/tablecmds.c:1772
+#: commands/tablecmds.c:1797
 #, c-format
 msgid "column \"%s\" has a collation conflict"
 msgstr "coluna \"%s\" tem um conflito de ordenação"
 
-#: commands/tablecmds.c:1784
+#: commands/tablecmds.c:1809
 #, c-format
 msgid "column \"%s\" has a storage parameter conflict"
 msgstr "coluna \"%s\" tem um conflito de parâmetro de armazenamento"
 
-#: commands/tablecmds.c:1836
+#: commands/tablecmds.c:1861
 #, c-format
 msgid "column \"%s\" inherits conflicting default values"
 msgstr "coluna \"%s\" herdou valores padrão conflitantes"
 
-#: commands/tablecmds.c:1838
+#: commands/tablecmds.c:1863
 #, c-format
 msgid "To resolve the conflict, specify a default explicitly."
 msgstr "Para resolver o conflito, especifique um padrão explicitamente."
 
-#: commands/tablecmds.c:1885
+#: commands/tablecmds.c:1910
 #, c-format
 msgid "check constraint name \"%s\" appears multiple times but with different expressions"
 msgstr "nome da restrição de verificação \"%s\" aparece múltiplas vezes mas com diferentes expressões"
 
-#: commands/tablecmds.c:2079
+#: commands/tablecmds.c:2104
 #, c-format
 msgid "cannot rename column of typed table"
 msgstr "não pode renomear coluna de tabela tipada"
 
-#: commands/tablecmds.c:2096
+#: commands/tablecmds.c:2121
 #, c-format
 msgid "\"%s\" is not a table, view, materialized view, composite type, index, or foreign table"
 msgstr "\"%s\" não é uma tabela, visão, visão materializada, tipo composto, índice ou tabela externa"
 
-#: commands/tablecmds.c:2188
+#: commands/tablecmds.c:2213
 #, c-format
 msgid "inherited column \"%s\" must be renamed in child tables too"
 msgstr "coluna herdada \"%s\" deve ser renomeada nas tabelas descendentes também"
 
-#: commands/tablecmds.c:2220
+#: commands/tablecmds.c:2245
 #, c-format
 msgid "cannot rename system column \"%s\""
 msgstr "não pode renomear coluna do sistema \"%s\""
 
-#: commands/tablecmds.c:2235
+#: commands/tablecmds.c:2260
 #, c-format
 msgid "cannot rename inherited column \"%s\""
 msgstr "não pode renomear coluna herdada \"%s\""
 
-#: commands/tablecmds.c:2382
+#: commands/tablecmds.c:2407
 #, c-format
 msgid "inherited constraint \"%s\" must be renamed in child tables too"
 msgstr "restrição herdada \"%s\" deve ser renomeada nas tabelas descendentes também"
 
-#: commands/tablecmds.c:2389
+#: commands/tablecmds.c:2414
 #, c-format
 msgid "cannot rename inherited constraint \"%s\""
 msgstr "não pode renomear restrição herdada \"%s\""
 
 #. translator: first %s is a SQL command, eg ALTER TABLE
-#: commands/tablecmds.c:2600
+#: commands/tablecmds.c:2628
 #, c-format
 msgid "cannot %s \"%s\" because it is being used by active queries in this session"
 msgstr "não pode executar %s \"%s\" porque ela está sendo utilizada por consultas ativas nessa sessão"
 
 #. translator: first %s is a SQL command, eg ALTER TABLE
-#: commands/tablecmds.c:2609
+#: commands/tablecmds.c:2637
 #, c-format
 msgid "cannot %s \"%s\" because it has pending trigger events"
 msgstr "não pode executar %s \"%s\" porque ela tem eventos de gatilho pendentes"
 
-#: commands/tablecmds.c:3510
+#: commands/tablecmds.c:3607
 #, c-format
 msgid "cannot rewrite system relation \"%s\""
 msgstr "não pode reescrever relação do sistema \"%s\""
 
-#: commands/tablecmds.c:3520
+#: commands/tablecmds.c:3613
+#, c-format
+msgid "cannot rewrite table \"%s\" used as a catalog table"
+msgstr "não pôde reescrever tabela \"%s\" utilizada como tabela de catálogo"
+
+#: commands/tablecmds.c:3623
 #, c-format
 msgid "cannot rewrite temporary tables of other sessions"
 msgstr "não pode reescrever tabelas temporárias de outras sessões"
 
-#: commands/tablecmds.c:3749
+#: commands/tablecmds.c:3854
 #, c-format
 msgid "rewriting table \"%s\""
 msgstr "reescrevendo tabela \"%s\""
 
-#: commands/tablecmds.c:3753
+#: commands/tablecmds.c:3858
 #, c-format
 msgid "verifying table \"%s\""
 msgstr "verificando tabela \"%s\""
 
-#: commands/tablecmds.c:3860
+#: commands/tablecmds.c:3972
 #, c-format
 msgid "column \"%s\" contains null values"
 msgstr "coluna \"%s\" contém valores nulos"
 
-#: commands/tablecmds.c:3875 commands/tablecmds.c:6733
+#: commands/tablecmds.c:3987 commands/tablecmds.c:6985
 #, c-format
 msgid "check constraint \"%s\" is violated by some row"
 msgstr "restrição de verificação \"%s\" foi violada por algum registro"
 
-#: commands/tablecmds.c:4020 commands/trigger.c:201 commands/trigger.c:1086
-#: commands/trigger.c:1190 rewrite/rewriteDefine.c:268
-#: rewrite/rewriteDefine.c:862
+#: commands/tablecmds.c:4133 commands/trigger.c:226
+#: rewrite/rewriteDefine.c:265 rewrite/rewriteDefine.c:882
 #, c-format
 msgid "\"%s\" is not a table or view"
 msgstr "\"%s\" não é uma tabela ou visão"
 
-#: commands/tablecmds.c:4023
+#: commands/tablecmds.c:4136
 #, c-format
 msgid "\"%s\" is not a table, view, materialized view, or index"
 msgstr "\"%s\" não é uma tabela, visão, visão materializada ou índice"
 
-#: commands/tablecmds.c:4029
+#: commands/tablecmds.c:4142
 #, c-format
 msgid "\"%s\" is not a table, materialized view, or index"
 msgstr "\"%s\" não é uma tabela, visão materializada ou índice"
 
-#: commands/tablecmds.c:4032
+#: commands/tablecmds.c:4145
 #, c-format
 msgid "\"%s\" is not a table or foreign table"
 msgstr "\"%s\" não é uma tabela ou tabela externa"
 
-#: commands/tablecmds.c:4035
+#: commands/tablecmds.c:4148
 #, c-format
 msgid "\"%s\" is not a table, composite type, or foreign table"
 msgstr "\"%s\" não é uma tabela, tipo composto ou tabela externa"
 
-#: commands/tablecmds.c:4038
+#: commands/tablecmds.c:4151
 #, c-format
 msgid "\"%s\" is not a table, materialized view, composite type, or foreign table"
 msgstr "\"%s\" não é uma tabela, visão materializada, tipo composto ou tabela externa"
 
-#: commands/tablecmds.c:4048
+#: commands/tablecmds.c:4161
 #, c-format
 msgid "\"%s\" is of the wrong type"
 msgstr "\"%s\" é de um tipo incorreto"
 
-#: commands/tablecmds.c:4198 commands/tablecmds.c:4205
+#: commands/tablecmds.c:4311 commands/tablecmds.c:4318
 #, c-format
 msgid "cannot alter type \"%s\" because column \"%s.%s\" uses it"
 msgstr "não pode alterar tipo \"%s\" porque coluna \"%s.%s\" utiliza-o"
 
-#: commands/tablecmds.c:4212
+#: commands/tablecmds.c:4325
 #, c-format
 msgid "cannot alter foreign table \"%s\" because column \"%s.%s\" uses its row type"
 msgstr "não pode alterar tabela externa \"%s\" porque coluna \"%s.%s\" utiliza seu tipo"
 
-#: commands/tablecmds.c:4219
+#: commands/tablecmds.c:4332
 #, c-format
 msgid "cannot alter table \"%s\" because column \"%s.%s\" uses its row type"
 msgstr "não pode alterar tabela \"%s\" porque coluna \"%s.%s\" utiliza seu tipo"
 
-#: commands/tablecmds.c:4281
+#: commands/tablecmds.c:4394
 #, c-format
 msgid "cannot alter type \"%s\" because it is the type of a typed table"
 msgstr "não pode alterar tipo \"%s\" porque ele é um tipo de uma tabela tipada"
 
-#: commands/tablecmds.c:4283
+#: commands/tablecmds.c:4396
 #, c-format
 msgid "Use ALTER ... CASCADE to alter the typed tables too."
 msgstr "Utilize ALTER ... CASCADE para alterar as tabelas tipadas também."
 
-#: commands/tablecmds.c:4327
+#: commands/tablecmds.c:4440
 #, c-format
 msgid "type %s is not a composite type"
 msgstr "tipo %s não é um tipo composto"
 
-#: commands/tablecmds.c:4353
+#: commands/tablecmds.c:4466
 #, c-format
 msgid "cannot add column to typed table"
 msgstr "não pode adicionar coluna a tabela tipada"
 
-#: commands/tablecmds.c:4415 commands/tablecmds.c:9251
+#: commands/tablecmds.c:4528 commands/tablecmds.c:9727
 #, c-format
 msgid "child table \"%s\" has different type for column \"%s\""
 msgstr "tabela descendente \"%s\" tem tipo diferente da coluna \"%s\""
 
-#: commands/tablecmds.c:4421 commands/tablecmds.c:9258
+#: commands/tablecmds.c:4534 commands/tablecmds.c:9734
 #, c-format
 msgid "child table \"%s\" has different collation for column \"%s\""
 msgstr "tabela descendente \"%s\" tem ordenação diferente da coluna \"%s\""
 
-#: commands/tablecmds.c:4431
+#: commands/tablecmds.c:4544
 #, c-format
 msgid "child table \"%s\" has a conflicting \"%s\" column"
 msgstr "tabela descendente \"%s\" tem uma coluna conflitante \"%s\""
 
-#: commands/tablecmds.c:4443
+#: commands/tablecmds.c:4556
 #, c-format
 msgid "merging definition of column \"%s\" for child \"%s\""
 msgstr "juntando definição da coluna \"%s\" para tabela descendente \"%s\""
 
-#: commands/tablecmds.c:4664
+#: commands/tablecmds.c:4777
 #, c-format
 msgid "column must be added to child tables too"
 msgstr "coluna deve ser adicionada as tabelas descendentes também"
 
-#: commands/tablecmds.c:4731
+#: commands/tablecmds.c:4844
 #, c-format
 msgid "column \"%s\" of relation \"%s\" already exists"
 msgstr "coluna \"%s\" da relação \"%s\" já existe"
 
-#: commands/tablecmds.c:4834 commands/tablecmds.c:4929
-#: commands/tablecmds.c:4977 commands/tablecmds.c:5081
-#: commands/tablecmds.c:5128 commands/tablecmds.c:5212
-#: commands/tablecmds.c:7247 commands/tablecmds.c:7842
+#: commands/tablecmds.c:4948 commands/tablecmds.c:5043
+#: commands/tablecmds.c:5091 commands/tablecmds.c:5195
+#: commands/tablecmds.c:5242 commands/tablecmds.c:5326
+#: commands/tablecmds.c:7503 commands/tablecmds.c:8098
 #, c-format
 msgid "cannot alter system column \"%s\""
 msgstr "não pode alterar coluna do sistema \"%s\""
 
-#: commands/tablecmds.c:4870
+#: commands/tablecmds.c:4984
 #, c-format
 msgid "column \"%s\" is in a primary key"
 msgstr "coluna \"%s\" está em uma chave primária"
 
-#: commands/tablecmds.c:5028
+#: commands/tablecmds.c:5142
 #, c-format
 msgid "\"%s\" is not a table, materialized view, index, or foreign table"
 msgstr "\"%s\" não é uma tabela, visão materializada, índice ou tabela externa"
 
-#: commands/tablecmds.c:5055
+#: commands/tablecmds.c:5169
 #, c-format
 msgid "statistics target %d is too low"
 msgstr "valor da estatística %d é muito pequeno"
 
-#: commands/tablecmds.c:5063
+#: commands/tablecmds.c:5177
 #, c-format
 msgid "lowering statistics target to %d"
 msgstr "diminuindo valor da estatística para %d"
 
-#: commands/tablecmds.c:5193
+#: commands/tablecmds.c:5307
 #, c-format
 msgid "invalid storage type \"%s\""
 msgstr "tipo de armazenamento \"%s\" é inválido"
 
-#: commands/tablecmds.c:5224
+#: commands/tablecmds.c:5338
 #, c-format
 msgid "column data type %s can only have storage PLAIN"
 msgstr "tipo de dado da coluna %s só pode ter armazenamento PLAIN"
 
-#: commands/tablecmds.c:5258
+#: commands/tablecmds.c:5372
 #, c-format
 msgid "cannot drop column from typed table"
 msgstr "não pode apagar coluna de tabela tipada"
 
-#: commands/tablecmds.c:5299
+#: commands/tablecmds.c:5413
 #, c-format
 msgid "column \"%s\" of relation \"%s\" does not exist, skipping"
 msgstr "coluna \"%s\" da relação \"%s\" não existe, ignorando"
 
-#: commands/tablecmds.c:5312
+#: commands/tablecmds.c:5426
 #, c-format
 msgid "cannot drop system column \"%s\""
 msgstr "não pode remover coluna do sistema \"%s\""
 
-#: commands/tablecmds.c:5319
+#: commands/tablecmds.c:5433
 #, c-format
 msgid "cannot drop inherited column \"%s\""
 msgstr "não pode remover coluna herdada \"%s\""
 
-#: commands/tablecmds.c:5549
+#: commands/tablecmds.c:5663
 #, c-format
 msgid "ALTER TABLE / ADD CONSTRAINT USING INDEX will rename index \"%s\" to \"%s\""
 msgstr "ALTER TABLE / ADD CONSTRAINT USING INDEX renomeará índice \"%s\" para \"%s\""
 
-#: commands/tablecmds.c:5752
+#: commands/tablecmds.c:5866
 #, c-format
 msgid "constraint must be added to child tables too"
 msgstr "restrição deve ser adicionada as tabelas descendentes também"
 
-#: commands/tablecmds.c:5822
+#: commands/tablecmds.c:5936
 #, c-format
 msgid "referenced relation \"%s\" is not a table"
 msgstr "relação referenciada \"%s\" não é uma tabela"
 
-#: commands/tablecmds.c:5845
+#: commands/tablecmds.c:5959
 #, c-format
 msgid "constraints on permanent tables may reference only permanent tables"
 msgstr "restrições em tabelas permanentes só podem referenciar tabelas permanentes"
 
-#: commands/tablecmds.c:5852
+#: commands/tablecmds.c:5966
 #, c-format
 msgid "constraints on unlogged tables may reference only permanent or unlogged tables"
 msgstr "restrições em tabelas unlogged só podem referenciar tabelas permanentes ou unlogged"
 
-#: commands/tablecmds.c:5858
+#: commands/tablecmds.c:5972
 #, c-format
 msgid "constraints on temporary tables may reference only temporary tables"
 msgstr "restrições em tabelas temporárias só podem referenciar tabelas temporárias"
 
-#: commands/tablecmds.c:5862
+#: commands/tablecmds.c:5976
 #, c-format
 msgid "constraints on temporary tables must involve temporary tables of this session"
 msgstr "restrições em tabelas temporárias devem envolver tabelas temporárias desta sessão"
 
-#: commands/tablecmds.c:5923
+#: commands/tablecmds.c:6037
 #, c-format
 msgid "number of referencing and referenced columns for foreign key disagree"
 msgstr "número de colunas que referenciam e são referenciadas em um chave estrangeira não correspondem"
 
-#: commands/tablecmds.c:6030
+#: commands/tablecmds.c:6144
 #, c-format
 msgid "foreign key constraint \"%s\" cannot be implemented"
 msgstr "restrição de chave estrangeira \"%s\" não pode ser implementada"
 
-#: commands/tablecmds.c:6033
+#: commands/tablecmds.c:6147
 #, c-format
 msgid "Key columns \"%s\" and \"%s\" are of incompatible types: %s and %s."
 msgstr "Colunas chave \"%s\" e \"%s\" são de tipos incompatíveis: %s e %s."
 
-#: commands/tablecmds.c:6227 commands/tablecmds.c:7086
-#: commands/tablecmds.c:7142
+#: commands/tablecmds.c:6347 commands/tablecmds.c:6470
+#: commands/tablecmds.c:7342 commands/tablecmds.c:7398
 #, c-format
 msgid "constraint \"%s\" of relation \"%s\" does not exist"
 msgstr "restrição \"%s\" da relação \"%s\" não existe"
 
-#: commands/tablecmds.c:6234
+#: commands/tablecmds.c:6353
+#, c-format
+msgid "constraint \"%s\" of relation \"%s\" is not a foreign key constraint"
+msgstr "restrição \"%s\" da relação \"%s\" não é uma restrição de chave estrangeira"
+
+#: commands/tablecmds.c:6477
 #, c-format
 msgid "constraint \"%s\" of relation \"%s\" is not a foreign key or check constraint"
-msgstr "restrição \"%s\" da relação \"%s\" não é uma chave estrangeira ou restrição de verificação"
+msgstr "restrição \"%s\" da relação \"%s\" não é uma restrição de chave estrangeira ou restrição de verificação"
 
-#: commands/tablecmds.c:6303
+#: commands/tablecmds.c:6546
 #, c-format
 msgid "constraint must be validated on child tables too"
 msgstr "restrição deve ser validada nas tabelas descendentes também"
 
-#: commands/tablecmds.c:6365
+#: commands/tablecmds.c:6608
 #, c-format
 msgid "column \"%s\" referenced in foreign key constraint does not exist"
 msgstr "coluna \"%s\" referenciada na restrição de chave estrangeira não existe"
 
-#: commands/tablecmds.c:6370
+#: commands/tablecmds.c:6613
 #, c-format
 msgid "cannot have more than %d keys in a foreign key"
 msgstr "não pode ter mais do que %d chaves em uma chave estrangeira"
 
-#: commands/tablecmds.c:6435
+#: commands/tablecmds.c:6678
 #, c-format
 msgid "cannot use a deferrable primary key for referenced table \"%s\""
 msgstr "não pode utilizar uma chave primária postergável na tabela referenciada \"%s\""
 
-#: commands/tablecmds.c:6452
+#: commands/tablecmds.c:6695
 #, c-format
 msgid "there is no primary key for referenced table \"%s\""
 msgstr "não há chave primária na tabela referenciada \"%s\""
 
-#: commands/tablecmds.c:6604
+#: commands/tablecmds.c:6760
+#, c-format
+msgid "foreign key referenced-columns list must not contain duplicates"
+msgstr ""
+
+#: commands/tablecmds.c:6854
 #, c-format
 msgid "cannot use a deferrable unique constraint for referenced table \"%s\""
 msgstr "não pode utilizar uma restrição de unicidade postergável na tabela referenciada \"%s\""
 
-#: commands/tablecmds.c:6609
+#: commands/tablecmds.c:6859
 #, c-format
 msgid "there is no unique constraint matching given keys for referenced table \"%s\""
 msgstr "não há restrição de unicidade que corresponde com as colunas informadas na tabela referenciada \"%s\""
 
-#: commands/tablecmds.c:6764
+#: commands/tablecmds.c:7018
 #, c-format
 msgid "validating foreign key constraint \"%s\""
 msgstr "validando restrição de chave estrangeira \"%s\""
 
-#: commands/tablecmds.c:7058
+#: commands/tablecmds.c:7314
 #, c-format
 msgid "cannot drop inherited constraint \"%s\" of relation \"%s\""
 msgstr "não pode remover restrição herdada \"%s\" da relação \"%s\""
 
-#: commands/tablecmds.c:7092
+#: commands/tablecmds.c:7348
 #, c-format
 msgid "constraint \"%s\" of relation \"%s\" does not exist, skipping"
 msgstr "restrição \"%s\" da relação \"%s\" não existe, ignorando"
 
-#: commands/tablecmds.c:7231
+#: commands/tablecmds.c:7487
 #, c-format
 msgid "cannot alter column type of typed table"
 msgstr "não pode alterar tipo de coluna de tabela tipada"
 
-#: commands/tablecmds.c:7254
+#: commands/tablecmds.c:7510
 #, c-format
 msgid "cannot alter inherited column \"%s\""
 msgstr "não pode alterar coluna herdada \"%s\""
 
-#: commands/tablecmds.c:7301
+#: commands/tablecmds.c:7557
 #, c-format
 msgid "transform expression must not return a set"
 msgstr "expressão de transformação não deve retornar um conjunto"
 
-#: commands/tablecmds.c:7320
+#: commands/tablecmds.c:7576
 #, c-format
 msgid "column \"%s\" cannot be cast automatically to type %s"
 msgstr "coluna \"%s\" não pode ser convertida automaticamente para tipo %s"
 
-#: commands/tablecmds.c:7322
+#: commands/tablecmds.c:7578
 #, c-format
 msgid "Specify a USING expression to perform the conversion."
 msgstr "Especifique uma expressão USING para realizar a conversão."
 
-#: commands/tablecmds.c:7371
+#: commands/tablecmds.c:7627
 #, c-format
 msgid "type of inherited column \"%s\" must be changed in child tables too"
 msgstr "tipo de coluna herdada \"%s\" deve ser alterado nas tabelas descendentes também"
 
-#: commands/tablecmds.c:7452
+#: commands/tablecmds.c:7708
 #, c-format
 msgid "cannot alter type of column \"%s\" twice"
 msgstr "não pode alterar tipo de coluna \"%s\" duas vezes"
 
-#: commands/tablecmds.c:7488
+#: commands/tablecmds.c:7744
 #, c-format
 msgid "default for column \"%s\" cannot be cast automatically to type %s"
 msgstr "valor padrão para coluna \"%s\" não pode ser convertido automaticamente para tipo %s"
 
-#: commands/tablecmds.c:7614
+#: commands/tablecmds.c:7870
 #, c-format
 msgid "cannot alter type of a column used by a view or rule"
 msgstr "não pode alterar tipo de uma coluna utilizada por uma visão ou regra"
 
-#: commands/tablecmds.c:7615 commands/tablecmds.c:7634
+#: commands/tablecmds.c:7871 commands/tablecmds.c:7890
 #, c-format
 msgid "%s depends on column \"%s\""
 msgstr "%s depende da coluna \"%s\""
 
-#: commands/tablecmds.c:7633
+#: commands/tablecmds.c:7889
 #, c-format
 msgid "cannot alter type of a column used in a trigger definition"
 msgstr "não pode alterar tipo de uma coluna utilizada em uma definição de gatilho"
 
-#: commands/tablecmds.c:8209
+#: commands/tablecmds.c:8465
 #, c-format
 msgid "cannot change owner of index \"%s\""
 msgstr "não pode mudar dono do índice \"%s\""
 
-#: commands/tablecmds.c:8211
+#: commands/tablecmds.c:8467
 #, c-format
 msgid "Change the ownership of the index's table, instead."
 msgstr "Ao invés disso, mude o dono da tabela do índice."
 
-#: commands/tablecmds.c:8227
+#: commands/tablecmds.c:8483
 #, c-format
 msgid "cannot change owner of sequence \"%s\""
 msgstr "não pode mudar dono da sequência \"%s\""
 
-#: commands/tablecmds.c:8229 commands/tablecmds.c:9957
+#: commands/tablecmds.c:8485 commands/tablecmds.c:10644
 #, c-format
 msgid "Sequence \"%s\" is linked to table \"%s\"."
 msgstr "Sequência \"%s\" está ligada a tabela \"%s\"."
 
-#: commands/tablecmds.c:8241 commands/tablecmds.c:10593
+#: commands/tablecmds.c:8497 commands/tablecmds.c:11280
 #, c-format
 msgid "Use ALTER TYPE instead."
 msgstr "Ao invés disso utilize ALTER TYPE."
 
-#: commands/tablecmds.c:8250
+#: commands/tablecmds.c:8506
 #, c-format
 msgid "\"%s\" is not a table, view, sequence, or foreign table"
 msgstr "\"%s\" não é uma tabela, visão, sequência ou tabela externa"
 
-#: commands/tablecmds.c:8586
+#: commands/tablecmds.c:8842
 #, c-format
 msgid "cannot have multiple SET TABLESPACE subcommands"
 msgstr "não pode ter múltiplos subcomandos SET TABLESPACE"
 
-#: commands/tablecmds.c:8657
+#: commands/tablecmds.c:8915
 #, c-format
 msgid "\"%s\" is not a table, view, materialized view, index, or TOAST table"
 msgstr "\"%s\" não é uma tabela, visão, visão materializada, índice ou tabela TOAST"
 
-#: commands/tablecmds.c:8802
+#: commands/tablecmds.c:8948 commands/view.c:474
+#, c-format
+msgid "WITH CHECK OPTION is supported only on auto-updatable views"
+msgstr ""
+
+#: commands/tablecmds.c:9094
 #, c-format
 msgid "cannot move system relation \"%s\""
 msgstr "não pode mover relação do sistema \"%s\""
 
-#: commands/tablecmds.c:8818
+#: commands/tablecmds.c:9110
 #, c-format
 msgid "cannot move temporary tables of other sessions"
 msgstr "não pode mover tabelas temporárias de outras sessões"
 
-#: commands/tablecmds.c:8946 storage/buffer/bufmgr.c:482
+#: commands/tablecmds.c:9238
+#, fuzzy, c-format
+msgid "only tables, indexes, and materialized views exist in tablespaces"
+msgstr "somente tabelas, índices e visões materializadas existem em tablespaces"
+
+#: commands/tablecmds.c:9250
+#, c-format
+msgid "cannot move relations in to or out of pg_global tablespace"
+msgstr "não pode mover relações para ou da tablespace pg_global"
+
+#: commands/tablecmds.c:9341
+#, fuzzy, c-format
+#| msgid "aborting due to \"%s\".\"%s\" --- lock not available"
+msgid "aborting because lock on relation \"%s\".\"%s\" is not available"
+msgstr "interrompendo devido a \"%s\".\"%s\" --- bloqueio não está disponível"
+
+#: commands/tablecmds.c:9357
+#, c-format
+msgid "no matching relations in tablespace \"%s\" found"
+msgstr "nenhuma relação correspondente na tablespace \"%s\" foi encontrada"
+
+#: commands/tablecmds.c:9418 storage/buffer/bufmgr.c:481
 #, c-format
 msgid "invalid page in block %u of relation %s"
 msgstr "página é inválida no bloco %u da relação %s"
 
-#: commands/tablecmds.c:9024
+#: commands/tablecmds.c:9500
 #, c-format
 msgid "cannot change inheritance of typed table"
 msgstr "não pode mudar herança de tabela tipada"
 
-#: commands/tablecmds.c:9070
+#: commands/tablecmds.c:9546
 #, c-format
 msgid "cannot inherit to temporary relation of another session"
 msgstr "não pode herdar a tabela temporária de outra sessão"
 
-#: commands/tablecmds.c:9124
+#: commands/tablecmds.c:9600
 #, c-format
 msgid "circular inheritance not allowed"
 msgstr "herança circular não é permitida"
 
-#: commands/tablecmds.c:9125
+#: commands/tablecmds.c:9601
 #, c-format
 msgid "\"%s\" is already a child of \"%s\"."
 msgstr "\"%s\" já é um descendente de \"%s\"."
 
-#: commands/tablecmds.c:9133
+#: commands/tablecmds.c:9609
 #, c-format
 msgid "table \"%s\" without OIDs cannot inherit from table \"%s\" with OIDs"
 msgstr "tabela \"%s\" sem OIDs não pode herdar de tabela \"%s\" com OIDs"
 
-#: commands/tablecmds.c:9269
+#: commands/tablecmds.c:9745
 #, c-format
 msgid "column \"%s\" in child table must be marked NOT NULL"
 msgstr "coluna \"%s\" na tabela descendente deve ser definida como NOT NULL"
 
-#: commands/tablecmds.c:9285
+#: commands/tablecmds.c:9761
 #, c-format
 msgid "child table is missing column \"%s\""
 msgstr "tabela descendente está faltando coluna \"%s\""
 
-#: commands/tablecmds.c:9368
+#: commands/tablecmds.c:9844
 #, c-format
 msgid "child table \"%s\" has different definition for check constraint \"%s\""
 msgstr "tabela descendente \"%s\" tem definição diferente para restrição de verificação \"%s\""
 
-#: commands/tablecmds.c:9376
+#: commands/tablecmds.c:9852
 #, c-format
 msgid "constraint \"%s\" conflicts with non-inherited constraint on child table \"%s\""
 msgstr "restrição \"%s\" conflita com restrição não herdada na tabela descendente \"%s\""
 
-#: commands/tablecmds.c:9400
+#: commands/tablecmds.c:9876
 #, c-format
 msgid "child table is missing constraint \"%s\""
 msgstr "tabela descendente está faltando restrição \"%s\""
 
-#: commands/tablecmds.c:9480
+#: commands/tablecmds.c:9956
 #, c-format
 msgid "relation \"%s\" is not a parent of relation \"%s\""
 msgstr "relação \"%s\" não é um ancestral da relação \"%s\""
 
-#: commands/tablecmds.c:9706
+#: commands/tablecmds.c:10182
 #, c-format
 msgid "typed tables cannot inherit"
 msgstr "tabelas tipadas não podem herdar"
 
-#: commands/tablecmds.c:9737
+#: commands/tablecmds.c:10213
 #, c-format
 msgid "table is missing column \"%s\""
 msgstr "tabela está faltando coluna \"%s\""
 
-#: commands/tablecmds.c:9747
+#: commands/tablecmds.c:10223
 #, c-format
 msgid "table has column \"%s\" where type requires \"%s\""
 msgstr "tabela tem coluna \"%s\" onde tipo requer \"%s\""
 
-#: commands/tablecmds.c:9756
+#: commands/tablecmds.c:10232
 #, c-format
 msgid "table \"%s\" has different type for column \"%s\""
 msgstr "tabela \"%s\" tem tipo diferente para coluna \"%s\""
 
-#: commands/tablecmds.c:9769
+#: commands/tablecmds.c:10245
 #, c-format
 msgid "table has extra column \"%s\""
 msgstr "tabela tem coluna extra \"%s\""
 
-#: commands/tablecmds.c:9819
+#: commands/tablecmds.c:10295
 #, c-format
 msgid "\"%s\" is not a typed table"
 msgstr "\"%s\" não é uma tabela tipada"
 
-#: commands/tablecmds.c:9956
+#: commands/tablecmds.c:10478
+#, c-format
+msgid "cannot use non-unique index \"%s\" as replica identity"
+msgstr "não pode utilizar índice não único \"%s\" como identidade da réplica"
+
+#: commands/tablecmds.c:10484
+#, fuzzy, c-format
+msgid "cannot use non-immediate index \"%s\" as replica identity"
+msgstr "não pode utilizar índice não imediato \"%s\" como identidade da réplica"
+
+#: commands/tablecmds.c:10490
+#, fuzzy, c-format
+msgid "cannot use expression index \"%s\" as replica identity"
+msgstr "não pode utilizar expressão de índice \"%s\" como identidade da réplica"
+
+#: commands/tablecmds.c:10496
+#, c-format
+msgid "cannot use partial index \"%s\" as replica identity"
+msgstr "não pode utilizar índice parcial \"%s\" como identidade da réplica"
+
+#: commands/tablecmds.c:10502
+#, c-format
+msgid "cannot use invalid index \"%s\" as replica identity"
+msgstr "não pode utilizar índice inválido \"%s\" como identidade da réplica"
+
+#: commands/tablecmds.c:10520
+#, c-format
+msgid "index \"%s\" cannot be used as replica identity because column \"%s\" is nullable"
+msgstr "índice \"%s\" não pode ser utilizado como identidade da réplica porque coluna \"%s\" contém valores nulos"
+
+#: commands/tablecmds.c:10643
 #, c-format
 msgid "cannot move an owned sequence into another schema"
 msgstr "não pode mover uma sequência ligada para outro esquema"
 
-#: commands/tablecmds.c:10052
+#: commands/tablecmds.c:10739
 #, c-format
 msgid "relation \"%s\" already exists in schema \"%s\""
 msgstr "relação \"%s\" já existe no esquema \"%s\""
 
-#: commands/tablecmds.c:10577
+#: commands/tablecmds.c:11264
 #, c-format
 msgid "\"%s\" is not a composite type"
 msgstr "\"%s\" não é um tipo composto"
 
-#: commands/tablecmds.c:10607
+#: commands/tablecmds.c:11294
 #, c-format
 msgid "\"%s\" is not a table, view, materialized view, sequence, or foreign table"
 msgstr "\"%s\" não é uma tabela, visão, visão materializada, sequência ou tabela externa"
 
-#: commands/tablespace.c:156 commands/tablespace.c:173
-#: commands/tablespace.c:184 commands/tablespace.c:192
-#: commands/tablespace.c:604 storage/file/copydir.c:50
+#: commands/tablespace.c:160 commands/tablespace.c:177
+#: commands/tablespace.c:188 commands/tablespace.c:196
+#: commands/tablespace.c:616 replication/slot.c:921 storage/file/copydir.c:47
 #, c-format
 msgid "could not create directory \"%s\": %m"
 msgstr "não pôde criar diretório \"%s\": %m"
 
-#: commands/tablespace.c:203
+#: commands/tablespace.c:207
 #, c-format
 msgid "could not stat directory \"%s\": %m"
 msgstr "não pôde executar stat no diretório \"%s\": %m"
 
-#: commands/tablespace.c:212
+#: commands/tablespace.c:216
 #, c-format
 msgid "\"%s\" exists but is not a directory"
 msgstr "\"%s\" existe mas não é um diretório"
 
-#: commands/tablespace.c:242
+#: commands/tablespace.c:247
 #, c-format
 msgid "permission denied to create tablespace \"%s\""
 msgstr "permissão negada ao criar tablespace \"%s\""
 
-#: commands/tablespace.c:244
+#: commands/tablespace.c:249
 #, c-format
 msgid "Must be superuser to create a tablespace."
 msgstr "Deve ser super-usuário para criar uma tablespace."
 
-#: commands/tablespace.c:260
+#: commands/tablespace.c:265
 #, c-format
 msgid "tablespace location cannot contain single quotes"
 msgstr "local da tablespace não pode conter aspas simples"
 
-#: commands/tablespace.c:270
+#: commands/tablespace.c:275
 #, c-format
 msgid "tablespace location must be an absolute path"
 msgstr "local da tablespace deve ser um caminho absoluto"
 
-#: commands/tablespace.c:281
+#: commands/tablespace.c:286
 #, c-format
 msgid "tablespace location \"%s\" is too long"
 msgstr "local da tablespace \"%s\" é muito longo"
 
-#: commands/tablespace.c:291 commands/tablespace.c:860
+#: commands/tablespace.c:296 commands/tablespace.c:887
 #, c-format
 msgid "unacceptable tablespace name \"%s\""
 msgstr "nome da tablespace \"%s\" é inaceitável"
 
-#: commands/tablespace.c:293 commands/tablespace.c:861
+#: commands/tablespace.c:298 commands/tablespace.c:888
 #, c-format
 msgid "The prefix \"pg_\" is reserved for system tablespaces."
 msgstr "O prefixo \"pg_\" é reservado para tablespaces do sistema."
 
-#: commands/tablespace.c:303 commands/tablespace.c:873
+#: commands/tablespace.c:308 commands/tablespace.c:900
 #, c-format
 msgid "tablespace \"%s\" already exists"
 msgstr "tablespace \"%s\" já existe"
 
-#: commands/tablespace.c:372 commands/tablespace.c:530
-#: replication/basebackup.c:178 replication/basebackup.c:942
-#: utils/adt/misc.c:372
+#: commands/tablespace.c:386 commands/tablespace.c:544
+#: replication/basebackup.c:222 replication/basebackup.c:1064
+#: utils/adt/misc.c:365
 #, c-format
 msgid "tablespaces are not supported on this platform"
 msgstr "tablespaces não são suportadas nessa plataforma"
 
-#: commands/tablespace.c:412 commands/tablespace.c:843
-#: commands/tablespace.c:922 commands/tablespace.c:995
-#: commands/tablespace.c:1133 commands/tablespace.c:1333
+#: commands/tablespace.c:426 commands/tablespace.c:870
+#: commands/tablespace.c:949 commands/tablespace.c:1018
+#: commands/tablespace.c:1151 commands/tablespace.c:1351
 #, c-format
 msgid "tablespace \"%s\" does not exist"
 msgstr "tablespace \"%s\" não existe"
 
-#: commands/tablespace.c:418
+#: commands/tablespace.c:432
 #, c-format
 msgid "tablespace \"%s\" does not exist, skipping"
 msgstr "tablespace \"%s\" não existe, ignorando"
 
-#: commands/tablespace.c:487
+#: commands/tablespace.c:501
 #, c-format
 msgid "tablespace \"%s\" is not empty"
 msgstr "tablespace \"%s\" não está vazia"
 
-#: commands/tablespace.c:561
+#: commands/tablespace.c:575
 #, c-format
 msgid "directory \"%s\" does not exist"
 msgstr "diretório \"%s\" não existe"
 
-#: commands/tablespace.c:562
+#: commands/tablespace.c:576
 #, c-format
 msgid "Create this directory for the tablespace before restarting the server."
 msgstr "Crie este diretório para a tablespace antes de reiniciar o servidor."
 
-#: commands/tablespace.c:567
+#: commands/tablespace.c:581
 #, c-format
 msgid "could not set permissions on directory \"%s\": %m"
 msgstr "não pôde definir permissões do diretório \"%s\": %m"
 
-#: commands/tablespace.c:599
+#: commands/tablespace.c:611
 #, c-format
 msgid "directory \"%s\" already in use as a tablespace"
 msgstr "diretório \"%s\" já está em uso como uma tablespace"
 
-#: commands/tablespace.c:614 commands/tablespace.c:778
+#: commands/tablespace.c:635 commands/tablespace.c:757
+#: commands/tablespace.c:770 commands/tablespace.c:794
+#, c-format
+msgid "could not remove directory \"%s\": %m"
+msgstr "não pôde remover diretório \"%s\": %m"
+
+#: commands/tablespace.c:643 commands/tablespace.c:805
 #, c-format
 msgid "could not remove symbolic link \"%s\": %m"
 msgstr "não pôde remover link simbólico \"%s\": %m"
 
-#: commands/tablespace.c:624
+#: commands/tablespace.c:654
 #, c-format
 msgid "could not create symbolic link \"%s\": %m"
 msgstr "não pôde criar link simbólico \"%s\": %m"
 
-#: commands/tablespace.c:690 commands/tablespace.c:700
-#: postmaster/postmaster.c:1314 replication/basebackup.c:281
-#: replication/basebackup.c:577 storage/file/copydir.c:56
-#: storage/file/copydir.c:99 storage/file/fd.c:1896 utils/adt/genfile.c:354
-#: utils/adt/misc.c:272 utils/misc/tzparser.c:323
+#: commands/tablespace.c:718 commands/tablespace.c:728
+#: postmaster/postmaster.c:1284 replication/basebackup.c:349
+#: replication/basebackup.c:667 storage/file/copydir.c:53
+#: storage/file/copydir.c:96 storage/file/fd.c:1951 storage/ipc/dsm.c:300
+#: utils/adt/genfile.c:354 utils/adt/misc.c:267 utils/misc/tzparser.c:323
 #, c-format
 msgid "could not open directory \"%s\": %m"
 msgstr "não pôde abrir diretório \"%s\": %m"
 
-#: commands/tablespace.c:730 commands/tablespace.c:743
-#: commands/tablespace.c:767
-#, c-format
-msgid "could not remove directory \"%s\": %m"
-msgstr "não pôde remover diretório \"%s\": %m"
-
-#: commands/tablespace.c:1000
+#: commands/tablespace.c:1023
 #, c-format
 msgid "Tablespace \"%s\" does not exist."
 msgstr "Tablespace \"%s\" não existe."
 
-#: commands/tablespace.c:1432
+#: commands/tablespace.c:1450
 #, c-format
 msgid "directories for tablespace %u could not be removed"
 msgstr "diretórios para tablespace %u não puderam ser removidos"
 
-#: commands/tablespace.c:1434
+#: commands/tablespace.c:1452
 #, c-format
 msgid "You can remove the directories manually if necessary."
 msgstr "Você pode remover os diretórios manualmente se necessário."
 
-#: commands/trigger.c:174
+#: commands/trigger.c:175
 #, c-format
 msgid "\"%s\" is a table"
 msgstr "\"%s\" é uma tabela"
 
-#: commands/trigger.c:176
+#: commands/trigger.c:177
 #, c-format
 msgid "Tables cannot have INSTEAD OF triggers."
 msgstr "Tabelas não podem ter gatilhos INSTEAD OF."
 
-#: commands/trigger.c:187 commands/trigger.c:194
+#: commands/trigger.c:188 commands/trigger.c:195
 #, c-format
 msgid "\"%s\" is a view"
 msgstr "\"%s\" é uma visão"
 
-#: commands/trigger.c:189
+#: commands/trigger.c:190
 #, c-format
 msgid "Views cannot have row-level BEFORE or AFTER triggers."
 msgstr "Visões não podem ter gatilhos BEFORE ou AFTER a nível de registro."
 
-#: commands/trigger.c:196
+#: commands/trigger.c:197
 #, c-format
 msgid "Views cannot have TRUNCATE triggers."
 msgstr "Visões não podem ter gatilhos TRUNCATE."
 
-#: commands/trigger.c:259
+#: commands/trigger.c:205 commands/trigger.c:212 commands/trigger.c:219
+#, c-format
+msgid "\"%s\" is a foreign table"
+msgstr "\"%s\" é uma tabela externa"
+
+#: commands/trigger.c:207
+#, c-format
+msgid "Foreign tables cannot have INSTEAD OF triggers."
+msgstr "Tabelas externas não podem ter gatilhos INSTEAD OF."
+
+#: commands/trigger.c:214
+#, c-format
+msgid "Foreign tables cannot have TRUNCATE triggers."
+msgstr "Tabelas externas não podem ter gatilhos TRUNCATE."
+
+#: commands/trigger.c:221
+#, c-format
+msgid "Foreign tables cannot have constraint triggers."
+msgstr "Tabelas externas não podem ter gatilhos de restrição."
+
+#: commands/trigger.c:284
 #, c-format
 msgid "TRUNCATE FOR EACH ROW triggers are not supported"
 msgstr "gatilhos TRUNCATE FOR EACH ROW não são suportados"
 
-#: commands/trigger.c:267
+#: commands/trigger.c:292
 #, c-format
 msgid "INSTEAD OF triggers must be FOR EACH ROW"
 msgstr "gatilhos INSTEAD OF devem ser FOR EACH ROW"
 
-#: commands/trigger.c:271
+#: commands/trigger.c:296
 #, c-format
 msgid "INSTEAD OF triggers cannot have WHEN conditions"
 msgstr "gatilhos INSTEAD OF não podem ter condições WHEN"
 
-#: commands/trigger.c:275
+#: commands/trigger.c:300
 #, c-format
 msgid "INSTEAD OF triggers cannot have column lists"
 msgstr "gatilhos INSTEAD OF não podem ter listas de colunas"
 
-#: commands/trigger.c:334 commands/trigger.c:347
+#: commands/trigger.c:359 commands/trigger.c:372
 #, c-format
 msgid "statement trigger's WHEN condition cannot reference column values"
 msgstr "condição WHEN de gatilho de comando não pode referenciar valores de coluna"
 
-#: commands/trigger.c:339
+#: commands/trigger.c:364
 #, c-format
 msgid "INSERT trigger's WHEN condition cannot reference OLD values"
 msgstr "condição WHEN de gatilho INSERT não pode referenciar valores OLD"
 
-#: commands/trigger.c:352
+#: commands/trigger.c:377
 #, c-format
 msgid "DELETE trigger's WHEN condition cannot reference NEW values"
 msgstr "condição WHEN de gatilho DELETE não pode referenciar valores NEW"
 
-#: commands/trigger.c:357
+#: commands/trigger.c:382
 #, c-format
 msgid "BEFORE trigger's WHEN condition cannot reference NEW system columns"
 msgstr "condição WHEN de gatilho BEFORE não pode referenciar colunas de sistema NEW"
 
-#: commands/trigger.c:402
+#: commands/trigger.c:427
 #, c-format
 msgid "changing return type of function %s from \"opaque\" to \"trigger\""
 msgstr "alterando tipo retornado pela função %s de \"opaque\" para \"trigger\""
 
-#: commands/trigger.c:409
+#: commands/trigger.c:434
 #, c-format
 msgid "function %s must return type \"trigger\""
 msgstr "função %s deve retornar tipo \"trigger\""
 
-#: commands/trigger.c:521 commands/trigger.c:1267
+#: commands/trigger.c:546 commands/trigger.c:1295
 #, c-format
 msgid "trigger \"%s\" for relation \"%s\" already exists"
 msgstr "gatilho \"%s\" para relação \"%s\" já existe"
 
-#: commands/trigger.c:806
+#: commands/trigger.c:831
 msgid "Found referenced table's UPDATE trigger."
 msgstr "Encontrado gatilho de UPDATE na tabela referenciada."
 
-#: commands/trigger.c:807
+#: commands/trigger.c:832
 msgid "Found referenced table's DELETE trigger."
 msgstr "Encontrado gatilho de DELETE na tabela referenciada."
 
-#: commands/trigger.c:808
+#: commands/trigger.c:833
 msgid "Found referencing table's trigger."
 msgstr "Encontrado gatilho na tabela referenciada."
 
-#: commands/trigger.c:917 commands/trigger.c:933
+#: commands/trigger.c:942 commands/trigger.c:958
 #, c-format
 msgid "ignoring incomplete trigger group for constraint \"%s\" %s"
 msgstr "ignorando grupo de gatilhos incompletos para restrição \"%s\" %s"
 
-#: commands/trigger.c:945
+#: commands/trigger.c:970
 #, c-format
 msgid "converting trigger group into constraint \"%s\" %s"
 msgstr "convertendo grupo de gatilhos na restrição \"%s\" %s"
 
-#: commands/trigger.c:1157 commands/trigger.c:1315 commands/trigger.c:1431
+#: commands/trigger.c:1112 commands/trigger.c:1217
+#, c-format
+msgid "\"%s\" is not a table, view, or foreign table"
+msgstr "\"%s\" não é uma tabela, visão ou tabela externa"
+
+#: commands/trigger.c:1183 commands/trigger.c:1343 commands/trigger.c:1459
 #, c-format
 msgid "trigger \"%s\" for table \"%s\" does not exist"
 msgstr "gatilho \"%s\" na tabela \"%s\" não existe"
 
-#: commands/trigger.c:1396
+#: commands/trigger.c:1424
 #, c-format
 msgid "permission denied: \"%s\" is a system trigger"
 msgstr "permissão negada: \"%s\" é um gatilho do sistema"
 
-#: commands/trigger.c:1892
+#: commands/trigger.c:1920
 #, c-format
 msgid "trigger function %u returned null value"
 msgstr "função de gatilho %u retornou valor nulo"
 
-#: commands/trigger.c:1951 commands/trigger.c:2150 commands/trigger.c:2338
-#: commands/trigger.c:2597
+#: commands/trigger.c:1979 commands/trigger.c:2178 commands/trigger.c:2382
+#: commands/trigger.c:2664
 #, c-format
 msgid "BEFORE STATEMENT trigger cannot return a value"
 msgstr "gatilho BEFORE STATEMENT não pode retornar um valor"
 
-#: commands/trigger.c:2659 executor/nodeModifyTable.c:428
-#: executor/nodeModifyTable.c:709
+#: commands/trigger.c:2726 executor/nodeModifyTable.c:434
+#: executor/nodeModifyTable.c:712
 #, c-format
 msgid "tuple to be updated was already modified by an operation triggered by the current command"
 msgstr "tupla a ser atualizada já foi modificada por uma operação disparada pelo comando atual"
 
-#: commands/trigger.c:2660 executor/nodeModifyTable.c:429
-#: executor/nodeModifyTable.c:710
+#: commands/trigger.c:2727 executor/nodeModifyTable.c:435
+#: executor/nodeModifyTable.c:713
 #, c-format
 msgid "Consider using an AFTER trigger instead of a BEFORE trigger to propagate changes to other rows."
 msgstr "Considere utilizar um gatilho AFTER ao invés de um gatilho BEFORE para propagar alterações para outros registros."
 
-#: commands/trigger.c:2674 executor/execMain.c:1998
-#: executor/nodeLockRows.c:165 executor/nodeModifyTable.c:441
-#: executor/nodeModifyTable.c:722
+#: commands/trigger.c:2741 executor/execMain.c:2059
+#: executor/nodeLockRows.c:165 executor/nodeModifyTable.c:447
+#: executor/nodeModifyTable.c:725
 #, c-format
 msgid "could not serialize access due to concurrent update"
 msgstr "não pôde serializar acesso devido a uma atualização concorrente"
 
-#: commands/trigger.c:4303
+#: commands/trigger.c:4538
 #, c-format
 msgid "constraint \"%s\" is not deferrable"
 msgstr "restrição \"%s\" não é postergável"
 
-#: commands/trigger.c:4326
+#: commands/trigger.c:4561
 #, c-format
 msgid "constraint \"%s\" does not exist"
 msgstr "restrição \"%s\" não existe"
@@ -7344,257 +7706,257 @@ msgstr "mapeamento para tipo de elemento \"%s\" não existe, ignorando"
 msgid "invalid parameter list format: \"%s\""
 msgstr "formato de lista de parâmetros é inválido: \"%s\""
 
-#: commands/typecmds.c:182
+#: commands/typecmds.c:184
 #, c-format
 msgid "must be superuser to create a base type"
 msgstr "deve ser super-usuário para criar um tipo base"
 
-#: commands/typecmds.c:288 commands/typecmds.c:1369
+#: commands/typecmds.c:290 commands/typecmds.c:1371
 #, c-format
 msgid "type attribute \"%s\" not recognized"
 msgstr "atributo do tipo \"%s\" desconhecido"
 
-#: commands/typecmds.c:342
+#: commands/typecmds.c:344
 #, c-format
 msgid "invalid type category \"%s\": must be simple ASCII"
 msgstr "categoria de tipo \"%s\" é inválida: deve ser ASCII simples"
 
-#: commands/typecmds.c:361
+#: commands/typecmds.c:363
 #, c-format
 msgid "array element type cannot be %s"
 msgstr "tipo do elemento da matriz não pode ser %s"
 
-#: commands/typecmds.c:393
+#: commands/typecmds.c:395
 #, c-format
 msgid "alignment \"%s\" not recognized"
 msgstr "alinhamento \"%s\" desconhecido"
 
-#: commands/typecmds.c:410
+#: commands/typecmds.c:412
 #, c-format
 msgid "storage \"%s\" not recognized"
 msgstr "armazenamento \"%s\" desconhecido"
 
-#: commands/typecmds.c:421
+#: commands/typecmds.c:423
 #, c-format
 msgid "type input function must be specified"
 msgstr "função de entrada do tipo deve ser especificada"
 
-#: commands/typecmds.c:425
+#: commands/typecmds.c:427
 #, c-format
 msgid "type output function must be specified"
 msgstr "função de saída do tipo deve ser especificada"
 
-#: commands/typecmds.c:430
+#: commands/typecmds.c:432
 #, c-format
 msgid "type modifier output function is useless without a type modifier input function"
 msgstr "função de saída do modificador de tipo é inútil sem uma função de entrada do modificador de tipo"
 
-#: commands/typecmds.c:453
+#: commands/typecmds.c:455
 #, c-format
 msgid "changing return type of function %s from \"opaque\" to %s"
 msgstr "alterando tipo retornado pela função %s de \"opaque\" para %s"
 
-#: commands/typecmds.c:460
+#: commands/typecmds.c:462
 #, c-format
 msgid "type input function %s must return type %s"
 msgstr "função de entrada do tipo %s deve retornar tipo %s"
 
-#: commands/typecmds.c:470
+#: commands/typecmds.c:472
 #, c-format
 msgid "changing return type of function %s from \"opaque\" to \"cstring\""
 msgstr "alterando tipo retornado pela função %s de \"opaque\" para \"cstring\""
 
-#: commands/typecmds.c:477
+#: commands/typecmds.c:479
 #, c-format
 msgid "type output function %s must return type \"cstring\""
 msgstr "função de saída do tipo %s deve retornar tipo \"cstring\""
 
-#: commands/typecmds.c:486
+#: commands/typecmds.c:488
 #, c-format
 msgid "type receive function %s must return type %s"
 msgstr "função de recepção do tipo %s deve retornar tipo %s"
 
-#: commands/typecmds.c:495
+#: commands/typecmds.c:497
 #, c-format
 msgid "type send function %s must return type \"bytea\""
 msgstr "função de envio do tipo %s deve retornar tipo \"bytea\""
 
-#: commands/typecmds.c:760
+#: commands/typecmds.c:762
 #, c-format
 msgid "\"%s\" is not a valid base type for a domain"
 msgstr "\"%s\" não é um tipo base válido para um domínio"
 
-#: commands/typecmds.c:846
+#: commands/typecmds.c:848
 #, c-format
 msgid "multiple default expressions"
 msgstr "múltiplas expressões padrão"
 
-#: commands/typecmds.c:908 commands/typecmds.c:917
+#: commands/typecmds.c:910 commands/typecmds.c:919
 #, c-format
 msgid "conflicting NULL/NOT NULL constraints"
 msgstr "restrições NULL/NOT NULL conflitantes"
 
-#: commands/typecmds.c:933
+#: commands/typecmds.c:935
 #, c-format
 msgid "check constraints for domains cannot be marked NO INHERIT"
 msgstr "restrições de verificação para domínios não podem ser marcadas NO INHERIT"
 
-#: commands/typecmds.c:942 commands/typecmds.c:2448
+#: commands/typecmds.c:944 commands/typecmds.c:2453
 #, c-format
 msgid "unique constraints not possible for domains"
 msgstr "restrições de unicidade não são possíveis para domínios"
 
-#: commands/typecmds.c:948 commands/typecmds.c:2454
+#: commands/typecmds.c:950 commands/typecmds.c:2459
 #, c-format
 msgid "primary key constraints not possible for domains"
 msgstr "restrições de chave primária não são possíveis para domínios"
 
-#: commands/typecmds.c:954 commands/typecmds.c:2460
+#: commands/typecmds.c:956 commands/typecmds.c:2465
 #, c-format
 msgid "exclusion constraints not possible for domains"
 msgstr "restrições de exclusão não são possíveis para domínios"
 
-#: commands/typecmds.c:960 commands/typecmds.c:2466
+#: commands/typecmds.c:962 commands/typecmds.c:2471
 #, c-format
 msgid "foreign key constraints not possible for domains"
 msgstr "restrições de chave estrangeira não são possíveis para domínios"
 
-#: commands/typecmds.c:969 commands/typecmds.c:2475
+#: commands/typecmds.c:971 commands/typecmds.c:2480
 #, c-format
 msgid "specifying constraint deferrability not supported for domains"
 msgstr "especificação de postergação de restrição não é suportada para domínios"
 
-#: commands/typecmds.c:1241 utils/cache/typcache.c:1071
+#: commands/typecmds.c:1243 utils/cache/typcache.c:1071
 #, c-format
 msgid "%s is not an enum"
 msgstr "%s não é um enum"
 
-#: commands/typecmds.c:1377
+#: commands/typecmds.c:1379
 #, c-format
 msgid "type attribute \"subtype\" is required"
 msgstr "atributo do tipo \"subtype\" é requerido"
 
-#: commands/typecmds.c:1382
+#: commands/typecmds.c:1384
 #, c-format
 msgid "range subtype cannot be %s"
 msgstr "subtipo do range não pode ser %s"
 
-#: commands/typecmds.c:1401
+#: commands/typecmds.c:1403
 #, c-format
 msgid "range collation specified but subtype does not support collation"
 msgstr "ordenação de range especificado mas subtipo não suporta ordenação"
 
-#: commands/typecmds.c:1637
+#: commands/typecmds.c:1639
 #, c-format
 msgid "changing argument type of function %s from \"opaque\" to \"cstring\""
 msgstr "alterando tipo de argumento da função %s de \"opaque\" para \"cstring\""
 
-#: commands/typecmds.c:1688
+#: commands/typecmds.c:1690
 #, c-format
 msgid "changing argument type of function %s from \"opaque\" to %s"
 msgstr "alterando tipo de argumento da função %s de \"opaque\" para %s"
 
-#: commands/typecmds.c:1787
+#: commands/typecmds.c:1789
 #, c-format
 msgid "typmod_in function %s must return type \"integer\""
 msgstr "função typmod_in %s deve retornar tipo \"integer\""
 
-#: commands/typecmds.c:1814
+#: commands/typecmds.c:1816
 #, c-format
 msgid "typmod_out function %s must return type \"cstring\""
 msgstr "função typmod_out %s deve retornar tipo \"cstring\""
 
-#: commands/typecmds.c:1841
+#: commands/typecmds.c:1843
 #, c-format
 msgid "type analyze function %s must return type \"boolean\""
 msgstr "função de análise do tipo %s deve retornar tipo \"boolean\""
 
-#: commands/typecmds.c:1887
+#: commands/typecmds.c:1889
 #, c-format
 msgid "You must specify an operator class for the range type or define a default operator class for the subtype."
 msgstr "Você deve especificar uma classe de operadores para o tipo range ou definir uma classe de operadores padrão para o subtipo."
 
-#: commands/typecmds.c:1918
+#: commands/typecmds.c:1920
 #, c-format
 msgid "range canonical function %s must return range type"
 msgstr "função canônica de range %s deve retornar tipo range"
 
-#: commands/typecmds.c:1924
+#: commands/typecmds.c:1926
 #, c-format
 msgid "range canonical function %s must be immutable"
 msgstr "função canônica de range %s deve ser imutável"
 
-#: commands/typecmds.c:1960
+#: commands/typecmds.c:1962
 #, c-format
 msgid "range subtype diff function %s must return type double precision"
 msgstr "função diff de subtipo range %s deve retornar tipo double precision"
 
-#: commands/typecmds.c:1966
+#: commands/typecmds.c:1968
 #, c-format
 msgid "range subtype diff function %s must be immutable"
 msgstr "função diff de subtipo range %s deve ser imutável"
 
-#: commands/typecmds.c:2283
+#: commands/typecmds.c:2287
 #, c-format
 msgid "column \"%s\" of table \"%s\" contains null values"
 msgstr "coluna \"%s\" da tabela \"%s\" contém valores nulos"
 
-#: commands/typecmds.c:2391 commands/typecmds.c:2569
+#: commands/typecmds.c:2396 commands/typecmds.c:2574
 #, c-format
 msgid "constraint \"%s\" of domain \"%s\" does not exist"
 msgstr "restrição \"%s\" do domínio \"%s\" não existe"
 
-#: commands/typecmds.c:2395
+#: commands/typecmds.c:2400
 #, c-format
 msgid "constraint \"%s\" of domain \"%s\" does not exist, skipping"
 msgstr "restrição \"%s\" do domínio \"%s\" não existe, ignorando"
 
-#: commands/typecmds.c:2575
+#: commands/typecmds.c:2580
 #, c-format
 msgid "constraint \"%s\" of domain \"%s\" is not a check constraint"
 msgstr "restrição \"%s\" do domínio \"%s\" não é uma restrição de verificação"
 
-#: commands/typecmds.c:2677
+#: commands/typecmds.c:2684
 #, c-format
 msgid "column \"%s\" of table \"%s\" contains values that violate the new constraint"
 msgstr "coluna \"%s\" da tabela \"%s\" contém valores que violam a nova restrição"
 
-#: commands/typecmds.c:2889 commands/typecmds.c:3259 commands/typecmds.c:3417
+#: commands/typecmds.c:2897 commands/typecmds.c:3267 commands/typecmds.c:3425
 #, c-format
 msgid "%s is not a domain"
 msgstr "%s não é um domínio"
 
-#: commands/typecmds.c:2922
+#: commands/typecmds.c:2930
 #, c-format
 msgid "constraint \"%s\" for domain \"%s\" already exists"
 msgstr "restrição \"%s\" para domínio \"%s\" já existe"
 
-#: commands/typecmds.c:2972
+#: commands/typecmds.c:2980
 #, c-format
 msgid "cannot use table references in domain check constraint"
 msgstr "não pode utilizar referências a tabela em restrição de verificação do domínio"
 
-#: commands/typecmds.c:3191 commands/typecmds.c:3271 commands/typecmds.c:3525
+#: commands/typecmds.c:3199 commands/typecmds.c:3279 commands/typecmds.c:3533
 #, c-format
 msgid "%s is a table's row type"
 msgstr "%s é um tipo registro da tabela"
 
-#: commands/typecmds.c:3193 commands/typecmds.c:3273 commands/typecmds.c:3527
+#: commands/typecmds.c:3201 commands/typecmds.c:3281 commands/typecmds.c:3535
 #, c-format
 msgid "Use ALTER TABLE instead."
 msgstr "Ao invés disso utilize ALTER TABLE."
 
-#: commands/typecmds.c:3200 commands/typecmds.c:3280 commands/typecmds.c:3444
+#: commands/typecmds.c:3208 commands/typecmds.c:3288 commands/typecmds.c:3452
 #, c-format
 msgid "cannot alter array type %s"
 msgstr "não pode alterar tipo array %s"
 
-#: commands/typecmds.c:3202 commands/typecmds.c:3282 commands/typecmds.c:3446
+#: commands/typecmds.c:3210 commands/typecmds.c:3290 commands/typecmds.c:3454
 #, c-format
 msgid "You can alter type %s, which will alter the array type as well."
 msgstr "Você pode alterar tipo %s, que alterará o tipo array também."
 
-#: commands/typecmds.c:3511
+#: commands/typecmds.c:3519
 #, c-format
 msgid "type \"%s\" already exists in schema \"%s\""
 msgstr "tipo \"%s\" já existe no esquema \"%s\""
@@ -7630,8 +7992,8 @@ msgid "role \"%s\" already exists"
 msgstr "role \"%s\" já existe"
 
 #: commands/user.c:618 commands/user.c:827 commands/user.c:933
-#: commands/user.c:1088 commands/variable.c:858 commands/variable.c:930
-#: utils/adt/acl.c:5120 utils/init/miscinit.c:433
+#: commands/user.c:1088 commands/variable.c:797 commands/variable.c:869
+#: utils/adt/acl.c:5121 utils/init/miscinit.c:362
 #, c-format
 msgid "role \"%s\" does not exist"
 msgstr "role \"%s\" não existe"
@@ -7752,94 +8114,94 @@ msgstr "role \"%s\" já é um membro da role \"%s\""
 msgid "role \"%s\" is not a member of role \"%s\""
 msgstr "role \"%s\" não é um membro da role \"%s\""
 
-#: commands/vacuum.c:463
+#: commands/vacuum.c:466
 #, c-format
 msgid "oldest xmin is far in the past"
 msgstr "xmin mais velho é muito antigo"
 
-#: commands/vacuum.c:464
+#: commands/vacuum.c:467
 #, c-format
 msgid "Close open transactions soon to avoid wraparound problems."
 msgstr "Feche transações abertas imediatamente para evitar problemas de reinício."
 
-#: commands/vacuum.c:496
+#: commands/vacuum.c:499
 #, c-format
 msgid "oldest multixact is far in the past"
 msgstr "multixact mais velho é muito antigo"
 
-#: commands/vacuum.c:497
+#: commands/vacuum.c:500
 #, c-format
 msgid "Close open transactions with multixacts soon to avoid wraparound problems."
 msgstr "Feche transações abertas com multixacts imediatamente para evitar problemas de reinício."
 
-#: commands/vacuum.c:967
+#: commands/vacuum.c:1044
 #, c-format
 msgid "some databases have not been vacuumed in over 2 billion transactions"
 msgstr "alguns bancos de dados não foram limpos a mais de 2 bilhões de transações"
 
-#: commands/vacuum.c:968
+#: commands/vacuum.c:1045
 #, c-format
 msgid "You might have already suffered transaction-wraparound data loss."
 msgstr "Você já pode ter sofrido problemas de perda de dados devido a reciclagem de transações."
 
-#: commands/vacuum.c:1079
+#: commands/vacuum.c:1162
 #, c-format
 msgid "skipping vacuum of \"%s\" --- lock not available"
 msgstr "ignorando limpeza de \"%s\" --- bloqueio não está disponível"
 
-#: commands/vacuum.c:1105
+#: commands/vacuum.c:1188
 #, c-format
 msgid "skipping \"%s\" --- only superuser can vacuum it"
 msgstr "ignorando \"%s\" --- somente super-usuário pode limpá-la(o)"
 
-#: commands/vacuum.c:1109
+#: commands/vacuum.c:1192
 #, c-format
 msgid "skipping \"%s\" --- only superuser or database owner can vacuum it"
 msgstr "ignorando \"%s\" --- somente super-usuário ou dono de banco de dados pode limpá-la(o)"
 
-#: commands/vacuum.c:1113
+#: commands/vacuum.c:1196
 #, c-format
 msgid "skipping \"%s\" --- only table or database owner can vacuum it"
 msgstr "ignorando \"%s\" --- somente dono de tabela ou de banco de dados pode limpá-la(o)"
 
-#: commands/vacuum.c:1131
+#: commands/vacuum.c:1214
 #, c-format
 msgid "skipping \"%s\" --- cannot vacuum non-tables or special system tables"
 msgstr "ignorando \"%s\" --- não pode limpar objetos que não são tabelas ou tabelas especiais do sistema"
 
-#: commands/vacuumlazy.c:337
+#: commands/vacuumlazy.c:345
 #, c-format
 msgid ""
 "automatic vacuum of table \"%s.%s.%s\": index scans: %d\n"
 "pages: %d removed, %d remain\n"
-"tuples: %.0f removed, %.0f remain\n"
+"tuples: %.0f removed, %.0f remain, %.0f are dead but not yet removable\n"
 "buffer usage: %d hits, %d misses, %d dirtied\n"
 "avg read rate: %.3f MB/s, avg write rate: %.3f MB/s\n"
 "system usage: %s"
 msgstr ""
 "limpeza automática da tabela \"%s.%s.%s\": buscas por índice: %d\n"
 "páginas: %d removidas, %d remanescentes\n"
-"tuplas: %.0f removidas, %.0f remanescentes\n"
+"tuplas: %.0f removidas, %.0f remanescentes, %.0f são não vigentes mas ainda não podem ser removidas\n"
 "uso de buffers: %d acertos, %d faltas, %d sujos\n"
 "taxa média de leitura: %.3f MB/s, taxa média de escrita: %.3f MB/s\n"
 "uso do sistema: %s"
 
-#: commands/vacuumlazy.c:670
+#: commands/vacuumlazy.c:679
 #, c-format
 msgid "relation \"%s\" page %u is uninitialized --- fixing"
 msgstr "página %2$u da relação \"%1$s\" não foi inicializada --- consertando"
 
-#: commands/vacuumlazy.c:1084
+#: commands/vacuumlazy.c:1091
 #, c-format
 msgid "\"%s\": removed %.0f row versions in %u pages"
 msgstr "\"%s\": removidas %.0f versões de registro em %u páginas"
 
-#: commands/vacuumlazy.c:1089
+#: commands/vacuumlazy.c:1096
 #, c-format
 msgid "\"%s\": found %.0f removable, %.0f nonremovable row versions in %u out of %u pages"
 msgstr "\"%s\": encontrados %.0f versões de registros removíveis e %.0f não-removíveis em %u de %u páginas"
 
-#: commands/vacuumlazy.c:1093
+#: commands/vacuumlazy.c:1100
 #, c-format
 msgid ""
 "%.0f dead row versions cannot be removed yet.\n"
@@ -7852,28 +8214,28 @@ msgstr ""
 "%u páginas estão completamente vazias.\n"
 "%s."
 
-#: commands/vacuumlazy.c:1164
+#: commands/vacuumlazy.c:1171
 #, c-format
 msgid "\"%s\": removed %d row versions in %d pages"
 msgstr "\"%s\": removidas %d versões de registro em %d páginas"
 
-#: commands/vacuumlazy.c:1167 commands/vacuumlazy.c:1320
-#: commands/vacuumlazy.c:1491
+#: commands/vacuumlazy.c:1174 commands/vacuumlazy.c:1341
+#: commands/vacuumlazy.c:1512
 #, c-format
 msgid "%s."
 msgstr "%s."
 
-#: commands/vacuumlazy.c:1317
+#: commands/vacuumlazy.c:1338
 #, c-format
 msgid "scanned index \"%s\" to remove %d row versions"
 msgstr "índice \"%s\" percorrido para remover %d versões de registro"
 
-#: commands/vacuumlazy.c:1362
+#: commands/vacuumlazy.c:1383
 #, c-format
 msgid "index \"%s\" now contains %.0f row versions in %u pages"
 msgstr "índice \"%s\" agora contém %.0f versões de registros em %u páginas"
 
-#: commands/vacuumlazy.c:1366
+#: commands/vacuumlazy.c:1387
 #, c-format
 msgid ""
 "%.0f index row versions were removed.\n"
@@ -7884,22 +8246,22 @@ msgstr ""
 "%u páginas de índice foram removidas, %u são reutilizáveis.\n"
 "%s."
 
-#: commands/vacuumlazy.c:1423
+#: commands/vacuumlazy.c:1444
 #, c-format
 msgid "\"%s\": stopping truncate due to conflicting lock request"
 msgstr "\"%s\": parando truncamento devido a pedido de bloqueio conflitante"
 
-#: commands/vacuumlazy.c:1488
+#: commands/vacuumlazy.c:1509
 #, c-format
 msgid "\"%s\": truncated %u to %u pages"
 msgstr "\"%s\": truncadas %u em %u páginas"
 
-#: commands/vacuumlazy.c:1544
+#: commands/vacuumlazy.c:1565
 #, c-format
 msgid "\"%s\": suspending truncate due to conflicting lock request"
 msgstr "\"%s\": suspendendo truncamento devido a pedido de bloqueio conflitante"
 
-#: commands/variable.c:162 utils/misc/guc.c:8401
+#: commands/variable.c:162 utils/misc/guc.c:9069
 #, c-format
 msgid "Unrecognized key word: \"%s\"."
 msgstr "Palavra chave desconhecida: \"%s\"."
@@ -7909,132 +8271,147 @@ msgstr "Palavra chave desconhecida: \"%s\"."
 msgid "Conflicting \"datestyle\" specifications."
 msgstr "Especificações conflitantes de \"datestyle\""
 
-#: commands/variable.c:313
+#: commands/variable.c:296
 #, c-format
 msgid "Cannot specify months in time zone interval."
 msgstr "Não pode especificar meses em intervalo de zona horária."
 
-#: commands/variable.c:319
+#: commands/variable.c:302
 #, c-format
 msgid "Cannot specify days in time zone interval."
 msgstr "Não pode especificar dias em intervalo de zona horária."
 
-#: commands/variable.c:365 commands/variable.c:488
+#: commands/variable.c:344 commands/variable.c:426
 #, c-format
 msgid "time zone \"%s\" appears to use leap seconds"
 msgstr "zona horária \"%s\" parece utilizar segundos intercalados"
 
-#: commands/variable.c:367 commands/variable.c:490
+#: commands/variable.c:346 commands/variable.c:428
 #, c-format
 msgid "PostgreSQL does not support leap seconds."
 msgstr "PostgreSQL não suporta segundos intercalados."
 
-#: commands/variable.c:554
+#: commands/variable.c:355
+#, c-format
+msgid "UTC timezone offset is out of range."
+msgstr "deslocamento de zona horária UTC está fora do intervalo."
+
+#: commands/variable.c:493
 #, c-format
 msgid "cannot set transaction read-write mode inside a read-only transaction"
 msgstr "não pode definir modo leitura-escrita da transação dentro de uma transação somente leitura"
 
-#: commands/variable.c:561
+#: commands/variable.c:500
 #, c-format
 msgid "transaction read-write mode must be set before any query"
 msgstr "modo leitura-escrita de transação deve ser definido antes de qualquer consulta"
 
-#: commands/variable.c:568
+#: commands/variable.c:507
 #, c-format
 msgid "cannot set transaction read-write mode during recovery"
 msgstr "não pode definir modo leitura-escrita de transação durante recuperação"
 
-#: commands/variable.c:617
+#: commands/variable.c:556
 #, c-format
 msgid "SET TRANSACTION ISOLATION LEVEL must be called before any query"
 msgstr "SET TRANSACTION ISOLATION LEVEL deve ser chamado antes de qualquer consulta"
 
-#: commands/variable.c:624
+#: commands/variable.c:563
 #, c-format
 msgid "SET TRANSACTION ISOLATION LEVEL must not be called in a subtransaction"
 msgstr "SET TRANSACTION ISOLATION LEVEL não deve ser chamado em uma subtransação"
 
-#: commands/variable.c:631 storage/lmgr/predicate.c:1585
+#: commands/variable.c:570 storage/lmgr/predicate.c:1588
 #, c-format
 msgid "cannot use serializable mode in a hot standby"
 msgstr "não pode utilizar modo serializável em um servidor em espera ativo"
 
-#: commands/variable.c:632
+#: commands/variable.c:571
 #, c-format
 msgid "You can use REPEATABLE READ instead."
 msgstr "Você pode utilizar REPEATABLE READ ao invés disso."
 
-#: commands/variable.c:680
+#: commands/variable.c:619
 #, c-format
 msgid "SET TRANSACTION [NOT] DEFERRABLE cannot be called within a subtransaction"
 msgstr "SET TRANSACTION [NOT] DEFERRABLE não pode ser chamado em uma subtransação"
 
-#: commands/variable.c:686
+#: commands/variable.c:625
 #, c-format
 msgid "SET TRANSACTION [NOT] DEFERRABLE must be called before any query"
 msgstr "SET TRANSACTION [NOT] DEFERRABLE deve ser chamado antes de qualquer consulta"
 
-#: commands/variable.c:768
+#: commands/variable.c:707
 #, c-format
 msgid "Conversion between %s and %s is not supported."
 msgstr "conversão entre %s e %s não é suportada."
 
-#: commands/variable.c:775
+#: commands/variable.c:714
 #, c-format
 msgid "Cannot change \"client_encoding\" now."
 msgstr "Não pode mudar \"client_encoding\" agora."
 
-#: commands/variable.c:945
+#: commands/variable.c:884
 #, c-format
 msgid "permission denied to set role \"%s\""
 msgstr "permissão negada ao definir role \"%s\""
 
-#: commands/view.c:94
+#: commands/view.c:54
+#, c-format
+msgid "invalid value for \"check_option\" option"
+msgstr "valor é inválido para opção \"check_option\""
+
+#: commands/view.c:55
+#, c-format
+msgid "Valid values are \"local\" and \"cascaded\"."
+msgstr "Valores válidos são \"local\" e \"cascaded\"."
+
+#: commands/view.c:114
 #, c-format
 msgid "could not determine which collation to use for view column \"%s\""
 msgstr "não pôde determinar qual ordenação utilizar na coluna \"%s\" da visão"
 
-#: commands/view.c:109
+#: commands/view.c:129
 #, c-format
 msgid "view must have at least one column"
 msgstr "visão deve ter pelo menos uma coluna"
 
-#: commands/view.c:240 commands/view.c:252
+#: commands/view.c:260 commands/view.c:272
 #, c-format
 msgid "cannot drop columns from view"
 msgstr "não pode apagar colunas da visão"
 
-#: commands/view.c:257
+#: commands/view.c:277
 #, c-format
 msgid "cannot change name of view column \"%s\" to \"%s\""
 msgstr "não pode mudar nome de coluna da visão \"%s\" para \"%s\""
 
-#: commands/view.c:265
+#: commands/view.c:285
 #, c-format
 msgid "cannot change data type of view column \"%s\" from %s to %s"
 msgstr "não pode mudar tipo de dado de coluna da visão \"%s\" de %s para %s"
 
-#: commands/view.c:398
+#: commands/view.c:420
 #, c-format
 msgid "views must not contain SELECT INTO"
 msgstr "visões não devem conter SELECT INTO"
 
-#: commands/view.c:411
+#: commands/view.c:433
 #, c-format
 msgid "views must not contain data-modifying statements in WITH"
 msgstr "visões não devem conter comandos que modificam dados no WITH"
 
-#: commands/view.c:439
+#: commands/view.c:504
 #, c-format
 msgid "CREATE VIEW specifies more column names than columns"
 msgstr "CREATE VIEW especificou mais nomes de colunas do que colunas"
 
-#: commands/view.c:447
+#: commands/view.c:512
 #, c-format
 msgid "views cannot be unlogged because they do not have storage"
 msgstr "visões não podem ser unlogged porque elas não tem armazenamento"
 
-#: commands/view.c:461
+#: commands/view.c:526
 #, c-format
 msgid "view \"%s\" will be a temporary view"
 msgstr "visão \"%s\" será uma visão temporária"
@@ -8069,145 +8446,150 @@ msgstr "cursor \"%s\" não está posicionado em um registro"
 msgid "cursor \"%s\" is not a simply updatable scan of table \"%s\""
 msgstr "cursor \"%s\" não é simplesmente uma busca atualizável da tabela \"%s\""
 
-#: executor/execCurrent.c:231 executor/execQual.c:1138
+#: executor/execCurrent.c:231 executor/execQual.c:1129
 #, c-format
 msgid "type of parameter %d (%s) does not match that when preparing the plan (%s)"
 msgstr "tipo de parâmetro %d (%s) não corresponde aquele ao preparar o plano (%s)"
 
-#: executor/execCurrent.c:243 executor/execQual.c:1150
+#: executor/execCurrent.c:243 executor/execQual.c:1141
 #, c-format
 msgid "no value found for parameter %d"
 msgstr "nenhum valor encontrado para parâmetro %d"
 
-#: executor/execMain.c:954
+#: executor/execMain.c:955
 #, c-format
 msgid "cannot change sequence \"%s\""
 msgstr "não pode mudar sequência \"%s\""
 
-#: executor/execMain.c:960
+#: executor/execMain.c:961
 #, c-format
 msgid "cannot change TOAST relation \"%s\""
 msgstr "não pode mudar relação TOAST \"%s\""
 
-#: executor/execMain.c:978 rewrite/rewriteHandler.c:2318
+#: executor/execMain.c:979 rewrite/rewriteHandler.c:2512
 #, c-format
 msgid "cannot insert into view \"%s\""
 msgstr "não pode inserir na visão \"%s\""
 
-#: executor/execMain.c:980 rewrite/rewriteHandler.c:2321
+#: executor/execMain.c:981 rewrite/rewriteHandler.c:2515
 #, c-format
 msgid "To enable inserting into the view, provide an INSTEAD OF INSERT trigger or an unconditional ON INSERT DO INSTEAD rule."
 msgstr "Para habilitar a inserção em uma visão, forneça um gatilho INSTEAD OF INSERT ou uma regra incondicional ON INSERT DO INSTEAD."
 
-#: executor/execMain.c:986 rewrite/rewriteHandler.c:2326
+#: executor/execMain.c:987 rewrite/rewriteHandler.c:2520
 #, c-format
 msgid "cannot update view \"%s\""
 msgstr "não pode atualizar visão \"%s\""
 
-#: executor/execMain.c:988 rewrite/rewriteHandler.c:2329
+#: executor/execMain.c:989 rewrite/rewriteHandler.c:2523
 #, c-format
 msgid "To enable updating the view, provide an INSTEAD OF UPDATE trigger or an unconditional ON UPDATE DO INSTEAD rule."
 msgstr "Para habilitar a atualização em uma visão, forneça um gatilho INSTEAD OF UPDATE ou uma regra incondicional ON UPDATE DO INSTEAD."
 
-#: executor/execMain.c:994 rewrite/rewriteHandler.c:2334
+#: executor/execMain.c:995 rewrite/rewriteHandler.c:2528
 #, c-format
 msgid "cannot delete from view \"%s\""
 msgstr "não pode excluir da visão \"%s\""
 
-#: executor/execMain.c:996 rewrite/rewriteHandler.c:2337
+#: executor/execMain.c:997 rewrite/rewriteHandler.c:2531
 #, c-format
 msgid "To enable deleting from the view, provide an INSTEAD OF DELETE trigger or an unconditional ON DELETE DO INSTEAD rule."
 msgstr "Para habilitar a exclusão em uma visão, forneça um gatilho INSTEAD OF DELETE ou uma regra incondicional ON DELETE DO INSTEAD."
 
-#: executor/execMain.c:1006
+#: executor/execMain.c:1008
 #, c-format
 msgid "cannot change materialized view \"%s\""
 msgstr "não pode mudar visão materializada \"%s\""
 
-#: executor/execMain.c:1018
+#: executor/execMain.c:1020
 #, c-format
 msgid "cannot insert into foreign table \"%s\""
 msgstr "não pode inserir em tabela externa \"%s\""
 
-#: executor/execMain.c:1024
+#: executor/execMain.c:1026
 #, c-format
 msgid "foreign table \"%s\" does not allow inserts"
 msgstr "tabela externa \"%s\" não permite inserções"
 
-#: executor/execMain.c:1031
+#: executor/execMain.c:1033
 #, c-format
 msgid "cannot update foreign table \"%s\""
 msgstr "não pode atualizar tabela externa \"%s\""
 
-#: executor/execMain.c:1037
+#: executor/execMain.c:1039
 #, c-format
 msgid "foreign table \"%s\" does not allow updates"
 msgstr "tabela externa \"%s\" não permite atualizações"
 
-#: executor/execMain.c:1044
+#: executor/execMain.c:1046
 #, c-format
 msgid "cannot delete from foreign table \"%s\""
 msgstr "não pode excluir da tabela externa \"%s\""
 
-#: executor/execMain.c:1050
+#: executor/execMain.c:1052
 #, c-format
 msgid "foreign table \"%s\" does not allow deletes"
 msgstr "tabela externa \"%s\" não permite exclusões"
 
-#: executor/execMain.c:1061
+#: executor/execMain.c:1063
 #, c-format
 msgid "cannot change relation \"%s\""
 msgstr "não pode mudar relação \"%s\""
 
-#: executor/execMain.c:1085
+#: executor/execMain.c:1087
 #, c-format
 msgid "cannot lock rows in sequence \"%s\""
 msgstr "não pode bloquear registros na sequência \"%s\""
 
-#: executor/execMain.c:1092
+#: executor/execMain.c:1094
 #, c-format
 msgid "cannot lock rows in TOAST relation \"%s\""
 msgstr "não pode bloquear registros na relação TOAST \"%s\""
 
-#: executor/execMain.c:1099
+#: executor/execMain.c:1101
 #, c-format
 msgid "cannot lock rows in view \"%s\""
 msgstr "não pode bloquear registros na visão \"%s\""
 
-#: executor/execMain.c:1106
+#: executor/execMain.c:1109
 #, c-format
 msgid "cannot lock rows in materialized view \"%s\""
 msgstr "não pode bloquear registros na visão materializada \"%s\""
 
-#: executor/execMain.c:1113
+#: executor/execMain.c:1116
 #, c-format
 msgid "cannot lock rows in foreign table \"%s\""
 msgstr "não pode bloquear registros na tabela externa \"%s\""
 
-#: executor/execMain.c:1119
+#: executor/execMain.c:1122
 #, c-format
 msgid "cannot lock rows in relation \"%s\""
 msgstr "não pôde bloquear registros na relação \"%s\""
 
-#: executor/execMain.c:1604
+#: executor/execMain.c:1607
 #, c-format
 msgid "null value in column \"%s\" violates not-null constraint"
 msgstr "valor nulo na coluna \"%s\" viola a restrição não-nula"
 
-#: executor/execMain.c:1606 executor/execMain.c:1623
+#: executor/execMain.c:1609 executor/execMain.c:1626 executor/execMain.c:1673
 #, c-format
 msgid "Failing row contains %s."
 msgstr "Registro que falhou contém %s."
 
-#: executor/execMain.c:1621
+#: executor/execMain.c:1624
 #, c-format
 msgid "new row for relation \"%s\" violates check constraint \"%s\""
 msgstr "novo registro da relação \"%s\" viola restrição de verificação \"%s\""
 
-#: executor/execQual.c:305 executor/execQual.c:333 executor/execQual.c:3122
+#: executor/execMain.c:1671
+#, c-format
+msgid "new row violates WITH CHECK OPTION for view \"%s\""
+msgstr ""
+
+#: executor/execQual.c:305 executor/execQual.c:333 executor/execQual.c:3120
 #: utils/adt/array_userfuncs.c:430 utils/adt/arrayfuncs.c:233
 #: utils/adt/arrayfuncs.c:512 utils/adt/arrayfuncs.c:1247
-#: utils/adt/arrayfuncs.c:2920 utils/adt/arrayfuncs.c:4945
+#: utils/adt/arrayfuncs.c:2933 utils/adt/arrayfuncs.c:4958
 #, c-format
 msgid "number of array dimensions (%d) exceeds the maximum allowed (%d)"
 msgstr "número de dimensões da matriz (%d) excede o máximo permitido (%d)"
@@ -8217,164 +8599,162 @@ msgstr "número de dimensões da matriz (%d) excede o máximo permitido (%d)"
 msgid "array subscript in assignment must not be null"
 msgstr "índice da matriz em atribuição não deve ser nulo"
 
-#: executor/execQual.c:641 executor/execQual.c:4043
+#: executor/execQual.c:641 executor/execQual.c:4041
 #, c-format
 msgid "attribute %d has wrong type"
 msgstr "atributo %d tem tipo incorreto"
 
-#: executor/execQual.c:642 executor/execQual.c:4044
+#: executor/execQual.c:642 executor/execQual.c:4042
 #, c-format
 msgid "Table has type %s, but query expects %s."
 msgstr "Tabela tem tipo %s, mas consulta espera %s."
 
-#: executor/execQual.c:845 executor/execQual.c:862 executor/execQual.c:1026
+#: executor/execQual.c:835 executor/execQual.c:852 executor/execQual.c:1017
 #: executor/nodeModifyTable.c:85 executor/nodeModifyTable.c:95
 #: executor/nodeModifyTable.c:112 executor/nodeModifyTable.c:120
 #, c-format
 msgid "table row type and query-specified row type do not match"
 msgstr "tipo registro da tabela e tipo registro especificado na consulta não correspondem"
 
-#: executor/execQual.c:846
+#: executor/execQual.c:836
 #, c-format
 msgid "Table row contains %d attribute, but query expects %d."
 msgid_plural "Table row contains %d attributes, but query expects %d."
 msgstr[0] "Registro da tabela contém %d atributo, mas consulta espera %d."
 msgstr[1] "Registro da tabela contém %d atributos, mas consulta espera %d."
 
-#: executor/execQual.c:863 executor/nodeModifyTable.c:96
+#: executor/execQual.c:853 executor/nodeModifyTable.c:96
 #, c-format
 msgid "Table has type %s at ordinal position %d, but query expects %s."
 msgstr "Tabela tem tipo %s na posição ordinal %d, mas consulta espera %s."
 
-#: executor/execQual.c:1027 executor/execQual.c:1625
+#: executor/execQual.c:1018 executor/execQual.c:1616
 #, c-format
 msgid "Physical storage mismatch on dropped attribute at ordinal position %d."
 msgstr "Armazenamento físico não combina com atributo removido na posição ordinal %d."
 
-#: executor/execQual.c:1304 parser/parse_func.c:93 parser/parse_func.c:325
-#: parser/parse_func.c:634
+#: executor/execQual.c:1295 parser/parse_func.c:114 parser/parse_func.c:535
+#: parser/parse_func.c:887
 #, c-format
 msgid "cannot pass more than %d argument to a function"
 msgid_plural "cannot pass more than %d arguments to a function"
 msgstr[0] "não pode passar mais do que %d argumento para uma função"
 msgstr[1] "não pode passar mais do que %d argumentos para uma função"
 
-#: executor/execQual.c:1493
+#: executor/execQual.c:1484
 #, c-format
 msgid "functions and operators can take at most one set argument"
 msgstr "funções e operadores podem receber no máximo um argumento do tipo conjunto"
 
-#: executor/execQual.c:1543
+#: executor/execQual.c:1534
 #, c-format
 msgid "function returning setof record called in context that cannot accept type record"
 msgstr "função que retorna setof record foi chamada em um contexto que não pode aceitar tipo record"
 
-#: executor/execQual.c:1598 executor/execQual.c:1614 executor/execQual.c:1624
+#: executor/execQual.c:1589 executor/execQual.c:1605 executor/execQual.c:1615
 #, c-format
 msgid "function return row and query-specified return row do not match"
 msgstr "registro de retorno da função e registro de retorno especificado na consulta não correspondem"
 
-#: executor/execQual.c:1599
+#: executor/execQual.c:1590
 #, c-format
 msgid "Returned row contains %d attribute, but query expects %d."
 msgid_plural "Returned row contains %d attributes, but query expects %d."
 msgstr[0] "Registro retornado contém %d atributo, mas consulta espera %d."
 msgstr[1] "Registro retornado contém %d atributos, mas consulta espera %d."
 
-#: executor/execQual.c:1615
+#: executor/execQual.c:1606
 #, c-format
 msgid "Returned type %s at ordinal position %d, but query expects %s."
 msgstr "Tipo retornado %s na posição ordinal %d, mas consulta espera %s."
 
-#: executor/execQual.c:1857 executor/execQual.c:2281
+#: executor/execQual.c:1848 executor/execQual.c:2279
 #, c-format
 msgid "table-function protocol for materialize mode was not followed"
 msgstr "protocolo de função tabular para modo materializado não foi seguido"
 
-#: executor/execQual.c:1877 executor/execQual.c:2288
+#: executor/execQual.c:1868 executor/execQual.c:2286
 #, c-format
 msgid "unrecognized table-function returnMode: %d"
 msgstr "modo de retorno (returnMode) da função tabular desconhecido: %d"
 
-#: executor/execQual.c:2198
+#: executor/execQual.c:2196
 #, c-format
 msgid "function returning set of rows cannot return null value"
 msgstr "função que retorna conjunto de registros não pode retornar valor nulo"
 
-#: executor/execQual.c:2255
+#: executor/execQual.c:2253
 #, c-format
 msgid "rows returned by function are not all of the same row type"
 msgstr "registros retornados pela função não são todos do mesmo tipo registro"
 
-#: executor/execQual.c:2470
+#: executor/execQual.c:2468
 #, c-format
 msgid "IS DISTINCT FROM does not support set arguments"
 msgstr "IS DISTINCT FROM não suporta conjunto de argumentos"
 
-#: executor/execQual.c:2547
+#: executor/execQual.c:2545
 #, c-format
 msgid "op ANY/ALL (array) does not support set arguments"
 msgstr "op ANY/ALL (array) não suporta conjunto de argumentos"
 
-#: executor/execQual.c:3100
+#: executor/execQual.c:3098
 #, c-format
 msgid "cannot merge incompatible arrays"
 msgstr "não pode mesclar matrizes incompatíveis"
 
-#: executor/execQual.c:3101
+#: executor/execQual.c:3099
 #, c-format
 msgid "Array with element type %s cannot be included in ARRAY construct with element type %s."
 msgstr "Matriz com tipo de elemento %s não pode ser incluído em uma construção ARRAY com tipo de elemento %s."
 
-#: executor/execQual.c:3142 executor/execQual.c:3169
+#: executor/execQual.c:3140 executor/execQual.c:3167
 #: utils/adt/arrayfuncs.c:547
 #, c-format
 msgid "multidimensional arrays must have array expressions with matching dimensions"
 msgstr "matrizes multidimensionais devem ter expressões de matriz com dimensões correspondentes"
 
-#: executor/execQual.c:3684
+#: executor/execQual.c:3682
 #, c-format
 msgid "NULLIF does not support set arguments"
 msgstr "NULLIF não suporta conjunto de argumentos"
 
-#: executor/execQual.c:3914 utils/adt/domains.c:131
+#: executor/execQual.c:3912 utils/adt/domains.c:131
 #, c-format
 msgid "domain %s does not allow null values"
 msgstr "domínio %s não permite valores nulos"
 
-#: executor/execQual.c:3944 utils/adt/domains.c:168
+#: executor/execQual.c:3942 utils/adt/domains.c:168
 #, c-format
 msgid "value for domain %s violates check constraint \"%s\""
 msgstr "valor para domínio %s viola restrição de verificação \"%s\""
 
-#: executor/execQual.c:4302
+#: executor/execQual.c:4300
 #, c-format
 msgid "WHERE CURRENT OF is not supported for this table type"
 msgstr "WHERE CURRENT OF não é suportado para esse tipo de tabela"
 
-#: executor/execQual.c:4444 optimizer/util/clauses.c:573
-#: parser/parse_agg.c:347
+#: executor/execQual.c:4446 parser/parse_agg.c:434 parser/parse_agg.c:464
 #, c-format
 msgid "aggregate function calls cannot be nested"
 msgstr "chamadas de função de agregação não podem ser aninhadas"
 
-#: executor/execQual.c:4482 optimizer/util/clauses.c:647
-#: parser/parse_agg.c:443
+#: executor/execQual.c:4486 parser/parse_agg.c:565
 #, c-format
 msgid "window function calls cannot be nested"
 msgstr "chamadas de função deslizante não podem ser aninhadas"
 
-#: executor/execQual.c:4694
+#: executor/execQual.c:4698
 #, c-format
 msgid "target type is not an array"
 msgstr "tipo alvo não é uma matriz"
 
-#: executor/execQual.c:4808
+#: executor/execQual.c:4812
 #, c-format
 msgid "ROW() column has type %s instead of type %s"
 msgstr "coluna ROW() tem tipo %s ao invés do tipo %s"
 
-#: executor/execQual.c:4943 utils/adt/arrayfuncs.c:3383
+#: executor/execQual.c:4947 utils/adt/arrayfuncs.c:3396
 #: utils/adt/rowtypes.c:921
 #, c-format
 msgid "could not identify a comparison function for type %s"
@@ -8390,22 +8770,22 @@ msgstr "visão materializada \"%s\" não foi preenchida"
 msgid "Use the REFRESH MATERIALIZED VIEW command."
 msgstr "Utilize o comando REFRESH MATERIALIZED VIEW."
 
-#: executor/execUtils.c:1323
+#: executor/execUtils.c:1324
 #, c-format
 msgid "could not create exclusion constraint \"%s\""
 msgstr "não pôde criar restrição de exclusão \"%s\""
 
-#: executor/execUtils.c:1325
+#: executor/execUtils.c:1326
 #, c-format
 msgid "Key %s conflicts with key %s."
 msgstr "Chave %s conflita com chave %s."
 
-#: executor/execUtils.c:1332
+#: executor/execUtils.c:1333
 #, c-format
 msgid "conflicting key value violates exclusion constraint \"%s\""
 msgstr "conflitar valor da chave viola a restrição de exclusão \"%s\""
 
-#: executor/execUtils.c:1334
+#: executor/execUtils.c:1335
 #, c-format
 msgid "Key %s conflicts with existing key %s."
 msgstr "Chave %s conflita com chave existente %s."
@@ -8422,7 +8802,7 @@ msgid "%s is not allowed in a SQL function"
 msgstr "%s não é permitido em uma função SQL"
 
 #. translator: %s is a SQL statement name
-#: executor/functions.c:513 executor/spi.c:1342 executor/spi.c:2126
+#: executor/functions.c:513 executor/spi.c:1343 executor/spi.c:2127
 #, c-format
 msgid "%s is not allowed in a non-volatile function"
 msgstr "%s não é permitido em uma função não-volátil"
@@ -8432,59 +8812,59 @@ msgstr "%s não é permitido em uma função não-volátil"
 msgid "could not determine actual result type for function declared to return type %s"
 msgstr "não pôde determinar tipo de resultado para função declarada que retorna tipo %s"
 
-#: executor/functions.c:1403
+#: executor/functions.c:1402
 #, c-format
 msgid "SQL function \"%s\" statement %d"
 msgstr "função SQL \"%s\" comando %d"
 
-#: executor/functions.c:1429
+#: executor/functions.c:1428
 #, c-format
 msgid "SQL function \"%s\" during startup"
 msgstr "função SQL \"%s\" durante inicialização"
 
-#: executor/functions.c:1588 executor/functions.c:1625
-#: executor/functions.c:1637 executor/functions.c:1750
-#: executor/functions.c:1783 executor/functions.c:1813
+#: executor/functions.c:1587 executor/functions.c:1624
+#: executor/functions.c:1636 executor/functions.c:1749
+#: executor/functions.c:1782 executor/functions.c:1812
 #, c-format
 msgid "return type mismatch in function declared to return %s"
 msgstr "tipo de retorno não corresponde com o que foi declarado %s na função"
 
-#: executor/functions.c:1590
+#: executor/functions.c:1589
 #, c-format
 msgid "Function's final statement must be SELECT or INSERT/UPDATE/DELETE RETURNING."
 msgstr "Último comando da função deve ser um SELECT ou INSERT/UPDATE/DELETE RETURNING."
 
-#: executor/functions.c:1627
+#: executor/functions.c:1626
 #, c-format
 msgid "Final statement must return exactly one column."
 msgstr "Último comando deve retornar exatamente uma coluna."
 
-#: executor/functions.c:1639
+#: executor/functions.c:1638
 #, c-format
 msgid "Actual return type is %s."
 msgstr "Tipo atual de retorno é %s."
 
-#: executor/functions.c:1752
+#: executor/functions.c:1751
 #, c-format
 msgid "Final statement returns too many columns."
 msgstr "Último comando retornou muitas colunas."
 
-#: executor/functions.c:1785
+#: executor/functions.c:1784
 #, c-format
 msgid "Final statement returns %s instead of %s at column %d."
 msgstr "Último comando retornou %s ao invés de %s na coluna %d."
 
-#: executor/functions.c:1815
+#: executor/functions.c:1814
 #, c-format
 msgid "Final statement returns too few columns."
 msgstr "Último comando retornou poucas colunas."
 
-#: executor/functions.c:1864
+#: executor/functions.c:1863
 #, c-format
 msgid "return type %s is not supported for SQL functions"
 msgstr "tipo de retorno %s não é suportado pelas funções SQL"
 
-#: executor/nodeAgg.c:1739 executor/nodeWindowAgg.c:1856
+#: executor/nodeAgg.c:1865 executor/nodeWindowAgg.c:2285
 #, c-format
 msgid "aggregate %u needs to have compatible input type and transition type"
 msgstr "agregação %u precisa ter tipo de entrada e tipo transitório compatíveis"
@@ -8545,22 +8925,27 @@ msgstr "Consulta tem poucas colunas."
 msgid "more than one row returned by a subquery used as an expression"
 msgstr "mais de um registro foi retornado por uma subconsulta utilizada como uma expressão"
 
-#: executor/nodeWindowAgg.c:1240
+#: executor/nodeWindowAgg.c:353
+#, fuzzy, c-format
+msgid "moving-aggregate transition function must not return null"
+msgstr "função de transição de agregação não deve retornar NULL"
+
+#: executor/nodeWindowAgg.c:1609
 #, c-format
 msgid "frame starting offset must not be null"
 msgstr "deslocamento inicial de quadro não deve ser nulo"
 
-#: executor/nodeWindowAgg.c:1253
+#: executor/nodeWindowAgg.c:1622
 #, c-format
 msgid "frame starting offset must not be negative"
 msgstr "deslocamento inicial de quadro não deve ser negativo"
 
-#: executor/nodeWindowAgg.c:1266
+#: executor/nodeWindowAgg.c:1635
 #, c-format
 msgid "frame ending offset must not be null"
 msgstr "deslocamento final de quadro não deve ser nulo"
 
-#: executor/nodeWindowAgg.c:1279
+#: executor/nodeWindowAgg.c:1648
 #, c-format
 msgid "frame ending offset must not be negative"
 msgstr "deslocamento final de quadro não deve ser negativo"
@@ -8580,28 +8965,28 @@ msgstr "Verifique a ausência de chamadas \"SPI_finish\"."
 msgid "subtransaction left non-empty SPI stack"
 msgstr "subtransação não deixou pilha SPI vazia"
 
-#: executor/spi.c:1206
+#: executor/spi.c:1207
 #, c-format
 msgid "cannot open multi-query plan as cursor"
 msgstr "não pode abrir plano de múltiplas consultas como cursor"
 
 #. translator: %s is name of a SQL command, eg INSERT
-#: executor/spi.c:1211
+#: executor/spi.c:1212
 #, c-format
 msgid "cannot open %s query as cursor"
 msgstr "não pode abrir consulta %s como cursor"
 
-#: executor/spi.c:1319
+#: executor/spi.c:1320
 #, c-format
 msgid "DECLARE SCROLL CURSOR ... FOR UPDATE/SHARE is not supported"
 msgstr "DECLARE SCROLL CURSOR ... FOR UPDATE/SHARE não é suportado"
 
-#: executor/spi.c:1320 parser/analyze.c:2119
+#: executor/spi.c:1321 parser/analyze.c:2132
 #, c-format
 msgid "Scrollable cursors must be READ ONLY."
 msgstr "Cursores roláveis devem ser READ ONLY."
 
-#: executor/spi.c:2416
+#: executor/spi.c:2417
 #, c-format
 msgid "SQL statement \"%s\""
 msgstr "comando SQL \"%s\""
@@ -8626,42 +9011,42 @@ msgstr "opção \"%s\" é inválida"
 msgid "Valid options in this context are: %s"
 msgstr "Opções válidas nesse contexto são: %s"
 
-#: gram.y:942
+#: gram.y:956
 #, c-format
 msgid "unrecognized role option \"%s\""
 msgstr "opção de role desconhecida \"%s\""
 
-#: gram.y:1224 gram.y:1239
+#: gram.y:1238 gram.y:1253
 #, c-format
 msgid "CREATE SCHEMA IF NOT EXISTS cannot include schema elements"
 msgstr "CREATE SCHEMA IF NOT EXISTS não pode incluir elementos do esquema"
 
-#: gram.y:1381
+#: gram.y:1398
 #, c-format
 msgid "current database cannot be changed"
 msgstr "banco de dados atual não pode ser mudado"
 
-#: gram.y:1508 gram.y:1523
+#: gram.y:1522 gram.y:1537
 #, c-format
 msgid "time zone interval must be HOUR or HOUR TO MINUTE"
 msgstr "intervalo de zona horária deve ser HOUR ou HOUR TO MINUTE"
 
-#: gram.y:1528 gram.y:10055 gram.y:12606
+#: gram.y:1542 gram.y:10351 gram.y:12688
 #, c-format
 msgid "interval precision specified twice"
 msgstr "precisão de interval foi especificada duas vezes"
 
-#: gram.y:2360 gram.y:2389
+#: gram.y:2511 gram.y:2540
 #, c-format
 msgid "STDIN/STDOUT not allowed with PROGRAM"
 msgstr "STDIN/STDOUT não é permitido com PROGRAM"
 
-#: gram.y:2647 gram.y:2654 gram.y:9338 gram.y:9346
+#: gram.y:2802 gram.y:2809 gram.y:9589 gram.y:9597
 #, c-format
 msgid "GLOBAL is deprecated in temporary table creation"
 msgstr "GLOBAL está obsoleto na criação de tabela temporária"
 
-#: gram.y:3091 utils/adt/ri_triggers.c:310 utils/adt/ri_triggers.c:367
+#: gram.y:3248 utils/adt/ri_triggers.c:310 utils/adt/ri_triggers.c:367
 #: utils/adt/ri_triggers.c:786 utils/adt/ri_triggers.c:1009
 #: utils/adt/ri_triggers.c:1165 utils/adt/ri_triggers.c:1346
 #: utils/adt/ri_triggers.c:1511 utils/adt/ri_triggers.c:1687
@@ -8672,786 +9057,796 @@ msgstr "GLOBAL está obsoleto na criação de tabela temporária"
 msgid "MATCH PARTIAL not yet implemented"
 msgstr "MATCH PARTIAL ainda não foi implementado"
 
-#: gram.y:4323
+#: gram.y:4482
 msgid "duplicate trigger events specified"
 msgstr "eventos de gatilho duplicados especificados"
 
-#: gram.y:4418 parser/parse_utilcmd.c:2574 parser/parse_utilcmd.c:2600
+#: gram.y:4577 parser/parse_utilcmd.c:2569 parser/parse_utilcmd.c:2595
 #, c-format
 msgid "constraint declared INITIALLY DEFERRED must be DEFERRABLE"
 msgstr "restrição declarada INITIALLY DEFERRED deve ser DEFERRABLE"
 
-#: gram.y:4425
+#: gram.y:4584
 #, c-format
 msgid "conflicting constraint properties"
 msgstr "propriedades de restrições conflitantes"
 
-#: gram.y:4557
+#: gram.y:4716
 #, c-format
 msgid "CREATE ASSERTION is not yet implemented"
 msgstr "CREATE ASSERTION ainda não foi implementado"
 
-#: gram.y:4573
+#: gram.y:4732
 #, c-format
 msgid "DROP ASSERTION is not yet implemented"
 msgstr "DROP ASSERTION ainda não foi implementado"
 
-#: gram.y:4923
+#: gram.y:5078
 #, c-format
 msgid "RECHECK is no longer required"
 msgstr "RECHECK não é mais requerido"
 
-#: gram.y:4924
+#: gram.y:5079
 #, c-format
 msgid "Update your data type."
 msgstr "Atualize seu tipo de dado."
 
-#: gram.y:6626 utils/adt/regproc.c:656
+#: gram.y:6540
+#, c-format
+msgid "aggregates cannot have output arguments"
+msgstr "agregações não podem ter argumentos de saída"
+
+#: gram.y:6846 utils/adt/regproc.c:738 utils/adt/regproc.c:779
 #, c-format
 msgid "missing argument"
 msgstr "faltando argumento"
 
-#: gram.y:6627 utils/adt/regproc.c:657
+#: gram.y:6847 utils/adt/regproc.c:739 utils/adt/regproc.c:780
 #, c-format
 msgid "Use NONE to denote the missing argument of a unary operator."
 msgstr "Utilize NONE para denotar argumento ausente de um operador unário."
 
-#: gram.y:8022 gram.y:8028 gram.y:8034
+#: gram.y:8236 gram.y:8254
 #, c-format
-msgid "WITH CHECK OPTION is not implemented"
-msgstr "WITH CHECK OPTION não está implementado"
+msgid "WITH CHECK OPTION not supported on recursive views"
+msgstr "WITH CHECK OPTION não é suportado em visões recursivas"
 
-#: gram.y:8983
+#: gram.y:9234
 #, c-format
 msgid "number of columns does not match number of values"
 msgstr "número de colunas não corresponde ao número de valores"
 
-#: gram.y:9442
+#: gram.y:9693
 #, c-format
 msgid "LIMIT #,# syntax is not supported"
 msgstr "sintaxe LIMIT #,# não é suportada"
 
-#: gram.y:9443
+#: gram.y:9694
 #, c-format
 msgid "Use separate LIMIT and OFFSET clauses."
 msgstr "Utilize cláusulas LIMIT e OFFSET separadas."
 
-#: gram.y:9634 gram.y:9659
+#: gram.y:9882 gram.y:9907
 #, c-format
 msgid "VALUES in FROM must have an alias"
 msgstr "VALUES no FROM deve ter um aliás"
 
-#: gram.y:9635 gram.y:9660
+#: gram.y:9883 gram.y:9908
 #, c-format
 msgid "For example, FROM (VALUES ...) [AS] foo."
 msgstr "Por exemplo, FROM (VALUES ...) [AS] foo."
 
-#: gram.y:9640 gram.y:9665
+#: gram.y:9888 gram.y:9913
 #, c-format
 msgid "subquery in FROM must have an alias"
 msgstr "subconsulta no FROM deve ter um aliás"
 
-#: gram.y:9641 gram.y:9666
+#: gram.y:9889 gram.y:9914
 #, c-format
 msgid "For example, FROM (SELECT ...) [AS] foo."
 msgstr "Por exemplo, FROM (SELECT ...) [AS] foo."
 
-#: gram.y:10181
+#: gram.y:10477
 #, c-format
 msgid "precision for type float must be at least 1 bit"
 msgstr "precisão para tipo float deve ser pelo menos 1 bit"
 
-#: gram.y:10190
+#: gram.y:10486
 #, c-format
 msgid "precision for type float must be less than 54 bits"
 msgstr "precisão para tipo float deve ser menor do que 54 bits"
 
-#: gram.y:10729
+#: gram.y:10952
 #, c-format
 msgid "wrong number of parameters on left side of OVERLAPS expression"
 msgstr "número incorreto de parâmetros no lado esquerdo da expressão OVERLAPS"
 
-#: gram.y:10734
+#: gram.y:10957
 #, c-format
 msgid "wrong number of parameters on right side of OVERLAPS expression"
 msgstr "número incorreto de parâmetros no lado direito da expressão OVERLAPS"
 
-#: gram.y:10923
+#: gram.y:11141
 #, c-format
 msgid "UNIQUE predicate is not yet implemented"
 msgstr "predicado UNIQUE ainda não foi implementado"
 
-#: gram.y:11873
+#: gram.y:11428
+#, c-format
+msgid "cannot use multiple ORDER BY clauses with WITHIN GROUP"
+msgstr "não pode utilizar múltiplas cláusulas ORDER BY com WITHIN GROUP"
+
+#: gram.y:11433
+#, c-format
+msgid "cannot use DISTINCT with WITHIN GROUP"
+msgstr "não pode utilizar DISTINCT com WITHIN GROUP"
+
+#: gram.y:11438
+#, c-format
+msgid "cannot use VARIADIC with WITHIN GROUP"
+msgstr "não pode utilizar VARIADIC com WITHIN GROUP"
+
+#: gram.y:11944
 #, c-format
 msgid "RANGE PRECEDING is only supported with UNBOUNDED"
 msgstr "RANGE PRECEDING só é suportado com UNBOUNDED"
 
-#: gram.y:11879
+#: gram.y:11950
 #, c-format
 msgid "RANGE FOLLOWING is only supported with UNBOUNDED"
 msgstr "RANGE FOLLOWING só é suportado com UNBOUNDED"
 
-#: gram.y:11906 gram.y:11929
+#: gram.y:11977 gram.y:12000
 #, c-format
 msgid "frame start cannot be UNBOUNDED FOLLOWING"
 msgstr "início de quadro não pode ser UNBOUNDED FOLLOWING"
 
-#: gram.y:11911
+#: gram.y:11982
 #, c-format
 msgid "frame starting from following row cannot end with current row"
 msgstr "quadro iniciando do próximo registro não pode terminar com registro atual"
 
-#: gram.y:11934
+#: gram.y:12005
 #, c-format
 msgid "frame end cannot be UNBOUNDED PRECEDING"
 msgstr "fim de quadro não pode ser UNBOUNDED PRECEDING"
 
-#: gram.y:11940
+#: gram.y:12011
 #, c-format
 msgid "frame starting from current row cannot have preceding rows"
 msgstr "quadro iniciando do registro atual não pode ter registros anteriores"
 
-#: gram.y:11947
+#: gram.y:12018
 #, c-format
 msgid "frame starting from following row cannot have preceding rows"
 msgstr "quadro iniciando do próximo registro não pode ter registro anteriores"
 
-#: gram.y:12581
+#: gram.y:12657
 #, c-format
 msgid "type modifier cannot have parameter name"
 msgstr "modificador de tipo não pode ter nome de parâmetro"
 
-#: gram.y:13198 gram.y:13373
+#: gram.y:12663
+#, c-format
+msgid "type modifier cannot have ORDER BY"
+msgstr "modificador de tipo não pode ter ORDER BY"
+
+#: gram.y:13284 gram.y:13459
 msgid "improper use of \"*\""
 msgstr "uso inválido de \"*\""
 
-#: gram.y:13336 gram.y:13353 tsearch/spell.c:518 tsearch/spell.c:535
+#: gram.y:13422 gram.y:13439 tsearch/spell.c:518 tsearch/spell.c:535
 #: tsearch/spell.c:552 tsearch/spell.c:569 tsearch/spell.c:591
 #, c-format
 msgid "syntax error"
 msgstr "erro de sintaxe"
 
-#: gram.y:13424
+#: gram.y:13523
+#, c-format
+msgid "an ordered-set aggregate with a VARIADIC direct argument must have one VARIADIC aggregated argument of the same data type"
+msgstr ""
+
+#: gram.y:13560
 #, c-format
 msgid "multiple ORDER BY clauses not allowed"
 msgstr "múltiplas cláusulas ORDER BY não são permitidas"
 
-#: gram.y:13435
+#: gram.y:13571
 #, c-format
 msgid "multiple OFFSET clauses not allowed"
 msgstr "múltiplas cláusulas OFFSET não são permitidas"
 
-#: gram.y:13444
+#: gram.y:13580
 #, c-format
 msgid "multiple LIMIT clauses not allowed"
 msgstr "múltiplas cláusulas LIMIT não são permitidas"
 
-#: gram.y:13453
+#: gram.y:13589
 #, c-format
 msgid "multiple WITH clauses not allowed"
 msgstr "múltiplas cláusulas WITH não são permitidas"
 
-#: gram.y:13599
+#: gram.y:13729
 #, c-format
 msgid "OUT and INOUT arguments aren't allowed in TABLE functions"
 msgstr "argumentos OUT e INOUT não são permitidos em funções TABLE"
 
-#: gram.y:13700
+#: gram.y:13830
 #, c-format
 msgid "multiple COLLATE clauses not allowed"
 msgstr "múltiplas cláusulas COLLATE não são permitidas"
 
 #. translator: %s is CHECK, UNIQUE, or similar
-#: gram.y:13738 gram.y:13751
+#: gram.y:13868 gram.y:13881
 #, c-format
 msgid "%s constraints cannot be marked DEFERRABLE"
 msgstr "restrições %s não podem ser marcadas DEFERRABLE"
 
 #. translator: %s is CHECK, UNIQUE, or similar
-#: gram.y:13764
+#: gram.y:13894
 #, c-format
 msgid "%s constraints cannot be marked NOT VALID"
 msgstr "restrições %s não podem ser marcadas NOT VALID"
 
 #. translator: %s is CHECK, UNIQUE, or similar
-#: gram.y:13777
+#: gram.y:13907
 #, c-format
 msgid "%s constraints cannot be marked NO INHERIT"
 msgstr "restrições %s não podem ser marcadas NO INHERIT"
 
-#: guc-file.l:192
+#: guc-file.l:262
 #, c-format
 msgid "unrecognized configuration parameter \"%s\" in file \"%s\" line %u"
 msgstr "parâmetro de configuração \"%s\" desconhecido em arquivo \"%s\" linha %u"
 
-#: guc-file.l:227 utils/misc/guc.c:5270 utils/misc/guc.c:5446
-#: utils/misc/guc.c:5550 utils/misc/guc.c:5651 utils/misc/guc.c:5772
-#: utils/misc/guc.c:5880
+#: guc-file.l:298 utils/misc/guc.c:5661 utils/misc/guc.c:5844
+#: utils/misc/guc.c:5930 utils/misc/guc.c:6016 utils/misc/guc.c:6120
+#: utils/misc/guc.c:6211
 #, c-format
 msgid "parameter \"%s\" cannot be changed without restarting the server"
 msgstr "parâmetro \"%s\" não pode ser mudado sem reiniciar o servidor"
 
-#: guc-file.l:255
+#: guc-file.l:326
 #, c-format
 msgid "parameter \"%s\" removed from configuration file, reset to default"
 msgstr "parâmetro \"%s\" foi removido do arquivo de configuração, reiniciar para padrão"
 
-#: guc-file.l:317
+#: guc-file.l:388
 #, c-format
 msgid "parameter \"%s\" changed to \"%s\""
 msgstr "parâmetro \"%s\" mudou para \"%s\""
 
-#: guc-file.l:351
+#: guc-file.l:423
 #, c-format
 msgid "configuration file \"%s\" contains errors"
 msgstr "arquivo de configuração \"%s\" contém erros"
 
-#: guc-file.l:356
+#: guc-file.l:428
 #, c-format
 msgid "configuration file \"%s\" contains errors; unaffected changes were applied"
 msgstr "arquivo de configuração \"%s\" contém erros; alterações não afetadas foram aplicadas"
 
-#: guc-file.l:361
+#: guc-file.l:433
 #, c-format
 msgid "configuration file \"%s\" contains errors; no changes were applied"
 msgstr "arquivo de configuração \"%s\" contém erros; nenhuma alteração foi aplicada"
 
-#: guc-file.l:426
+#: guc-file.l:503
 #, c-format
 msgid "could not open configuration file \"%s\": maximum nesting depth exceeded"
 msgstr "não pôde abrir arquivo de configuração \"%s\": profundidade aninhada máxima excedida"
 
-#: guc-file.l:439 libpq/hba.c:1802
+#: guc-file.l:516 libpq/hba.c:1789
 #, c-format
 msgid "could not open configuration file \"%s\": %m"
 msgstr "não pôde abrir arquivo de configuração \"%s\": %m"
 
-#: guc-file.l:446
+#: guc-file.l:523
 #, c-format
 msgid "skipping missing configuration file \"%s\""
 msgstr "ignorando arquivo de configuração ausente \"%s\""
 
-#: guc-file.l:655
+#: guc-file.l:762
 #, c-format
 msgid "syntax error in file \"%s\" line %u, near end of line"
 msgstr "erro de sintaxe no arquivo \"%s\" linha %u, próximo ao fim da linha"
 
-#: guc-file.l:660
+#: guc-file.l:767
 #, c-format
 msgid "syntax error in file \"%s\" line %u, near token \"%s\""
 msgstr "erro de sintaxe no arquivo \"%s\" linha %u, próximo a informação \"%s\""
 
-#: guc-file.l:676
+#: guc-file.l:783
 #, c-format
 msgid "too many syntax errors found, abandoning file \"%s\""
 msgstr "muitos erros de sintaxe encontrados, abandonando arquivo \"%s\""
 
-#: guc-file.l:721
+#: guc-file.l:828
 #, c-format
 msgid "could not open configuration directory \"%s\": %m"
 msgstr "não pôde abrir diretório de configuração \"%s\": %m"
 
-#: lib/stringinfo.c:267
+#: lib/stringinfo.c:259
 #, c-format
 msgid "Cannot enlarge string buffer containing %d bytes by %d more bytes."
 msgstr "Não pode aumentar o buffer de cadeia de caracteres contendo %d bytes para mais %d bytes."
 
-#: libpq/auth.c:257
+#: libpq/auth.c:235
 #, c-format
 msgid "authentication failed for user \"%s\": host rejected"
 msgstr "autenticação de usuário \"%s\" falhou: máquina rejeitada"
 
-#: libpq/auth.c:260
-#, c-format
-msgid "Kerberos 5 authentication failed for user \"%s\""
-msgstr "autenticação do tipo Kerberos 5 falhou para usuário \"%s\""
-
-#: libpq/auth.c:263
+#: libpq/auth.c:238
 #, c-format
 msgid "\"trust\" authentication failed for user \"%s\""
 msgstr "autenticação do tipo \"trust\" falhou para usuário \"%s\""
 
-#: libpq/auth.c:266
+#: libpq/auth.c:241
 #, c-format
 msgid "Ident authentication failed for user \"%s\""
 msgstr "autenticação do tipo Ident falhou para usuário \"%s\""
 
-#: libpq/auth.c:269
+#: libpq/auth.c:244
 #, c-format
 msgid "Peer authentication failed for user \"%s\""
 msgstr "autenticação do tipo peer falhou para usuário \"%s\""
 
-#: libpq/auth.c:273
+#: libpq/auth.c:248
 #, c-format
 msgid "password authentication failed for user \"%s\""
 msgstr "autenticação do tipo password falhou para usuário \"%s\""
 
-#: libpq/auth.c:278
+#: libpq/auth.c:253
 #, c-format
 msgid "GSSAPI authentication failed for user \"%s\""
 msgstr "autenticação do tipo GSSAPI falhou para usuário \"%s\""
 
-#: libpq/auth.c:281
+#: libpq/auth.c:256
 #, c-format
 msgid "SSPI authentication failed for user \"%s\""
 msgstr "autenticação do tipo SSPI falhou para usuário \"%s\""
 
-#: libpq/auth.c:284
+#: libpq/auth.c:259
 #, c-format
 msgid "PAM authentication failed for user \"%s\""
 msgstr "autenticação do tipo PAM falhou para usuário \"%s\""
 
-#: libpq/auth.c:287
+#: libpq/auth.c:262
 #, c-format
 msgid "LDAP authentication failed for user \"%s\""
 msgstr "autenticação do tipo LDAP falhou para usuário \"%s\""
 
-#: libpq/auth.c:290
+#: libpq/auth.c:265
 #, c-format
 msgid "certificate authentication failed for user \"%s\""
 msgstr "autenticação do tipo certificate falhou para usuário \"%s\""
 
-#: libpq/auth.c:293
+#: libpq/auth.c:268
 #, c-format
 msgid "RADIUS authentication failed for user \"%s\""
 msgstr "autenticação do tipo RADIUS falhou para usuário \"%s\""
 
-#: libpq/auth.c:296
+#: libpq/auth.c:271
 #, c-format
 msgid "authentication failed for user \"%s\": invalid authentication method"
 msgstr "autenticação falhou para usuário \"%s\": método de autenticação é inválido"
 
-#: libpq/auth.c:304
+#: libpq/auth.c:275
 #, c-format
 msgid "Connection matched pg_hba.conf line %d: \"%s\""
 msgstr "Conexão correspondeu a linha %d do pg_hba.conf: \"%s\""
 
-#: libpq/auth.c:359
+#: libpq/auth.c:337
 #, c-format
 msgid "connection requires a valid client certificate"
 msgstr "conexão requer um certificado cliente válido"
 
-#: libpq/auth.c:401
+#: libpq/auth.c:379
 #, c-format
 msgid "pg_hba.conf rejects replication connection for host \"%s\", user \"%s\", %s"
 msgstr "pg_hba.conf rejeitou conexão de replicação para máquina \"%s\", usuário \"%s\", %s"
 
-#: libpq/auth.c:403 libpq/auth.c:419 libpq/auth.c:467 libpq/auth.c:485
+#: libpq/auth.c:381 libpq/auth.c:397 libpq/auth.c:455 libpq/auth.c:473
 msgid "SSL off"
 msgstr "SSL desabilitado"
 
-#: libpq/auth.c:403 libpq/auth.c:419 libpq/auth.c:467 libpq/auth.c:485
+#: libpq/auth.c:381 libpq/auth.c:397 libpq/auth.c:455 libpq/auth.c:473
 msgid "SSL on"
 msgstr "SSL habilitado"
 
-#: libpq/auth.c:407
+#: libpq/auth.c:385
 #, c-format
 msgid "pg_hba.conf rejects replication connection for host \"%s\", user \"%s\""
 msgstr "pg_hba.conf rejeitou conexão de replicação para máquina \"%s\", usuário \"%s\""
 
-#: libpq/auth.c:416
+#: libpq/auth.c:394
 #, c-format
 msgid "pg_hba.conf rejects connection for host \"%s\", user \"%s\", database \"%s\", %s"
 msgstr "pg_hba.conf rejeitou conexão para máquina \"%s\", usuário \"%s\", banco de dados \"%s\", %s"
 
-#: libpq/auth.c:423
+#: libpq/auth.c:401
 #, c-format
 msgid "pg_hba.conf rejects connection for host \"%s\", user \"%s\", database \"%s\""
 msgstr "pg_hba.conf rejeitou conexão para máquina \"%s\", usuário \"%s\", banco de dados \"%s\""
 
-#: libpq/auth.c:452
+#: libpq/auth.c:430
 #, c-format
 msgid "Client IP address resolved to \"%s\", forward lookup matches."
 msgstr "Endereço IP do cliente resolveu para \"%s\", pesquisa direta combina."
 
-#: libpq/auth.c:454
+#: libpq/auth.c:433
 #, c-format
 msgid "Client IP address resolved to \"%s\", forward lookup not checked."
 msgstr "Endereço IP do cliente resolveu para \"%s\", pesquisa direta não foi feita."
 
-#: libpq/auth.c:456
+#: libpq/auth.c:436
 #, c-format
 msgid "Client IP address resolved to \"%s\", forward lookup does not match."
 msgstr "Endereço IP do cliente resolveu para \"%s\", pesquisa direta não combina."
 
-#: libpq/auth.c:465
+#: libpq/auth.c:439
+#, c-format
+msgid "Could not translate client host name \"%s\" to IP address: %s."
+msgstr "Não pôde traduzir nome da máquina do cliente \"%s\" para endereço IP: %s."
+
+#: libpq/auth.c:444
+#, c-format
+msgid "Could not resolve client IP address to a host name: %s."
+msgstr "Não pôde resolver endereço IP do cliente para um nome da máquina: %s."
+
+#: libpq/auth.c:453
 #, c-format
 msgid "no pg_hba.conf entry for replication connection from host \"%s\", user \"%s\", %s"
 msgstr "nenhuma entrada no pg_hba.conf para conexão de replicação da máquina \"%s\", usuário \"%s\", %s"
 
-#: libpq/auth.c:472
+#: libpq/auth.c:460
 #, c-format
 msgid "no pg_hba.conf entry for replication connection from host \"%s\", user \"%s\""
 msgstr "nenhuma entrada no pg_hba.conf para conexão de replicação da máquina \"%s\", usuário \"%s\""
 
-#: libpq/auth.c:482
+#: libpq/auth.c:470
 #, c-format
 msgid "no pg_hba.conf entry for host \"%s\", user \"%s\", database \"%s\", %s"
 msgstr "nenhuma entrada no pg_hba.conf para máquina \"%s\", usuário \"%s\", banco de dados \"%s\", %s"
 
-#: libpq/auth.c:490
+#: libpq/auth.c:478
 #, c-format
 msgid "no pg_hba.conf entry for host \"%s\", user \"%s\", database \"%s\""
 msgstr "nenhuma entrada no pg_hba.conf para máquina \"%s\", usuário \"%s\", banco de dados \"%s\""
 
-#: libpq/auth.c:542 libpq/hba.c:1206
+#: libpq/auth.c:521 libpq/hba.c:1212
 #, c-format
 msgid "MD5 authentication is not supported when \"db_user_namespace\" is enabled"
 msgstr "autenticação MD5 não é suportada quando \"db_user_namespace\" está habilitado"
 
-#: libpq/auth.c:666
+#: libpq/auth.c:645
 #, c-format
 msgid "expected password response, got message type %d"
 msgstr "resposta da senha esperada, recebeu tipo de mensagem %d"
 
-#: libpq/auth.c:694
+#: libpq/auth.c:673
 #, c-format
 msgid "invalid password packet size"
 msgstr "tamanho do pacote de senha é inválido"
 
-#: libpq/auth.c:698
+#: libpq/auth.c:677
 #, c-format
 msgid "received password packet"
 msgstr "pacote de senha recebido"
 
-#: libpq/auth.c:756
-#, c-format
-msgid "Kerberos initialization returned error %d"
-msgstr "inicialização do Kerberos retornou erro %d"
-
-#: libpq/auth.c:766
-#, c-format
-msgid "Kerberos keytab resolving returned error %d"
-msgstr "resolução do keytab do Kerberos retornou erro %d"
-
-#: libpq/auth.c:790
-#, c-format
-msgid "Kerberos sname_to_principal(\"%s\", \"%s\") returned error %d"
-msgstr "Kerberos sname_to_principal(\"%s\", \"%s\") retornou erro %d"
-
-#: libpq/auth.c:835
-#, c-format
-msgid "Kerberos recvauth returned error %d"
-msgstr "Kerberos recvauth retornou erro %d"
-
-#: libpq/auth.c:858
-#, c-format
-msgid "Kerberos unparse_name returned error %d"
-msgstr "Kerberos unparse_name retornou erro %d"
-
-#: libpq/auth.c:1006
+#: libpq/auth.c:804
 #, c-format
 msgid "GSSAPI is not supported in protocol version 2"
 msgstr "GSSAPI não é suportado no protocolo versão 2"
 
-#: libpq/auth.c:1061
+#: libpq/auth.c:859
 #, c-format
 msgid "expected GSS response, got message type %d"
 msgstr "resposta do GSS esperada, recebeu tipo de mensagem %d"
 
-#: libpq/auth.c:1120
+#: libpq/auth.c:918
 msgid "accepting GSS security context failed"
 msgstr "aceitação do contexto de segurança do GSS falhou"
 
-#: libpq/auth.c:1146
+#: libpq/auth.c:944
 msgid "retrieving GSS user name failed"
 msgstr "recuperação do nome de usuário do GSS falhou"
 
-#: libpq/auth.c:1263
+#: libpq/auth.c:1061
 #, c-format
 msgid "SSPI is not supported in protocol version 2"
 msgstr "SSPI não é suportado no protocolo versão 2"
 
-#: libpq/auth.c:1278
+#: libpq/auth.c:1076
 msgid "could not acquire SSPI credentials"
 msgstr "não pôde obter credenciais SSPI"
 
-#: libpq/auth.c:1295
+#: libpq/auth.c:1093
 #, c-format
 msgid "expected SSPI response, got message type %d"
 msgstr "resposta do SSPI esperada, recebeu tipo de mensagem %d"
 
-#: libpq/auth.c:1367
+#: libpq/auth.c:1165
 msgid "could not accept SSPI security context"
 msgstr "não pôde aceitar contexto de segurança do SSPI"
 
-#: libpq/auth.c:1429
+#: libpq/auth.c:1227
 msgid "could not get token from SSPI security context"
 msgstr "não pôde obter token do contexto de segurança do SSPI"
 
-#: libpq/auth.c:1673
+#: libpq/auth.c:1470
 #, c-format
 msgid "could not create socket for Ident connection: %m"
 msgstr "não pôde criar soquete para conexão com Ident: %m"
 
-#: libpq/auth.c:1688
+#: libpq/auth.c:1485
 #, c-format
 msgid "could not bind to local address \"%s\": %m"
 msgstr "não pôde se ligar ao endereço local \"%s\": %m"
 
-#: libpq/auth.c:1700
+#: libpq/auth.c:1497
 #, c-format
 msgid "could not connect to Ident server at address \"%s\", port %s: %m"
 msgstr "não pôde conectar ao servidor Ident no endereço \"%s\", porta %s: %m"
 
-#: libpq/auth.c:1720
+#: libpq/auth.c:1517
 #, c-format
 msgid "could not send query to Ident server at address \"%s\", port %s: %m"
 msgstr "não pôde enviar consulta ao servidor Ident no endereço \"%s\", porta %s: %m"
 
-#: libpq/auth.c:1735
+#: libpq/auth.c:1532
 #, c-format
 msgid "could not receive response from Ident server at address \"%s\", port %s: %m"
 msgstr "não pôde receber resposta do servidor Ident no endereço \"%s\", porta %s: %m"
 
-#: libpq/auth.c:1745
+#: libpq/auth.c:1542
 #, c-format
 msgid "invalidly formatted response from Ident server: \"%s\""
 msgstr "resposta invalidamente formatada pelo servidor Ident: \"%s\""
 
-#: libpq/auth.c:1784
+#: libpq/auth.c:1580
 #, c-format
 msgid "peer authentication is not supported on this platform"
 msgstr "autenticação do tipo peer não é suportada nesta plataforma"
 
-#: libpq/auth.c:1788
+#: libpq/auth.c:1584
 #, c-format
 msgid "could not get peer credentials: %m"
 msgstr "não pôde receber credenciais: %m"
 
-#: libpq/auth.c:1797
+#: libpq/auth.c:1593
 #, c-format
-msgid "local user with ID %d does not exist"
-msgstr "usuário local com ID %d não existe"
+msgid "failed to look up local user id %ld: %s"
+msgstr "falhou ao encontrar id de usuário local %ld: %s"
 
-#: libpq/auth.c:1880 libpq/auth.c:2151 libpq/auth.c:2516
+#: libpq/auth.c:1676 libpq/auth.c:1947 libpq/auth.c:2304
 #, c-format
 msgid "empty password returned by client"
 msgstr "senha vazia retornada pelo cliente"
 
-#: libpq/auth.c:1890
+#: libpq/auth.c:1686
 #, c-format
 msgid "error from underlying PAM layer: %s"
 msgstr "erro da biblioteca PAM: %s"
 
-#: libpq/auth.c:1959
+#: libpq/auth.c:1755
 #, c-format
 msgid "could not create PAM authenticator: %s"
 msgstr "não pôde criar autenticador PAM: %s"
 
-#: libpq/auth.c:1970
+#: libpq/auth.c:1766
 #, c-format
 msgid "pam_set_item(PAM_USER) failed: %s"
 msgstr "pam_set_item(PAM_USER) falhou: %s"
 
-#: libpq/auth.c:1981
+#: libpq/auth.c:1777
 #, c-format
 msgid "pam_set_item(PAM_CONV) failed: %s"
 msgstr "pam_set_item(PAM_CONV) falhou: %s"
 
-#: libpq/auth.c:1992
+#: libpq/auth.c:1788
 #, c-format
 msgid "pam_authenticate failed: %s"
 msgstr "pam_authenticate falhou: %s"
 
-#: libpq/auth.c:2003
+#: libpq/auth.c:1799
 #, c-format
 msgid "pam_acct_mgmt failed: %s"
 msgstr "pam_acct_mgmt falhou: %s"
 
-#: libpq/auth.c:2014
+#: libpq/auth.c:1810
 #, c-format
 msgid "could not release PAM authenticator: %s"
 msgstr "não pôde liberar autenticador PAM: %s"
 
-#: libpq/auth.c:2047
+#: libpq/auth.c:1843
 #, c-format
 msgid "could not initialize LDAP: %m"
 msgstr "não pôde inicializar LDAP: %m"
 
-#: libpq/auth.c:2050
+#: libpq/auth.c:1846
 #, c-format
 msgid "could not initialize LDAP: error code %d"
 msgstr "não pôde inicializar LDAP: código de erro %d"
 
-#: libpq/auth.c:2060
+#: libpq/auth.c:1856
 #, c-format
 msgid "could not set LDAP protocol version: %s"
 msgstr "não pôde definir versão do protocolo LDAP: %s"
 
-#: libpq/auth.c:2089
+#: libpq/auth.c:1885
 #, c-format
 msgid "could not load wldap32.dll"
 msgstr "não pôde carregar wldap32.dll"
 
-#: libpq/auth.c:2097
+#: libpq/auth.c:1893
 #, c-format
 msgid "could not load function _ldap_start_tls_sA in wldap32.dll"
 msgstr "não pôde carregar função _ldap_start_tls_sA em wldap32.dll"
 
-#: libpq/auth.c:2098
+#: libpq/auth.c:1894
 #, c-format
 msgid "LDAP over SSL is not supported on this platform."
 msgstr "LDAP sobre SSL não é suportado nesta plataforma."
 
-#: libpq/auth.c:2113
+#: libpq/auth.c:1909
 #, c-format
 msgid "could not start LDAP TLS session: %s"
 msgstr "não pôde iniciar sessão LDAP TLS: %s"
 
-#: libpq/auth.c:2135
+#: libpq/auth.c:1931
 #, c-format
 msgid "LDAP server not specified"
 msgstr "servidor LDAP não foi especificado"
 
-#: libpq/auth.c:2188
+#: libpq/auth.c:1984
 #, c-format
 msgid "invalid character in user name for LDAP authentication"
 msgstr "caracter inválido em nome de usuário para autenticação LDAP"
 
-#: libpq/auth.c:2203
+#: libpq/auth.c:1999
 #, c-format
 msgid "could not perform initial LDAP bind for ldapbinddn \"%s\" on server \"%s\": %s"
 msgstr "não pôde realizar ligação inicial LDAP para ldapbinddn \"%s\" no servidor \"%s\": %s"
 
-#: libpq/auth.c:2228
+#: libpq/auth.c:2023
 #, c-format
 msgid "could not search LDAP for filter \"%s\" on server \"%s\": %s"
 msgstr "não pôde buscar no LDAP por filtro \"%s\" no servidor \"%s\": %s"
 
-#: libpq/auth.c:2239
+#: libpq/auth.c:2034
 #, c-format
 msgid "LDAP user \"%s\" does not exist"
 msgstr "usuário do LDAP \"%s\" não existe"
 
-#: libpq/auth.c:2240
+#: libpq/auth.c:2035
 #, c-format
 msgid "LDAP search for filter \"%s\" on server \"%s\" returned no entries."
 msgstr "busca LDAP falhou para filtro \"%s\" no servidor \"%s\": não retornou entradas."
 
-#: libpq/auth.c:2244
+#: libpq/auth.c:2039
 #, c-format
 msgid "LDAP user \"%s\" is not unique"
 msgstr "usuário do LDAP \"%s\" não é único"
 
-#: libpq/auth.c:2245
+#: libpq/auth.c:2040
 #, c-format
 msgid "LDAP search for filter \"%s\" on server \"%s\" returned %d entry."
 msgid_plural "LDAP search for filter \"%s\" on server \"%s\" returned %d entries."
 msgstr[0] "busca LDAP falhou para filtro \"%s\" no servidor \"%s\": retornou %d entrada."
 msgstr[1] "busca LDAP falhou para filtro \"%s\" no servidor \"%s\": retornou %d entradas."
 
-#: libpq/auth.c:2263
+#: libpq/auth.c:2058
 #, c-format
 msgid "could not get dn for the first entry matching \"%s\" on server \"%s\": %s"
 msgstr "não pôde obter dn para a primeira entrada que corresponde a \"%s\" no servidor \"%s\": %s"
 
-#: libpq/auth.c:2283
+#: libpq/auth.c:2078
 #, c-format
 msgid "could not unbind after searching for user \"%s\" on server \"%s\": %s"
 msgstr "não pôde desligar-se após buscar pelo usuário \"%s\" no servidor \"%s\": %s"
 
-#: libpq/auth.c:2320
+#: libpq/auth.c:2108
 #, c-format
 msgid "LDAP login failed for user \"%s\" on server \"%s\": %s"
 msgstr "autenticação LDAP falhou para usuário \"%s\" no servidor \"%s\": %s"
 
-#: libpq/auth.c:2348
+#: libpq/auth.c:2136
 #, c-format
 msgid "certificate authentication failed for user \"%s\": client certificate contains no user name"
 msgstr "autenticação com certificado falhou para usuário \"%s\": certificado cliente não contém usuário"
 
-#: libpq/auth.c:2472
+#: libpq/auth.c:2260
 #, c-format
 msgid "RADIUS server not specified"
 msgstr "servidor RADIUS não foi especificado"
 
-#: libpq/auth.c:2479
+#: libpq/auth.c:2267
 #, c-format
 msgid "RADIUS secret not specified"
 msgstr "segredo do RADIUS não foi especificado"
 
-#: libpq/auth.c:2495 libpq/hba.c:1622
+#: libpq/auth.c:2283 libpq/hba.c:1609
 #, c-format
 msgid "could not translate RADIUS server name \"%s\" to address: %s"
 msgstr "não pôde traduzir nome de servidor RADIUS \"%s\" para endereço: %s"
 
-#: libpq/auth.c:2523
+#: libpq/auth.c:2311
 #, c-format
 msgid "RADIUS authentication does not support passwords longer than 16 characters"
 msgstr "autenticação RADIUS não suporta senhas mais longas do que 16 caracteres"
 
-#: libpq/auth.c:2534
+#: libpq/auth.c:2322
 #, c-format
 msgid "could not generate random encryption vector"
 msgstr "não pôde gerar vetor de criptografia randômico"
 
-#: libpq/auth.c:2557
+#: libpq/auth.c:2345
 #, c-format
 msgid "could not perform MD5 encryption of password"
 msgstr "não pôde realizar criptografia MD5 da senha"
 
-#: libpq/auth.c:2579
+#: libpq/auth.c:2367
 #, c-format
 msgid "could not create RADIUS socket: %m"
 msgstr "não pôde criar soquete RADIUS: %m"
 
-#: libpq/auth.c:2600
+#: libpq/auth.c:2388
 #, c-format
 msgid "could not bind local RADIUS socket: %m"
 msgstr "não pôde se ligar ao soquete RADIUS: %m"
 
-#: libpq/auth.c:2610
+#: libpq/auth.c:2398
 #, c-format
 msgid "could not send RADIUS packet: %m"
 msgstr "não pôde enviar pacote RADIUS: %m"
 
-#: libpq/auth.c:2639 libpq/auth.c:2664
+#: libpq/auth.c:2427 libpq/auth.c:2452
 #, c-format
 msgid "timeout waiting for RADIUS response"
 msgstr "tempo de espera esgotado para resposta do RADIUS"
 
-#: libpq/auth.c:2657
+#: libpq/auth.c:2445
 #, c-format
 msgid "could not check status on RADIUS socket: %m"
 msgstr "não pôde verificar status no soquete do RADIUS: %m"
 
-#: libpq/auth.c:2686
+#: libpq/auth.c:2474
 #, c-format
 msgid "could not read RADIUS response: %m"
 msgstr "não pôde ler resposta do RADIUS: %m"
 
-#: libpq/auth.c:2698 libpq/auth.c:2702
+#: libpq/auth.c:2486 libpq/auth.c:2490
 #, c-format
 msgid "RADIUS response was sent from incorrect port: %d"
 msgstr "resposta RADIUS foi enviada de porta incorreta: %d"
 
-#: libpq/auth.c:2711
+#: libpq/auth.c:2499
 #, c-format
 msgid "RADIUS response too short: %d"
 msgstr "resposta RADIUS muito curta: %d"
 
-#: libpq/auth.c:2718
+#: libpq/auth.c:2506
 #, c-format
 msgid "RADIUS response has corrupt length: %d (actual length %d)"
 msgstr "resposta RADIUS tem tamanho corrompido: %d (tamanho atual %d)"
 
-#: libpq/auth.c:2726
+#: libpq/auth.c:2514
 #, c-format
 msgid "RADIUS response is to a different request: %d (should be %d)"
 msgstr "resposta RADIUS é para uma solicitação diferente: %d (deveria ser %d)"
 
-#: libpq/auth.c:2751
+#: libpq/auth.c:2539
 #, c-format
 msgid "could not perform MD5 encryption of received packet"
 msgstr "não pôde realizar criptografia MD5 do pacote recebido"
 
-#: libpq/auth.c:2760
+#: libpq/auth.c:2548
 #, c-format
 msgid "RADIUS response has incorrect MD5 signature"
 msgstr "resposta RADIUS tem assinatura MD5 incorreta"
 
-#: libpq/auth.c:2777
+#: libpq/auth.c:2565
 #, c-format
 msgid "RADIUS response has invalid code (%d) for user \"%s\""
 msgstr "resposta RADIUS tem código inválido (%d) para usuário \"%s\""
@@ -9464,6 +9859,7 @@ msgid "invalid large-object descriptor: %d"
 msgstr "descritor de objeto grande é inválido: %d"
 
 #: libpq/be-fsstubs.c:180 libpq/be-fsstubs.c:218 libpq/be-fsstubs.c:602
+#: libpq/be-fsstubs.c:790
 #, c-format
 msgid "permission denied for large object %u"
 msgstr "permissão negada para objeto grande %u"
@@ -9523,125 +9919,165 @@ msgstr "não pôde criar arquivo \"%s\" no servidor: %m"
 msgid "could not write server file \"%s\": %m"
 msgstr "não pôde escrever no arquivo \"%s\" no servidor: %m"
 
-#: libpq/be-secure.c:284 libpq/be-secure.c:379
+#: libpq/be-fsstubs.c:815
+#, c-format
+msgid "large object read request is too large"
+msgstr "requisição de leitura de objeto grande é muito grande"
+
+#: libpq/be-fsstubs.c:857 utils/adt/genfile.c:187 utils/adt/genfile.c:232
+#, c-format
+msgid "requested length cannot be negative"
+msgstr "tamanho solicitado não pode ser negativo"
+
+#: libpq/be-secure.c:296 libpq/be-secure.c:418
 #, c-format
 msgid "SSL error: %s"
 msgstr "erro de SSL: %s"
 
-#: libpq/be-secure.c:293 libpq/be-secure.c:388 libpq/be-secure.c:943
+#: libpq/be-secure.c:305 libpq/be-secure.c:427 libpq/be-secure.c:1046
 #, c-format
 msgid "unrecognized SSL error code: %d"
 msgstr "código de erro SSL desconhecido: %d"
 
-#: libpq/be-secure.c:332 libpq/be-secure.c:336 libpq/be-secure.c:346
+#: libpq/be-secure.c:365
+#, fuzzy, c-format
+msgid "SSL failure during renegotiation start"
+msgstr "falha SSL durante início de renegociação"
+
+#: libpq/be-secure.c:380
+#, fuzzy, c-format
+msgid "SSL handshake failure on renegotiation, retrying"
+msgstr "falha de handshake SSL na renegociação, tentando novamente"
+
+#: libpq/be-secure.c:384
+#, c-format
+msgid "unable to complete SSL handshake"
+msgstr ""
+
+#: libpq/be-secure.c:453
 #, c-format
-msgid "SSL renegotiation failure"
-msgstr "renegociação SSL falhou"
+msgid "SSL failed to renegotiate connection before limit expired"
+msgstr "SSL falhou ao renegociar conexão antes do limite expirar"
 
-#: libpq/be-secure.c:340
+#: libpq/be-secure.c:793
+#, fuzzy, c-format
+msgid "ECDH: unrecognized curve name: %s"
+msgstr "ECDH: nome de curva desconhecido: %s"
+
+#: libpq/be-secure.c:798
 #, c-format
-msgid "SSL failed to send renegotiation request"
-msgstr "SSL falhou ao enviar pedido de renegociação"
+msgid "ECDH: could not create key"
+msgstr "ECDH: não pôde criar chave"
 
-#: libpq/be-secure.c:741
+#: libpq/be-secure.c:835
 #, c-format
 msgid "could not create SSL context: %s"
 msgstr "não pôde criar contexto SSL: %s"
 
-#: libpq/be-secure.c:757
+#: libpq/be-secure.c:851
 #, c-format
 msgid "could not load server certificate file \"%s\": %s"
 msgstr "não pôde carregar arquivo de certificado do servidor \"%s\": %s"
 
-#: libpq/be-secure.c:763
+#: libpq/be-secure.c:857
 #, c-format
 msgid "could not access private key file \"%s\": %m"
 msgstr "não pôde acessar arquivo da chave privada \"%s\": %m"
 
-#: libpq/be-secure.c:778
+#: libpq/be-secure.c:872
 #, c-format
 msgid "private key file \"%s\" has group or world access"
 msgstr "arquivo da chave privada \"%s\" tem acesso para grupo ou outros"
 
-#: libpq/be-secure.c:780
+#: libpq/be-secure.c:874
 #, c-format
 msgid "Permissions should be u=rw (0600) or less."
 msgstr "Permissões devem ser u=rwx (0600) ou menos."
 
-#: libpq/be-secure.c:787
+#: libpq/be-secure.c:881
 #, c-format
 msgid "could not load private key file \"%s\": %s"
 msgstr "não pôde carregar arquivo da chave privada \"%s\": %s"
 
-#: libpq/be-secure.c:792
+#: libpq/be-secure.c:886
 #, c-format
 msgid "check of private key failed: %s"
 msgstr "verificação de chave privada falhou: %s"
 
-#: libpq/be-secure.c:812
+#: libpq/be-secure.c:915
 #, c-format
 msgid "could not load root certificate file \"%s\": %s"
 msgstr "não pôde carregar arquivo do certificado raiz \"%s\": %s"
 
-#: libpq/be-secure.c:836
+#: libpq/be-secure.c:939
 #, c-format
 msgid "SSL certificate revocation list file \"%s\" ignored"
 msgstr "arquivo da lista de revogação de certificados SSL \"%s\" ignorado"
 
-#: libpq/be-secure.c:838
+#: libpq/be-secure.c:941
 #, c-format
 msgid "SSL library does not support certificate revocation lists."
 msgstr "biblioteca SSL instalada não suporta listas de revogação de certificados."
 
-#: libpq/be-secure.c:843
+#: libpq/be-secure.c:946
 #, c-format
 msgid "could not load SSL certificate revocation list file \"%s\": %s"
 msgstr "não pôde carregar arquivo da lista de revogação de certificados SSL \"%s\": %s"
 
-#: libpq/be-secure.c:888
+#: libpq/be-secure.c:991
 #, c-format
 msgid "could not initialize SSL connection: %s"
 msgstr "não pôde inicializar conexão SSL: %s"
 
-#: libpq/be-secure.c:897
+#: libpq/be-secure.c:1000
 #, c-format
 msgid "could not set SSL socket: %s"
 msgstr "não pôde criar soquete SSL: %s"
 
-#: libpq/be-secure.c:923
+#: libpq/be-secure.c:1026
 #, c-format
 msgid "could not accept SSL connection: %m"
 msgstr "não pôde aceitar conexão SSL: %m"
 
-#: libpq/be-secure.c:927 libpq/be-secure.c:938
+#: libpq/be-secure.c:1030 libpq/be-secure.c:1041
 #, c-format
 msgid "could not accept SSL connection: EOF detected"
 msgstr "não pôde aceitar conexão SSL: EOF detectado"
 
-#: libpq/be-secure.c:932
+#: libpq/be-secure.c:1035
 #, c-format
 msgid "could not accept SSL connection: %s"
 msgstr "não pôde aceitar conexão SSL: %s"
 
-#: libpq/be-secure.c:988
+#: libpq/be-secure.c:1091
 #, c-format
 msgid "SSL certificate's common name contains embedded null"
 msgstr "nome do certificado SSL contém nulo embutido"
 
-#: libpq/be-secure.c:999
+#: libpq/be-secure.c:1102
 #, c-format
 msgid "SSL connection from \"%s\""
 msgstr "conexão SSL de \"%s\""
 
-#: libpq/be-secure.c:1050
+#: libpq/be-secure.c:1153
 msgid "no SSL error reported"
 msgstr "nenhum erro SSL relatado"
 
-#: libpq/be-secure.c:1054
+#: libpq/be-secure.c:1157
 #, c-format
 msgid "SSL error code %lu"
 msgstr "código de erro SSL %lu"
 
+#: libpq/crypt.c:67
+#, c-format
+msgid "User \"%s\" has no password assigned."
+msgstr "Usuário \"%s\" não tem senha atribuída."
+
+#: libpq/crypt.c:160
+#, c-format
+msgid "User \"%s\" has an expired password."
+msgstr "Usuário \"%s\" tem uma senha expirada."
+
 #: libpq/hba.c:188
 #, c-format
 msgid "authentication file token too long, skipping: \"%s\""
@@ -9657,305 +10093,295 @@ msgstr "não pôde abrir arquivo de autenticação secundário \"@%s\" como \"%s
 msgid "authentication file line too long"
 msgstr "linha do arquivo de autenticação é muito longa"
 
-#: libpq/hba.c:410 libpq/hba.c:775 libpq/hba.c:791 libpq/hba.c:821
-#: libpq/hba.c:867 libpq/hba.c:880 libpq/hba.c:902 libpq/hba.c:911
-#: libpq/hba.c:934 libpq/hba.c:946 libpq/hba.c:965 libpq/hba.c:986
-#: libpq/hba.c:997 libpq/hba.c:1052 libpq/hba.c:1070 libpq/hba.c:1082
-#: libpq/hba.c:1099 libpq/hba.c:1109 libpq/hba.c:1123 libpq/hba.c:1139
-#: libpq/hba.c:1154 libpq/hba.c:1165 libpq/hba.c:1207 libpq/hba.c:1239
-#: libpq/hba.c:1250 libpq/hba.c:1270 libpq/hba.c:1281 libpq/hba.c:1292
-#: libpq/hba.c:1309 libpq/hba.c:1334 libpq/hba.c:1371 libpq/hba.c:1381
-#: libpq/hba.c:1438 libpq/hba.c:1450 libpq/hba.c:1463 libpq/hba.c:1546
-#: libpq/hba.c:1624 libpq/hba.c:1642 libpq/hba.c:1663 tsearch/ts_locale.c:182
+#: libpq/hba.c:410 libpq/hba.c:787 libpq/hba.c:803 libpq/hba.c:833
+#: libpq/hba.c:879 libpq/hba.c:892 libpq/hba.c:914 libpq/hba.c:923
+#: libpq/hba.c:946 libpq/hba.c:958 libpq/hba.c:977 libpq/hba.c:998
+#: libpq/hba.c:1009 libpq/hba.c:1064 libpq/hba.c:1082 libpq/hba.c:1094
+#: libpq/hba.c:1111 libpq/hba.c:1121 libpq/hba.c:1135 libpq/hba.c:1151
+#: libpq/hba.c:1166 libpq/hba.c:1177 libpq/hba.c:1213 libpq/hba.c:1245
+#: libpq/hba.c:1256 libpq/hba.c:1276 libpq/hba.c:1287 libpq/hba.c:1304
+#: libpq/hba.c:1329 libpq/hba.c:1366 libpq/hba.c:1376 libpq/hba.c:1432
+#: libpq/hba.c:1444 libpq/hba.c:1457 libpq/hba.c:1540 libpq/hba.c:1611
+#: libpq/hba.c:1629 libpq/hba.c:1650 tsearch/ts_locale.c:182
 #, c-format
 msgid "line %d of configuration file \"%s\""
 msgstr "linha %d do arquivo de configuração \"%s\""
 
-#: libpq/hba.c:622
-#, c-format
-msgid "could not translate host name \"%s\" to address: %s"
-msgstr "não pôde traduzir nome da máquina \"%s\" para endereço: %s"
-
 #. translator: the second %s is a list of auth methods
-#: libpq/hba.c:773
+#: libpq/hba.c:785
 #, c-format
 msgid "authentication option \"%s\" is only valid for authentication methods %s"
 msgstr "opção de autenticação \"%s\" só é válida para métodos de autenticação %s"
 
-#: libpq/hba.c:789
+#: libpq/hba.c:801
 #, c-format
 msgid "authentication method \"%s\" requires argument \"%s\" to be set"
 msgstr "método de autenticação \"%s\" requer que argumento \"%s\" seja definido"
 
-#: libpq/hba.c:810
+#: libpq/hba.c:822
 #, c-format
 msgid "missing entry in file \"%s\" at end of line %d"
 msgstr "faltando entrada no arquivo \"%s\" no fim da linha %d"
 
-#: libpq/hba.c:820
+#: libpq/hba.c:832
 #, c-format
 msgid "multiple values in ident field"
 msgstr "múltiplos valores em campo ident"
 
-#: libpq/hba.c:865
+#: libpq/hba.c:877
 #, c-format
 msgid "multiple values specified for connection type"
 msgstr "múltiplos valores especificados para tipo de conexão"
 
-#: libpq/hba.c:866
+#: libpq/hba.c:878
 #, c-format
 msgid "Specify exactly one connection type per line."
 msgstr "Especifique exatamente um tipo de conexão por linha."
 
-#: libpq/hba.c:879
+#: libpq/hba.c:891
 #, c-format
 msgid "local connections are not supported by this build"
 msgstr "conexões locais não são suportadas por essa construção"
 
-#: libpq/hba.c:900
+#: libpq/hba.c:912
 #, c-format
 msgid "hostssl requires SSL to be turned on"
 msgstr "hostssl requer que SSL esteja habilitado"
 
-#: libpq/hba.c:901
+#: libpq/hba.c:913
 #, c-format
 msgid "Set ssl = on in postgresql.conf."
 msgstr "Defina ssl = on no postgresql.conf."
 
-#: libpq/hba.c:909
+#: libpq/hba.c:921
 #, c-format
 msgid "hostssl is not supported by this build"
 msgstr "hostssl não é suportado por essa construção"
 
-#: libpq/hba.c:910
+#: libpq/hba.c:922
 #, c-format
 msgid "Compile with --with-openssl to use SSL connections."
 msgstr "Compile com --with-openssl para utilizar conexões SSL."
 
-#: libpq/hba.c:932
+#: libpq/hba.c:944
 #, c-format
 msgid "invalid connection type \"%s\""
 msgstr "tipo de conexão \"%s\" é inválido"
 
-#: libpq/hba.c:945
+#: libpq/hba.c:957
 #, c-format
 msgid "end-of-line before database specification"
 msgstr "fim de linha antes da especificação de banco de dados"
 
-#: libpq/hba.c:964
+#: libpq/hba.c:976
 #, c-format
 msgid "end-of-line before role specification"
 msgstr "fim de linha antes da especificação de role"
 
-#: libpq/hba.c:985
+#: libpq/hba.c:997
 #, c-format
 msgid "end-of-line before IP address specification"
 msgstr "fim de linha antes da especificação de endereço IP"
 
-#: libpq/hba.c:995
+#: libpq/hba.c:1007
 #, c-format
 msgid "multiple values specified for host address"
 msgstr "múltiplos valores especificados para endereço da máquina"
 
-#: libpq/hba.c:996
+#: libpq/hba.c:1008
 #, c-format
 msgid "Specify one address range per line."
 msgstr "Especifique um intervalo de endereços por linha."
 
-#: libpq/hba.c:1050
+#: libpq/hba.c:1062
 #, c-format
 msgid "invalid IP address \"%s\": %s"
 msgstr "endereço IP \"%s\" é inválido: %s"
 
-#: libpq/hba.c:1068
+#: libpq/hba.c:1080
 #, c-format
 msgid "specifying both host name and CIDR mask is invalid: \"%s\""
 msgstr "especificar nome da máquina e máscara CIDR é inválido: \"%s\""
 
-#: libpq/hba.c:1080
+#: libpq/hba.c:1092
 #, c-format
 msgid "invalid CIDR mask in address \"%s\""
 msgstr "máscara CIDR é inválida no endereço \"%s\""
 
-#: libpq/hba.c:1097
+#: libpq/hba.c:1109
 #, c-format
 msgid "end-of-line before netmask specification"
 msgstr "fim de linha antes da especificação de máscara de rede"
 
-#: libpq/hba.c:1098
+#: libpq/hba.c:1110
 #, c-format
 msgid "Specify an address range in CIDR notation, or provide a separate netmask."
 msgstr "Especifique um intervalo de endereços na notação CIDR ou forneça uma máscara de rede separadamente."
 
-#: libpq/hba.c:1108
+#: libpq/hba.c:1120
 #, c-format
 msgid "multiple values specified for netmask"
 msgstr "múltiplos valores especificados para máscara de rede"
 
-#: libpq/hba.c:1121
+#: libpq/hba.c:1133
 #, c-format
 msgid "invalid IP mask \"%s\": %s"
 msgstr "máscara de endereço IP \"%s\" é inválida: %s"
 
-#: libpq/hba.c:1138
+#: libpq/hba.c:1150
 #, c-format
 msgid "IP address and mask do not match"
 msgstr "endereço IP e máscara não correspodem"
 
-#: libpq/hba.c:1153
+#: libpq/hba.c:1165
 #, c-format
 msgid "end-of-line before authentication method"
 msgstr "fim de linha antes do método de autenticação"
 
-#: libpq/hba.c:1163
+#: libpq/hba.c:1175
 #, c-format
 msgid "multiple values specified for authentication type"
 msgstr "múltiplos valores especificados para tipo de autenticação"
 
-#: libpq/hba.c:1164
+#: libpq/hba.c:1176
 #, c-format
 msgid "Specify exactly one authentication type per line."
 msgstr "Especifique exatamente um tipo de autenticação por linha."
 
-#: libpq/hba.c:1237
+#: libpq/hba.c:1243
 #, c-format
 msgid "invalid authentication method \"%s\""
 msgstr "método de autenticação \"%s\" é inválido"
 
-#: libpq/hba.c:1248
+#: libpq/hba.c:1254
 #, c-format
 msgid "invalid authentication method \"%s\": not supported by this build"
 msgstr "método de autenticação \"%s\" é inválido: não é suportado por essa construção"
 
-#: libpq/hba.c:1269
-#, c-format
-msgid "krb5 authentication is not supported on local sockets"
-msgstr "autenticação krb5 não é suportada em soquetes locais"
-
-#: libpq/hba.c:1280
+#: libpq/hba.c:1275
 #, c-format
 msgid "gssapi authentication is not supported on local sockets"
 msgstr "autenticação do tipo gssapi não é suportada em soquetes locais"
 
-#: libpq/hba.c:1291
+#: libpq/hba.c:1286
 #, c-format
 msgid "peer authentication is only supported on local sockets"
 msgstr "autenticação do tipo peer só é suportada em soquetes locais"
 
-#: libpq/hba.c:1308
+#: libpq/hba.c:1303
 #, c-format
 msgid "cert authentication is only supported on hostssl connections"
 msgstr "autenticação do tipo cert só é suportada em conexões hostssl"
 
-#: libpq/hba.c:1333
+#: libpq/hba.c:1328
 #, c-format
 msgid "authentication option not in name=value format: %s"
 msgstr "opção de autenticação não está  no formato nome=valor: %s"
 
-#: libpq/hba.c:1370
+#: libpq/hba.c:1365
 #, c-format
 msgid "cannot use ldapbasedn, ldapbinddn, ldapbindpasswd, ldapsearchattribute, or ldapurl together with ldapprefix"
 msgstr "não pode utilizar ldapbasedn, ldapbinddn, ldapbindpasswd, ldapsearchattribute ou ldapurl junto com ldapprefix"
 
-#: libpq/hba.c:1380
+#: libpq/hba.c:1375
 #, c-format
 msgid "authentication method \"ldap\" requires argument \"ldapbasedn\", \"ldapprefix\", or \"ldapsuffix\" to be set"
 msgstr "método de autenticação \"ldap\" requer que argumento \"ldapbasedn\", \"ldapprefix\" ou \"ldapsuffix\" seja definido"
 
-#: libpq/hba.c:1424
-msgid "ident, peer, krb5, gssapi, sspi, and cert"
-msgstr "ident, peer, krb5, gssapi, sspi e cert"
+#: libpq/hba.c:1418
+msgid "ident, peer, gssapi, sspi, and cert"
+msgstr "ident, peer, gssapi, sspi e cert"
 
-#: libpq/hba.c:1437
+#: libpq/hba.c:1431
 #, c-format
 msgid "clientcert can only be configured for \"hostssl\" rows"
 msgstr "clientcert só pode ser configurado para registros \"hostssl\""
 
-#: libpq/hba.c:1448
+#: libpq/hba.c:1442
 #, c-format
 msgid "client certificates can only be checked if a root certificate store is available"
 msgstr "certificados cliente só podem ser verificados se um certificado raiz estiver disponível"
 
-#: libpq/hba.c:1449
+#: libpq/hba.c:1443
 #, c-format
 msgid "Make sure the configuration parameter \"ssl_ca_file\" is set."
 msgstr "Certifique-se que o parâmetro de configuração \"ssl_ca_file\" está definido."
 
-#: libpq/hba.c:1462
+#: libpq/hba.c:1456
 #, c-format
 msgid "clientcert can not be set to 0 when using \"cert\" authentication"
 msgstr "clientcert não pode ser definido como 0 ao utilizar autenticação \"cert\""
 
-#: libpq/hba.c:1489
+#: libpq/hba.c:1483
 #, c-format
 msgid "could not parse LDAP URL \"%s\": %s"
 msgstr "não pôde analisar URL do LDAP \"%s\": %s"
 
-#: libpq/hba.c:1497
+#: libpq/hba.c:1491
 #, c-format
 msgid "unsupported LDAP URL scheme: %s"
 msgstr "esquema da URL do LDAP não é suportado: %s"
 
-#: libpq/hba.c:1513
+#: libpq/hba.c:1507
 #, c-format
 msgid "filters not supported in LDAP URLs"
 msgstr "filtros não são suportados em URLs do LDAP"
 
-#: libpq/hba.c:1521
+#: libpq/hba.c:1515
 #, c-format
 msgid "LDAP URLs not supported on this platform"
 msgstr "URLs do LDAP não são suportadas nesta plataforma"
 
-#: libpq/hba.c:1545
+#: libpq/hba.c:1539
 #, c-format
 msgid "invalid LDAP port number: \"%s\""
 msgstr "número de porta LDAP é inválido: \"%s\""
 
-#: libpq/hba.c:1591 libpq/hba.c:1599
-msgid "krb5, gssapi, and sspi"
-msgstr "krb5, gssapi e sspi"
+#: libpq/hba.c:1579 libpq/hba.c:1586
+msgid "gssapi and sspi"
+msgstr "gssapi e sspi"
 
-#: libpq/hba.c:1641
+#: libpq/hba.c:1628
 #, c-format
 msgid "invalid RADIUS port number: \"%s\""
 msgstr "número de porta RADIUS é inválido: \"%s\""
 
-#: libpq/hba.c:1661
+#: libpq/hba.c:1648
 #, c-format
 msgid "unrecognized authentication option name: \"%s\""
 msgstr "nome de opção de autenticação desconhecido: \"%s\""
 
-#: libpq/hba.c:1852
+#: libpq/hba.c:1839
 #, c-format
 msgid "configuration file \"%s\" contains no entries"
 msgstr "arquivo de configuração \"%s\" não contém entradas"
 
-#: libpq/hba.c:1948
+#: libpq/hba.c:1935
 #, c-format
 msgid "invalid regular expression \"%s\": %s"
 msgstr "expressão regular \"%s\" é inválida: %s"
 
-#: libpq/hba.c:2008
+#: libpq/hba.c:1995
 #, c-format
 msgid "regular expression match for \"%s\" failed: %s"
 msgstr "correspondência de expressão regular \"%s\" falhou: %s"
 
-#: libpq/hba.c:2025
+#: libpq/hba.c:2012
 #, c-format
 msgid "regular expression \"%s\" has no subexpressions as requested by backreference in \"%s\""
 msgstr "expressão regular \"%s\" não tem subexpressões como informado na referência anterior em \"%s\""
 
-#: libpq/hba.c:2121
+#: libpq/hba.c:2108
 #, c-format
 msgid "provided user name (%s) and authenticated user name (%s) do not match"
 msgstr "nome de usuário fornecido (%s) e nome de usuário autenticado (%s) não correspondem"
 
-#: libpq/hba.c:2141
+#: libpq/hba.c:2128
 #, c-format
 msgid "no match in usermap \"%s\" for user \"%s\" authenticated as \"%s\""
 msgstr "não há correspondência em mapa de usuários \"%s\" para usuário \"%s\" autenticado como \"%s\""
 
-#: libpq/hba.c:2176
+#: libpq/hba.c:2163
 #, c-format
 msgid "could not open usermap file \"%s\": %m"
 msgstr "não pôde abrir arquivo com mapa de usuários \"%s\": %m"
@@ -10096,7 +10522,7 @@ msgid "no data left in message"
 msgstr "nenhum dado na mensagem"
 
 #: libpq/pqformat.c:556 libpq/pqformat.c:574 libpq/pqformat.c:595
-#: utils/adt/arrayfuncs.c:1416 utils/adt/rowtypes.c:559
+#: utils/adt/arrayfuncs.c:1416 utils/adt/rowtypes.c:561
 #, c-format
 msgid "insufficient data left in message"
 msgstr "dados insuficientes na mensagem"
@@ -10111,17 +10537,17 @@ msgstr "cadeia de caracteres é inválida na mensagem"
 msgid "invalid message format"
 msgstr "formato de mensagem é inválido"
 
-#: main/main.c:241
+#: main/main.c:262
 #, c-format
 msgid "%s: setsysinfo failed: %s\n"
 msgstr "%s: setsysinfo falhou: %s\n"
 
-#: main/main.c:263
+#: main/main.c:284
 #, c-format
 msgid "%s: WSAStartup failed: %d\n"
 msgstr "%s: WSAStartup falhou: %d\n"
 
-#: main/main.c:282
+#: main/main.c:313
 #, c-format
 msgid ""
 "%s is the PostgreSQL server.\n"
@@ -10130,7 +10556,7 @@ msgstr ""
 "%s é o servidor PostgreSQL.\n"
 "\n"
 
-#: main/main.c:283
+#: main/main.c:314
 #, c-format
 msgid ""
 "Usage:\n"
@@ -10141,117 +10567,117 @@ msgstr ""
 "  %s [OPÇÃO]...\n"
 "\n"
 
-#: main/main.c:284
+#: main/main.c:315
 #, c-format
 msgid "Options:\n"
 msgstr "Opções:\n"
 
-#: main/main.c:286
+#: main/main.c:317
 #, c-format
 msgid "  -A 1|0             enable/disable run-time assert checking\n"
 msgstr "  -A 1|0             habilita/desabilita verificação de asserção em tempo de execução\n"
 
-#: main/main.c:288
+#: main/main.c:319
 #, c-format
 msgid "  -B NBUFFERS        number of shared buffers\n"
 msgstr "  -B NBUFFERS        número de buffers compartilhados\n"
 
-#: main/main.c:289
+#: main/main.c:320
 #, c-format
 msgid "  -c NAME=VALUE      set run-time parameter\n"
 msgstr "  -c NOME=VALOR      define o parâmetro em tempo de execução\n"
 
-#: main/main.c:290
+#: main/main.c:321
 #, c-format
 msgid "  -C NAME            print value of run-time parameter, then exit\n"
 msgstr "  -C NOME            mostra valor de parâmetro em tempo de execução e termina\n"
 
-#: main/main.c:291
+#: main/main.c:322
 #, c-format
 msgid "  -d 1-5             debugging level\n"
 msgstr "   -d 1-5            nível de depuração\n"
 
-#: main/main.c:292
+#: main/main.c:323
 #, c-format
 msgid "  -D DATADIR         database directory\n"
 msgstr "  -D DIRDADOS        diretório do banco de dados\n"
 
-#: main/main.c:293
+#: main/main.c:324
 #, c-format
 msgid "  -e                 use European date input format (DMY)\n"
 msgstr "  -e                 usa formato de entrada de data europeu (DMY)\n"
 
-#: main/main.c:294
+#: main/main.c:325
 #, c-format
 msgid "  -F                 turn fsync off\n"
 msgstr "  -F                 desabilita o fsync\n"
 
-#: main/main.c:295
+#: main/main.c:326
 #, c-format
 msgid "  -h HOSTNAME        host name or IP address to listen on\n"
 msgstr "  -h MÁQUINA         nome da máquina ou endereço IP para escutar\n"
 
-#: main/main.c:296
+#: main/main.c:327
 #, c-format
 msgid "  -i                 enable TCP/IP connections\n"
 msgstr "  -i                 habilita conexões TCP/IP\n"
 
-#: main/main.c:297
+#: main/main.c:328
 #, c-format
 msgid "  -k DIRECTORY       Unix-domain socket location\n"
 msgstr "  -k DIRETÓRIO       local do soquete de domínio Unix\n"
 
-#: main/main.c:299
+#: main/main.c:330
 #, c-format
 msgid "  -l                 enable SSL connections\n"
 msgstr "  -l                 habilita conexões SSL\n"
 
-#: main/main.c:301
+#: main/main.c:332
 #, c-format
 msgid "  -N MAX-CONNECT     maximum number of allowed connections\n"
 msgstr "  -N MAX-CONEXÃO     número máximo de conexões permitidas\n"
 
-#: main/main.c:302
+#: main/main.c:333
 #, c-format
 msgid "  -o OPTIONS         pass \"OPTIONS\" to each server process (obsolete)\n"
 msgstr "  -o OPÇÕES          passa \"OPÇÕES\" para cada processo servidor (obsoleto)\n"
 
-#: main/main.c:303
+#: main/main.c:334
 #, c-format
 msgid "  -p PORT            port number to listen on\n"
 msgstr "  -p PORTA           número da porta para escutar\n"
 
-#: main/main.c:304
+#: main/main.c:335
 #, c-format
 msgid "  -s                 show statistics after each query\n"
 msgstr "  -s                 mostra estatísticas após cada consulta\n"
 
-#: main/main.c:305
+#: main/main.c:336
 #, c-format
 msgid "  -S WORK-MEM        set amount of memory for sorts (in kB)\n"
 msgstr "  -S MEM-ORD         define a quantidade de memória para ordenações (em kB)\n"
 
-#: main/main.c:306
+#: main/main.c:337
 #, c-format
 msgid "  -V, --version      output version information, then exit\n"
 msgstr "  -V, --version      mostra informação sobre a versão e termina\n"
 
-#: main/main.c:307
+#: main/main.c:338
 #, c-format
 msgid "  --NAME=VALUE       set run-time parameter\n"
 msgstr "  --NOME=VALOR       define o parâmetro em tempo de execução\n"
 
-#: main/main.c:308
+#: main/main.c:339
 #, c-format
 msgid "  --describe-config  describe configuration parameters, then exit\n"
 msgstr "  --describe-config  descreve parâmetros de configuração e termina\n"
 
-#: main/main.c:309
+#: main/main.c:340
 #, c-format
 msgid "  -?, --help         show this help, then exit\n"
 msgstr "  -?, --help         mostra essa ajuda e termina\n"
 
-#: main/main.c:311
+#: main/main.c:342
 #, c-format
 msgid ""
 "\n"
@@ -10260,42 +10686,42 @@ msgstr ""
 "\n"
 "Opções para desenvolvedor:\n"
 
-#: main/main.c:312
+#: main/main.c:343
 #, c-format
 msgid "  -f s|i|n|m|h       forbid use of some plan types\n"
 msgstr "  -f s|i|n|m|h       impede uso de alguns tipos de planos\n"
 
-#: main/main.c:313
+#: main/main.c:344
 #, c-format
 msgid "  -n                 do not reinitialize shared memory after abnormal exit\n"
 msgstr "  -n                 não reinicializa memória compartilhada depois de término anormal\n"
 
-#: main/main.c:314
+#: main/main.c:345
 #, c-format
 msgid "  -O                 allow system table structure changes\n"
 msgstr "  -O                 permite mudanças na estrutura de tabelas do sistema\n"
 
-#: main/main.c:315
+#: main/main.c:346
 #, c-format
 msgid "  -P                 disable system indexes\n"
 msgstr "  -P                 desabilita índices do sistema\n"
 
-#: main/main.c:316
+#: main/main.c:347
 #, c-format
 msgid "  -t pa|pl|ex        show timings after each query\n"
 msgstr "  -t pa|pl|ex        mostra duração depois de cada consulta\n"
 
-#: main/main.c:317
+#: main/main.c:348
 #, c-format
 msgid "  -T                 send SIGSTOP to all backend processes if one dies\n"
 msgstr "  -T                 envia SIGSTOP para todos os servidores se um deles morrer\n"
 
-#: main/main.c:318
+#: main/main.c:349
 #, c-format
 msgid "  -W NUM             wait NUM seconds to allow attach from a debugger\n"
 msgstr "  -W NUM             espera NUM segundos para permitir que o depurador seja anexado\n"
 
-#: main/main.c:320
+#: main/main.c:351
 #, c-format
 msgid ""
 "\n"
@@ -10304,37 +10730,37 @@ msgstr ""
 "\n"
 "Opções para modo monousuário:\n"
 
-#: main/main.c:321
+#: main/main.c:352
 #, c-format
 msgid "  --single           selects single-user mode (must be first argument)\n"
 msgstr "  --single           seleciona modo monousuário (deve ser o primeiro argumento)\n"
 
-#: main/main.c:322
+#: main/main.c:353
 #, c-format
 msgid "  DBNAME             database name (defaults to user name)\n"
 msgstr "  NOMEBD             nome do banco de dados (padrão é o nome do usuário)\n"
 
-#: main/main.c:323
+#: main/main.c:354
 #, c-format
 msgid "  -d 0-5             override debugging level\n"
 msgstr "  -d 0-5             muda o nível de depuração\n"
 
-#: main/main.c:324
+#: main/main.c:355
 #, c-format
 msgid "  -E                 echo statement before execution\n"
 msgstr "  -E                 mostra consulta antes da execução\n"
 
-#: main/main.c:325
+#: main/main.c:356
 #, c-format
 msgid "  -j                 do not use newline as interactive query delimiter\n"
 msgstr "  -j                 não usa nova linha como delimitador de consulta iterativa\n"
 
-#: main/main.c:326 main/main.c:331
+#: main/main.c:357 main/main.c:362
 #, c-format
 msgid "  -r FILENAME        send stdout and stderr to given file\n"
 msgstr "  -r ARQUIVO         envia saída stdout e stderr para o arquivo designado\n"
 
-#: main/main.c:328
+#: main/main.c:359
 #, c-format
 msgid ""
 "\n"
@@ -10343,22 +10769,22 @@ msgstr ""
 "\n"
 "Opções para modo de ativação:\n"
 
-#: main/main.c:329
+#: main/main.c:360
 #, c-format
 msgid "  --boot             selects bootstrapping mode (must be first argument)\n"
 msgstr "  --boot             seleciona modo de ativação (deve ser o primeiro argumento)\n"
 
-#: main/main.c:330
+#: main/main.c:361
 #, c-format
 msgid "  DBNAME             database name (mandatory argument in bootstrapping mode)\n"
 msgstr "  NOMEBD             nome do banco de dados (argumento obrigatório no modo de ativação)\n"
 
-#: main/main.c:332
+#: main/main.c:363
 #, c-format
 msgid "  -x NUM             internal use\n"
 msgstr "  -x NUM             uso interno\n"
 
-#: main/main.c:334
+#: main/main.c:365
 #, c-format
 msgid ""
 "\n"
@@ -10375,7 +10801,7 @@ msgstr ""
 "\n"
 "Relate erros a .\n"
 
-#: main/main.c:348
+#: main/main.c:379
 #, c-format
 msgid ""
 "\"root\" execution of the PostgreSQL server is not permitted.\n"
@@ -10388,12 +10814,12 @@ msgstr ""
 "possíveis comprometimentos de segurança no sistema. Veja a documentação para\n"
 "obter informações adicionais sobre como iniciar o servidor corretamente.\n"
 
-#: main/main.c:365
+#: main/main.c:396
 #, c-format
 msgid "%s: real and effective user IDs must match\n"
 msgstr "%s: IDs do usuário real e efetivo devem corresponder\n"
 
-#: main/main.c:372
+#: main/main.c:403
 #, c-format
 msgid ""
 "Execution of PostgreSQL by a user with administrative permissions is not\n"
@@ -10408,19 +10834,9 @@ msgstr ""
 "possíveis comprometimentos de segurança no sistema. Veja a documentação para\n"
 "obter informações adicionais sobre como iniciar o servidor corretamente.\n"
 
-#: main/main.c:393
-#, c-format
-msgid "%s: invalid effective UID: %d\n"
-msgstr "%s: UID efetivo é inválido: %d\n"
-
-#: main/main.c:406
-#, c-format
-msgid "%s: could not determine user name (GetUserName failed)\n"
-msgstr "%s: não pôde determinar nome de usuário (GetUserName falhou)\n"
-
 #: nodes/nodeFuncs.c:115 nodes/nodeFuncs.c:141 parser/parse_coerce.c:1782
 #: parser/parse_coerce.c:1810 parser/parse_coerce.c:1886
-#: parser/parse_expr.c:1722 parser/parse_func.c:369 parser/parse_oper.c:948
+#: parser/parse_expr.c:1739 parser/parse_func.c:590 parser/parse_oper.c:948
 #, c-format
 msgid "could not find array type for data type %s"
 msgstr "não pôde encontrar tipo array para tipo de dado %s"
@@ -10437,70 +10853,70 @@ msgid "%s cannot be applied to the nullable side of an outer join"
 msgstr "%s não pode ser aplicado ao lado com valores nulos de um junção externa"
 
 #. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: optimizer/plan/planner.c:1093 parser/analyze.c:1334 parser/analyze.c:1532
-#: parser/analyze.c:2278
+#: optimizer/plan/planner.c:1158 parser/analyze.c:1334 parser/analyze.c:1532
+#: parser/analyze.c:2291
 #, c-format
 msgid "%s is not allowed with UNION/INTERSECT/EXCEPT"
 msgstr "%s não é permitido com UNION/INTERSECT/EXCEPT"
 
-#: optimizer/plan/planner.c:2515
+#: optimizer/plan/planner.c:2723
 #, c-format
 msgid "could not implement GROUP BY"
 msgstr "não pôde implementar GROUP BY"
 
-#: optimizer/plan/planner.c:2516 optimizer/plan/planner.c:2688
-#: optimizer/prep/prepunion.c:824
+#: optimizer/plan/planner.c:2724 optimizer/plan/planner.c:2892
+#: optimizer/prep/prepunion.c:825
 #, c-format
 msgid "Some of the datatypes only support hashing, while others only support sorting."
 msgstr "Alguns dos tipos de dados só suportam utilização de hash, enquanto outros só suportam utilização de ordenação."
 
-#: optimizer/plan/planner.c:2687
+#: optimizer/plan/planner.c:2891
 #, c-format
 msgid "could not implement DISTINCT"
 msgstr "não pôde implementar DISTINCT"
 
-#: optimizer/plan/planner.c:3297
+#: optimizer/plan/planner.c:3497
 #, c-format
 msgid "could not implement window PARTITION BY"
 msgstr "não pôde implementar deslizante PARTITION BY"
 
-#: optimizer/plan/planner.c:3298
+#: optimizer/plan/planner.c:3498
 #, c-format
 msgid "Window partitioning columns must be of sortable datatypes."
 msgstr "Colunas de particionamento de deslizante devem ser de tipos de dados que suportam ordenação."
 
-#: optimizer/plan/planner.c:3302
+#: optimizer/plan/planner.c:3502
 #, c-format
 msgid "could not implement window ORDER BY"
 msgstr "não pôde implementar deslizante ORDER BY"
 
-#: optimizer/plan/planner.c:3303
+#: optimizer/plan/planner.c:3503
 #, c-format
 msgid "Window ordering columns must be of sortable datatypes."
 msgstr "Colunas de ordenação de deslizante devem ser de tipos de dados que suportam ordenação."
 
-#: optimizer/plan/setrefs.c:405
+#: optimizer/plan/setrefs.c:402
 #, c-format
 msgid "too many range table entries"
 msgstr "muitas entradas na tabela de relações"
 
-#: optimizer/prep/prepunion.c:418
+#: optimizer/prep/prepunion.c:419
 #, c-format
 msgid "could not implement recursive UNION"
 msgstr "não pôde implementar UNION recursivo"
 
-#: optimizer/prep/prepunion.c:419
+#: optimizer/prep/prepunion.c:420
 #, c-format
 msgid "All column datatypes must be hashable."
 msgstr "Todos os tipos de dados de colunas devem suportar utilização de hash."
 
 #. translator: %s is UNION, INTERSECT, or EXCEPT
-#: optimizer/prep/prepunion.c:823
+#: optimizer/prep/prepunion.c:824
 #, c-format
 msgid "could not implement %s"
 msgstr "não pôde implementar %s"
 
-#: optimizer/util/clauses.c:4438
+#: optimizer/util/clauses.c:4519
 #, c-format
 msgid "SQL function \"%s\" during inlining"
 msgstr "função SQL \"%s\" durante expansão em linha"
@@ -10541,7 +10957,7 @@ msgid "DEFAULT can only appear in a VALUES list within INSERT"
 msgstr "DEFAULT só pode aparecer em uma lista de VALUES com INSERT"
 
 #. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:1239 parser/analyze.c:2450
+#: parser/analyze.c:1239 parser/analyze.c:2463
 #, c-format
 msgid "%s cannot be applied to VALUES"
 msgstr "%s não pode ser aplicado a VALUES"
@@ -10576,372 +10992,432 @@ msgstr "comando membro do UNION/INTERSECT/EXCEPT não pode referenciar outras re
 msgid "each %s query must have the same number of columns"
 msgstr "cada consulta %s deve ter o mesmo número de colunas"
 
-#: parser/analyze.c:2079
+#: parser/analyze.c:2055
+#, c-format
+msgid "RETURNING must have at least one column"
+msgstr "RETURNING deve ter pelo menos uma coluna"
+
+#: parser/analyze.c:2092
 #, c-format
 msgid "cannot specify both SCROLL and NO SCROLL"
 msgstr "não pode especificar SCROLL e NO SCROLL"
 
-#: parser/analyze.c:2097
+#: parser/analyze.c:2110
 #, c-format
 msgid "DECLARE CURSOR must not contain data-modifying statements in WITH"
 msgstr "DECLARE CURSOR não deve conter comandos que modificam dados no WITH"
 
 #. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:2105
+#: parser/analyze.c:2118
 #, c-format
 msgid "DECLARE CURSOR WITH HOLD ... %s is not supported"
 msgstr "DECLARE CURSOR WITH HOLD ... %s não é suportado"
 
-#: parser/analyze.c:2108
+#: parser/analyze.c:2121
 #, c-form