Translation updates
authorPeter Eisentraut
Wed, 6 Sep 2023 07:04:30 +0000 (09:04 +0200)
committerPeter Eisentraut
Wed, 6 Sep 2023 07:04:30 +0000 (09:04 +0200)
Source-Git-URL: https://git.postgresql.org/git/pgtranslation/messages.git
Source-Git-Hash: c5b5ab1da828e1d7a012431e417f0b75b2450c8f

96 files changed:
src/backend/po/de.po
src/backend/po/es.po
src/backend/po/fr.po
src/backend/po/ja.po
src/backend/po/ka.po
src/backend/po/ru.po
src/backend/po/sv.po
src/bin/initdb/po/de.po
src/bin/initdb/po/es.po
src/bin/initdb/po/fr.po
src/bin/initdb/po/it.po
src/bin/initdb/po/ja.po
src/bin/initdb/po/ka.po
src/bin/initdb/po/pt_BR.po
src/bin/initdb/po/ru.po
src/bin/initdb/po/sv.po
src/bin/pg_amcheck/po/it.po
src/bin/pg_amcheck/po/ru.po
src/bin/pg_amcheck/po/sv.po
src/bin/pg_archivecleanup/po/it.po
src/bin/pg_archivecleanup/po/ru.po
src/bin/pg_basebackup/po/it.po
src/bin/pg_basebackup/po/ru.po
src/bin/pg_basebackup/po/sv.po
src/bin/pg_checksums/po/es.po
src/bin/pg_checksums/po/it.po
src/bin/pg_checksums/po/ru.po
src/bin/pg_checksums/po/uk.po
src/bin/pg_config/po/ru.po
src/bin/pg_config/po/sv.po
src/bin/pg_controldata/po/cs.po
src/bin/pg_controldata/po/fr.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_controldata/po/sv.po
src/bin/pg_ctl/po/fr.po
src/bin/pg_ctl/po/it.po
src/bin/pg_ctl/po/pl.po
src/bin/pg_ctl/po/ru.po
src/bin/pg_ctl/po/sv.po
src/bin/pg_ctl/po/tr.po
src/bin/pg_dump/po/cs.po
src/bin/pg_dump/po/de.po
src/bin/pg_dump/po/fr.po
src/bin/pg_dump/po/it.po
src/bin/pg_dump/po/ja.po
src/bin/pg_dump/po/ru.po
src/bin/pg_resetwal/po/cs.po
src/bin/pg_resetwal/po/de.po
src/bin/pg_resetwal/po/es.po
src/bin/pg_resetwal/po/fr.po
src/bin/pg_resetwal/po/it.po
src/bin/pg_resetwal/po/ja.po
src/bin/pg_resetwal/po/ka.po
src/bin/pg_resetwal/po/ru.po
src/bin/pg_resetwal/po/sv.po
src/bin/pg_rewind/po/fr.po
src/bin/pg_rewind/po/it.po
src/bin/pg_rewind/po/ru.po
src/bin/pg_rewind/po/sv.po
src/bin/pg_test_fsync/po/ru.po
src/bin/pg_test_timing/po/ru.po
src/bin/pg_upgrade/po/fr.po
src/bin/pg_upgrade/po/ja.po
src/bin/pg_upgrade/po/ru.po
src/bin/pg_verifybackup/po/fr.po
src/bin/pg_verifybackup/po/it.po
src/bin/pg_verifybackup/po/ru.po
src/bin/pg_waldump/po/es.po
src/bin/pg_waldump/po/fr.po
src/bin/pg_waldump/po/it.po
src/bin/pg_waldump/po/ru.po
src/bin/pg_waldump/po/sv.po
src/bin/pg_waldump/po/uk.po
src/bin/psql/po/cs.po
src/bin/psql/po/el.po
src/bin/psql/po/es.po
src/bin/psql/po/fr.po
src/bin/psql/po/it.po
src/bin/psql/po/ja.po
src/bin/psql/po/ru.po
src/bin/scripts/po/cs.po
src/bin/scripts/po/es.po
src/bin/scripts/po/fr.po
src/bin/scripts/po/it.po
src/bin/scripts/po/ru.po
src/interfaces/ecpg/ecpglib/po/ru.po
src/interfaces/ecpg/preproc/po/pl.po
src/interfaces/ecpg/preproc/po/ru.po
src/interfaces/libpq/po/ru.po
src/pl/plperl/po/ru.po
src/pl/plpgsql/src/po/ru.po
src/pl/plpython/po/ru.po
src/pl/tcl/po/fr.po
src/pl/tcl/po/ru.po

index 64cdc99afbba80e333f60f4d92cb956a94fa53f5..a4ab8196fc87344be5682b553c49b939443da993 100644 (file)
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: PostgreSQL 16\n"
 "Report-Msgid-Bugs-To: [email protected]\n"
-"POT-Creation-Date: 2023-08-25 02:11+0000\n"
-"PO-Revision-Date: 2023-08-25 08:39+0200\n"
+"POT-Creation-Date: 2023-08-29 23:11+0000\n"
+"PO-Revision-Date: 2023-08-30 08:22+0200\n"
 "Last-Translator: Peter Eisentraut \n"
 "Language-Team: German \n"
 "Language: de\n"
@@ -175,7 +175,7 @@ msgstr "konnte Datei »%s« nicht öffnen: %m"
 #: access/transam/twophase.c:1744 access/transam/twophase.c:1753
 #: access/transam/xlog.c:8755 access/transam/xlogfuncs.c:708
 #: backup/basebackup_server.c:175 backup/basebackup_server.c:268
-#: postmaster/postmaster.c:5570 postmaster/syslogger.c:1571
+#: postmaster/postmaster.c:5573 postmaster/syslogger.c:1571
 #: postmaster/syslogger.c:1584 postmaster/syslogger.c:1597
 #: utils/cache/relmapper.c:936
 #, c-format
@@ -208,8 +208,8 @@ msgstr "konnte Datei »%s« nicht fsyncen: %m"
 #: access/transam/xlogrecovery.c:589 lib/dshash.c:253 libpq/auth.c:1345
 #: libpq/auth.c:1389 libpq/auth.c:1946 libpq/be-secure-gssapi.c:524
 #: postmaster/bgworker.c:352 postmaster/bgworker.c:934
-#: postmaster/postmaster.c:2534 postmaster/postmaster.c:4127
-#: postmaster/postmaster.c:5495 postmaster/postmaster.c:5866
+#: postmaster/postmaster.c:2537 postmaster/postmaster.c:4130
+#: postmaster/postmaster.c:5498 postmaster/postmaster.c:5869
 #: replication/libpqwalreceiver/libpqwalreceiver.c:308
 #: replication/logical/logical.c:208 replication/walsender.c:686
 #: storage/buffer/localbuf.c:601 storage/file/fd.c:866 storage/file/fd.c:1397
@@ -305,7 +305,7 @@ msgstr "konnte »stat« für Datei »%s« nicht ausführen: %m"
 
 #: ../common/file_utils.c:162 ../common/pgfnames.c:48 ../common/rmtree.c:63
 #: commands/tablespace.c:734 commands/tablespace.c:744
-#: postmaster/postmaster.c:1561 storage/file/fd.c:2880
+#: postmaster/postmaster.c:1564 storage/file/fd.c:2880
 #: storage/file/reinit.c:126 utils/adt/misc.c:256 utils/misc/tzparser.c:338
 #, c-format
 msgid "could not open directory \"%s\": %m"
@@ -440,7 +440,7 @@ msgstr "Tipp: "
 
 #: ../common/percentrepl.c:79 ../common/percentrepl.c:85
 #: ../common/percentrepl.c:118 ../common/percentrepl.c:124
-#: postmaster/postmaster.c:2208 utils/misc/guc.c:3118 utils/misc/guc.c:3154
+#: postmaster/postmaster.c:2211 utils/misc/guc.c:3118 utils/misc/guc.c:3154
 #: utils/misc/guc.c:3224 utils/misc/guc.c:4547 utils/misc/guc.c:6721
 #: utils/misc/guc.c:6762
 #, c-format
@@ -1206,7 +1206,7 @@ msgstr "konnte nicht in Datei »%s« schreiben, %d von %d geschrieben: %m"
 #: access/transam/xlog.c:3938 access/transam/xlog.c:8744
 #: access/transam/xlogfuncs.c:702 backup/basebackup_server.c:151
 #: backup/basebackup_server.c:244 commands/dbcommands.c:518
-#: postmaster/postmaster.c:4554 postmaster/postmaster.c:5557
+#: postmaster/postmaster.c:4557 postmaster/postmaster.c:5560
 #: replication/logical/origin.c:603 replication/slot.c:1777
 #: storage/file/copydir.c:157 storage/smgr/md.c:232 utils/time/snapmgr.c:1263
 #, c-format
@@ -1222,7 +1222,7 @@ msgstr "konnte Datei »%s« nicht auf %u kürzen: %m"
 #: access/transam/timeline.c:424 access/transam/timeline.c:498
 #: access/transam/xlog.c:3021 access/transam/xlog.c:3218
 #: access/transam/xlog.c:3950 commands/dbcommands.c:530
-#: postmaster/postmaster.c:4564 postmaster/postmaster.c:4574
+#: postmaster/postmaster.c:4567 postmaster/postmaster.c:4577
 #: replication/logical/origin.c:615 replication/logical/origin.c:657
 #: replication/logical/origin.c:676 replication/logical/snapbuild.c:1767
 #: replication/slot.c:1812 storage/file/buffile.c:545
@@ -3443,7 +3443,7 @@ msgstr "Der fehlgeschlagene Archivbefehl war: %s"
 msgid "archive command was terminated by exception 0x%X"
 msgstr "Archivbefehl wurde durch Ausnahme 0x%X beendet"
 
-#: archive/shell_archive.c:107 postmaster/postmaster.c:3675
+#: archive/shell_archive.c:107 postmaster/postmaster.c:3678
 #, 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."
@@ -9351,8 +9351,8 @@ msgstr "vorbereitete Anweisung »%s« existiert nicht"
 msgid "must be superuser to create custom procedural language"
 msgstr "nur Superuser können maßgeschneiderte prozedurale Sprachen erzeugen"
 
-#: commands/publicationcmds.c:131 postmaster/postmaster.c:1205
-#: postmaster/postmaster.c:1303 storage/file/fd.c:3911
+#: commands/publicationcmds.c:131 postmaster/postmaster.c:1208
+#: postmaster/postmaster.c:1306 storage/file/fd.c:3911
 #: utils/init/miscinit.c:1815
 #, c-format
 msgid "invalid list syntax in parameter \"%s\""
@@ -19438,93 +19438,93 @@ msgstr "%s: ungültige datetoken-Tabellen, bitte reparieren\n"
 msgid "could not create I/O completion port for child queue"
 msgstr "konnte Ein-/Ausgabe-Completion-Port für Child-Queue nicht erzeugen"
 
-#: postmaster/postmaster.c:1164
+#: postmaster/postmaster.c:1175
 #, c-format
 msgid "ending log output to stderr"
 msgstr "Logausgabe nach stderr endet"
 
-#: postmaster/postmaster.c:1165
+#: postmaster/postmaster.c:1176
 #, c-format
 msgid "Future log output will go to log destination \"%s\"."
 msgstr "Die weitere Logausgabe geht an Logziel »%s«."
 
-#: postmaster/postmaster.c:1176
+#: postmaster/postmaster.c:1187
 #, c-format
 msgid "starting %s"
 msgstr "%s startet"
 
-#: postmaster/postmaster.c:1236
+#: postmaster/postmaster.c:1239
 #, c-format
 msgid "could not create listen socket for \"%s\""
 msgstr "konnte Listen-Socket für »%s« nicht erzeugen"
 
-#: postmaster/postmaster.c:1242
+#: postmaster/postmaster.c:1245
 #, c-format
 msgid "could not create any TCP/IP sockets"
 msgstr "konnte keine TCP/IP-Sockets erstellen"
 
-#: postmaster/postmaster.c:1274
+#: postmaster/postmaster.c:1277
 #, c-format
 msgid "DNSServiceRegister() failed: error code %ld"
 msgstr "DNSServiceRegister() fehlgeschlagen: Fehlercode %ld"
 
-#: postmaster/postmaster.c:1325
+#: postmaster/postmaster.c:1328
 #, c-format
 msgid "could not create Unix-domain socket in directory \"%s\""
 msgstr "konnte Unix-Domain-Socket in Verzeichnis »%s« nicht erzeugen"
 
-#: postmaster/postmaster.c:1331
+#: postmaster/postmaster.c:1334
 #, c-format
 msgid "could not create any Unix-domain sockets"
 msgstr "konnte keine Unix-Domain-Sockets erzeugen"
 
-#: postmaster/postmaster.c:1342
+#: postmaster/postmaster.c:1345
 #, c-format
 msgid "no socket created for listening"
 msgstr "keine Listen-Socket erzeugt"
 
-#: postmaster/postmaster.c:1373
+#: postmaster/postmaster.c:1376
 #, c-format
 msgid "%s: could not change permissions of external PID file \"%s\": %s\n"
 msgstr "%s: konnte Rechte der externen PID-Datei »%s« nicht ändern: %s\n"
 
-#: postmaster/postmaster.c:1377
+#: postmaster/postmaster.c:1380
 #, c-format
 msgid "%s: could not write external PID file \"%s\": %s\n"
 msgstr "%s: konnte externe PID-Datei »%s« nicht schreiben: %s\n"
 
 #. translator: %s is a configuration file
-#: postmaster/postmaster.c:1405 utils/init/postinit.c:221
+#: postmaster/postmaster.c:1408 utils/init/postinit.c:221
 #, c-format
 msgid "could not load %s"
 msgstr "konnte %s nicht laden"
 
-#: postmaster/postmaster.c:1431
+#: postmaster/postmaster.c:1434
 #, c-format
 msgid "postmaster became multithreaded during startup"
 msgstr "Postmaster ist während des Starts multithreaded geworden"
 
-#: postmaster/postmaster.c:1432
+#: postmaster/postmaster.c:1435
 #, c-format
 msgid "Set the LC_ALL environment variable to a valid locale."
 msgstr "Setzen Sie die Umgebungsvariable LC_ALL auf eine gültige Locale."
 
-#: postmaster/postmaster.c:1533
+#: postmaster/postmaster.c:1536
 #, c-format
 msgid "%s: could not locate my own executable path"
 msgstr "%s: konnte Pfad des eigenen Programs nicht finden"
 
-#: postmaster/postmaster.c:1540
+#: postmaster/postmaster.c:1543
 #, c-format
 msgid "%s: could not locate matching postgres executable"
 msgstr "%s: konnte kein passendes Programm »postgres« finden"
 
-#: postmaster/postmaster.c:1563 utils/misc/tzparser.c:340
+#: postmaster/postmaster.c:1566 utils/misc/tzparser.c:340
 #, c-format
 msgid "This may indicate an incomplete PostgreSQL installation, or that the file \"%s\" has been moved away from its proper location."
 msgstr "Dies kann auf eine unvollständige PostgreSQL-Installation hindeuten, oder darauf, dass die Datei »%s« von ihrer richtigen Stelle verschoben worden ist."
 
-#: postmaster/postmaster.c:1590
+#: postmaster/postmaster.c:1593
 #, c-format
 msgid ""
 "%s: could not find the database system\n"
@@ -19536,460 +19536,460 @@ msgstr ""
 "aber die Datei »%s« konnte nicht geöffnet werden: %s\n"
 
 #. translator: %s is SIGKILL or SIGABRT
-#: postmaster/postmaster.c:1887
+#: postmaster/postmaster.c:1890
 #, c-format
 msgid "issuing %s to recalcitrant children"
 msgstr "%s wird an ungehorsame Kinder gesendet"
 
-#: postmaster/postmaster.c:1909
+#: postmaster/postmaster.c:1912
 #, c-format
 msgid "performing immediate shutdown because data directory lock file is invalid"
 msgstr "führe sofortiges Herunterfahren durch, weil Sperrdatei im Datenverzeichnis ungültig ist"
 
-#: postmaster/postmaster.c:1984 postmaster/postmaster.c:2012
+#: postmaster/postmaster.c:1987 postmaster/postmaster.c:2015
 #, c-format
 msgid "incomplete startup packet"
 msgstr "unvollständiges Startpaket"
 
-#: postmaster/postmaster.c:1996 postmaster/postmaster.c:2029
+#: postmaster/postmaster.c:1999 postmaster/postmaster.c:2032
 #, c-format
 msgid "invalid length of startup packet"
 msgstr "ungültige Länge des Startpakets"
 
-#: postmaster/postmaster.c:2058
+#: postmaster/postmaster.c:2061
 #, c-format
 msgid "failed to send SSL negotiation response: %m"
 msgstr "konnte SSL-Verhandlungsantwort nicht senden: %m"
 
-#: postmaster/postmaster.c:2076
+#: postmaster/postmaster.c:2079
 #, c-format
 msgid "received unencrypted data after SSL request"
 msgstr "unverschlüsselte Daten nach SSL-Anforderung empfangen"
 
-#: postmaster/postmaster.c:2077 postmaster/postmaster.c:2121
+#: postmaster/postmaster.c:2080 postmaster/postmaster.c:2124
 #, c-format
 msgid "This could be either a client-software bug or evidence of an attempted man-in-the-middle attack."
 msgstr "Das könnte entweder ein Fehler in der Client-Software oder ein Hinweis auf einen versuchten Man-in-the-Middle-Angriff sein."
 
-#: postmaster/postmaster.c:2102
+#: postmaster/postmaster.c:2105
 #, c-format
 msgid "failed to send GSSAPI negotiation response: %m"
 msgstr "konnte GSSAPI-Verhandlungsantwort nicht senden: %m"
 
-#: postmaster/postmaster.c:2120
+#: postmaster/postmaster.c:2123
 #, c-format
 msgid "received unencrypted data after GSSAPI encryption request"
 msgstr "unverschlüsselte Daten nach GSSAPI-Verschlüsselungsanforderung empfangen"
 
-#: postmaster/postmaster.c:2144
+#: postmaster/postmaster.c:2147
 #, 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:2211
+#: postmaster/postmaster.c:2214
 #, c-format
 msgid "Valid values are: \"false\", 0, \"true\", 1, \"database\"."
 msgstr "Gültige Werte sind: »false«, 0, »true«, 1, »database«."
 
-#: postmaster/postmaster.c:2252
+#: postmaster/postmaster.c:2255
 #, 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:2269
+#: postmaster/postmaster.c:2272
 #, c-format
 msgid "no PostgreSQL user name specified in startup packet"
 msgstr "kein PostgreSQL-Benutzername im Startpaket angegeben"
 
-#: postmaster/postmaster.c:2333
+#: postmaster/postmaster.c:2336
 #, c-format
 msgid "the database system is starting up"
 msgstr "das Datenbanksystem startet"
 
-#: postmaster/postmaster.c:2339
+#: postmaster/postmaster.c:2342
 #, c-format
 msgid "the database system is not yet accepting connections"
 msgstr "das Datenbanksystem nimmt noch keine Verbindungen an"
 
-#: postmaster/postmaster.c:2340
+#: postmaster/postmaster.c:2343
 #, c-format
 msgid "Consistent recovery state has not been yet reached."
 msgstr "Konsistenter Wiederherstellungszustand wurde noch nicht erreicht."
 
-#: postmaster/postmaster.c:2344
+#: postmaster/postmaster.c:2347
 #, c-format
 msgid "the database system is not accepting connections"
 msgstr "das Datenbanksystem nimmt keine Verbindungen an"
 
-#: postmaster/postmaster.c:2345
+#: postmaster/postmaster.c:2348
 #, c-format
 msgid "Hot standby mode is disabled."
 msgstr "Hot-Standby-Modus ist deaktiviert."
 
-#: postmaster/postmaster.c:2350
+#: postmaster/postmaster.c:2353
 #, c-format
 msgid "the database system is shutting down"
 msgstr "das Datenbanksystem fährt herunter"
 
-#: postmaster/postmaster.c:2355
+#: postmaster/postmaster.c:2358
 #, c-format
 msgid "the database system is in recovery mode"
 msgstr "das Datenbanksystem ist im Wiederherstellungsmodus"
 
-#: postmaster/postmaster.c:2360 storage/ipc/procarray.c:491
+#: postmaster/postmaster.c:2363 storage/ipc/procarray.c:491
 #: storage/ipc/sinvaladt.c:306 storage/lmgr/proc.c:353
 #, c-format
 msgid "sorry, too many clients already"
 msgstr "tut mir leid, schon zu viele Verbindungen"
 
-#: postmaster/postmaster.c:2447
+#: postmaster/postmaster.c:2450
 #, c-format
 msgid "wrong key in cancel request for process %d"
 msgstr "falscher Schlüssel in Stornierungsanfrage für Prozess %d"
 
-#: postmaster/postmaster.c:2459
+#: postmaster/postmaster.c:2462
 #, 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:2726
+#: postmaster/postmaster.c:2729
 #, c-format
 msgid "received SIGHUP, reloading configuration files"
 msgstr "SIGHUP empfangen, Konfigurationsdateien werden neu geladen"
 
 #. translator: %s is a configuration file
-#: postmaster/postmaster.c:2750 postmaster/postmaster.c:2754
+#: postmaster/postmaster.c:2753 postmaster/postmaster.c:2757
 #, c-format
 msgid "%s was not reloaded"
 msgstr "%s wurde nicht neu geladen"
 
-#: postmaster/postmaster.c:2764
+#: postmaster/postmaster.c:2767
 #, c-format
 msgid "SSL configuration was not reloaded"
 msgstr "SSL-Konfiguration wurde nicht neu geladen"
 
-#: postmaster/postmaster.c:2854
+#: postmaster/postmaster.c:2857
 #, c-format
 msgid "received smart shutdown request"
 msgstr "intelligentes Herunterfahren verlangt"
 
-#: postmaster/postmaster.c:2895
+#: postmaster/postmaster.c:2898
 #, c-format
 msgid "received fast shutdown request"
 msgstr "schnelles Herunterfahren verlangt"
 
-#: postmaster/postmaster.c:2913
+#: postmaster/postmaster.c:2916
 #, c-format
 msgid "aborting any active transactions"
 msgstr "etwaige aktive Transaktionen werden abgebrochen"
 
-#: postmaster/postmaster.c:2937
+#: postmaster/postmaster.c:2940
 #, c-format
 msgid "received immediate shutdown request"
 msgstr "sofortiges Herunterfahren verlangt"
 
-#: postmaster/postmaster.c:3013
+#: postmaster/postmaster.c:3016
 #, c-format
 msgid "shutdown at recovery target"
 msgstr "Herunterfahren beim Wiederherstellungsziel"
 
-#: postmaster/postmaster.c:3031 postmaster/postmaster.c:3067
+#: postmaster/postmaster.c:3034 postmaster/postmaster.c:3070
 msgid "startup process"
 msgstr "Startprozess"
 
-#: postmaster/postmaster.c:3034
+#: postmaster/postmaster.c:3037
 #, c-format
 msgid "aborting startup due to startup process failure"
 msgstr "Serverstart abgebrochen wegen Startprozessfehler"
 
-#: postmaster/postmaster.c:3107
+#: postmaster/postmaster.c:3110
 #, c-format
 msgid "database system is ready to accept connections"
 msgstr "Datenbanksystem ist bereit, um Verbindungen anzunehmen"
 
-#: postmaster/postmaster.c:3128
+#: postmaster/postmaster.c:3131
 msgid "background writer process"
 msgstr "Background-Writer-Prozess"
 
-#: postmaster/postmaster.c:3175
+#: postmaster/postmaster.c:3178
 msgid "checkpointer process"
 msgstr "Checkpointer-Prozess"
 
-#: postmaster/postmaster.c:3191
+#: postmaster/postmaster.c:3194
 msgid "WAL writer process"
 msgstr "WAL-Schreibprozess"
 
-#: postmaster/postmaster.c:3206
+#: postmaster/postmaster.c:3209
 msgid "WAL receiver process"
 msgstr "WAL-Receiver-Prozess"
 
-#: postmaster/postmaster.c:3221
+#: postmaster/postmaster.c:3224
 msgid "autovacuum launcher process"
 msgstr "Autovacuum-Launcher-Prozess"
 
-#: postmaster/postmaster.c:3239
+#: postmaster/postmaster.c:3242
 msgid "archiver process"
 msgstr "Archivierprozess"
 
-#: postmaster/postmaster.c:3252
+#: postmaster/postmaster.c:3255
 msgid "system logger process"
 msgstr "Systemlogger-Prozess"
 
-#: postmaster/postmaster.c:3309
+#: postmaster/postmaster.c:3312
 #, c-format
 msgid "background worker \"%s\""
 msgstr "Background-Worker »%s«"
 
-#: postmaster/postmaster.c:3388 postmaster/postmaster.c:3408
-#: postmaster/postmaster.c:3415 postmaster/postmaster.c:3433
+#: postmaster/postmaster.c:3391 postmaster/postmaster.c:3411
+#: postmaster/postmaster.c:3418 postmaster/postmaster.c:3436
 msgid "server process"
 msgstr "Serverprozess"
 
-#: postmaster/postmaster.c:3487
+#: postmaster/postmaster.c:3490
 #, 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:3662
+#: postmaster/postmaster.c:3665
 #, c-format
 msgid "%s (PID %d) exited with exit code %d"
 msgstr "%s (PID %d) beendete mit Status %d"
 
-#: postmaster/postmaster.c:3664 postmaster/postmaster.c:3676
-#: postmaster/postmaster.c:3686 postmaster/postmaster.c:3697
+#: postmaster/postmaster.c:3667 postmaster/postmaster.c:3679
+#: postmaster/postmaster.c:3689 postmaster/postmaster.c:3700
 #, 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:3673
+#: postmaster/postmaster.c:3676
 #, 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:3683
+#: postmaster/postmaster.c:3686
 #, 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:3695
+#: postmaster/postmaster.c:3698
 #, c-format
 msgid "%s (PID %d) exited with unrecognized status %d"
 msgstr "%s (PID %d) beendete mit unbekanntem Status %d"
 
-#: postmaster/postmaster.c:3903
+#: postmaster/postmaster.c:3906
 #, c-format
 msgid "abnormal database system shutdown"
 msgstr "abnormales Herunterfahren des Datenbanksystems"
 
-#: postmaster/postmaster.c:3929
+#: postmaster/postmaster.c:3932
 #, c-format
 msgid "shutting down due to startup process failure"
 msgstr "fahre herunter wegen Startprozessfehler"
 
-#: postmaster/postmaster.c:3935
+#: postmaster/postmaster.c:3938
 #, c-format
 msgid "shutting down because restart_after_crash is off"
 msgstr "fahre herunter, weil restart_after_crash aus ist"
 
-#: postmaster/postmaster.c:3947
+#: postmaster/postmaster.c:3950
 #, c-format
 msgid "all server processes terminated; reinitializing"
 msgstr "alle Serverprozesse beendet; initialisiere neu"
 
-#: postmaster/postmaster.c:4141 postmaster/postmaster.c:5459
-#: postmaster/postmaster.c:5857
+#: postmaster/postmaster.c:4144 postmaster/postmaster.c:5462
+#: postmaster/postmaster.c:5860
 #, c-format
 msgid "could not generate random cancel key"
 msgstr "konnte zufälligen Stornierungsschlüssel nicht erzeugen"
 
-#: postmaster/postmaster.c:4203
+#: postmaster/postmaster.c:4206
 #, 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:4245
+#: postmaster/postmaster.c:4248
 msgid "could not fork new process for connection: "
 msgstr "konnte neuen Prozess für Verbindung nicht starten (fork-Fehler): "
 
-#: postmaster/postmaster.c:4351
+#: postmaster/postmaster.c:4354
 #, c-format
 msgid "connection received: host=%s port=%s"
 msgstr "Verbindung empfangen: Host=%s Port=%s"
 
-#: postmaster/postmaster.c:4356
+#: postmaster/postmaster.c:4359
 #, c-format
 msgid "connection received: host=%s"
 msgstr "Verbindung empfangen: Host=%s"
 
-#: postmaster/postmaster.c:4593
+#: postmaster/postmaster.c:4596
 #, c-format
 msgid "could not execute server process \"%s\": %m"
 msgstr "konnte Serverprozess »%s« nicht ausführen: %m"
 
-#: postmaster/postmaster.c:4651
+#: postmaster/postmaster.c:4654
 #, c-format
 msgid "could not create backend parameter file mapping: error code %lu"
 msgstr "konnte Backend-Parameter-Datei-Mapping nicht erzeugen: Fehlercode %lu"
 
-#: postmaster/postmaster.c:4660
+#: postmaster/postmaster.c:4663
 #, c-format
 msgid "could not map backend parameter memory: error code %lu"
 msgstr "konnte Backend-Parameter-Speicher nicht mappen: Fehlercode %lu"
 
-#: postmaster/postmaster.c:4687
+#: postmaster/postmaster.c:4690
 #, c-format
 msgid "subprocess command line too long"
 msgstr "Kommandozeile für Subprozess zu lang"
 
-#: postmaster/postmaster.c:4705
+#: postmaster/postmaster.c:4708
 #, c-format
 msgid "CreateProcess() call failed: %m (error code %lu)"
 msgstr "Aufruf von CreateProcess() fehlgeschlagen: %m (Fehlercode %lu)"
 
-#: postmaster/postmaster.c:4732
+#: postmaster/postmaster.c:4735
 #, c-format
 msgid "could not unmap view of backend parameter file: error code %lu"
 msgstr "konnte Sicht der Backend-Parameter-Datei nicht unmappen: Fehlercode %lu"
 
-#: postmaster/postmaster.c:4736
+#: postmaster/postmaster.c:4739
 #, c-format
 msgid "could not close handle to backend parameter file: error code %lu"
 msgstr "konnte Handle für Backend-Parameter-Datei nicht schließen: Fehlercode %lu"
 
-#: postmaster/postmaster.c:4758
+#: postmaster/postmaster.c:4761
 #, c-format
 msgid "giving up after too many tries to reserve shared memory"
 msgstr "Aufgabe nach zu vielen Versuchen, Shared Memory zu reservieren"
 
-#: postmaster/postmaster.c:4759
+#: postmaster/postmaster.c:4762
 #, c-format
 msgid "This might be caused by ASLR or antivirus software."
 msgstr "Dies kann durch ASLR oder Antivirus-Software verursacht werden."
 
-#: postmaster/postmaster.c:4932
+#: postmaster/postmaster.c:4935
 #, c-format
 msgid "SSL configuration could not be loaded in child process"
 msgstr "SSL-Konfiguration konnte im Kindprozess nicht geladen werden"
 
-#: postmaster/postmaster.c:5057
+#: postmaster/postmaster.c:5060
 #, c-format
 msgid "Please report this to <%s>."
 msgstr "Bitte berichten Sie dies an <%s>."
 
-#: postmaster/postmaster.c:5125
+#: postmaster/postmaster.c:5128
 #, c-format
 msgid "database system is ready to accept read-only connections"
 msgstr "Datenbanksystem ist bereit, um lesende Verbindungen anzunehmen"
 
-#: postmaster/postmaster.c:5383
+#: postmaster/postmaster.c:5386
 #, c-format
 msgid "could not fork startup process: %m"
 msgstr "konnte Startprozess nicht starten (fork-Fehler): %m"
 
-#: postmaster/postmaster.c:5387
+#: postmaster/postmaster.c:5390
 #, c-format
 msgid "could not fork archiver process: %m"
 msgstr "konnte Archivierer-Prozess nicht starten (fork-Fehler): %m"
 
-#: postmaster/postmaster.c:5391
+#: postmaster/postmaster.c:5394
 #, c-format
 msgid "could not fork background writer process: %m"
 msgstr "konnte Background-Writer-Prozess nicht starten (fork-Fehler): %m"
 
-#: postmaster/postmaster.c:5395
+#: postmaster/postmaster.c:5398
 #, c-format
 msgid "could not fork checkpointer process: %m"
 msgstr "konnte Checkpointer-Prozess nicht starten (fork-Fehler): %m"
 
-#: postmaster/postmaster.c:5399
+#: postmaster/postmaster.c:5402
 #, c-format
 msgid "could not fork WAL writer process: %m"
 msgstr "konnte WAL-Writer-Prozess nicht starten (fork-Fehler): %m"
 
-#: postmaster/postmaster.c:5403
+#: postmaster/postmaster.c:5406
 #, c-format
 msgid "could not fork WAL receiver process: %m"
 msgstr "konnte WAL-Receiver-Prozess nicht starten (fork-Fehler): %m"
 
-#: postmaster/postmaster.c:5407
+#: postmaster/postmaster.c:5410
 #, c-format
 msgid "could not fork process: %m"
 msgstr "konnte Prozess nicht starten (fork-Fehler): %m"
 
-#: postmaster/postmaster.c:5608 postmaster/postmaster.c:5635
+#: postmaster/postmaster.c:5611 postmaster/postmaster.c:5638
 #, 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:5619 postmaster/postmaster.c:5646
+#: postmaster/postmaster.c:5622 postmaster/postmaster.c:5649
 #, c-format
 msgid "invalid processing mode in background worker"
 msgstr "ungültiger Verarbeitungsmodus in Background-Worker"
 
-#: postmaster/postmaster.c:5731
+#: postmaster/postmaster.c:5734
 #, c-format
 msgid "could not fork worker process: %m"
 msgstr "konnte Worker-Prozess nicht starten (fork-Fehler): %m"
 
-#: postmaster/postmaster.c:5843
+#: postmaster/postmaster.c:5846
 #, c-format
 msgid "no slot available for new worker process"
 msgstr "kein Slot für neuen Worker-Prozess verfügbar"
 
-#: postmaster/postmaster.c:6174
+#: postmaster/postmaster.c:6177
 #, 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:6206
+#: postmaster/postmaster.c:6209
 #, c-format
 msgid "could not create inherited socket: error code %d\n"
 msgstr "konnte geerbtes Socket nicht erzeugen: Fehlercode %d\n"
 
-#: postmaster/postmaster.c:6235
+#: postmaster/postmaster.c:6238
 #, c-format
 msgid "could not open backend variables file \"%s\": %s\n"
 msgstr "konnte Servervariablendatei »%s« nicht öffnen: %s\n"
 
-#: postmaster/postmaster.c:6242
+#: postmaster/postmaster.c:6245
 #, 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:6251
+#: postmaster/postmaster.c:6254
 #, c-format
 msgid "could not remove file \"%s\": %s\n"
 msgstr "konnte Datei »%s« nicht löschen: %s\n"
 
-#: postmaster/postmaster.c:6268
+#: postmaster/postmaster.c:6271
 #, 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:6277
+#: postmaster/postmaster.c:6280
 #, 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:6284
+#: postmaster/postmaster.c:6287
 #, 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:6443
+#: postmaster/postmaster.c:6446
 #, c-format
 msgid "could not read exit code for process\n"
 msgstr "konnte Exitcode des Prozesses nicht lesen\n"
 
-#: postmaster/postmaster.c:6485
+#: postmaster/postmaster.c:6488
 #, c-format
 msgid "could not post child completion status\n"
 msgstr "konnte Child-Completion-Status nicht versenden\n"
@@ -29562,12 +29562,12 @@ msgid "Sets the method for synchronizing the data directory before crash recover
 msgstr "Setzt die Methode für das Synchronisieren des Datenverzeichnisses vor der Wiederherstellung nach einem Absturz."
 
 #: utils/misc/guc_tables.c:4960
-msgid "Controls when to replicate or apply each change."
-msgstr ""
+msgid "Forces immediate streaming or serialization of changes in large transactions."
+msgstr "Erzwingt sofortiges Streaming oder sofortige Serialisierung von Änderungen in großen Transaktionen."
 
 #: utils/misc/guc_tables.c:4961
 msgid "On the publisher, it allows streaming or serializing each change in logical decoding. On the subscriber, it allows serialization of all changes to files and notifies the parallel apply workers to read and apply them at the end of the transaction."
-msgstr ""
+msgstr "Auf dem Publikationsserver erlaubt es Streaming oder Serialisierung jeder Änderung aus logischer Dekodierung. Auf dem Subskriptionsserver erlaubt es die Serialisierung aller Änderungen in Dateien und benachrichtigt die Parallel-Apply-Worker, sie nach dem Ende der Transaktion zu lesen und anzuwenden."
 
 #: utils/misc/help_config.c:129
 #, c-format
index e50a93503364aef059d8f0e438c7267ad819fd23..a05b7adee99d1546c3a5d4ea28c36706b3e156ec 100644 (file)
@@ -399,7 +399,7 @@ msgstr "La secuencia de escape «%s» no es válida."
 #: ../common/jsonapi.c:1147
 #, c-format
 msgid "Character with value 0x%02x must be escaped."
-msgstr "Los caracteres con valor 0x%02x deben ser escapados"
+msgstr "Los caracteres con valor 0x%02x deben ser escapados."
 
 #: ../common/jsonapi.c:1150
 #, c-format
index fd51500b938023ef7cfd4fc8178661eb692e4a3e..041bb1d1b5105074faa091394a2f991ffe9ad580 100644 (file)
@@ -407,7 +407,7 @@ msgstr "« \\u » doit être suivi par quatre chiffres hexadécimaux."
 
 #: ../common/jsonapi.c:1115
 msgid "Unicode escape values cannot be used for code point values above 007F when the encoding is not UTF8."
-msgstr "les valeurs d'échappement Unicode ne peuvent pas être utilisées pour des valeurs de point code au-dessus de 007F quand l'encodage n'est pas UTF8."
+msgstr "Les valeurs d'échappement Unicode ne peuvent pas être utilisées pour des valeurs de point code au-dessus de 007F quand l'encodage n'est pas UTF8."
 
 #: ../common/jsonapi.c:1117 jsonpath_scan.l:516
 #, c-format
@@ -3042,7 +3042,7 @@ msgstr "n'a pas pu localiser le bloc de sauvegarde d'ID %d dans l'enregistrement
 #: access/transam/xlogreader.c:2051
 #, c-format
 msgid "could not restore image at %X/%X with invalid block %d specified"
-msgstr "n'a pas pu restaurer l'image ) %X/%X avec le bloc invalide %d indiqué"
+msgstr "n'a pas pu restaurer l'image à %X/%X avec le bloc invalide %d indiqué"
 
 #: access/transam/xlogreader.c:2058
 #, c-format
@@ -13127,9 +13127,7 @@ msgstr[1] "ne peut pas passer plus de %d arguments à une fonction"
 #: utils/adt/jsonfuncs.c:3698 utils/fmgr/funcapi.c:98 utils/fmgr/funcapi.c:152
 #, c-format
 msgid "set-valued function called in context that cannot accept a set"
-msgstr ""
-"la fonction renvoyant un ensemble a été appelée dans un contexte qui n'accepte pas\n"
-"un ensemble"
+msgstr "la fonction renvoyant un ensemble a été appelée dans un contexte qui n'accepte pas un ensemble"
 
 #: executor/execExpr.c:2865 parser/parse_node.c:276 parser/parse_node.c:326
 #, c-format
index 1ab9f7f68f57ead88748b3714b7044f398e3a0f8..0700a972fa7822a14d24af063f28bd80583dda15 100644 (file)
@@ -11,8 +11,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: postgres (PostgreSQL 16)\n"
 "Report-Msgid-Bugs-To: [email protected]\n"
-"POT-Creation-Date: 2023-07-25 14:38+0900\n"
-"PO-Revision-Date: 2023-07-25 14:44+0900\n"
+"POT-Creation-Date: 2023-08-30 09:19+0900\n"
+"PO-Revision-Date: 2023-08-30 09:49+0900\n"
 "Last-Translator: Kyotaro Horiguchi \n"
 "Language-Team: jpug-doc \n"
 "Language: ja\n"
@@ -77,24 +77,24 @@ msgstr "圧縮アルゴリズム\"%s\"は長距離モードをサポートしま
 msgid "not recorded"
 msgstr "記録されていません"
 
-#: ../common/controldata_utils.c:69 ../common/controldata_utils.c:73 commands/copyfrom.c:1669 commands/extension.c:3453 utils/adt/genfile.c:123
+#: ../common/controldata_utils.c:69 ../common/controldata_utils.c:73 commands/copyfrom.c:1670 commands/extension.c:3480 utils/adt/genfile.c:123
 #, c-format
 msgid "could not open file \"%s\" for reading: %m"
 msgstr "ファイル\"%s\"を読み込み用にオープンできませんでした: %m"
 
-#: ../common/controldata_utils.c:84 ../common/controldata_utils.c:86 access/transam/timeline.c:143 access/transam/timeline.c:362 access/transam/twophase.c:1347 access/transam/xlog.c:3193 access/transam/xlog.c:3996 access/transam/xlogrecovery.c:1199 access/transam/xlogrecovery.c:1291 access/transam/xlogrecovery.c:1328 access/transam/xlogrecovery.c:1388 backup/basebackup.c:1842 commands/extension.c:3463 libpq/hba.c:791 replication/logical/origin.c:745
-#: replication/logical/origin.c:781 replication/logical/reorderbuffer.c:5050 replication/logical/snapbuild.c:2031 replication/slot.c:1946 replication/slot.c:1987 replication/walsender.c:643 storage/file/buffile.c:470 storage/file/copydir.c:185 utils/adt/genfile.c:197 utils/adt/misc.c:984 utils/cache/relmapper.c:827
+#: ../common/controldata_utils.c:84 ../common/controldata_utils.c:86 access/transam/timeline.c:143 access/transam/timeline.c:362 access/transam/twophase.c:1347 access/transam/xlog.c:3193 access/transam/xlog.c:3996 access/transam/xlogrecovery.c:1199 access/transam/xlogrecovery.c:1291 access/transam/xlogrecovery.c:1328 access/transam/xlogrecovery.c:1388 backup/basebackup.c:1842 commands/extension.c:3490 libpq/hba.c:769 replication/logical/origin.c:745
+#: replication/logical/origin.c:781 replication/logical/reorderbuffer.c:5050 replication/logical/snapbuild.c:2031 replication/slot.c:1953 replication/slot.c:1994 replication/walsender.c:643 storage/file/buffile.c:470 storage/file/copydir.c:185 utils/adt/genfile.c:197 utils/adt/misc.c:984 utils/cache/relmapper.c:827
 #, c-format
 msgid "could not read file \"%s\": %m"
 msgstr "ファイル\"%s\"の読み込みに失敗しました: %m"
 
-#: ../common/controldata_utils.c:92 ../common/controldata_utils.c:95 access/transam/xlog.c:3198 access/transam/xlog.c:4001 backup/basebackup.c:1846 replication/logical/origin.c:750 replication/logical/origin.c:789 replication/logical/snapbuild.c:2036 replication/slot.c:1950 replication/slot.c:1991 replication/walsender.c:648 utils/cache/relmapper.c:831
+#: ../common/controldata_utils.c:92 ../common/controldata_utils.c:95 access/transam/xlog.c:3198 access/transam/xlog.c:4001 backup/basebackup.c:1846 replication/logical/origin.c:750 replication/logical/origin.c:789 replication/logical/snapbuild.c:2036 replication/slot.c:1957 replication/slot.c:1998 replication/walsender.c:648 utils/cache/relmapper.c:831
 #, c-format
 msgid "could not read file \"%s\": read %d of %zu"
 msgstr "ファイル\"%1$s\"を読み込めませんでした: %3$zuバイトのうち%2$dバイトを読み込みました"
 
 #: ../common/controldata_utils.c:104 ../common/controldata_utils.c:108 ../common/controldata_utils.c:233 ../common/controldata_utils.c:236 access/heap/rewriteheap.c:1175 access/heap/rewriteheap.c:1280 access/transam/timeline.c:392 access/transam/timeline.c:438 access/transam/timeline.c:512 access/transam/twophase.c:1359 access/transam/twophase.c:1771 access/transam/xlog.c:3039 access/transam/xlog.c:3233 access/transam/xlog.c:3238 access/transam/xlog.c:3374
-#: access/transam/xlog.c:3966 access/transam/xlog.c:4885 commands/copyfrom.c:1729 commands/copyto.c:332 libpq/be-fsstubs.c:470 libpq/be-fsstubs.c:540 replication/logical/origin.c:683 replication/logical/origin.c:822 replication/logical/reorderbuffer.c:5102 replication/logical/snapbuild.c:1798 replication/logical/snapbuild.c:1922 replication/slot.c:1837 replication/slot.c:1998 replication/walsender.c:658 storage/file/copydir.c:208 storage/file/copydir.c:213
+#: access/transam/xlog.c:3966 access/transam/xlog.c:4885 commands/copyfrom.c:1730 commands/copyto.c:332 libpq/be-fsstubs.c:470 libpq/be-fsstubs.c:540 replication/logical/origin.c:683 replication/logical/origin.c:822 replication/logical/reorderbuffer.c:5102 replication/logical/snapbuild.c:1798 replication/logical/snapbuild.c:1922 replication/slot.c:1844 replication/slot.c:2005 replication/walsender.c:658 storage/file/copydir.c:208 storage/file/copydir.c:213
 #: storage/file/fd.c:782 storage/file/fd.c:3700 storage/file/fd.c:3806 utils/cache/relmapper.c:839 utils/cache/relmapper.c:945
 #, c-format
 msgid "could not close file \"%s\": %m"
@@ -118,25 +118,25 @@ msgstr ""
 "PostgreSQLインストレーションはこのデータディレクトリと互換性がなくなります。"
 
 #: ../common/controldata_utils.c:181 ../common/controldata_utils.c:186 ../common/file_utils.c:228 ../common/file_utils.c:287 ../common/file_utils.c:361 access/heap/rewriteheap.c:1263 access/transam/timeline.c:111 access/transam/timeline.c:251 access/transam/timeline.c:348 access/transam/twophase.c:1303 access/transam/xlog.c:2946 access/transam/xlog.c:3109 access/transam/xlog.c:3148 access/transam/xlog.c:3341 access/transam/xlog.c:3986
-#: access/transam/xlogrecovery.c:4179 access/transam/xlogrecovery.c:4282 access/transam/xlogutils.c:838 backup/basebackup.c:538 backup/basebackup.c:1512 libpq/hba.c:651 postmaster/syslogger.c:1560 replication/logical/origin.c:735 replication/logical/reorderbuffer.c:3706 replication/logical/reorderbuffer.c:4257 replication/logical/reorderbuffer.c:5030 replication/logical/snapbuild.c:1753 replication/logical/snapbuild.c:1863 replication/slot.c:1918
+#: access/transam/xlogrecovery.c:4179 access/transam/xlogrecovery.c:4282 access/transam/xlogutils.c:838 backup/basebackup.c:538 backup/basebackup.c:1512 libpq/hba.c:629 postmaster/syslogger.c:1560 replication/logical/origin.c:735 replication/logical/reorderbuffer.c:3706 replication/logical/reorderbuffer.c:4257 replication/logical/reorderbuffer.c:5030 replication/logical/snapbuild.c:1753 replication/logical/snapbuild.c:1863 replication/slot.c:1925
 #: replication/walsender.c:616 replication/walsender.c:2731 storage/file/copydir.c:151 storage/file/fd.c:757 storage/file/fd.c:3457 storage/file/fd.c:3687 storage/file/fd.c:3777 storage/smgr/md.c:663 utils/cache/relmapper.c:816 utils/cache/relmapper.c:924 utils/error/elog.c:2082 utils/init/miscinit.c:1530 utils/init/miscinit.c:1664 utils/init/miscinit.c:1741 utils/misc/guc.c:4600 utils/misc/guc.c:4650
 #, c-format
 msgid "could not open file \"%s\": %m"
 msgstr "ファイル\"%s\"をオープンできませんでした: %m"
 
-#: ../common/controldata_utils.c:202 ../common/controldata_utils.c:205 access/transam/twophase.c:1744 access/transam/twophase.c:1753 access/transam/xlog.c:8755 access/transam/xlogfuncs.c:708 backup/basebackup_server.c:175 backup/basebackup_server.c:268 postmaster/postmaster.c:5570 postmaster/syslogger.c:1571 postmaster/syslogger.c:1584 postmaster/syslogger.c:1597 utils/cache/relmapper.c:936
+#: ../common/controldata_utils.c:202 ../common/controldata_utils.c:205 access/transam/twophase.c:1744 access/transam/twophase.c:1753 access/transam/xlog.c:8755 access/transam/xlogfuncs.c:708 backup/basebackup_server.c:175 backup/basebackup_server.c:268 postmaster/postmaster.c:5573 postmaster/syslogger.c:1571 postmaster/syslogger.c:1584 postmaster/syslogger.c:1597 utils/cache/relmapper.c:936
 #, c-format
 msgid "could not write file \"%s\": %m"
 msgstr "ファイル\"%s\"を書き出せませんでした: %m"
 
 #: ../common/controldata_utils.c:219 ../common/controldata_utils.c:224 ../common/file_utils.c:299 ../common/file_utils.c:369 access/heap/rewriteheap.c:959 access/heap/rewriteheap.c:1169 access/heap/rewriteheap.c:1274 access/transam/timeline.c:432 access/transam/timeline.c:506 access/transam/twophase.c:1765 access/transam/xlog.c:3032 access/transam/xlog.c:3227 access/transam/xlog.c:3959 access/transam/xlog.c:8145 access/transam/xlog.c:8190
-#: backup/basebackup_server.c:209 replication/logical/snapbuild.c:1791 replication/slot.c:1823 replication/slot.c:1928 storage/file/fd.c:774 storage/file/fd.c:3798 storage/smgr/md.c:1135 storage/smgr/md.c:1180 storage/sync/sync.c:451 utils/misc/guc.c:4370
+#: backup/basebackup_server.c:209 replication/logical/snapbuild.c:1791 replication/slot.c:1830 replication/slot.c:1935 storage/file/fd.c:774 storage/file/fd.c:3798 storage/smgr/md.c:1135 storage/smgr/md.c:1180 storage/sync/sync.c:451 utils/misc/guc.c:4370
 #, c-format
 msgid "could not fsync file \"%s\": %m"
 msgstr "ファイル\"%s\"をfsyncできませんでした: %m"
 
 #: ../common/cryptohash.c:261 ../common/cryptohash_openssl.c:133 ../common/cryptohash_openssl.c:332 ../common/exec.c:550 ../common/exec.c:595 ../common/exec.c:687 ../common/hmac.c:309 ../common/hmac.c:325 ../common/hmac_openssl.c:132 ../common/hmac_openssl.c:327 ../common/md5_common.c:155 ../common/psprintf.c:143 ../common/scram-common.c:258 ../common/stringinfo.c:305 ../port/path.c:751 ../port/path.c:789 ../port/path.c:806 access/transam/twophase.c:1412
-#: access/transam/xlogrecovery.c:589 lib/dshash.c:253 libpq/auth.c:1345 libpq/auth.c:1389 libpq/auth.c:1946 libpq/be-secure-gssapi.c:524 postmaster/bgworker.c:352 postmaster/bgworker.c:934 postmaster/postmaster.c:2534 postmaster/postmaster.c:4127 postmaster/postmaster.c:5495 postmaster/postmaster.c:5866 replication/libpqwalreceiver/libpqwalreceiver.c:308 replication/logical/logical.c:208 replication/walsender.c:686 storage/buffer/localbuf.c:601
+#: access/transam/xlogrecovery.c:589 lib/dshash.c:253 libpq/auth.c:1345 libpq/auth.c:1389 libpq/auth.c:1946 libpq/be-secure-gssapi.c:524 postmaster/bgworker.c:352 postmaster/bgworker.c:934 postmaster/postmaster.c:2537 postmaster/postmaster.c:4130 postmaster/postmaster.c:5498 postmaster/postmaster.c:5869 replication/libpqwalreceiver/libpqwalreceiver.c:308 replication/logical/logical.c:208 replication/walsender.c:686 storage/buffer/localbuf.c:601
 #: storage/file/fd.c:866 storage/file/fd.c:1397 storage/file/fd.c:1558 storage/file/fd.c:2478 storage/ipc/procarray.c:1449 storage/ipc/procarray.c:2232 storage/ipc/procarray.c:2239 storage/ipc/procarray.c:2738 storage/ipc/procarray.c:3374 utils/adt/formatting.c:1690 utils/adt/formatting.c:1812 utils/adt/formatting.c:1935 utils/adt/pg_locale.c:469 utils/adt/pg_locale.c:633 utils/fmgr/dfmgr.c:229 utils/hash/dynahash.c:514 utils/hash/dynahash.c:614
 #: utils/hash/dynahash.c:1111 utils/mb/mbutils.c:402 utils/mb/mbutils.c:430 utils/mb/mbutils.c:815 utils/mb/mbutils.c:842 utils/misc/guc.c:640 utils/misc/guc.c:665 utils/misc/guc.c:1053 utils/misc/guc.c:4348 utils/misc/tzparser.c:476 utils/mmgr/aset.c:445 utils/mmgr/dsa.c:714 utils/mmgr/dsa.c:736 utils/mmgr/dsa.c:817 utils/mmgr/generation.c:205 utils/mmgr/mcxt.c:1046 utils/mmgr/mcxt.c:1082 utils/mmgr/mcxt.c:1120 utils/mmgr/mcxt.c:1158 utils/mmgr/mcxt.c:1246
 #: utils/mmgr/mcxt.c:1277 utils/mmgr/mcxt.c:1313 utils/mmgr/mcxt.c:1502 utils/mmgr/mcxt.c:1547 utils/mmgr/mcxt.c:1604 utils/mmgr/slab.c:366
@@ -191,13 +191,13 @@ msgstr "メモリ不足です\n"
 msgid "cannot duplicate null pointer (internal error)\n"
 msgstr "nullポインタは複製できません(内部エラー)\n"
 
-#: ../common/file_utils.c:87 ../common/file_utils.c:447 ../common/file_utils.c:451 access/transam/twophase.c:1315 access/transam/xlogarchive.c:112 access/transam/xlogarchive.c:229 backup/basebackup.c:346 backup/basebackup.c:544 backup/basebackup.c:615 commands/copyfrom.c:1679 commands/copyto.c:702 commands/extension.c:3442 commands/tablespace.c:810 commands/tablespace.c:899 postmaster/pgarch.c:590 replication/logical/snapbuild.c:1649 storage/file/fd.c:1922
+#: ../common/file_utils.c:87 ../common/file_utils.c:447 ../common/file_utils.c:451 access/transam/twophase.c:1315 access/transam/xlogarchive.c:112 access/transam/xlogarchive.c:229 backup/basebackup.c:346 backup/basebackup.c:544 backup/basebackup.c:615 commands/copyfrom.c:1680 commands/copyto.c:702 commands/extension.c:3469 commands/tablespace.c:810 commands/tablespace.c:899 postmaster/pgarch.c:590 replication/logical/snapbuild.c:1649 storage/file/fd.c:1922
 #: storage/file/fd.c:2008 storage/file/fd.c:3511 utils/adt/dbsize.c:106 utils/adt/dbsize.c:258 utils/adt/dbsize.c:338 utils/adt/genfile.c:483 utils/adt/genfile.c:658 utils/adt/misc.c:340
 #, c-format
 msgid "could not stat file \"%s\": %m"
 msgstr "ファイル\"%s\"のstatに失敗しました: %m"
 
-#: ../common/file_utils.c:162 ../common/pgfnames.c:48 ../common/rmtree.c:63 commands/tablespace.c:734 commands/tablespace.c:744 postmaster/postmaster.c:1561 storage/file/fd.c:2880 storage/file/reinit.c:126 utils/adt/misc.c:256 utils/misc/tzparser.c:338
+#: ../common/file_utils.c:162 ../common/pgfnames.c:48 ../common/rmtree.c:63 commands/tablespace.c:734 commands/tablespace.c:744 postmaster/postmaster.c:1564 storage/file/fd.c:2880 storage/file/reinit.c:126 utils/adt/misc.c:256 utils/misc/tzparser.c:338
 #, c-format
 msgid "could not open directory \"%s\": %m"
 msgstr "ディレクトリ\"%s\"をオープンできませんでした: %m"
@@ -207,7 +207,7 @@ msgstr "ディレクトリ\"%s\"をオープンできませんでした: %m"
 msgid "could not read directory \"%s\": %m"
 msgstr "ディレクトリ\"%s\"を読み取れませんでした: %m"
 
-#: ../common/file_utils.c:379 access/transam/xlogarchive.c:383 postmaster/pgarch.c:746 postmaster/syslogger.c:1608 replication/logical/snapbuild.c:1810 replication/slot.c:723 replication/slot.c:1709 replication/slot.c:1851 storage/file/fd.c:792 utils/time/snapmgr.c:1284
+#: ../common/file_utils.c:379 access/transam/xlogarchive.c:383 postmaster/pgarch.c:746 postmaster/syslogger.c:1608 replication/logical/snapbuild.c:1810 replication/slot.c:723 replication/slot.c:1716 replication/slot.c:1858 storage/file/fd.c:792 utils/time/snapmgr.c:1284
 #, c-format
 msgid "could not rename file \"%s\" to \"%s\": %m"
 msgstr "ファイル\"%s\"の名前を\"%s\"に変更できませんでした: %m"
@@ -323,7 +323,7 @@ msgstr "詳細: "
 msgid "hint: "
 msgstr "ヒント: "
 
-#: ../common/percentrepl.c:79 ../common/percentrepl.c:85 ../common/percentrepl.c:118 ../common/percentrepl.c:124 postmaster/postmaster.c:2208 utils/misc/guc.c:3118 utils/misc/guc.c:3154 utils/misc/guc.c:3224 utils/misc/guc.c:4547 utils/misc/guc.c:6721 utils/misc/guc.c:6762
+#: ../common/percentrepl.c:79 ../common/percentrepl.c:85 ../common/percentrepl.c:118 ../common/percentrepl.c:124 postmaster/postmaster.c:2211 utils/misc/guc.c:3118 utils/misc/guc.c:3154 utils/misc/guc.c:3224 utils/misc/guc.c:4547 utils/misc/guc.c:6721 utils/misc/guc.c:6762
 #, c-format
 msgid "invalid value for parameter \"%s\": \"%s\""
 msgstr "パラメータ\"%s\"の値が不正です: \"%s\""
@@ -383,7 +383,7 @@ msgstr "制限付きトークンで再実行できませんでした: %lu"
 msgid "could not get exit code from subprocess: error code %lu"
 msgstr "サブプロセスの終了コードを取得できませんでした: エラーコード %lu"
 
-#: ../common/rmtree.c:95 access/heap/rewriteheap.c:1248 access/transam/twophase.c:1704 access/transam/xlogarchive.c:120 access/transam/xlogarchive.c:393 postmaster/postmaster.c:1143 postmaster/syslogger.c:1537 replication/logical/origin.c:591 replication/logical/reorderbuffer.c:4526 replication/logical/snapbuild.c:1691 replication/logical/snapbuild.c:2125 replication/slot.c:1902 storage/file/fd.c:832 storage/file/fd.c:3325 storage/file/fd.c:3387
+#: ../common/rmtree.c:95 access/heap/rewriteheap.c:1248 access/transam/twophase.c:1704 access/transam/xlogarchive.c:120 access/transam/xlogarchive.c:393 postmaster/postmaster.c:1143 postmaster/syslogger.c:1537 replication/logical/origin.c:591 replication/logical/reorderbuffer.c:4526 replication/logical/snapbuild.c:1691 replication/logical/snapbuild.c:2125 replication/slot.c:1909 storage/file/fd.c:832 storage/file/fd.c:3325 storage/file/fd.c:3387
 #: storage/file/reinit.c:262 storage/ipc/dsm.c:316 storage/smgr/md.c:383 storage/smgr/md.c:442 storage/sync/sync.c:248 utils/time/snapmgr.c:1608
 #, c-format
 msgid "could not remove file \"%s\": %m"
@@ -680,7 +680,7 @@ msgstr "%2$s型の属性\"%1$s\"が%3$s型の対応する属性と合致しま
 msgid "Attribute \"%s\" of type %s does not exist in type %s."
 msgstr "%2$s型の属性\"%1$s\"が%3$s型の中に存在しません。"
 
-#: access/common/heaptuple.c:1036 access/common/heaptuple.c:1371
+#: access/common/heaptuple.c:1124 access/common/heaptuple.c:1459
 #, c-format
 msgid "number of columns (%d) exceeds limit (%d)"
 msgstr "列数(%d)が上限(%d)を超えています"
@@ -969,32 +969,32 @@ msgstr "アクセスメソッド\"%2$s\"の演算子族\"%1$s\"は演算子%3$s
 msgid "operator family \"%s\" of access method %s is missing cross-type operator(s)"
 msgstr "アクセスメソッド\"%2$s\"の演算子族\"%1$s\"は異なる型間に対応する演算子を含んでいません"
 
-#: access/heap/heapam.c:2026
+#: access/heap/heapam.c:2027
 #, c-format
 msgid "cannot insert tuples in a parallel worker"
 msgstr "並列ワーカーではタプルの挿入はできません"
 
-#: access/heap/heapam.c:2545
+#: access/heap/heapam.c:2546
 #, c-format
 msgid "cannot delete tuples during a parallel operation"
 msgstr "並列処理中はタプルの削除はできません"
 
-#: access/heap/heapam.c:2592
+#: access/heap/heapam.c:2593
 #, c-format
 msgid "attempted to delete invisible tuple"
 msgstr "不可視のタプルを削除しようとしました"
 
-#: access/heap/heapam.c:3035 access/heap/heapam.c:5902
+#: access/heap/heapam.c:3036 access/heap/heapam.c:5903
 #, c-format
 msgid "cannot update tuples during a parallel operation"
 msgstr "並列処理中はタプルの更新はできません"
 
-#: access/heap/heapam.c:3163
+#: access/heap/heapam.c:3164
 #, c-format
 msgid "attempted to update invisible tuple"
 msgstr "不可視のタプルを更新しようとしました"
 
-#: access/heap/heapam.c:4550 access/heap/heapam.c:4588 access/heap/heapam.c:4853 access/heap/heapam_handler.c:467
+#: access/heap/heapam.c:4551 access/heap/heapam.c:4589 access/heap/heapam.c:4854 access/heap/heapam_handler.c:467
 #, c-format
 msgid "could not obtain lock on row in relation \"%s\""
 msgstr "リレーション\"%s\"の行ロックを取得できませんでした"
@@ -1004,7 +1004,7 @@ msgstr "リレーション\"%s\"の行ロックを取得できませんでした
 msgid "tuple to be locked was already moved to another partition due to concurrent update"
 msgstr "ロック対象のタプルは同時に行われた更新によってすでに他の子テーブルに移動されています"
 
-#: access/heap/hio.c:517 access/heap/rewriteheap.c:659
+#: access/heap/hio.c:536 access/heap/rewriteheap.c:659
 #, c-format
 msgid "row is too big: size %zu, maximum size %zu"
 msgstr "行が大きすぎます: サイズは%zu、上限は%zu"
@@ -1014,7 +1014,7 @@ msgstr "行が大きすぎます: サイズは%zu、上限は%zu"
 msgid "could not write to file \"%s\", wrote %d of %d: %m"
 msgstr "ファイル\"%1$s\"に書き込めませんでした、%3$dバイト中%2$dバイト書き込みました: %m"
 
-#: access/heap/rewriteheap.c:1011 access/heap/rewriteheap.c:1128 access/transam/timeline.c:329 access/transam/timeline.c:481 access/transam/xlog.c:2971 access/transam/xlog.c:3162 access/transam/xlog.c:3938 access/transam/xlog.c:8744 access/transam/xlogfuncs.c:702 backup/basebackup_server.c:151 backup/basebackup_server.c:244 commands/dbcommands.c:518 postmaster/postmaster.c:4554 postmaster/postmaster.c:5557 replication/logical/origin.c:603 replication/slot.c:1770
+#: access/heap/rewriteheap.c:1011 access/heap/rewriteheap.c:1128 access/transam/timeline.c:329 access/transam/timeline.c:481 access/transam/xlog.c:2971 access/transam/xlog.c:3162 access/transam/xlog.c:3938 access/transam/xlog.c:8744 access/transam/xlogfuncs.c:702 backup/basebackup_server.c:151 backup/basebackup_server.c:244 commands/dbcommands.c:518 postmaster/postmaster.c:4557 postmaster/postmaster.c:5560 replication/logical/origin.c:603 replication/slot.c:1777
 #: storage/file/copydir.c:157 storage/smgr/md.c:232 utils/time/snapmgr.c:1263
 #, c-format
 msgid "could not create file \"%s\": %m"
@@ -1025,7 +1025,7 @@ msgstr "ファイル\"%s\"を作成できませんでした: %m"
 msgid "could not truncate file \"%s\" to %u: %m"
 msgstr "ファイル\"%s\"を%uバイトに切り詰められませんでした: %m"
 
-#: access/heap/rewriteheap.c:1156 access/transam/timeline.c:384 access/transam/timeline.c:424 access/transam/timeline.c:498 access/transam/xlog.c:3021 access/transam/xlog.c:3218 access/transam/xlog.c:3950 commands/dbcommands.c:530 postmaster/postmaster.c:4564 postmaster/postmaster.c:4574 replication/logical/origin.c:615 replication/logical/origin.c:657 replication/logical/origin.c:676 replication/logical/snapbuild.c:1767 replication/slot.c:1805
+#: access/heap/rewriteheap.c:1156 access/transam/timeline.c:384 access/transam/timeline.c:424 access/transam/timeline.c:498 access/transam/xlog.c:3021 access/transam/xlog.c:3218 access/transam/xlog.c:3950 commands/dbcommands.c:530 postmaster/postmaster.c:4567 postmaster/postmaster.c:4577 replication/logical/origin.c:615 replication/logical/origin.c:657 replication/logical/origin.c:676 replication/logical/snapbuild.c:1767 replication/slot.c:1812
 #: storage/file/buffile.c:545 storage/file/copydir.c:197 utils/init/miscinit.c:1605 utils/init/miscinit.c:1616 utils/init/miscinit.c:1624 utils/misc/guc.c:4331 utils/misc/guc.c:4362 utils/misc/guc.c:5490 utils/misc/guc.c:5508 utils/time/snapmgr.c:1268 utils/time/snapmgr.c:1275
 #, c-format
 msgid "could not write to file \"%s\": %m"
@@ -3188,7 +3188,7 @@ msgstr "失敗したアーカイブコマンドは次のとおりです: %s"
 msgid "archive command was terminated by exception 0x%X"
 msgstr "アーカイブコマンドが例外0x%Xで終了しました"
 
-#: archive/shell_archive.c:107 postmaster/postmaster.c:3675
+#: archive/shell_archive.c:107 postmaster/postmaster.c:3678
 #, c-format
 msgid "See C include file \"ntstatus.h\" for a description of the hexadecimal value."
 msgstr "16進値の説明についてはC インクルードファイル\"ntstatus.h\"を参照してください。"
@@ -3385,7 +3385,7 @@ msgstr "\"%s\"ロールの権限を持つロールのみが、サーバー上に
 msgid "relative path not allowed for backup stored on server"
 msgstr "サーバー上に格納されるバックアップでは相対パスは指定できません"
 
-#: backup/basebackup_server.c:104 commands/dbcommands.c:501 commands/tablespace.c:163 commands/tablespace.c:179 commands/tablespace.c:599 commands/tablespace.c:644 replication/slot.c:1697 storage/file/copydir.c:47
+#: backup/basebackup_server.c:104 commands/dbcommands.c:501 commands/tablespace.c:163 commands/tablespace.c:179 commands/tablespace.c:599 commands/tablespace.c:644 replication/slot.c:1704 storage/file/copydir.c:47
 #, c-format
 msgid "could not create directory \"%s\": %m"
 msgstr "ディレクトリ\"%s\"を作成できませんでした: %m"
@@ -3611,7 +3611,7 @@ msgid "cannot use IN SCHEMA clause when using GRANT/REVOKE ON SCHEMAS"
 msgstr "GRANT/REVOKE ON SCHEMAS を使っている時には IN SCHEMA 句は指定できません"
 
 #: catalog/aclchk.c:1595 catalog/catalog.c:631 catalog/objectaddress.c:1561 catalog/pg_publication.c:533 commands/analyze.c:390 commands/copy.c:837 commands/sequence.c:1663 commands/tablecmds.c:7339 commands/tablecmds.c:7495 commands/tablecmds.c:7545 commands/tablecmds.c:7619 commands/tablecmds.c:7689 commands/tablecmds.c:7801 commands/tablecmds.c:7895 commands/tablecmds.c:7954 commands/tablecmds.c:8043 commands/tablecmds.c:8073 commands/tablecmds.c:8201
-#: commands/tablecmds.c:8283 commands/tablecmds.c:8417 commands/tablecmds.c:8525 commands/tablecmds.c:12240 commands/tablecmds.c:12421 commands/tablecmds.c:12582 commands/tablecmds.c:13744 commands/tablecmds.c:16273 commands/trigger.c:949 parser/analyze.c:2480 parser/parse_relation.c:737 parser/parse_target.c:1054 parser/parse_type.c:144 parser/parse_utilcmd.c:3413 parser/parse_utilcmd.c:3449 parser/parse_utilcmd.c:3491 utils/adt/acl.c:2876
+#: commands/tablecmds.c:8283 commands/tablecmds.c:8417 commands/tablecmds.c:8525 commands/tablecmds.c:12240 commands/tablecmds.c:12421 commands/tablecmds.c:12582 commands/tablecmds.c:13744 commands/tablecmds.c:16273 commands/trigger.c:949 parser/analyze.c:2518 parser/parse_relation.c:737 parser/parse_target.c:1054 parser/parse_type.c:144 parser/parse_utilcmd.c:3413 parser/parse_utilcmd.c:3449 parser/parse_utilcmd.c:3491 utils/adt/acl.c:2876
 #: utils/adt/ruleutils.c:2799
 #, c-format
 msgid "column \"%s\" of relation \"%s\" does not exist"
@@ -4315,7 +4315,7 @@ msgstr "生成式は不変ではありません"
 msgid "column \"%s\" is of type %s but default expression is of type %s"
 msgstr "列\"%s\"の型は%sですが、デフォルト式の型は%sです"
 
-#: catalog/heap.c:2801 commands/prepare.c:334 parser/analyze.c:2704 parser/parse_target.c:593 parser/parse_target.c:874 parser/parse_target.c:884 rewrite/rewriteHandler.c:1302
+#: catalog/heap.c:2801 commands/prepare.c:334 parser/analyze.c:2742 parser/parse_target.c:593 parser/parse_target.c:874 parser/parse_target.c:884 rewrite/rewriteHandler.c:1302
 #, c-format
 msgid "You will need to rewrite or cast the expression."
 msgstr "式を書き換えるかキャストする必要があります。"
@@ -4470,7 +4470,7 @@ msgstr "リレーション\"%s.%s\"は存在しません"
 msgid "relation \"%s\" does not exist"
 msgstr "リレーション\"%s\"は存在しません"
 
-#: catalog/namespace.c:502 catalog/namespace.c:3073 commands/extension.c:1584 commands/extension.c:1590
+#: catalog/namespace.c:502 catalog/namespace.c:3073 commands/extension.c:1611 commands/extension.c:1617
 #, c-format
 msgid "no schema has been selected to create in"
 msgstr "作成先のスキーマが選択されていません"
@@ -5277,12 +5277,12 @@ msgstr "変換\"%s\"はすでに存在します"
 msgid "default conversion for %s to %s already exists"
 msgstr "%sから%sへのデフォルトの変換はすでに存在します"
 
-#: catalog/pg_depend.c:222 commands/extension.c:3341
+#: catalog/pg_depend.c:222 commands/extension.c:3368
 #, c-format
 msgid "%s is already a member of extension \"%s\""
 msgstr "%sはすでに機能拡張\"%s\"のメンバです"
 
-#: catalog/pg_depend.c:229 catalog/pg_depend.c:280 commands/extension.c:3381
+#: catalog/pg_depend.c:229 catalog/pg_depend.c:280 commands/extension.c:3408
 #, c-format
 msgid "%s is not a member of extension \"%s\""
 msgstr "%s は機能拡張\"%s\"のメンバではありません"
@@ -6195,7 +6195,7 @@ msgstr "OID %uの照合順序は存在しません"
 msgid "must be superuser to import system collations"
 msgstr "システム照合順序をインポートするにはスーパーユーザーである必要があります"
 
-#: commands/collationcmds.c:831 commands/copyfrom.c:1653 commands/copyto.c:656 libpq/be-secure-common.c:59
+#: commands/collationcmds.c:831 commands/copyfrom.c:1654 commands/copyto.c:656 libpq/be-secure-common.c:59
 #, c-format
 msgid "could not execute command \"%s\": %m"
 msgstr "コマンド\"%s\"を実行できませんでした: %m"
@@ -6565,22 +6565,22 @@ msgstr "FORCE_NOT_NULL指定された列\"%s\"はCOPYで参照されません"
 msgid "FORCE_NULL column \"%s\" not referenced by COPY"
 msgstr "FORCE_NULL指定された列\"%s\"はCOPYで参照されません"
 
-#: commands/copyfrom.c:1672
+#: commands/copyfrom.c:1673
 #, c-format
 msgid "COPY FROM instructs the PostgreSQL server process to read a file. You may want a client-side facility such as psql's \\copy."
 msgstr "COPY FROMによってPostgreSQLサーバープロセスはファイルを読み込みます。psqlの \\copy のようなクライアント側の仕組みが必要かもしれません"
 
-#: commands/copyfrom.c:1685 commands/copyto.c:708
+#: commands/copyfrom.c:1686 commands/copyto.c:708
 #, c-format
 msgid "\"%s\" is a directory"
 msgstr "\"%s\"はディレクトリです"
 
-#: commands/copyfrom.c:1753 commands/copyto.c:306 libpq/be-secure-common.c:83
+#: commands/copyfrom.c:1754 commands/copyto.c:306 libpq/be-secure-common.c:83
 #, c-format
 msgid "could not close pipe to external command: %m"
 msgstr "外部コマンドに対するパイプをクローズできませんでした: %m"
 
-#: commands/copyfrom.c:1768 commands/copyto.c:311
+#: commands/copyfrom.c:1769 commands/copyto.c:311
 #, c-format
 msgid "program \"%s\" failed"
 msgstr "プログラム\"%s\"の実行に失敗しました"
@@ -6650,7 +6650,7 @@ msgstr "ヘッダ行フィールド%dでカラム名の不一致: NULL値(\"%s\"
 msgid "column name mismatch in header line field %d: got \"%s\", expected \"%s\""
 msgstr "ヘッダ行フィールド%dでカラム名の不一致: \"%s\"を検出, 予期していた値\"%s\""
 
-#: commands/copyfromparse.c:892 commands/copyfromparse.c:1514 commands/copyfromparse.c:1770
+#: commands/copyfromparse.c:892 commands/copyfromparse.c:1512 commands/copyfromparse.c:1768
 #, c-format
 msgid "extra data after last expected column"
 msgstr "推定最終列の後に余計なデータがありました"
@@ -6670,82 +6670,82 @@ msgstr "EOF マーカーの後ろでコピーデータを受信しました"
 msgid "row field count is %d, expected %d"
 msgstr "行のフィールド数は%d、その期待値は%dです"
 
-#: commands/copyfromparse.c:1296 commands/copyfromparse.c:1313
+#: commands/copyfromparse.c:1294 commands/copyfromparse.c:1311
 #, c-format
 msgid "literal carriage return found in data"
 msgstr "データの中に復帰記号そのものがありました"
 
-#: commands/copyfromparse.c:1297 commands/copyfromparse.c:1314
+#: commands/copyfromparse.c:1295 commands/copyfromparse.c:1312
 #, c-format
 msgid "unquoted carriage return found in data"
 msgstr "データの中に引用符のない復帰記号がありました"
 
-#: commands/copyfromparse.c:1299 commands/copyfromparse.c:1316
+#: commands/copyfromparse.c:1297 commands/copyfromparse.c:1314
 #, c-format
 msgid "Use \"\\r\" to represent carriage return."
 msgstr "復帰記号は\"\\r\"と表現してください"
 
-#: commands/copyfromparse.c:1300 commands/copyfromparse.c:1317
+#: commands/copyfromparse.c:1298 commands/copyfromparse.c:1315
 #, c-format
 msgid "Use quoted CSV field to represent carriage return."
 msgstr "復帰記号を表現するにはCSVフィールドを引用符で括ってください"
 
-#: commands/copyfromparse.c:1329
+#: commands/copyfromparse.c:1327
 #, c-format
 msgid "literal newline found in data"
 msgstr "データの中に改行記号そのものがありました"
 
-#: commands/copyfromparse.c:1330
+#: commands/copyfromparse.c:1328
 #, c-format
 msgid "unquoted newline found in data"
 msgstr "データの中に引用符のない改行記号がありました"
 
-#: commands/copyfromparse.c:1332
+#: commands/copyfromparse.c:1330
 #, c-format
 msgid "Use \"\\n\" to represent newline."
 msgstr "改行記号は\"\\n\"と表現してください"
 
-#: commands/copyfromparse.c:1333
+#: commands/copyfromparse.c:1331
 #, c-format
 msgid "Use quoted CSV field to represent newline."
 msgstr "改行記号を表現するにはCSVフィールドを引用符で括ってください"
 
-#: commands/copyfromparse.c:1379 commands/copyfromparse.c:1415
+#: commands/copyfromparse.c:1377 commands/copyfromparse.c:1413
 #, c-format
 msgid "end-of-copy marker does not match previous newline style"
 msgstr "コピー終端記号がこれまでの改行方式と一致しません"
 
-#: commands/copyfromparse.c:1388 commands/copyfromparse.c:1404
+#: commands/copyfromparse.c:1386 commands/copyfromparse.c:1402
 #, c-format
 msgid "end-of-copy marker corrupt"
 msgstr "コピー終端記号が破損しています"
 
-#: commands/copyfromparse.c:1706 commands/copyfromparse.c:1921
+#: commands/copyfromparse.c:1704 commands/copyfromparse.c:1919
 #, c-format
 msgid "unexpected default marker in COPY data"
 msgstr "COPYデータの中に想定外のデフォルトマーカーがあります"
 
-#: commands/copyfromparse.c:1707 commands/copyfromparse.c:1922
+#: commands/copyfromparse.c:1705 commands/copyfromparse.c:1920
 #, c-format
 msgid "Column \"%s\" has no default value."
 msgstr "列\"%s\"はデフォルト値を持ちません。"
 
-#: commands/copyfromparse.c:1854
+#: commands/copyfromparse.c:1852
 #, c-format
 msgid "unterminated CSV quoted field"
 msgstr "CSV引用符が閉じていません"
 
-#: commands/copyfromparse.c:1956 commands/copyfromparse.c:1975
+#: commands/copyfromparse.c:1954 commands/copyfromparse.c:1973
 #, c-format
 msgid "unexpected EOF in COPY data"
 msgstr "COPYデータの中に想定外のEOFがあります"
 
-#: commands/copyfromparse.c:1965
+#: commands/copyfromparse.c:1963
 #, c-format
 msgid "invalid field size"
 msgstr "フィールドサイズが不正です"
 
-#: commands/copyfromparse.c:1988
+#: commands/copyfromparse.c:1986
 #, c-format
 msgid "incorrect binary data format"
 msgstr "バイナリデータ書式が不正です"
@@ -7505,7 +7505,7 @@ msgstr "EXPLAINオプションのTIMINGにはANALYZE指定が必要です"
 msgid "EXPLAIN options ANALYZE and GENERIC_PLAN cannot be used together"
 msgstr "EXPLAINのオプションANALYZEとGENERIC_PLANは同時に使用できません"
 
-#: commands/extension.c:177 commands/extension.c:3006
+#: commands/extension.c:177 commands/extension.c:3033
 #, c-format
 msgid "extension \"%s\" does not exist"
 msgstr "機能拡張\"%s\"は存在しません"
@@ -7645,127 +7645,137 @@ msgstr "この機能拡張を更新するには現在のデータベースのCRE
 msgid "Must be superuser to update this extension."
 msgstr "この機能拡張を更新するにはスーパーユーザーである必要があります。"
 
-#: commands/extension.c:1265
+#: commands/extension.c:1046
+#, c-format
+msgid "invalid character in extension owner: must not contain any of \"%s\""
+msgstr "機能拡張の所有者名に不正な文字: \"%s\"のいずれの文字も含むことはできません"
+
+#: commands/extension.c:1070 commands/extension.c:1097
+#, c-format
+msgid "invalid character in extension \"%s\" schema: must not contain any of \"%s\""
+msgstr "機能拡張\"%s\"のスキーマ名に不正な文字: \"%s\"のいずれの文字も含むことはできません"
+
+#: commands/extension.c:1292
 #, c-format
 msgid "extension \"%s\" has no update path from version \"%s\" to version \"%s\""
 msgstr "機能拡張\"%s\"について、バージョン\"%s\"からバージョン\"%s\"へのアップデートパスがありません"
 
-#: commands/extension.c:1473 commands/extension.c:3064
+#: commands/extension.c:1500 commands/extension.c:3091
 #, c-format
 msgid "version to install must be specified"
 msgstr "インストールするバージョンを指定してください"
 
-#: commands/extension.c:1510
+#: commands/extension.c:1537
 #, c-format
 msgid "extension \"%s\" has no installation script nor update path for version \"%s\""
 msgstr "機能拡張\"%s\"にはバージョン\"%s\"のインストールスクリプトもアップデートパスもありません"
 
-#: commands/extension.c:1544
+#: commands/extension.c:1571
 #, c-format
 msgid "extension \"%s\" must be installed in schema \"%s\""
 msgstr "機能拡張\"%s\"はスキーマ\"%s\"内にインストールされていなければなりません"
 
-#: commands/extension.c:1704
+#: commands/extension.c:1731
 #, c-format
 msgid "cyclic dependency detected between extensions \"%s\" and \"%s\""
 msgstr "機能拡張\"%s\"と\"%s\"の間に循環依存関係が検出されました"
 
-#: commands/extension.c:1709
+#: commands/extension.c:1736
 #, c-format
 msgid "installing required extension \"%s\""
 msgstr "必要な機能拡張をインストールします:\"%s\""
 
-#: commands/extension.c:1732
+#: commands/extension.c:1759
 #, c-format
 msgid "required extension \"%s\" is not installed"
 msgstr "要求された機能拡張\"%s\"はインストールされていません"
 
-#: commands/extension.c:1735
+#: commands/extension.c:1762
 #, c-format
 msgid "Use CREATE EXTENSION ... CASCADE to install required extensions too."
 msgstr "必要な機能拡張を一緒にインストールするには CREATE EXTENSION ... CASCADE を使ってください。"
 
-#: commands/extension.c:1770
+#: commands/extension.c:1797
 #, c-format
 msgid "extension \"%s\" already exists, skipping"
 msgstr "機能拡張\"%s\"はすでに存在します、スキップします"
 
-#: commands/extension.c:1777
+#: commands/extension.c:1804
 #, c-format
 msgid "extension \"%s\" already exists"
 msgstr "機能拡張\"%s\"はすでに存在します"
 
-#: commands/extension.c:1788
+#: commands/extension.c:1815
 #, c-format
 msgid "nested CREATE EXTENSION is not supported"
 msgstr "入れ子の CREATE EXTENSION はサポートされません"
 
-#: commands/extension.c:1952
+#: commands/extension.c:1979
 #, c-format
 msgid "cannot drop extension \"%s\" because it is being modified"
 msgstr "変更されているため拡張\"%s\"を削除できません"
 
-#: commands/extension.c:2427
+#: commands/extension.c:2454
 #, c-format
 msgid "%s can only be called from an SQL script executed by CREATE EXTENSION"
 msgstr "%s はCREATE EXTENSIONにより実行されるSQLスクリプトからのみ呼び出すことができます"
 
-#: commands/extension.c:2439
+#: commands/extension.c:2466
 #, c-format
 msgid "OID %u does not refer to a table"
 msgstr "OID %u がテーブルを参照していません"
 
-#: commands/extension.c:2444
+#: commands/extension.c:2471
 #, c-format
 msgid "table \"%s\" is not a member of the extension being created"
 msgstr "テーブル\"%s\"は生成されようとしている機能拡張のメンバではありません"
 
-#: commands/extension.c:2790
+#: commands/extension.c:2817
 #, c-format
 msgid "cannot move extension \"%s\" into schema \"%s\" because the extension contains the schema"
 msgstr "機能拡張がそのスキーマを含んでいるため、機能拡張\"%s\"をスキーマ\"%s\"に移動できません"
 
-#: commands/extension.c:2831 commands/extension.c:2925
+#: commands/extension.c:2858 commands/extension.c:2952
 #, c-format
 msgid "extension \"%s\" does not support SET SCHEMA"
 msgstr "機能拡張\"%s\"は SET SCHEMA をサポートしていません"
 
-#: commands/extension.c:2888
+#: commands/extension.c:2915
 #, c-format
 msgid "cannot SET SCHEMA of extension \"%s\" because other extensions prevent it"
 msgstr "他の機能拡張によって禁止されているため、機能拡張\"%s\"の SET SCHEMAが実行できません"
 
-#: commands/extension.c:2890
+#: commands/extension.c:2917
 #, c-format
 msgid "Extension \"%s\" requests no relocation of extension \"%s\"."
 msgstr "機能拡張\"%s\"は機能拡張\"%s\"の再配置禁止を要求しています。"
 
-#: commands/extension.c:2927
+#: commands/extension.c:2954
 #, c-format
 msgid "%s is not in the extension's schema \"%s\""
 msgstr "機能拡張のスキーマ\"%2$s\"に%1$sが見つかりません"
 
-#: commands/extension.c:2986
+#: commands/extension.c:3013
 #, c-format
 msgid "nested ALTER EXTENSION is not supported"
 msgstr "入れ子になった ALTER EXTENSION はサポートされていません"
 
-#: commands/extension.c:3075
+#: commands/extension.c:3102
 #, c-format
 msgid "version \"%s\" of extension \"%s\" is already installed"
 msgstr "機能拡張 \"%2$s\"のバージョン\"%1$s\"はすでにインストールされています"
 
-#: commands/extension.c:3287
+#: commands/extension.c:3314
 #, c-format
 msgid "cannot add an object of this type to an extension"
 msgstr "この型のオブジェクトは機能拡張に追加できません"
 
-#: commands/extension.c:3353
+#: commands/extension.c:3380
 #, c-format
 msgid "cannot add schema \"%s\" to extension \"%s\" because the schema contains the extension"
 msgstr "スキーマ\"%s\"を拡張\"%s\"に追加できません。そのスキーマにその拡張が含まれているためです"
 
-#: commands/extension.c:3447
+#: commands/extension.c:3474
 #, c-format
 msgid "file \"%s\" is too large"
 msgstr "ファイル\"%s\"は大きすぎます"
@@ -8931,7 +8941,7 @@ msgstr "準備された文\"%s\"は存在しません"
 msgid "must be superuser to create custom procedural language"
 msgstr "手続き言語を生成するためにはスーパーユーザーである必要があります"
 
-#: commands/publicationcmds.c:131 postmaster/postmaster.c:1205 postmaster/postmaster.c:1303 storage/file/fd.c:3911 utils/init/miscinit.c:1815
+#: commands/publicationcmds.c:131 postmaster/postmaster.c:1208 postmaster/postmaster.c:1306 storage/file/fd.c:3911 utils/init/miscinit.c:1815
 #, c-format
 msgid "invalid list syntax in parameter \"%s\""
 msgstr "パラメータ\"%s\"のリスト構文が不正です"
@@ -9414,7 +9424,7 @@ msgstr "サブスクリプションを作成する権限がありません"
 msgid "Only roles with privileges of the \"%s\" role may create subscriptions."
 msgstr "\"%s\"ロールの権限を持つロールのみがサブスクリプションを作成できます。"
 
-#: commands/subscriptioncmds.c:745 commands/subscriptioncmds.c:878 replication/logical/tablesync.c:1309 replication/logical/worker.c:4602
+#: commands/subscriptioncmds.c:745 commands/subscriptioncmds.c:878 replication/logical/tablesync.c:1309 replication/logical/worker.c:4616
 #, c-format
 msgid "could not connect to the publisher: %s"
 msgstr "発行サーバーへの接続ができませんでした: %s"
@@ -9533,9 +9543,9 @@ msgstr "サブスクリプション\"%s\"がcopy_dataをorigin = NONEで要求
 
 #: commands/subscriptioncmds.c:2026
 #, c-format
-msgid "Subscribed publication %s is subscribing to other publications."
-msgid_plural "Subscribed publications %s are subscribing to other publications."
-msgstr[0] "購読しているパブリケーション%sは他のパブリケーションを購読しています。"
+msgid "The subscription being created subscribes to a publication (%s) that contains tables that are written to by other subscriptions."
+msgid_plural "The subscription being created subscribes to publications (%s) that contain tables that are written to by other subscriptions."
+msgstr[0] "作成中のサブスクリプションは他のサブスクリプションによって書き込まれるテーブルを含むパブリケーション(%s)を購読します"
 
 #: commands/subscriptioncmds.c:2029
 #, c-format
@@ -11365,7 +11375,7 @@ msgstr "トリガ\"%s\"の実行前には、この行はパーティション\"%
 msgid "tuple to be updated was already modified by an operation triggered by the current command"
 msgstr "更新対象のタプルはすでに現在のコマンドによって発行された操作によって変更されています"
 
-#: commands/trigger.c:3330 executor/nodeModifyTable.c:1531 executor/nodeModifyTable.c:1605 executor/nodeModifyTable.c:2364 executor/nodeModifyTable.c:2447 executor/nodeModifyTable.c:3077
+#: commands/trigger.c:3330 executor/nodeModifyTable.c:1531 executor/nodeModifyTable.c:1605 executor/nodeModifyTable.c:2364 executor/nodeModifyTable.c:2447 executor/nodeModifyTable.c:3078
 #, c-format
 msgid "Consider using an AFTER trigger instead of a BEFORE trigger to propagate changes to other rows."
 msgstr "他の行への変更を伝搬させるためにBEFOREトリガではなくAFTERトリガの使用を検討してください"
@@ -11375,7 +11385,7 @@ msgstr "他の行への変更を伝搬させるためにBEFOREトリガではな
 msgid "could not serialize access due to concurrent update"
 msgstr "更新が同時に行われたためアクセスの直列化ができませんでした"
 
-#: commands/trigger.c:3379 executor/nodeModifyTable.c:1637 executor/nodeModifyTable.c:2464 executor/nodeModifyTable.c:2613 executor/nodeModifyTable.c:2965
+#: commands/trigger.c:3379 executor/nodeModifyTable.c:1637 executor/nodeModifyTable.c:2464 executor/nodeModifyTable.c:2613 executor/nodeModifyTable.c:2966
 #, c-format
 msgid "could not serialize access due to concurrent delete"
 msgstr "削除が同時に行われたためアクセスの直列化ができませんでした"
@@ -12863,67 +12873,67 @@ msgstr "行に対応するパーティションがリレーション\"%s\"に見
 msgid "Partition key of the failing row contains %s."
 msgstr "失敗した行のパーティションキーは%sを含みます。"
 
-#: executor/execReplication.c:240 executor/execReplication.c:424
+#: executor/execReplication.c:231 executor/execReplication.c:415
 #, c-format
 msgid "tuple to be locked was already moved to another partition due to concurrent update, retrying"
 msgstr "ロック対象のタプルは同時に行われた更新によって他の子テーブルに移動されています、再試行しています"
 
-#: executor/execReplication.c:244 executor/execReplication.c:428
+#: executor/execReplication.c:235 executor/execReplication.c:419
 #, c-format
 msgid "concurrent update, retrying"
 msgstr "同時更新がありました、リトライします"
 
-#: executor/execReplication.c:250 executor/execReplication.c:434
+#: executor/execReplication.c:241 executor/execReplication.c:425
 #, c-format
 msgid "concurrent delete, retrying"
 msgstr "並行する削除がありました、リトライします"
 
-#: executor/execReplication.c:320 parser/parse_cte.c:308 parser/parse_oper.c:233 utils/adt/array_userfuncs.c:1348 utils/adt/array_userfuncs.c:1491 utils/adt/arrayfuncs.c:3832 utils/adt/arrayfuncs.c:4387 utils/adt/arrayfuncs.c:6397 utils/adt/rowtypes.c:1230
+#: executor/execReplication.c:311 parser/parse_cte.c:308 parser/parse_oper.c:233 utils/adt/array_userfuncs.c:1348 utils/adt/array_userfuncs.c:1491 utils/adt/arrayfuncs.c:3832 utils/adt/arrayfuncs.c:4387 utils/adt/arrayfuncs.c:6397 utils/adt/rowtypes.c:1230
 #, c-format
 msgid "could not identify an equality operator for type %s"
 msgstr "型%sの等価演算子を識別できませんでした"
 
-#: executor/execReplication.c:651 executor/execReplication.c:657
+#: executor/execReplication.c:642 executor/execReplication.c:648
 #, c-format
 msgid "cannot update table \"%s\""
 msgstr "テーブル\"%s\"の更新ができません"
 
-#: executor/execReplication.c:653 executor/execReplication.c:665
+#: executor/execReplication.c:644 executor/execReplication.c:656
 #, c-format
 msgid "Column used in the publication WHERE expression is not part of the replica identity."
 msgstr "このパブリケーションのWHERE式で使用されている列は識別列の一部ではありません。"
 
-#: executor/execReplication.c:659 executor/execReplication.c:671
+#: executor/execReplication.c:650 executor/execReplication.c:662
 #, c-format
 msgid "Column list used by the publication does not cover the replica identity."
 msgstr "このパブリケーションで使用されてる列リストは識別列を包含していません。"
 
-#: executor/execReplication.c:663 executor/execReplication.c:669
+#: executor/execReplication.c:654 executor/execReplication.c:660
 #, c-format
 msgid "cannot delete from table \"%s\""
 msgstr "テーブル\"%s\"からの削除ができません"
 
-#: executor/execReplication.c:689
+#: executor/execReplication.c:680
 #, c-format
 msgid "cannot update table \"%s\" because it does not have a replica identity and publishes updates"
 msgstr "テーブル\"%s\"は複製識別を持たずかつ更新を発行しているため、更新できません"
 
-#: executor/execReplication.c:691
+#: executor/execReplication.c:682
 #, c-format
 msgid "To enable updating the table, set REPLICA IDENTITY using ALTER TABLE."
 msgstr "テーブルの更新を可能にするには ALTER TABLE で REPLICA IDENTITY を設定してください。"
 
-#: executor/execReplication.c:695
+#: executor/execReplication.c:686
 #, c-format
 msgid "cannot delete from table \"%s\" because it does not have a replica identity and publishes deletes"
 msgstr "テーブル\"%s\"は複製識別がなくかつ削除を発行しているため、このテーブルでは行の削除ができません"
 
-#: executor/execReplication.c:697
+#: executor/execReplication.c:688
 #, c-format
 msgid "To enable deleting from the table, set REPLICA IDENTITY using ALTER TABLE."
 msgstr "このテーブルでの行削除を可能にするには ALTER TABLE で REPLICA IDENTITY を設定してください。"
 
-#: executor/execReplication.c:713
+#: executor/execReplication.c:704
 #, c-format
 msgid "cannot use relation \"%s.%s\" as logical replication target"
 msgstr "リレーション\"%s.%s\"は論理レプリケーション先としては使用できません"
@@ -13142,7 +13152,7 @@ msgid "Consider defining the foreign key on table \"%s\"."
 msgstr "テーブル\"%s\"上に外部キー制約を定義することを検討してください。"
 
 #. translator: %s is a SQL command name
-#: executor/nodeModifyTable.c:2567 executor/nodeModifyTable.c:2954
+#: executor/nodeModifyTable.c:2567 executor/nodeModifyTable.c:2955
 #, c-format
 msgid "%s command cannot affect row a second time"
 msgstr "%sコマンドは単一の行に2度は適用できません"
@@ -13152,17 +13162,17 @@ msgstr "%sコマンドは単一の行に2度は適用できません"
 msgid "Ensure that no rows proposed for insertion within the same command have duplicate constrained values."
 msgstr "同じコマンドでの挿入候補の行が同じ制約値を持つことがないようにしてください"
 
-#: executor/nodeModifyTable.c:2956
+#: executor/nodeModifyTable.c:2957
 #, c-format
 msgid "Ensure that not more than one source row matches any one target row."
 msgstr "ソース行が2行以上ターゲット行に合致しないようにしてください。"
 
-#: executor/nodeModifyTable.c:3037
+#: executor/nodeModifyTable.c:3038
 #, c-format
 msgid "tuple to be deleted was already moved to another partition due to concurrent update"
 msgstr "削除対象のタプルは同時に行われた更新によってすでに他の子テーブルに移動されています"
 
-#: executor/nodeModifyTable.c:3076
+#: executor/nodeModifyTable.c:3077
 #, c-format
 msgid "tuple to be updated or deleted was already modified by an operation triggered by the current command"
 msgstr "更新または削除対象のタプルは、現在のコマンドによって発火した操作トリガーによってすでに更新されています"
@@ -13283,7 +13293,7 @@ msgstr "カーソルで%s問い合わせを開くことができません"
 msgid "DECLARE SCROLL CURSOR ... FOR UPDATE/SHARE is not supported"
 msgstr "DECLARE SCROLL CURSOR ... FOR UPDATE/SHAREはサポートされていません"
 
-#: executor/spi.c:1717 parser/analyze.c:2874
+#: executor/spi.c:1717 parser/analyze.c:2912
 #, c-format
 msgid "Scrollable cursors must be READ ONLY."
 msgstr "スクロール可能カーソルは読み取り専用である必要があります。"
@@ -14164,7 +14174,7 @@ msgstr "パスワードパケットのサイズが不正です"
 msgid "empty password returned by client"
 msgstr "クライアントから空のパスワードが返されました"
 
-#: libpq/auth.c:879 libpq/hba.c:1749
+#: libpq/auth.c:879 libpq/hba.c:1727
 #, c-format
 msgid "MD5 authentication is not supported when \"db_user_namespace\" is enabled"
 msgstr "\"db_user_namespace\"が有効の場合、MD5 認証はサポートされません"
@@ -14460,7 +14470,7 @@ msgstr "RADIUS secret が指定されていません"
 msgid "RADIUS authentication does not support passwords longer than %d characters"
 msgstr "RADIUS認証では%d文字より長いパスワードはサポートしていません"
 
-#: libpq/auth.c:2995 libpq/hba.c:2391
+#: libpq/auth.c:2995 libpq/hba.c:2369
 #, c-format
 msgid "could not translate RADIUS server name \"%s\" to address: %s"
 msgstr "RADIUS サーバー名\"%s\"をアドレスに変換できませんでした: %s"
@@ -14925,359 +14935,354 @@ msgstr "ユーザー\"%s\"のパスワードが合致しません。"
 msgid "Password of user \"%s\" is in unrecognized format."
 msgstr "ユーザー\"%s\"のパスワードは識別不能な形式です。"
 
-#: libpq/hba.c:234
-#, c-format
-msgid "authentication file token too long, skipping: \"%s\""
-msgstr "認証ファイルのトークンが長すぎますので、飛ばします: \"%s\""
-
-#: libpq/hba.c:357
+#: libpq/hba.c:332
 #, c-format
 msgid "invalid regular expression \"%s\": %s"
 msgstr "不正な正規表現\"%s\": %s"
 
-#: libpq/hba.c:359 libpq/hba.c:688 libpq/hba.c:1272 libpq/hba.c:1292 libpq/hba.c:1315 libpq/hba.c:1328 libpq/hba.c:1381 libpq/hba.c:1409 libpq/hba.c:1417 libpq/hba.c:1429 libpq/hba.c:1450 libpq/hba.c:1463 libpq/hba.c:1488 libpq/hba.c:1515 libpq/hba.c:1527 libpq/hba.c:1586 libpq/hba.c:1606 libpq/hba.c:1620 libpq/hba.c:1640 libpq/hba.c:1651 libpq/hba.c:1666 libpq/hba.c:1685 libpq/hba.c:1701 libpq/hba.c:1713 libpq/hba.c:1750 libpq/hba.c:1791 libpq/hba.c:1804
-#: libpq/hba.c:1826 libpq/hba.c:1838 libpq/hba.c:1856 libpq/hba.c:1906 libpq/hba.c:1950 libpq/hba.c:1961 libpq/hba.c:1977 libpq/hba.c:1994 libpq/hba.c:2005 libpq/hba.c:2024 libpq/hba.c:2040 libpq/hba.c:2056 libpq/hba.c:2115 libpq/hba.c:2132 libpq/hba.c:2145 libpq/hba.c:2157 libpq/hba.c:2176 libpq/hba.c:2262 libpq/hba.c:2280 libpq/hba.c:2374 libpq/hba.c:2393 libpq/hba.c:2422 libpq/hba.c:2435 libpq/hba.c:2458 libpq/hba.c:2480 libpq/hba.c:2494
+#: libpq/hba.c:334 libpq/hba.c:666 libpq/hba.c:1250 libpq/hba.c:1270 libpq/hba.c:1293 libpq/hba.c:1306 libpq/hba.c:1359 libpq/hba.c:1387 libpq/hba.c:1395 libpq/hba.c:1407 libpq/hba.c:1428 libpq/hba.c:1441 libpq/hba.c:1466 libpq/hba.c:1493 libpq/hba.c:1505 libpq/hba.c:1564 libpq/hba.c:1584 libpq/hba.c:1598 libpq/hba.c:1618 libpq/hba.c:1629 libpq/hba.c:1644 libpq/hba.c:1663 libpq/hba.c:1679 libpq/hba.c:1691 libpq/hba.c:1728 libpq/hba.c:1769 libpq/hba.c:1782
+#: libpq/hba.c:1804 libpq/hba.c:1816 libpq/hba.c:1834 libpq/hba.c:1884 libpq/hba.c:1928 libpq/hba.c:1939 libpq/hba.c:1955 libpq/hba.c:1972 libpq/hba.c:1983 libpq/hba.c:2002 libpq/hba.c:2018 libpq/hba.c:2034 libpq/hba.c:2093 libpq/hba.c:2110 libpq/hba.c:2123 libpq/hba.c:2135 libpq/hba.c:2154 libpq/hba.c:2240 libpq/hba.c:2258 libpq/hba.c:2352 libpq/hba.c:2371 libpq/hba.c:2400 libpq/hba.c:2413 libpq/hba.c:2436 libpq/hba.c:2458 libpq/hba.c:2472
 #: tsearch/ts_locale.c:243
 #, c-format
 msgid "line %d of configuration file \"%s\""
 msgstr "設定ファイル \"%2$s\" の %1$d 行目"
 
-#: libpq/hba.c:484
+#: libpq/hba.c:462
 #, c-format
 msgid "skipping missing authentication file \"%s\""
 msgstr "存在しない認証設定ファイル\"%s\"をスキップします"
 
-#: libpq/hba.c:636
+#: libpq/hba.c:614
 #, c-format
 msgid "could not open file \"%s\": maximum nesting depth exceeded"
 msgstr "ファイル\"%s\"をオープンできませんでした: 入れ子の深さが上限を超えています"
 
-#: libpq/hba.c:1243
+#: libpq/hba.c:1221
 #, c-format
 msgid "error enumerating network interfaces: %m"
 msgstr "ネットワークインターフェース列挙中のエラー: %m"
 
 #. translator: the second %s is a list of auth methods
-#: libpq/hba.c:1270
+#: libpq/hba.c:1248
 #, c-format
 msgid "authentication option \"%s\" is only valid for authentication methods %s"
 msgstr "認証オプション\"%s\"は認証方式%sでのみ有効です"
 
-#: libpq/hba.c:1290
+#: libpq/hba.c:1268
 #, c-format
 msgid "authentication method \"%s\" requires argument \"%s\" to be set"
 msgstr "認証方式\"%s\"の場合は引数\"%s\"がセットされなければなりません"
 
-#: libpq/hba.c:1314
+#: libpq/hba.c:1292
 #, c-format
 msgid "missing entry at end of line"
 msgstr "行末の要素が足りません"
 
-#: libpq/hba.c:1327
+#: libpq/hba.c:1305
 #, c-format
 msgid "multiple values in ident field"
 msgstr "identヂールド内の複数の値"
 
-#: libpq/hba.c:1379
+#: libpq/hba.c:1357
 #, c-format
 msgid "multiple values specified for connection type"
 msgstr "接続タイプで複数の値が指定されました"
 
-#: libpq/hba.c:1380
+#: libpq/hba.c:1358
 #, c-format
 msgid "Specify exactly one connection type per line."
 msgstr "1行に1つの接続タイプだけを指定してください"
 
-#: libpq/hba.c:1407
+#: libpq/hba.c:1385
 #, c-format
 msgid "hostssl record cannot match because SSL is disabled"
 msgstr "SSLが無効なため、hostssl行は照合できません"
 
-#: libpq/hba.c:1408
+#: libpq/hba.c:1386
 #, c-format
 msgid "Set ssl = on in postgresql.conf."
 msgstr "postgresql.confで ssl = on に設定してください。"
 
-#: libpq/hba.c:1416
+#: libpq/hba.c:1394
 #, c-format
 msgid "hostssl record cannot match because SSL is not supported by this build"
 msgstr "このビルドではhostsslはサポートされていないため、hostssl行は照合できません"
 
-#: libpq/hba.c:1428
+#: libpq/hba.c:1406
 #, c-format
 msgid "hostgssenc record cannot match because GSSAPI is not supported by this build"
 msgstr "このビルドでは GSSAPI をサポートしていないため hostgssenc レコードは照合できません"
 
-#: libpq/hba.c:1448
+#: libpq/hba.c:1426
 #, c-format
 msgid "invalid connection type \"%s\""
 msgstr "接続オプションタイプ \"%s\" は不正です"
 
-#: libpq/hba.c:1462
+#: libpq/hba.c:1440
 #, c-format
 msgid "end-of-line before database specification"
 msgstr "データベース指定の前に行末を検出しました"
 
-#: libpq/hba.c:1487
+#: libpq/hba.c:1465
 #, c-format
 msgid "end-of-line before role specification"
 msgstr "ロール指定の前に行末を検出しました"
 
-#: libpq/hba.c:1514
+#: libpq/hba.c:1492
 #, c-format
 msgid "end-of-line before IP address specification"
 msgstr "IP アドレス指定の前に行末を検出しました"
 
-#: libpq/hba.c:1525
+#: libpq/hba.c:1503
 #, c-format
 msgid "multiple values specified for host address"
 msgstr "ホストアドレスで複数の値が指定されました"
 
-#: libpq/hba.c:1526
+#: libpq/hba.c:1504
 #, c-format
 msgid "Specify one address range per line."
 msgstr "1行に1つのアドレス範囲を指定してください"
 
-#: libpq/hba.c:1584
+#: libpq/hba.c:1562
 #, c-format
 msgid "invalid IP address \"%s\": %s"
 msgstr "不正なIPアドレス\"%s\": %s"
 
-#: libpq/hba.c:1604
+#: libpq/hba.c:1582
 #, c-format
 msgid "specifying both host name and CIDR mask is invalid: \"%s\""
 msgstr "ホスト名とCIDRマスクを両方指定するのは不正です: \"%s\""
 
-#: libpq/hba.c:1618
+#: libpq/hba.c:1596
 #, c-format
 msgid "invalid CIDR mask in address \"%s\""
 msgstr "IPアドレス\"%s\"内の CIDR マスクが不正です"
 
-#: libpq/hba.c:1638
+#: libpq/hba.c:1616
 #, c-format
 msgid "end-of-line before netmask specification"
 msgstr "ネットマスク指定の前に行末を検出しました"
 
-#: libpq/hba.c:1639
+#: libpq/hba.c:1617
 #, c-format
 msgid "Specify an address range in CIDR notation, or provide a separate netmask."
 msgstr "CIDR記法でアドレス範囲を指定してするか、ネットマスクを分けて指定してください。"
 
-#: libpq/hba.c:1650
+#: libpq/hba.c:1628
 #, c-format
 msgid "multiple values specified for netmask"
 msgstr "ネットマスクで複数の値が指定されました"
 
-#: libpq/hba.c:1664
+#: libpq/hba.c:1642
 #, c-format
 msgid "invalid IP mask \"%s\": %s"
 msgstr "不正なIPマスク\"%s\": %s"
 
-#: libpq/hba.c:1684
+#: libpq/hba.c:1662
 #, c-format
 msgid "IP address and mask do not match"
 msgstr "IPアドレスとマスクが一致しません"
 
-#: libpq/hba.c:1700
+#: libpq/hba.c:1678
 #, c-format
 msgid "end-of-line before authentication method"
 msgstr "認証方式指定の前に行末を検出しました"
 
-#: libpq/hba.c:1711
+#: libpq/hba.c:1689
 #, c-format
 msgid "multiple values specified for authentication type"
 msgstr "認証タイプで複数の値が指定されました"
 
-#: libpq/hba.c:1712
+#: libpq/hba.c:1690
 #, c-format
 msgid "Specify exactly one authentication type per line."
 msgstr "認証タイプは1行に1つだけ指定してください。"
 
-#: libpq/hba.c:1789
+#: libpq/hba.c:1767
 #, c-format
 msgid "invalid authentication method \"%s\""
 msgstr "不正な認証方式\"%s\""
 
-#: libpq/hba.c:1802
+#: libpq/hba.c:1780
 #, c-format
 msgid "invalid authentication method \"%s\": not supported by this build"
 msgstr "不正な認証方式\"%s\": このビルドではサポートされていません"
 
-#: libpq/hba.c:1825
+#: libpq/hba.c:1803
 #, c-format
 msgid "gssapi authentication is not supported on local sockets"
 msgstr "ローカルソケットではgssapi認証はサポートしていません"
 
-#: libpq/hba.c:1837
+#: libpq/hba.c:1815
 #, c-format
 msgid "peer authentication is only supported on local sockets"
 msgstr "peer認証はローカルソケットでのみサポートしています"
 
-#: libpq/hba.c:1855
+#: libpq/hba.c:1833
 #, c-format
 msgid "cert authentication is only supported on hostssl connections"
 msgstr "hostssl接続では証明書認証のみをサポートしています"
 
-#: libpq/hba.c:1905
+#: libpq/hba.c:1883
 #, c-format
 msgid "authentication option not in name=value format: %s"
 msgstr "認証オプションが 名前=値 形式になっていません: %s"
 
-#: libpq/hba.c:1949
+#: libpq/hba.c:1927
 #, c-format
 msgid "cannot use ldapbasedn, ldapbinddn, ldapbindpasswd, ldapsearchattribute, ldapsearchfilter, or ldapurl together with ldapprefix"
 msgstr "ldapbasedn、 ldapbinddn、ldapbindpasswd、ldapsearchattribute、, ldapsearchfilter またはldapurlは、ldapprefixと同時には指定できません"
 
-#: libpq/hba.c:1960
+#: libpq/hba.c:1938
 #, c-format
 msgid "authentication method \"ldap\" requires argument \"ldapbasedn\", \"ldapprefix\", or \"ldapsuffix\" to be set"
 msgstr "\"ldap\"認証方式の場合は引数 \"ldapbasedn\"、\"ldapprefix\"、\"ldapsuffix\"のいずれかを指定してください"
 
-#: libpq/hba.c:1976
+#: libpq/hba.c:1954
 #, c-format
 msgid "cannot use ldapsearchattribute together with ldapsearchfilter"
 msgstr "ldapsearchattribute、ldapsearchfilter と同時には指定できません"
 
-#: libpq/hba.c:1993
+#: libpq/hba.c:1971
 #, c-format
 msgid "list of RADIUS servers cannot be empty"
 msgstr "RADIUSサーバーのリストは空にはできません"
 
-#: libpq/hba.c:2004
+#: libpq/hba.c:1982
 #, c-format
 msgid "list of RADIUS secrets cannot be empty"
 msgstr "RADIUSシークレットのリストは空にはできません"
 
-#: libpq/hba.c:2021
+#: libpq/hba.c:1999
 #, c-format
 msgid "the number of RADIUS secrets (%d) must be 1 or the same as the number of RADIUS servers (%d)"
 msgstr "RADIUSシークレットの数(%d)は1またはRADIUSサーバーの数(%d)と同じである必要があります"
 
-#: libpq/hba.c:2037
+#: libpq/hba.c:2015
 #, c-format
 msgid "the number of RADIUS ports (%d) must be 1 or the same as the number of RADIUS servers (%d)"
 msgstr "RADIUSポートの数(%d)は1またはRADIUSサーバーの数(%d)と同じである必要があります"
 
-#: libpq/hba.c:2053
+#: libpq/hba.c:2031
 #, c-format
 msgid "the number of RADIUS identifiers (%d) must be 1 or the same as the number of RADIUS servers (%d)"
 msgstr "RADIUS識別子の数(%d)は1またはRADIUSサーバーの数(%d)と同じである必要があります"
 
 #
-#: libpq/hba.c:2105
+#: libpq/hba.c:2083
 msgid "ident, peer, gssapi, sspi, and cert"
 msgstr "ident、peer、gssapi、sspiおよびcert"
 
-#: libpq/hba.c:2114
+#: libpq/hba.c:2092
 #, c-format
 msgid "clientcert can only be configured for \"hostssl\" rows"
 msgstr "クライアント証明書は\"hostssl\"の行でのみ設定できます"
 
-#: libpq/hba.c:2131
+#: libpq/hba.c:2109
 #, c-format
 msgid "clientcert only accepts \"verify-full\" when using \"cert\" authentication"
 msgstr "\"cert\"認証使用時はclientcertは\"verify-full\"にしか設定できません"
 
-#: libpq/hba.c:2144
+#: libpq/hba.c:2122
 #, c-format
 msgid "invalid value for clientcert: \"%s\""
 msgstr "clientcertの値が不正です: \"%s\""
 
-#: libpq/hba.c:2156
+#: libpq/hba.c:2134
 #, c-format
 msgid "clientname can only be configured for \"hostssl\" rows"
 msgstr "クライアント名は\"hostssl\"の行でのみ設定できます"
 
-#: libpq/hba.c:2175
+#: libpq/hba.c:2153
 #, c-format
 msgid "invalid value for clientname: \"%s\""
 msgstr "clientnameの値が不正です: \"%s\""
 
-#: libpq/hba.c:2208
+#: libpq/hba.c:2186
 #, c-format
 msgid "could not parse LDAP URL \"%s\": %s"
 msgstr "LDAP URL\"%s\"をパースできませんでした: %s"
 
-#: libpq/hba.c:2219
+#: libpq/hba.c:2197
 #, c-format
 msgid "unsupported LDAP URL scheme: %s"
 msgstr "非サポートのLDAP URLコード: %s"
 
-#: libpq/hba.c:2243
+#: libpq/hba.c:2221
 #, c-format
 msgid "LDAP URLs not supported on this platform"
 msgstr "このプラットフォームではLDAP URLをサポートしていません。"
 
-#: libpq/hba.c:2261
+#: libpq/hba.c:2239
 #, c-format
 msgid "invalid ldapscheme value: \"%s\""
 msgstr "不正な ldapscheme の値: \"%s\""
 
-#: libpq/hba.c:2279
+#: libpq/hba.c:2257
 #, c-format
 msgid "invalid LDAP port number: \"%s\""
 msgstr "不正なLDAPポート番号です: \"%s\""
 
 #
-#: libpq/hba.c:2325 libpq/hba.c:2332
+#: libpq/hba.c:2303 libpq/hba.c:2310
 msgid "gssapi and sspi"
 msgstr "gssapiおよびsspi"
 
-#: libpq/hba.c:2341 libpq/hba.c:2350
+#: libpq/hba.c:2319 libpq/hba.c:2328
 msgid "sspi"
 msgstr "sspi"
 
-#: libpq/hba.c:2372
+#: libpq/hba.c:2350
 #, c-format
 msgid "could not parse RADIUS server list \"%s\""
 msgstr "RADIUSサーバーのリスト\"%s\"のパースに失敗しました"
 
-#: libpq/hba.c:2420
+#: libpq/hba.c:2398
 #, c-format
 msgid "could not parse RADIUS port list \"%s\""
 msgstr "RADIUSポートのリスト\"%s\"のパースに失敗しました"
 
-#: libpq/hba.c:2434
+#: libpq/hba.c:2412
 #, c-format
 msgid "invalid RADIUS port number: \"%s\""
 msgstr "不正なRADIUSポート番号: \"%s\""
 
-#: libpq/hba.c:2456
+#: libpq/hba.c:2434
 #, c-format
 msgid "could not parse RADIUS secret list \"%s\""
 msgstr "RADIUSシークレットのリスト\"%s\"のパースに失敗しました"
 
-#: libpq/hba.c:2478
+#: libpq/hba.c:2456
 #, c-format
 msgid "could not parse RADIUS identifiers list \"%s\""
 msgstr "RADIUS識別子のリスト\"%s\"のパースに失敗しました"
 
-#: libpq/hba.c:2492
+#: libpq/hba.c:2470
 #, c-format
 msgid "unrecognized authentication option name: \"%s\""
 msgstr "認証オプション名を認識できません: \"%s\""
 
-#: libpq/hba.c:2684
+#: libpq/hba.c:2662
 #, c-format
 msgid "configuration file \"%s\" contains no entries"
 msgstr "設定ファイル\"%s\"には何も含まれていません"
 
-#: libpq/hba.c:2837
+#: libpq/hba.c:2815
 #, c-format
 msgid "regular expression match for \"%s\" failed: %s"
 msgstr "正規表現\"%s\"で照合に失敗しました: %s"
 
-#: libpq/hba.c:2861
+#: libpq/hba.c:2839
 #, c-format
 msgid "regular expression \"%s\" has no subexpressions as requested by backreference in \"%s\""
 msgstr "正規表現\"%s\"には\"%s\"における後方参照が要求する副表現が含まれていません"
 
-#: libpq/hba.c:2964
+#: libpq/hba.c:2942
 #, c-format
 msgid "provided user name (%s) and authenticated user name (%s) do not match"
 msgstr "与えられたユーザー名 (%s) と認証されたユーザー名 (%s) が一致しません"
 
-#: libpq/hba.c:2984
+#: libpq/hba.c:2962
 #, c-format
 msgid "no match in usermap \"%s\" for user \"%s\" authenticated as \"%s\""
 msgstr "\"%3$s\"として認証されたユーザー\"%2$s\"はユーザーマップ\"%1$s\"に一致しません"
@@ -15800,7 +15805,7 @@ msgid "%s cannot be applied to the nullable side of an outer join"
 msgstr "外部結合のNULL可な側では%sを適用できません"
 
 #. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: optimizer/plan/planner.c:1361 parser/analyze.c:1723 parser/analyze.c:1980 parser/analyze.c:3193
+#: optimizer/plan/planner.c:1361 parser/analyze.c:1761 parser/analyze.c:2018 parser/analyze.c:3231
 #, c-format
 msgid "%s is not allowed with UNION/INTERSECT/EXCEPT"
 msgstr "UNION/INTERSECT/EXCEPTでは%sを使用できません"
@@ -15886,216 +15891,216 @@ msgstr "ON CONFLICT DO UPDATEでの排除制約の使用はサポートされて
 msgid "there is no unique or exclusion constraint matching the ON CONFLICT specification"
 msgstr "ON CONFLICT 指定に合致するユニーク制約または排除制約がありません"
 
-#: parser/analyze.c:788 parser/analyze.c:1502
+#: parser/analyze.c:826 parser/analyze.c:1540
 #, c-format
 msgid "VALUES lists must all be the same length"
 msgstr "VALUESリストはすべて同じ長さでなければなりません"
 
-#: parser/analyze.c:990
+#: parser/analyze.c:1028
 #, c-format
 msgid "INSERT has more expressions than target columns"
 msgstr "INSERTに対象列よりも多くの式があります"
 
-#: parser/analyze.c:1008
+#: parser/analyze.c:1046
 #, c-format
 msgid "INSERT has more target columns than expressions"
 msgstr "INSERTに式よりも多くの対象列があります"
 
-#: parser/analyze.c:1012
+#: parser/analyze.c:1050
 #, c-format
 msgid "The insertion source is a row expression containing the same number of columns expected by the INSERT. Did you accidentally use extra parentheses?"
 msgstr "挿入ソースがINSERTが期待するのと同じ列数を含む行表現になっています。うっかり余計なカッコをつけたりしませんでしたか?"
 
-#: parser/analyze.c:1309 parser/analyze.c:1696
+#: parser/analyze.c:1347 parser/analyze.c:1734
 #, c-format
 msgid "SELECT ... INTO is not allowed here"
 msgstr "ここではSELECT ... INTOは許可されません"
 
 #. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:1625 parser/analyze.c:3425
+#: parser/analyze.c:1663 parser/analyze.c:3463
 #, c-format
 msgid "%s cannot be applied to VALUES"
 msgstr "%sをVALUESに使用できません"
 
-#: parser/analyze.c:1862
+#: parser/analyze.c:1900
 #, c-format
 msgid "invalid UNION/INTERSECT/EXCEPT ORDER BY clause"
 msgstr "不正なUNION/INTERSECT/EXCEPT ORDER BY句です"
 
-#: parser/analyze.c:1863
+#: parser/analyze.c:1901
 #, c-format
 msgid "Only result column names can be used, not expressions or functions."
 msgstr "式や関数ではなく、結果列の名前のみが使用できます。"
 
-#: parser/analyze.c:1864
+#: parser/analyze.c:1902
 #, c-format
 msgid "Add the expression/function to every SELECT, or move the UNION into a FROM clause."
 msgstr "式/関数をすべてのSELECTにつけてください。またはこのUNIONをFROM句に移動してください。"
 
-#: parser/analyze.c:1970
+#: parser/analyze.c:2008
 #, c-format
 msgid "INTO is only allowed on first SELECT of UNION/INTERSECT/EXCEPT"
 msgstr "INTOはUNION/INTERSECT/EXCEPTの最初のSELECTでのみ使用できます"
 
-#: parser/analyze.c:2042
+#: parser/analyze.c:2080
 #, c-format
 msgid "UNION/INTERSECT/EXCEPT member statement cannot refer to other relations of same query level"
 msgstr "UNION/INTERSECT/EXCEPTの要素となる文では同一問い合わせレベルの他のリレーションを参照できません"
 
-#: parser/analyze.c:2129
+#: parser/analyze.c:2167
 #, c-format
 msgid "each %s query must have the same number of columns"
 msgstr "すべての%s問い合わせは同じ列数を返す必要があります"
 
-#: parser/analyze.c:2535
+#: parser/analyze.c:2573
 #, c-format
 msgid "RETURNING must have at least one column"
 msgstr "RETURNINGには少なくとも1つの列が必要です"
 
-#: parser/analyze.c:2638
+#: parser/analyze.c:2676
 #, c-format
 msgid "assignment source returned %d column"
 msgid_plural "assignment source returned %d columns"
 msgstr[0] "代入元が%d個の列を返しました"
 
-#: parser/analyze.c:2699
+#: parser/analyze.c:2737
 #, c-format
 msgid "variable \"%s\" is of type %s but expression is of type %s"
 msgstr "変数\"%s\"は型%sですが、式は型%sでした"
 
 #. translator: %s is a SQL keyword
-#: parser/analyze.c:2824 parser/analyze.c:2832
+#: parser/analyze.c:2862 parser/analyze.c:2870
 #, c-format
 msgid "cannot specify both %s and %s"
 msgstr "%sと%sの両方を同時には指定できません"
 
-#: parser/analyze.c:2852
+#: parser/analyze.c:2890
 #, c-format
 msgid "DECLARE CURSOR must not contain data-modifying statements in WITH"
 msgstr "DECLARE CURSOR では WITH にデータを変更する文を含んではなりません"
 
 #. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:2860
+#: parser/analyze.c:2898
 #, c-format
 msgid "DECLARE CURSOR WITH HOLD ... %s is not supported"
 msgstr "DECLARE CURSOR WITH HOLD ... %sはサポートされていません"
 
-#: parser/analyze.c:2863
+#: parser/analyze.c:2901
 #, c-format
 msgid "Holdable cursors must be READ ONLY."
 msgstr "保持可能カーソルは読み取り専用である必要があります。"
 
 #. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:2871
+#: parser/analyze.c:2909
 #, c-format
 msgid "DECLARE SCROLL CURSOR ... %s is not supported"
 msgstr "DECLARE SCROLL CURSOR ... %sはサポートされていません"
 
 #. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:2882
+#: parser/analyze.c:2920
 #, c-format
 msgid "DECLARE INSENSITIVE CURSOR ... %s is not valid"
 msgstr "DECLARE INSENSITIVE CURSOR ... %sはが不正です"
 
-#: parser/analyze.c:2885
+#: parser/analyze.c:2923
 #, c-format
 msgid "Insensitive cursors must be READ ONLY."
 msgstr "INSENSITIVEカーソルは読み取り専用である必要があります。"
 
-#: parser/analyze.c:2979
+#: parser/analyze.c:3017
 #, c-format
 msgid "materialized views must not use data-modifying statements in WITH"
 msgstr "実体化ビューではWITH句にデータを変更する文を含んではなりません"
 
-#: parser/analyze.c:2989
+#: parser/analyze.c:3027
 #, c-format
 msgid "materialized views must not use temporary tables or views"
 msgstr "実体化ビューでは一時テーブルやビューを使用してはいけません"
 
-#: parser/analyze.c:2999
+#: parser/analyze.c:3037
 #, c-format
 msgid "materialized views may not be defined using bound parameters"
 msgstr "実体化ビューは境界パラメータを用いて定義してはなりません"
 
-#: parser/analyze.c:3011
+#: parser/analyze.c:3049
 #, c-format
 msgid "materialized views cannot be unlogged"
 msgstr "実体化ビューをログ非取得にはできません"
 
 #. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:3200
+#: parser/analyze.c:3238
 #, c-format
 msgid "%s is not allowed with DISTINCT clause"
 msgstr "DISTINCT句では%sを使用できません"
 
 #. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:3207
+#: parser/analyze.c:3245
 #, c-format
 msgid "%s is not allowed with GROUP BY clause"
 msgstr "GROUP BY句で%sを使用できません"
 
 #. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:3214
+#: parser/analyze.c:3252
 #, c-format
 msgid "%s is not allowed with HAVING clause"
 msgstr "HAVING 句では%sを使用できません"
 
 #. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:3221
+#: parser/analyze.c:3259
 #, c-format
 msgid "%s is not allowed with aggregate functions"
 msgstr "集約関数では%sは使用できません"
 
 #. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:3228
+#: parser/analyze.c:3266
 #, c-format
 msgid "%s is not allowed with window functions"
 msgstr "ウィンドウ関数では%sは使用できません"
 
 #. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:3235
+#: parser/analyze.c:3273
 #, c-format
 msgid "%s is not allowed with set-returning functions in the target list"
 msgstr "ターゲットリストの中では%sを集合返却関数と一緒に使うことはできません"
 
 #. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:3334
+#: parser/analyze.c:3372
 #, c-format
 msgid "%s must specify unqualified relation names"
 msgstr "%sでは非修飾のリレーション名を指定してください"
 
 #. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:3398
+#: parser/analyze.c:3436
 #, c-format
 msgid "%s cannot be applied to a join"
 msgstr "%sを結合に使用できません"
 
 #. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:3407
+#: parser/analyze.c:3445
 #, c-format
 msgid "%s cannot be applied to a function"
 msgstr "%sを関数に使用できません"
 
 #. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:3416
+#: parser/analyze.c:3454
 #, c-format
 msgid "%s cannot be applied to a table function"
 msgstr "%sはテーブル関数には適用できません"
 
 #. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:3434
+#: parser/analyze.c:3472
 #, c-format
 msgid "%s cannot be applied to a WITH query"
 msgstr "%sはWITH問い合わせには適用できません"
 
 #. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:3443
+#: parser/analyze.c:3481
 #, c-format
 msgid "%s cannot be applied to a named tuplestore"
 msgstr "%sは名前付きタプルストアには適用できません"
 
 #. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:3463
+#: parser/analyze.c:3501
 #, c-format
 msgid "relation \"%s\" in %s clause not found in FROM clause"
 msgstr "%2$s句のリレーション\"%1$s\"はFROM句にありません"
@@ -16698,7 +16703,7 @@ msgstr "offset PRECEDING/FOLLOWING を伴った RANGE は列型 %s とオフセ
 msgid "Cast the offset value to the exact intended type."
 msgstr "オフセット値を意図した型そのものにキャストしてください。"
 
-#: parser/parse_coerce.c:1050 parser/parse_coerce.c:1088 parser/parse_coerce.c:1106 parser/parse_coerce.c:1121 parser/parse_expr.c:2083 parser/parse_expr.c:2691 parser/parse_expr.c:3502 parser/parse_target.c:985
+#: parser/parse_coerce.c:1050 parser/parse_coerce.c:1088 parser/parse_coerce.c:1106 parser/parse_coerce.c:1121 parser/parse_expr.c:2083 parser/parse_expr.c:2691 parser/parse_expr.c:3497 parser/parse_target.c:985
 #, c-format
 msgid "cannot cast type %s to %s"
 msgstr "型%sから%sへの型変換ができません"
@@ -17160,7 +17165,7 @@ msgstr "副問い合わせは COPY FROM の WHERE 条件では使用できませ
 msgid "cannot use subquery in column generation expression"
 msgstr "副問い合わせはカラム生成式では使用できません"
 
-#: parser/parse_expr.c:1851 parser/parse_expr.c:3633
+#: parser/parse_expr.c:1851 parser/parse_expr.c:3628
 #, c-format
 msgid "subquery must return only one column"
 msgstr "副問い合わせは1列のみを返さなければなりません"
@@ -17260,52 +17265,52 @@ msgstr "IS DISTINCT FROMでは=演算子はbooleanを返さなければなりま
 msgid "JSON ENCODING clause is only allowed for bytea input type"
 msgstr "JSON ENCODING句は入力型がbyteaの場合にのみ使用可能です"
 
-#: parser/parse_expr.c:3246
-#, c-format
-msgid "FORMAT JSON has no effect for json and jsonb types"
-msgstr "FORMAT JSONはjsonおよびjsonb型に対しては効果がありません"
-
-#: parser/parse_expr.c:3266
+#: parser/parse_expr.c:3261
 #, c-format
 msgid "cannot use non-string types with implicit FORMAT JSON clause"
 msgstr "非文字列型は暗黙のFORMAT JSON句とともには使用できません"
 
-#: parser/parse_expr.c:3340
+#: parser/parse_expr.c:3262
+#, c-format
+msgid "cannot use non-string types with explicit FORMAT JSON clause"
+msgstr "非文字列型は明示的なFORMAT JSON句とともには使用できません"
+
+#: parser/parse_expr.c:3335
 #, c-format
 msgid "cannot use JSON format with non-string output types"
 msgstr "JSONフォーマットは非文字列出力型とともには使用できません"
 
-#: parser/parse_expr.c:3353
+#: parser/parse_expr.c:3348
 #, c-format
 msgid "cannot set JSON encoding for non-bytea output types"
 msgstr "bytrea以外の出力型に対してはJSON符号化方式は設定できません"
 
-#: parser/parse_expr.c:3358
+#: parser/parse_expr.c:3353
 #, c-format
 msgid "unsupported JSON encoding"
 msgstr "サポートされてないJSON符号化方式"
 
-#: parser/parse_expr.c:3359
+#: parser/parse_expr.c:3354
 #, c-format
 msgid "Only UTF8 JSON encoding is supported."
 msgstr "JSON符号化方式ではUTF8のみがサポートされています。"
 
-#: parser/parse_expr.c:3396
+#: parser/parse_expr.c:3391
 #, c-format
 msgid "returning SETOF types is not supported in SQL/JSON functions"
 msgstr "SQL/JSON関数ではSETOF型の返却はサポートされていません"
 
-#: parser/parse_expr.c:3717 parser/parse_func.c:865
+#: parser/parse_expr.c:3712 parser/parse_func.c:865
 #, c-format
 msgid "aggregate ORDER BY is not implemented for window functions"
 msgstr "ウィンドウ関数に対する集約の ORDER BY は実装されていません"
 
-#: parser/parse_expr.c:3939
+#: parser/parse_expr.c:3934
 #, c-format
 msgid "cannot use JSON FORMAT ENCODING clause for non-bytea input types"
 msgstr "bytrea以外の入力型に対しては JSON FORMAT ENCODING句は使用できません"
 
-#: parser/parse_expr.c:3959
+#: parser/parse_expr.c:3954
 #, c-format
 msgid "cannot use type %s in IS JSON predicate"
 msgstr "JSON述語では型%sを使用できません"
@@ -18841,93 +18846,93 @@ msgstr "%s: データトークンテーブルが不正です、修復してく
 msgid "could not create I/O completion port for child queue"
 msgstr "子キュー向けのI/O終了ポートを作成できませんでした"
 
-#: postmaster/postmaster.c:1164
+#: postmaster/postmaster.c:1175
 #, c-format
 msgid "ending log output to stderr"
 msgstr "標準エラー出力へのログ出力を終了しています"
 
-#: postmaster/postmaster.c:1165
+#: postmaster/postmaster.c:1176
 #, c-format
 msgid "Future log output will go to log destination \"%s\"."
 msgstr "この後のログ出力はログ配送先\"%s\"に出力されます。"
 
-#: postmaster/postmaster.c:1176
+#: postmaster/postmaster.c:1187
 #, c-format
 msgid "starting %s"
 msgstr "%s を起動しています"
 
-#: postmaster/postmaster.c:1236
+#: postmaster/postmaster.c:1239
 #, c-format
 msgid "could not create listen socket for \"%s\""
 msgstr "\"%s\"に関する監視用ソケットを作成できませんでした"
 
-#: postmaster/postmaster.c:1242
+#: postmaster/postmaster.c:1245
 #, c-format
 msgid "could not create any TCP/IP sockets"
 msgstr "TCP/IPソケットを作成できませんでした"
 
-#: postmaster/postmaster.c:1274
+#: postmaster/postmaster.c:1277
 #, c-format
 msgid "DNSServiceRegister() failed: error code %ld"
 msgstr "DNSServiceRegister()が失敗しました: エラーコード %ld"
 
-#: postmaster/postmaster.c:1325
+#: postmaster/postmaster.c:1328
 #, c-format
 msgid "could not create Unix-domain socket in directory \"%s\""
 msgstr "ディレクトリ\"%s\"においてUnixドメインソケットを作成できませんでした"
 
-#: postmaster/postmaster.c:1331
+#: postmaster/postmaster.c:1334
 #, c-format
 msgid "could not create any Unix-domain sockets"
 msgstr "Unixドメインソケットを作成できませんでした"
 
-#: postmaster/postmaster.c:1342
+#: postmaster/postmaster.c:1345
 #, c-format
 msgid "no socket created for listening"
 msgstr "監視用に作成するソケットはありません"
 
-#: postmaster/postmaster.c:1373
+#: postmaster/postmaster.c:1376
 #, c-format
 msgid "%s: could not change permissions of external PID file \"%s\": %s\n"
 msgstr "%s: 外部PIDファイル\"%s\"の権限を変更できませんでした: %s\n"
 
-#: postmaster/postmaster.c:1377
+#: postmaster/postmaster.c:1380
 #, c-format
 msgid "%s: could not write external PID file \"%s\": %s\n"
 msgstr "%s: 外部PIDファイル\"%s\"に書き出せませんでした: %s\n"
 
 #. translator: %s is a configuration file
-#: postmaster/postmaster.c:1405 utils/init/postinit.c:221
+#: postmaster/postmaster.c:1408 utils/init/postinit.c:221
 #, c-format
 msgid "could not load %s"
 msgstr "%s\"をロードできませんでした"
 
-#: postmaster/postmaster.c:1431
+#: postmaster/postmaster.c:1434
 #, c-format
 msgid "postmaster became multithreaded during startup"
 msgstr "postmasterは起動値処理中はマルチスレッドで動作します"
 
-#: postmaster/postmaster.c:1432
+#: postmaster/postmaster.c:1435
 #, c-format
 msgid "Set the LC_ALL environment variable to a valid locale."
 msgstr "LC_ALL環境変数を使用可能なロケールに設定してください。"
 
-#: postmaster/postmaster.c:1533
+#: postmaster/postmaster.c:1536
 #, c-format
 msgid "%s: could not locate my own executable path"
 msgstr "%s: 自身の実行ファイルのパスが特定できません"
 
-#: postmaster/postmaster.c:1540
+#: postmaster/postmaster.c:1543
 #, c-format
 msgid "%s: could not locate matching postgres executable"
 msgstr "%s: 一致するpostgres実行ファイルがありませんでした"
 
-#: postmaster/postmaster.c:1563 utils/misc/tzparser.c:340
+#: postmaster/postmaster.c:1566 utils/misc/tzparser.c:340
 #, c-format
 msgid "This may indicate an incomplete PostgreSQL installation, or that the file \"%s\" has been moved away from its proper location."
 msgstr "これは、PostgreSQLのインストールが不完全であるかまたは、ファイル\"%s\"が本来の場所からなくなってしまったことを示しています。"
 
-#: postmaster/postmaster.c:1590
+#: postmaster/postmaster.c:1593
 #, c-format
 msgid ""
 "%s: could not find the database system\n"
@@ -18939,456 +18944,456 @@ msgstr ""
 "ファイル\"%s\"をオープンできませんでした: %s\n"
 
 #. translator: %s is SIGKILL or SIGABRT
-#: postmaster/postmaster.c:1887
+#: postmaster/postmaster.c:1890
 #, c-format
 msgid "issuing %s to recalcitrant children"
 msgstr "手に負えない子プロセスに%sを送出します"
 
-#: postmaster/postmaster.c:1909
+#: postmaster/postmaster.c:1912
 #, c-format
 msgid "performing immediate shutdown because data directory lock file is invalid"
 msgstr "データディレクトリのロックファイルが不正なため、即時シャットダウンを実行中です"
 
-#: postmaster/postmaster.c:1984 postmaster/postmaster.c:2012
+#: postmaster/postmaster.c:1987 postmaster/postmaster.c:2015
 #, c-format
 msgid "incomplete startup packet"
 msgstr "開始パケットが不完全です"
 
-#: postmaster/postmaster.c:1996 postmaster/postmaster.c:2029
+#: postmaster/postmaster.c:1999 postmaster/postmaster.c:2032
 #, c-format
 msgid "invalid length of startup packet"
 msgstr "不正な開始パケット長"
 
-#: postmaster/postmaster.c:2058
+#: postmaster/postmaster.c:2061
 #, c-format
 msgid "failed to send SSL negotiation response: %m"
 msgstr "SSLネゴシエーション応答の送信に失敗しました: %m"
 
-#: postmaster/postmaster.c:2076
+#: postmaster/postmaster.c:2079
 #, c-format
 msgid "received unencrypted data after SSL request"
 msgstr "SSL要求の後に非暗号化データを受信しました"
 
-#: postmaster/postmaster.c:2077 postmaster/postmaster.c:2121
+#: postmaster/postmaster.c:2080 postmaster/postmaster.c:2124
 #, c-format
 msgid "This could be either a client-software bug or evidence of an attempted man-in-the-middle attack."
 msgstr "これはクライアントソフトウェアのバグであるか、man-in-the-middle攻撃の証左である可能性があります。"
 
-#: postmaster/postmaster.c:2102
+#: postmaster/postmaster.c:2105
 #, c-format
 msgid "failed to send GSSAPI negotiation response: %m"
 msgstr "GSSAPIネゴシエーション応答の送信に失敗しました: %m"
 
-#: postmaster/postmaster.c:2120
+#: postmaster/postmaster.c:2123
 #, c-format
 msgid "received unencrypted data after GSSAPI encryption request"
 msgstr "GSSAPI暗号化リクエストの後に非暗号化データを受信"
 
-#: postmaster/postmaster.c:2144
+#: postmaster/postmaster.c:2147
 #, c-format
 msgid "unsupported frontend protocol %u.%u: server supports %u.0 to %u.%u"
 msgstr "フロントエンドプロトコル%u.%uをサポートしていません: サーバーは%u.0から %u.%uまでをサポートします"
 
-#: postmaster/postmaster.c:2211
+#: postmaster/postmaster.c:2214
 #, c-format
 msgid "Valid values are: \"false\", 0, \"true\", 1, \"database\"."
 msgstr "有効な値: \"false\", 0, \"true\", 1, \"database\"。"
 
-#: postmaster/postmaster.c:2252
+#: postmaster/postmaster.c:2255
 #, c-format
 msgid "invalid startup packet layout: expected terminator as last byte"
 msgstr "開始パケットの配置が不正です: 最終バイトはターミネータであるはずです"
 
-#: postmaster/postmaster.c:2269
+#: postmaster/postmaster.c:2272
 #, c-format
 msgid "no PostgreSQL user name specified in startup packet"
 msgstr "開始パケットで指定されたPostgreSQLユーザー名は存在しません"
 
-#: postmaster/postmaster.c:2333
+#: postmaster/postmaster.c:2336
 #, c-format
 msgid "the database system is starting up"
 msgstr "データベースシステムは起動処理中です"
 
-#: postmaster/postmaster.c:2339
+#: postmaster/postmaster.c:2342
 #, c-format
 msgid "the database system is not yet accepting connections"
 msgstr "データベースシステムはまだ接続を受け付けていません"
 
-#: postmaster/postmaster.c:2340
+#: postmaster/postmaster.c:2343
 #, c-format
 msgid "Consistent recovery state has not been yet reached."
 msgstr "リカバリの一貫性はまだ確保されていません。"
 
-#: postmaster/postmaster.c:2344
+#: postmaster/postmaster.c:2347
 #, c-format
 msgid "the database system is not accepting connections"
 msgstr "データベースシステムは接続を受け付けていません"
 
-#: postmaster/postmaster.c:2345
+#: postmaster/postmaster.c:2348
 #, c-format
 msgid "Hot standby mode is disabled."
 msgstr "ホットスタンバイモードは無効です。"
 
-#: postmaster/postmaster.c:2350
+#: postmaster/postmaster.c:2353
 #, c-format
 msgid "the database system is shutting down"
 msgstr "データベースシステムはシャットダウンしています"
 
-#: postmaster/postmaster.c:2355
+#: postmaster/postmaster.c:2358
 #, c-format
 msgid "the database system is in recovery mode"
 msgstr "データベースシステムはリカバリモードです"
 
-#: postmaster/postmaster.c:2360 storage/ipc/procarray.c:491 storage/ipc/sinvaladt.c:306 storage/lmgr/proc.c:353
+#: postmaster/postmaster.c:2363 storage/ipc/procarray.c:491 storage/ipc/sinvaladt.c:306 storage/lmgr/proc.c:353
 #, c-format
 msgid "sorry, too many clients already"
 msgstr "現在クライアント数が多すぎます"
 
-#: postmaster/postmaster.c:2447
+#: postmaster/postmaster.c:2450
 #, c-format
 msgid "wrong key in cancel request for process %d"
 msgstr "プロセス%dに対するキャンセル要求においてキーが間違っています"
 
-#: postmaster/postmaster.c:2459
+#: postmaster/postmaster.c:2462
 #, c-format
 msgid "PID %d in cancel request did not match any process"
 msgstr "キャンセル要求内のPID %dがどのプロセスにも一致しません"
 
-#: postmaster/postmaster.c:2726
+#: postmaster/postmaster.c:2729
 #, c-format
 msgid "received SIGHUP, reloading configuration files"
 msgstr "SIGHUPを受け取りました。設定ファイルをリロードしています"
 
 #. translator: %s is a configuration file
-#: postmaster/postmaster.c:2750 postmaster/postmaster.c:2754
+#: postmaster/postmaster.c:2753 postmaster/postmaster.c:2757
 #, c-format
 msgid "%s was not reloaded"
 msgstr "%s は再読み込みされていません"
 
-#: postmaster/postmaster.c:2764
+#: postmaster/postmaster.c:2767
 #, c-format
 msgid "SSL configuration was not reloaded"
 msgstr "SSL設定は再読み込みされていません"
 
-#: postmaster/postmaster.c:2854
+#: postmaster/postmaster.c:2857
 #, c-format
 msgid "received smart shutdown request"
 msgstr "スマートシャットダウン要求を受け取りました"
 
-#: postmaster/postmaster.c:2895
+#: postmaster/postmaster.c:2898
 #, c-format
 msgid "received fast shutdown request"
 msgstr "高速シャットダウン要求を受け取りました"
 
-#: postmaster/postmaster.c:2913
+#: postmaster/postmaster.c:2916
 #, c-format
 msgid "aborting any active transactions"
 msgstr "活動中の全トランザクションをアボートしています"
 
-#: postmaster/postmaster.c:2937
+#: postmaster/postmaster.c:2940
 #, c-format
 msgid "received immediate shutdown request"
 msgstr "即時シャットダウン要求を受け取りました"
 
-#: postmaster/postmaster.c:3013
+#: postmaster/postmaster.c:3016
 #, c-format
 msgid "shutdown at recovery target"
 msgstr "リカバリ目標でシャットダウンします"
 
-#: postmaster/postmaster.c:3031 postmaster/postmaster.c:3067
+#: postmaster/postmaster.c:3034 postmaster/postmaster.c:3070
 msgid "startup process"
 msgstr "起動プロセス"
 
-#: postmaster/postmaster.c:3034
+#: postmaster/postmaster.c:3037
 #, c-format
 msgid "aborting startup due to startup process failure"
 msgstr "起動プロセスの失敗のため起動を中断しています"
 
-#: postmaster/postmaster.c:3107
+#: postmaster/postmaster.c:3110
 #, c-format
 msgid "database system is ready to accept connections"
 msgstr "データベースシステムの接続受け付け準備が整いました"
 
-#: postmaster/postmaster.c:3128
+#: postmaster/postmaster.c:3131
 msgid "background writer process"
 msgstr "バックグランドライタプロセス"
 
-#: postmaster/postmaster.c:3175
+#: postmaster/postmaster.c:3178
 msgid "checkpointer process"
 msgstr "チェックポイント処理プロセス"
 
-#: postmaster/postmaster.c:3191
+#: postmaster/postmaster.c:3194
 msgid "WAL writer process"
 msgstr "WALライタプロセス"
 
-#: postmaster/postmaster.c:3206
+#: postmaster/postmaster.c:3209
 msgid "WAL receiver process"
 msgstr "WAL 受信プロセス"
 
-#: postmaster/postmaster.c:3221
+#: postmaster/postmaster.c:3224
 msgid "autovacuum launcher process"
 msgstr "自動VACUUM起動プロセス"
 
-#: postmaster/postmaster.c:3239
+#: postmaster/postmaster.c:3242
 msgid "archiver process"
 msgstr "アーカイバプロセス"
 
-#: postmaster/postmaster.c:3252
+#: postmaster/postmaster.c:3255
 msgid "system logger process"
 msgstr "システムログ取得プロセス"
 
-#: postmaster/postmaster.c:3309
+#: postmaster/postmaster.c:3312
 #, c-format
 msgid "background worker \"%s\""
 msgstr "バックグラウンドワーカー\"%s\""
 
-#: postmaster/postmaster.c:3388 postmaster/postmaster.c:3408 postmaster/postmaster.c:3415 postmaster/postmaster.c:3433
+#: postmaster/postmaster.c:3391 postmaster/postmaster.c:3411 postmaster/postmaster.c:3418 postmaster/postmaster.c:3436
 msgid "server process"
 msgstr "サーバープロセス"
 
-#: postmaster/postmaster.c:3487
+#: postmaster/postmaster.c:3490
 #, c-format
 msgid "terminating any other active server processes"
 msgstr "他の活動中のサーバープロセスを終了しています"
 
 #. translator: %s is a noun phrase describing a child process, such as
 #. "server process"
-#: postmaster/postmaster.c:3662
+#: postmaster/postmaster.c:3665
 #, c-format
 msgid "%s (PID %d) exited with exit code %d"
 msgstr "%s (PID %d)は終了コード%dで終了しました"
 
-#: postmaster/postmaster.c:3664 postmaster/postmaster.c:3676 postmaster/postmaster.c:3686 postmaster/postmaster.c:3697
+#: postmaster/postmaster.c:3667 postmaster/postmaster.c:3679 postmaster/postmaster.c:3689 postmaster/postmaster.c:3700
 #, c-format
 msgid "Failed process was running: %s"
 msgstr "失敗したプロセスが実行していました: %s"
 
 #. translator: %s is a noun phrase describing a child process, such as
 #. "server process"
-#: postmaster/postmaster.c:3673
+#: postmaster/postmaster.c:3676
 #, c-format
 msgid "%s (PID %d) was terminated by exception 0x%X"
 msgstr "%s (PID %d)は例外%Xで終了しました"
 
 #. translator: %s is a noun phrase describing a child process, such as
 #. "server process"
-#: postmaster/postmaster.c:3683
+#: postmaster/postmaster.c:3686
 #, c-format
 msgid "%s (PID %d) was terminated by signal %d: %s"
 msgstr "%s (PID %d)はシグナル%dで終了しました: %s"
 
 #. translator: %s is a noun phrase describing a child process, such as
 #. "server process"
-#: postmaster/postmaster.c:3695
+#: postmaster/postmaster.c:3698
 #, c-format
 msgid "%s (PID %d) exited with unrecognized status %d"
 msgstr "%s (PID %d)は認識できないステータス%dで終了しました"
 
-#: postmaster/postmaster.c:3903
+#: postmaster/postmaster.c:3906
 #, c-format
 msgid "abnormal database system shutdown"
 msgstr "データベースシステムは異常にシャットダウンしました"
 
-#: postmaster/postmaster.c:3929
+#: postmaster/postmaster.c:3932
 #, c-format
 msgid "shutting down due to startup process failure"
 msgstr "起動プロセスの失敗のためシャットダウンしています"
 
-#: postmaster/postmaster.c:3935
+#: postmaster/postmaster.c:3938
 #, c-format
 msgid "shutting down because restart_after_crash is off"
 msgstr "restart_after_crashがoffであるためシャットダウンします"
 
-#: postmaster/postmaster.c:3947
+#: postmaster/postmaster.c:3950
 #, c-format
 msgid "all server processes terminated; reinitializing"
 msgstr "全てのサーバープロセスが終了しました: 再初期化しています"
 
-#: postmaster/postmaster.c:4141 postmaster/postmaster.c:5459 postmaster/postmaster.c:5857
+#: postmaster/postmaster.c:4144 postmaster/postmaster.c:5462 postmaster/postmaster.c:5860
 #, c-format
 msgid "could not generate random cancel key"
 msgstr "ランダムなキャンセルキーを生成できませんでした"
 
-#: postmaster/postmaster.c:4203
+#: postmaster/postmaster.c:4206
 #, c-format
 msgid "could not fork new process for connection: %m"
 msgstr "接続用の新しいプロセスをforkできませんでした: %m"
 
-#: postmaster/postmaster.c:4245
+#: postmaster/postmaster.c:4248
 msgid "could not fork new process for connection: "
 msgstr "接続用の新しいプロセスをforkできませんでした"
 
-#: postmaster/postmaster.c:4351
+#: postmaster/postmaster.c:4354
 #, c-format
 msgid "connection received: host=%s port=%s"
 msgstr "接続を受け付けました: ホスト=%s ポート番号=%s"
 
-#: postmaster/postmaster.c:4356
+#: postmaster/postmaster.c:4359
 #, c-format
 msgid "connection received: host=%s"
 msgstr "接続を受け付けました: ホスト=%s"
 
-#: postmaster/postmaster.c:4593
+#: postmaster/postmaster.c:4596
 #, c-format
 msgid "could not execute server process \"%s\": %m"
 msgstr "サーバープロセス\"%s\"を実行できませんでした: %m"
 
-#: postmaster/postmaster.c:4651
+#: postmaster/postmaster.c:4654
 #, c-format
 msgid "could not create backend parameter file mapping: error code %lu"
 msgstr "バックエンドパラメータファイルのファイルマッピングを作成できませんでした: エラーコード%lu"
 
-#: postmaster/postmaster.c:4660
+#: postmaster/postmaster.c:4663
 #, c-format
 msgid "could not map backend parameter memory: error code %lu"
 msgstr "バックエンドパラメータのメモリをマップできませんでした: エラーコード %lu"
 
-#: postmaster/postmaster.c:4687
+#: postmaster/postmaster.c:4690
 #, c-format
 msgid "subprocess command line too long"
 msgstr "サブプロセスのコマンドラインが長すぎます"
 
-#: postmaster/postmaster.c:4705
+#: postmaster/postmaster.c:4708
 #, c-format
 msgid "CreateProcess() call failed: %m (error code %lu)"
 msgstr "CreateProcess() の呼び出しが失敗しました: %m (エラーコード %lu)"
 
-#: postmaster/postmaster.c:4732
+#: postmaster/postmaster.c:4735
 #, c-format
 msgid "could not unmap view of backend parameter file: error code %lu"
 msgstr "バックエンドパラメータファイルのビューをアンマップできませんでした: エラーコード %lu"
 
-#: postmaster/postmaster.c:4736
+#: postmaster/postmaster.c:4739
 #, c-format
 msgid "could not close handle to backend parameter file: error code %lu"
 msgstr "バックエンドパラメータファイルのハンドルをクローズできませんでした: エラーコード%lu"
 
-#: postmaster/postmaster.c:4758
+#: postmaster/postmaster.c:4761
 #, c-format
 msgid "giving up after too many tries to reserve shared memory"
 msgstr "共有メモリの確保のリトライ回数が多すぎるため中断します"
 
-#: postmaster/postmaster.c:4759
+#: postmaster/postmaster.c:4762
 #, c-format
 msgid "This might be caused by ASLR or antivirus software."
 msgstr "これはASLRまたはアンチウイルスソフトウェアが原因である可能性があります。"
 
-#: postmaster/postmaster.c:4932
+#: postmaster/postmaster.c:4935
 #, c-format
 msgid "SSL configuration could not be loaded in child process"
 msgstr "SSL構成は子プロセスでは読み込めません"
 
-#: postmaster/postmaster.c:5057
+#: postmaster/postmaster.c:5060
 #, c-format
 msgid "Please report this to <%s>."
 msgstr "これを<%s>まで報告してください。"
 
-#: postmaster/postmaster.c:5125
+#: postmaster/postmaster.c:5128
 #, c-format
 msgid "database system is ready to accept read-only connections"
 msgstr "データベースシステムはリードオンリー接続の受け付け準備ができました"
 
-#: postmaster/postmaster.c:5383
+#: postmaster/postmaster.c:5386
 #, c-format
 msgid "could not fork startup process: %m"
 msgstr "起動プロセスをforkできませんでした: %m"
 
-#: postmaster/postmaster.c:5387
+#: postmaster/postmaster.c:5390
 #, c-format
 msgid "could not fork archiver process: %m"
 msgstr "アーカイバプロセスをforkできませんでした: %m"
 
-#: postmaster/postmaster.c:5391
+#: postmaster/postmaster.c:5394
 #, c-format
 msgid "could not fork background writer process: %m"
 msgstr "バックグランドライタプロセスをforkできませんでした: %m"
 
-#: postmaster/postmaster.c:5395
+#: postmaster/postmaster.c:5398
 #, c-format
 msgid "could not fork checkpointer process: %m"
 msgstr "チェックポイント処理プロセスをforkできませんでした: %m"
 
-#: postmaster/postmaster.c:5399
+#: postmaster/postmaster.c:5402
 #, c-format
 msgid "could not fork WAL writer process: %m"
 msgstr "WALライタプロセスをforkできませんでした: %m"
 
-#: postmaster/postmaster.c:5403
+#: postmaster/postmaster.c:5406
 #, c-format
 msgid "could not fork WAL receiver process: %m"
 msgstr "WAL 受信プロセスを fork できませんでした: %m"
 
-#: postmaster/postmaster.c:5407
+#: postmaster/postmaster.c:5410
 #, c-format
 msgid "could not fork process: %m"
 msgstr "プロセスをforkできませんでした: %m"
 
-#: postmaster/postmaster.c:5608 postmaster/postmaster.c:5635
+#: postmaster/postmaster.c:5611 postmaster/postmaster.c:5638
 #, c-format
 msgid "database connection requirement not indicated during registration"
 msgstr "登録時にデータベース接続の必要性が示されていません"
 
-#: postmaster/postmaster.c:5619 postmaster/postmaster.c:5646
+#: postmaster/postmaster.c:5622 postmaster/postmaster.c:5649
 #, c-format
 msgid "invalid processing mode in background worker"
 msgstr "バックグラウンドワーカー内の不正な処理モード"
 
-#: postmaster/postmaster.c:5731
+#: postmaster/postmaster.c:5734
 #, c-format
 msgid "could not fork worker process: %m"
 msgstr "ワーカープロセスをforkできませんでした: %m"
 
-#: postmaster/postmaster.c:5843
+#: postmaster/postmaster.c:5846
 #, c-format
 msgid "no slot available for new worker process"
 msgstr "新しいワーカープロセスに割り当て可能なスロットがありません"
 
-#: postmaster/postmaster.c:6174
+#: postmaster/postmaster.c:6177
 #, c-format
 msgid "could not duplicate socket %d for use in backend: error code %d"
 msgstr "バックエンドで使用するためにソケット%dを複製できませんでした: エラーコード %d"
 
-#: postmaster/postmaster.c:6206
+#: postmaster/postmaster.c:6209
 #, c-format
 msgid "could not create inherited socket: error code %d\n"
 msgstr "継承したソケットを作成できませんでした: エラーコード %d\n"
 
-#: postmaster/postmaster.c:6235
+#: postmaster/postmaster.c:6238
 #, c-format
 msgid "could not open backend variables file \"%s\": %s\n"
 msgstr "バックエンド変数ファイル\"%s\"をオープンできませんでした: %s\n"
 
-#: postmaster/postmaster.c:6242
+#: postmaster/postmaster.c:6245
 #, c-format
 msgid "could not read from backend variables file \"%s\": %s\n"
 msgstr "バックエンド変数ファイル\"%s\"から読み取れませんでした: %s\n"
 
-#: postmaster/postmaster.c:6251
+#: postmaster/postmaster.c:6254
 #, c-format
 msgid "could not remove file \"%s\": %s\n"
 msgstr "ファイル\"%s\"を削除できませんでした: %s\n"
 
-#: postmaster/postmaster.c:6268
+#: postmaster/postmaster.c:6271
 #, c-format
 msgid "could not map view of backend variables: error code %lu\n"
 msgstr "バックエンド変数のビューをマップできませんでした: エラーコード %lu\n"
 
-#: postmaster/postmaster.c:6277
+#: postmaster/postmaster.c:6280
 #, c-format
 msgid "could not unmap view of backend variables: error code %lu\n"
 msgstr "バックエンド変数のビューをアンマップできませんでした: エラーコード %lu\n"
 
-#: postmaster/postmaster.c:6284
+#: postmaster/postmaster.c:6287
 #, c-format
 msgid "could not close handle to backend parameter variables: error code %lu\n"
 msgstr "バックエンドパラメータ変数のハンドルをクローズできませんでした: エラーコード%lu\n"
 
-#: postmaster/postmaster.c:6443
+#: postmaster/postmaster.c:6446
 #, c-format
 msgid "could not read exit code for process\n"
 msgstr "子プロセスの終了コードの読み込みができませんでした\n"
 
-#: postmaster/postmaster.c:6485
+#: postmaster/postmaster.c:6488
 #, c-format
 msgid "could not post child completion status\n"
 msgstr "個プロセスの終了コードを投稿できませんでした\n"
@@ -19639,7 +19644,7 @@ msgstr "max_replication_slots = 0 の時は論理レプリケーションワー
 msgid "out of logical replication worker slots"
 msgstr "論理レプリケーションワーカースロットは全て使用中です"
 
-#: replication/logical/launcher.c:425 replication/logical/launcher.c:499 replication/slot.c:1290 storage/lmgr/lock.c:964 storage/lmgr/lock.c:1002 storage/lmgr/lock.c:2787 storage/lmgr/lock.c:4172 storage/lmgr/lock.c:4237 storage/lmgr/lock.c:4587 storage/lmgr/predicate.c:2413 storage/lmgr/predicate.c:2428 storage/lmgr/predicate.c:3825
+#: replication/logical/launcher.c:425 replication/logical/launcher.c:499 replication/slot.c:1297 storage/lmgr/lock.c:964 storage/lmgr/lock.c:1002 storage/lmgr/lock.c:2787 storage/lmgr/lock.c:4172 storage/lmgr/lock.c:4237 storage/lmgr/lock.c:4587 storage/lmgr/predicate.c:2413 storage/lmgr/predicate.c:2428 storage/lmgr/predicate.c:3825
 #, c-format
 msgid "You might need to increase %s."
 msgstr "%sを大きくする必要があるかもしれません。"
@@ -19824,7 +19829,7 @@ msgstr "ID%dのレプリケーション基点は既にPID%dで使用中です"
 msgid "could not find free replication state slot for replication origin with ID %d"
 msgstr "ID%dのレプリケーション基点に対するレプリケーション状態スロットの空きがありません"
 
-#: replication/logical/origin.c:957 replication/logical/origin.c:1155 replication/slot.c:2086
+#: replication/logical/origin.c:957 replication/logical/origin.c:1155 replication/slot.c:2093
 #, c-format
 msgid "Increase max_replication_slots and try again."
 msgstr "max_replication_slotsを増やして再度試してください"
@@ -20011,7 +20016,7 @@ msgstr "テーブルコピー中に発行サーバー上でのトランザクシ
 msgid "replication origin \"%s\" already exists"
 msgstr "レプリケーション基点\"%s\"はすでに存在します"
 
-#: replication/logical/tablesync.c:1468 replication/logical/worker.c:2373
+#: replication/logical/tablesync.c:1468 replication/logical/worker.c:2374
 #, c-format
 msgid "user \"%s\" cannot replicate into relation with row-level security enabled: \"%s\""
 msgstr "ユーザー\"%s\"は行レベルセキュリティが有効なリレーションへのレプリケーションはできません: \"%s\""
@@ -20021,147 +20026,147 @@ msgstr "ユーザー\"%s\"は行レベルセキュリティが有効なリレー
 msgid "table copy could not finish transaction on publisher: %s"
 msgstr "テーブルコピー中に発行サーバー上でのトランザクション終了に失敗しました: %s"
 
-#: replication/logical/worker.c:498
+#: replication/logical/worker.c:499
 #, c-format
 msgid "logical replication parallel apply worker for subscription \"%s\" will stop"
 msgstr "サブスクリプション\"%s\"に対応する論理レプリケーション並列適用ワーカーが停止します"
 
-#: replication/logical/worker.c:500
+#: replication/logical/worker.c:501
 #, c-format
 msgid "Cannot handle streamed replication transactions using parallel apply workers until all tables have been synchronized."
 msgstr "すべてのテーブルの同期が完了するまでは、ストリームされたトランザクションを適用ワーカーで扱うことはできません。"
 
-#: replication/logical/worker.c:862 replication/logical/worker.c:977
+#: replication/logical/worker.c:863 replication/logical/worker.c:978
 #, c-format
 msgid "incorrect binary data format in logical replication column %d"
 msgstr "論理レプリケーション列%dのバイナリデータ書式が不正です"
 
-#: replication/logical/worker.c:2512
+#: replication/logical/worker.c:2513
 #, c-format
 msgid "publisher did not send replica identity column expected by the logical replication target relation \"%s.%s\""
 msgstr "論理レプリケーション先のリレーション\"%s.%s\"は複製の識別列を期待していましたが、発行サーバーは送信しませんでした"
 
-#: replication/logical/worker.c:2519
+#: replication/logical/worker.c:2520
 #, c-format
 msgid "logical replication target relation \"%s.%s\" has neither REPLICA IDENTITY index nor PRIMARY KEY and published relation does not have REPLICA IDENTITY FULL"
 msgstr "論理レプリケーション先のリレーション\"%s.%s\"が識別列インデックスも主キーをもっておらず、かつ発行されたリレーションがREPLICA IDENTITY FULLとなっていません"
 
-#: replication/logical/worker.c:3370
+#: replication/logical/worker.c:3384
 #, c-format
 msgid "invalid logical replication message type \"??? (%d)\""
 msgstr "不正な論理レプリケーションのメッセージタイプ \"??? (%d)\""
 
-#: replication/logical/worker.c:3542
+#: replication/logical/worker.c:3556
 #, c-format
 msgid "data stream from publisher has ended"
 msgstr "発行サーバーからのデータストリームが終了しました"
 
-#: replication/logical/worker.c:3699
+#: replication/logical/worker.c:3713
 #, c-format
 msgid "terminating logical replication worker due to timeout"
 msgstr "タイムアウトにより論理レプリケーションワーカーを終了しています"
 
-#: replication/logical/worker.c:3893
+#: replication/logical/worker.c:3907
 #, c-format
 msgid "logical replication worker for subscription \"%s\" will stop because the subscription was removed"
 msgstr "サブスクリプション\"%s\"が削除されたため、このサブスクリプションに対応する論理レプリケーションワーカーが停止します"
 
-#: replication/logical/worker.c:3906
+#: replication/logical/worker.c:3920
 #, c-format
 msgid "logical replication worker for subscription \"%s\" will stop because the subscription was disabled"
 msgstr "サブスクリプション\"%s\"が無効化されたため、このサブスクリプションに対応する論理レプリケーションワーカーが停止します"
 
-#: replication/logical/worker.c:3937
+#: replication/logical/worker.c:3951
 #, c-format
 msgid "logical replication parallel apply worker for subscription \"%s\" will stop because of a parameter change"
 msgstr "パラメータの変更があったため、サブスクリプション\"%s\"に対応する論理レプリケーション並列適用ワーカーが停止します"
 
-#: replication/logical/worker.c:3941
+#: replication/logical/worker.c:3955
 #, c-format
 msgid "logical replication worker for subscription \"%s\" will restart because of a parameter change"
 msgstr "パラメータの変更があったため、サブスクリプション\"%s\"に対応する論理レプリケーションワーカーが再起動します"
 
-#: replication/logical/worker.c:4464
+#: replication/logical/worker.c:4478
 #, c-format
 msgid "logical replication worker for subscription %u will not start because the subscription was removed during startup"
 msgstr "サブスクリプション%uが起動中に削除されたため、このサブスクリプションに対応する論理レプリケーションワーカーは起動しません"
 
-#: replication/logical/worker.c:4479
+#: replication/logical/worker.c:4493
 #, c-format
 msgid "logical replication worker for subscription \"%s\" will not start because the subscription was disabled during startup"
 msgstr "サブスクリプション\"%s\"が起動中に無効化されたため、このサブスクリプションに対応する論理レプリケーションワーカーは起動しません"
 
-#: replication/logical/worker.c:4496
+#: replication/logical/worker.c:4510
 #, c-format
 msgid "logical replication table synchronization worker for subscription \"%s\", table \"%s\" has started"
 msgstr "サブスクリプション\"%s\"、テーブル\"%s\"に対応する論理レプリケーションテーブル同期ワーカーが起動しました"
 
-#: replication/logical/worker.c:4501
+#: replication/logical/worker.c:4515
 #, c-format
 msgid "logical replication apply worker for subscription \"%s\" has started"
 msgstr "サブスクリプション\"%s\"に対応する論理レプリケーション適用ワーカーが起動しました"
 
-#: replication/logical/worker.c:4576
+#: replication/logical/worker.c:4590
 #, c-format
 msgid "subscription has no replication slot set"
 msgstr "サブスクリプションにレプリケーションスロットが設定されていません"
 
-#: replication/logical/worker.c:4743
+#: replication/logical/worker.c:4757
 #, c-format
 msgid "subscription \"%s\" has been disabled because of an error"
 msgstr "サブスクリプション\"%s\"はエラーのため無効化されました"
 
-#: replication/logical/worker.c:4791
+#: replication/logical/worker.c:4805
 #, c-format
 msgid "logical replication starts skipping transaction at LSN %X/%X"
 msgstr "論理レプリケーションは%X/%Xででトランザクションのスキップを開始します"
 
-#: replication/logical/worker.c:4805
+#: replication/logical/worker.c:4819
 #, c-format
 msgid "logical replication completed skipping transaction at LSN %X/%X"
 msgstr "論理レプリケーションは%X/%Xでトランザクションのスキップを完了しました"
 
-#: replication/logical/worker.c:4887
+#: replication/logical/worker.c:4901
 #, c-format
 msgid "skip-LSN of subscription \"%s\" cleared"
 msgstr "サブスクリプションの\"%s\"スキップLSNをクリアしました"
 
-#: replication/logical/worker.c:4888
+#: replication/logical/worker.c:4902
 #, c-format
 msgid "Remote transaction's finish WAL location (LSN) %X/%X did not match skip-LSN %X/%X."
 msgstr "リモートトランザクションの完了WAL位置(LSN) %X/%XがスキップLSN %X/%X と一致しません。"
 
-#: replication/logical/worker.c:4914
+#: replication/logical/worker.c:4928
 #, c-format
 msgid "processing remote data for replication origin \"%s\" during message type \"%s\""
 msgstr "メッセージタイプ \"%2$s\"でレプリケーション基点\"%1$s\"のリモートからのデータを処理中"
 
-#: replication/logical/worker.c:4918
+#: replication/logical/worker.c:4932
 #, c-format
 msgid "processing remote data for replication origin \"%s\" during message type \"%s\" in transaction %u"
 msgstr "トランザクション%3$u中、メッセージタイプ\"%2$s\"でレプリケーション基点\"%1$s\"のリモートからのデータを処理中"
 
-#: replication/logical/worker.c:4923
+#: replication/logical/worker.c:4937
 #, c-format
 msgid "processing remote data for replication origin \"%s\" during message type \"%s\" in transaction %u, finished at %X/%X"
 msgstr "%4$X/%5$Xで終了したトランザクション%3$u中、メッセージタイプ\"%2$s\"でレプリケーション基点\"%1$s\"のリモートからのデータを処理中"
 
-#: replication/logical/worker.c:4934
+#: replication/logical/worker.c:4948
 #, c-format
 msgid "processing remote data for replication origin \"%s\" during message type \"%s\" for replication target relation \"%s.%s\" in transaction %u"
 msgstr "レプリケーション起点\"%1$s\"のリモートデータ処理中、トランザクション%5$uのレプリケーション対象リレーション\"%3$s.%4$s\"に対するメッセージタイプ\"%2$s\"内"
 
-#: replication/logical/worker.c:4941
+#: replication/logical/worker.c:4955
 #, c-format
 msgid "processing remote data for replication origin \"%s\" during message type \"%s\" for replication target relation \"%s.%s\" in transaction %u, finished at %X/%X"
 msgstr "%6$X/%7$Xで終了したトランザクション%5$u中、レプリケーション先リレーション\"%3$s.%4$s\"に対するメッセージタイプ\"%2$s\"でレプリケーション基点\"%1$s\"のリモートからのデータを処理中"
 
-#: replication/logical/worker.c:4952
+#: replication/logical/worker.c:4966
 #, c-format
 msgid "processing remote data for replication origin \"%s\" during message type \"%s\" for replication target relation \"%s.%s\" column \"%s\" in transaction %u"
 msgstr "レプリケーション起点\"%1$s\"のリモートデータ処理中、トランザクション%6$uのレプリケーション対象リレーション\"%3$s.%4$s\"、列\"%5$s\"に対するメッセージタイプ\"%2$s\"内"
 
-#: replication/logical/worker.c:4960
+#: replication/logical/worker.c:4974
 #, c-format
 msgid "processing remote data for replication origin \"%s\" during message type \"%s\" for replication target relation \"%s.%s\" column \"%s\" in transaction %u, finished at %X/%X"
 msgstr "%7$X/%8$Xで終了したトランザクション%6$u中、レプリケーション先リレーション\"%3$s.%4$s\"、列\"%5$s\"に対するメッセージタイプ\"%2$s\"でレプリケーション基点\"%1$s\"のリモートからのデータを処理中"
@@ -20266,7 +20271,7 @@ msgstr "レプリケーションスロット\"%s\"は存在しません"
 msgid "replication slot \"%s\" is active for PID %d"
 msgstr "レプリケーションスロット\"%s\"はPID%dで使用中です"
 
-#: replication/slot.c:756 replication/slot.c:1638 replication/slot.c:2021
+#: replication/slot.c:756 replication/slot.c:1645 replication/slot.c:2028
 #, c-format
 msgid "could not remove directory \"%s\""
 msgstr "ディレクトリ\"%s\"を削除できませんでした"
@@ -20291,71 +20296,72 @@ msgstr "レプリケーションスロットを使用する権限がありませ
 msgid "Only roles with the %s attribute may use replication slots."
 msgstr "%s属性を持つロールのみがレプリケーションスロットを使用できます。"
 
-#: replication/slot.c:1267
+#: replication/slot.c:1271
 #, c-format
-msgid "The slot's restart_lsn %X/%X exceeds the limit by %llu bytes."
-msgstr "このスロットのrestart_lsn %X/%Xは制限を%lluバイト超過しています。"
+msgid "The slot's restart_lsn %X/%X exceeds the limit by %llu byte."
+msgid_plural "The slot's restart_lsn %X/%X exceeds the limit by %llu bytes."
+msgstr[0] "このスロットのrestart_lsn %X/%Xは制限を%lluバイト超過しています。"
 
-#: replication/slot.c:1272
+#: replication/slot.c:1279
 #, c-format
 msgid "The slot conflicted with xid horizon %u."
 msgstr "このスロットはXID地平線%uと競合しました。"
 
-#: replication/slot.c:1277
+#: replication/slot.c:1284
 msgid "Logical decoding on standby requires wal_level >= logical on the primary server."
 msgstr "論理デコードを行うためにはプライマリサーバー上でwal_level >= logical である必要があります。"
 
-#: replication/slot.c:1285
+#: replication/slot.c:1292
 #, c-format
 msgid "terminating process %d to release replication slot \"%s\""
 msgstr "プロセス%dを終了してレプリケーションスロット\"%s\"を解放します"
 
-#: replication/slot.c:1287
+#: replication/slot.c:1294
 #, c-format
 msgid "invalidating obsolete replication slot \"%s\""
 msgstr "使用不能のレプリケーションスロット\"%s\"を無効化します"
 
-#: replication/slot.c:1959
+#: replication/slot.c:1966
 #, c-format
 msgid "replication slot file \"%s\" has wrong magic number: %u instead of %u"
 msgstr "レプリケーションスロットファイル\"%1$s\"のマジックナンバーが不正です: %3$uのはずが%2$uでした"
 
-#: replication/slot.c:1966
+#: replication/slot.c:1973
 #, c-format
 msgid "replication slot file \"%s\" has unsupported version %u"
 msgstr "レプリケーションスロットファイル\"%s\"はサポート外のバージョン%uです"
 
-#: replication/slot.c:1973
+#: replication/slot.c:1980
 #, c-format
 msgid "replication slot file \"%s\" has corrupted length %u"
 msgstr "レプリケーションスロットファイル\"%s\"のサイズ%uは異常です"
 
-#: replication/slot.c:2009
+#: replication/slot.c:2016
 #, c-format
 msgid "checksum mismatch for replication slot file \"%s\": is %u, should be %u"
 msgstr "レプリケーションスロットファイル\"%s\"のチェックサムが一致しません: %uですが、%uであるべきです"
 
-#: replication/slot.c:2043
+#: replication/slot.c:2050
 #, c-format
 msgid "logical replication slot \"%s\" exists, but wal_level < logical"
 msgstr "論理レプリケーションスロット\"%s\"がありますが、wal_level < logical です"
 
-#: replication/slot.c:2045
+#: replication/slot.c:2052
 #, c-format
 msgid "Change wal_level to be logical or higher."
 msgstr "wal_level を logical もしくはそれより上位の設定にしてください。"
 
-#: replication/slot.c:2049
+#: replication/slot.c:2056
 #, c-format
 msgid "physical replication slot \"%s\" exists, but wal_level < replica"
 msgstr "物理レプリケーションスロット\"%s\"がありますが、wal_level < replica です"
 
-#: replication/slot.c:2051
+#: replication/slot.c:2058
 #, c-format
 msgid "Change wal_level to be replica or higher."
 msgstr "wal_level を replica もしくはそれより上位の設定にしてください。"
 
-#: replication/slot.c:2085
+#: replication/slot.c:2092
 #, c-format
 msgid "too many replication slots active before shutdown"
 msgstr "シャットダウン前のアクティブなレプリケーションスロットの数が多すぎます"
@@ -23111,13 +23117,13 @@ msgstr "%s符号化方式からASCIIへの変換はサポートされていま
 
 #. translator: first %s is inet or cidr
 #: utils/adt/bool.c:153 utils/adt/cash.c:277 utils/adt/datetime.c:4017 utils/adt/float.c:206 utils/adt/float.c:293 utils/adt/float.c:307 utils/adt/float.c:412 utils/adt/float.c:495 utils/adt/float.c:509 utils/adt/geo_ops.c:250 utils/adt/geo_ops.c:335 utils/adt/geo_ops.c:974 utils/adt/geo_ops.c:1417 utils/adt/geo_ops.c:1454 utils/adt/geo_ops.c:1462 utils/adt/geo_ops.c:3428 utils/adt/geo_ops.c:4650 utils/adt/geo_ops.c:4665 utils/adt/geo_ops.c:4672
-#: utils/adt/int.c:174 utils/adt/int.c:186 utils/adt/jsonpath.c:183 utils/adt/mac.c:94 utils/adt/mac8.c:225 utils/adt/network.c:99 utils/adt/numeric.c:795 utils/adt/numeric.c:7136 utils/adt/numeric.c:7339 utils/adt/numeric.c:8286 utils/adt/numutils.c:273 utils/adt/numutils.c:451 utils/adt/numutils.c:629 utils/adt/numutils.c:668 utils/adt/numutils.c:690 utils/adt/numutils.c:754 utils/adt/numutils.c:776 utils/adt/pg_lsn.c:74 utils/adt/tid.c:72 utils/adt/tid.c:80
+#: utils/adt/int.c:174 utils/adt/int.c:186 utils/adt/jsonpath.c:183 utils/adt/mac.c:94 utils/adt/mac8.c:225 utils/adt/network.c:99 utils/adt/numeric.c:795 utils/adt/numeric.c:7136 utils/adt/numeric.c:7339 utils/adt/numeric.c:8286 utils/adt/numutils.c:357 utils/adt/numutils.c:619 utils/adt/numutils.c:881 utils/adt/numutils.c:920 utils/adt/numutils.c:942 utils/adt/numutils.c:1006 utils/adt/numutils.c:1028 utils/adt/pg_lsn.c:74 utils/adt/tid.c:72 utils/adt/tid.c:80
 #: utils/adt/tid.c:94 utils/adt/tid.c:103 utils/adt/timestamp.c:494 utils/adt/uuid.c:135 utils/adt/xid8funcs.c:354
 #, c-format
 msgid "invalid input syntax for type %s: \"%s\""
 msgstr "\"%s\"型の入力構文が不正です: \"%s\""
 
-#: utils/adt/cash.c:215 utils/adt/cash.c:240 utils/adt/cash.c:250 utils/adt/cash.c:290 utils/adt/int.c:180 utils/adt/numutils.c:267 utils/adt/numutils.c:445 utils/adt/numutils.c:623 utils/adt/numutils.c:674 utils/adt/numutils.c:713 utils/adt/numutils.c:760
+#: utils/adt/cash.c:215 utils/adt/cash.c:240 utils/adt/cash.c:250 utils/adt/cash.c:290 utils/adt/int.c:180 utils/adt/numutils.c:351 utils/adt/numutils.c:613 utils/adt/numutils.c:875 utils/adt/numutils.c:926 utils/adt/numutils.c:965 utils/adt/numutils.c:1012
 #, c-format
 msgid "value \"%s\" is out of range for type %s"
 msgstr "値\"%s\"は型%sの範囲外です"
@@ -23809,8 +23815,8 @@ msgstr "オブジェクトキーにnullは使えません"
 
 #: utils/adt/json.c:1189 utils/adt/json.c:1352
 #, c-format
-msgid "duplicate JSON key %s"
-msgstr "重複したJSONキー %s"
+msgid "duplicate JSON object key value: %s"
+msgstr "JSONオブジェクトキー値の重複: %s"
 
 #: utils/adt/json.c:1297 utils/adt/jsonb.c:1233
 #, c-format
@@ -23833,7 +23839,7 @@ msgstr "配列は最低でも2つの列が必要です"
 msgid "mismatched array dimensions"
 msgstr "配列の次元が合っていません"
 
-#: utils/adt/json.c:1764
+#: utils/adt/json.c:1764 utils/adt/jsonb_util.c:1958
 #, c-format
 msgid "duplicate JSON object key value"
 msgstr "JSONオブジェクトキー値の重複"
@@ -23918,11 +23924,6 @@ msgstr "jsonb配列全体のサイズが最大値%dバイトを超えていま
 msgid "total size of jsonb object elements exceeds the maximum of %d bytes"
 msgstr "jsonbオブジェクト要素全体のサイズが最大値%dを超えています"
 
-#: utils/adt/jsonb_util.c:1958
-#, c-format
-msgid "duplicate JSON object key"
-msgstr "JSONオブジェクトキーの重複"
-
 #: utils/adt/jsonbsubs.c:70 utils/adt/jsonbsubs.c:151
 #, c-format
 msgid "jsonb subscript does not support slices"
@@ -24817,22 +24818,22 @@ msgstr "pg_lsnからNaNは減算できません"
 msgid "function can only be called when server is in binary upgrade mode"
 msgstr "関数はサーバーがバイナリアップグレードモードであるときのみ呼び出せます"
 
-#: utils/adt/pgstatfuncs.c:253
+#: utils/adt/pgstatfuncs.c:254
 #, c-format
 msgid "invalid command name: \"%s\""
 msgstr "不正なコマンド名: \"%s\""
 
-#: utils/adt/pgstatfuncs.c:1773
+#: utils/adt/pgstatfuncs.c:1774
 #, c-format
 msgid "unrecognized reset target: \"%s\""
 msgstr "認識できないリセットターゲット: \"%s\""
 
-#: utils/adt/pgstatfuncs.c:1774
+#: utils/adt/pgstatfuncs.c:1775
 #, c-format
 msgid "Target must be \"archiver\", \"bgwriter\", \"io\", \"recovery_prefetch\", or \"wal\"."
 msgstr "対象は\"archiver\"、\"bgwriter\"、\"io\"、\"recovery_prefetch\"または\"wal\"でなければなりません。"
 
-#: utils/adt/pgstatfuncs.c:1852
+#: utils/adt/pgstatfuncs.c:1857
 #, c-format
 msgid "invalid subscription OID %u"
 msgstr "不正なサブスクリプションOID %u"
@@ -25777,7 +25778,7 @@ msgstr "型%sの利用可能な出力関数がありません"
 msgid "operator class \"%s\" of access method %s is missing support function %d for type %s"
 msgstr "アクセスメソッド %2$s の演算子クラス\"%1$s\"は%4$s型に対応するサポート関数%3$dを含んでいません"
 
-#: utils/cache/plancache.c:722
+#: utils/cache/plancache.c:724
 #, c-format
 msgid "cached plan must not change result type"
 msgstr "キャッシュした実行計画は結果型を変更してはなりません"
@@ -25792,17 +25793,17 @@ msgstr "バイナリアップグレードモード中にヒープのrelfilenumbe
 msgid "unexpected request for new relfilenumber in binary upgrade mode"
 msgstr "バイナリアップグレードモード中に、予期しない新規relfilenumberの要求がありました"
 
-#: utils/cache/relcache.c:6489
+#: utils/cache/relcache.c:6495
 #, c-format
 msgid "could not create relation-cache initialization file \"%s\": %m"
 msgstr "リレーションキャッシュ初期化ファイル\"%sを作成できません: %m"
 
-#: utils/cache/relcache.c:6491
+#: utils/cache/relcache.c:6497
 #, c-format
 msgid "Continuing anyway, but there's something wrong."
 msgstr "とりあえず続行しますが、何かがおかしいです。"
 
-#: utils/cache/relcache.c:6813
+#: utils/cache/relcache.c:6819
 #, c-format
 msgid "could not remove cache file \"%s\": %m"
 msgstr "キャッシュファイル\"%s\"を削除できませんでした: %m"
@@ -28717,8 +28718,8 @@ msgid "Sets the method for synchronizing the data directory before crash recover
 msgstr "クラシュリカバリ前に行うデータディレクトリの同期の方法を設定する。"
 
 #: utils/misc/guc_tables.c:4960
-msgid "Controls when to replicate or apply each change."
-msgstr "å\80\8bã\80\85ã\81®æ\9b´æ\96°ã\82\92ã\81\84ã\81¤è¤\87製ã\81¾ã\81\9fã\81¯é\81©ç\94¨ã\81\99ã\82\8bã\81\8bã\82\92å\88¶å¾¡します。"
+msgid "Forces immediate streaming or serialization of changes in large transactions."
+msgstr "大ã\81\8dã\81ªã\83\88ã\83©ã\83³ã\82¶ã\82¯ã\82·ã\83§ã\83³ã\81«ã\81\8aã\81\84ã\81¦ã\80\81å\8d³æ\99\82ã\82¹ã\83\88ã\83ªã\83¼ã\83\9fã\83³ã\82°ã\81¾ã\81\9fã\81¯å¤\89æ\9b´ã\81®ã\82·ã\83ªã\82¢ã\83©ã\82¤ã\82ºã\82\92å¼·å\88します。"
 
 #: utils/misc/guc_tables.c:4961
 msgid "On the publisher, it allows streaming or serializing each change in logical decoding. On the subscriber, it allows serialization of all changes to files and notifies the parallel apply workers to read and apply them at the end of the transaction."
index e64e6441f45a91df1e573a4e1720d95619cbddbf..145bd33057b575ab42fc6ea8c2bd3ccbf07f170b 100644 (file)
@@ -8,7 +8,7 @@ msgstr ""
 "Project-Id-Version: postgres (PostgreSQL) 16\n"
 "Report-Msgid-Bugs-To: [email protected]\n"
 "POT-Creation-Date: 2023-08-24 08:42+0000\n"
-"PO-Revision-Date: 2023-08-24 11:47+0200\n"
+"PO-Revision-Date: 2023-09-04 07:17+0200\n"
 "Last-Translator: Temuri Doghonadze \n"
 "Language-Team: Georgian \n"
 "Language: ka\n"
@@ -8416,7 +8416,7 @@ msgstr "ინდექსის გამოსახულებისთვ
 #: commands/indexcmds.c:2046 commands/tablecmds.c:17469 commands/typecmds.c:807 parser/parse_expr.c:2722 parser/parse_type.c:568 parser/parse_utilcmd.c:3774 utils/adt/misc.c:586
 #, c-format
 msgid "collations are not supported by type %s"
-msgstr "á\83¢á\83\98á\83\9eá\83\98á\83¡ \"%s\" á\83\99á\83\9dá\83\9aá\83\90á\83ªá\83\98á\83\94á\83\91á\83\98á\83¡ á\83\9bá\83®á\83\90á\83 á\83\93á\83\90á\83­á\83\94á\83 á\83\90 á\83\90á\83  á\83\92á\83\90á\83\90á\83©á\83\9cá\83\98á\83\90"
+msgstr "ტიპს \"%s\" კოლაციების მხარდაჭერა არ გააჩნია"
 
 #: commands/indexcmds.c:2111
 #, c-format
index ae9c50eed73e69e1e1557df4c92e500660a39d52..c682ddf682c5d8601dc4114a962e0566dd8de24a 100644 (file)
@@ -10,8 +10,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: postgres (PostgreSQL current)\n"
 "Report-Msgid-Bugs-To: [email protected]\n"
-"POT-Creation-Date: 2023-02-03 15:07+0300\n"
-"PO-Revision-Date: 2023-01-30 07:55+0300\n"
+"POT-Creation-Date: 2023-08-28 07:59+0300\n"
+"PO-Revision-Date: 2023-08-31 10:13+0300\n"
 "Last-Translator: Alexander Lakhin \n"
 "Language-Team: Russian \n"
 "Language: ru\n"
@@ -21,37 +21,42 @@ msgstr ""
 "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
 "n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
 
-#: ../common/compression.c:130 ../common/compression.c:139
-#: ../common/compression.c:148
+#: ../common/compression.c:132 ../common/compression.c:141
+#: ../common/compression.c:150
 #, c-format
 msgid "this build does not support compression with %s"
 msgstr "эта сборка программы не поддерживает сжатие %s"
 
-#: ../common/compression.c:203
+#: ../common/compression.c:205
 msgid "found empty string where a compression option was expected"
 msgstr "вместо указания параметра сжатия получена пустая строка"
 
-#: ../common/compression.c:237
+#: ../common/compression.c:244
 #, c-format
 msgid "unrecognized compression option: \"%s\""
 msgstr "нераспознанный параметр сжатия: \"%s\""
 
-#: ../common/compression.c:276
+#: ../common/compression.c:283
 #, c-format
 msgid "compression option \"%s\" requires a value"
 msgstr "для параметра сжатия \"%s\" требуется значение"
 
-#: ../common/compression.c:285
+#: ../common/compression.c:292
 #, c-format
 msgid "value for compression option \"%s\" must be an integer"
 msgstr "значение параметра сжатия \"%s\" должно быть целочисленным"
 
-#: ../common/compression.c:335
+#: ../common/compression.c:331
+#, c-format
+msgid "value for compression option \"%s\" must be a Boolean value"
+msgstr "значение параметра сжатия \"%s\" должно быть булевским"
+
+#: ../common/compression.c:379
 #, c-format
 msgid "compression algorithm \"%s\" does not accept a compression level"
 msgstr "для алгоритма сжатия \"%s\" нельзя задать уровень сжатия"
 
-#: ../common/compression.c:342
+#: ../common/compression.c:386
 #, c-format
 msgid ""
 "compression algorithm \"%s\" expects a compression level between %d and %d "
@@ -60,11 +65,16 @@ msgstr ""
 "для алгоритма сжатия \"%s\" ожидается уровень сжатия от %d до %d (по "
 "умолчанию %d)"
 
-#: ../common/compression.c:353
+#: ../common/compression.c:397
 #, c-format
 msgid "compression algorithm \"%s\" does not accept a worker count"
 msgstr "для алгоритма сжатия \"%s\" нельзя задать число потоков"
 
+#: ../common/compression.c:408
+#, c-format
+msgid "compression algorithm \"%s\" does not support long-distance mode"
+msgstr "алгоритм сжатия \"%s\" не поддерживает режим большой дистанции"
+
 #: ../common/config_info.c:134 ../common/config_info.c:142
 #: ../common/config_info.c:150 ../common/config_info.c:158
 #: ../common/config_info.c:166 ../common/config_info.c:174
@@ -73,56 +83,54 @@ msgid "not recorded"
 msgstr "не записано"
 
 #: ../common/controldata_utils.c:69 ../common/controldata_utils.c:73
-#: commands/copyfrom.c:1515 commands/extension.c:3383 utils/adt/genfile.c:123
+#: commands/copyfrom.c:1670 commands/extension.c:3480 utils/adt/genfile.c:123
 #, c-format
 msgid "could not open file \"%s\" for reading: %m"
 msgstr "не удалось открыть файл \"%s\" для чтения: %m"
 
 #: ../common/controldata_utils.c:84 ../common/controldata_utils.c:86
 #: access/transam/timeline.c:143 access/transam/timeline.c:362
-#: access/transam/twophase.c:1348 access/transam/xlog.c:3207
-#: access/transam/xlog.c:4022 access/transam/xlogrecovery.c:1178
-#: access/transam/xlogrecovery.c:1270 access/transam/xlogrecovery.c:1307
-#: access/transam/xlogrecovery.c:1367 backup/basebackup.c:1843
-#: commands/extension.c:3393 libpq/hba.c:505 replication/logical/origin.c:729
-#: replication/logical/origin.c:765 replication/logical/reorderbuffer.c:4948
-#: replication/logical/snapbuild.c:1858 replication/logical/snapbuild.c:1900
-#: replication/logical/snapbuild.c:1927 replication/slot.c:1807
-#: replication/slot.c:1848 replication/walsender.c:658
-#: storage/file/buffile.c:463 storage/file/copydir.c:195
-#: utils/adt/genfile.c:197 utils/adt/misc.c:863 utils/cache/relmapper.c:813
+#: access/transam/twophase.c:1347 access/transam/xlog.c:3193
+#: access/transam/xlog.c:3996 access/transam/xlogrecovery.c:1199
+#: access/transam/xlogrecovery.c:1291 access/transam/xlogrecovery.c:1328
+#: access/transam/xlogrecovery.c:1388 backup/basebackup.c:1842
+#: commands/extension.c:3490 libpq/hba.c:769 replication/logical/origin.c:745
+#: replication/logical/origin.c:781 replication/logical/reorderbuffer.c:5050
+#: replication/logical/snapbuild.c:2031 replication/slot.c:1953
+#: replication/slot.c:1994 replication/walsender.c:643
+#: storage/file/buffile.c:470 storage/file/copydir.c:185
+#: utils/adt/genfile.c:197 utils/adt/misc.c:984 utils/cache/relmapper.c:827
 #, c-format
 msgid "could not read file \"%s\": %m"
 msgstr "не удалось прочитать файл \"%s\": %m"
 
 #: ../common/controldata_utils.c:92 ../common/controldata_utils.c:95
-#: access/transam/xlog.c:3212 access/transam/xlog.c:4027
-#: backup/basebackup.c:1847 replication/logical/origin.c:734
-#: replication/logical/origin.c:773 replication/logical/snapbuild.c:1863
-#: replication/logical/snapbuild.c:1905 replication/logical/snapbuild.c:1932
-#: replication/slot.c:1811 replication/slot.c:1852 replication/walsender.c:663
-#: utils/cache/relmapper.c:817
+#: access/transam/xlog.c:3198 access/transam/xlog.c:4001
+#: backup/basebackup.c:1846 replication/logical/origin.c:750
+#: replication/logical/origin.c:789 replication/logical/snapbuild.c:2036
+#: replication/slot.c:1957 replication/slot.c:1998 replication/walsender.c:648
+#: utils/cache/relmapper.c:831
 #, c-format
 msgid "could not read file \"%s\": read %d of %zu"
 msgstr "не удалось прочитать файл \"%s\" (прочитано байт: %d из %zu)"
 
 #: ../common/controldata_utils.c:104 ../common/controldata_utils.c:108
-#: ../common/controldata_utils.c:241 ../common/controldata_utils.c:244
-#: access/heap/rewriteheap.c:1178 access/heap/rewriteheap.c:1281
+#: ../common/controldata_utils.c:233 ../common/controldata_utils.c:236
+#: access/heap/rewriteheap.c:1175 access/heap/rewriteheap.c:1280
 #: access/transam/timeline.c:392 access/transam/timeline.c:438
-#: access/transam/timeline.c:516 access/transam/twophase.c:1360
-#: access/transam/twophase.c:1772 access/transam/xlog.c:3054
-#: access/transam/xlog.c:3247 access/transam/xlog.c:3252
-#: access/transam/xlog.c:3390 access/transam/xlog.c:3992
-#: access/transam/xlog.c:4738 commands/copyfrom.c:1575 commands/copyto.c:327
-#: libpq/be-fsstubs.c:455 libpq/be-fsstubs.c:525
-#: replication/logical/origin.c:667 replication/logical/origin.c:806
-#: replication/logical/reorderbuffer.c:5006
-#: replication/logical/snapbuild.c:1767 replication/logical/snapbuild.c:1940
-#: replication/slot.c:1698 replication/slot.c:1859 replication/walsender.c:673
-#: storage/file/copydir.c:218 storage/file/copydir.c:223 storage/file/fd.c:745
-#: storage/file/fd.c:3643 storage/file/fd.c:3749 utils/cache/relmapper.c:828
-#: utils/cache/relmapper.c:956
+#: access/transam/timeline.c:512 access/transam/twophase.c:1359
+#: access/transam/twophase.c:1771 access/transam/xlog.c:3039
+#: access/transam/xlog.c:3233 access/transam/xlog.c:3238
+#: access/transam/xlog.c:3374 access/transam/xlog.c:3966
+#: access/transam/xlog.c:4885 commands/copyfrom.c:1730 commands/copyto.c:332
+#: libpq/be-fsstubs.c:470 libpq/be-fsstubs.c:540
+#: replication/logical/origin.c:683 replication/logical/origin.c:822
+#: replication/logical/reorderbuffer.c:5102
+#: replication/logical/snapbuild.c:1798 replication/logical/snapbuild.c:1922
+#: replication/slot.c:1844 replication/slot.c:2005 replication/walsender.c:658
+#: storage/file/copydir.c:208 storage/file/copydir.c:213 storage/file/fd.c:782
+#: storage/file/fd.c:3700 storage/file/fd.c:3806 utils/cache/relmapper.c:839
+#: utils/cache/relmapper.c:945
 #, c-format
 msgid "could not close file \"%s\": %m"
 msgstr "не удалось закрыть файл \"%s\": %m"
@@ -145,102 +153,101 @@ msgstr ""
 "этой программой. В этом случае результаты будут неверными и\n"
 "установленный PostgreSQL будет несовместим с этим каталогом данных."
 
-#: ../common/controldata_utils.c:189 ../common/controldata_utils.c:194
-#: ../common/file_utils.c:232 ../common/file_utils.c:291
-#: ../common/file_utils.c:365 access/heap/rewriteheap.c:1264
+#: ../common/controldata_utils.c:181 ../common/controldata_utils.c:186
+#: ../common/file_utils.c:228 ../common/file_utils.c:287
+#: ../common/file_utils.c:361 access/heap/rewriteheap.c:1263
 #: access/transam/timeline.c:111 access/transam/timeline.c:251
-#: access/transam/timeline.c:348 access/transam/twophase.c:1304
-#: access/transam/xlog.c:2941 access/transam/xlog.c:3123
-#: access/transam/xlog.c:3162 access/transam/xlog.c:3357
-#: access/transam/xlog.c:4012 access/transam/xlogrecovery.c:4190
-#: access/transam/xlogrecovery.c:4293 access/transam/xlogutils.c:852
-#: backup/basebackup.c:522 backup/basebackup.c:1520 postmaster/syslogger.c:1560
-#: replication/logical/origin.c:719 replication/logical/reorderbuffer.c:3601
-#: replication/logical/reorderbuffer.c:4152
-#: replication/logical/reorderbuffer.c:4928
-#: replication/logical/snapbuild.c:1722 replication/logical/snapbuild.c:1829
-#: replication/slot.c:1779 replication/walsender.c:631
-#: replication/walsender.c:2722 storage/file/copydir.c:161
-#: storage/file/fd.c:720 storage/file/fd.c:3395 storage/file/fd.c:3630
-#: storage/file/fd.c:3720 storage/smgr/md.c:538 utils/cache/relmapper.c:792
-#: utils/cache/relmapper.c:900 utils/error/elog.c:1933
-#: utils/init/miscinit.c:1366 utils/init/miscinit.c:1500
-#: utils/init/miscinit.c:1577 utils/misc/guc.c:8991 utils/misc/guc.c:9040
+#: access/transam/timeline.c:348 access/transam/twophase.c:1303
+#: access/transam/xlog.c:2946 access/transam/xlog.c:3109
+#: access/transam/xlog.c:3148 access/transam/xlog.c:3341
+#: access/transam/xlog.c:3986 access/transam/xlogrecovery.c:4179
+#: access/transam/xlogrecovery.c:4282 access/transam/xlogutils.c:838
+#: backup/basebackup.c:538 backup/basebackup.c:1512 libpq/hba.c:629
+#: postmaster/syslogger.c:1560 replication/logical/origin.c:735
+#: replication/logical/reorderbuffer.c:3706
+#: replication/logical/reorderbuffer.c:4257
+#: replication/logical/reorderbuffer.c:5030
+#: replication/logical/snapbuild.c:1753 replication/logical/snapbuild.c:1863
+#: replication/slot.c:1925 replication/walsender.c:616
+#: replication/walsender.c:2731 storage/file/copydir.c:151
+#: storage/file/fd.c:757 storage/file/fd.c:3457 storage/file/fd.c:3687
+#: storage/file/fd.c:3777 storage/smgr/md.c:663 utils/cache/relmapper.c:816
+#: utils/cache/relmapper.c:924 utils/error/elog.c:2082
+#: utils/init/miscinit.c:1530 utils/init/miscinit.c:1664
+#: utils/init/miscinit.c:1741 utils/misc/guc.c:4600 utils/misc/guc.c:4650
 #, c-format
 msgid "could not open file \"%s\": %m"
 msgstr "не удалось открыть файл \"%s\": %m"
 
-#: ../common/controldata_utils.c:210 ../common/controldata_utils.c:213
-#: access/transam/twophase.c:1745 access/transam/twophase.c:1754
-#: access/transam/xlog.c:8670 access/transam/xlogfuncs.c:600
-#: backup/basebackup_server.c:173 backup/basebackup_server.c:266
-#: postmaster/postmaster.c:5638 postmaster/syslogger.c:1571
+#: ../common/controldata_utils.c:202 ../common/controldata_utils.c:205
+#: access/transam/twophase.c:1744 access/transam/twophase.c:1753
+#: access/transam/xlog.c:8755 access/transam/xlogfuncs.c:708
+#: backup/basebackup_server.c:175 backup/basebackup_server.c:268
+#: postmaster/postmaster.c:5570 postmaster/syslogger.c:1571
 #: postmaster/syslogger.c:1584 postmaster/syslogger.c:1597
-#: utils/cache/relmapper.c:934
+#: utils/cache/relmapper.c:936
 #, c-format
 msgid "could not write file \"%s\": %m"
 msgstr "не удалось записать файл \"%s\": %m"
 
-#: ../common/controldata_utils.c:227 ../common/controldata_utils.c:232
-#: ../common/file_utils.c:303 ../common/file_utils.c:373
-#: access/heap/rewriteheap.c:960 access/heap/rewriteheap.c:1172
-#: access/heap/rewriteheap.c:1275 access/transam/timeline.c:432
-#: access/transam/timeline.c:510 access/transam/twophase.c:1766
-#: access/transam/xlog.c:3047 access/transam/xlog.c:3241
-#: access/transam/xlog.c:3985 access/transam/xlog.c:7973
-#: access/transam/xlog.c:8016 backup/basebackup_server.c:207
-#: replication/logical/snapbuild.c:1760 replication/slot.c:1684
-#: replication/slot.c:1789 storage/file/fd.c:737 storage/file/fd.c:3741
-#: storage/smgr/md.c:989 storage/smgr/md.c:1030 storage/sync/sync.c:453
-#: utils/cache/relmapper.c:949 utils/misc/guc.c:8760
+#: ../common/controldata_utils.c:219 ../common/controldata_utils.c:224
+#: ../common/file_utils.c:299 ../common/file_utils.c:369
+#: access/heap/rewriteheap.c:959 access/heap/rewriteheap.c:1169
+#: access/heap/rewriteheap.c:1274 access/transam/timeline.c:432
+#: access/transam/timeline.c:506 access/transam/twophase.c:1765
+#: access/transam/xlog.c:3032 access/transam/xlog.c:3227
+#: access/transam/xlog.c:3959 access/transam/xlog.c:8145
+#: access/transam/xlog.c:8190 backup/basebackup_server.c:209
+#: replication/logical/snapbuild.c:1791 replication/slot.c:1830
+#: replication/slot.c:1935 storage/file/fd.c:774 storage/file/fd.c:3798
+#: storage/smgr/md.c:1135 storage/smgr/md.c:1180 storage/sync/sync.c:451
+#: utils/misc/guc.c:4370
 #, c-format
 msgid "could not fsync file \"%s\": %m"
 msgstr "не удалось синхронизировать с ФС файл \"%s\": %m"
 
-#: ../common/cryptohash.c:266 ../common/cryptohash_openssl.c:133
-#: ../common/cryptohash_openssl.c:332 ../common/exec.c:560 ../common/exec.c:605
-#: ../common/exec.c:697 ../common/hmac.c:309 ../common/hmac.c:325
+#: ../common/cryptohash.c:261 ../common/cryptohash_openssl.c:133
+#: ../common/cryptohash_openssl.c:332 ../common/exec.c:550 ../common/exec.c:595
+#: ../common/exec.c:687 ../common/hmac.c:309 ../common/hmac.c:325
 #: ../common/hmac_openssl.c:132 ../common/hmac_openssl.c:327
 #: ../common/md5_common.c:155 ../common/psprintf.c:143
-#: ../common/scram-common.c:247 ../common/stringinfo.c:305 ../port/path.c:751
-#: ../port/path.c:789 ../port/path.c:806 access/transam/twophase.c:1413
-#: access/transam/xlogrecovery.c:568 lib/dshash.c:253 libpq/auth.c:1338
-#: libpq/auth.c:1406 libpq/auth.c:1964 libpq/be-secure-gssapi.c:520
-#: postmaster/bgworker.c:349 postmaster/bgworker.c:931
-#: postmaster/postmaster.c:2591 postmaster/postmaster.c:4177
-#: postmaster/postmaster.c:4849 postmaster/postmaster.c:5563
-#: postmaster/postmaster.c:5934
-#: replication/libpqwalreceiver/libpqwalreceiver.c:300
-#: replication/logical/logical.c:205 replication/walsender.c:701
-#: storage/buffer/localbuf.c:442 storage/file/fd.c:892 storage/file/fd.c:1434
-#: storage/file/fd.c:1595 storage/file/fd.c:2409 storage/ipc/procarray.c:1448
-#: storage/ipc/procarray.c:2260 storage/ipc/procarray.c:2267
-#: storage/ipc/procarray.c:2770 storage/ipc/procarray.c:3401
-#: utils/adt/formatting.c:1732 utils/adt/formatting.c:1854
-#: utils/adt/formatting.c:1977 utils/adt/pg_locale.c:450
-#: utils/adt/pg_locale.c:614 utils/adt/regexp.c:224 utils/fmgr/dfmgr.c:229
-#: utils/hash/dynahash.c:513 utils/hash/dynahash.c:613
-#: utils/hash/dynahash.c:1116 utils/mb/mbutils.c:401 utils/mb/mbutils.c:429
-#: utils/mb/mbutils.c:814 utils/mb/mbutils.c:841 utils/misc/guc.c:5192
-#: utils/misc/guc.c:5208 utils/misc/guc.c:5221 utils/misc/guc.c:8738
-#: utils/misc/tzparser.c:476 utils/mmgr/aset.c:476 utils/mmgr/dsa.c:701
-#: utils/mmgr/dsa.c:723 utils/mmgr/dsa.c:804 utils/mmgr/generation.c:266
-#: utils/mmgr/mcxt.c:888 utils/mmgr/mcxt.c:924 utils/mmgr/mcxt.c:962
-#: utils/mmgr/mcxt.c:1000 utils/mmgr/mcxt.c:1088 utils/mmgr/mcxt.c:1119
-#: utils/mmgr/mcxt.c:1155 utils/mmgr/mcxt.c:1207 utils/mmgr/mcxt.c:1242
-#: utils/mmgr/mcxt.c:1277 utils/mmgr/slab.c:238
+#: ../common/scram-common.c:258 ../common/stringinfo.c:305 ../port/path.c:751
+#: ../port/path.c:789 ../port/path.c:806 access/transam/twophase.c:1412
+#: access/transam/xlogrecovery.c:589 lib/dshash.c:253 libpq/auth.c:1345
+#: libpq/auth.c:1389 libpq/auth.c:1946 libpq/be-secure-gssapi.c:524
+#: postmaster/bgworker.c:352 postmaster/bgworker.c:934
+#: postmaster/postmaster.c:2534 postmaster/postmaster.c:4127
+#: postmaster/postmaster.c:5495 postmaster/postmaster.c:5866
+#: replication/libpqwalreceiver/libpqwalreceiver.c:308
+#: replication/logical/logical.c:208 replication/walsender.c:686
+#: storage/buffer/localbuf.c:601 storage/file/fd.c:866 storage/file/fd.c:1397
+#: storage/file/fd.c:1558 storage/file/fd.c:2478 storage/ipc/procarray.c:1449
+#: storage/ipc/procarray.c:2232 storage/ipc/procarray.c:2239
+#: storage/ipc/procarray.c:2738 storage/ipc/procarray.c:3374
+#: utils/adt/formatting.c:1690 utils/adt/formatting.c:1812
+#: utils/adt/formatting.c:1935 utils/adt/pg_locale.c:469
+#: utils/adt/pg_locale.c:633 utils/fmgr/dfmgr.c:229 utils/hash/dynahash.c:514
+#: utils/hash/dynahash.c:614 utils/hash/dynahash.c:1111 utils/mb/mbutils.c:402
+#: utils/mb/mbutils.c:430 utils/mb/mbutils.c:815 utils/mb/mbutils.c:842
+#: utils/misc/guc.c:640 utils/misc/guc.c:665 utils/misc/guc.c:1053
+#: utils/misc/guc.c:4348 utils/misc/tzparser.c:476 utils/mmgr/aset.c:445
+#: utils/mmgr/dsa.c:714 utils/mmgr/dsa.c:736 utils/mmgr/dsa.c:817
+#: utils/mmgr/generation.c:205 utils/mmgr/mcxt.c:1046 utils/mmgr/mcxt.c:1082
+#: utils/mmgr/mcxt.c:1120 utils/mmgr/mcxt.c:1158 utils/mmgr/mcxt.c:1246
+#: utils/mmgr/mcxt.c:1277 utils/mmgr/mcxt.c:1313 utils/mmgr/mcxt.c:1502
+#: utils/mmgr/mcxt.c:1547 utils/mmgr/mcxt.c:1604 utils/mmgr/slab.c:366
 #, c-format
 msgid "out of memory"
 msgstr "нехватка памяти"
 
-#: ../common/cryptohash.c:271 ../common/cryptohash.c:277
+#: ../common/cryptohash.c:266 ../common/cryptohash.c:272
 #: ../common/cryptohash_openssl.c:344 ../common/cryptohash_openssl.c:352
 #: ../common/hmac.c:321 ../common/hmac.c:329 ../common/hmac_openssl.c:339
 #: ../common/hmac_openssl.c:347
 msgid "success"
 msgstr "успех"
 
-#: ../common/cryptohash.c:273 ../common/cryptohash_openssl.c:346
+#: ../common/cryptohash.c:268 ../common/cryptohash_openssl.c:346
 #: ../common/hmac_openssl.c:341
 msgid "destination buffer too small"
 msgstr "буфер назначения слишком мал"
@@ -249,90 +256,80 @@ msgstr "буфер назначения слишком мал"
 msgid "OpenSSL failure"
 msgstr "ошибка OpenSSL"
 
-#: ../common/exec.c:149 ../common/exec.c:266 ../common/exec.c:312
+#: ../common/exec.c:172
 #, c-format
-msgid "could not identify current directory: %m"
-msgstr "не удалось определить текущий каталог: %m"
+msgid "invalid binary \"%s\": %m"
+msgstr "неверный исполняемый файл \"%s\": %m"
 
-#: ../common/exec.c:168
+#: ../common/exec.c:215
 #, c-format
-msgid "invalid binary \"%s\""
-msgstr "неверный исполняемый файл \"%s\""
+msgid "could not read binary \"%s\": %m"
+msgstr "не удалось прочитать исполняемый файл \"%s\": %m"
 
-#: ../common/exec.c:218
-#, c-format
-msgid "could not read binary \"%s\""
-msgstr "не удалось прочитать исполняемый файл \"%s\""
-
-#: ../common/exec.c:226
+#: ../common/exec.c:223
 #, c-format
 msgid "could not find a \"%s\" to execute"
 msgstr "не удалось найти запускаемый файл \"%s\""
 
-#: ../common/exec.c:282 ../common/exec.c:321 utils/init/miscinit.c:439
-#, c-format
-msgid "could not change directory to \"%s\": %m"
-msgstr "не удалось перейти в каталог \"%s\": %m"
-
-#: ../common/exec.c:299 access/transam/xlog.c:8319 backup/basebackup.c:1340
-#: utils/adt/misc.c:342
+#: ../common/exec.c:250
 #, c-format
-msgid "could not read symbolic link \"%s\": %m"
-msgstr "не Ñ\83далоÑ\81Ñ\8c Ð¿Ñ\80оÑ\87иÑ\82аÑ\82Ñ\8c Ñ\81имволиÑ\87еÑ\81кÑ\83Ñ\8e Ñ\81Ñ\81Ñ\8bлкÑ\83 \"%s\": %m"
+msgid "could not resolve path \"%s\" to absolute form: %m"
+msgstr "не Ñ\83далоÑ\81Ñ\8c Ð¿Ñ\80еобÑ\80азоваÑ\82Ñ\8c Ð¾Ñ\82ноÑ\81иÑ\82елÑ\8cнÑ\8bй Ð¿Ñ\83Ñ\82Ñ\8c \"%s\" Ð² Ð°Ð±Ñ\81олÑ\8eÑ\82нÑ\8bй: %m"
 
-#: ../common/exec.c:422 libpq/pqcomm.c:746 storage/ipc/latch.c:1092
-#: storage/ipc/latch.c:1272 storage/ipc/latch.c:1501 storage/ipc/latch.c:1663
-#: storage/ipc/latch.c:1789
+#: ../common/exec.c:412 libpq/pqcomm.c:728 storage/ipc/latch.c:1128
+#: storage/ipc/latch.c:1308 storage/ipc/latch.c:1541 storage/ipc/latch.c:1703
+#: storage/ipc/latch.c:1829
 #, c-format
 msgid "%s() failed: %m"
 msgstr "ошибка в %s(): %m"
 
 #: ../common/fe_memutils.c:35 ../common/fe_memutils.c:75
-#: ../common/fe_memutils.c:98 ../common/fe_memutils.c:162
+#: ../common/fe_memutils.c:98 ../common/fe_memutils.c:161
 #: ../common/psprintf.c:145 ../port/path.c:753 ../port/path.c:791
-#: ../port/path.c:808 utils/misc/ps_status.c:181 utils/misc/ps_status.c:189
-#: utils/misc/ps_status.c:219 utils/misc/ps_status.c:227
+#: ../port/path.c:808 utils/misc/ps_status.c:168 utils/misc/ps_status.c:176
+#: utils/misc/ps_status.c:203 utils/misc/ps_status.c:211
 #, c-format
 msgid "out of memory\n"
 msgstr "нехватка памяти\n"
 
-#: ../common/fe_memutils.c:92 ../common/fe_memutils.c:154
+#: ../common/fe_memutils.c:92 ../common/fe_memutils.c:153
 #, c-format
 msgid "cannot duplicate null pointer (internal error)\n"
 msgstr "попытка дублирования нулевого указателя (внутренняя ошибка)\n"
 
-#: ../common/file_utils.c:87 ../common/file_utils.c:451
-#: ../common/file_utils.c:455 access/transam/twophase.c:1316
-#: access/transam/xlogarchive.c:111 access/transam/xlogarchive.c:230
-#: backup/basebackup.c:338 backup/basebackup.c:528 backup/basebackup.c:599
-#: commands/copyfrom.c:1525 commands/copyto.c:725 commands/extension.c:3372
-#: commands/tablespace.c:826 commands/tablespace.c:917 postmaster/pgarch.c:597
-#: replication/logical/snapbuild.c:1639 storage/file/copydir.c:68
-#: storage/file/copydir.c:107 storage/file/fd.c:1951 storage/file/fd.c:2037
-#: storage/file/fd.c:3243 storage/file/fd.c:3450 utils/adt/dbsize.c:92
-#: utils/adt/dbsize.c:244 utils/adt/dbsize.c:324 utils/adt/genfile.c:413
-#: utils/adt/genfile.c:588 utils/adt/misc.c:327 guc-file.l:1061
+#: ../common/file_utils.c:87 ../common/file_utils.c:447
+#: ../common/file_utils.c:451 access/transam/twophase.c:1315
+#: access/transam/xlogarchive.c:112 access/transam/xlogarchive.c:229
+#: backup/basebackup.c:346 backup/basebackup.c:544 backup/basebackup.c:615
+#: commands/copyfrom.c:1680 commands/copyto.c:702 commands/extension.c:3469
+#: commands/tablespace.c:810 commands/tablespace.c:899 postmaster/pgarch.c:590
+#: replication/logical/snapbuild.c:1649 storage/file/fd.c:1922
+#: storage/file/fd.c:2008 storage/file/fd.c:3511 utils/adt/dbsize.c:106
+#: utils/adt/dbsize.c:258 utils/adt/dbsize.c:338 utils/adt/genfile.c:483
+#: utils/adt/genfile.c:658 utils/adt/misc.c:340
 #, c-format
 msgid "could not stat file \"%s\": %m"
 msgstr "не удалось получить информацию о файле \"%s\": %m"
 
-#: ../common/file_utils.c:166 ../common/pgfnames.c:48 commands/tablespace.c:749
-#: commands/tablespace.c:759 postmaster/postmaster.c:1576
-#: storage/file/fd.c:2812 storage/file/reinit.c:126 utils/adt/misc.c:235
-#: utils/misc/tzparser.c:338
+#: ../common/file_utils.c:162 ../common/pgfnames.c:48 ../common/rmtree.c:63
+#: commands/tablespace.c:734 commands/tablespace.c:744
+#: postmaster/postmaster.c:1561 storage/file/fd.c:2880
+#: storage/file/reinit.c:126 utils/adt/misc.c:256 utils/misc/tzparser.c:338
 #, c-format
 msgid "could not open directory \"%s\": %m"
 msgstr "не удалось открыть каталог \"%s\": %m"
 
-#: ../common/file_utils.c:200 ../common/pgfnames.c:69 storage/file/fd.c:2824
+#: ../common/file_utils.c:196 ../common/pgfnames.c:69 ../common/rmtree.c:104
+#: storage/file/fd.c:2892
 #, c-format
 msgid "could not read directory \"%s\": %m"
 msgstr "не удалось прочитать каталог \"%s\": %m"
 
-#: ../common/file_utils.c:383 access/transam/xlogarchive.c:419
-#: postmaster/syslogger.c:1608 replication/logical/snapbuild.c:1779
-#: replication/slot.c:721 replication/slot.c:1570 replication/slot.c:1712
-#: storage/file/fd.c:755 storage/file/fd.c:853 utils/time/snapmgr.c:1282
+#: ../common/file_utils.c:379 access/transam/xlogarchive.c:383
+#: postmaster/pgarch.c:746 postmaster/syslogger.c:1608
+#: replication/logical/snapbuild.c:1810 replication/slot.c:723
+#: replication/slot.c:1716 replication/slot.c:1858 storage/file/fd.c:792
+#: utils/time/snapmgr.c:1284
 #, c-format
 msgid "could not rename file \"%s\" to \"%s\": %m"
 msgstr "не удалось переименовать файл \"%s\" в \"%s\": %m"
@@ -341,75 +338,75 @@ msgstr "не удалось переименовать файл \"%s\" в \"%s\"
 msgid "internal error"
 msgstr "внутренняя ошибка"
 
-#: ../common/jsonapi.c:1075
+#: ../common/jsonapi.c:1144
 #, c-format
 msgid "Escape sequence \"\\%s\" is invalid."
 msgstr "Неверная спецпоследовательность: \"\\%s\"."
 
-#: ../common/jsonapi.c:1078
+#: ../common/jsonapi.c:1147
 #, c-format
 msgid "Character with value 0x%02x must be escaped."
 msgstr "Символ с кодом 0x%02x необходимо экранировать."
 
-#: ../common/jsonapi.c:1081
+#: ../common/jsonapi.c:1150
 #, c-format
 msgid "Expected end of input, but found \"%s\"."
 msgstr "Ожидался конец текста, но обнаружено продолжение \"%s\"."
 
-#: ../common/jsonapi.c:1084
+#: ../common/jsonapi.c:1153
 #, c-format
 msgid "Expected array element or \"]\", but found \"%s\"."
 msgstr "Ожидался элемент массива или \"]\", но обнаружено \"%s\"."
 
-#: ../common/jsonapi.c:1087
+#: ../common/jsonapi.c:1156
 #, c-format
 msgid "Expected \",\" or \"]\", but found \"%s\"."
 msgstr "Ожидалась \",\" или \"]\", но обнаружено \"%s\"."
 
-#: ../common/jsonapi.c:1090
+#: ../common/jsonapi.c:1159
 #, c-format
 msgid "Expected \":\", but found \"%s\"."
 msgstr "Ожидалось \":\", но обнаружено \"%s\"."
 
-#: ../common/jsonapi.c:1093
+#: ../common/jsonapi.c:1162
 #, c-format
 msgid "Expected JSON value, but found \"%s\"."
 msgstr "Ожидалось значение JSON, но обнаружено \"%s\"."
 
-#: ../common/jsonapi.c:1096
+#: ../common/jsonapi.c:1165
 msgid "The input string ended unexpectedly."
 msgstr "Неожиданный конец входной строки."
 
-#: ../common/jsonapi.c:1098
+#: ../common/jsonapi.c:1167
 #, c-format
 msgid "Expected string or \"}\", but found \"%s\"."
 msgstr "Ожидалась строка или \"}\", но обнаружено \"%s\"."
 
-#: ../common/jsonapi.c:1101
+#: ../common/jsonapi.c:1170
 #, c-format
 msgid "Expected \",\" or \"}\", but found \"%s\"."
 msgstr "Ожидалась \",\" или \"}\", но обнаружено \"%s\"."
 
-#: ../common/jsonapi.c:1104
+#: ../common/jsonapi.c:1173
 #, c-format
 msgid "Expected string, but found \"%s\"."
 msgstr "Ожидалась строка, но обнаружено \"%s\"."
 
-#: ../common/jsonapi.c:1107
+#: ../common/jsonapi.c:1176
 #, c-format
 msgid "Token \"%s\" is invalid."
 msgstr "Ошибочный элемент текста \"%s\"."
 
-#: ../common/jsonapi.c:1110 jsonpath_scan.l:495
+#: ../common/jsonapi.c:1179 jsonpath_scan.l:597
 #, c-format
 msgid "\\u0000 cannot be converted to text."
 msgstr "\\u0000 нельзя преобразовать в текст."
 
-#: ../common/jsonapi.c:1112
+#: ../common/jsonapi.c:1181
 msgid "\"\\u\" must be followed by four hexadecimal digits."
 msgstr "За \"\\u\" должны следовать четыре шестнадцатеричные цифры."
 
-#: ../common/jsonapi.c:1115
+#: ../common/jsonapi.c:1184
 msgid ""
 "Unicode escape values cannot be used for code point values above 007F when "
 "the encoding is not UTF8."
@@ -417,14 +414,20 @@ msgstr ""
 "Спецкоды Unicode для значений выше 007F можно использовать только с "
 "кодировкой UTF8."
 
-#: ../common/jsonapi.c:1117 jsonpath_scan.l:516
+#: ../common/jsonapi.c:1187
+#, c-format
+msgid ""
+"Unicode escape value could not be translated to the server's encoding %s."
+msgstr "Спецкод Unicode нельзя преобразовать в серверную кодировку %s."
+
+#: ../common/jsonapi.c:1190 jsonpath_scan.l:630
 #, c-format
 msgid "Unicode high surrogate must not follow a high surrogate."
 msgstr ""
 "Старшее слово суррогата Unicode не может следовать за другим старшим словом."
 
-#: ../common/jsonapi.c:1119 jsonpath_scan.l:527 jsonpath_scan.l:537
-#: jsonpath_scan.l:579
+#: ../common/jsonapi.c:1192 jsonpath_scan.l:641 jsonpath_scan.l:651
+#: jsonpath_scan.l:702
 #, c-format
 msgid "Unicode low surrogate must follow a high surrogate."
 msgstr "Младшее слово суррогата Unicode должно следовать за старшим словом."
@@ -449,6 +452,26 @@ msgstr "подробности: "
 msgid "hint: "
 msgstr "подсказка: "
 
+#: ../common/percentrepl.c:79 ../common/percentrepl.c:85
+#: ../common/percentrepl.c:118 ../common/percentrepl.c:124
+#: postmaster/postmaster.c:2208 utils/misc/guc.c:3118 utils/misc/guc.c:3154
+#: utils/misc/guc.c:3224 utils/misc/guc.c:4547 utils/misc/guc.c:6721
+#: utils/misc/guc.c:6762
+#, c-format
+msgid "invalid value for parameter \"%s\": \"%s\""
+msgstr "неверное значение для параметра \"%s\": \"%s\""
+
+# skip-rule: capital-letter-first
+#: ../common/percentrepl.c:80 ../common/percentrepl.c:86
+#, c-format
+msgid "String ends unexpectedly after escape character \"%%\"."
+msgstr "Строка неожиданно закончилась после спецсимвола \"%%\"."
+
+#: ../common/percentrepl.c:119 ../common/percentrepl.c:125
+#, c-format
+msgid "String contains unexpected placeholder \"%%%c\"."
+msgstr "Строка содержит неожиданный местозаполнитель \"%%%c\"."
+
 #: ../common/pgfnames.c:74
 #, c-format
 msgid "could not close directory \"%s\": %m"
@@ -464,65 +487,66 @@ msgstr "неверное имя слоя"
 msgid "Valid fork names are \"main\", \"fsm\", \"vm\", and \"init\"."
 msgstr "Допустимые имена слоёв: \"main\", \"fsm\", \"vm\" и \"init\"."
 
-#: ../common/restricted_token.c:64 libpq/auth.c:1368 libpq/auth.c:2400
-#, c-format
-msgid "could not load library \"%s\": error code %lu"
-msgstr "не удалось загрузить библиотеку \"%s\" (код ошибки: %lu)"
-
-#: ../common/restricted_token.c:73
-#, c-format
-msgid "cannot create restricted tokens on this platform: error code %lu"
-msgstr "в этой ОС нельзя создавать ограниченные маркеры (код ошибки: %lu)"
-
-#: ../common/restricted_token.c:82
+#: ../common/restricted_token.c:60
 #, c-format
 msgid "could not open process token: error code %lu"
 msgstr "не удалось открыть маркер процесса (код ошибки: %lu)"
 
-#: ../common/restricted_token.c:97
+#: ../common/restricted_token.c:74
 #, c-format
 msgid "could not allocate SIDs: error code %lu"
 msgstr "не удалось подготовить структуры SID (код ошибки: %lu)"
 
-#: ../common/restricted_token.c:119
+#: ../common/restricted_token.c:94
 #, c-format
 msgid "could not create restricted token: error code %lu"
 msgstr "не удалось создать ограниченный маркер (код ошибки: %lu)"
 
-#: ../common/restricted_token.c:140
+#: ../common/restricted_token.c:115
 #, c-format
 msgid "could not start process for command \"%s\": error code %lu"
 msgstr "не удалось запустить процесс для команды \"%s\" (код ошибки: %lu)"
 
-#: ../common/restricted_token.c:178
+#: ../common/restricted_token.c:153
 #, c-format
 msgid "could not re-execute with restricted token: error code %lu"
 msgstr "не удалось перезапуститься с ограниченным маркером (код ошибки: %lu)"
 
-#: ../common/restricted_token.c:193
+#: ../common/restricted_token.c:168
 #, c-format
 msgid "could not get exit code from subprocess: error code %lu"
 msgstr "не удалось получить код выхода от подпроцесса (код ошибки: %lu)"
 
-#: ../common/rmtree.c:79 backup/basebackup.c:1100 backup/basebackup.c:1276
+#: ../common/rmtree.c:95 access/heap/rewriteheap.c:1248
+#: access/transam/twophase.c:1704 access/transam/xlogarchive.c:120
+#: access/transam/xlogarchive.c:393 postmaster/postmaster.c:1143
+#: postmaster/syslogger.c:1537 replication/logical/origin.c:591
+#: replication/logical/reorderbuffer.c:4526
+#: replication/logical/snapbuild.c:1691 replication/logical/snapbuild.c:2125
+#: replication/slot.c:1909 storage/file/fd.c:832 storage/file/fd.c:3325
+#: storage/file/fd.c:3387 storage/file/reinit.c:262 storage/ipc/dsm.c:316
+#: storage/smgr/md.c:383 storage/smgr/md.c:442 storage/sync/sync.c:248
+#: utils/time/snapmgr.c:1608
 #, c-format
-msgid "could not stat file or directory \"%s\": %m"
-msgstr "не удалось получить информацию о файле или каталоге \"%s\": %m"
+msgid "could not remove file \"%s\": %m"
+msgstr "не удалось стереть файл \"%s\": %m"
 
-#: ../common/rmtree.c:101 ../common/rmtree.c:113
+#: ../common/rmtree.c:122 commands/tablespace.c:773 commands/tablespace.c:786
+#: commands/tablespace.c:821 commands/tablespace.c:911 storage/file/fd.c:3317
+#: storage/file/fd.c:3726
 #, c-format
-msgid "could not remove file or directory \"%s\": %m"
-msgstr "ошибка при удалении файла или каталога \"%s\": %m"
+msgid "could not remove directory \"%s\": %m"
+msgstr "ошибка при удалении каталога \"%s\": %m"
 
-#: ../common/scram-common.c:260
+#: ../common/scram-common.c:271
 msgid "could not encode salt"
 msgstr "не удалось закодировать соль"
 
-#: ../common/scram-common.c:276
+#: ../common/scram-common.c:287
 msgid "could not encode stored key"
 msgstr "не удалось закодировать сохранённый ключ"
 
-#: ../common/scram-common.c:293
+#: ../common/scram-common.c:304
 msgid "could not encode server key"
 msgstr "не удалось закодировать ключ сервера"
 
@@ -549,7 +573,7 @@ msgstr ""
 msgid "could not look up effective user ID %ld: %s"
 msgstr "выяснить эффективный идентификатор пользователя (%ld) не удалось: %s"
 
-#: ../common/username.c:45 libpq/auth.c:1900
+#: ../common/username.c:45 libpq/auth.c:1881
 msgid "user does not exist"
 msgstr "пользователь не существует"
 
@@ -558,86 +582,86 @@ msgstr "пользователь не существует"
 msgid "user name lookup failure: error code %lu"
 msgstr "распознать имя пользователя не удалось (код ошибки: %lu)"
 
-#: ../common/wait_error.c:45
+#: ../common/wait_error.c:55
 #, c-format
 msgid "command not executable"
 msgstr "неисполняемая команда"
 
-#: ../common/wait_error.c:49
+#: ../common/wait_error.c:59
 #, c-format
 msgid "command not found"
 msgstr "команда не найдена"
 
-#: ../common/wait_error.c:54
+#: ../common/wait_error.c:64
 #, c-format
 msgid "child process exited with exit code %d"
 msgstr "дочерний процесс завершился с кодом возврата %d"
 
-#: ../common/wait_error.c:62
+#: ../common/wait_error.c:72
 #, c-format
 msgid "child process was terminated by exception 0x%X"
 msgstr "дочерний процесс прерван исключением 0x%X"
 
-#: ../common/wait_error.c:66
+#: ../common/wait_error.c:76
 #, c-format
 msgid "child process was terminated by signal %d: %s"
 msgstr "дочерний процесс завершён по сигналу %d: %s"
 
-#: ../common/wait_error.c:72
+#: ../common/wait_error.c:82
 #, c-format
 msgid "child process exited with unrecognized status %d"
 msgstr "дочерний процесс завершился с нераспознанным состоянием %d"
 
-#: ../port/chklocale.c:306
+#: ../port/chklocale.c:283
 #, c-format
 msgid "could not determine encoding for codeset \"%s\""
 msgstr "не удалось определить кодировку для набора символов \"%s\""
 
-#: ../port/chklocale.c:427 ../port/chklocale.c:433
+#: ../port/chklocale.c:404 ../port/chklocale.c:410
 #, c-format
 msgid "could not determine encoding for locale \"%s\": codeset is \"%s\""
 msgstr ""
 "не удалось определить кодировку для локали \"%s\": набор символов - \"%s\""
 
-#: ../port/dirmod.c:218
+#: ../port/dirmod.c:284
 #, c-format
 msgid "could not set junction for \"%s\": %s"
 msgstr "не удалось создать связь для каталога \"%s\": %s"
 
-#: ../port/dirmod.c:221
+#: ../port/dirmod.c:287
 #, c-format
 msgid "could not set junction for \"%s\": %s\n"
 msgstr "не удалось создать связь для каталога \"%s\": %s\n"
 
-#: ../port/dirmod.c:295
+#: ../port/dirmod.c:364
 #, c-format
 msgid "could not get junction for \"%s\": %s"
 msgstr "не удалось получить связь для каталога \"%s\": %s"
 
-#: ../port/dirmod.c:298
+#: ../port/dirmod.c:367
 #, c-format
 msgid "could not get junction for \"%s\": %s\n"
 msgstr "не удалось получить связь для каталога \"%s\": %s\n"
 
-#: ../port/open.c:117
+#: ../port/open.c:115
 #, c-format
 msgid "could not open file \"%s\": %s"
 msgstr "не удалось открыть файл \"%s\": %s"
 
-#: ../port/open.c:118
+#: ../port/open.c:116
 msgid "lock violation"
 msgstr "нарушение блокировки"
 
-#: ../port/open.c:118
+#: ../port/open.c:116
 msgid "sharing violation"
 msgstr "нарушение совместного доступа"
 
-#: ../port/open.c:119
+#: ../port/open.c:117
 #, c-format
 msgid "Continuing to retry for 30 seconds."
 msgstr "Попытки будут продолжены в течение 30 секунд."
 
-#: ../port/open.c:120
+#: ../port/open.c:118
 #, c-format
 msgid ""
 "You might have antivirus, backup, or similar software interfering with the "
@@ -656,12 +680,12 @@ msgstr "не удалось определить текущий рабочий 
 msgid "operating system error %d"
 msgstr "ошибка ОС %d"
 
-#: ../port/thread.c:100 ../port/thread.c:136
+#: ../port/thread.c:50 ../port/thread.c:86
 #, c-format
 msgid "could not look up local user ID %d: %s"
 msgstr "найти локального пользователя по идентификатору (%d) не удалось: %s"
 
-#: ../port/thread.c:105 ../port/thread.c:141
+#: ../port/thread.c:55 ../port/thread.c:91
 #, c-format
 msgid "local user with ID %d does not exist"
 msgstr "локальный пользователь с ID %d не существует"
@@ -683,7 +707,7 @@ msgid "could not check access token membership: error code %lu\n"
 msgstr ""
 "не удалось проверить вхождение в маркере безопасности (код ошибки: %lu)\n"
 
-#: access/brin/brin.c:214
+#: access/brin/brin.c:216
 #, c-format
 msgid ""
 "request for BRIN range summarization for index \"%s\" page %u was not "
@@ -692,65 +716,66 @@ msgstr ""
 "запрос на расчёт сводки диапазона BRIN для индекса \"%s\" страницы %u не был "
 "записан"
 
-#: access/brin/brin.c:1018 access/brin/brin.c:1119 access/gin/ginfast.c:1038
-#: access/transam/xlogfuncs.c:165 access/transam/xlogfuncs.c:192
-#: access/transam/xlogfuncs.c:231 access/transam/xlogfuncs.c:252
-#: access/transam/xlogfuncs.c:273 access/transam/xlogfuncs.c:343
-#: access/transam/xlogfuncs.c:401
+#: access/brin/brin.c:1036 access/brin/brin.c:1137 access/gin/ginfast.c:1040
+#: access/transam/xlogfuncs.c:189 access/transam/xlogfuncs.c:214
+#: access/transam/xlogfuncs.c:247 access/transam/xlogfuncs.c:286
+#: access/transam/xlogfuncs.c:307 access/transam/xlogfuncs.c:328
+#: access/transam/xlogfuncs.c:398 access/transam/xlogfuncs.c:456
 #, c-format
 msgid "recovery is in progress"
 msgstr "идёт процесс восстановления"
 
-#: access/brin/brin.c:1019 access/brin/brin.c:1120
+#: access/brin/brin.c:1037 access/brin/brin.c:1138
 #, c-format
 msgid "BRIN control functions cannot be executed during recovery."
 msgstr "Функции управления BRIN нельзя использовать в процессе восстановления."
 
-#: access/brin/brin.c:1024 access/brin/brin.c:1125
+#: access/brin/brin.c:1042 access/brin/brin.c:1143
 #, c-format
 msgid "block number out of range: %lld"
 msgstr "номер блока вне диапазона: %lld"
 
-#: access/brin/brin.c:1068 access/brin/brin.c:1151
+#: access/brin/brin.c:1086 access/brin/brin.c:1169
 #, c-format
 msgid "\"%s\" is not a BRIN index"
 msgstr "\"%s\" - это не индекс BRIN"
 
-#: access/brin/brin.c:1084 access/brin/brin.c:1167
+#: access/brin/brin.c:1102 access/brin/brin.c:1185
 #, c-format
 msgid "could not open parent table of index \"%s\""
 msgstr "не удалось открыть родительскую таблицу индекса \"%s\""
 
 #: access/brin/brin_bloom.c:750 access/brin/brin_bloom.c:792
-#: access/brin/brin_minmax_multi.c:3012 access/brin/brin_minmax_multi.c:3155
+#: access/brin/brin_minmax_multi.c:3011 access/brin/brin_minmax_multi.c:3148
 #: statistics/dependencies.c:663 statistics/dependencies.c:716
 #: statistics/mcv.c:1484 statistics/mcv.c:1515 statistics/mvdistinct.c:344
 #: statistics/mvdistinct.c:397 utils/adt/pseudotypes.c:43
-#: utils/adt/pseudotypes.c:77 utils/adt/pseudotypes.c:252
+#: utils/adt/pseudotypes.c:77 utils/adt/tsgistidx.c:93
 #, c-format
 msgid "cannot accept a value of type %s"
 msgstr "значение типа %s нельзя ввести"
 
 #: access/brin/brin_minmax_multi.c:2171 access/brin/brin_minmax_multi.c:2178
-#: access/brin/brin_minmax_multi.c:2185 utils/adt/timestamp.c:938
-#: utils/adt/timestamp.c:1509 utils/adt/timestamp.c:2761
-#: utils/adt/timestamp.c:2778 utils/adt/timestamp.c:2831
-#: utils/adt/timestamp.c:2870 utils/adt/timestamp.c:3115
-#: utils/adt/timestamp.c:3120 utils/adt/timestamp.c:3125
-#: utils/adt/timestamp.c:3175 utils/adt/timestamp.c:3182
-#: utils/adt/timestamp.c:3189 utils/adt/timestamp.c:3209
-#: utils/adt/timestamp.c:3216 utils/adt/timestamp.c:3223
-#: utils/adt/timestamp.c:3253 utils/adt/timestamp.c:3261
-#: utils/adt/timestamp.c:3305 utils/adt/timestamp.c:3731
-#: utils/adt/timestamp.c:3855 utils/adt/timestamp.c:4405
+#: access/brin/brin_minmax_multi.c:2185 utils/adt/timestamp.c:941
+#: utils/adt/timestamp.c:1518 utils/adt/timestamp.c:2708
+#: utils/adt/timestamp.c:2778 utils/adt/timestamp.c:2795
+#: utils/adt/timestamp.c:2848 utils/adt/timestamp.c:2887
+#: utils/adt/timestamp.c:3184 utils/adt/timestamp.c:3189
+#: utils/adt/timestamp.c:3194 utils/adt/timestamp.c:3244
+#: utils/adt/timestamp.c:3251 utils/adt/timestamp.c:3258
+#: utils/adt/timestamp.c:3278 utils/adt/timestamp.c:3285
+#: utils/adt/timestamp.c:3292 utils/adt/timestamp.c:3322
+#: utils/adt/timestamp.c:3330 utils/adt/timestamp.c:3374
+#: utils/adt/timestamp.c:3796 utils/adt/timestamp.c:3920
+#: utils/adt/timestamp.c:4440
 #, c-format
 msgid "interval out of range"
 msgstr "interval вне диапазона"
 
 #: access/brin/brin_pageops.c:76 access/brin/brin_pageops.c:362
-#: access/brin/brin_pageops.c:848 access/gin/ginentrypage.c:110
-#: access/gist/gist.c:1442 access/spgist/spgdoinsert.c:2001
-#: access/spgist/spgdoinsert.c:2278
+#: access/brin/brin_pageops.c:852 access/gin/ginentrypage.c:110
+#: access/gist/gist.c:1442 access/spgist/spgdoinsert.c:2002
+#: access/spgist/spgdoinsert.c:2279
 #, c-format
 msgid "index row size %zu exceeds maximum %zu for index \"%s\""
 msgstr ""
@@ -761,7 +786,7 @@ msgstr ""
 msgid "corrupted BRIN index: inconsistent range map"
 msgstr "испорченный индекс BRIN: несогласованность в карте диапазонов"
 
-#: access/brin/brin_revmap.c:602
+#: access/brin/brin_revmap.c:593
 #, c-format
 msgid "unexpected page type 0x%04X in BRIN index \"%s\" block %u"
 msgstr "неожиданный тип страницы 0x%04X в BRIN-индексе \"%s\" (блок: %u)"
@@ -865,12 +890,12 @@ msgid ""
 msgstr ""
 "Число возвращённых столбцов (%d) не соответствует ожидаемому числу (%d)."
 
-#: access/common/attmap.c:229 access/common/attmap.c:241
+#: access/common/attmap.c:234 access/common/attmap.c:246
 #, c-format
 msgid "could not convert row type"
 msgstr "не удалось преобразовать тип строки"
 
-#: access/common/attmap.c:230
+#: access/common/attmap.c:235
 #, c-format
 msgid ""
 "Attribute \"%s\" of type %s does not match corresponding attribute of type "
@@ -878,12 +903,12 @@ msgid ""
 msgstr ""
 "Атрибут \"%s\" типа %s несовместим с соответствующим атрибутом типа %s."
 
-#: access/common/attmap.c:242
+#: access/common/attmap.c:247
 #, c-format
 msgid "Attribute \"%s\" of type %s does not exist in type %s."
 msgstr "Атрибут \"%s\" типа %s не существует в типе %s."
 
-#: access/common/heaptuple.c:1036 access/common/heaptuple.c:1371
+#: access/common/heaptuple.c:1124 access/common/heaptuple.c:1459
 #, c-format
 msgid "number of columns (%d) exceeds limit (%d)"
 msgstr "число столбцов (%d) превышает предел (%d)"
@@ -893,13 +918,13 @@ msgstr "число столбцов (%d) превышает предел (%d)"
 msgid "number of index columns (%d) exceeds limit (%d)"
 msgstr "число столбцов индекса (%d) превышает предел (%d)"
 
-#: access/common/indextuple.c:209 access/spgist/spgutils.c:958
+#: access/common/indextuple.c:209 access/spgist/spgutils.c:950
 #, c-format
 msgid "index row requires %zu bytes, maximum size is %zu"
 msgstr "строка индекса требует байт: %zu, при максимуме: %zu"
 
-#: access/common/printtup.c:292 tcop/fastpath.c:106 tcop/fastpath.c:453
-#: tcop/postgres.c:1921
+#: access/common/printtup.c:292 tcop/fastpath.c:107 tcop/fastpath.c:454
+#: tcop/postgres.c:1944
 #, c-format
 msgid "unsupported format code: %d"
 msgstr "неподдерживаемый код формата: %d"
@@ -917,78 +942,94 @@ msgstr "Допускаются только значения \"local\" и \"casc
 msgid "user-defined relation parameter types limit exceeded"
 msgstr "превышен предел пользовательских типов реляционных параметров"
 
-#: access/common/reloptions.c:1234
+#: access/common/reloptions.c:1233
 #, c-format
 msgid "RESET must not include values for parameters"
 msgstr "В RESET не должно передаваться значение параметров"
 
-#: access/common/reloptions.c:1266
+#: access/common/reloptions.c:1265
 #, c-format
 msgid "unrecognized parameter namespace \"%s\""
 msgstr "нераспознанное пространство имён параметров \"%s\""
 
-#: access/common/reloptions.c:1303 utils/misc/guc.c:12986
+#: access/common/reloptions.c:1302 commands/variable.c:1167
 #, c-format
 msgid "tables declared WITH OIDS are not supported"
 msgstr "таблицы со свойством WITH OIDS не поддерживаются"
 
-#: access/common/reloptions.c:1473
+#: access/common/reloptions.c:1470
 #, c-format
 msgid "unrecognized parameter \"%s\""
 msgstr "нераспознанный параметр \"%s\""
 
-#: access/common/reloptions.c:1585
+#: access/common/reloptions.c:1582
 #, c-format
 msgid "parameter \"%s\" specified more than once"
 msgstr "параметр \"%s\" указан неоднократно"
 
-#: access/common/reloptions.c:1601
+#: access/common/reloptions.c:1598
 #, c-format
 msgid "invalid value for boolean option \"%s\": %s"
 msgstr "неверное значение для логического параметра \"%s\": %s"
 
-#: access/common/reloptions.c:1613
+#: access/common/reloptions.c:1610
 #, c-format
 msgid "invalid value for integer option \"%s\": %s"
 msgstr "неверное значение для целочисленного параметра \"%s\": %s"
 
-#: access/common/reloptions.c:1619 access/common/reloptions.c:1639
+#: access/common/reloptions.c:1616 access/common/reloptions.c:1636
 #, c-format
 msgid "value %s out of bounds for option \"%s\""
 msgstr "значение %s вне допустимых пределов параметра \"%s\""
 
-#: access/common/reloptions.c:1621
+#: access/common/reloptions.c:1618
 #, c-format
 msgid "Valid values are between \"%d\" and \"%d\"."
 msgstr "Допускаются значения только от \"%d\" до \"%d\"."
 
-#: access/common/reloptions.c:1633
+#: access/common/reloptions.c:1630
 #, c-format
 msgid "invalid value for floating point option \"%s\": %s"
 msgstr "неверное значение для численного параметра \"%s\": %s"
 
-#: access/common/reloptions.c:1641
+#: access/common/reloptions.c:1638
 #, c-format
 msgid "Valid values are between \"%f\" and \"%f\"."
 msgstr "Допускаются значения только от \"%f\" до \"%f\"."
 
-#: access/common/reloptions.c:1663
+#: access/common/reloptions.c:1660
 #, c-format
 msgid "invalid value for enum option \"%s\": %s"
 msgstr "неверное значение для параметра-перечисления \"%s\": %s"
 
-#: access/common/toast_compression.c:32
+#: access/common/reloptions.c:1991
+#, c-format
+msgid "cannot specify storage parameters for a partitioned table"
+msgstr "задать параметры хранения для секционированной таблицы нельзя"
+
+#: access/common/reloptions.c:1992
+#, c-format
+msgid "Specify storage parameters for its leaf partitions instead."
+msgstr "Задайте параметры хранения для её конечных секций."
+
+#: access/common/toast_compression.c:33
 #, c-format
 msgid "compression method lz4 not supported"
 msgstr "метод сжатия lz4 не поддерживается"
 
-#: access/common/toast_compression.c:33
+#: access/common/toast_compression.c:34
 #, c-format
 msgid "This functionality requires the server to be built with lz4 support."
 msgstr "Для этой функциональности в сервере не хватает поддержки lz4."
 
-#: access/common/tupdesc.c:825 parser/parse_clause.c:773
-#: parser/parse_relation.c:1857
+#: access/common/tupdesc.c:837 commands/tablecmds.c:6953
+#: commands/tablecmds.c:12973
+#, c-format
+msgid "too many array dimensions"
+msgstr "слишком много размерностей массива"
+
+#: access/common/tupdesc.c:842 parser/parse_clause.c:772
+#: parser/parse_relation.c:1913
 #, c-format
 msgid "column \"%s\" cannot be declared SETOF"
 msgstr "столбец \"%s\" не может быть объявлен как SETOF"
@@ -1003,22 +1044,22 @@ msgstr "слишком длинный список указателей"
 msgid "Reduce maintenance_work_mem."
 msgstr "Уменьшите maintenance_work_mem."
 
-#: access/gin/ginfast.c:1039
+#: access/gin/ginfast.c:1041
 #, c-format
 msgid "GIN pending list cannot be cleaned up during recovery."
 msgstr "Очередь записей GIN нельзя очистить в процессе восстановления."
 
-#: access/gin/ginfast.c:1046
+#: access/gin/ginfast.c:1048
 #, c-format
 msgid "\"%s\" is not a GIN index"
 msgstr "\"%s\" - это не индекс GIN"
 
-#: access/gin/ginfast.c:1057
+#: access/gin/ginfast.c:1059
 #, c-format
 msgid "cannot access temporary indexes of other sessions"
 msgstr "обращаться к временным индексам других сеансов нельзя"
 
-#: access/gin/ginget.c:271 access/nbtree/nbtinsert.c:760
+#: access/gin/ginget.c:273 access/nbtree/nbtinsert.c:762
 #, c-format
 msgid "failed to re-find tuple within index \"%s\""
 msgstr "не удалось повторно найти кортеж в индексе \"%s\""
@@ -1034,9 +1075,9 @@ msgstr ""
 msgid "To fix this, do REINDEX INDEX \"%s\"."
 msgstr "Для исправления выполните REINDEX INDEX \"%s\"."
 
-#: access/gin/ginutil.c:145 executor/execExpr.c:2165
-#: utils/adt/arrayfuncs.c:3819 utils/adt/arrayfuncs.c:6488
-#: utils/adt/rowtypes.c:957
+#: access/gin/ginutil.c:146 executor/execExpr.c:2169
+#: utils/adt/arrayfuncs.c:3996 utils/adt/arrayfuncs.c:6683
+#: utils/adt/rowtypes.c:984
 #, c-format
 msgid "could not identify a comparison function for type %s"
 msgstr "не удалось найти функцию сравнения для типа %s"
@@ -1082,8 +1123,8 @@ msgstr ""
 #: access/gist/gist.c:762 access/gist/gistutil.c:801 access/gist/gistutil.c:812
 #: access/gist/gistvacuum.c:429 access/hash/hashutil.c:227
 #: access/hash/hashutil.c:238 access/hash/hashutil.c:250
-#: access/hash/hashutil.c:271 access/nbtree/nbtpage.c:810
-#: access/nbtree/nbtpage.c:821
+#: access/hash/hashutil.c:271 access/nbtree/nbtpage.c:813
+#: access/nbtree/nbtpage.c:824
 #, c-format
 msgid "Please REINDEX it."
 msgstr "Пожалуйста, выполните REINDEX для него."
@@ -1109,13 +1150,13 @@ msgstr ""
 "вторым."
 
 #: access/gist/gistutil.c:798 access/hash/hashutil.c:224
-#: access/nbtree/nbtpage.c:807
+#: access/nbtree/nbtpage.c:810
 #, c-format
 msgid "index \"%s\" contains unexpected zero page at block %u"
 msgstr "в индексе \"%s\" неожиданно оказалась нулевая страница в блоке %u"
 
 #: access/gist/gistutil.c:809 access/hash/hashutil.c:235
-#: access/hash/hashutil.c:247 access/nbtree/nbtpage.c:818
+#: access/hash/hashutil.c:247 access/nbtree/nbtpage.c:821
 #, c-format
 msgid "index \"%s\" contains corrupted page at block %u"
 msgstr "индекс \"%s\" содержит испорченную страницу в блоке %u"
@@ -1138,32 +1179,32 @@ msgstr ""
 "семейство операторов \"%s\" метода доступа %s содержит некорректное "
 "определение ORDER BY для оператора %s"
 
-#: access/hash/hashfunc.c:278 access/hash/hashfunc.c:335
-#: utils/adt/varchar.c:1003 utils/adt/varchar.c:1064
+#: access/hash/hashfunc.c:279 access/hash/hashfunc.c:333
+#: utils/adt/varchar.c:1009 utils/adt/varchar.c:1064
 #, c-format
 msgid "could not determine which collation to use for string hashing"
 msgstr ""
 "не удалось определить, какое правило сортировки использовать для хеширования "
 "строк"
 
-#: access/hash/hashfunc.c:279 access/hash/hashfunc.c:336 catalog/heap.c:668
+#: access/hash/hashfunc.c:280 access/hash/hashfunc.c:334 catalog/heap.c:668
 #: catalog/heap.c:674 commands/createas.c:206 commands/createas.c:515
-#: commands/indexcmds.c:1962 commands/tablecmds.c:17443 commands/view.c:86
-#: regex/regc_pg_locale.c:243 utils/adt/formatting.c:1690
-#: utils/adt/formatting.c:1812 utils/adt/formatting.c:1935 utils/adt/like.c:190
-#: utils/adt/like_support.c:1025 utils/adt/varchar.c:733
-#: utils/adt/varchar.c:1004 utils/adt/varchar.c:1065 utils/adt/varlena.c:1499
+#: commands/indexcmds.c:2039 commands/tablecmds.c:17462 commands/view.c:86
+#: regex/regc_pg_locale.c:243 utils/adt/formatting.c:1648
+#: utils/adt/formatting.c:1770 utils/adt/formatting.c:1893 utils/adt/like.c:191
+#: utils/adt/like_support.c:1025 utils/adt/varchar.c:739
+#: utils/adt/varchar.c:1010 utils/adt/varchar.c:1065 utils/adt/varlena.c:1518
 #, c-format
 msgid "Use the COLLATE clause to set the collation explicitly."
 msgstr "Задайте правило сортировки явно в предложении COLLATE."
 
-#: access/hash/hashinsert.c:83
+#: access/hash/hashinsert.c:86
 #, c-format
 msgid "index row size %zu exceeds hash maximum %zu"
 msgstr "размер строки индекса (%zu) больше предельного размера хеша (%zu)"
 
-#: access/hash/hashinsert.c:85 access/spgist/spgdoinsert.c:2005
-#: access/spgist/spgdoinsert.c:2282 access/spgist/spgutils.c:1019
+#: access/hash/hashinsert.c:88 access/spgist/spgdoinsert.c:2006
+#: access/spgist/spgdoinsert.c:2283 access/spgist/spgutils.c:1011
 #, c-format
 msgid "Values larger than a buffer page cannot be indexed."
 msgstr "Значения, не умещающиеся в страницу буфера, нельзя проиндексировать."
@@ -1209,38 +1250,38 @@ msgid ""
 msgstr ""
 "в семействе операторов \"%s\" метода доступа %s нет межтипового оператора(ов)"
 
-#: access/heap/heapam.c:2226
+#: access/heap/heapam.c:2027
 #, c-format
 msgid "cannot insert tuples in a parallel worker"
 msgstr "вставлять кортежи в параллельном исполнителе нельзя"
 
-#: access/heap/heapam.c:2697
+#: access/heap/heapam.c:2546
 #, c-format
 msgid "cannot delete tuples during a parallel operation"
 msgstr "удалять кортежи во время параллельных операций нельзя"
 
-#: access/heap/heapam.c:2743
+#: access/heap/heapam.c:2593
 #, c-format
 msgid "attempted to delete invisible tuple"
 msgstr "попытка удаления невидимого кортежа"
 
-#: access/heap/heapam.c:3183 access/heap/heapam.c:6025
+#: access/heap/heapam.c:3036 access/heap/heapam.c:5903
 #, c-format
 msgid "cannot update tuples during a parallel operation"
 msgstr "изменять кортежи во время параллельных операций нельзя"
 
-#: access/heap/heapam.c:3307
+#: access/heap/heapam.c:3164
 #, c-format
 msgid "attempted to update invisible tuple"
 msgstr "попытка изменения невидимого кортежа"
 
-#: access/heap/heapam.c:4669 access/heap/heapam.c:4707
-#: access/heap/heapam.c:4972 access/heap/heapam_handler.c:456
+#: access/heap/heapam.c:4551 access/heap/heapam.c:4589
+#: access/heap/heapam.c:4854 access/heap/heapam_handler.c:467
 #, c-format
 msgid "could not obtain lock on row in relation \"%s\""
 msgstr "не удалось получить блокировку строки в таблице \"%s\""
 
-#: access/heap/heapam_handler.c:401
+#: access/heap/heapam_handler.c:412
 #, c-format
 msgid ""
 "tuple to be locked was already moved to another partition due to concurrent "
@@ -1249,79 +1290,66 @@ msgstr ""
 "кортеж, подлежащий блокировке, был перемещён в другую секцию в результате "
 "параллельного изменения"
 
-#: access/heap/hio.c:360 access/heap/rewriteheap.c:660
+#: access/heap/hio.c:536 access/heap/rewriteheap.c:659
 #, c-format
 msgid "row is too big: size %zu, maximum size %zu"
 msgstr "размер строки (%zu) превышает предел (%zu)"
 
-#: access/heap/rewriteheap.c:920
+#: access/heap/rewriteheap.c:919
 #, c-format
 msgid "could not write to file \"%s\", wrote %d of %d: %m"
 msgstr "не удалось записать в файл \"%s\" (записано байт: %d из %d): %m"
 
-#: access/heap/rewriteheap.c:1013 access/heap/rewriteheap.c:1131
-#: access/transam/timeline.c:329 access/transam/timeline.c:485
-#: access/transam/xlog.c:2963 access/transam/xlog.c:3176
-#: access/transam/xlog.c:3964 access/transam/xlog.c:8653
-#: access/transam/xlogfuncs.c:594 backup/basebackup_server.c:149
-#: backup/basebackup_server.c:242 commands/dbcommands.c:517
-#: postmaster/postmaster.c:4604 postmaster/postmaster.c:5625
-#: replication/logical/origin.c:587 replication/slot.c:1631
-#: storage/file/copydir.c:167 storage/smgr/md.c:222 utils/time/snapmgr.c:1261
+#: access/heap/rewriteheap.c:1011 access/heap/rewriteheap.c:1128
+#: access/transam/timeline.c:329 access/transam/timeline.c:481
+#: access/transam/xlog.c:2971 access/transam/xlog.c:3162
+#: access/transam/xlog.c:3938 access/transam/xlog.c:8744
+#: access/transam/xlogfuncs.c:702 backup/basebackup_server.c:151
+#: backup/basebackup_server.c:244 commands/dbcommands.c:518
+#: postmaster/postmaster.c:4554 postmaster/postmaster.c:5557
+#: replication/logical/origin.c:603 replication/slot.c:1777
+#: storage/file/copydir.c:157 storage/smgr/md.c:232 utils/time/snapmgr.c:1263
 #, c-format
 msgid "could not create file \"%s\": %m"
 msgstr "не удалось создать файл \"%s\": %m"
 
-#: access/heap/rewriteheap.c:1141
+#: access/heap/rewriteheap.c:1138
 #, c-format
 msgid "could not truncate file \"%s\" to %u: %m"
 msgstr "не удалось обрезать файл \"%s\" до нужного размера (%u): %m"
 
-#: access/heap/rewriteheap.c:1159 access/transam/timeline.c:384
-#: access/transam/timeline.c:424 access/transam/timeline.c:502
-#: access/transam/xlog.c:3035 access/transam/xlog.c:3232
-#: access/transam/xlog.c:3976 commands/dbcommands.c:529
-#: postmaster/postmaster.c:4614 postmaster/postmaster.c:4624
-#: replication/logical/origin.c:599 replication/logical/origin.c:641
-#: replication/logical/origin.c:660 replication/logical/snapbuild.c:1736
-#: replication/slot.c:1666 storage/file/buffile.c:537
-#: storage/file/copydir.c:207 utils/init/miscinit.c:1441
-#: utils/init/miscinit.c:1452 utils/init/miscinit.c:1460 utils/misc/guc.c:8721
-#: utils/misc/guc.c:8752 utils/misc/guc.c:10741 utils/misc/guc.c:10755
-#: utils/time/snapmgr.c:1266 utils/time/snapmgr.c:1273
+#: access/heap/rewriteheap.c:1156 access/transam/timeline.c:384
+#: access/transam/timeline.c:424 access/transam/timeline.c:498
+#: access/transam/xlog.c:3021 access/transam/xlog.c:3218
+#: access/transam/xlog.c:3950 commands/dbcommands.c:530
+#: postmaster/postmaster.c:4564 postmaster/postmaster.c:4574
+#: replication/logical/origin.c:615 replication/logical/origin.c:657
+#: replication/logical/origin.c:676 replication/logical/snapbuild.c:1767
+#: replication/slot.c:1812 storage/file/buffile.c:545
+#: storage/file/copydir.c:197 utils/init/miscinit.c:1605
+#: utils/init/miscinit.c:1616 utils/init/miscinit.c:1624 utils/misc/guc.c:4331
+#: utils/misc/guc.c:4362 utils/misc/guc.c:5490 utils/misc/guc.c:5508
+#: utils/time/snapmgr.c:1268 utils/time/snapmgr.c:1275
 #, c-format
 msgid "could not write to file \"%s\": %m"
 msgstr "не удалось записать в файл \"%s\": %m"
 
-#: access/heap/rewriteheap.c:1249 access/transam/twophase.c:1705
-#: access/transam/xlogarchive.c:119 access/transam/xlogarchive.c:429
-#: postmaster/postmaster.c:1157 postmaster/syslogger.c:1537
-#: replication/logical/origin.c:575 replication/logical/reorderbuffer.c:4421
-#: replication/logical/snapbuild.c:1681 replication/logical/snapbuild.c:2097
-#: replication/slot.c:1763 storage/file/fd.c:795 storage/file/fd.c:3263
-#: storage/file/fd.c:3325 storage/file/reinit.c:262 storage/ipc/dsm.c:317
-#: storage/smgr/md.c:370 storage/smgr/md.c:429 storage/sync/sync.c:250
-#: utils/time/snapmgr.c:1606
-#, c-format
-msgid "could not remove file \"%s\": %m"
-msgstr "не удалось стереть файл \"%s\": %m"
-
-#: access/heap/vacuumlazy.c:407
+#: access/heap/vacuumlazy.c:482
 #, c-format
 msgid "aggressively vacuuming \"%s.%s.%s\""
 msgstr "агрессивная очистка \"%s.%s.%s\""
 
-#: access/heap/vacuumlazy.c:412
+#: access/heap/vacuumlazy.c:487
 #, c-format
 msgid "vacuuming \"%s.%s.%s\""
 msgstr "очистка \"%s.%s.%s\""
 
-#: access/heap/vacuumlazy.c:663
+#: access/heap/vacuumlazy.c:635
 #, c-format
 msgid "finished vacuuming \"%s.%s.%s\": index scans: %d\n"
 msgstr "закончена очистка \"%s.%s.%s\": сканирований индекса: %d\n"
 
-#: access/heap/vacuumlazy.c:674
+#: access/heap/vacuumlazy.c:646
 #, c-format
 msgid ""
 "automatic aggressive vacuum to prevent wraparound of table \"%s.%s.%s\": "
@@ -1330,7 +1358,7 @@ msgstr ""
 "автоматическая агрессивная очистка, предотвращающая зацикливание, таблицы "
 "\"%s.%s.%s\": сканирований индекса: %d\n"
 
-#: access/heap/vacuumlazy.c:676
+#: access/heap/vacuumlazy.c:648
 #, c-format
 msgid ""
 "automatic vacuum to prevent wraparound of table \"%s.%s.%s\": index scans: "
@@ -1339,27 +1367,27 @@ msgstr ""
 "автоматическая очистка, предотвращающая зацикливание, таблицы \"%s.%s.%s\": "
 "сканирований индекса: %d\n"
 
-#: access/heap/vacuumlazy.c:681
+#: access/heap/vacuumlazy.c:653
 #, c-format
 msgid "automatic aggressive vacuum of table \"%s.%s.%s\": index scans: %d\n"
 msgstr ""
 "автоматическая агрессивная очистка таблицы \"%s.%s.%s\": сканирований "
 "индекса: %d\n"
 
-#: access/heap/vacuumlazy.c:683
+#: access/heap/vacuumlazy.c:655
 #, c-format
 msgid "automatic vacuum of table \"%s.%s.%s\": index scans: %d\n"
 msgstr ""
 "автоматическая очистка таблицы \"%s.%s.%s\": сканирований индекса: %d\n"
 
-#: access/heap/vacuumlazy.c:690
+#: access/heap/vacuumlazy.c:662
 #, c-format
 msgid "pages: %u removed, %u remain, %u scanned (%.2f%% of total)\n"
 msgstr ""
 "страниц удалено: %u, осталось: %u, просканировано: %u (%.2f%% от общего "
 "числа)\n"
 
-#: access/heap/vacuumlazy.c:697
+#: access/heap/vacuumlazy.c:669
 #, c-format
 msgid ""
 "tuples: %lld removed, %lld remain, %lld are dead but not yet removable\n"
@@ -1367,7 +1395,7 @@ msgstr ""
 "версий строк: удалено: %lld, осталось: %lld, «мёртвых», но ещё не подлежащих "
 "удалению: %lld\n"
 
-#: access/heap/vacuumlazy.c:703
+#: access/heap/vacuumlazy.c:675
 #, c-format
 msgid ""
 "tuples missed: %lld dead from %u pages not removed due to cleanup lock "
@@ -1376,36 +1404,43 @@ msgstr ""
 "из-за конфликта блокировки очистки пропущено версий строк: %lld, на "
 "страницах: %u\n"
 
-#: access/heap/vacuumlazy.c:708
+#: access/heap/vacuumlazy.c:681
 #, c-format
 msgid "removable cutoff: %u, which was %d XIDs old when operation ended\n"
 msgstr ""
 "XID отсечки удаления: %u, на момент завершения операции он имел возраст: %d "
 "XID\n"
 
-#: access/heap/vacuumlazy.c:714
+#: access/heap/vacuumlazy.c:688
 #, c-format
 msgid "new relfrozenxid: %u, which is %d XIDs ahead of previous value\n"
 msgstr ""
 "новое значение relfrozenxid: %u, оно продвинулось вперёд от предыдущего "
 "значения на %d XID\n"
 
-#: access/heap/vacuumlazy.c:721
+#: access/heap/vacuumlazy.c:696
 #, c-format
 msgid "new relminmxid: %u, which is %d MXIDs ahead of previous value\n"
 msgstr ""
 "новое значение relminmxid: %u, оно продвинулось вперёд от предыдущего "
 "значения на %d MXID\n"
 
-#: access/heap/vacuumlazy.c:727
+#: access/heap/vacuumlazy.c:699
+#, c-format
+msgid "frozen: %u pages from table (%.2f%% of total) had %lld tuples frozen\n"
+msgstr ""
+"замораживание: на страницах таблицы (%u, %.2f%% от общего числа) заморожено "
+"кортежей: %lld\n"
+
+#: access/heap/vacuumlazy.c:707
 msgid "index scan not needed: "
 msgstr "сканирование индекса не требуется: "
 
-#: access/heap/vacuumlazy.c:729
+#: access/heap/vacuumlazy.c:709
 msgid "index scan needed: "
 msgstr "сканирование индекса требуется: "
 
-#: access/heap/vacuumlazy.c:731
+#: access/heap/vacuumlazy.c:711
 #, c-format
 msgid ""
 "%u pages from table (%.2f%% of total) had %lld dead item identifiers "
@@ -1414,22 +1449,22 @@ msgstr ""
 "на страницах таблицы (%u, %.2f%% от общего числа) удалено мёртвых "
 "идентификаторов элементов: %lld\n"
 
-#: access/heap/vacuumlazy.c:736
+#: access/heap/vacuumlazy.c:716
 msgid "index scan bypassed: "
 msgstr "сканирование индекса пропущено: "
 
-#: access/heap/vacuumlazy.c:738
+#: access/heap/vacuumlazy.c:718
 msgid "index scan bypassed by failsafe: "
 msgstr "сканирование индекса пропущено из-за защиты: "
 
-#: access/heap/vacuumlazy.c:740
+#: access/heap/vacuumlazy.c:720
 #, c-format
 msgid "%u pages from table (%.2f%% of total) have %lld dead item identifiers\n"
 msgstr ""
 "на страницах таблицы (%u, %.2f%% от общего числа) находится мёртвых "
 "идентификаторов элементов: %lld\n"
 
-#: access/heap/vacuumlazy.c:755
+#: access/heap/vacuumlazy.c:735
 #, c-format
 msgid ""
 "index \"%s\": pages: %u in total, %u newly deleted, %u currently deleted, %u "
@@ -1438,43 +1473,43 @@ msgstr ""
 "индекс \"%s\": всего страниц: %u, сейчас удалено: %u, удалено на данный "
 "момент: %u, свободно: %u\n"
 
-#: access/heap/vacuumlazy.c:767 commands/analyze.c:796
+#: access/heap/vacuumlazy.c:747 commands/analyze.c:796
 #, c-format
 msgid "I/O timings: read: %.3f ms, write: %.3f ms\n"
 msgstr "время ввода/вывода: чтение: %.3f мс, запись: %.3f мс\n"
 
-#: access/heap/vacuumlazy.c:777 commands/analyze.c:799
+#: access/heap/vacuumlazy.c:757 commands/analyze.c:799
 #, c-format
 msgid "avg read rate: %.3f MB/s, avg write rate: %.3f MB/s\n"
 msgstr ""
 "средняя скорость чтения: %.3f МБ/с, средняя скорость записи: %.3f МБ/с\n"
 
-#: access/heap/vacuumlazy.c:780 commands/analyze.c:801
+#: access/heap/vacuumlazy.c:760 commands/analyze.c:801
 #, c-format
 msgid "buffer usage: %lld hits, %lld misses, %lld dirtied\n"
 msgstr ""
 "использование буфера: попаданий: %lld, промахов: %lld, «грязных» записей: "
 "%lld\n"
 
-#: access/heap/vacuumlazy.c:785
+#: access/heap/vacuumlazy.c:765
 #, c-format
 msgid "WAL usage: %lld records, %lld full page images, %llu bytes\n"
 msgstr ""
 "использование WAL: записей: %lld, полных образов страниц: %lld, байт: %llu\n"
 
-#: access/heap/vacuumlazy.c:789 commands/analyze.c:805
+#: access/heap/vacuumlazy.c:769 commands/analyze.c:805
 #, c-format
 msgid "system usage: %s"
 msgstr "нагрузка системы: %s"
 
-#: access/heap/vacuumlazy.c:2463
+#: access/heap/vacuumlazy.c:2482
 #, c-format
 msgid "table \"%s\": removed %lld dead item identifiers in %u pages"
 msgstr ""
 "таблица \"%s\": удалено мёртвых идентификаторов элементов: %lld, на "
 "страницах: %u"
 
-#: access/heap/vacuumlazy.c:2629
+#: access/heap/vacuumlazy.c:2642
 #, c-format
 msgid ""
 "bypassing nonessential maintenance of table \"%s.%s.%s\" as a failsafe after "
@@ -1483,12 +1518,12 @@ msgstr ""
 "несущественная операция обслуживания таблицы \"%s.%s.%s\" пропускается в "
 "качестве меры защиты после %d сканирований индекса"
 
-#: access/heap/vacuumlazy.c:2634
+#: access/heap/vacuumlazy.c:2645
 #, c-format
 msgid "The table's relfrozenxid or relminmxid is too far in the past."
 msgstr "Значение relfrozenxid или relminmxid таблицы слишком далеко в прошлом."
 
-#: access/heap/vacuumlazy.c:2635
+#: access/heap/vacuumlazy.c:2646
 #, c-format
 msgid ""
 "Consider increasing configuration parameter \"maintenance_work_mem\" or "
@@ -1501,23 +1536,23 @@ msgstr ""
 "Также можно рассмотреть другие способы обеспечения производительности "
 "VACUUM, соответствующей скорости выделения идентификаторов транзакций."
 
-#: access/heap/vacuumlazy.c:2878
+#: access/heap/vacuumlazy.c:2891
 #, c-format
 msgid "\"%s\": stopping truncate due to conflicting lock request"
 msgstr "\"%s\": остановка усечения из-за конфликтующего запроса блокировки"
 
-#: access/heap/vacuumlazy.c:2948
+#: access/heap/vacuumlazy.c:2961
 #, c-format
 msgid "table \"%s\": truncated %u to %u pages"
 msgstr "таблица \"%s\": усечение (было страниц: %u, стало: %u)"
 
-#: access/heap/vacuumlazy.c:3010
+#: access/heap/vacuumlazy.c:3023
 #, c-format
 msgid "table \"%s\": suspending truncate due to conflicting lock request"
 msgstr ""
 "таблица \"%s\": приостановка усечения из-за конфликтующего запроса блокировки"
 
-#: access/heap/vacuumlazy.c:3170
+#: access/heap/vacuumlazy.c:3183
 #, c-format
 msgid ""
 "disabling parallel option of vacuum on \"%s\" --- cannot vacuum temporary "
@@ -1526,47 +1561,47 @@ msgstr ""
 "отключение параллельного режима очистки \"%s\" --- создавать временные "
 "таблицы в параллельном режиме нельзя"
 
-#: access/heap/vacuumlazy.c:3383
+#: access/heap/vacuumlazy.c:3399
 #, c-format
 msgid "while scanning block %u offset %u of relation \"%s.%s\""
 msgstr "при сканировании блока %u (смещение %u) отношения \"%s.%s\""
 
-#: access/heap/vacuumlazy.c:3386
+#: access/heap/vacuumlazy.c:3402
 #, c-format
 msgid "while scanning block %u of relation \"%s.%s\""
 msgstr "при сканировании блока %u отношения \"%s.%s\""
 
-#: access/heap/vacuumlazy.c:3390
+#: access/heap/vacuumlazy.c:3406
 #, c-format
 msgid "while scanning relation \"%s.%s\""
 msgstr "при сканировании отношения \"%s.%s\""
 
-#: access/heap/vacuumlazy.c:3398
+#: access/heap/vacuumlazy.c:3414
 #, c-format
 msgid "while vacuuming block %u offset %u of relation \"%s.%s\""
 msgstr "при очистке блока %u (смещение %u) отношения \"%s.%s\""
 
-#: access/heap/vacuumlazy.c:3401
+#: access/heap/vacuumlazy.c:3417
 #, c-format
 msgid "while vacuuming block %u of relation \"%s.%s\""
 msgstr "при очистке блока %u отношения \"%s.%s\""
 
-#: access/heap/vacuumlazy.c:3405
+#: access/heap/vacuumlazy.c:3421
 #, c-format
 msgid "while vacuuming relation \"%s.%s\""
 msgstr "при очистке отношения \"%s.%s\""
 
-#: access/heap/vacuumlazy.c:3410 commands/vacuumparallel.c:1058
+#: access/heap/vacuumlazy.c:3426 commands/vacuumparallel.c:1074
 #, c-format
 msgid "while vacuuming index \"%s\" of relation \"%s.%s\""
 msgstr "при очистке индекса \"%s\" отношения \"%s.%s\""
 
-#: access/heap/vacuumlazy.c:3415 commands/vacuumparallel.c:1064
+#: access/heap/vacuumlazy.c:3431 commands/vacuumparallel.c:1080
 #, c-format
 msgid "while cleaning up index \"%s\" of relation \"%s.%s\""
 msgstr "при уборке индекса \"%s\" отношения \"%s.%s\""
 
-#: access/heap/vacuumlazy.c:3421
+#: access/heap/vacuumlazy.c:3437
 #, c-format
 msgid "while truncating relation \"%s.%s\" to %u blocks"
 msgstr "при усечении отношения \"%s.%s\" до %u блок."
@@ -1581,45 +1616,45 @@ msgstr "метод доступа \"%s\" имеет не тип %s"
 msgid "index access method \"%s\" does not have a handler"
 msgstr "для метода доступа индекса \"%s\" не задан обработчик"
 
-#: access/index/genam.c:489
+#: access/index/genam.c:490
 #, c-format
 msgid "transaction aborted during system catalog scan"
 msgstr "транзакция прервана во время сканирования системного каталога"
 
-#: access/index/indexam.c:142 catalog/objectaddress.c:1376
-#: commands/indexcmds.c:2790 commands/tablecmds.c:271 commands/tablecmds.c:295
-#: commands/tablecmds.c:17131 commands/tablecmds.c:18910
+#: access/index/indexam.c:142 catalog/objectaddress.c:1394
+#: commands/indexcmds.c:2867 commands/tablecmds.c:272 commands/tablecmds.c:296
+#: commands/tablecmds.c:17163 commands/tablecmds.c:18935
 #, c-format
 msgid "\"%s\" is not an index"
 msgstr "\"%s\" - это не индекс"
 
-#: access/index/indexam.c:973
+#: access/index/indexam.c:979
 #, c-format
 msgid "operator class %s has no options"
 msgstr "у класса операторов %s нет параметров"
 
-#: access/nbtree/nbtinsert.c:666
+#: access/nbtree/nbtinsert.c:668
 #, c-format
 msgid "duplicate key value violates unique constraint \"%s\""
 msgstr "повторяющееся значение ключа нарушает ограничение уникальности \"%s\""
 
-#: access/nbtree/nbtinsert.c:668
+#: access/nbtree/nbtinsert.c:670
 #, c-format
 msgid "Key %s already exists."
 msgstr "Ключ \"%s\" уже существует."
 
-#: access/nbtree/nbtinsert.c:762
+#: access/nbtree/nbtinsert.c:764
 #, c-format
 msgid "This may be because of a non-immutable index expression."
 msgstr "Возможно, это вызвано переменной природой индексного выражения."
 
-#: access/nbtree/nbtpage.c:159 access/nbtree/nbtpage.c:608
-#: parser/parse_utilcmd.c:2332
+#: access/nbtree/nbtpage.c:157 access/nbtree/nbtpage.c:611
+#: parser/parse_utilcmd.c:2317
 #, c-format
 msgid "index \"%s\" is not a btree"
 msgstr "индекс \"%s\" не является b-деревом"
 
-#: access/nbtree/nbtpage.c:166 access/nbtree/nbtpage.c:615
+#: access/nbtree/nbtpage.c:164 access/nbtree/nbtpage.c:618
 #, c-format
 msgid ""
 "version mismatch in index \"%s\": file version %d, current version %d, "
@@ -1628,12 +1663,12 @@ msgstr ""
 "несовпадение версии в индексе \"%s\": версия файла: %d, версия кода: %d, "
 "минимальная поддерживаемая версия: %d"
 
-#: access/nbtree/nbtpage.c:1874
+#: access/nbtree/nbtpage.c:1866
 #, c-format
 msgid "index \"%s\" contains a half-dead internal page"
 msgstr "индекс \"%s\" содержит полумёртвую внутреннюю страницу"
 
-#: access/nbtree/nbtpage.c:1876
+#: access/nbtree/nbtpage.c:1868
 #, c-format
 msgid ""
 "This can be caused by an interrupted VACUUM in version 9.3 or older, before "
@@ -1642,7 +1677,7 @@ msgstr ""
 "Причиной тому могло быть прерывание операции VACUUM в версии 9.3 или старее, "
 "до обновления. Этот индекс нужно перестроить (REINDEX)."
 
-#: access/nbtree/nbtutils.c:2669
+#: access/nbtree/nbtutils.c:2662
 #, c-format
 msgid ""
 "index row size %zu exceeds btree version %u maximum %zu for index \"%s\""
@@ -1650,12 +1685,12 @@ msgstr ""
 "размер строки индекса (%zu) больше предельного для btree версии %u размера "
 "(%zu) (индекс \"%s\")"
 
-#: access/nbtree/nbtutils.c:2675
+#: access/nbtree/nbtutils.c:2668
 #, c-format
 msgid "Index row references tuple (%u,%u) in relation \"%s\"."
 msgstr "Строка индекса ссылается на кортеж (%u,%u) в отношении \"%s\"."
 
-#: access/nbtree/nbtutils.c:2679
+#: access/nbtree/nbtutils.c:2672
 #, c-format
 msgid ""
 "Values larger than 1/3 of a buffer page cannot be indexed.\n"
@@ -1676,7 +1711,7 @@ msgstr ""
 "в семействе операторов \"%s\" метода доступа %s нет опорной функции для "
 "типов %s и %s"
 
-#: access/spgist/spgutils.c:244
+#: access/spgist/spgutils.c:245
 #, c-format
 msgid ""
 "compress method must be defined when leaf type is different from input type"
@@ -1684,7 +1719,7 @@ msgstr ""
 "метод сжатия должен быть определён, когда тип листьев отличается от входного "
 "типа"
 
-#: access/spgist/spgutils.c:1016
+#: access/spgist/spgutils.c:1008
 #, c-format
 msgid "SP-GiST inner tuple size %zu exceeds maximum %zu"
 msgstr "внутренний размер кортежа SP-GiST (%zu) превышает максимум (%zu)"
@@ -1705,41 +1740,33 @@ msgstr ""
 "в семействе операторов \"%s\" метода доступа %s нет опорной функции %d для "
 "типа %s"
 
-#: access/table/table.c:49 access/table/table.c:83 access/table/table.c:112
-#: access/table/table.c:145 catalog/aclchk.c:1835
-#, c-format
-msgid "\"%s\" is an index"
-msgstr "\"%s\" - это индекс"
-
-#: access/table/table.c:54 access/table/table.c:88 access/table/table.c:117
-#: access/table/table.c:150 catalog/aclchk.c:1842 commands/tablecmds.c:13829
-#: commands/tablecmds.c:17140
+#: access/table/table.c:145 optimizer/util/plancat.c:145
 #, c-format
-msgid "\"%s\" is a composite type"
-msgstr "\"%s\" - это составной тип"
+msgid "cannot open relation \"%s\""
+msgstr "открыть отношение \"%s\" нельзя"
 
-#: access/table/tableam.c:266
+#: access/table/tableam.c:265
 #, c-format
 msgid "tid (%u, %u) is not valid for relation \"%s\""
 msgstr "идентификатор кортежа (%u, %u) недопустим для отношения \"%s\""
 
-#: access/table/tableamapi.c:115
+#: access/table/tableamapi.c:116
 #, c-format
 msgid "%s cannot be empty."
 msgstr "Значение %s не может быть пустым."
 
 # well-spelled: симв
-#: access/table/tableamapi.c:122 utils/misc/guc.c:12910
+#: access/table/tableamapi.c:123 access/transam/xlogrecovery.c:4774
 #, c-format
 msgid "%s is too long (maximum %d characters)."
 msgstr "Длина %s превышает предел (%d симв.)."
 
-#: access/table/tableamapi.c:145
+#: access/table/tableamapi.c:146
 #, c-format
 msgid "table access method \"%s\" does not exist"
 msgstr "табличный метод доступа \"%s\" не существует"
 
-#: access/table/tableamapi.c:150
+#: access/table/tableamapi.c:151
 #, c-format
 msgid "Table access method \"%s\" does not exist."
 msgstr "Табличный метод доступа \"%s\" не существует."
@@ -1749,29 +1776,29 @@ msgstr "Табличный метод доступа \"%s\" не существ
 msgid "sample percentage must be between 0 and 100"
 msgstr "процент выборки должен задаваться числом от 0 до 100"
 
-#: access/transam/commit_ts.c:282
+#: access/transam/commit_ts.c:279
 #, c-format
 msgid "cannot retrieve commit timestamp for transaction %u"
 msgstr "не удалось получить метку времени фиксации транзакции %u"
 
-#: access/transam/commit_ts.c:380
+#: access/transam/commit_ts.c:377
 #, c-format
 msgid "could not get commit timestamp data"
 msgstr "не удалось получить отметку времени фиксации"
 
-#: access/transam/commit_ts.c:382
+#: access/transam/commit_ts.c:379
 #, c-format
 msgid ""
 "Make sure the configuration parameter \"%s\" is set on the primary server."
 msgstr ""
 "Убедитесь, что в конфигурации ведущего сервера установлен параметр \"%s\"."
 
-#: access/transam/commit_ts.c:384
+#: access/transam/commit_ts.c:381
 #, c-format
 msgid "Make sure the configuration parameter \"%s\" is set."
 msgstr "Убедитесь, что в конфигурации установлен параметр \"%s\"."
 
-#: access/transam/multixact.c:1022
+#: access/transam/multixact.c:1023
 #, c-format
 msgid ""
 "database is not accepting commands that generate new MultiXactIds to avoid "
@@ -1780,8 +1807,8 @@ msgstr ""
 "база данных не принимает команды, создающие новые MultiXactId, во избежание "
 "потери данных из-за зацикливания в базе данных \"%s\""
 
-#: access/transam/multixact.c:1024 access/transam/multixact.c:1031
-#: access/transam/multixact.c:1055 access/transam/multixact.c:1064
+#: access/transam/multixact.c:1025 access/transam/multixact.c:1032
+#: access/transam/multixact.c:1056 access/transam/multixact.c:1065
 #, c-format
 msgid ""
 "Execute a database-wide VACUUM in that database.\n"
@@ -1792,7 +1819,7 @@ msgstr ""
 "Возможно, вам также придётся зафиксировать или откатить старые "
 "подготовленные транзакции и удалить неиспользуемые слоты репликации."
 
-#: access/transam/multixact.c:1029
+#: access/transam/multixact.c:1030
 #, c-format
 msgid ""
 "database is not accepting commands that generate new MultiXactIds to avoid "
@@ -1801,7 +1828,7 @@ msgstr ""
 "база данных не принимает команды, создающие новые MultiXactId, во избежание "
 "потери данных из-за зацикливания в базе данных с OID %u"
 
-#: access/transam/multixact.c:1050 access/transam/multixact.c:2334
+#: access/transam/multixact.c:1051 access/transam/multixact.c:2333
 #, c-format
 msgid "database \"%s\" must be vacuumed before %u more MultiXactId is used"
 msgid_plural ""
@@ -1816,7 +1843,7 @@ msgstr[2] ""
 "база данных \"%s\" должна быть очищена, прежде чем будут использованы "
 "оставшиеся MultiXactId (%u)"
 
-#: access/transam/multixact.c:1059 access/transam/multixact.c:2343
+#: access/transam/multixact.c:1060 access/transam/multixact.c:2342
 #, c-format
 msgid ""
 "database with OID %u must be vacuumed before %u more MultiXactId is used"
@@ -1832,12 +1859,12 @@ msgstr[2] ""
 "база данных с OID %u должна быть очищена, прежде чем будут использованы "
 "оставшиеся MultiXactId (%u)"
 
-#: access/transam/multixact.c:1120
+#: access/transam/multixact.c:1121
 #, c-format
 msgid "multixact \"members\" limit exceeded"
 msgstr "слишком много членов мультитранзакции"
 
-#: access/transam/multixact.c:1121
+#: access/transam/multixact.c:1122
 #, c-format
 msgid ""
 "This command would create a multixact with %u members, but the remaining "
@@ -1855,7 +1882,7 @@ msgstr[2] ""
 "Мультитранзакция, создаваемая этой командой, должна включать членов: %u, но "
 "оставшегося места хватает только для %u."
 
-#: access/transam/multixact.c:1126
+#: access/transam/multixact.c:1127
 #, c-format
 msgid ""
 "Execute a database-wide VACUUM in database with OID %u with reduced "
@@ -1865,7 +1892,7 @@ msgstr ""
 "Выполните очистку (VACUUM) всей базы данных с OID %u, уменьшив значения "
 "vacuum_multixact_freeze_min_age и vacuum_multixact_freeze_table_age."
 
-#: access/transam/multixact.c:1157
+#: access/transam/multixact.c:1158
 #, c-format
 msgid ""
 "database with OID %u must be vacuumed before %d more multixact member is used"
@@ -1882,7 +1909,7 @@ msgstr[2] ""
 "база данных с OID %u должна быть очищена, пока не использованы оставшиеся "
 "члены мультитранзакций (%d)"
 
-#: access/transam/multixact.c:1162
+#: access/transam/multixact.c:1163
 #, c-format
 msgid ""
 "Execute a database-wide VACUUM in that database with reduced "
@@ -1892,17 +1919,17 @@ msgstr ""
 "Выполните очистку (VACUUM) всей этой базы данных, уменьшив значения "
 "vacuum_multixact_freeze_min_age и vacuum_multixact_freeze_table_age."
 
-#: access/transam/multixact.c:1301
+#: access/transam/multixact.c:1302
 #, c-format
 msgid "MultiXactId %u does no longer exist -- apparent wraparound"
 msgstr "MultiXactId %u прекратил существование: видимо, произошло зацикливание"
 
-#: access/transam/multixact.c:1307
+#: access/transam/multixact.c:1308
 #, c-format
 msgid "MultiXactId %u has not been created yet -- apparent wraparound"
 msgstr "MultiXactId %u ещё не был создан: видимо, произошло зацикливание"
 
-#: access/transam/multixact.c:2339 access/transam/multixact.c:2348
+#: access/transam/multixact.c:2338 access/transam/multixact.c:2347
 #: access/transam/varsup.c:151 access/transam/varsup.c:158
 #: access/transam/varsup.c:466 access/transam/varsup.c:473
 #, c-format
@@ -1930,7 +1957,7 @@ msgstr ""
 msgid "MultiXact member wraparound protections are now enabled"
 msgstr "Защита от зацикливания мультитранзакций сейчас включена"
 
-#: access/transam/multixact.c:3031
+#: access/transam/multixact.c:3027
 #, c-format
 msgid ""
 "oldest MultiXact %u not found, earliest MultiXact %u, skipping truncation"
@@ -1938,7 +1965,7 @@ msgstr ""
 "старейшая мультитранзакция %u не найдена, новейшая мультитранзакция: %u, "
 "усечение пропускается"
 
-#: access/transam/multixact.c:3049
+#: access/transam/multixact.c:3045
 #, c-format
 msgid ""
 "cannot truncate up to MultiXact %u because it does not exist on disk, "
@@ -1947,41 +1974,41 @@ msgstr ""
 "выполнить усечение до мультитранзакции %u нельзя ввиду её отсутствия на "
 "диске, усечение пропускается"
 
-#: access/transam/multixact.c:3363
+#: access/transam/multixact.c:3359
 #, c-format
 msgid "invalid MultiXactId: %u"
 msgstr "неверный MultiXactId: %u"
 
-#: access/transam/parallel.c:718 access/transam/parallel.c:837
+#: access/transam/parallel.c:729 access/transam/parallel.c:848
 #, c-format
 msgid "parallel worker failed to initialize"
 msgstr "не удалось инициализировать параллельный исполнитель"
 
-#: access/transam/parallel.c:719 access/transam/parallel.c:838
+#: access/transam/parallel.c:730 access/transam/parallel.c:849
 #, c-format
 msgid "More details may be available in the server log."
 msgstr "Дополнительная информация может быть в журнале сервера."
 
-#: access/transam/parallel.c:899
+#: access/transam/parallel.c:910
 #, c-format
 msgid "postmaster exited during a parallel transaction"
 msgstr "postmaster завершился в процессе параллельной транзакции"
 
-#: access/transam/parallel.c:1086
+#: access/transam/parallel.c:1097
 #, c-format
 msgid "lost connection to parallel worker"
 msgstr "потеряно подключение к параллельному исполнителю"
 
-#: access/transam/parallel.c:1152 access/transam/parallel.c:1154
+#: access/transam/parallel.c:1163 access/transam/parallel.c:1165
 msgid "parallel worker"
 msgstr "параллельный исполнитель"
 
-#: access/transam/parallel.c:1307
+#: access/transam/parallel.c:1319 replication/logical/applyparallelworker.c:893
 #, c-format
 msgid "could not map dynamic shared memory segment"
 msgstr "не удалось отобразить динамический сегмент разделяемой памяти"
 
-#: access/transam/parallel.c:1312
+#: access/transam/parallel.c:1324 replication/logical/applyparallelworker.c:899
 #, c-format
 msgid "invalid magic number in dynamic shared memory segment"
 msgstr "неверное магическое число в динамическом сегменте разделяемой памяти"
@@ -2148,64 +2175,64 @@ msgid "Timeline IDs must be less than child timeline's ID."
 msgstr ""
 "Идентификаторы линий времени должны быть меньше идентификатора линии-потомка."
 
-#: access/transam/timeline.c:597
+#: access/transam/timeline.c:589
 #, c-format
 msgid "requested timeline %u is not in this server's history"
 msgstr "в истории сервера нет запрошенной линии времени %u"
 
-#: access/transam/twophase.c:385
+#: access/transam/twophase.c:386
 #, c-format
 msgid "transaction identifier \"%s\" is too long"
 msgstr "идентификатор транзакции \"%s\" слишком длинный"
 
-#: access/transam/twophase.c:392
+#: access/transam/twophase.c:393
 #, c-format
 msgid "prepared transactions are disabled"
 msgstr "подготовленные транзакции отключены"
 
-#: access/transam/twophase.c:393
+#: access/transam/twophase.c:394
 #, c-format
 msgid "Set max_prepared_transactions to a nonzero value."
 msgstr "Установите ненулевое значение параметра max_prepared_transactions."
 
-#: access/transam/twophase.c:412
+#: access/transam/twophase.c:413
 #, c-format
 msgid "transaction identifier \"%s\" is already in use"
 msgstr "идентификатор транзакции \"%s\" уже используется"
 
-#: access/transam/twophase.c:421 access/transam/twophase.c:2486
+#: access/transam/twophase.c:422 access/transam/twophase.c:2517
 #, c-format
 msgid "maximum number of prepared transactions reached"
 msgstr "достигнут предел числа подготовленных транзакций"
 
-#: access/transam/twophase.c:422 access/transam/twophase.c:2487
+#: access/transam/twophase.c:423 access/transam/twophase.c:2518
 #, c-format
 msgid "Increase max_prepared_transactions (currently %d)."
 msgstr "Увеличьте параметр max_prepared_transactions (текущее значение %d)."
 
-#: access/transam/twophase.c:598
+#: access/transam/twophase.c:599
 #, c-format
 msgid "prepared transaction with identifier \"%s\" is busy"
 msgstr "подготовленная транзакция с идентификатором \"%s\" занята"
 
-#: access/transam/twophase.c:604
+#: access/transam/twophase.c:605
 #, c-format
 msgid "permission denied to finish prepared transaction"
 msgstr "нет доступа для завершения подготовленной транзакции"
 
-#: access/transam/twophase.c:605
+#: access/transam/twophase.c:606
 #, c-format
 msgid "Must be superuser or the user that prepared the transaction."
 msgstr ""
 "Это разрешено только суперпользователю и пользователю, подготовившему "
 "транзакцию."
 
-#: access/transam/twophase.c:616
+#: access/transam/twophase.c:617
 #, c-format
 msgid "prepared transaction belongs to another database"
 msgstr "подготовленная транзакция относится к другой базе данных"
 
-#: access/transam/twophase.c:617
+#: access/transam/twophase.c:618
 #, c-format
 msgid ""
 "Connect to the database where the transaction was prepared to finish it."
@@ -2214,17 +2241,17 @@ msgstr ""
 "подготовлена."
 
 # [SM]: TO REVIEW
-#: access/transam/twophase.c:632
+#: access/transam/twophase.c:633
 #, c-format
 msgid "prepared transaction with identifier \"%s\" does not exist"
 msgstr "подготовленной транзакции с идентификатором \"%s\" нет"
 
-#: access/transam/twophase.c:1169
+#: access/transam/twophase.c:1168
 #, c-format
 msgid "two-phase state file maximum length exceeded"
 msgstr "превышен предельный размер файла состояния 2PC"
 
-#: access/transam/twophase.c:1324
+#: access/transam/twophase.c:1323
 #, c-format
 msgid "incorrect size of file \"%s\": %lld byte"
 msgid_plural "incorrect size of file \"%s\": %lld bytes"
@@ -2232,62 +2259,62 @@ msgstr[0] "некорректный размер файла \"%s\": %lld Б"
 msgstr[1] "некорректный размер файла \"%s\": %lld Б"
 msgstr[2] "некорректный размер файла \"%s\": %lld Б"
 
-#: access/transam/twophase.c:1333
+#: access/transam/twophase.c:1332
 #, c-format
 msgid "incorrect alignment of CRC offset for file \"%s\""
 msgstr "некорректное выравнивание смещения CRC для файла \"%s\""
 
-#: access/transam/twophase.c:1351
+#: access/transam/twophase.c:1350
 #, c-format
 msgid "could not read file \"%s\": read %d of %lld"
 msgstr "не удалось прочитать файл \"%s\" (прочитано байт: %d из %lld)"
 
-#: access/transam/twophase.c:1366
+#: access/transam/twophase.c:1365
 #, c-format
 msgid "invalid magic number stored in file \"%s\""
 msgstr "в файле \"%s\" содержится неверная сигнатура"
 
-#: access/transam/twophase.c:1372
+#: access/transam/twophase.c:1371
 #, c-format
 msgid "invalid size stored in file \"%s\""
 msgstr "в файле \"%s\" содержится неверный размер"
 
-#: access/transam/twophase.c:1384
+#: access/transam/twophase.c:1383
 #, c-format
 msgid "calculated CRC checksum does not match value stored in file \"%s\""
 msgstr ""
 "вычисленная контрольная сумма (CRC) не соответствует значению, сохранённому "
 "в файле \"%s\""
 
-#: access/transam/twophase.c:1414 access/transam/xlogrecovery.c:569
-#: replication/logical/logical.c:206 replication/walsender.c:702
+#: access/transam/twophase.c:1413 access/transam/xlogrecovery.c:590
+#: replication/logical/logical.c:209 replication/walsender.c:687
 #, c-format
 msgid "Failed while allocating a WAL reading processor."
 msgstr "Не удалось разместить обработчик журнала транзакций."
 
-#: access/transam/twophase.c:1424
+#: access/transam/twophase.c:1423
 #, c-format
 msgid "could not read two-phase state from WAL at %X/%X: %s"
 msgstr "не удалось прочитать состояние 2PC из WAL в позиции %X/%X: %s"
 
-#: access/transam/twophase.c:1429
+#: access/transam/twophase.c:1428
 #, c-format
 msgid "could not read two-phase state from WAL at %X/%X"
 msgstr "не удалось прочитать состояние 2PC из WAL в позиции %X/%X"
 
-#: access/transam/twophase.c:1437
+#: access/transam/twophase.c:1436
 #, c-format
 msgid "expected two-phase state data is not present in WAL at %X/%X"
 msgstr ""
 "ожидаемые данные состояния двухфазной фиксации отсутствуют в WAL в позиции "
 "%X/%X"
 
-#: access/transam/twophase.c:1733
+#: access/transam/twophase.c:1732
 #, c-format
 msgid "could not recreate file \"%s\": %m"
 msgstr "пересоздать файл \"%s\" не удалось: %m"
 
-#: access/transam/twophase.c:1860
+#: access/transam/twophase.c:1859
 #, c-format
 msgid ""
 "%u two-phase state file was written for a long-running prepared transaction"
@@ -2300,41 +2327,61 @@ msgstr[1] ""
 msgstr[2] ""
 "для длительных подготовленных транзакций записано файлов состояния 2PC: %u"
 
-#: access/transam/twophase.c:2094
+#: access/transam/twophase.c:2093
 #, c-format
 msgid "recovering prepared transaction %u from shared memory"
 msgstr "восстановление подготовленной транзакции %u из разделяемой памяти"
 
-#: access/transam/twophase.c:2187
+#: access/transam/twophase.c:2186
 #, c-format
 msgid "removing stale two-phase state file for transaction %u"
 msgstr "удаление устаревшего файла состояния 2PC для транзакции %u"
 
-#: access/transam/twophase.c:2194
+#: access/transam/twophase.c:2193
 #, c-format
 msgid "removing stale two-phase state from memory for transaction %u"
 msgstr "удаление из памяти устаревшего состояния 2PC для транзакции %u"
 
-#: access/transam/twophase.c:2207
+#: access/transam/twophase.c:2206
 #, c-format
 msgid "removing future two-phase state file for transaction %u"
 msgstr "удаление файла будущего состояния 2PC для транзакции %u"
 
-#: access/transam/twophase.c:2214
+#: access/transam/twophase.c:2213
 #, c-format
 msgid "removing future two-phase state from memory for transaction %u"
 msgstr "удаление из памяти будущего состояния 2PC для транзакции %u"
 
-#: access/transam/twophase.c:2239
+#: access/transam/twophase.c:2238
 #, c-format
 msgid "corrupted two-phase state file for transaction %u"
 msgstr "испорчен файл состояния 2PC для транзакции %u"
 
-#: access/transam/twophase.c:2244
+#: access/transam/twophase.c:2243
 #, c-format
 msgid "corrupted two-phase state in memory for transaction %u"
 msgstr "испорчено состояние 2PC в памяти для транзакции %u"
 
+#: access/transam/twophase.c:2500
+#, c-format
+msgid "could not recover two-phase state file for transaction %u"
+msgstr "не удалось восстановить файл состояния 2PC для транзакции %u"
+
+#: access/transam/twophase.c:2502
+#, c-format
+msgid ""
+"Two-phase state file has been found in WAL record %X/%X, but this "
+"transaction has already been restored from disk."
+msgstr ""
+"Для WAL-записи %X/%X найден файл состояния двухфазной фиксации, но эта "
+"транзакция уже была восстановлена с диска."
+
+#: access/transam/twophase.c:2510 jit/jit.c:205 utils/fmgr/dfmgr.c:209
+#: utils/fmgr/dfmgr.c:415
+#, c-format
+msgid "could not access file \"%s\": %m"
+msgstr "нет доступа к файлу \"%s\": %m"
+
 #: access/transam/varsup.c:129
 #, c-format
 msgid ""
@@ -2377,124 +2424,124 @@ msgid "database with OID %u must be vacuumed within %u transactions"
 msgstr ""
 "база данных с OID %u должна быть очищена (предельное число транзакций: %u)"
 
-#: access/transam/xact.c:1098
+#: access/transam/xact.c:1102
 #, c-format
 msgid "cannot have more than 2^32-2 commands in a transaction"
 msgstr "в одной транзакции не может быть больше 2^32-2 команд"
 
-#: access/transam/xact.c:1644
+#: access/transam/xact.c:1643
 #, c-format
 msgid "maximum number of committed subtransactions (%d) exceeded"
 msgstr "превышен предел числа зафиксированных подтранзакций (%d)"
 
-#: access/transam/xact.c:2501
+#: access/transam/xact.c:2513
 #, c-format
 msgid "cannot PREPARE a transaction that has operated on temporary objects"
 msgstr ""
 "нельзя выполнить PREPARE для транзакции, оперирующей с временными объектами"
 
-#: access/transam/xact.c:2511
+#: access/transam/xact.c:2523
 #, c-format
 msgid "cannot PREPARE a transaction that has exported snapshots"
 msgstr "нельзя выполнить PREPARE для транзакции, снимки которой экспортированы"
 
 #. translator: %s represents an SQL statement name
-#: access/transam/xact.c:3478
+#: access/transam/xact.c:3489
 #, c-format
 msgid "%s cannot run inside a transaction block"
 msgstr "%s не может выполняться внутри блока транзакции"
 
 #. translator: %s represents an SQL statement name
-#: access/transam/xact.c:3488
+#: access/transam/xact.c:3499
 #, c-format
 msgid "%s cannot run inside a subtransaction"
 msgstr "%s не может выполняться внутри подтранзакции"
 
 #. translator: %s represents an SQL statement name
-#: access/transam/xact.c:3498
+#: access/transam/xact.c:3509
 #, c-format
 msgid "%s cannot be executed within a pipeline"
 msgstr "%s нельзя выполнять в конвейере"
 
 #. translator: %s represents an SQL statement name
-#: access/transam/xact.c:3508
+#: access/transam/xact.c:3519
 #, c-format
 msgid "%s cannot be executed from a function"
 msgstr "%s нельзя выполнять внутри функции"
 
 #. translator: %s represents an SQL statement name
-#: access/transam/xact.c:3579 access/transam/xact.c:3894
-#: access/transam/xact.c:3973 access/transam/xact.c:4096
-#: access/transam/xact.c:4247 access/transam/xact.c:4316
-#: access/transam/xact.c:4427
+#: access/transam/xact.c:3590 access/transam/xact.c:3915
+#: access/transam/xact.c:3994 access/transam/xact.c:4117
+#: access/transam/xact.c:4268 access/transam/xact.c:4337
+#: access/transam/xact.c:4448
 #, c-format
 msgid "%s can only be used in transaction blocks"
 msgstr "%s может выполняться только внутри блоков транзакций"
 
-#: access/transam/xact.c:3780
+#: access/transam/xact.c:3801
 #, c-format
 msgid "there is already a transaction in progress"
 msgstr "транзакция уже выполняется"
 
-#: access/transam/xact.c:3899 access/transam/xact.c:3978
-#: access/transam/xact.c:4101
+#: access/transam/xact.c:3920 access/transam/xact.c:3999
+#: access/transam/xact.c:4122
 #, c-format
 msgid "there is no transaction in progress"
 msgstr "нет незавершённой транзакции"
 
-#: access/transam/xact.c:3989
+#: access/transam/xact.c:4010
 #, c-format
 msgid "cannot commit during a parallel operation"
 msgstr "фиксировать транзакции во время параллельных операций нельзя"
 
-#: access/transam/xact.c:4112
+#: access/transam/xact.c:4133
 #, c-format
 msgid "cannot abort during a parallel operation"
 msgstr "прерывание во время параллельных операций невозможно"
 
-#: access/transam/xact.c:4211
+#: access/transam/xact.c:4232
 #, c-format
 msgid "cannot define savepoints during a parallel operation"
 msgstr "определять точки сохранения во время параллельных операций нельзя"
 
-#: access/transam/xact.c:4298
+#: access/transam/xact.c:4319
 #, c-format
 msgid "cannot release savepoints during a parallel operation"
 msgstr "высвобождать точки сохранения во время параллельных операций нельзя"
 
-#: access/transam/xact.c:4308 access/transam/xact.c:4359
-#: access/transam/xact.c:4419 access/transam/xact.c:4468
+#: access/transam/xact.c:4329 access/transam/xact.c:4380
+#: access/transam/xact.c:4440 access/transam/xact.c:4489
 #, c-format
 msgid "savepoint \"%s\" does not exist"
 msgstr "точка сохранения \"%s\" не существует"
 
-#: access/transam/xact.c:4365 access/transam/xact.c:4474
+#: access/transam/xact.c:4386 access/transam/xact.c:4495
 #, c-format
 msgid "savepoint \"%s\" does not exist within current savepoint level"
 msgstr ""
 "точка сохранения \"%s\" на текущем уровне точек сохранения не существует"
 
-#: access/transam/xact.c:4407
+#: access/transam/xact.c:4428
 #, c-format
 msgid "cannot rollback to savepoints during a parallel operation"
 msgstr "откатиться к точке сохранения во время параллельных операций нельзя"
 
-#: access/transam/xact.c:4535
+#: access/transam/xact.c:4556
 #, c-format
 msgid "cannot start subtransactions during a parallel operation"
 msgstr "запускать подтранзакции во время параллельных операций нельзя"
 
-#: access/transam/xact.c:4603
+#: access/transam/xact.c:4624
 #, c-format
 msgid "cannot commit subtransactions during a parallel operation"
 msgstr "фиксировать подтранзакции во время параллельных операций нельзя"
 
-#: access/transam/xact.c:5250
+#: access/transam/xact.c:5270
 #, c-format
 msgid "cannot have more than 2^32-1 subtransactions in a transaction"
 msgstr "в одной транзакции не может быть больше 2^32-1 подтранзакций"
 
-#: access/transam/xlog.c:1463
+#: access/transam/xlog.c:1466
 #, c-format
 msgid ""
 "request to flush past end of generated WAL; request %X/%X, current position "
@@ -2503,55 +2550,55 @@ msgstr ""
 "запрос на сброс данных за концом сгенерированного WAL; запрошена позиция %X/"
 "%X, текущая позиция %X/%X"
 
-#: access/transam/xlog.c:2224
+#: access/transam/xlog.c:2228
 #, c-format
 msgid "could not write to log file %s at offset %u, length %zu: %m"
 msgstr "не удалось записать в файл журнала %s (смещение: %u, длина: %zu): %m"
 
-#: access/transam/xlog.c:3471 access/transam/xlogutils.c:847
-#: replication/walsender.c:2716
+#: access/transam/xlog.c:3455 access/transam/xlogutils.c:833
+#: replication/walsender.c:2725
 #, c-format
 msgid "requested WAL segment %s has already been removed"
 msgstr "запрошенный сегмент WAL %s уже удалён"
 
-#: access/transam/xlog.c:3756
+#: access/transam/xlog.c:3739
 #, c-format
 msgid "could not rename file \"%s\": %m"
 msgstr "не удалось переименовать файл \"%s\": %m"
 
-#: access/transam/xlog.c:3798 access/transam/xlog.c:3808
+#: access/transam/xlog.c:3781 access/transam/xlog.c:3791
 #, c-format
 msgid "required WAL directory \"%s\" does not exist"
 msgstr "требуемый каталог WAL \"%s\" не существует"
 
-#: access/transam/xlog.c:3814
+#: access/transam/xlog.c:3797
 #, c-format
 msgid "creating missing WAL directory \"%s\""
 msgstr "создаётся отсутствующий каталог WAL \"%s\""
 
-#: access/transam/xlog.c:3817 commands/dbcommands.c:3045
+#: access/transam/xlog.c:3800 commands/dbcommands.c:3172
 #, c-format
 msgid "could not create missing directory \"%s\": %m"
 msgstr "не удалось создать отсутствующий каталог \"%s\": %m"
 
-#: access/transam/xlog.c:3884
+#: access/transam/xlog.c:3867
 #, c-format
 msgid "could not generate secret authorization token"
 msgstr "не удалось сгенерировать случайное число для аутентификации"
 
-#: access/transam/xlog.c:4043 access/transam/xlog.c:4052
+#: access/transam/xlog.c:4017 access/transam/xlog.c:4026
+#: access/transam/xlog.c:4050 access/transam/xlog.c:4057
+#: access/transam/xlog.c:4064 access/transam/xlog.c:4069
 #: access/transam/xlog.c:4076 access/transam/xlog.c:4083
-#: access/transam/xlog.c:4090 access/transam/xlog.c:4095
-#: access/transam/xlog.c:4102 access/transam/xlog.c:4109
-#: access/transam/xlog.c:4116 access/transam/xlog.c:4123
-#: access/transam/xlog.c:4130 access/transam/xlog.c:4137
-#: access/transam/xlog.c:4146 access/transam/xlog.c:4153
-#: utils/init/miscinit.c:1598
+#: access/transam/xlog.c:4090 access/transam/xlog.c:4097
+#: access/transam/xlog.c:4104 access/transam/xlog.c:4111
+#: access/transam/xlog.c:4120 access/transam/xlog.c:4127
+#: utils/init/miscinit.c:1762
 #, c-format
 msgid "database files are incompatible with server"
 msgstr "файлы базы данных несовместимы с сервером"
 
-#: access/transam/xlog.c:4044
+#: access/transam/xlog.c:4018
 #, c-format
 msgid ""
 "The database cluster was initialized with PG_CONTROL_VERSION %d (0x%08x), "
@@ -2560,7 +2607,7 @@ msgstr ""
 "Кластер баз данных был инициализирован с PG_CONTROL_VERSION %d (0x%08x), но "
 "сервер скомпилирован с PG_CONTROL_VERSION %d (0x%08x)."
 
-#: access/transam/xlog.c:4048
+#: access/transam/xlog.c:4022
 #, c-format
 msgid ""
 "This could be a problem of mismatched byte ordering.  It looks like you need "
@@ -2569,7 +2616,7 @@ msgstr ""
 "Возможно, проблема вызвана разным порядком байт. Кажется, вам надо выполнить "
 "initdb."
 
-#: access/transam/xlog.c:4053
+#: access/transam/xlog.c:4027
 #, c-format
 msgid ""
 "The database cluster was initialized with PG_CONTROL_VERSION %d, but the "
@@ -2578,18 +2625,18 @@ msgstr ""
 "Кластер баз данных был инициализирован с PG_CONTROL_VERSION %d, но сервер "
 "скомпилирован с PG_CONTROL_VERSION %d."
 
-#: access/transam/xlog.c:4056 access/transam/xlog.c:4080
-#: access/transam/xlog.c:4087 access/transam/xlog.c:4092
+#: access/transam/xlog.c:4030 access/transam/xlog.c:4054
+#: access/transam/xlog.c:4061 access/transam/xlog.c:4066
 #, c-format
 msgid "It looks like you need to initdb."
 msgstr "Кажется, вам надо выполнить initdb."
 
-#: access/transam/xlog.c:4067
+#: access/transam/xlog.c:4041
 #, c-format
 msgid "incorrect checksum in control file"
 msgstr "ошибка контрольной суммы в файле pg_control"
 
-#: access/transam/xlog.c:4077
+#: access/transam/xlog.c:4051
 #, c-format
 msgid ""
 "The database cluster was initialized with CATALOG_VERSION_NO %d, but the "
@@ -2598,7 +2645,7 @@ msgstr ""
 "Кластер баз данных был инициализирован с CATALOG_VERSION_NO %d, но сервер "
 "скомпилирован с CATALOG_VERSION_NO %d."
 
-#: access/transam/xlog.c:4084
+#: access/transam/xlog.c:4058
 #, c-format
 msgid ""
 "The database cluster was initialized with MAXALIGN %d, but the server was "
@@ -2607,7 +2654,7 @@ msgstr ""
 "Кластер баз данных был инициализирован с MAXALIGN %d, но сервер "
 "скомпилирован с MAXALIGN %d."
 
-#: access/transam/xlog.c:4091
+#: access/transam/xlog.c:4065
 #, c-format
 msgid ""
 "The database cluster appears to use a different floating-point number format "
@@ -2616,7 +2663,7 @@ msgstr ""
 "Кажется, в кластере баз данных и в программе сервера используются разные "
 "форматы чисел с плавающей точкой."
 
-#: access/transam/xlog.c:4096
+#: access/transam/xlog.c:4070
 #, c-format
 msgid ""
 "The database cluster was initialized with BLCKSZ %d, but the server was "
@@ -2625,16 +2672,16 @@ msgstr ""
 "Кластер баз данных был инициализирован с BLCKSZ %d, но сервер скомпилирован "
 "с BLCKSZ %d."
 
-#: access/transam/xlog.c:4099 access/transam/xlog.c:4106
-#: access/transam/xlog.c:4113 access/transam/xlog.c:4120
-#: access/transam/xlog.c:4127 access/transam/xlog.c:4134
-#: access/transam/xlog.c:4141 access/transam/xlog.c:4149
-#: access/transam/xlog.c:4156
+#: access/transam/xlog.c:4073 access/transam/xlog.c:4080
+#: access/transam/xlog.c:4087 access/transam/xlog.c:4094
+#: access/transam/xlog.c:4101 access/transam/xlog.c:4108
+#: access/transam/xlog.c:4115 access/transam/xlog.c:4123
+#: access/transam/xlog.c:4130
 #, c-format
 msgid "It looks like you need to recompile or initdb."
 msgstr "Кажется, вам надо перекомпилировать сервер или выполнить initdb."
 
-#: access/transam/xlog.c:4103
+#: access/transam/xlog.c:4077
 #, c-format
 msgid ""
 "The database cluster was initialized with RELSEG_SIZE %d, but the server was "
@@ -2643,7 +2690,7 @@ msgstr ""
 "Кластер баз данных был инициализирован с RELSEG_SIZE %d, но сервер "
 "скомпилирован с RELSEG_SIZE %d."
 
-#: access/transam/xlog.c:4110
+#: access/transam/xlog.c:4084
 #, c-format
 msgid ""
 "The database cluster was initialized with XLOG_BLCKSZ %d, but the server was "
@@ -2652,7 +2699,7 @@ msgstr ""
 "Кластер баз данных был инициализирован с XLOG_BLCKSZ %d, но сервер "
 "скомпилирован с XLOG_BLCKSZ %d."
 
-#: access/transam/xlog.c:4117
+#: access/transam/xlog.c:4091
 #, c-format
 msgid ""
 "The database cluster was initialized with NAMEDATALEN %d, but the server was "
@@ -2661,7 +2708,7 @@ msgstr ""
 "Кластер баз данных был инициализирован с NAMEDATALEN %d, но сервер "
 "скомпилирован с NAMEDATALEN %d."
 
-#: access/transam/xlog.c:4124
+#: access/transam/xlog.c:4098
 #, c-format
 msgid ""
 "The database cluster was initialized with INDEX_MAX_KEYS %d, but the server "
@@ -2670,7 +2717,7 @@ msgstr ""
 "Кластер баз данных был инициализирован с INDEX_MAX_KEYS %d, но сервер "
 "скомпилирован с INDEX_MAX_KEYS %d."
 
-#: access/transam/xlog.c:4131
+#: access/transam/xlog.c:4105
 #, c-format
 msgid ""
 "The database cluster was initialized with TOAST_MAX_CHUNK_SIZE %d, but the "
@@ -2679,7 +2726,7 @@ msgstr ""
 "Кластер баз данных был инициализирован с TOAST_MAX_CHUNK_SIZE %d, но сервер "
 "скомпилирован с TOAST_MAX_CHUNK_SIZE %d."
 
-#: access/transam/xlog.c:4138
+#: access/transam/xlog.c:4112
 #, c-format
 msgid ""
 "The database cluster was initialized with LOBLKSIZE %d, but the server was "
@@ -2688,7 +2735,7 @@ msgstr ""
 "Кластер баз данных был инициализирован с LOBLKSIZE %d, но сервер "
 "скомпилирован с LOBLKSIZE %d."
 
-#: access/transam/xlog.c:4147
+#: access/transam/xlog.c:4121
 #, c-format
 msgid ""
 "The database cluster was initialized without USE_FLOAT8_BYVAL but the server "
@@ -2697,7 +2744,7 @@ msgstr ""
 "Кластер баз данных был инициализирован без USE_FLOAT8_BYVAL, но сервер "
 "скомпилирован с USE_FLOAT8_BYVAL."
 
-#: access/transam/xlog.c:4154
+#: access/transam/xlog.c:4128
 #, c-format
 msgid ""
 "The database cluster was initialized with USE_FLOAT8_BYVAL but the server "
@@ -2706,7 +2753,7 @@ msgstr ""
 "Кластер баз данных был инициализирован с USE_FLOAT8_BYVAL, но сервер был "
 "скомпилирован без USE_FLOAT8_BYVAL."
 
-#: access/transam/xlog.c:4163
+#: access/transam/xlog.c:4137
 #, c-format
 msgid ""
 "WAL segment size must be a power of two between 1 MB and 1 GB, but the "
@@ -2724,76 +2771,89 @@ msgstr[2] ""
 "размер сегмента WAL должен задаваться степенью 2 в интервале от 1 МБ до 1 "
 "ГБ, но в управляющем файле указано значение: %d"
 
-#: access/transam/xlog.c:4175
+#: access/transam/xlog.c:4149
 #, c-format
 msgid "\"min_wal_size\" must be at least twice \"wal_segment_size\""
 msgstr "\"min_wal_size\" должен быть минимум вдвое больше \"wal_segment_size\""
 
-#: access/transam/xlog.c:4179
+#: access/transam/xlog.c:4153
 #, c-format
 msgid "\"max_wal_size\" must be at least twice \"wal_segment_size\""
 msgstr "\"max_wal_size\" должен быть минимум вдвое больше \"wal_segment_size\""
 
-#: access/transam/xlog.c:4620
+#: access/transam/xlog.c:4308 catalog/namespace.c:4335
+#: commands/tablespace.c:1216 commands/user.c:2536 commands/variable.c:72
+#: utils/error/elog.c:2205
+#, c-format
+msgid "List syntax is invalid."
+msgstr "Ошибка синтаксиса в списке."
+
+#: access/transam/xlog.c:4354 commands/user.c:2552 commands/variable.c:173
+#: utils/error/elog.c:2231
+#, c-format
+msgid "Unrecognized key word: \"%s\"."
+msgstr "нераспознанное ключевое слово: \"%s\"."
+
+#: access/transam/xlog.c:4768
 #, c-format
 msgid "could not write bootstrap write-ahead log file: %m"
 msgstr "не удалось записать начальный файл журнала предзаписи: %m"
 
-#: access/transam/xlog.c:4628
+#: access/transam/xlog.c:4776
 #, c-format
 msgid "could not fsync bootstrap write-ahead log file: %m"
 msgstr "не удалось сбросить на диск начальный файл журнала предзаписи: %m"
 
-#: access/transam/xlog.c:4634
+#: access/transam/xlog.c:4782
 #, c-format
 msgid "could not close bootstrap write-ahead log file: %m"
 msgstr "не удалось закрыть начальный файл журнала предзаписи: %m"
 
-#: access/transam/xlog.c:4852
+#: access/transam/xlog.c:4999
 #, c-format
 msgid "WAL was generated with wal_level=minimal, cannot continue recovering"
 msgstr ""
 "WAL был создан с параметром wal_level=minimal, продолжение восстановления "
 "невозможно"
 
-#: access/transam/xlog.c:4853
+#: access/transam/xlog.c:5000
 #, c-format
 msgid "This happens if you temporarily set wal_level=minimal on the server."
 msgstr "Это происходит, если вы на время устанавливали wal_level=minimal."
 
-#: access/transam/xlog.c:4854
+#: access/transam/xlog.c:5001
 #, c-format
 msgid "Use a backup taken after setting wal_level to higher than minimal."
 msgstr ""
 "Используйте резервную копию, сделанную после переключения wal_level на любой "
 "уровень выше minimal."
 
-#: access/transam/xlog.c:4918
+#: access/transam/xlog.c:5065
 #, c-format
 msgid "control file contains invalid checkpoint location"
 msgstr "файл pg_control содержит неправильную позицию контрольной точки"
 
-#: access/transam/xlog.c:4929
+#: access/transam/xlog.c:5076
 #, c-format
 msgid "database system was shut down at %s"
 msgstr "система БД была выключена: %s"
 
-#: access/transam/xlog.c:4935
+#: access/transam/xlog.c:5082
 #, c-format
 msgid "database system was shut down in recovery at %s"
 msgstr "система БД была выключена в процессе восстановления: %s"
 
-#: access/transam/xlog.c:4941
+#: access/transam/xlog.c:5088
 #, c-format
 msgid "database system shutdown was interrupted; last known up at %s"
 msgstr "выключение системы БД было прервано; последний момент работы: %s"
 
-#: access/transam/xlog.c:4947
+#: access/transam/xlog.c:5094
 #, c-format
 msgid "database system was interrupted while in recovery at %s"
 msgstr "работа системы БД была прервана во время восстановления: %s"
 
-#: access/transam/xlog.c:4949
+#: access/transam/xlog.c:5096
 #, c-format
 msgid ""
 "This probably means that some data is corrupted and you will have to use the "
@@ -2802,14 +2862,14 @@ msgstr ""
 "Это скорее всего означает, что некоторые данные повреждены и вам придётся "
 "восстановить БД из последней резервной копии."
 
-#: access/transam/xlog.c:4955
+#: access/transam/xlog.c:5102
 #, c-format
 msgid "database system was interrupted while in recovery at log time %s"
 msgstr ""
 "работа системы БД была прервана в процессе восстановления, время в журнале: "
 "%s"
 
-#: access/transam/xlog.c:4957
+#: access/transam/xlog.c:5104
 #, c-format
 msgid ""
 "If this has occurred more than once some data might be corrupted and you "
@@ -2818,22 +2878,22 @@ msgstr ""
 "Если это происходит постоянно, возможно, какие-то данные были испорчены и "
 "для восстановления стоит выбрать более раннюю точку."
 
-#: access/transam/xlog.c:4963
+#: access/transam/xlog.c:5110
 #, c-format
 msgid "database system was interrupted; last known up at %s"
 msgstr "работа системы БД была прервана; последний момент работы: %s"
 
-#: access/transam/xlog.c:4969
+#: access/transam/xlog.c:5116
 #, c-format
 msgid "control file contains invalid database cluster state"
 msgstr "файл pg_control содержит неверный код состояния кластера"
 
-#: access/transam/xlog.c:5353
+#: access/transam/xlog.c:5500
 #, c-format
 msgid "WAL ends before end of online backup"
 msgstr "WAL закончился без признака окончания копирования"
 
-#: access/transam/xlog.c:5354
+#: access/transam/xlog.c:5501
 #, c-format
 msgid ""
 "All WAL generated while online backup was taken must be available at "
@@ -2842,67 +2902,69 @@ msgstr ""
 "Все журналы WAL, созданные во время резервного копирования \"на ходу\", "
 "должны быть в наличии для восстановления."
 
-#: access/transam/xlog.c:5357
+#: access/transam/xlog.c:5504
 #, c-format
 msgid "WAL ends before consistent recovery point"
 msgstr "WAL закончился до согласованной точки восстановления"
 
-#: access/transam/xlog.c:5405
+#: access/transam/xlog.c:5550
 #, c-format
 msgid "selected new timeline ID: %u"
 msgstr "выбранный ID новой линии времени: %u"
 
-#: access/transam/xlog.c:5438
+#: access/transam/xlog.c:5583
 #, c-format
 msgid "archive recovery complete"
 msgstr "восстановление архива завершено"
 
-#: access/transam/xlog.c:6040
+#: access/transam/xlog.c:6189
 #, c-format
 msgid "shutting down"
 msgstr "выключение"
 
 #. translator: the placeholders show checkpoint options
-#: access/transam/xlog.c:6079
+#: access/transam/xlog.c:6228
 #, c-format
 msgid "restartpoint starting:%s%s%s%s%s%s%s%s"
 msgstr "начата точка перезапуска:%s%s%s%s%s%s%s%s"
 
 #. translator: the placeholders show checkpoint options
-#: access/transam/xlog.c:6091
+#: access/transam/xlog.c:6240
 #, c-format
 msgid "checkpoint starting:%s%s%s%s%s%s%s%s"
 msgstr "начата контрольная точка:%s%s%s%s%s%s%s%s"
 
 # well-spelled: синхр
-#: access/transam/xlog.c:6151
+#: access/transam/xlog.c:6305
 #, c-format
 msgid ""
 "restartpoint complete: wrote %d buffers (%.1f%%); %d WAL file(s) added, %d "
 "removed, %d recycled; write=%ld.%03d s, sync=%ld.%03d s, total=%ld.%03d s; "
 "sync files=%d, longest=%ld.%03d s, average=%ld.%03d s; distance=%d kB, "
-"estimate=%d kB"
+"estimate=%d kB; lsn=%X/%X, redo lsn=%X/%X"
 msgstr ""
 "точка перезапуска завершена: записано буферов: %d (%.1f%%); добавлено файлов "
 "WAL %d, удалено: %d, переработано: %d; запись=%ld.%03d сек., синхр.=%ld.%03d "
 "сек., всего=%ld.%03d сек.; синхронизировано_файлов=%d, самая_долгая_синхр."
-"=%ld.%03d сек., средняя=%ld.%03d сек.; расстояние=%d kB, ожидалось=%d kB"
+"=%ld.%03d сек., средняя=%ld.%03d сек.; расстояние=%d kB, ожидалось=%d kB; "
+"lsn=%X/%X, lsn redo=%X/%X"
 
 # well-spelled: синхр
-#: access/transam/xlog.c:6171
+#: access/transam/xlog.c:6328
 #, c-format
 msgid ""
 "checkpoint complete: wrote %d buffers (%.1f%%); %d WAL file(s) added, %d "
 "removed, %d recycled; write=%ld.%03d s, sync=%ld.%03d s, total=%ld.%03d s; "
 "sync files=%d, longest=%ld.%03d s, average=%ld.%03d s; distance=%d kB, "
-"estimate=%d kB"
+"estimate=%d kB; lsn=%X/%X, redo lsn=%X/%X"
 msgstr ""
 "контрольная точка завершена: записано буферов: %d (%.1f%%); добавлено файлов "
 "WAL %d, удалено: %d, переработано: %d; запись=%ld.%03d сек., синхр.=%ld.%03d "
 "сек., всего=%ld.%03d сек.; синхронизировано_файлов=%d, самая_долгая_синхр."
-"=%ld.%03d сек., средняя=%ld.%03d сек.; расстояние=%d kB, ожидалось=%d kB"
+"=%ld.%03d сек., средняя=%ld.%03d сек.; расстояние=%d kB, ожидалось=%d kB; "
+"lsn=%X/%X, lsn redo=%X/%X"
 
-#: access/transam/xlog.c:6606
+#: access/transam/xlog.c:6766
 #, c-format
 msgid ""
 "concurrent write-ahead log activity while database system is shutting down"
@@ -2910,75 +2972,75 @@ msgstr ""
 "во время выключения системы баз данных отмечена активность в журнале "
 "предзаписи"
 
-#: access/transam/xlog.c:7163
+#: access/transam/xlog.c:7327
 #, c-format
 msgid "recovery restart point at %X/%X"
-msgstr "Ñ\82оÑ\87ка Ð¿ÐµÑ\80езапÑ\83Ñ\81ка Ð²Ð¾Ñ\81Ñ\81Ñ\82ановлениÑ\8f Ð¿Ð¾ Ñ\81меÑ\89ениÑ\8e %X/%X"
+msgstr "Ñ\82оÑ\87ка Ð¿ÐµÑ\80езапÑ\83Ñ\81ка Ð²Ð¾Ñ\81Ñ\81Ñ\82ановлениÑ\8f Ð² Ð¿Ð¾Ð·Ð¸Ñ\86ии %X/%X"
 
-#: access/transam/xlog.c:7165
+#: access/transam/xlog.c:7329
 #, c-format
 msgid "Last completed transaction was at log time %s."
 msgstr "Последняя завершённая транзакция была выполнена в %s."
 
-#: access/transam/xlog.c:7412
+#: access/transam/xlog.c:7577
 #, c-format
 msgid "restore point \"%s\" created at %X/%X"
-msgstr "Ñ\82оÑ\87ка Ð²Ð¾Ñ\81Ñ\81Ñ\82ановлениÑ\8f \"%s\" Ñ\81оздана Ð¿Ð¾ Ñ\81меÑ\89ениÑ\8e %X/%X"
+msgstr "Ñ\82оÑ\87ка Ð²Ð¾Ñ\81Ñ\81Ñ\82ановлениÑ\8f \"%s\" Ñ\81оздана Ð² Ð¿Ð¾Ð·Ð¸Ñ\86ии %X/%X"
 
-#: access/transam/xlog.c:7619
+#: access/transam/xlog.c:7784
 #, c-format
 msgid "online backup was canceled, recovery cannot continue"
 msgstr ""
 "резервное копирование \"на ходу\" было отменено, продолжить восстановление "
 "нельзя"
 
-#: access/transam/xlog.c:7676
+#: access/transam/xlog.c:7841
 #, c-format
 msgid "unexpected timeline ID %u (should be %u) in shutdown checkpoint record"
 msgstr ""
 "неожиданный ID линии времени %u (должен быть %u) в записи точки выключения"
 
-#: access/transam/xlog.c:7734
+#: access/transam/xlog.c:7899
 #, c-format
 msgid "unexpected timeline ID %u (should be %u) in online checkpoint record"
 msgstr ""
 "неожиданный ID линии времени %u (должен быть %u) в записи точки активности"
 
-#: access/transam/xlog.c:7763
+#: access/transam/xlog.c:7928
 #, c-format
 msgid "unexpected timeline ID %u (should be %u) in end-of-recovery record"
 msgstr ""
 "неожиданный ID линии времени %u (должен быть %u) в записи конец-"
 "восстановления"
 
-#: access/transam/xlog.c:8021
+#: access/transam/xlog.c:8195
 #, c-format
 msgid "could not fsync write-through file \"%s\": %m"
 msgstr "не удалось синхронизировать с ФС файл сквозной записи %s: %m"
 
-#: access/transam/xlog.c:8027
+#: access/transam/xlog.c:8200
 #, c-format
 msgid "could not fdatasync file \"%s\": %m"
 msgstr "не удалось синхронизировать с ФС данные (fdatasync) файла \"%s\": %m"
 
-#: access/transam/xlog.c:8122 access/transam/xlog.c:8489
+#: access/transam/xlog.c:8285 access/transam/xlog.c:8608
 #, c-format
 msgid "WAL level not sufficient for making an online backup"
 msgstr ""
 "Выбранный уровень WAL недостаточен для резервного копирования \"на ходу\""
 
-#: access/transam/xlog.c:8123 access/transam/xlog.c:8490
-#: access/transam/xlogfuncs.c:199
+#: access/transam/xlog.c:8286 access/transam/xlog.c:8609
+#: access/transam/xlogfuncs.c:254
 #, c-format
 msgid "wal_level must be set to \"replica\" or \"logical\" at server start."
 msgstr "Установите wal_level \"replica\" или \"logical\" при запуске сервера."
 
-#: access/transam/xlog.c:8128
+#: access/transam/xlog.c:8291
 #, c-format
 msgid "backup label too long (max %d bytes)"
 msgstr "длина метки резервной копии превышает предел (%d байт)"
 
-#: access/transam/xlog.c:8244
+#: access/transam/xlog.c:8412
 #, c-format
 msgid ""
 "WAL generated with full_page_writes=off was replayed since last restartpoint"
@@ -2986,7 +3048,7 @@ msgstr ""
 "После последней точки перезапуска был воспроизведён WAL, созданный в режиме "
 "full_page_writes=off."
 
-#: access/transam/xlog.c:8246 access/transam/xlog.c:8602
+#: access/transam/xlog.c:8414 access/transam/xlog.c:8697
 #, c-format
 msgid ""
 "This means that the backup being taken on the standby is corrupt and should "
@@ -2998,32 +3060,23 @@ msgstr ""
 "CHECKPOINT на ведущем сервере, а затем попробуйте резервное копирование \"на "
 "ходу\" ещё раз."
 
-#: access/transam/xlog.c:8326 backup/basebackup.c:1345 utils/adt/misc.c:347
-#, c-format
-msgid "symbolic link \"%s\" target is too long"
-msgstr "целевой путь символической ссылки \"%s\" слишком длинный"
-
-#: access/transam/xlog.c:8376 backup/basebackup.c:1360
-#: commands/tablespace.c:399 commands/tablespace.c:581 utils/adt/misc.c:355
+#: access/transam/xlog.c:8481 backup/basebackup.c:1351 utils/adt/misc.c:354
 #, c-format
-msgid "tablespaces are not supported on this platform"
-msgstr "табличные пространства не поддерживаются на этой платформе"
+msgid "could not read symbolic link \"%s\": %m"
+msgstr "не удалось прочитать символическую ссылку \"%s\": %m"
 
-#: access/transam/xlog.c:8535 access/transam/xlog.c:8548
-#: access/transam/xlogrecovery.c:1192 access/transam/xlogrecovery.c:1199
-#: access/transam/xlogrecovery.c:1258 access/transam/xlogrecovery.c:1338
-#: access/transam/xlogrecovery.c:1362
+#: access/transam/xlog.c:8488 backup/basebackup.c:1356 utils/adt/misc.c:359
 #, c-format
-msgid "invalid data in file \"%s\""
-msgstr "неверные данные в файле \"%s\""
+msgid "symbolic link \"%s\" target is too long"
+msgstr "целевой путь символической ссылки \"%s\" слишком длинный"
 
-#: access/transam/xlog.c:8552 backup/basebackup.c:1200
+#: access/transam/xlog.c:8647 backup/basebackup.c:1217
 #, c-format
 msgid "the standby was promoted during online backup"
 msgstr ""
 "дежурный сервер был повышен в процессе резервного копирования \"на ходу\""
 
-#: access/transam/xlog.c:8553 backup/basebackup.c:1201
+#: access/transam/xlog.c:8648 backup/basebackup.c:1218
 #, c-format
 msgid ""
 "This means that the backup being taken is corrupt and should not be used. "
@@ -3032,7 +3085,7 @@ msgstr ""
 "Это означает, что создаваемая резервная копия испорчена и использовать её не "
 "следует. Попробуйте резервное копирование \"на ходу\" ещё раз."
 
-#: access/transam/xlog.c:8600
+#: access/transam/xlog.c:8695
 #, c-format
 msgid ""
 "WAL generated with full_page_writes=off was replayed during online backup"
@@ -3040,13 +3093,13 @@ msgstr ""
 "В процессе резервного копирования \"на ходу\" был воспроизведён WAL, "
 "созданный в режиме full_page_writes=off"
 
-#: access/transam/xlog.c:8725
+#: access/transam/xlog.c:8811
 #, c-format
 msgid "base backup done, waiting for required WAL segments to be archived"
 msgstr ""
 "базовое копирование выполнено, ожидается архивация нужных сегментов WAL"
 
-#: access/transam/xlog.c:8739
+#: access/transam/xlog.c:8825
 #, c-format
 msgid ""
 "still waiting for all required WAL segments to be archived (%d seconds "
@@ -3054,7 +3107,7 @@ msgid ""
 msgstr ""
 "продолжается ожидание архивации всех нужных сегментов WAL (прошло %d сек.)"
 
-#: access/transam/xlog.c:8741
+#: access/transam/xlog.c:8827
 #, c-format
 msgid ""
 "Check that your archive_command is executing properly.  You can safely "
@@ -3065,12 +3118,12 @@ msgstr ""
 "копирования можно отменить безопасно, но резервная копия базы будет "
 "непригодна без всех сегментов WAL."
 
-#: access/transam/xlog.c:8748
+#: access/transam/xlog.c:8834
 #, c-format
 msgid "all required WAL segments have been archived"
 msgstr "все нужные сегменты WAL заархивированы"
 
-#: access/transam/xlog.c:8752
+#: access/transam/xlog.c:8838
 #, c-format
 msgid ""
 "WAL archiving is not enabled; you must ensure that all required WAL segments "
@@ -3079,31 +3132,31 @@ msgstr ""
 "архивация WAL не настроена; вы должны обеспечить копирование всех требуемых "
 "сегментов WAL другими средствами для получения резервной копии"
 
-#: access/transam/xlog.c:8801
+#: access/transam/xlog.c:8877
 #, c-format
 msgid "aborting backup due to backend exiting before pg_backup_stop was called"
 msgstr ""
 "прерывание резервного копирования из-за завершения обслуживающего процесса "
 "до вызова pg_backup_stop"
 
-#: access/transam/xlogarchive.c:208
+#: access/transam/xlogarchive.c:207
 #, c-format
 msgid "archive file \"%s\" has wrong size: %lld instead of %lld"
 msgstr "файл архива \"%s\" имеет неправильный размер: %lld вместо %lld"
 
-#: access/transam/xlogarchive.c:217
+#: access/transam/xlogarchive.c:216
 #, c-format
 msgid "restored log file \"%s\" from archive"
 msgstr "файл журнала \"%s\" восстановлен из архива"
 
-#: access/transam/xlogarchive.c:231
+#: access/transam/xlogarchive.c:230
 #, c-format
 msgid "restore_command returned a zero exit status, but stat() failed."
 msgstr ""
 "Команда restore_command возвратила нулевой код состояния, но stat() выдала "
 "ошибку."
 
-#: access/transam/xlogarchive.c:263
+#: access/transam/xlogarchive.c:262
 #, c-format
 msgid "could not restore file \"%s\" from archive: %s"
 msgstr "восстановить файл \"%s\" из архива не удалось: %s"
@@ -3111,96 +3164,109 @@ msgstr "восстановить файл \"%s\" из архива не удал
 #. translator: First %s represents a postgresql.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:376
+#: access/transam/xlogarchive.c:340
 #, c-format
 msgid "%s \"%s\": %s"
 msgstr "%s \"%s\": %s"
 
-#: access/transam/xlogarchive.c:486 access/transam/xlogarchive.c:566
+#: access/transam/xlogarchive.c:450 access/transam/xlogarchive.c:530
 #, c-format
 msgid "could not create archive status file \"%s\": %m"
 msgstr "не удалось создать файл состояния архива \"%s\": %m"
 
-#: access/transam/xlogarchive.c:494 access/transam/xlogarchive.c:574
+#: access/transam/xlogarchive.c:458 access/transam/xlogarchive.c:538
 #, c-format
 msgid "could not write archive status file \"%s\": %m"
 msgstr "не удалось записать файл состояния архива \"%s\": %m"
 
-#: access/transam/xlogfuncs.c:74 backup/basebackup.c:957
+#: access/transam/xlogfuncs.c:75 backup/basebackup.c:973
 #, c-format
 msgid "a backup is already in progress in this session"
 msgstr "резервное копирование уже выполняется в этом сеансе"
 
-#: access/transam/xlogfuncs.c:126
+#: access/transam/xlogfuncs.c:146
 #, c-format
 msgid "backup is not in progress"
 msgstr "резервное копирование не выполняется"
 
-#: access/transam/xlogfuncs.c:127
+#: access/transam/xlogfuncs.c:147
 #, c-format
 msgid "Did you call pg_backup_start()?"
 msgstr "Вы вызывали pg_backup_start()?"
 
-#: access/transam/xlogfuncs.c:166 access/transam/xlogfuncs.c:193
-#: access/transam/xlogfuncs.c:232 access/transam/xlogfuncs.c:253
-#: access/transam/xlogfuncs.c:274
+#: access/transam/xlogfuncs.c:190 access/transam/xlogfuncs.c:248
+#: access/transam/xlogfuncs.c:287 access/transam/xlogfuncs.c:308
+#: access/transam/xlogfuncs.c:329
 #, c-format
 msgid "WAL control functions cannot be executed during recovery."
 msgstr "Функции управления WAL нельзя использовать в процессе восстановления."
 
-#: access/transam/xlogfuncs.c:198
+#: access/transam/xlogfuncs.c:215 access/transam/xlogfuncs.c:399
+#: access/transam/xlogfuncs.c:457
+#, c-format
+msgid "%s cannot be executed during recovery."
+msgstr "выполнить %s во время восстановления нельзя."
+
+#: access/transam/xlogfuncs.c:221
+#, c-format
+msgid "pg_log_standby_snapshot() can only be used if wal_level >= replica"
+msgstr ""
+"pg_log_standby_snapshot() можно использовать, только если wal_level >= "
+"replica"
+
+#: access/transam/xlogfuncs.c:253
 #, c-format
 msgid "WAL level not sufficient for creating a restore point"
 msgstr "Выбранный уровень WAL не достаточен для создания точки восстановления"
 
 # well-spelled: симв
-#: access/transam/xlogfuncs.c:206
+#: access/transam/xlogfuncs.c:261
 #, c-format
 msgid "value too long for restore point (maximum %d characters)"
 msgstr "значение для точки восстановления превышает предел (%d симв.)"
 
-#: access/transam/xlogfuncs.c:344 access/transam/xlogfuncs.c:402
+#: access/transam/xlogfuncs.c:496
 #, c-format
-msgid "%s cannot be executed during recovery."
-msgstr "вÑ\8bполниÑ\82Ñ\8c %s Ð²Ð¾ Ð²Ñ\80емÑ\8f Ð²Ð¾Ñ\81Ñ\81Ñ\82ановлениÑ\8f Ð½ÐµÐ»Ñ\8cзÑ\8f."
+msgid "invalid WAL file name \"%s\""
+msgstr "непÑ\80авилÑ\8cное Ð¸Ð¼Ñ\8f Ñ\84айла WAL \"%s\""
 
-#: access/transam/xlogfuncs.c:424 access/transam/xlogfuncs.c:454
-#: access/transam/xlogfuncs.c:478 access/transam/xlogfuncs.c:501
-#: access/transam/xlogfuncs.c:581
+#: access/transam/xlogfuncs.c:532 access/transam/xlogfuncs.c:562
+#: access/transam/xlogfuncs.c:586 access/transam/xlogfuncs.c:609
+#: access/transam/xlogfuncs.c:689
 #, c-format
 msgid "recovery is not in progress"
 msgstr "восстановление не выполняется"
 
-#: access/transam/xlogfuncs.c:425 access/transam/xlogfuncs.c:455
-#: access/transam/xlogfuncs.c:479 access/transam/xlogfuncs.c:502
-#: access/transam/xlogfuncs.c:582
+#: access/transam/xlogfuncs.c:533 access/transam/xlogfuncs.c:563
+#: access/transam/xlogfuncs.c:587 access/transam/xlogfuncs.c:610
+#: access/transam/xlogfuncs.c:690
 #, c-format
 msgid "Recovery control functions can only be executed during recovery."
 msgstr ""
 "Функции управления восстановлением можно использовать только в процессе "
 "восстановления."
 
-#: access/transam/xlogfuncs.c:430 access/transam/xlogfuncs.c:460
+#: access/transam/xlogfuncs.c:538 access/transam/xlogfuncs.c:568
 #, c-format
 msgid "standby promotion is ongoing"
 msgstr "производится повышение ведомого"
 
-#: access/transam/xlogfuncs.c:431 access/transam/xlogfuncs.c:461
+#: access/transam/xlogfuncs.c:539 access/transam/xlogfuncs.c:569
 #, c-format
 msgid "%s cannot be executed after promotion is triggered."
 msgstr "%s нельзя выполнять, когда производится повышение."
 
-#: access/transam/xlogfuncs.c:587
+#: access/transam/xlogfuncs.c:695
 #, c-format
 msgid "\"wait_seconds\" must not be negative or zero"
 msgstr "значение \"wait_seconds\" не должно быть отрицательным или нулевым"
 
-#: access/transam/xlogfuncs.c:607 storage/ipc/signalfuncs.c:252
+#: access/transam/xlogfuncs.c:715 storage/ipc/signalfuncs.c:260
 #, c-format
 msgid "failed to send signal to postmaster: %m"
 msgstr "отправить сигнал процессу postmaster не удалось: %m"
 
-#: access/transam/xlogfuncs.c:643
+#: access/transam/xlogfuncs.c:751
 #, c-format
 msgid "server did not promote within %d second"
 msgid_plural "server did not promote within %d seconds"
@@ -3208,7 +3274,7 @@ msgstr[0] "повышение сервера не завершилось за %d
 msgstr[1] "повышение сервера не завершилось за %d секунды"
 msgstr[2] "повышение сервера не завершилось за %d секунд"
 
-#: access/transam/xlogprefetcher.c:1090
+#: access/transam/xlogprefetcher.c:1092
 #, c-format
 msgid ""
 "recovery_prefetch is not supported on platforms that lack posix_fadvise()."
@@ -3216,74 +3282,73 @@ msgstr ""
 "recovery_prefetch не поддерживается на платформах, где отсутствует "
 "posix_fadvise()."
 
-#: access/transam/xlogreader.c:625
+#: access/transam/xlogreader.c:626
 #, c-format
-msgid "invalid record offset at %X/%X"
-msgstr "неверное смещение записи: %X/%X"
+msgid "invalid record offset at %X/%X: expected at least %u, got %u"
+msgstr ""
+"неверное смещение записи в позиции %X/%X: ожидалось минимум %u, получено %u"
 
-#: access/transam/xlogreader.c:633
+#: access/transam/xlogreader.c:635
 #, c-format
 msgid "contrecord is requested by %X/%X"
-msgstr "по Ñ\81меÑ\89ениÑ\8e %X/%X запрошено продолжение записи"
+msgstr "в Ð¿Ð¾Ð·Ð¸Ñ\86ии %X/%X запрошено продолжение записи"
 
-#: access/transam/xlogreader.c:674 access/transam/xlogreader.c:1121
+#: access/transam/xlogreader.c:676 access/transam/xlogreader.c:1119
 #, c-format
-msgid "invalid record length at %X/%X: wanted %u, got %u"
-msgstr "неверная длина записи по смещению %X/%X: ожидалось %u, получено %u"
+msgid "invalid record length at %X/%X: expected at least %u, got %u"
+msgstr ""
+"неверная длина записи в позиции %X/%X: ожидалось минимум %u, получено %u"
 
-#: access/transam/xlogreader.c:703
+#: access/transam/xlogreader.c:705
 #, c-format
 msgid "out of memory while trying to decode a record of length %u"
 msgstr "не удалось выделить память для декодирования записи длины %u"
 
-#: access/transam/xlogreader.c:725
+#: access/transam/xlogreader.c:727
 #, c-format
 msgid "record length %u at %X/%X too long"
-msgstr "длина Ð·Ð°Ð¿Ð¸Ñ\81и %u Ð¿Ð¾ Ñ\81меÑ\89ениÑ\8e %X/%X слишком велика"
+msgstr "длина Ð·Ð°Ð¿Ð¸Ñ\81и %u Ð² Ð¿Ð¾Ð·Ð¸Ñ\86ии %X/%X слишком велика"
 
-#: access/transam/xlogreader.c:774
+#: access/transam/xlogreader.c:776
 #, c-format
 msgid "there is no contrecord flag at %X/%X"
 msgstr "нет флага contrecord в позиции %X/%X"
 
-#: access/transam/xlogreader.c:787
+#: access/transam/xlogreader.c:789
 #, c-format
 msgid "invalid contrecord length %u (expected %lld) at %X/%X"
 msgstr "неверная длина contrecord: %u (ожидалась %lld) в позиции %X/%X"
 
-#: access/transam/xlogreader.c:922
-#, c-format
-msgid "missing contrecord at %X/%X"
-msgstr "нет записи contrecord в %X/%X"
-
-#: access/transam/xlogreader.c:1129
+#: access/transam/xlogreader.c:1127
 #, c-format
 msgid "invalid resource manager ID %u at %X/%X"
-msgstr "невеÑ\80нÑ\8bй ID Ð¼ÐµÐ½ÐµÐ´Ð¶ÐµÑ\80а Ñ\80еÑ\81Ñ\83Ñ\80Ñ\81ов %u Ð¿Ð¾ Ñ\81меÑ\89ениÑ\8e %X/%X"
+msgstr "невеÑ\80нÑ\8bй ID Ð¼ÐµÐ½ÐµÐ´Ð¶ÐµÑ\80а Ñ\80еÑ\81Ñ\83Ñ\80Ñ\81ов %u Ð² Ð¿Ð¾Ð·Ð¸Ñ\86ии %X/%X"
 
-#: access/transam/xlogreader.c:1142 access/transam/xlogreader.c:1158
+#: access/transam/xlogreader.c:1140 access/transam/xlogreader.c:1156
 #, c-format
 msgid "record with incorrect prev-link %X/%X at %X/%X"
-msgstr "запиÑ\81Ñ\8c Ñ\81 Ð½ÐµÐ²ÐµÑ\80ной Ñ\81Ñ\81Ñ\8bлкой Ð½Ð°Ð·Ð°Ð´ %X/%X Ð¿Ð¾ Ñ\81меÑ\89ениÑ\8e %X/%X"
+msgstr "запиÑ\81Ñ\8c Ñ\81 Ð½ÐµÐ²ÐµÑ\80ной Ñ\81Ñ\81Ñ\8bлкой Ð½Ð°Ð·Ð°Ð´ %X/%X Ð² Ð¿Ð¾Ð·Ð¸Ñ\86ии %X/%X"
 
-#: access/transam/xlogreader.c:1194
+#: access/transam/xlogreader.c:1192
 #, c-format
 msgid "incorrect resource manager data checksum in record at %X/%X"
 msgstr ""
-"некоÑ\80Ñ\80екÑ\82наÑ\8f ÐºÐ¾Ð½Ñ\82Ñ\80олÑ\8cнаÑ\8f Ñ\81Ñ\83мма Ð´Ð°Ð½Ð½Ñ\8bÑ\85 Ð¼ÐµÐ½ÐµÐ´Ð¶ÐµÑ\80а Ñ\80еÑ\81Ñ\83Ñ\80Ñ\81ов Ð² Ð·Ð°Ð¿Ð¸Ñ\81и Ð¿Ð¾ "
-"смещению %X/%X"
+"некоÑ\80Ñ\80екÑ\82наÑ\8f ÐºÐ¾Ð½Ñ\82Ñ\80олÑ\8cнаÑ\8f Ñ\81Ñ\83мма Ð´Ð°Ð½Ð½Ñ\8bÑ\85 Ð¼ÐµÐ½ÐµÐ´Ð¶ÐµÑ\80а Ñ\80еÑ\81Ñ\83Ñ\80Ñ\81ов Ð² Ð·Ð°Ð¿Ð¸Ñ\81и Ð² Ð¿Ð¾Ð·Ð¸Ñ\86ии "
+"%X/%X"
 
-#: access/transam/xlogreader.c:1231
+#: access/transam/xlogreader.c:1226
 #, c-format
-msgid "invalid magic number %04X in log segment %s, offset %u"
-msgstr "неверное магическое число %04X в сегменте журнала %s, смещение %u"
+msgid "invalid magic number %04X in WAL segment %s, LSN %X/%X, offset %u"
+msgstr ""
+"неверное магическое число %04X в сегменте WAL %s, LSN %X/%X, смещение %u"
 
-#: access/transam/xlogreader.c:1245 access/transam/xlogreader.c:1286
+#: access/transam/xlogreader.c:1241 access/transam/xlogreader.c:1283
 #, c-format
-msgid "invalid info bits %04X in log segment %s, offset %u"
-msgstr "неверные информационные биты %04X в сегменте журнала %s, смещение %u"
+msgid "invalid info bits %04X in WAL segment %s, LSN %X/%X, offset %u"
+msgstr ""
+"неверные информационные биты %04X в сегменте WAL %s, LSN %X/%X, смещение %u"
 
-#: access/transam/xlogreader.c:1260
+#: access/transam/xlogreader.c:1257
 #, c-format
 msgid ""
 "WAL file is from different database system: WAL file database system "
@@ -3292,7 +3357,7 @@ msgstr ""
 "файл WAL принадлежит другой СУБД: в нём указан идентификатор системы БД "
 "%llu, а идентификатор системы pg_control: %llu"
 
-#: access/transam/xlogreader.c:1268
+#: access/transam/xlogreader.c:1265
 #, c-format
 msgid ""
 "WAL file is from different database system: incorrect segment size in page "
@@ -3301,7 +3366,7 @@ msgstr ""
 "файл WAL принадлежит другой СУБД: некорректный размер сегмента в заголовке "
 "страницы"
 
-#: access/transam/xlogreader.c:1274
+#: access/transam/xlogreader.c:1271
 #, c-format
 msgid ""
 "WAL file is from different database system: incorrect XLOG_BLCKSZ in page "
@@ -3310,17 +3375,19 @@ msgstr ""
 "файл WAL принадлежит другой СУБД: некорректный XLOG_BLCKSZ в заголовке "
 "страницы"
 
-#: access/transam/xlogreader.c:1305
+#: access/transam/xlogreader.c:1303
 #, c-format
-msgid "unexpected pageaddr %X/%X in log segment %s, offset %u"
-msgstr "неожиданный pageaddr %X/%X в сегменте журнала %s, смещение %u"
+msgid "unexpected pageaddr %X/%X in WAL segment %s, LSN %X/%X, offset %u"
+msgstr "неожиданный pageaddr %X/%X в сегменте WAL %s, LSN %X/%X, смещение %u"
 
-#: access/transam/xlogreader.c:1330
+#: access/transam/xlogreader.c:1329
 #, c-format
-msgid "out-of-sequence timeline ID %u (after %u) in log segment %s, offset %u"
+msgid ""
+"out-of-sequence timeline ID %u (after %u) in WAL segment %s, LSN %X/%X, "
+"offset %u"
 msgstr ""
-"нарушение последовательности ID линии времени %u (после %u) в сегменте "
-"журнала %s, смещение %u"
+"нарушение последовательности ID линии времени %u (после %u) в сегменте WAL "
+"%s, LSN %X/%X, смещение %u"
 
 #: access/transam/xlogreader.c:1735
 #, c-format
@@ -3387,24 +3454,24 @@ msgstr "неверный идентификатор блока %u в позиц
 msgid "record with invalid length at %X/%X"
 msgstr "запись с неверной длиной в позиции %X/%X"
 
-#: access/transam/xlogreader.c:1967
+#: access/transam/xlogreader.c:1968
 #, c-format
 msgid "could not locate backup block with ID %d in WAL record"
 msgstr "не удалось найти копию блока с ID %d в записи журнала WAL"
 
-#: access/transam/xlogreader.c:2051
+#: access/transam/xlogreader.c:2052
 #, c-format
 msgid "could not restore image at %X/%X with invalid block %d specified"
 msgstr ""
 "не удалось восстановить образ в позиции %X/%X с указанным неверным блоком %d"
 
-#: access/transam/xlogreader.c:2058
+#: access/transam/xlogreader.c:2059
 #, c-format
 msgid "could not restore image at %X/%X with invalid state, block %d"
 msgstr ""
 "не удалось восстановить образ в позиции %X/%X с неверным состоянием, блок %d"
 
-#: access/transam/xlogreader.c:2085 access/transam/xlogreader.c:2102
+#: access/transam/xlogreader.c:2086 access/transam/xlogreader.c:2103
 #, c-format
 msgid ""
 "could not restore image at %X/%X compressed with %s not supported by build, "
@@ -3413,7 +3480,7 @@ msgstr ""
 "не удалось восстановить образ в позиции %X/%X, сжатый методом %s, который не "
 "поддерживается этой сборкой, блок %d"
 
-#: access/transam/xlogreader.c:2111
+#: access/transam/xlogreader.c:2112
 #, c-format
 msgid ""
 "could not restore image at %X/%X compressed with unknown method, block %d"
@@ -3421,54 +3488,54 @@ msgstr ""
 "не удалось восстановить образ в позиции %X/%X, сжатый неизвестным методом, "
 "блок %d"
 
-#: access/transam/xlogreader.c:2119
+#: access/transam/xlogreader.c:2120
 #, c-format
 msgid "could not decompress image at %X/%X, block %d"
 msgstr "не удалось развернуть образ в позиции %X/%X, блок %d"
 
-#: access/transam/xlogrecovery.c:526
+#: access/transam/xlogrecovery.c:547
 #, c-format
 msgid "entering standby mode"
 msgstr "переход в режим резервного сервера"
 
-#: access/transam/xlogrecovery.c:529
+#: access/transam/xlogrecovery.c:550
 #, c-format
 msgid "starting point-in-time recovery to XID %u"
 msgstr "начинается восстановление точки во времени до XID %u"
 
-#: access/transam/xlogrecovery.c:533
+#: access/transam/xlogrecovery.c:554
 #, c-format
 msgid "starting point-in-time recovery to %s"
 msgstr "начинается восстановление точки во времени до %s"
 
-#: access/transam/xlogrecovery.c:537
+#: access/transam/xlogrecovery.c:558
 #, c-format
 msgid "starting point-in-time recovery to \"%s\""
 msgstr "начинается восстановление точки во времени до \"%s\""
 
-#: access/transam/xlogrecovery.c:541
+#: access/transam/xlogrecovery.c:562
 #, c-format
 msgid "starting point-in-time recovery to WAL location (LSN) \"%X/%X\""
 msgstr ""
 "начинается восстановление точки во времени до позиции в WAL (LSN) \"%X/%X\""
 
-#: access/transam/xlogrecovery.c:545
+#: access/transam/xlogrecovery.c:566
 #, c-format
 msgid "starting point-in-time recovery to earliest consistent point"
 msgstr ""
 "начинается восстановление точки во времени до первой точки согласованности"
 
-#: access/transam/xlogrecovery.c:548
+#: access/transam/xlogrecovery.c:569
 #, c-format
 msgid "starting archive recovery"
 msgstr "начинается восстановление архива"
 
-#: access/transam/xlogrecovery.c:632
+#: access/transam/xlogrecovery.c:653
 #, c-format
 msgid "could not find redo location referenced by checkpoint record"
 msgstr "не удалось найти положение REDO, указанное записью контрольной точки"
 
-#: access/transam/xlogrecovery.c:633 access/transam/xlogrecovery.c:643
+#: access/transam/xlogrecovery.c:654 access/transam/xlogrecovery.c:664
 #, c-format
 msgid ""
 "If you are restoring from a backup, touch \"%s/recovery.signal\" and add "
@@ -3484,42 +3551,42 @@ msgstr ""
 "Будьте осторожны: при восстановлении резервной копии удаление \"%s/"
 "backup_label\" приведёт к повреждению кластера."
 
-#: access/transam/xlogrecovery.c:642
+#: access/transam/xlogrecovery.c:663
 #, c-format
 msgid "could not locate required checkpoint record"
 msgstr "не удалось считать нужную запись контрольной точки"
 
-#: access/transam/xlogrecovery.c:671 commands/tablespace.c:685
+#: access/transam/xlogrecovery.c:692 commands/tablespace.c:670
 #, c-format
 msgid "could not create symbolic link \"%s\": %m"
 msgstr "не удалось создать символическую ссылку \"%s\": %m"
 
-#: access/transam/xlogrecovery.c:703 access/transam/xlogrecovery.c:709
+#: access/transam/xlogrecovery.c:724 access/transam/xlogrecovery.c:730
 #, c-format
 msgid "ignoring file \"%s\" because no file \"%s\" exists"
 msgstr "файл \"%s\" игнорируется ввиду отсутствия файла \"%s\""
 
-#: access/transam/xlogrecovery.c:705
+#: access/transam/xlogrecovery.c:726
 #, c-format
 msgid "File \"%s\" was renamed to \"%s\"."
 msgstr "Файл \"%s\" был переименован в \"%s\"."
 
-#: access/transam/xlogrecovery.c:711
+#: access/transam/xlogrecovery.c:732
 #, c-format
 msgid "Could not rename file \"%s\" to \"%s\": %m."
 msgstr "Не удалось переименовать файл \"%s\" в \"%s\" (%m)."
 
-#: access/transam/xlogrecovery.c:765
+#: access/transam/xlogrecovery.c:786
 #, c-format
 msgid "could not locate a valid checkpoint record"
 msgstr "не удалось считать правильную запись контрольной точки"
 
-#: access/transam/xlogrecovery.c:789
+#: access/transam/xlogrecovery.c:810
 #, c-format
 msgid "requested timeline %u is not a child of this server's history"
 msgstr "в истории сервера нет ответвления запрошенной линии времени %u"
 
-#: access/transam/xlogrecovery.c:791
+#: access/transam/xlogrecovery.c:812
 #, c-format
 msgid ""
 "Latest checkpoint is at %X/%X on timeline %u, but in the history of the "
@@ -3528,7 +3595,7 @@ msgstr ""
 "Последняя контрольная точка: %X/%X на линии времени %u, но в истории "
 "запрошенной линии времени сервер ответвился с этой линии в %X/%X."
 
-#: access/transam/xlogrecovery.c:805
+#: access/transam/xlogrecovery.c:826
 #, c-format
 msgid ""
 "requested timeline %u does not contain minimum recovery point %X/%X on "
@@ -3537,22 +3604,22 @@ msgstr ""
 "запрошенная линия времени %u не содержит минимальную точку восстановления %X/"
 "%X на линии времени %u"
 
-#: access/transam/xlogrecovery.c:833
+#: access/transam/xlogrecovery.c:854
 #, c-format
 msgid "invalid next transaction ID"
 msgstr "неверный ID следующей транзакции"
 
-#: access/transam/xlogrecovery.c:838
+#: access/transam/xlogrecovery.c:859
 #, c-format
 msgid "invalid redo in checkpoint record"
 msgstr "неверная запись REDO в контрольной точке"
 
-#: access/transam/xlogrecovery.c:849
+#: access/transam/xlogrecovery.c:870
 #, c-format
 msgid "invalid redo record in shutdown checkpoint"
 msgstr "неверная запись REDO в контрольной точке выключения"
 
-#: access/transam/xlogrecovery.c:878
+#: access/transam/xlogrecovery.c:899
 #, c-format
 msgid ""
 "database system was not properly shut down; automatic recovery in progress"
@@ -3560,19 +3627,19 @@ msgstr ""
 "система БД была остановлена нештатно; производится автоматическое "
 "восстановление"
 
-#: access/transam/xlogrecovery.c:882
+#: access/transam/xlogrecovery.c:903
 #, c-format
 msgid "crash recovery starts in timeline %u and has target timeline %u"
 msgstr ""
 "восстановление после сбоя начинается на линии времени %u, целевая линия "
 "времени: %u"
 
-#: access/transam/xlogrecovery.c:925
+#: access/transam/xlogrecovery.c:946
 #, c-format
 msgid "backup_label contains data inconsistent with control file"
 msgstr "backup_label содержит данные, не согласованные с файлом pg_control"
 
-#: access/transam/xlogrecovery.c:926
+#: access/transam/xlogrecovery.c:947
 #, c-format
 msgid ""
 "This means that the backup is corrupted and you will have to use another "
@@ -3581,24 +3648,24 @@ msgstr ""
 "Это означает, что резервная копия повреждена и для восстановления БД "
 "придётся использовать другую копию."
 
-#: access/transam/xlogrecovery.c:980
+#: access/transam/xlogrecovery.c:1001
 #, c-format
 msgid "using recovery command file \"%s\" is not supported"
 msgstr ""
 "использование файла с конфигурацией восстановления \"%s\" не поддерживается"
 
-#: access/transam/xlogrecovery.c:1045
+#: access/transam/xlogrecovery.c:1066
 #, c-format
 msgid "standby mode is not supported by single-user servers"
 msgstr ""
 "режим резервного сервера не поддерживается однопользовательским сервером"
 
-#: access/transam/xlogrecovery.c:1062
+#: access/transam/xlogrecovery.c:1083
 #, c-format
 msgid "specified neither primary_conninfo nor restore_command"
 msgstr "не указано ни primary_conninfo, ни restore_command"
 
-#: access/transam/xlogrecovery.c:1063
+#: access/transam/xlogrecovery.c:1084
 #, c-format
 msgid ""
 "The database server will regularly poll the pg_wal subdirectory to check for "
@@ -3607,79 +3674,86 @@ msgstr ""
 "Сервер БД будет регулярно опрашивать подкаталог pg_wal и проверять "
 "содержащиеся в нём файлы."
 
-#: access/transam/xlogrecovery.c:1071
+#: access/transam/xlogrecovery.c:1092
 #, c-format
 msgid "must specify restore_command when standby mode is not enabled"
 msgstr ""
 "необходимо задать restore_command, если не выбран режим резервного сервера"
 
-#: access/transam/xlogrecovery.c:1109
+#: access/transam/xlogrecovery.c:1130
 #, c-format
 msgid "recovery target timeline %u does not exist"
 msgstr "целевая линия времени для восстановления %u не существует"
 
-#: access/transam/xlogrecovery.c:1259
+#: access/transam/xlogrecovery.c:1213 access/transam/xlogrecovery.c:1220
+#: access/transam/xlogrecovery.c:1279 access/transam/xlogrecovery.c:1359
+#: access/transam/xlogrecovery.c:1383
+#, c-format
+msgid "invalid data in file \"%s\""
+msgstr "неверные данные в файле \"%s\""
+
+#: access/transam/xlogrecovery.c:1280
 #, c-format
 msgid "Timeline ID parsed is %u, but expected %u."
 msgstr "Получен идентификатор линии времени %u, но ожидался %u."
 
-#: access/transam/xlogrecovery.c:1641
+#: access/transam/xlogrecovery.c:1662
 #, c-format
 msgid "redo starts at %X/%X"
 msgstr "запись REDO начинается со смещения %X/%X"
 
-#: access/transam/xlogrecovery.c:1654
+#: access/transam/xlogrecovery.c:1675
 #, c-format
 msgid "redo in progress, elapsed time: %ld.%02d s, current LSN: %X/%X"
 msgstr ""
 "выполняется воспроизведение, прошло времени: %ld.%02d с, текущий LSN: %X/%X"
 
-#: access/transam/xlogrecovery.c:1746
+#: access/transam/xlogrecovery.c:1767
 #, c-format
 msgid "requested recovery stop point is before consistent recovery point"
 msgstr ""
 "запрошенная точка остановки восстановления предшествует согласованной точке "
 "восстановления"
 
-#: access/transam/xlogrecovery.c:1778
+#: access/transam/xlogrecovery.c:1799
 #, c-format
 msgid "redo done at %X/%X system usage: %s"
 msgstr "записи REDO обработаны до смещения %X/%X, нагрузка системы: %s"
 
-#: access/transam/xlogrecovery.c:1784
+#: access/transam/xlogrecovery.c:1805
 #, c-format
 msgid "last completed transaction was at log time %s"
 msgstr "последняя завершённая транзакция была выполнена в %s"
 
-#: access/transam/xlogrecovery.c:1793
+#: access/transam/xlogrecovery.c:1814
 #, c-format
 msgid "redo is not required"
 msgstr "данные REDO не требуются"
 
-#: access/transam/xlogrecovery.c:1804
+#: access/transam/xlogrecovery.c:1825
 #, c-format
 msgid "recovery ended before configured recovery target was reached"
 msgstr "восстановление окончилось до достижения заданной цели восстановления"
 
-#: access/transam/xlogrecovery.c:1979
+#: access/transam/xlogrecovery.c:2019
 #, c-format
 msgid "successfully skipped missing contrecord at %X/%X, overwritten at %s"
 msgstr ""
 "успешно пропущена отсутствующая запись contrecord в %X/%X, перезаписанная в "
 "%s"
 
-#: access/transam/xlogrecovery.c:2046
+#: access/transam/xlogrecovery.c:2086
 #, c-format
 msgid "unexpected directory entry \"%s\" found in %s"
 msgstr "в %2$s обнаружен недопустимый элемент-каталог \"%1$s\""
 
-#: access/transam/xlogrecovery.c:2048
+#: access/transam/xlogrecovery.c:2088
 #, c-format
 msgid "All directory entries in pg_tblspc/ should be symbolic links."
 msgstr ""
 "Все элементы-каталоги в pg_tblspc/ должны быть символическими ссылками."
 
-#: access/transam/xlogrecovery.c:2049
+#: access/transam/xlogrecovery.c:2089
 #, c-format
 msgid ""
 "Remove those directories, or set allow_in_place_tablespaces to ON "
@@ -3688,18 +3762,18 @@ msgstr ""
 "Удалите эти каталоги или на время установите в allow_in_place_tablespaces "
 "значение ON, чтобы восстановление завершилось."
 
-#: access/transam/xlogrecovery.c:2123
+#: access/transam/xlogrecovery.c:2163
 #, c-format
 msgid "consistent recovery state reached at %X/%X"
-msgstr "Ñ\81оглаÑ\81ованное Ñ\81оÑ\81Ñ\82оÑ\8fние Ð²Ð¾Ñ\81Ñ\81Ñ\82ановлениÑ\8f Ð´Ð¾Ñ\81Ñ\82игнÑ\83Ñ\82о Ð¿Ð¾ Ñ\81меÑ\89ениÑ\8e %X/%X"
+msgstr "Ñ\81оглаÑ\81ованное Ñ\81оÑ\81Ñ\82оÑ\8fние Ð²Ð¾Ñ\81Ñ\81Ñ\82ановлениÑ\8f Ð´Ð¾Ñ\81Ñ\82игнÑ\83Ñ\82о Ð² Ð¿Ð¾Ð·Ð¸Ñ\86ии %X/%X"
 
 #. translator: %s is a WAL record description
-#: access/transam/xlogrecovery.c:2161
+#: access/transam/xlogrecovery.c:2201
 #, c-format
 msgid "WAL redo at %X/%X for %s"
 msgstr "запись REDO в WAL в позиции %X/%X для %s"
 
-#: access/transam/xlogrecovery.c:2257
+#: access/transam/xlogrecovery.c:2299
 #, c-format
 msgid ""
 "unexpected previous timeline ID %u (current timeline ID %u) in checkpoint "
@@ -3708,13 +3782,13 @@ msgstr ""
 "неожиданный ID предыдущей линии времени %u (ID текущей линии времени %u) в "
 "записи контрольной точки"
 
-#: access/transam/xlogrecovery.c:2266
+#: access/transam/xlogrecovery.c:2308
 #, c-format
 msgid "unexpected timeline ID %u (after %u) in checkpoint record"
 msgstr "неожиданный ID линии времени %u (после %u) в записи контрольной точки"
 
 # skip-rule: capital-letter-first
-#: access/transam/xlogrecovery.c:2282
+#: access/transam/xlogrecovery.c:2324
 #, c-format
 msgid ""
 "unexpected timeline ID %u in checkpoint record, before reaching minimum "
@@ -3723,145 +3797,122 @@ msgstr ""
 "неожиданный ID линии времени %u в записи контрольной точки, до достижения "
 "минимальной к. т. %X/%X на линии времени %u"
 
-#: access/transam/xlogrecovery.c:2466 access/transam/xlogrecovery.c:2742
+#: access/transam/xlogrecovery.c:2508 access/transam/xlogrecovery.c:2784
 #, c-format
 msgid "recovery stopping after reaching consistency"
 msgstr ""
 "восстановление останавливается после достижения согласованного состояния"
 
-#: access/transam/xlogrecovery.c:2487
+#: access/transam/xlogrecovery.c:2529
 #, c-format
 msgid "recovery stopping before WAL location (LSN) \"%X/%X\""
 msgstr "восстановление останавливается перед позицией в WAL (LSN) \"%X/%X\""
 
-#: access/transam/xlogrecovery.c:2577
+#: access/transam/xlogrecovery.c:2619
 #, c-format
 msgid "recovery stopping before commit of transaction %u, time %s"
 msgstr ""
 "восстановление останавливается перед фиксированием транзакции %u, время %s"
 
-#: access/transam/xlogrecovery.c:2584
+#: access/transam/xlogrecovery.c:2626
 #, c-format
 msgid "recovery stopping before abort of transaction %u, time %s"
 msgstr ""
 "восстановление останавливается перед прерыванием транзакции %u, время %s"
 
-#: access/transam/xlogrecovery.c:2637
+#: access/transam/xlogrecovery.c:2679
 #, c-format
 msgid "recovery stopping at restore point \"%s\", time %s"
 msgstr "восстановление останавливается в точке восстановления \"%s\", время %s"
 
-#: access/transam/xlogrecovery.c:2655
+#: access/transam/xlogrecovery.c:2697
 #, c-format
 msgid "recovery stopping after WAL location (LSN) \"%X/%X\""
 msgstr "восстановление останавливается после позиции в WAL (LSN) \"%X/%X\""
 
-#: access/transam/xlogrecovery.c:2722
+#: access/transam/xlogrecovery.c:2764
 #, c-format
 msgid "recovery stopping after commit of transaction %u, time %s"
 msgstr ""
 "восстановление останавливается после фиксирования транзакции %u, время %s"
 
-#: access/transam/xlogrecovery.c:2730
+#: access/transam/xlogrecovery.c:2772
 #, c-format
 msgid "recovery stopping after abort of transaction %u, time %s"
 msgstr ""
 "восстановление останавливается после прерывания транзакции %u, время %s"
 
-#: access/transam/xlogrecovery.c:2811
+#: access/transam/xlogrecovery.c:2853
 #, c-format
 msgid "pausing at the end of recovery"
 msgstr "остановка в конце восстановления"
 
-#: access/transam/xlogrecovery.c:2812
+#: access/transam/xlogrecovery.c:2854
 #, c-format
 msgid "Execute pg_wal_replay_resume() to promote."
 msgstr "Выполните pg_wal_replay_resume() для повышения."
 
-#: access/transam/xlogrecovery.c:2815 access/transam/xlogrecovery.c:4625
+#: access/transam/xlogrecovery.c:2857 access/transam/xlogrecovery.c:4594
 #, c-format
 msgid "recovery has paused"
 msgstr "восстановление приостановлено"
 
-#: access/transam/xlogrecovery.c:2816
+#: access/transam/xlogrecovery.c:2858
 #, c-format
 msgid "Execute pg_wal_replay_resume() to continue."
 msgstr "Выполните pg_wal_replay_resume() для продолжения."
 
-#: access/transam/xlogrecovery.c:3082
+#: access/transam/xlogrecovery.c:3121
 #, c-format
-msgid "unexpected timeline ID %u in log segment %s, offset %u"
-msgstr "неожиданный ID линии времени %u в сегменте журнала %s, смещение %u"
+msgid "unexpected timeline ID %u in WAL segment %s, LSN %X/%X, offset %u"
+msgstr ""
+"неожиданный ID линии времени %u в сегменте WAL %s, LSN %X/%X, смещение %u"
 
-#: access/transam/xlogrecovery.c:3287
+#: access/transam/xlogrecovery.c:3329
 #, c-format
-msgid "could not read from log segment %s, offset %u: %m"
-msgstr "не удалось прочитать сегмент журнала %s, смещение %u: %m"
+msgid "could not read from WAL segment %s, LSN %X/%X, offset %u: %m"
+msgstr "не удалось прочитать сегмент WAL %s, LSN %X/%X, смещение %u: %m"
 
-#: access/transam/xlogrecovery.c:3293
+#: access/transam/xlogrecovery.c:3336
 #, c-format
-msgid "could not read from log segment %s, offset %u: read %d of %zu"
+msgid ""
+"could not read from WAL segment %s, LSN %X/%X, offset %u: read %d of %zu"
 msgstr ""
-"не удалось прочитать из сегмента журнала %s по смещению %u (прочитано байт: "
+"не удалось прочитать сегмент WAL %s, LSN %X/%X, смещение %u (прочитано байт: "
 "%d из %zu)"
 
-#: access/transam/xlogrecovery.c:3942
-#, c-format
-msgid "invalid primary checkpoint link in control file"
-msgstr "неверная ссылка на первичную контрольную точку в файле pg_control"
-
-#: access/transam/xlogrecovery.c:3946
-#, c-format
-msgid "invalid checkpoint link in backup_label file"
-msgstr "неверная ссылка на контрольную точку в файле backup_label"
-
-#: access/transam/xlogrecovery.c:3964
+#: access/transam/xlogrecovery.c:3976
 #, c-format
-msgid "invalid primary checkpoint record"
-msgstr "невеÑ\80наÑ\8f Ð·Ð°Ð¿Ð¸Ñ\81Ñ\8c Ð¿ÐµÑ\80виÑ\87ной контрольной точки"
+msgid "invalid checkpoint location"
+msgstr "невеÑ\80ное Ð¿Ð¾Ð»Ð¾Ð¶ÐµÐ½Ð¸Ðµ контрольной точки"
 
-#: access/transam/xlogrecovery.c:3968
+#: access/transam/xlogrecovery.c:3986
 #, c-format
 msgid "invalid checkpoint record"
 msgstr "неверная запись контрольной точки"
 
-#: access/transam/xlogrecovery.c:3979
-#, c-format
-msgid "invalid resource manager ID in primary checkpoint record"
-msgstr "неверный ID менеджера ресурсов в записи первичной контрольной точки"
-
-#: access/transam/xlogrecovery.c:3983
+#: access/transam/xlogrecovery.c:3992
 #, c-format
 msgid "invalid resource manager ID in checkpoint record"
 msgstr "неверный ID менеджера ресурсов в записи контрольной точки"
 
-#: access/transam/xlogrecovery.c:3996
-#, c-format
-msgid "invalid xl_info in primary checkpoint record"
-msgstr "неверные флаги xl_info в записи первичной контрольной точки"
-
 #: access/transam/xlogrecovery.c:4000
 #, c-format
 msgid "invalid xl_info in checkpoint record"
 msgstr "неверные флаги xl_info в записи контрольной точки"
 
-#: access/transam/xlogrecovery.c:4011
-#, c-format
-msgid "invalid length of primary checkpoint record"
-msgstr "неверная длина записи первичной контрольной точки"
-
-#: access/transam/xlogrecovery.c:4015
+#: access/transam/xlogrecovery.c:4006
 #, c-format
 msgid "invalid length of checkpoint record"
 msgstr "неверная длина записи контрольной точки"
 
-#: access/transam/xlogrecovery.c:4071
+#: access/transam/xlogrecovery.c:4060
 #, c-format
 msgid "new timeline %u is not a child of database system timeline %u"
 msgstr ""
 "новая линия времени %u не является ответвлением линии времени системы БД %u"
 
-#: access/transam/xlogrecovery.c:4085
+#: access/transam/xlogrecovery.c:4074
 #, c-format
 msgid ""
 "new timeline %u forked off current database system timeline %u before "
@@ -3870,40 +3921,30 @@ msgstr ""
 "новая линия времени %u ответвилась от текущей линии времени базы данных %u "
 "до текущей точки восстановления %X/%X"
 
-#: access/transam/xlogrecovery.c:4104
+#: access/transam/xlogrecovery.c:4093
 #, c-format
 msgid "new target timeline is %u"
 msgstr "новая целевая линия времени %u"
 
-#: access/transam/xlogrecovery.c:4307
+#: access/transam/xlogrecovery.c:4296
 #, c-format
 msgid "WAL receiver process shutdown requested"
 msgstr "получен запрос на выключение процесса приёмника WAL"
 
-#: access/transam/xlogrecovery.c:4370
+#: access/transam/xlogrecovery.c:4356
 #, c-format
 msgid "received promote request"
 msgstr "получен запрос повышения статуса"
 
-#: access/transam/xlogrecovery.c:4383
-#, c-format
-msgid "promote trigger file found: %s"
-msgstr "найден файл триггера повышения: %s"
-
-#: access/transam/xlogrecovery.c:4391
-#, c-format
-msgid "could not stat promote trigger file \"%s\": %m"
-msgstr "не удалось получить информацию о файле триггера повышения \"%s\": %m"
-
-#: access/transam/xlogrecovery.c:4616
+#: access/transam/xlogrecovery.c:4585
 #, c-format
 msgid "hot standby is not possible because of insufficient parameter settings"
 msgstr ""
 "режим горячего резерва невозможен из-за отсутствия достаточных значений "
 "параметров"
 
-#: access/transam/xlogrecovery.c:4617 access/transam/xlogrecovery.c:4644
-#: access/transam/xlogrecovery.c:4674
+#: access/transam/xlogrecovery.c:4586 access/transam/xlogrecovery.c:4613
+#: access/transam/xlogrecovery.c:4643
 #, c-format
 msgid ""
 "%s = %d is a lower setting than on the primary server, where its value was "
@@ -3911,12 +3952,12 @@ msgid ""
 msgstr ""
 "Параметр %s = %d меньше, чем на ведущем сервере, где его значение было %d."
 
-#: access/transam/xlogrecovery.c:4626
+#: access/transam/xlogrecovery.c:4595
 #, c-format
 msgid "If recovery is unpaused, the server will shut down."
 msgstr "В случае возобновления восстановления сервер отключится."
 
-#: access/transam/xlogrecovery.c:4627
+#: access/transam/xlogrecovery.c:4596
 #, c-format
 msgid ""
 "You can then restart the server after making the necessary configuration "
@@ -3925,24 +3966,24 @@ msgstr ""
 "Затем вы можете перезапустить сервер после внесения необходимых изменений "
 "конфигурации."
 
-#: access/transam/xlogrecovery.c:4638
+#: access/transam/xlogrecovery.c:4607
 #, c-format
 msgid "promotion is not possible because of insufficient parameter settings"
 msgstr "повышение невозможно из-за отсутствия достаточных значений параметров"
 
-#: access/transam/xlogrecovery.c:4648
+#: access/transam/xlogrecovery.c:4617
 #, c-format
 msgid "Restart the server after making the necessary configuration changes."
 msgstr ""
 "Перезапустите сервер после внесения необходимых изменений конфигурации."
 
-#: access/transam/xlogrecovery.c:4672
+#: access/transam/xlogrecovery.c:4641
 #, c-format
 msgid "recovery aborted because of insufficient parameter settings"
 msgstr ""
 "восстановление прервано из-за отсутствия достаточных значений параметров"
 
-#: access/transam/xlogrecovery.c:4678
+#: access/transam/xlogrecovery.c:4647
 #, c-format
 msgid ""
 "You can restart the server after making the necessary configuration changes."
@@ -3950,17 +3991,82 @@ msgstr ""
 "Вы можете перезапустить сервер после внесения необходимых изменений "
 "конфигурации."
 
-#: access/transam/xlogutils.c:1053
+#: access/transam/xlogrecovery.c:4689
+#, c-format
+msgid "multiple recovery targets specified"
+msgstr "указано несколько целей восстановления"
+
+#: access/transam/xlogrecovery.c:4690
+#, c-format
+msgid ""
+"At most one of recovery_target, recovery_target_lsn, recovery_target_name, "
+"recovery_target_time, recovery_target_xid may be set."
+msgstr ""
+"Может быть указана только одна из целей: recovery_target, "
+"recovery_target_lsn, recovery_target_name, recovery_target_time, "
+"recovery_target_xid."
+
+#: access/transam/xlogrecovery.c:4701
+#, c-format
+msgid "The only allowed value is \"immediate\"."
+msgstr "Единственное допустимое значение: \"immediate\"."
+
+#: access/transam/xlogrecovery.c:4853 utils/adt/timestamp.c:186
+#: utils/adt/timestamp.c:439
+#, c-format
+msgid "timestamp out of range: \"%s\""
+msgstr "timestamp вне диапазона: \"%s\""
+
+#: access/transam/xlogrecovery.c:4898
+#, c-format
+msgid "recovery_target_timeline is not a valid number."
+msgstr "recovery_target_timeline не является допустимым числом."
+
+#: access/transam/xlogutils.c:1039
+#, c-format
+msgid "could not read from WAL segment %s, offset %d: %m"
+msgstr "не удалось прочитать из сегмента WAL %s по смещению %d: %m"
+
+#: access/transam/xlogutils.c:1046
 #, c-format
-msgid "could not read from log segment %s, offset %d: %m"
-msgstr "не удалось прочитать сегмент журнала %s, смещение %d: %m"
+msgid "could not read from WAL segment %s, offset %d: read %d of %d"
+msgstr ""
+"не удалось прочитать из сегмента WAL %s по смещению %d (прочитано байт: %d "
+"из %d)"
+
+#: archive/shell_archive.c:96
+#, c-format
+msgid "archive command failed with exit code %d"
+msgstr "команда архивации завершилась ошибкой с кодом %d"
+
+#: archive/shell_archive.c:98 archive/shell_archive.c:108
+#: archive/shell_archive.c:114 archive/shell_archive.c:123
+#, c-format
+msgid "The failed archive command was: %s"
+msgstr "Команда архивации с ошибкой: %s"
+
+#: archive/shell_archive.c:105
+#, c-format
+msgid "archive command was terminated by exception 0x%X"
+msgstr "команда архивации была прервана исключением 0x%X"
 
-#: access/transam/xlogutils.c:1060
+#: archive/shell_archive.c:107 postmaster/postmaster.c:3675
 #, c-format
-msgid "could not read from log segment %s, offset %d: read %d of %d"
+msgid ""
+"See C include file \"ntstatus.h\" for a description of the hexadecimal value."
 msgstr ""
-"не удалось прочитать из сегмента журнала %s по смещению %d (прочитано байт: "
-"%d из %d)"
+"Описание этого шестнадцатеричного значения ищите во включаемом C-файле "
+"\"ntstatus.h\""
+
+#: archive/shell_archive.c:112
+#, c-format
+msgid "archive command was terminated by signal %d: %s"
+msgstr "команда архивации завершена по сигналу %d: %s"
+
+#: archive/shell_archive.c:121
+#, c-format
+msgid "archive command exited with unrecognized status %d"
+msgstr "команда архивации завершилась с неизвестным кодом состояния %d"
 
 #: backup/backup_manifest.c:253
 #, c-format
@@ -3982,27 +4088,22 @@ msgstr "начальная линия времени %u не найдена в 
 msgid "could not rewind temporary file"
 msgstr "не удалось переместиться во временном файле"
 
-#: backup/backup_manifest.c:374
-#, c-format
-msgid "could not read from temporary file: read only %zu of %zu bytes"
-msgstr "не удалось прочитать временный файл (прочитано байт: %zu из %zu)"
-
-#: backup/basebackup.c:454
+#: backup/basebackup.c:470
 #, c-format
 msgid "could not find any WAL files"
 msgstr "не удалось найти ни одного файла WAL"
 
-#: backup/basebackup.c:469 backup/basebackup.c:484 backup/basebackup.c:493
+#: backup/basebackup.c:485 backup/basebackup.c:500 backup/basebackup.c:509
 #, c-format
 msgid "could not find WAL file \"%s\""
 msgstr "не удалось найти файл WAL \"%s\""
 
-#: backup/basebackup.c:535 backup/basebackup.c:560
+#: backup/basebackup.c:551 backup/basebackup.c:576
 #, c-format
 msgid "unexpected WAL file size \"%s\""
 msgstr "неприемлемый размер файла WAL \"%s\""
 
-#: backup/basebackup.c:630
+#: backup/basebackup.c:646
 #, c-format
 msgid "%lld total checksum verification failure"
 msgid_plural "%lld total checksum verification failures"
@@ -4010,88 +4111,93 @@ msgstr[0] "всего ошибок контрольных сумм: %lld"
 msgstr[1] "всего ошибок контрольных сумм: %lld"
 msgstr[2] "всего ошибок контрольных сумм: %lld"
 
-#: backup/basebackup.c:637
+#: backup/basebackup.c:653
 #, c-format
 msgid "checksum verification failure during base backup"
 msgstr "при базовом резервном копировании выявлены ошибки контрольных сумм"
 
-#: backup/basebackup.c:706 backup/basebackup.c:715 backup/basebackup.c:726
-#: backup/basebackup.c:743 backup/basebackup.c:752 backup/basebackup.c:763
-#: backup/basebackup.c:780 backup/basebackup.c:789 backup/basebackup.c:801
-#: backup/basebackup.c:825 backup/basebackup.c:839 backup/basebackup.c:850
-#: backup/basebackup.c:861 backup/basebackup.c:874
+#: backup/basebackup.c:722 backup/basebackup.c:731 backup/basebackup.c:742
+#: backup/basebackup.c:759 backup/basebackup.c:768 backup/basebackup.c:779
+#: backup/basebackup.c:796 backup/basebackup.c:805 backup/basebackup.c:817
+#: backup/basebackup.c:841 backup/basebackup.c:855 backup/basebackup.c:866
+#: backup/basebackup.c:877 backup/basebackup.c:890
 #, c-format
 msgid "duplicate option \"%s\""
 msgstr "повторяющийся параметр \"%s\""
 
-#: backup/basebackup.c:734
+#: backup/basebackup.c:750
 #, c-format
 msgid "unrecognized checkpoint type: \"%s\""
 msgstr "нераспознанный тип контрольной точки: \"%s\""
 
-#: backup/basebackup.c:769
+#: backup/basebackup.c:785
 #, c-format
 msgid "%d is outside the valid range for parameter \"%s\" (%d .. %d)"
 msgstr "%d вне диапазона, допустимого для параметра \"%s\" (%d .. %d)"
 
-#: backup/basebackup.c:814
+#: backup/basebackup.c:830
 #, c-format
 msgid "unrecognized manifest option: \"%s\""
 msgstr "нераспознанный параметр в манифесте: \"%s\""
 
-#: backup/basebackup.c:830
+#: backup/basebackup.c:846
 #, c-format
 msgid "unrecognized checksum algorithm: \"%s\""
 msgstr "нераспознанный алгоритм расчёта контрольных сумм: \"%s\""
 
-#: backup/basebackup.c:865
+#: backup/basebackup.c:881
 #, c-format
 msgid "unrecognized compression algorithm: \"%s\""
 msgstr "нераспознанный алгоритм сжатия: \"%s\""
 
-#: backup/basebackup.c:881
+#: backup/basebackup.c:897
 #, c-format
 msgid "unrecognized base backup option: \"%s\""
 msgstr "нераспознанный параметр операции базового копирования: \"%s\""
 
-#: backup/basebackup.c:892
+#: backup/basebackup.c:908
 #, c-format
 msgid "manifest checksums require a backup manifest"
 msgstr "контрольные суммы не могут рассчитываться без манифеста копии"
 
 # skip-rule: capital-letter-first
-#: backup/basebackup.c:901
+#: backup/basebackup.c:917
 #, c-format
 msgid "target detail cannot be used without target"
 msgstr "доп. информацию о получателе нельзя задать без указания получателя"
 
 # skip-rule: capital-letter-first
-#: backup/basebackup.c:910 backup/basebackup_target.c:218
+#: backup/basebackup.c:926 backup/basebackup_target.c:218
 #, c-format
 msgid "target \"%s\" does not accept a target detail"
 msgstr "получатель \"%s\" не принимает доп. информацию"
 
-#: backup/basebackup.c:921
+#: backup/basebackup.c:937
 #, c-format
 msgid "compression detail cannot be specified unless compression is enabled"
 msgstr "параметры сжатия нельзя указывать, если не включено сжатие"
 
-#: backup/basebackup.c:934
+#: backup/basebackup.c:950
 #, c-format
 msgid "invalid compression specification: %s"
 msgstr "неправильное указание сжатия: %s"
 
-#: backup/basebackup.c:1431
+#: backup/basebackup.c:1116 backup/basebackup.c:1294
+#, c-format
+msgid "could not stat file or directory \"%s\": %m"
+msgstr "не удалось получить информацию о файле или каталоге \"%s\": %m"
+
+#: backup/basebackup.c:1430
 #, c-format
 msgid "skipping special file \"%s\""
 msgstr "специальный файл \"%s\" пропускается"
 
-#: backup/basebackup.c:1550
+#: backup/basebackup.c:1542
 #, c-format
 msgid "invalid segment number %d in file \"%s\""
 msgstr "неверный номер сегмента %d в файле \"%s\""
 
-#: backup/basebackup.c:1590
+#: backup/basebackup.c:1574
 #, c-format
 msgid ""
 "could not verify checksum in file \"%s\", block %u: read buffer size %d and "
@@ -4100,7 +4206,7 @@ msgstr ""
 "не удалось проверить контрольную сумму в файле \"%s\", блоке %u: размер "
 "прочитанного буфера (%d) отличается от размера страницы (%d)"
 
-#: backup/basebackup.c:1664
+#: backup/basebackup.c:1658
 #, c-format
 msgid ""
 "checksum verification failed in file \"%s\", block %u: calculated %X but "
@@ -4109,14 +4215,14 @@ msgstr ""
 "ошибка контрольной суммы в файле \"%s\", блоке %u: вычислено значение %X, но "
 "ожидалось %X"
 
-#: backup/basebackup.c:1671
+#: backup/basebackup.c:1665
 #, c-format
 msgid ""
 "further checksum verification failures in file \"%s\" will not be reported"
 msgstr ""
 "о дальнейших ошибках контрольных сумм в файле \"%s\" сообщаться не будет"
 
-#: backup/basebackup.c:1718
+#: backup/basebackup.c:1721
 #, c-format
 msgid "file \"%s\" has a total of %d checksum verification failure"
 msgid_plural "file \"%s\" has a total of %d checksum verification failures"
@@ -4124,12 +4230,12 @@ msgstr[0] "всего в файле \"%s\" обнаружено ошибок к
 msgstr[1] "всего в файле \"%s\" обнаружено ошибок контрольных сумм: %d"
 msgstr[2] "всего в файле \"%s\" обнаружено ошибок контрольных сумм: %d"
 
-#: backup/basebackup.c:1764
+#: backup/basebackup.c:1767
 #, c-format
 msgid "file name too long for tar format: \"%s\""
 msgstr "слишком длинное имя файла для формата tar: \"%s\""
 
-#: backup/basebackup.c:1769
+#: backup/basebackup.c:1772
 #, c-format
 msgid ""
 "symbolic link target too long for tar format: file name \"%s\", target \"%s\""
@@ -4154,46 +4260,52 @@ msgstr "сжатие lz4 не поддерживается в данной сб
 
 #: backup/basebackup_server.c:75
 #, c-format
+msgid "permission denied to create backup stored on server"
+msgstr "нет прав для создания копии, сохраняемой на сервере"
+
+#: backup/basebackup_server.c:76
+#, c-format
 msgid ""
-"must be superuser or a role with privileges of the pg_write_server_files "
-"role to create backup stored on server"
+"Only roles with privileges of the \"%s\" role may create a backup stored on "
+"the server."
 msgstr ""
-"длÑ\8f Ñ\81озданиÑ\8f ÐºÐ¾Ð¿Ð¸Ð¸, Ñ\81оÑ\85Ñ\80анÑ\8fемой Ð½Ð° Ñ\81Ñ\82оÑ\80оне Ñ\81еÑ\80веÑ\80а, Ð½Ñ\83жно Ð±Ñ\8bÑ\82Ñ\8c "
-"суперпользователем или иметь права роли pg_write_server_files"
+"СоздаваÑ\82Ñ\8c ÐºÐ¾Ð¿Ð¸Ð¸, Ñ\81оÑ\85Ñ\80анÑ\8fемÑ\8bе Ð½Ð° Ñ\81еÑ\80веÑ\80е, Ð¼Ð¾Ð³Ñ\83Ñ\82 Ñ\82олÑ\8cко Ñ\80оли Ñ\81 Ð¿Ñ\80авами Ñ\80оли "
+"\"%s\"."
 
-#: backup/basebackup_server.c:89
+#: backup/basebackup_server.c:91
 #, c-format
 msgid "relative path not allowed for backup stored on server"
 msgstr ""
 "для копии, сохраняемой на стороне сервера, нельзя указывать относительный "
 "путь"
 
-#: backup/basebackup_server.c:102 commands/dbcommands.c:500
+#: backup/basebackup_server.c:104 commands/dbcommands.c:501
 #: commands/tablespace.c:163 commands/tablespace.c:179
-#: commands/tablespace.c:614 commands/tablespace.c:659 replication/slot.c:1558
+#: commands/tablespace.c:599 commands/tablespace.c:644 replication/slot.c:1704
 #: storage/file/copydir.c:47
 #, c-format
 msgid "could not create directory \"%s\": %m"
 msgstr "не удалось создать каталог \"%s\": %m"
 
-#: backup/basebackup_server.c:115
+#: backup/basebackup_server.c:117
 #, c-format
 msgid "directory \"%s\" exists but is not empty"
 msgstr "каталог \"%s\" существует, но он не пуст"
 
-#: backup/basebackup_server.c:123 utils/init/postinit.c:1072
+#: backup/basebackup_server.c:125 utils/init/postinit.c:1160
 #, c-format
 msgid "could not access directory \"%s\": %m"
 msgstr "ошибка доступа к каталогу \"%s\": %m"
 
-#: backup/basebackup_server.c:175 backup/basebackup_server.c:182
-#: backup/basebackup_server.c:268 backup/basebackup_server.c:275
-#: storage/smgr/md.c:487 storage/smgr/md.c:494 storage/smgr/md.c:785
+#: backup/basebackup_server.c:177 backup/basebackup_server.c:184
+#: backup/basebackup_server.c:270 backup/basebackup_server.c:277
+#: storage/smgr/md.c:504 storage/smgr/md.c:511 storage/smgr/md.c:593
+#: storage/smgr/md.c:615 storage/smgr/md.c:865
 #, c-format
 msgid "Check free disk space."
 msgstr "Проверьте, есть ли место на диске."
 
-#: backup/basebackup_server.c:179 backup/basebackup_server.c:272
+#: backup/basebackup_server.c:181 backup/basebackup_server.c:274
 #, c-format
 msgid "could not write file \"%s\": wrote only %d of %d bytes at offset %u"
 msgstr ""
@@ -4220,238 +4332,257 @@ msgstr "сжатие zstd не поддерживается в данной сб
 msgid "could not set compression worker count to %d: %s"
 msgstr "не удалось установить для zstd число потоков %d: %s"
 
-#: bootstrap/bootstrap.c:263
+#: backup/basebackup_zstd.c:129
 #, c-format
-msgid "-X requires a power of two value between 1 MB and 1 GB"
-msgstr ""
-"для -X требуется число, равное степени двух, в интервале от 1 МБ до 1 ГБ"
+msgid "could not enable long-distance mode: %s"
+msgstr "не удалось включить режим большой дистанции: %s"
 
-#: bootstrap/bootstrap.c:280 postmaster/postmaster.c:846 tcop/postgres.c:3906
+#: bootstrap/bootstrap.c:243 postmaster/postmaster.c:721 tcop/postgres.c:3819
 #, c-format
 msgid "--%s requires a value"
 msgstr "для --%s требуется значение"
 
-#: bootstrap/bootstrap.c:285 postmaster/postmaster.c:851 tcop/postgres.c:3911
+#: bootstrap/bootstrap.c:248 postmaster/postmaster.c:726 tcop/postgres.c:3824
 #, c-format
 msgid "-c %s requires a value"
 msgstr "для -c %s требуется значение"
 
-#: bootstrap/bootstrap.c:296 postmaster/postmaster.c:863
-#: postmaster/postmaster.c:876
+#: bootstrap/bootstrap.c:289
+#, c-format
+msgid "-X requires a power of two value between 1 MB and 1 GB"
+msgstr ""
+"для -X требуется число, равное степени двух, в интервале от 1 МБ до 1 ГБ"
+
+#: bootstrap/bootstrap.c:295 postmaster/postmaster.c:844
+#: postmaster/postmaster.c:857
 #, c-format
 msgid "Try \"%s --help\" for more information.\n"
 msgstr "Для дополнительной информации попробуйте \"%s --help\".\n"
 
-#: bootstrap/bootstrap.c:305
+#: bootstrap/bootstrap.c:304
 #, c-format
 msgid "%s: invalid command-line arguments\n"
 msgstr "%s: неверные аргументы командной строки\n"
 
-#: catalog/aclchk.c:185
+#: catalog/aclchk.c:201
 #, c-format
 msgid "grant options can only be granted to roles"
 msgstr "право назначения прав можно давать только ролям"
 
-#: catalog/aclchk.c:307
+#: catalog/aclchk.c:323
 #, c-format
 msgid "no privileges were granted for column \"%s\" of relation \"%s\""
 msgstr "для столбца \"%s\" отношения \"%s\" не были назначены никакие права"
 
-#: catalog/aclchk.c:312
+#: catalog/aclchk.c:328
 #, c-format
 msgid "no privileges were granted for \"%s\""
 msgstr "для объекта \"%s\" не были назначены никакие права"
 
-#: catalog/aclchk.c:320
+#: catalog/aclchk.c:336
 #, c-format
 msgid "not all privileges were granted for column \"%s\" of relation \"%s\""
 msgstr ""
 "для столбца \"%s\" отношения \"%s\" были назначены не все запрошенные права"
 
-#: catalog/aclchk.c:325
+#: catalog/aclchk.c:341
 #, c-format
 msgid "not all privileges were granted for \"%s\""
 msgstr "для объекта \"%s\" были назначены не все запрошенные права"
 
-#: catalog/aclchk.c:336
+#: catalog/aclchk.c:352
 #, c-format
 msgid "no privileges could be revoked for column \"%s\" of relation \"%s\""
 msgstr "для столбца \"%s\" отношения \"%s\" не были отозваны никакие права"
 
-#: catalog/aclchk.c:341
+#: catalog/aclchk.c:357
 #, c-format
 msgid "no privileges could be revoked for \"%s\""
 msgstr "для объекта \"%s\" не были отозваны никакие права"
 
-#: catalog/aclchk.c:349
+#: catalog/aclchk.c:365
 #, c-format
 msgid ""
 "not all privileges could be revoked for column \"%s\" of relation \"%s\""
 msgstr "для столбца \"%s\" отношения \"%s\" были отозваны не все права"
 
-#: catalog/aclchk.c:354
+#: catalog/aclchk.c:370
 #, c-format
 msgid "not all privileges could be revoked for \"%s\""
 msgstr "для объекта \"%s\" были отозваны не все права"
 
-#: catalog/aclchk.c:386
+#: catalog/aclchk.c:402
 #, c-format
 msgid "grantor must be current user"
 msgstr "праводателем должен быть текущий пользователь"
 
-#: catalog/aclchk.c:454 catalog/aclchk.c:1029
+#: catalog/aclchk.c:470 catalog/aclchk.c:1045
 #, c-format
 msgid "invalid privilege type %s for relation"
 msgstr "право %s неприменимо для отношений"
 
-#: catalog/aclchk.c:458 catalog/aclchk.c:1033
+#: catalog/aclchk.c:474 catalog/aclchk.c:1049
 #, c-format
 msgid "invalid privilege type %s for sequence"
 msgstr "право %s неприменимо для последовательностей"
 
-#: catalog/aclchk.c:462
+#: catalog/aclchk.c:478
 #, c-format
 msgid "invalid privilege type %s for database"
 msgstr "право %s неприменимо для баз данных"
 
-#: catalog/aclchk.c:466
+#: catalog/aclchk.c:482
 #, c-format
 msgid "invalid privilege type %s for domain"
 msgstr "право %s неприменимо для домена"
 
-#: catalog/aclchk.c:470 catalog/aclchk.c:1037
+#: catalog/aclchk.c:486 catalog/aclchk.c:1053
 #, c-format
 msgid "invalid privilege type %s for function"
 msgstr "право %s неприменимо для функций"
 
-#: catalog/aclchk.c:474
+#: catalog/aclchk.c:490
 #, c-format
 msgid "invalid privilege type %s for language"
 msgstr "право %s неприменимо для языков"
 
-#: catalog/aclchk.c:478
+#: catalog/aclchk.c:494
 #, c-format
 msgid "invalid privilege type %s for large object"
 msgstr "право %s неприменимо для больших объектов"
 
-#: catalog/aclchk.c:482 catalog/aclchk.c:1053
+#: catalog/aclchk.c:498 catalog/aclchk.c:1069
 #, c-format
 msgid "invalid privilege type %s for schema"
 msgstr "право %s неприменимо для схем"
 
-#: catalog/aclchk.c:486 catalog/aclchk.c:1041
+#: catalog/aclchk.c:502 catalog/aclchk.c:1057
 #, c-format
 msgid "invalid privilege type %s for procedure"
 msgstr "право %s неприменимо для процедур"
 
-#: catalog/aclchk.c:490 catalog/aclchk.c:1045
+#: catalog/aclchk.c:506 catalog/aclchk.c:1061
 #, c-format
 msgid "invalid privilege type %s for routine"
 msgstr "право %s неприменимо для подпрограмм"
 
-#: catalog/aclchk.c:494
+#: catalog/aclchk.c:510
 #, c-format
 msgid "invalid privilege type %s for tablespace"
 msgstr "право %s неприменимо для табличных пространств"
 
-#: catalog/aclchk.c:498 catalog/aclchk.c:1049
+#: catalog/aclchk.c:514 catalog/aclchk.c:1065
 #, c-format
 msgid "invalid privilege type %s for type"
 msgstr "право %s неприменимо для типа"
 
-#: catalog/aclchk.c:502
+#: catalog/aclchk.c:518
 #, c-format
 msgid "invalid privilege type %s for foreign-data wrapper"
 msgstr "право %s неприменимо для обёрток сторонних данных"
 
-#: catalog/aclchk.c:506
+#: catalog/aclchk.c:522
 #, c-format
 msgid "invalid privilege type %s for foreign server"
 msgstr "право %s неприменимо для сторонних серверов"
 
-#: catalog/aclchk.c:510
+#: catalog/aclchk.c:526
 #, c-format
 msgid "invalid privilege type %s for parameter"
 msgstr "неверный тип прав %s для параметра"
 
-#: catalog/aclchk.c:549
+#: catalog/aclchk.c:565
 #, c-format
 msgid "column privileges are only valid for relations"
 msgstr "права для столбцов применимы только к отношениям"
 
-#: catalog/aclchk.c:712 catalog/aclchk.c:4486 catalog/aclchk.c:5333
-#: catalog/objectaddress.c:1072 catalog/pg_largeobject.c:116
-#: storage/large_object/inv_api.c:287
+#: catalog/aclchk.c:728 catalog/aclchk.c:3555 catalog/objectaddress.c:1092
+#: catalog/pg_largeobject.c:116 storage/large_object/inv_api.c:287
 #, c-format
 msgid "large object %u does not exist"
 msgstr "большой объект %u не существует"
 
-#: catalog/aclchk.c:1086
+#: catalog/aclchk.c:1102
 #, c-format
 msgid "default privileges cannot be set for columns"
 msgstr "права по умолчанию нельзя определить для столбцов"
 
-#: catalog/aclchk.c:1246
+#: catalog/aclchk.c:1138
+#, c-format
+msgid "permission denied to change default privileges"
+msgstr "нет полномочий для изменения прав доступа по умолчанию"
+
+#: catalog/aclchk.c:1256
 #, c-format
 msgid "cannot use IN SCHEMA clause when using GRANT/REVOKE ON SCHEMAS"
 msgstr "предложение IN SCHEMA нельзя использовать в GRANT/REVOKE ON SCHEMAS"
 
-#: catalog/aclchk.c:1587 catalog/catalog.c:627 catalog/objectaddress.c:1543
-#: catalog/pg_publication.c:510 commands/analyze.c:391 commands/copy.c:776
-#: commands/sequence.c:1663 commands/tablecmds.c:7231 commands/tablecmds.c:7387
-#: commands/tablecmds.c:7437 commands/tablecmds.c:7511
-#: commands/tablecmds.c:7581 commands/tablecmds.c:7693
-#: commands/tablecmds.c:7787 commands/tablecmds.c:7846
-#: commands/tablecmds.c:7935 commands/tablecmds.c:7965
-#: commands/tablecmds.c:8093 commands/tablecmds.c:8175
-#: commands/tablecmds.c:8331 commands/tablecmds.c:8449
-#: commands/tablecmds.c:12167 commands/tablecmds.c:12348
-#: commands/tablecmds.c:12508 commands/tablecmds.c:13672
-#: commands/tablecmds.c:16240 commands/trigger.c:958 parser/analyze.c:2468
-#: parser/parse_relation.c:725 parser/parse_target.c:1063
-#: parser/parse_type.c:144 parser/parse_utilcmd.c:3434
-#: parser/parse_utilcmd.c:3470 parser/parse_utilcmd.c:3512 utils/adt/acl.c:2869
-#: utils/adt/ruleutils.c:2810
+#: catalog/aclchk.c:1595 catalog/catalog.c:631 catalog/objectaddress.c:1561
+#: catalog/pg_publication.c:533 commands/analyze.c:390 commands/copy.c:837
+#: commands/sequence.c:1663 commands/tablecmds.c:7339 commands/tablecmds.c:7495
+#: commands/tablecmds.c:7545 commands/tablecmds.c:7619
+#: commands/tablecmds.c:7689 commands/tablecmds.c:7801
+#: commands/tablecmds.c:7895 commands/tablecmds.c:7954
+#: commands/tablecmds.c:8043 commands/tablecmds.c:8073
+#: commands/tablecmds.c:8201 commands/tablecmds.c:8283
+#: commands/tablecmds.c:8417 commands/tablecmds.c:8525
+#: commands/tablecmds.c:12240 commands/tablecmds.c:12421
+#: commands/tablecmds.c:12582 commands/tablecmds.c:13744
+#: commands/tablecmds.c:16273 commands/trigger.c:949 parser/analyze.c:2518
+#: parser/parse_relation.c:737 parser/parse_target.c:1054
+#: parser/parse_type.c:144 parser/parse_utilcmd.c:3413
+#: parser/parse_utilcmd.c:3449 parser/parse_utilcmd.c:3491 utils/adt/acl.c:2876
+#: utils/adt/ruleutils.c:2799
 #, c-format
 msgid "column \"%s\" of relation \"%s\" does not exist"
 msgstr "столбец \"%s\" в таблице \"%s\" не существует"
 
-#: catalog/aclchk.c:1850 catalog/objectaddress.c:1383 commands/sequence.c:1172
-#: commands/tablecmds.c:253 commands/tablecmds.c:17104 utils/adt/acl.c:2077
-#: utils/adt/acl.c:2107 utils/adt/acl.c:2139 utils/adt/acl.c:2171
-#: utils/adt/acl.c:2199 utils/adt/acl.c:2229
+#: catalog/aclchk.c:1840
+#, c-format
+msgid "\"%s\" is an index"
+msgstr "\"%s\" - это индекс"
+
+#: catalog/aclchk.c:1847 commands/tablecmds.c:13901 commands/tablecmds.c:17172
+#, c-format
+msgid "\"%s\" is a composite type"
+msgstr "\"%s\" - это составной тип"
+
+#: catalog/aclchk.c:1855 catalog/objectaddress.c:1401 commands/sequence.c:1171
+#: commands/tablecmds.c:254 commands/tablecmds.c:17136 utils/adt/acl.c:2084
+#: utils/adt/acl.c:2114 utils/adt/acl.c:2146 utils/adt/acl.c:2178
+#: utils/adt/acl.c:2206 utils/adt/acl.c:2236
 #, c-format
 msgid "\"%s\" is not a sequence"
 msgstr "\"%s\" - это не последовательность"
 
-#: catalog/aclchk.c:1888
+#: catalog/aclchk.c:1893
 #, c-format
 msgid "sequence \"%s\" only supports USAGE, SELECT, and UPDATE privileges"
 msgstr ""
 "для последовательности \"%s\" применимы только права USAGE, SELECT и UPDATE"
 
-#: catalog/aclchk.c:1905
+#: catalog/aclchk.c:1910
 #, c-format
 msgid "invalid privilege type %s for table"
 msgstr "право %s неприменимо для таблиц"
 
-#: catalog/aclchk.c:2071
+#: catalog/aclchk.c:2072
 #, c-format
 msgid "invalid privilege type %s for column"
 msgstr "право %s неприменимо для столбцов"
 
-#: catalog/aclchk.c:2084
+#: catalog/aclchk.c:2085
 #, c-format
 msgid "sequence \"%s\" only supports SELECT column privileges"
 msgstr "для последовательности \"%s\" применимо только право SELECT"
 
 # TO REVIEW
-#: catalog/aclchk.c:2666
+#: catalog/aclchk.c:2275
 #, c-format
 msgid "language \"%s\" is not trusted"
 msgstr "язык \"%s\" не является доверенным"
 
-#: catalog/aclchk.c:2668
+#: catalog/aclchk.c:2277
 #, c-format
 msgid ""
 "GRANT and REVOKE are not allowed on untrusted languages, because only "
@@ -4460,487 +4591,400 @@ msgstr ""
 "GRANT и REVOKE не допускаются для недоверенных языков, так как использовать "
 "такие языки могут только суперпользователи."
 
-#: catalog/aclchk.c:3182
+#: catalog/aclchk.c:2427
 #, c-format
 msgid "cannot set privileges of array types"
 msgstr "для типов массивов нельзя определить права"
 
-#: catalog/aclchk.c:3183
+#: catalog/aclchk.c:2428
 #, c-format
 msgid "Set the privileges of the element type instead."
 msgstr "Вместо этого установите права для типа элемента."
 
-#: catalog/aclchk.c:3190 catalog/objectaddress.c:1649
+#: catalog/aclchk.c:2435 catalog/objectaddress.c:1667
 #, c-format
 msgid "\"%s\" is not a domain"
 msgstr "\"%s\" - это не домен"
 
-#: catalog/aclchk.c:3462
+#: catalog/aclchk.c:2619
 #, c-format
 msgid "unrecognized privilege type \"%s\""
 msgstr "нераспознанное право: \"%s\""
 
-#: catalog/aclchk.c:3527
+#: catalog/aclchk.c:2684
 #, c-format
 msgid "permission denied for aggregate %s"
 msgstr "нет доступа к агрегату %s"
 
-#: catalog/aclchk.c:3530
+#: catalog/aclchk.c:2687
 #, c-format
 msgid "permission denied for collation %s"
 msgstr "нет доступа к правилу сортировки %s"
 
-#: catalog/aclchk.c:3533
+#: catalog/aclchk.c:2690
 #, c-format
 msgid "permission denied for column %s"
 msgstr "нет доступа к столбцу %s"
 
-#: catalog/aclchk.c:3536
+#: catalog/aclchk.c:2693
 #, c-format
 msgid "permission denied for conversion %s"
 msgstr "нет доступа к преобразованию %s"
 
-#: catalog/aclchk.c:3539
+#: catalog/aclchk.c:2696
 #, c-format
 msgid "permission denied for database %s"
 msgstr "нет доступа к базе данных %s"
 
-#: catalog/aclchk.c:3542
+#: catalog/aclchk.c:2699
 #, c-format
 msgid "permission denied for domain %s"
 msgstr "нет доступа к домену %s"
 
-#: catalog/aclchk.c:3545
+#: catalog/aclchk.c:2702
 #, c-format
 msgid "permission denied for event trigger %s"
 msgstr "нет доступа к событийному триггеру %s"
 
-#: catalog/aclchk.c:3548
+#: catalog/aclchk.c:2705
 #, c-format
 msgid "permission denied for extension %s"
 msgstr "нет доступа к расширению %s"
 
-#: catalog/aclchk.c:3551
+#: catalog/aclchk.c:2708
 #, c-format
 msgid "permission denied for foreign-data wrapper %s"
 msgstr "нет доступа к обёртке сторонних данных %s"
 
-#: catalog/aclchk.c:3554
+#: catalog/aclchk.c:2711
 #, c-format
 msgid "permission denied for foreign server %s"
 msgstr "нет доступа к стороннему серверу %s"
 
-#: catalog/aclchk.c:3557
+#: catalog/aclchk.c:2714
 #, c-format
 msgid "permission denied for foreign table %s"
 msgstr "нет доступа к сторонней таблице %s"
 
-#: catalog/aclchk.c:3560
+#: catalog/aclchk.c:2717
 #, c-format
 msgid "permission denied for function %s"
 msgstr "нет доступа к функции %s"
 
-#: catalog/aclchk.c:3563
+#: catalog/aclchk.c:2720
 #, c-format
 msgid "permission denied for index %s"
 msgstr "нет доступа к индексу %s"
 
-#: catalog/aclchk.c:3566
+#: catalog/aclchk.c:2723
 #, c-format
 msgid "permission denied for language %s"
 msgstr "нет доступа к языку %s"
 
-#: catalog/aclchk.c:3569
+#: catalog/aclchk.c:2726
 #, c-format
 msgid "permission denied for large object %s"
 msgstr "нет доступа к большому объекту %s"
 
-#: catalog/aclchk.c:3572
+#: catalog/aclchk.c:2729
 #, c-format
 msgid "permission denied for materialized view %s"
 msgstr "нет доступа к материализованному представлению %s"
 
-#: catalog/aclchk.c:3575
+#: catalog/aclchk.c:2732
 #, c-format
 msgid "permission denied for operator class %s"
 msgstr "нет доступа к классу операторов %s"
 
-#: catalog/aclchk.c:3578
+#: catalog/aclchk.c:2735
 #, c-format
 msgid "permission denied for operator %s"
 msgstr "нет доступа к оператору %s"
 
-#: catalog/aclchk.c:3581
+#: catalog/aclchk.c:2738
 #, c-format
 msgid "permission denied for operator family %s"
 msgstr "нет доступа к семейству операторов %s"
 
-#: catalog/aclchk.c:3584
+#: catalog/aclchk.c:2741
 #, c-format
 msgid "permission denied for parameter %s"
 msgstr "нет доступа к параметру %s"
 
-#: catalog/aclchk.c:3587
+#: catalog/aclchk.c:2744
 #, c-format
 msgid "permission denied for policy %s"
 msgstr "нет доступа к политике %s"
 
-#: catalog/aclchk.c:3590
+#: catalog/aclchk.c:2747
 #, c-format
 msgid "permission denied for procedure %s"
 msgstr "нет доступа к процедуре %s"
 
-#: catalog/aclchk.c:3593
+#: catalog/aclchk.c:2750
 #, c-format
 msgid "permission denied for publication %s"
 msgstr "нет доступа к публикации %s"
 
-#: catalog/aclchk.c:3596
+#: catalog/aclchk.c:2753
 #, c-format
 msgid "permission denied for routine %s"
 msgstr "нет доступа к подпрограмме %s"
 
-#: catalog/aclchk.c:3599
+#: catalog/aclchk.c:2756
 #, c-format
 msgid "permission denied for schema %s"
 msgstr "нет доступа к схеме %s"
 
-#: catalog/aclchk.c:3602 commands/sequence.c:660 commands/sequence.c:886
-#: commands/sequence.c:928 commands/sequence.c:969 commands/sequence.c:1761
-#: commands/sequence.c:1825
+#: catalog/aclchk.c:2759 commands/sequence.c:659 commands/sequence.c:885
+#: commands/sequence.c:927 commands/sequence.c:968 commands/sequence.c:1761
+#: commands/sequence.c:1810
 #, c-format
 msgid "permission denied for sequence %s"
 msgstr "нет доступа к последовательности %s"
 
-#: catalog/aclchk.c:3605
+#: catalog/aclchk.c:2762
 #, c-format
 msgid "permission denied for statistics object %s"
 msgstr "нет доступа к объекту статистики %s"
 
-#: catalog/aclchk.c:3608
+#: catalog/aclchk.c:2765
 #, c-format
 msgid "permission denied for subscription %s"
 msgstr "нет доступа к подписке %s"
 
-#: catalog/aclchk.c:3611
+#: catalog/aclchk.c:2768
 #, c-format
 msgid "permission denied for table %s"
 msgstr "нет доступа к таблице %s"
 
-#: catalog/aclchk.c:3614
+#: catalog/aclchk.c:2771
 #, c-format
 msgid "permission denied for tablespace %s"
 msgstr "нет доступа к табличному пространству %s"
 
-#: catalog/aclchk.c:3617
+#: catalog/aclchk.c:2774
 #, c-format
 msgid "permission denied for text search configuration %s"
 msgstr "нет доступа к конфигурации текстового поиска %s"
 
-#: catalog/aclchk.c:3620
+#: catalog/aclchk.c:2777
 #, c-format
 msgid "permission denied for text search dictionary %s"
 msgstr "нет доступа к словарю текстового поиска %s"
 
-#: catalog/aclchk.c:3623
+#: catalog/aclchk.c:2780
 #, c-format
 msgid "permission denied for type %s"
 msgstr "нет доступа к типу %s"
 
-#: catalog/aclchk.c:3626
+#: catalog/aclchk.c:2783
 #, c-format
 msgid "permission denied for view %s"
 msgstr "нет доступа к представлению %s"
 
-#: catalog/aclchk.c:3662
+#: catalog/aclchk.c:2819
 #, c-format
 msgid "must be owner of aggregate %s"
 msgstr "нужно быть владельцем агрегата %s"
 
-#: catalog/aclchk.c:3665
+#: catalog/aclchk.c:2822
 #, c-format
 msgid "must be owner of collation %s"
 msgstr "нужно быть владельцем правила сортировки %s"
 
-#: catalog/aclchk.c:3668
+#: catalog/aclchk.c:2825
 #, c-format
 msgid "must be owner of conversion %s"
 msgstr "нужно быть владельцем преобразования %s"
 
-#: catalog/aclchk.c:3671
+#: catalog/aclchk.c:2828
 #, c-format
 msgid "must be owner of database %s"
 msgstr "нужно быть владельцем базы %s"
 
-#: catalog/aclchk.c:3674
+#: catalog/aclchk.c:2831
 #, c-format
 msgid "must be owner of domain %s"
 msgstr "нужно быть владельцем домена %s"
 
-#: catalog/aclchk.c:3677
+#: catalog/aclchk.c:2834
 #, c-format
 msgid "must be owner of event trigger %s"
 msgstr "нужно быть владельцем событийного триггера %s"
 
-#: catalog/aclchk.c:3680
+#: catalog/aclchk.c:2837
 #, c-format
 msgid "must be owner of extension %s"
 msgstr "нужно быть владельцем расширения %s"
 
-#: catalog/aclchk.c:3683
+#: catalog/aclchk.c:2840
 #, c-format
 msgid "must be owner of foreign-data wrapper %s"
 msgstr "нужно быть владельцем обёртки сторонних данных %s"
 
-#: catalog/aclchk.c:3686
+#: catalog/aclchk.c:2843
 #, c-format
 msgid "must be owner of foreign server %s"
 msgstr "нужно быть \"владельцем\" стороннего сервера %s"
 
-#: catalog/aclchk.c:3689
+#: catalog/aclchk.c:2846
 #, c-format
 msgid "must be owner of foreign table %s"
 msgstr "нужно быть владельцем сторонней таблицы %s"
 
-#: catalog/aclchk.c:3692
+#: catalog/aclchk.c:2849
 #, c-format
 msgid "must be owner of function %s"
 msgstr "нужно быть владельцем функции %s"
 
-#: catalog/aclchk.c:3695
+#: catalog/aclchk.c:2852
 #, c-format
 msgid "must be owner of index %s"
 msgstr "нужно быть владельцем индекса %s"
 
-#: catalog/aclchk.c:3698
+#: catalog/aclchk.c:2855
 #, c-format
 msgid "must be owner of language %s"
 msgstr "нужно быть владельцем языка %s"
 
-#: catalog/aclchk.c:3701
+#: catalog/aclchk.c:2858
 #, c-format
 msgid "must be owner of large object %s"
 msgstr "нужно быть владельцем большого объекта %s"
 
-#: catalog/aclchk.c:3704
+#: catalog/aclchk.c:2861
 #, c-format
 msgid "must be owner of materialized view %s"
 msgstr "нужно быть владельцем материализованного представления %s"
 
-#: catalog/aclchk.c:3707
+#: catalog/aclchk.c:2864
 #, c-format
 msgid "must be owner of operator class %s"
 msgstr "нужно быть владельцем класса операторов %s"
 
-#: catalog/aclchk.c:3710
+#: catalog/aclchk.c:2867
 #, c-format
 msgid "must be owner of operator %s"
 msgstr "нужно быть владельцем оператора %s"
 
-#: catalog/aclchk.c:3713
+#: catalog/aclchk.c:2870
 #, c-format
 msgid "must be owner of operator family %s"
 msgstr "нужно быть владельцем семейства операторов %s"
 
-#: catalog/aclchk.c:3716
+#: catalog/aclchk.c:2873
 #, c-format
 msgid "must be owner of procedure %s"
 msgstr "нужно быть владельцем процедуры %s"
 
-#: catalog/aclchk.c:3719
+#: catalog/aclchk.c:2876
 #, c-format
 msgid "must be owner of publication %s"
 msgstr "нужно быть владельцем публикации %s"
 
-#: catalog/aclchk.c:3722
+#: catalog/aclchk.c:2879
 #, c-format
 msgid "must be owner of routine %s"
 msgstr "нужно быть владельцем подпрограммы %s"
 
-#: catalog/aclchk.c:3725
+#: catalog/aclchk.c:2882
 #, c-format
 msgid "must be owner of sequence %s"
 msgstr "нужно быть владельцем последовательности %s"
 
-#: catalog/aclchk.c:3728
+#: catalog/aclchk.c:2885
 #, c-format
 msgid "must be owner of subscription %s"
 msgstr "нужно быть владельцем подписки %s"
 
-#: catalog/aclchk.c:3731
+#: catalog/aclchk.c:2888
 #, c-format
 msgid "must be owner of table %s"
 msgstr "нужно быть владельцем таблицы %s"
 
-#: catalog/aclchk.c:3734
+#: catalog/aclchk.c:2891
 #, c-format
 msgid "must be owner of type %s"
 msgstr "нужно быть владельцем типа %s"
 
-#: catalog/aclchk.c:3737
+#: catalog/aclchk.c:2894
 #, c-format
 msgid "must be owner of view %s"
 msgstr "нужно быть владельцем представления %s"
 
-#: catalog/aclchk.c:3740
+#: catalog/aclchk.c:2897
 #, c-format
 msgid "must be owner of schema %s"
 msgstr "нужно быть владельцем схемы %s"
 
-#: catalog/aclchk.c:3743
+#: catalog/aclchk.c:2900
 #, c-format
 msgid "must be owner of statistics object %s"
 msgstr "нужно быть владельцем объекта статистики %s"
 
-#: catalog/aclchk.c:3746
+#: catalog/aclchk.c:2903
 #, c-format
 msgid "must be owner of tablespace %s"
 msgstr "нужно быть владельцем табличного пространства %s"
 
-#: catalog/aclchk.c:3749
+#: catalog/aclchk.c:2906
 #, c-format
 msgid "must be owner of text search configuration %s"
 msgstr "нужно быть владельцем конфигурации текстового поиска %s"
 
-#: catalog/aclchk.c:3752
+#: catalog/aclchk.c:2909
 #, c-format
 msgid "must be owner of text search dictionary %s"
 msgstr "нужно быть владельцем словаря текстового поиска %s"
 
-#: catalog/aclchk.c:3766
+#: catalog/aclchk.c:2923
 #, c-format
 msgid "must be owner of relation %s"
 msgstr "нужно быть владельцем отношения %s"
 
-#: catalog/aclchk.c:3812
+#: catalog/aclchk.c:2969
 #, c-format
 msgid "permission denied for column \"%s\" of relation \"%s\""
 msgstr "нет доступа к столбцу \"%s\" отношения \"%s\""
 
-#: catalog/aclchk.c:3957 catalog/aclchk.c:3976
+#: catalog/aclchk.c:3104 catalog/aclchk.c:3979 catalog/aclchk.c:4011
+#, c-format
+msgid "%s with OID %u does not exist"
+msgstr "%s с OID %u не существует"
+
+#: catalog/aclchk.c:3188 catalog/aclchk.c:3207
 #, c-format
 msgid "attribute %d of relation with OID %u does not exist"
 msgstr "атрибут %d отношения с OID %u не существует"
 
-#: catalog/aclchk.c:4071 catalog/aclchk.c:5184
+#: catalog/aclchk.c:3302
 #, c-format
 msgid "relation with OID %u does not exist"
 msgstr "отношение с OID %u не существует"
 
-#: catalog/aclchk.c:4184 catalog/aclchk.c:5602 commands/dbcommands.c:2581
-#, c-format
-msgid "database with OID %u does not exist"
-msgstr "база данных с OID %u не существует"
-
-#: catalog/aclchk.c:4299
+#: catalog/aclchk.c:3476
 #, c-format
 msgid "parameter ACL with OID %u does not exist"
 msgstr "ACL параметра с OID %u не существует"
 
-#: catalog/aclchk.c:4353 catalog/aclchk.c:5262 tcop/fastpath.c:141
-#: utils/fmgr/fmgr.c:2037
-#, c-format
-msgid "function with OID %u does not exist"
-msgstr "функция с OID %u не существует"
-
-#: catalog/aclchk.c:4407 catalog/aclchk.c:5288
-#, c-format
-msgid "language with OID %u does not exist"
-msgstr "язык с OID %u не существует"
-
-#: catalog/aclchk.c:4571 catalog/aclchk.c:5360 commands/collationcmds.c:595
-#: commands/publicationcmds.c:1745
+#: catalog/aclchk.c:3640 commands/collationcmds.c:808
+#: commands/publicationcmds.c:1746
 #, c-format
 msgid "schema with OID %u does not exist"
 msgstr "схема с OID %u не существует"
 
-#: catalog/aclchk.c:4635 catalog/aclchk.c:5387 utils/adt/genfile.c:632
-#, c-format
-msgid "tablespace with OID %u does not exist"
-msgstr "табличное пространство с OID %u не существует"
-
-#: catalog/aclchk.c:4694 catalog/aclchk.c:5521 commands/foreigncmds.c:325
-#, c-format
-msgid "foreign-data wrapper with OID %u does not exist"
-msgstr "обёртка сторонних данных с OID %u не существует"
-
-#: catalog/aclchk.c:4756 catalog/aclchk.c:5548 commands/foreigncmds.c:462
-#, c-format
-msgid "foreign server with OID %u does not exist"
-msgstr "сторонний сервер с OID %u не существует"
-
-#: catalog/aclchk.c:4816 catalog/aclchk.c:5210 utils/cache/typcache.c:385
-#: utils/cache/typcache.c:440
+#: catalog/aclchk.c:3705 utils/cache/typcache.c:385 utils/cache/typcache.c:440
 #, c-format
 msgid "type with OID %u does not exist"
 msgstr "тип с OID %u не существует"
 
-#: catalog/aclchk.c:5236
-#, c-format
-msgid "operator with OID %u does not exist"
-msgstr "оператор с OID %u не существует"
-
-#: catalog/aclchk.c:5413
-#, c-format
-msgid "operator class with OID %u does not exist"
-msgstr "класс операторов с OID %u не существует"
-
-#: catalog/aclchk.c:5440
-#, c-format
-msgid "operator family with OID %u does not exist"
-msgstr "семейство операторов с OID %u не существует"
-
-#: catalog/aclchk.c:5467
-#, c-format
-msgid "text search dictionary with OID %u does not exist"
-msgstr "словарь текстового поиска с OID %u не существует"
-
-#: catalog/aclchk.c:5494
-#, c-format
-msgid "text search configuration with OID %u does not exist"
-msgstr "конфигурация текстового поиска с OID %u не существует"
-
-#: catalog/aclchk.c:5575 commands/event_trigger.c:453
-#, c-format
-msgid "event trigger with OID %u does not exist"
-msgstr "событийный триггер с OID %u не существует"
-
-#: catalog/aclchk.c:5628 commands/collationcmds.c:439
-#, c-format
-msgid "collation with OID %u does not exist"
-msgstr "правило сортировки с OID %u не существует"
-
-#: catalog/aclchk.c:5654
-#, c-format
-msgid "conversion with OID %u does not exist"
-msgstr "преобразование с OID %u не существует"
-
-#: catalog/aclchk.c:5695
-#, c-format
-msgid "extension with OID %u does not exist"
-msgstr "расширение с OID %u не существует"
-
-#: catalog/aclchk.c:5722 commands/publicationcmds.c:1999
-#, c-format
-msgid "publication with OID %u does not exist"
-msgstr "публикация с OID %u не существует"
-
-#: catalog/aclchk.c:5748 commands/subscriptioncmds.c:1742
-#, c-format
-msgid "subscription with OID %u does not exist"
-msgstr "подписка с OID %u не существует"
-
-#: catalog/aclchk.c:5774
-#, c-format
-msgid "statistics object with OID %u does not exist"
-msgstr "объект статистики с OID %u не существует"
-
-#: catalog/catalog.c:447
+#: catalog/catalog.c:449
 #, c-format
 msgid "still searching for an unused OID in relation \"%s\""
 msgstr "продолжается поиск неиспользованного OID в отношении \"%s\""
 
-#: catalog/catalog.c:449
+#: catalog/catalog.c:451
 #, c-format
 msgid ""
 "OID candidates have been checked %llu time, but no unused OID has been found "
@@ -4958,7 +5002,7 @@ msgstr[2] ""
 "Потенциальные OID были проверены %llu раз, но неиспользуемые OID ещё не были "
 "найдены."
 
-#: catalog/catalog.c:474
+#: catalog/catalog.c:476
 #, c-format
 msgid "new OID has been assigned in relation \"%s\" after %llu retry"
 msgid_plural "new OID has been assigned in relation \"%s\" after %llu retries"
@@ -4966,57 +5010,57 @@ msgstr[0] "новый OID был назначен в отношении \"%s\" 
 msgstr[1] "новый OID был назначен в отношении \"%s\" после %llu попыток"
 msgstr[2] "новый OID был назначен в отношении \"%s\" после %llu попыток"
 
-#: catalog/catalog.c:605 catalog/catalog.c:672
+#: catalog/catalog.c:609 catalog/catalog.c:676
 #, c-format
 msgid "must be superuser to call %s()"
 msgstr "вызывать %s() может только суперпользователь"
 
-#: catalog/catalog.c:614
+#: catalog/catalog.c:618
 #, c-format
 msgid "pg_nextoid() can only be used on system catalogs"
 msgstr "pg_nextoid() можно использовать только для системных каталогов"
 
-#: catalog/catalog.c:619 parser/parse_utilcmd.c:2279
+#: catalog/catalog.c:623 parser/parse_utilcmd.c:2264
 #, c-format
 msgid "index \"%s\" does not belong to table \"%s\""
 msgstr "индекс \"%s\" не принадлежит таблице \"%s\""
 
-#: catalog/catalog.c:636
+#: catalog/catalog.c:640
 #, c-format
 msgid "column \"%s\" is not of type oid"
 msgstr "столбец \"%s\" имеет тип не oid"
 
-#: catalog/catalog.c:643
+#: catalog/catalog.c:647
 #, c-format
 msgid "index \"%s\" is not the index for column \"%s\""
 msgstr "индекс \"%s\" не является индексом столбца \"%s\""
 
-#: catalog/dependency.c:538 catalog/pg_shdepend.c:657
+#: catalog/dependency.c:546 catalog/pg_shdepend.c:658
 #, c-format
 msgid "cannot drop %s because it is required by the database system"
 msgstr "удалить объект %s нельзя, так как он нужен системе баз данных"
 
-#: catalog/dependency.c:830 catalog/dependency.c:1057
+#: catalog/dependency.c:838 catalog/dependency.c:1065
 #, c-format
 msgid "cannot drop %s because %s requires it"
 msgstr "удалить объект %s нельзя, так как он нужен объекту %s"
 
-#: catalog/dependency.c:832 catalog/dependency.c:1059
+#: catalog/dependency.c:840 catalog/dependency.c:1067
 #, c-format
 msgid "You can drop %s instead."
 msgstr "Однако можно удалить %s."
 
-#: catalog/dependency.c:1138 catalog/dependency.c:1147
+#: catalog/dependency.c:1146 catalog/dependency.c:1155
 #, c-format
 msgid "%s depends on %s"
 msgstr "%s зависит от объекта %s"
 
-#: catalog/dependency.c:1162 catalog/dependency.c:1171
+#: catalog/dependency.c:1170 catalog/dependency.c:1179
 #, c-format
 msgid "drop cascades to %s"
 msgstr "удаление распространяется на объект %s"
 
-#: catalog/dependency.c:1179 catalog/pg_shdepend.c:822
+#: catalog/dependency.c:1187 catalog/pg_shdepend.c:823
 #, c-format
 msgid ""
 "\n"
@@ -5034,35 +5078,36 @@ msgstr[2] ""
 "\n"
 "и ещё %d объектов (см. список в протоколе сервера)"
 
-#: catalog/dependency.c:1191
+#: catalog/dependency.c:1199
 #, c-format
 msgid "cannot drop %s because other objects depend on it"
 msgstr "удалить объект %s нельзя, так как от него зависят другие объекты"
 
-#: catalog/dependency.c:1194 catalog/dependency.c:1201
-#: catalog/dependency.c:1212 commands/tablecmds.c:1328
-#: commands/tablecmds.c:14314 commands/tablespace.c:476 commands/user.c:1008
-#: commands/view.c:522 libpq/auth.c:329 replication/syncrep.c:1043
-#: storage/lmgr/deadlock.c:1152 storage/lmgr/proc.c:1413 utils/misc/guc.c:7402
-#: utils/misc/guc.c:7438 utils/misc/guc.c:7508 utils/misc/guc.c:11864
-#: utils/misc/guc.c:11898 utils/misc/guc.c:11932 utils/misc/guc.c:11975
-#: utils/misc/guc.c:12017
+#: catalog/dependency.c:1202 catalog/dependency.c:1209
+#: catalog/dependency.c:1220 commands/tablecmds.c:1335
+#: commands/tablecmds.c:14386 commands/tablespace.c:466 commands/user.c:1309
+#: commands/vacuum.c:211 commands/view.c:446 libpq/auth.c:326
+#: replication/logical/applyparallelworker.c:1044 replication/syncrep.c:1017
+#: storage/lmgr/deadlock.c:1134 storage/lmgr/proc.c:1358 utils/misc/guc.c:3120
+#: utils/misc/guc.c:3156 utils/misc/guc.c:3226 utils/misc/guc.c:6615
+#: utils/misc/guc.c:6649 utils/misc/guc.c:6683 utils/misc/guc.c:6726
+#: utils/misc/guc.c:6768
 #, c-format
 msgid "%s"
 msgstr "%s"
 
-#: catalog/dependency.c:1195 catalog/dependency.c:1202
+#: catalog/dependency.c:1203 catalog/dependency.c:1210
 #, c-format
 msgid "Use DROP ... CASCADE to drop the dependent objects too."
 msgstr "Для удаления зависимых объектов используйте DROP ... CASCADE."
 
-#: catalog/dependency.c:1199
+#: catalog/dependency.c:1207
 #, c-format
 msgid "cannot drop desired object(s) because other objects depend on them"
 msgstr ""
 "удалить запрошенные объекты нельзя, так как от них зависят другие объекты"
 
-#: catalog/dependency.c:1207
+#: catalog/dependency.c:1215
 #, c-format
 msgid "drop cascades to %d other object"
 msgid_plural "drop cascades to %d other objects"
@@ -5070,13 +5115,13 @@ msgstr[0] "удаление распространяется на ещё %d об
 msgstr[1] "удаление распространяется на ещё %d объекта"
 msgstr[2] "удаление распространяется на ещё %d объектов"
 
-#: catalog/dependency.c:1889
+#: catalog/dependency.c:1899
 #, c-format
 msgid "constant of the type %s cannot be used here"
 msgstr "константу типа %s здесь использовать нельзя"
 
-#: catalog/dependency.c:2410 parser/parse_relation.c:3369
-#: parser/parse_relation.c:3379
+#: catalog/dependency.c:2420 parser/parse_relation.c:3404
+#: parser/parse_relation.c:3414
 #, c-format
 msgid "column %d of relation \"%s\" does not exist"
 msgstr "столбец %d отношения \"%s\" не существует"
@@ -5091,13 +5136,13 @@ msgstr "нет прав для создания отношения \"%s.%s\""
 msgid "System catalog modifications are currently disallowed."
 msgstr "Изменение системного каталога в текущем состоянии запрещено."
 
-#: catalog/heap.c:466 commands/tablecmds.c:2348 commands/tablecmds.c:2985
-#: commands/tablecmds.c:6821
+#: catalog/heap.c:466 commands/tablecmds.c:2374 commands/tablecmds.c:3047
+#: commands/tablecmds.c:6922
 #, c-format
 msgid "tables can have at most %d columns"
 msgstr "максимальное число столбцов в таблице: %d"
 
-#: catalog/heap.c:484 commands/tablecmds.c:7121
+#: catalog/heap.c:484 commands/tablecmds.c:7229
 #, c-format
 msgid "column name \"%s\" conflicts with a system column name"
 msgstr "имя столбца \"%s\" конфликтует с системным столбцом"
@@ -5139,16 +5184,16 @@ msgstr ""
 "для столбца \"%s\" с сортируемым типом %s не удалось получить правило "
 "сортировки"
 
-#: catalog/heap.c:1148 catalog/index.c:874 commands/createas.c:408
-#: commands/tablecmds.c:3890
+#: catalog/heap.c:1148 catalog/index.c:887 commands/createas.c:408
+#: commands/tablecmds.c:3987
 #, c-format
 msgid "relation \"%s\" already exists"
 msgstr "отношение \"%s\" уже существует"
 
-#: catalog/heap.c:1164 catalog/pg_type.c:436 catalog/pg_type.c:784
-#: catalog/pg_type.c:931 commands/typecmds.c:249 commands/typecmds.c:261
+#: catalog/heap.c:1164 catalog/pg_type.c:434 catalog/pg_type.c:782
+#: catalog/pg_type.c:954 commands/typecmds.c:249 commands/typecmds.c:261
 #: commands/typecmds.c:754 commands/typecmds.c:1169 commands/typecmds.c:1395
-#: commands/typecmds.c:1575 commands/typecmds.c:2547
+#: commands/typecmds.c:1575 commands/typecmds.c:2546
 #, c-format
 msgid "type \"%s\" already exists"
 msgstr "тип \"%s\" уже существует"
@@ -5164,8 +5209,9 @@ msgstr ""
 
 #: catalog/heap.c:1205
 #, c-format
-msgid "toast relfilenode value not set when in binary upgrade mode"
-msgstr "значение relfilenode для TOAST не задано в режиме двоичного обновления"
+msgid "toast relfilenumber value not set when in binary upgrade mode"
+msgstr ""
+"значение relfilenumber для TOAST не задано в режиме двоичного обновления"
 
 #: catalog/heap.c:1216
 #, c-format
@@ -5174,41 +5220,41 @@ msgstr "значение OID кучи в pg_class не задано в режи
 
 #: catalog/heap.c:1226
 #, c-format
-msgid "relfilenode value not set when in binary upgrade mode"
-msgstr "значение relfilenode не задано в режиме двоичного обновления"
+msgid "relfilenumber value not set when in binary upgrade mode"
+msgstr "значение relfilenumber не задано в режиме двоичного обновления"
 
-#: catalog/heap.c:2127
+#: catalog/heap.c:2119
 #, c-format
 msgid "cannot add NO INHERIT constraint to partitioned table \"%s\""
 msgstr ""
 "добавить ограничение NO INHERIT к секционированной таблице \"%s\" нельзя"
 
-#: catalog/heap.c:2401
+#: catalog/heap.c:2393
 #, c-format
 msgid "check constraint \"%s\" already exists"
 msgstr "ограничение-проверка \"%s\" уже существует"
 
-#: catalog/heap.c:2571 catalog/index.c:888 catalog/pg_constraint.c:689
-#: commands/tablecmds.c:8823
+#: catalog/heap.c:2563 catalog/index.c:901 catalog/pg_constraint.c:682
+#: commands/tablecmds.c:8900
 #, c-format
 msgid "constraint \"%s\" for relation \"%s\" already exists"
 msgstr "ограничение \"%s\" для отношения \"%s\" уже существует"
 
-#: catalog/heap.c:2578
+#: catalog/heap.c:2570
 #, c-format
 msgid ""
 "constraint \"%s\" conflicts with non-inherited constraint on relation \"%s\""
 msgstr ""
 "ограничение \"%s\" конфликтует с ненаследуемым ограничением таблицы \"%s\""
 
-#: catalog/heap.c:2589
+#: catalog/heap.c:2581
 #, c-format
 msgid ""
 "constraint \"%s\" conflicts with inherited constraint on relation \"%s\""
 msgstr ""
 "ограничение \"%s\" конфликтует с наследуемым ограничением таблицы \"%s\""
 
-#: catalog/heap.c:2599
+#: catalog/heap.c:2591
 #, c-format
 msgid ""
 "constraint \"%s\" conflicts with NOT VALID constraint on relation \"%s\""
@@ -5216,64 +5262,71 @@ msgstr ""
 "ограничение \"%s\" конфликтует с непроверенным (NOT VALID) ограничением "
 "таблицы \"%s\""
 
-#: catalog/heap.c:2604
+#: catalog/heap.c:2596
 #, c-format
 msgid "merging constraint \"%s\" with inherited definition"
 msgstr "слияние ограничения \"%s\" с унаследованным определением"
 
-#: catalog/heap.c:2709
+#: catalog/heap.c:2622 catalog/pg_constraint.c:811 commands/tablecmds.c:2672
+#: commands/tablecmds.c:3199 commands/tablecmds.c:6858
+#: commands/tablecmds.c:15208 commands/tablecmds.c:15349
+#, c-format
+msgid "too many inheritance parents"
+msgstr "слишком много родителей в иерархии наследования"
+
+#: catalog/heap.c:2706
 #, c-format
 msgid "cannot use generated column \"%s\" in column generation expression"
 msgstr ""
 "использовать генерируемый столбец \"%s\" в выражении генерируемого столбца "
 "нельзя"
 
-#: catalog/heap.c:2711
+#: catalog/heap.c:2708
 #, c-format
 msgid "A generated column cannot reference another generated column."
 msgstr ""
 "Генерируемый столбец не может ссылаться на другой генерируемый столбец."
 
-#: catalog/heap.c:2717
+#: catalog/heap.c:2714
 #, c-format
 msgid "cannot use whole-row variable in column generation expression"
 msgstr ""
 "в выражении генерируемого столбца нельзя использовать переменные «вся строка»"
 
-#: catalog/heap.c:2718
+#: catalog/heap.c:2715
 #, c-format
 msgid "This would cause the generated column to depend on its own value."
 msgstr ""
 "Это сделало бы генерируемый столбец зависимым от собственного значения."
 
-#: catalog/heap.c:2771
+#: catalog/heap.c:2768
 #, c-format
 msgid "generation expression is not immutable"
 msgstr "генерирующее выражение не является постоянным"
 
-#: catalog/heap.c:2799 rewrite/rewriteHandler.c:1273
+#: catalog/heap.c:2796 rewrite/rewriteHandler.c:1297
 #, c-format
 msgid "column \"%s\" is of type %s but default expression is of type %s"
 msgstr "столбец \"%s\" имеет тип %s, но тип выражения по умолчанию %s"
 
-#: catalog/heap.c:2804 commands/prepare.c:334 parser/analyze.c:2692
-#: parser/parse_target.c:594 parser/parse_target.c:882
-#: parser/parse_target.c:892 rewrite/rewriteHandler.c:1278
+#: catalog/heap.c:2801 commands/prepare.c:334 parser/analyze.c:2742
+#: parser/parse_target.c:593 parser/parse_target.c:874
+#: parser/parse_target.c:884 rewrite/rewriteHandler.c:1302
 #, c-format
 msgid "You will need to rewrite or cast the expression."
 msgstr "Перепишите выражение или преобразуйте его тип."
 
-#: catalog/heap.c:2851
+#: catalog/heap.c:2848
 #, c-format
 msgid "only table \"%s\" can be referenced in check constraint"
 msgstr "в ограничении-проверке можно ссылаться только на таблицу \"%s\""
 
-#: catalog/heap.c:3149
+#: catalog/heap.c:3154
 #, c-format
 msgid "unsupported ON COMMIT and foreign key combination"
 msgstr "неподдерживаемое сочетание внешнего ключа с ON COMMIT"
 
-#: catalog/heap.c:3150
+#: catalog/heap.c:3155
 #, c-format
 msgid ""
 "Table \"%s\" references \"%s\", but they do not have the same ON COMMIT "
@@ -5281,491 +5334,501 @@ msgid ""
 msgstr ""
 "Таблица \"%s\" ссылается на \"%s\", и для них задан разный режим ON COMMIT."
 
-#: catalog/heap.c:3155
+#: catalog/heap.c:3160
 #, c-format
 msgid "cannot truncate a table referenced in a foreign key constraint"
 msgstr "опустошить таблицу, на которую ссылается внешний ключ, нельзя"
 
-#: catalog/heap.c:3156
+#: catalog/heap.c:3161
 #, c-format
 msgid "Table \"%s\" references \"%s\"."
 msgstr "Таблица \"%s\" ссылается на \"%s\"."
 
-#: catalog/heap.c:3158
+#: catalog/heap.c:3163
 #, c-format
 msgid "Truncate table \"%s\" at the same time, or use TRUNCATE ... CASCADE."
 msgstr ""
 "Опустошите таблицу \"%s\" параллельно или используйте TRUNCATE ... CASCADE."
 
-#: catalog/index.c:223 parser/parse_utilcmd.c:2184
+#: catalog/index.c:225 parser/parse_utilcmd.c:2170
 #, c-format
 msgid "multiple primary keys for table \"%s\" are not allowed"
 msgstr "таблица \"%s\" не может иметь несколько первичных ключей"
 
-#: catalog/index.c:241
+#: catalog/index.c:239
+#, c-format
+msgid "primary keys cannot use NULLS NOT DISTINCT indexes"
+msgstr "для первичных ключей нельзя использовать индексы с NULLS NOT DISTINCT"
+
+#: catalog/index.c:256
 #, c-format
 msgid "primary keys cannot be expressions"
 msgstr "первичные ключи не могут быть выражениями"
 
-#: catalog/index.c:258
+#: catalog/index.c:273
 #, c-format
 msgid "primary key column \"%s\" is not marked NOT NULL"
 msgstr "столбец первичного ключа \"%s\" не помечен как NOT NULL"
 
-#: catalog/index.c:773 catalog/index.c:1932
+#: catalog/index.c:786 catalog/index.c:1942
 #, c-format
 msgid "user-defined indexes on system catalog tables are not supported"
 msgstr ""
 "пользовательские индексы в таблицах системного каталога не поддерживаются"
 
-#: catalog/index.c:813
+#: catalog/index.c:826
 #, c-format
 msgid "nondeterministic collations are not supported for operator class \"%s\""
 msgstr ""
 "недетерминированные правила сортировки не поддерживаются для класса "
 "операторов \"%s\""
 
-#: catalog/index.c:828
+#: catalog/index.c:841
 #, c-format
 msgid "concurrent index creation on system catalog tables is not supported"
 msgstr ""
 "параллельное создание индекса в таблицах системного каталога не "
 "поддерживается"
 
-#: catalog/index.c:837 catalog/index.c:1305
+#: catalog/index.c:850 catalog/index.c:1318
 #, c-format
 msgid "concurrent index creation for exclusion constraints is not supported"
 msgstr ""
 "параллельное создание индекса для ограничений-исключений не поддерживается"
 
-#: catalog/index.c:846
+#: catalog/index.c:859
 #, c-format
 msgid "shared indexes cannot be created after initdb"
 msgstr "нельзя создать разделяемые индексы после initdb"
 
-#: catalog/index.c:866 commands/createas.c:423 commands/sequence.c:158
-#: parser/parse_utilcmd.c:211
+#: catalog/index.c:879 commands/createas.c:423 commands/sequence.c:158
+#: parser/parse_utilcmd.c:209
 #, c-format
 msgid "relation \"%s\" already exists, skipping"
 msgstr "отношение \"%s\" уже существует, пропускается"
 
-#: catalog/index.c:916
+#: catalog/index.c:929
 #, c-format
 msgid "pg_class index OID value not set when in binary upgrade mode"
 msgstr ""
 "значение OID индекса в pg_class не задано в режиме двоичного обновления"
 
-#: catalog/index.c:926 utils/cache/relcache.c:3743
+#: catalog/index.c:939 utils/cache/relcache.c:3731
 #, c-format
-msgid "index relfilenode value not set when in binary upgrade mode"
+msgid "index relfilenumber value not set when in binary upgrade mode"
 msgstr ""
-"значение relfilenode для индекса не задано в режиме двоичного обновления"
+"значение relfilenumber для индекса не задано в режиме двоичного обновления"
 
-#: catalog/index.c:2231
+#: catalog/index.c:2241
 #, c-format
 msgid "DROP INDEX CONCURRENTLY must be first action in transaction"
 msgstr "DROP INDEX CONCURRENTLY должен быть первым действием в транзакции"
 
-#: catalog/index.c:3635
+#: catalog/index.c:3649
 #, c-format
 msgid "cannot reindex temporary tables of other sessions"
 msgstr "переиндексировать временные таблицы других сеансов нельзя"
 
-#: catalog/index.c:3646 commands/indexcmds.c:3543
+#: catalog/index.c:3660 commands/indexcmds.c:3631
 #, c-format
 msgid "cannot reindex invalid index on TOAST table"
 msgstr "перестроить нерабочий индекс в таблице TOAST нельзя"
 
-#: catalog/index.c:3662 commands/indexcmds.c:3423 commands/indexcmds.c:3567
-#: commands/tablecmds.c:3305
+#: catalog/index.c:3676 commands/indexcmds.c:3511 commands/indexcmds.c:3655
+#: commands/tablecmds.c:3402
 #, c-format
 msgid "cannot move system relation \"%s\""
 msgstr "переместить системную таблицу \"%s\" нельзя"
 
-#: catalog/index.c:3806
+#: catalog/index.c:3820
 #, c-format
 msgid "index \"%s\" was reindexed"
 msgstr "индекс \"%s\" был перестроен"
 
-#: catalog/index.c:3943
+#: catalog/index.c:3957
 #, c-format
 msgid "cannot reindex invalid index \"%s.%s\" on TOAST table, skipping"
 msgstr ""
 "перестроить нерабочий индекс \"%s.%s\" в таблице TOAST нельзя, он "
 "пропускается"
 
-#: catalog/namespace.c:259 catalog/namespace.c:463 catalog/namespace.c:555
+#: catalog/namespace.c:260 catalog/namespace.c:464 catalog/namespace.c:556
 #: commands/trigger.c:5718
 #, c-format
 msgid "cross-database references are not implemented: \"%s.%s.%s\""
 msgstr "ссылки между базами не реализованы: \"%s.%s.%s\""
 
-#: catalog/namespace.c:316
+#: catalog/namespace.c:317
 #, c-format
 msgid "temporary tables cannot specify a schema name"
 msgstr "для временных таблиц имя схемы не указывается"
 
-#: catalog/namespace.c:397
+#: catalog/namespace.c:398
 #, c-format
 msgid "could not obtain lock on relation \"%s.%s\""
 msgstr "не удалось получить блокировку таблицы \"%s.%s\""
 
-#: catalog/namespace.c:402 commands/lockcmds.c:144 commands/lockcmds.c:233
+#: catalog/namespace.c:403 commands/lockcmds.c:144 commands/lockcmds.c:224
 #, c-format
 msgid "could not obtain lock on relation \"%s\""
 msgstr "не удалось получить блокировку таблицы \"%s\""
 
-#: catalog/namespace.c:430 parser/parse_relation.c:1373
+#: catalog/namespace.c:431 parser/parse_relation.c:1430
 #, c-format
 msgid "relation \"%s.%s\" does not exist"
 msgstr "отношение \"%s.%s\" не существует"
 
-#: catalog/namespace.c:435 parser/parse_relation.c:1386
-#: parser/parse_relation.c:1394
+#: catalog/namespace.c:436 parser/parse_relation.c:1443
+#: parser/parse_relation.c:1451 utils/adt/regproc.c:913
 #, c-format
 msgid "relation \"%s\" does not exist"
 msgstr "отношение \"%s\" не существует"
 
-#: catalog/namespace.c:501 catalog/namespace.c:3076 commands/extension.c:1535
-#: commands/extension.c:1541
+#: catalog/namespace.c:502 catalog/namespace.c:3073 commands/extension.c:1611
+#: commands/extension.c:1617
 #, c-format
 msgid "no schema has been selected to create in"
 msgstr "схема для создания объектов не выбрана"
 
-#: catalog/namespace.c:653 catalog/namespace.c:666
+#: catalog/namespace.c:654 catalog/namespace.c:667
 #, c-format
 msgid "cannot create relations in temporary schemas of other sessions"
 msgstr "во временных схемах других сеансов нельзя создавать отношения"
 
-#: catalog/namespace.c:657
+#: catalog/namespace.c:658
 #, c-format
 msgid "cannot create temporary relation in non-temporary schema"
 msgstr "создавать временные отношения можно только во временных схемах"
 
-#: catalog/namespace.c:672
+#: catalog/namespace.c:673
 #, c-format
 msgid "only temporary relations may be created in temporary schemas"
 msgstr "во временных схемах можно создавать только временные отношения"
 
-#: catalog/namespace.c:2268
+#: catalog/namespace.c:2265
 #, c-format
 msgid "statistics object \"%s\" does not exist"
 msgstr "объект статистики \"%s\" не существует"
 
-#: catalog/namespace.c:2391
+#: catalog/namespace.c:2388
 #, c-format
 msgid "text search parser \"%s\" does not exist"
 msgstr "анализатор текстового поиска \"%s\" не существует"
 
-#: catalog/namespace.c:2517
+#: catalog/namespace.c:2514 utils/adt/regproc.c:1439
 #, c-format
 msgid "text search dictionary \"%s\" does not exist"
 msgstr "словарь текстового поиска \"%s\" не существует"
 
-#: catalog/namespace.c:2644
+#: catalog/namespace.c:2641
 #, c-format
 msgid "text search template \"%s\" does not exist"
 msgstr "шаблон текстового поиска \"%s\" не существует"
 
-#: catalog/namespace.c:2770 commands/tsearchcmds.c:1121
-#: utils/cache/ts_cache.c:613
+#: catalog/namespace.c:2767 commands/tsearchcmds.c:1162
+#: utils/adt/regproc.c:1329 utils/cache/ts_cache.c:635
 #, c-format
 msgid "text search configuration \"%s\" does not exist"
 msgstr "конфигурация текстового поиска \"%s\" не существует"
 
-#: catalog/namespace.c:2883 parser/parse_expr.c:806 parser/parse_target.c:1255
+#: catalog/namespace.c:2880 parser/parse_expr.c:832 parser/parse_target.c:1246
 #, c-format
 msgid "cross-database references are not implemented: %s"
 msgstr "ссылки между базами не реализованы: %s"
 
-#: catalog/namespace.c:2889 parser/parse_expr.c:813 parser/parse_target.c:1262
-#: gram.y:18258 gram.y:18298
+#: catalog/namespace.c:2886 parser/parse_expr.c:839 parser/parse_target.c:1253
+#: gram.y:18569 gram.y:18609
 #, c-format
 msgid "improper qualified name (too many dotted names): %s"
 msgstr "неверное полное имя (слишком много компонентов): %s"
 
-#: catalog/namespace.c:3019
+#: catalog/namespace.c:3016
 #, c-format
 msgid "cannot move objects into or out of temporary schemas"
 msgstr "перемещать объекты в/из внутренних схем нельзя"
 
-#: catalog/namespace.c:3025
+#: catalog/namespace.c:3022
 #, c-format
 msgid "cannot move objects into or out of TOAST schema"
 msgstr "перемещать объекты в/из схем TOAST нельзя"
 
-#: catalog/namespace.c:3098 commands/schemacmds.c:245 commands/schemacmds.c:325
-#: commands/tablecmds.c:1273
+#: catalog/namespace.c:3095 commands/schemacmds.c:264 commands/schemacmds.c:344
+#: commands/tablecmds.c:1280 utils/adt/regproc.c:1668
 #, c-format
 msgid "schema \"%s\" does not exist"
 msgstr "схема \"%s\" не существует"
 
-#: catalog/namespace.c:3129
+#: catalog/namespace.c:3126
 #, c-format
 msgid "improper relation name (too many dotted names): %s"
 msgstr "неверное имя отношения (слишком много компонентов): %s"
 
-#: catalog/namespace.c:3692
+#: catalog/namespace.c:3693 utils/adt/regproc.c:1056
 #, c-format
 msgid "collation \"%s\" for encoding \"%s\" does not exist"
 msgstr "правило сортировки \"%s\" для кодировки \"%s\" не существует"
 
-#: catalog/namespace.c:3747
+#: catalog/namespace.c:3748
 #, c-format
 msgid "conversion \"%s\" does not exist"
 msgstr "преобразование \"%s\" не существует"
 
-#: catalog/namespace.c:4011
+#: catalog/namespace.c:4012
 #, c-format
 msgid "permission denied to create temporary tables in database \"%s\""
 msgstr "нет прав для создания временных таблиц в базе \"%s\""
 
-#: catalog/namespace.c:4027
+#: catalog/namespace.c:4028
 #, c-format
 msgid "cannot create temporary tables during recovery"
 msgstr "создавать временные таблицы в процессе восстановления нельзя"
 
-#: catalog/namespace.c:4033
+#: catalog/namespace.c:4034
 #, c-format
 msgid "cannot create temporary tables during a parallel operation"
 msgstr "создавать временные таблицы во время параллельных операций нельзя"
 
-#: catalog/namespace.c:4334 commands/tablespace.c:1236 commands/variable.c:64
-#: utils/misc/guc.c:12049 utils/misc/guc.c:12151
-#, c-format
-msgid "List syntax is invalid."
-msgstr "Ошибка синтаксиса в списке."
-
-#: catalog/objectaddress.c:1391 commands/policy.c:96 commands/policy.c:376
-#: commands/tablecmds.c:247 commands/tablecmds.c:289 commands/tablecmds.c:2184
-#: commands/tablecmds.c:12284
+#: catalog/objectaddress.c:1409 commands/policy.c:96 commands/policy.c:376
+#: commands/tablecmds.c:248 commands/tablecmds.c:290 commands/tablecmds.c:2206
+#: commands/tablecmds.c:12357
 #, c-format
 msgid "\"%s\" is not a table"
 msgstr "\"%s\" - это не таблица"
 
-#: catalog/objectaddress.c:1398 commands/tablecmds.c:259
-#: commands/tablecmds.c:17109 commands/view.c:119
+#: catalog/objectaddress.c:1416 commands/tablecmds.c:260
+#: commands/tablecmds.c:17141 commands/view.c:119
 #, c-format
 msgid "\"%s\" is not a view"
 msgstr "\"%s\" - это не представление"
 
-#: catalog/objectaddress.c:1405 commands/matview.c:186 commands/tablecmds.c:265
-#: commands/tablecmds.c:17114
+#: catalog/objectaddress.c:1423 commands/matview.c:186 commands/tablecmds.c:266
+#: commands/tablecmds.c:17146
 #, c-format
 msgid "\"%s\" is not a materialized view"
 msgstr "\"%s\" - это не материализованное представление"
 
-#: catalog/objectaddress.c:1412 commands/tablecmds.c:283
-#: commands/tablecmds.c:17119
+#: catalog/objectaddress.c:1430 commands/tablecmds.c:284
+#: commands/tablecmds.c:17151
 #, c-format
 msgid "\"%s\" is not a foreign table"
 msgstr "\"%s\" - это не сторонняя таблица"
 
-#: catalog/objectaddress.c:1453
+#: catalog/objectaddress.c:1471
 #, c-format
 msgid "must specify relation and object name"
 msgstr "необходимо указать имя отношения и объекта"
 
-#: catalog/objectaddress.c:1529 catalog/objectaddress.c:1582
+#: catalog/objectaddress.c:1547 catalog/objectaddress.c:1600
 #, c-format
 msgid "column name must be qualified"
 msgstr "имя столбца нужно указать в полной форме"
 
-#: catalog/objectaddress.c:1601
+#: catalog/objectaddress.c:1619
 #, c-format
 msgid "default value for column \"%s\" of relation \"%s\" does not exist"
 msgstr ""
 "значение по умолчанию для столбца \"%s\" отношения \"%s\" не существует"
 
-#: catalog/objectaddress.c:1638 commands/functioncmds.c:138
-#: commands/tablecmds.c:275 commands/typecmds.c:274 commands/typecmds.c:3700
-#: parser/parse_type.c:243 parser/parse_type.c:272 parser/parse_type.c:795
-#: utils/adt/acl.c:4434
+#: catalog/objectaddress.c:1656 commands/functioncmds.c:137
+#: commands/tablecmds.c:276 commands/typecmds.c:274 commands/typecmds.c:3689
+#: parser/parse_type.c:243 parser/parse_type.c:272 parser/parse_type.c:801
+#: utils/adt/acl.c:4441
 #, c-format
 msgid "type \"%s\" does not exist"
 msgstr "тип \"%s\" не существует"
 
-#: catalog/objectaddress.c:1757
+#: catalog/objectaddress.c:1775
 #, c-format
 msgid "operator %d (%s, %s) of %s does not exist"
 msgstr "оператор %d (%s, %s) из семейства %s не существует"
 
-#: catalog/objectaddress.c:1788
+#: catalog/objectaddress.c:1806
 #, c-format
 msgid "function %d (%s, %s) of %s does not exist"
 msgstr "функция %d (%s, %s) из семейства %s не существует"
 
-#: catalog/objectaddress.c:1839 catalog/objectaddress.c:1865
+#: catalog/objectaddress.c:1857 catalog/objectaddress.c:1883
 #, c-format
 msgid "user mapping for user \"%s\" on server \"%s\" does not exist"
 msgstr "сопоставление для пользователя \"%s\" на сервере \"%s\" не существует"
 
-#: catalog/objectaddress.c:1854 commands/foreigncmds.c:430
-#: commands/foreigncmds.c:993 commands/foreigncmds.c:1356 foreign/foreign.c:691
+#: catalog/objectaddress.c:1872 commands/foreigncmds.c:430
+#: commands/foreigncmds.c:993 commands/foreigncmds.c:1356 foreign/foreign.c:700
 #, c-format
 msgid "server \"%s\" does not exist"
 msgstr "сервер \"%s\" не существует"
 
-#: catalog/objectaddress.c:1921
+#: catalog/objectaddress.c:1939
 #, c-format
 msgid "publication relation \"%s\" in publication \"%s\" does not exist"
 msgstr "публикуемое отношение \"%s\" в публикации \"%s\" не существует"
 
-#: catalog/objectaddress.c:1968
+#: catalog/objectaddress.c:1986
 #, c-format
 msgid "publication schema \"%s\" in publication \"%s\" does not exist"
 msgstr "публикуемая схема \"%s\" в публикации \"%s\" не существует"
 
-#: catalog/objectaddress.c:2026
+#: catalog/objectaddress.c:2044
 #, c-format
 msgid "unrecognized default ACL object type \"%c\""
 msgstr "нераспознанный тип объекта ACL по умолчанию: \"%c\""
 
-#: catalog/objectaddress.c:2027
+#: catalog/objectaddress.c:2045
 #, c-format
 msgid "Valid object types are \"%c\", \"%c\", \"%c\", \"%c\", \"%c\"."
 msgstr "Допустимые типы объектов: \"%c\", \"%c\", \"%c\", \"%c\", \"%c\"."
 
-#: catalog/objectaddress.c:2078
+#: catalog/objectaddress.c:2096
 #, c-format
 msgid "default ACL for user \"%s\" in schema \"%s\" on %s does not exist"
 msgstr ""
 "ACL по умолчанию для пользователя \"%s\" в схеме \"%s\" для объекта %s не "
 "существует"
 
-#: catalog/objectaddress.c:2083
+#: catalog/objectaddress.c:2101
 #, c-format
 msgid "default ACL for user \"%s\" on %s does not exist"
 msgstr ""
 "ACL по умолчанию для пользователя \"%s\" и для объекта %s не существует"
 
-#: catalog/objectaddress.c:2110 catalog/objectaddress.c:2168
-#: catalog/objectaddress.c:2225
+#: catalog/objectaddress.c:2127 catalog/objectaddress.c:2184
+#: catalog/objectaddress.c:2239
 #, c-format
 msgid "name or argument lists may not contain nulls"
 msgstr "списки имён и аргументов не должны содержать NULL"
 
-#: catalog/objectaddress.c:2144
+#: catalog/objectaddress.c:2161
 #, c-format
 msgid "unsupported object type \"%s\""
 msgstr "неподдерживаемый тип объекта: \"%s\""
 
-#: catalog/objectaddress.c:2164 catalog/objectaddress.c:2182
-#: catalog/objectaddress.c:2247 catalog/objectaddress.c:2331
+#: catalog/objectaddress.c:2180 catalog/objectaddress.c:2197
+#: catalog/objectaddress.c:2262 catalog/objectaddress.c:2346
 #, c-format
 msgid "name list length must be exactly %d"
 msgstr "длина списка имён должна быть равна %d"
 
-#: catalog/objectaddress.c:2186
+#: catalog/objectaddress.c:2201
 #, c-format
 msgid "large object OID may not be null"
 msgstr "OID большого объекта не может быть NULL"
 
-#: catalog/objectaddress.c:2195 catalog/objectaddress.c:2265
-#: catalog/objectaddress.c:2272
+#: catalog/objectaddress.c:2210 catalog/objectaddress.c:2280
+#: catalog/objectaddress.c:2287
 #, c-format
 msgid "name list length must be at least %d"
 msgstr "длина списка аргументов должна быть не меньше %d"
 
-#: catalog/objectaddress.c:2258 catalog/objectaddress.c:2279
+#: catalog/objectaddress.c:2273 catalog/objectaddress.c:2294
 #, c-format
 msgid "argument list length must be exactly %d"
 msgstr "длина списка аргументов должна быть равна %d"
 
-#: catalog/objectaddress.c:2533 libpq/be-fsstubs.c:318
+#: catalog/objectaddress.c:2508 libpq/be-fsstubs.c:329
 #, c-format
 msgid "must be owner of large object %u"
 msgstr "нужно быть владельцем большого объекта %u"
 
-#: catalog/objectaddress.c:2548 commands/functioncmds.c:1566
+#: catalog/objectaddress.c:2523 commands/functioncmds.c:1561
 #, c-format
 msgid "must be owner of type %s or type %s"
 msgstr "это разрешено только владельцу типа %s или %s"
 
-#: catalog/objectaddress.c:2598 catalog/objectaddress.c:2616
+#: catalog/objectaddress.c:2550 catalog/objectaddress.c:2559
+#: catalog/objectaddress.c:2565
 #, c-format
-msgid "must be superuser"
-msgstr "требуются права суперпользователя"
+msgid "permission denied"
+msgstr "нет доступа"
+
+#: catalog/objectaddress.c:2551 catalog/objectaddress.c:2560
+#, c-format
+msgid "The current user must have the %s attribute."
+msgstr "Текущий пользователь должен иметь атрибут %s."
+
+#: catalog/objectaddress.c:2566
+#, c-format
+msgid "The current user must have the %s option on role \"%s\"."
+msgstr "Текущий пользователь должен иметь привилегию %s для роли \"%s\"."
 
-#: catalog/objectaddress.c:2605
+#: catalog/objectaddress.c:2580
 #, c-format
-msgid "must have CREATEROLE privilege"
-msgstr "требуется право CREATEROLE"
+msgid "must be superuser"
+msgstr "требуются права суперпользователя"
 
-#: catalog/objectaddress.c:2686
+#: catalog/objectaddress.c:2649
 #, c-format
 msgid "unrecognized object type \"%s\""
 msgstr "нераспознанный тип объекта \"%s\""
 
 #. translator: second %s is, e.g., "table %s"
-#: catalog/objectaddress.c:2978
+#: catalog/objectaddress.c:2941
 #, c-format
 msgid "column %s of %s"
 msgstr "столбец %s отношения %s"
 
-#: catalog/objectaddress.c:2993
+#: catalog/objectaddress.c:2956
 #, c-format
 msgid "function %s"
 msgstr "функция %s"
 
-#: catalog/objectaddress.c:3006
+#: catalog/objectaddress.c:2969
 #, c-format
 msgid "type %s"
 msgstr "тип %s"
 
-#: catalog/objectaddress.c:3043
+#: catalog/objectaddress.c:3006
 #, c-format
 msgid "cast from %s to %s"
 msgstr "приведение %s к %s"
 
-#: catalog/objectaddress.c:3076
+#: catalog/objectaddress.c:3039
 #, c-format
 msgid "collation %s"
 msgstr "правило сортировки %s"
 
 #. translator: second %s is, e.g., "table %s"
-#: catalog/objectaddress.c:3107
+#: catalog/objectaddress.c:3070
 #, c-format
 msgid "constraint %s on %s"
 msgstr "ограничение %s в отношении %s"
 
-#: catalog/objectaddress.c:3113
+#: catalog/objectaddress.c:3076
 #, c-format
 msgid "constraint %s"
 msgstr "ограничение %s"
 
-#: catalog/objectaddress.c:3145
+#: catalog/objectaddress.c:3108
 #, c-format
 msgid "conversion %s"
 msgstr "преобразование %s"
 
 #. translator: %s is typically "column %s of table %s"
-#: catalog/objectaddress.c:3167
+#: catalog/objectaddress.c:3130
 #, c-format
 msgid "default value for %s"
 msgstr "значение по умолчанию для %s"
 
-#: catalog/objectaddress.c:3178
+#: catalog/objectaddress.c:3141
 #, c-format
 msgid "language %s"
 msgstr "язык %s"
 
-#: catalog/objectaddress.c:3186
+#: catalog/objectaddress.c:3149
 #, c-format
 msgid "large object %u"
 msgstr "большой объект %u"
 
-#: catalog/objectaddress.c:3199
+#: catalog/objectaddress.c:3162
 #, c-format
 msgid "operator %s"
 msgstr "оператор %s"
 
-#: catalog/objectaddress.c:3236
+#: catalog/objectaddress.c:3199
 #, c-format
 msgid "operator class %s for access method %s"
 msgstr "класс операторов %s для метода доступа %s"
 
-#: catalog/objectaddress.c:3264
+#: catalog/objectaddress.c:3227
 #, c-format
 msgid "access method %s"
 msgstr "метод доступа %s"
@@ -5774,7 +5837,7 @@ msgstr "метод доступа %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:3313
+#: catalog/objectaddress.c:3276
 #, c-format
 msgid "operator %d (%s, %s) of %s: %s"
 msgstr "оператор %d (%s, %s) из семейства \"%s\": %s"
@@ -5783,236 +5846,241 @@ msgstr "оператор %d (%s, %s) из семейства \"%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:3370
+#: catalog/objectaddress.c:3333
 #, c-format
 msgid "function %d (%s, %s) of %s: %s"
 msgstr "функция %d (%s, %s) из семейства \"%s\": %s"
 
 #. translator: second %s is, e.g., "table %s"
-#: catalog/objectaddress.c:3422
+#: catalog/objectaddress.c:3385
 #, c-format
 msgid "rule %s on %s"
 msgstr "правило %s для отношения %s"
 
 #. translator: second %s is, e.g., "table %s"
-#: catalog/objectaddress.c:3468
+#: catalog/objectaddress.c:3431
 #, c-format
 msgid "trigger %s on %s"
 msgstr "триггер %s в отношении %s"
 
-#: catalog/objectaddress.c:3488
+#: catalog/objectaddress.c:3451
 #, c-format
 msgid "schema %s"
 msgstr "схема %s"
 
-#: catalog/objectaddress.c:3516
+#: catalog/objectaddress.c:3479
 #, c-format
 msgid "statistics object %s"
 msgstr "объект статистики %s"
 
-#: catalog/objectaddress.c:3547
+#: catalog/objectaddress.c:3510
 #, c-format
 msgid "text search parser %s"
 msgstr "анализатор текстового поиска %s"
 
-#: catalog/objectaddress.c:3578
+#: catalog/objectaddress.c:3541
 #, c-format
 msgid "text search dictionary %s"
 msgstr "словарь текстового поиска %s"
 
-#: catalog/objectaddress.c:3609
+#: catalog/objectaddress.c:3572
 #, c-format
 msgid "text search template %s"
 msgstr "шаблон текстового поиска %s"
 
-#: catalog/objectaddress.c:3640
+#: catalog/objectaddress.c:3603
 #, c-format
 msgid "text search configuration %s"
 msgstr "конфигурация текстового поиска %s"
 
-#: catalog/objectaddress.c:3653
+#: catalog/objectaddress.c:3616
 #, c-format
 msgid "role %s"
 msgstr "роль %s"
 
-#: catalog/objectaddress.c:3669
+#: catalog/objectaddress.c:3653 catalog/objectaddress.c:5505
+#, c-format
+msgid "membership of role %s in role %s"
+msgstr "членство роли %s в роли %s"
+
+#: catalog/objectaddress.c:3674
 #, c-format
 msgid "database %s"
 msgstr "база данных %s"
 
-#: catalog/objectaddress.c:3685
+#: catalog/objectaddress.c:3690
 #, c-format
 msgid "tablespace %s"
 msgstr "табличное пространство %s"
 
-#: catalog/objectaddress.c:3696
+#: catalog/objectaddress.c:3701
 #, c-format
 msgid "foreign-data wrapper %s"
 msgstr "обёртка сторонних данных %s"
 
-#: catalog/objectaddress.c:3706
+#: catalog/objectaddress.c:3711
 #, c-format
 msgid "server %s"
 msgstr "сервер %s"
 
-#: catalog/objectaddress.c:3739
+#: catalog/objectaddress.c:3744
 #, c-format
 msgid "user mapping for %s on server %s"
 msgstr "сопоставление для пользователя %s на сервере %s"
 
-#: catalog/objectaddress.c:3791
+#: catalog/objectaddress.c:3796
 #, c-format
 msgid "default privileges on new relations belonging to role %s in schema %s"
 msgstr ""
 "права по умолчанию для новых отношений, принадлежащих роли %s в схеме %s"
 
-#: catalog/objectaddress.c:3795
+#: catalog/objectaddress.c:3800
 #, c-format
 msgid "default privileges on new relations belonging to role %s"
 msgstr "права по умолчанию для новых отношений, принадлежащих роли %s"
 
-#: catalog/objectaddress.c:3801
+#: catalog/objectaddress.c:3806
 #, c-format
 msgid "default privileges on new sequences belonging to role %s in schema %s"
 msgstr ""
 "права по умолчанию для новых последовательностей, принадлежащих роли %s в "
 "схеме %s"
 
-#: catalog/objectaddress.c:3805
+#: catalog/objectaddress.c:3810
 #, c-format
 msgid "default privileges on new sequences belonging to role %s"
 msgstr ""
 "права по умолчанию для новых последовательностей, принадлежащих роли %s"
 
-#: catalog/objectaddress.c:3811
+#: catalog/objectaddress.c:3816
 #, c-format
 msgid "default privileges on new functions belonging to role %s in schema %s"
 msgstr "права по умолчанию для новых функций, принадлежащих роли %s в схеме %s"
 
-#: catalog/objectaddress.c:3815
+#: catalog/objectaddress.c:3820
 #, c-format
 msgid "default privileges on new functions belonging to role %s"
 msgstr "права по умолчанию для новых функций, принадлежащих роли %s"
 
-#: catalog/objectaddress.c:3821
+#: catalog/objectaddress.c:3826
 #, c-format
 msgid "default privileges on new types belonging to role %s in schema %s"
 msgstr "права по умолчанию для новых типов, принадлежащих роли %s в схеме %s"
 
-#: catalog/objectaddress.c:3825
+#: catalog/objectaddress.c:3830
 #, c-format
 msgid "default privileges on new types belonging to role %s"
 msgstr "права по умолчанию для новых типов, принадлежащих роли %s"
 
-#: catalog/objectaddress.c:3831
+#: catalog/objectaddress.c:3836
 #, c-format
 msgid "default privileges on new schemas belonging to role %s"
 msgstr "права по умолчанию для новых схем, принадлежащих роли %s"
 
-#: catalog/objectaddress.c:3838
+#: catalog/objectaddress.c:3843
 #, c-format
 msgid "default privileges belonging to role %s in schema %s"
 msgstr ""
 "права по умолчанию для новых объектов, принадлежащих роли %s в схеме %s"
 
-#: catalog/objectaddress.c:3842
+#: catalog/objectaddress.c:3847
 #, c-format
 msgid "default privileges belonging to role %s"
 msgstr "права по умолчанию для новых объектов, принадлежащих роли %s"
 
-#: catalog/objectaddress.c:3864
+#: catalog/objectaddress.c:3869
 #, c-format
 msgid "extension %s"
 msgstr "расширение %s"
 
-#: catalog/objectaddress.c:3881
+#: catalog/objectaddress.c:3886
 #, c-format
 msgid "event trigger %s"
 msgstr "событийный триггер %s"
 
-#: catalog/objectaddress.c:3908
+#: catalog/objectaddress.c:3910
 #, c-format
 msgid "parameter %s"
 msgstr "параметр %s"
 
 #. translator: second %s is, e.g., "table %s"
-#: catalog/objectaddress.c:3951
+#: catalog/objectaddress.c:3953
 #, c-format
 msgid "policy %s on %s"
 msgstr "политика %s отношения %s"
 
-#: catalog/objectaddress.c:3965
+#: catalog/objectaddress.c:3967
 #, c-format
 msgid "publication %s"
 msgstr "публикация %s"
 
-#: catalog/objectaddress.c:3978
+#: catalog/objectaddress.c:3980
 #, c-format
 msgid "publication of schema %s in publication %s"
 msgstr "публикация схемы %s в публикации %s"
 
 #. translator: first %s is, e.g., "table %s"
-#: catalog/objectaddress.c:4009
+#: catalog/objectaddress.c:4011
 #, c-format
 msgid "publication of %s in publication %s"
 msgstr "публикуемое отношение %s в публикации %s"
 
-#: catalog/objectaddress.c:4022
+#: catalog/objectaddress.c:4024
 #, c-format
 msgid "subscription %s"
 msgstr "подписка %s"
 
-#: catalog/objectaddress.c:4043
+#: catalog/objectaddress.c:4045
 #, c-format
 msgid "transform for %s language %s"
 msgstr "преобразование для %s, языка %s"
 
-#: catalog/objectaddress.c:4114
+#: catalog/objectaddress.c:4116
 #, c-format
 msgid "table %s"
 msgstr "таблица %s"
 
-#: catalog/objectaddress.c:4119
+#: catalog/objectaddress.c:4121
 #, c-format
 msgid "index %s"
 msgstr "индекс %s"
 
-#: catalog/objectaddress.c:4123
+#: catalog/objectaddress.c:4125
 #, c-format
 msgid "sequence %s"
 msgstr "последовательность %s"
 
-#: catalog/objectaddress.c:4127
+#: catalog/objectaddress.c:4129
 #, c-format
 msgid "toast table %s"
 msgstr "TOAST-таблица %s"
 
-#: catalog/objectaddress.c:4131
+#: catalog/objectaddress.c:4133
 #, c-format
 msgid "view %s"
 msgstr "представление %s"
 
-#: catalog/objectaddress.c:4135
+#: catalog/objectaddress.c:4137
 #, c-format
 msgid "materialized view %s"
 msgstr "материализованное представление %s"
 
-#: catalog/objectaddress.c:4139
+#: catalog/objectaddress.c:4141
 #, c-format
 msgid "composite type %s"
 msgstr "составной тип %s"
 
-#: catalog/objectaddress.c:4143
+#: catalog/objectaddress.c:4145
 #, c-format
 msgid "foreign table %s"
 msgstr "сторонняя таблица %s"
 
-#: catalog/objectaddress.c:4148
+#: catalog/objectaddress.c:4150
 #, c-format
 msgid "relation %s"
 msgstr "отношение %s"
 
-#: catalog/objectaddress.c:4189
+#: catalog/objectaddress.c:4191
 #, c-format
 msgid "operator family %s for access method %s"
 msgstr "семейство операторов %s для метода доступа %s"
@@ -6065,7 +6133,7 @@ msgstr ""
 msgid "return type of inverse transition function %s is not %s"
 msgstr "обратная функция перехода %s должна возвращать тип %s"
 
-#: catalog/pg_aggregate.c:352 executor/nodeWindowAgg.c:2998
+#: catalog/pg_aggregate.c:352 executor/nodeWindowAgg.c:3009
 #, c-format
 msgid ""
 "strictness of aggregate's forward and inverse transition functions must match"
@@ -6084,7 +6152,7 @@ msgstr ""
 msgid "return type of combine function %s is not %s"
 msgstr "комбинирующая функция %s должна возвращать тип %s"
 
-#: catalog/pg_aggregate.c:439 executor/nodeAgg.c:3888
+#: catalog/pg_aggregate.c:439 executor/nodeAgg.c:3903
 #, c-format
 msgid "combine function with transition type %s must not be declared STRICT"
 msgstr ""
@@ -6152,13 +6220,13 @@ msgstr "\"%s\" — гипотезирующая агрегатная функц
 msgid "cannot change number of direct arguments of an aggregate function"
 msgstr "изменить число непосредственных аргументов агрегатной функции нельзя"
 
-#: catalog/pg_aggregate.c:858 commands/functioncmds.c:695
-#: commands/typecmds.c:1976 commands/typecmds.c:2022 commands/typecmds.c:2074
-#: commands/typecmds.c:2111 commands/typecmds.c:2145 commands/typecmds.c:2179
-#: commands/typecmds.c:2213 commands/typecmds.c:2242 commands/typecmds.c:2329
-#: commands/typecmds.c:2371 parser/parse_func.c:417 parser/parse_func.c:448
+#: catalog/pg_aggregate.c:858 commands/functioncmds.c:691
+#: commands/typecmds.c:1975 commands/typecmds.c:2021 commands/typecmds.c:2073
+#: commands/typecmds.c:2110 commands/typecmds.c:2144 commands/typecmds.c:2178
+#: commands/typecmds.c:2212 commands/typecmds.c:2241 commands/typecmds.c:2328
+#: commands/typecmds.c:2370 parser/parse_func.c:417 parser/parse_func.c:448
 #: parser/parse_func.c:475 parser/parse_func.c:489 parser/parse_func.c:611
-#: parser/parse_func.c:631 parser/parse_func.c:2173 parser/parse_func.c:2446
+#: parser/parse_func.c:631 parser/parse_func.c:2171 parser/parse_func.c:2444
 #, c-format
 msgid "function %s does not exist"
 msgstr "функция %s не существует"
@@ -6180,7 +6248,7 @@ msgstr ""
 msgid "function %s requires run-time type coercion"
 msgstr "функции %s требуется приведение типов во время выполнения"
 
-#: catalog/pg_cast.c:68
+#: catalog/pg_cast.c:75
 #, c-format
 msgid "cast from type %s to type %s already exists"
 msgstr "приведение типа %s к типу %s уже существует"
@@ -6235,38 +6303,38 @@ msgstr "Эта операция не поддерживается для сек
 msgid "This operation is not supported for partitioned indexes."
 msgstr "Эта операция не поддерживается для секционированных индексов."
 
-#: catalog/pg_collation.c:101 catalog/pg_collation.c:159
+#: catalog/pg_collation.c:102 catalog/pg_collation.c:160
 #, c-format
 msgid "collation \"%s\" already exists, skipping"
 msgstr "правило сортировки \"%s\" уже существует, пропускается"
 
-#: catalog/pg_collation.c:103
+#: catalog/pg_collation.c:104
 #, c-format
 msgid "collation \"%s\" for encoding \"%s\" already exists, skipping"
 msgstr ""
 "правило сортировки \"%s\" для кодировки \"%s\" уже существует, пропускается"
 
-#: catalog/pg_collation.c:111 catalog/pg_collation.c:166
+#: catalog/pg_collation.c:112 catalog/pg_collation.c:167
 #, c-format
 msgid "collation \"%s\" already exists"
 msgstr "правило сортировки \"%s\" уже существует"
 
-#: catalog/pg_collation.c:113
+#: catalog/pg_collation.c:114
 #, c-format
 msgid "collation \"%s\" for encoding \"%s\" already exists"
 msgstr "правило сортировки \"%s\" для кодировки \"%s\" уже существует"
 
-#: catalog/pg_constraint.c:697
+#: catalog/pg_constraint.c:690
 #, c-format
 msgid "constraint \"%s\" for domain %s already exists"
 msgstr "ограничение \"%s\" для домена %s уже существует"
 
-#: catalog/pg_constraint.c:893 catalog/pg_constraint.c:986
+#: catalog/pg_constraint.c:890 catalog/pg_constraint.c:983
 #, c-format
 msgid "constraint \"%s\" for table \"%s\" does not exist"
 msgstr "ограничение \"%s\" для таблицы \"%s\" не существует"
 
-#: catalog/pg_constraint.c:1086
+#: catalog/pg_constraint.c:1083
 #, c-format
 msgid "constraint \"%s\" for domain %s does not exist"
 msgstr "ограничение \"%s\" для домена %s не существует"
@@ -6281,12 +6349,12 @@ msgstr "преобразование \"%s\" уже существует"
 msgid "default conversion for %s to %s already exists"
 msgstr "преобразование по умолчанию из %s в %s уже существует"
 
-#: catalog/pg_depend.c:222 commands/extension.c:3271
+#: catalog/pg_depend.c:222 commands/extension.c:3368
 #, c-format
 msgid "%s is already a member of extension \"%s\""
 msgstr "%s уже относится к расширению \"%s\""
 
-#: catalog/pg_depend.c:229 catalog/pg_depend.c:280 commands/extension.c:3311
+#: catalog/pg_depend.c:229 catalog/pg_depend.c:280 commands/extension.c:3408
 #, c-format
 msgid "%s is not a member of extension \"%s\""
 msgstr "%s не относится к расширению \"%s\""
@@ -6312,37 +6380,37 @@ msgid "cannot remove dependency on %s because it is a system object"
 msgstr ""
 "ликвидировать зависимость от объекта %s нельзя, так как это системный объект"
 
-#: catalog/pg_enum.c:128 catalog/pg_enum.c:230 catalog/pg_enum.c:525
+#: catalog/pg_enum.c:137 catalog/pg_enum.c:259 catalog/pg_enum.c:554
 #, c-format
 msgid "invalid enum label \"%s\""
 msgstr "неверная метка в перечислении \"%s\""
 
-#: catalog/pg_enum.c:129 catalog/pg_enum.c:231 catalog/pg_enum.c:526
+#: catalog/pg_enum.c:138 catalog/pg_enum.c:260 catalog/pg_enum.c:555
 #, c-format
 msgid "Labels must be %d bytes or less."
 msgstr "Длина метки не должна превышать %d байт."
 
-#: catalog/pg_enum.c:259
+#: catalog/pg_enum.c:288
 #, c-format
 msgid "enum label \"%s\" already exists, skipping"
 msgstr "метка перечисления \"%s\" уже существует, пропускается"
 
-#: catalog/pg_enum.c:266 catalog/pg_enum.c:569
+#: catalog/pg_enum.c:295 catalog/pg_enum.c:598
 #, c-format
 msgid "enum label \"%s\" already exists"
 msgstr "метка перечисления \"%s\" уже существует"
 
-#: catalog/pg_enum.c:321 catalog/pg_enum.c:564
+#: catalog/pg_enum.c:350 catalog/pg_enum.c:593
 #, c-format
 msgid "\"%s\" is not an existing enum label"
 msgstr "в перечислении нет метки\"%s\""
 
-#: catalog/pg_enum.c:379
+#: catalog/pg_enum.c:408
 #, c-format
 msgid "pg_enum OID value not set when in binary upgrade mode"
 msgstr "значение OID в pg_enum не задано в режиме двоичного обновления"
 
-#: catalog/pg_enum.c:389
+#: catalog/pg_enum.c:418
 #, c-format
 msgid "ALTER TYPE ADD BEFORE/AFTER is incompatible with binary upgrade"
 msgstr ""
@@ -6362,8 +6430,8 @@ msgstr ""
 "Эта секция отсоединяется параллельно или для неё не была завершена операция "
 "отсоединения."
 
-#: catalog/pg_inherits.c:596 commands/tablecmds.c:4488
-#: commands/tablecmds.c:15429
+#: catalog/pg_inherits.c:596 commands/tablecmds.c:4583
+#: commands/tablecmds.c:15464
 #, c-format
 msgid ""
 "Use ALTER TABLE ... DETACH PARTITION ... FINALIZE to complete the pending "
@@ -6382,7 +6450,7 @@ msgstr "завершить отсоединение секции \"%s\" нель
 msgid "There's no pending concurrent detach."
 msgstr "На данный момент все операции отсоединения завершены."
 
-#: catalog/pg_namespace.c:64 commands/schemacmds.c:254
+#: catalog/pg_namespace.c:64 commands/schemacmds.c:273
 #, c-format
 msgid "schema \"%s\" already exists"
 msgstr "схема \"%s\" уже существует"
@@ -6397,7 +6465,7 @@ msgstr "имя \"%s\" недопустимо для оператора"
 msgid "only binary operators can have commutators"
 msgstr "коммутативную операцию можно определить только для бинарных операторов"
 
-#: catalog/pg_operator.c:374 commands/operatorcmds.c:507
+#: catalog/pg_operator.c:374 commands/operatorcmds.c:509
 #, c-format
 msgid "only binary operators can have join selectivity"
 msgstr ""
@@ -6419,13 +6487,13 @@ msgstr "поддержку хеша можно обозначить только
 msgid "only boolean operators can have negators"
 msgstr "обратную операцию можно определить только для логических операторов"
 
-#: catalog/pg_operator.c:397 commands/operatorcmds.c:515
+#: catalog/pg_operator.c:397 commands/operatorcmds.c:517
 #, c-format
 msgid "only boolean operators can have restriction selectivity"
 msgstr ""
 "функцию оценки ограничения можно определить только для логических операторов"
 
-#: catalog/pg_operator.c:401 commands/operatorcmds.c:519
+#: catalog/pg_operator.c:401 commands/operatorcmds.c:521
 #, c-format
 msgid "only boolean operators can have join selectivity"
 msgstr ""
@@ -6454,17 +6522,17 @@ msgid "operator cannot be its own negator or sort operator"
 msgstr ""
 "оператор не может быть обратным к себе или собственным оператором сортировки"
 
-#: catalog/pg_parameter_acl.c:52
+#: catalog/pg_parameter_acl.c:53
 #, c-format
 msgid "parameter ACL \"%s\" does not exist"
 msgstr "ACL параметра \"%s\" не существует"
 
-#: catalog/pg_parameter_acl.c:87
+#: catalog/pg_parameter_acl.c:88
 #, c-format
 msgid "invalid parameter name \"%s\""
 msgstr "неверное имя параметра \"%s\""
 
-#: catalog/pg_proc.c:132 parser/parse_func.c:2235
+#: catalog/pg_proc.c:132 parser/parse_func.c:2233
 #, c-format
 msgid "functions cannot have more than %d argument"
 msgid_plural "functions cannot have more than %d arguments"
@@ -6512,7 +6580,7 @@ msgstr "изменить тип возврата существующей фун
 #.
 #. translator: first %s is DROP FUNCTION or DROP PROCEDURE
 #: catalog/pg_proc.c:421 catalog/pg_proc.c:448 catalog/pg_proc.c:493
-#: catalog/pg_proc.c:519 catalog/pg_proc.c:545
+#: catalog/pg_proc.c:519 catalog/pg_proc.c:543
 #, c-format
 msgid "Use %s %s first."
 msgstr "Сначала выполните %s %s."
@@ -6533,102 +6601,96 @@ msgid "cannot remove parameter defaults from existing function"
 msgstr ""
 "для существующей функции нельзя убрать значения параметров по умолчанию"
 
-#: catalog/pg_proc.c:543
+#: catalog/pg_proc.c:541
 #, c-format
 msgid "cannot change data type of existing parameter default value"
 msgstr ""
 "для существующего значения параметра по умолчанию нельзя изменить тип данных"
 
-#: catalog/pg_proc.c:757
+#: catalog/pg_proc.c:752
 #, c-format
 msgid "there is no built-in function named \"%s\""
 msgstr "встроенной функции \"%s\" нет"
 
-#: catalog/pg_proc.c:855
+#: catalog/pg_proc.c:845
 #, c-format
 msgid "SQL functions cannot return type %s"
 msgstr "SQL-функции не могут возвращать тип %s"
 
-#: catalog/pg_proc.c:870
+#: catalog/pg_proc.c:860
 #, c-format
 msgid "SQL functions cannot have arguments of type %s"
 msgstr "SQL-функции не могут иметь аргументы типа %s"
 
-#: catalog/pg_proc.c:1000 executor/functions.c:1473
+#: catalog/pg_proc.c:987 executor/functions.c:1466
 #, c-format
 msgid "SQL function \"%s\""
 msgstr "SQL-функция \"%s\""
 
-#: catalog/pg_publication.c:63 catalog/pg_publication.c:71
-#: catalog/pg_publication.c:79 catalog/pg_publication.c:85
+#: catalog/pg_publication.c:71 catalog/pg_publication.c:79
+#: catalog/pg_publication.c:87 catalog/pg_publication.c:93
 #, c-format
 msgid "cannot add relation \"%s\" to publication"
 msgstr "добавить отношение \"%s\" в публикацию нельзя"
 
-#: catalog/pg_publication.c:73
+#: catalog/pg_publication.c:81
 #, c-format
 msgid "This operation is not supported for system tables."
 msgstr "Эта операция не поддерживается для системных таблиц."
 
-#: catalog/pg_publication.c:81
+#: catalog/pg_publication.c:89
 #, c-format
 msgid "This operation is not supported for temporary tables."
 msgstr "Эта операция не поддерживается для временных таблиц."
 
-#: catalog/pg_publication.c:87
+#: catalog/pg_publication.c:95
 #, c-format
 msgid "This operation is not supported for unlogged tables."
 msgstr "Эта операция не поддерживается для нежурналируемых таблиц."
 
-#: catalog/pg_publication.c:101 catalog/pg_publication.c:109
+#: catalog/pg_publication.c:109 catalog/pg_publication.c:117
 #, c-format
 msgid "cannot add schema \"%s\" to publication"
 msgstr "добавить схему \"%s\" в публикацию нельзя"
 
-#: catalog/pg_publication.c:103
+#: catalog/pg_publication.c:111
 #, c-format
 msgid "This operation is not supported for system schemas."
 msgstr "Эта операция не поддерживается для системных схем."
 
-#: catalog/pg_publication.c:111
+#: catalog/pg_publication.c:119
 #, c-format
 msgid "Temporary schemas cannot be replicated."
 msgstr "Временные схемы нельзя реплицировать."
 
-#: catalog/pg_publication.c:374
+#: catalog/pg_publication.c:397
 #, c-format
 msgid "relation \"%s\" is already member of publication \"%s\""
 msgstr "отношение \"%s\" уже включено в публикацию \"%s\""
 
-#: catalog/pg_publication.c:516
+#: catalog/pg_publication.c:539
 #, c-format
 msgid "cannot use system column \"%s\" in publication column list"
 msgstr ""
 "в списке публикуемых столбцов нельзя использовать системный столбец \"%s\""
 
-#: catalog/pg_publication.c:522
+#: catalog/pg_publication.c:545
 #, c-format
 msgid "cannot use generated column \"%s\" in publication column list"
 msgstr ""
 "в списке публикуемых столбцов нельзя использовать генерируемый столбец \"%s\""
 
-#: catalog/pg_publication.c:528
+#: catalog/pg_publication.c:551
 #, c-format
 msgid "duplicate column \"%s\" in publication column list"
 msgstr "в списке публикуемых столбцов повторяется столбец \"%s\""
 
-#: catalog/pg_publication.c:618
+#: catalog/pg_publication.c:641
 #, c-format
 msgid "schema \"%s\" is already member of publication \"%s\""
 msgstr "схема \"%s\" уже включена в публикацию \"%s\""
 
-#: catalog/pg_publication.c:1045 commands/publicationcmds.c:1391
-#: commands/publicationcmds.c:1430 commands/publicationcmds.c:1967
-#, c-format
-msgid "publication \"%s\" does not exist"
-msgstr "публикация \"%s\" не существует"
-
-#: catalog/pg_shdepend.c:829
+#: catalog/pg_shdepend.c:830
 #, c-format
 msgid ""
 "\n"
@@ -6646,43 +6708,43 @@ msgstr[2] ""
 "\n"
 "и объекты в %d других базах данных (см. список в протоколе сервера)"
 
-#: catalog/pg_shdepend.c:1176
+#: catalog/pg_shdepend.c:1177
 #, c-format
 msgid "role %u was concurrently dropped"
 msgstr "роль %u удалена другим процессом"
 
-#: catalog/pg_shdepend.c:1188
+#: catalog/pg_shdepend.c:1189
 #, c-format
 msgid "tablespace %u was concurrently dropped"
 msgstr "табличное пространство %u удалено другим процессом"
 
-#: catalog/pg_shdepend.c:1202
+#: catalog/pg_shdepend.c:1203
 #, c-format
 msgid "database %u was concurrently dropped"
 msgstr "база данных %u удалена другим процессом"
 
-#: catalog/pg_shdepend.c:1253
+#: catalog/pg_shdepend.c:1254
 #, c-format
 msgid "owner of %s"
 msgstr "владелец объекта %s"
 
-#: catalog/pg_shdepend.c:1255
+#: catalog/pg_shdepend.c:1256
 #, c-format
 msgid "privileges for %s"
 msgstr "права доступа к объекту %s"
 
-#: catalog/pg_shdepend.c:1257
+#: catalog/pg_shdepend.c:1258
 #, c-format
 msgid "target of %s"
 msgstr "субъект политики %s"
 
-#: catalog/pg_shdepend.c:1259
+#: catalog/pg_shdepend.c:1260
 #, c-format
 msgid "tablespace for %s"
 msgstr "табличное пространство для %s"
 
 #. translator: %s will always be "database %s"
-#: catalog/pg_shdepend.c:1267
+#: catalog/pg_shdepend.c:1268
 #, c-format
 msgid "%d object in %s"
 msgid_plural "%d objects in %s"
@@ -6690,7 +6752,7 @@ msgstr[0] "%d объект (%s)"
 msgstr[1] "%d объекта (%s)"
 msgstr[2] "%d объектов (%s)"
 
-#: catalog/pg_shdepend.c:1331
+#: catalog/pg_shdepend.c:1332
 #, c-format
 msgid ""
 "cannot drop objects owned by %s because they are required by the database "
@@ -6699,7 +6761,7 @@ msgstr ""
 "удалить объекты, принадлежащие роли %s, нельзя, так как они нужны системе "
 "баз данных"
 
-#: catalog/pg_shdepend.c:1477
+#: catalog/pg_shdepend.c:1498
 #, c-format
 msgid ""
 "cannot reassign ownership of objects owned by %s because they are required "
@@ -6708,18 +6770,12 @@ msgstr ""
 "изменить владельца объектов, принадлежащих роли %s, нельзя, так как они "
 "нужны системе баз данных"
 
-#: catalog/pg_subscription.c:216 commands/subscriptioncmds.c:989
-#: commands/subscriptioncmds.c:1359 commands/subscriptioncmds.c:1710
-#, c-format
-msgid "subscription \"%s\" does not exist"
-msgstr "подписка \"%s\" не существует"
-
-#: catalog/pg_subscription.c:474
+#: catalog/pg_subscription.c:424
 #, c-format
 msgid "could not drop relation mapping for subscription \"%s\""
 msgstr "удалить сопоставление отношений для подписки \"%s\" не получилось"
 
-#: catalog/pg_subscription.c:476
+#: catalog/pg_subscription.c:426
 #, c-format
 msgid ""
 "Table synchronization for relation \"%s\" is in progress and is in state "
@@ -6729,7 +6785,7 @@ msgstr "Выполняется синхронизация отношения \"%
 #. translator: first %s is a SQL ALTER command and second %s is a
 #. SQL DROP command
 #.
-#: catalog/pg_subscription.c:483
+#: catalog/pg_subscription.c:433
 #, c-format
 msgid ""
 "Use %s to enable subscription if not already enabled or use %s to drop the "
@@ -6738,50 +6794,45 @@ msgstr ""
 "Выполните %s, чтобы включить подписку, если она ещё не включена, либо %s, "
 "чтобы удалить её."
 
-#: catalog/pg_type.c:136 catalog/pg_type.c:476
+#: catalog/pg_type.c:134 catalog/pg_type.c:474
 #, c-format
 msgid "pg_type OID value not set when in binary upgrade mode"
 msgstr "значение OID в pg_type не задано в режиме двоичного обновления"
 
-#: catalog/pg_type.c:256
+#: catalog/pg_type.c:254
 #, c-format
 msgid "invalid type internal size %d"
 msgstr "неверный внутренний размер типа: %d"
 
-#: catalog/pg_type.c:272 catalog/pg_type.c:280 catalog/pg_type.c:288
-#: catalog/pg_type.c:297
+#: catalog/pg_type.c:270 catalog/pg_type.c:278 catalog/pg_type.c:286
+#: catalog/pg_type.c:295
 #, c-format
 msgid "alignment \"%c\" is invalid for passed-by-value type of size %d"
 msgstr ""
 "выравнивание \"%c\" не подходит для типа, передаваемого по значению (с "
 "размером: %d)"
 
-#: catalog/pg_type.c:304
+#: catalog/pg_type.c:302
 #, c-format
 msgid "internal size %d is invalid for passed-by-value type"
 msgstr "внутренний размер %d не подходит для типа, передаваемого по значению"
 
-#: catalog/pg_type.c:314 catalog/pg_type.c:320
+#: catalog/pg_type.c:312 catalog/pg_type.c:318
 #, c-format
 msgid "alignment \"%c\" is invalid for variable-length type"
 msgstr "выравнивание \"%c\" не подходит для типа переменной длины"
 
-#: catalog/pg_type.c:328 commands/typecmds.c:4151
+#: catalog/pg_type.c:326 commands/typecmds.c:4140
 #, c-format
 msgid "fixed-size types must have storage PLAIN"
 msgstr "для типов постоянного размера применим только режим хранения PLAIN"
 
-#: catalog/pg_type.c:827
-#, c-format
-msgid "could not form array type name for type \"%s\""
-msgstr "не удалось сформировать имя типа массива для типа \"%s\""
-
-#: catalog/pg_type.c:932
+#: catalog/pg_type.c:955
 #, c-format
 msgid "Failed while creating a multirange type for type \"%s\"."
 msgstr "Ошибка при создании мультидиапазонного типа для типа \"%s\"."
 
-#: catalog/pg_type.c:933
+#: catalog/pg_type.c:956
 #, c-format
 msgid ""
 "You can manually specify a multirange type name using the "
@@ -6790,82 +6841,82 @@ msgstr ""
 "Имя мультидиапазонного типа можно указать вручную, воспользовавшись "
 "атрибутом \"multirange_type_name\"."
 
-#: catalog/storage.c:505 storage/buffer/bufmgr.c:1047
+#: catalog/storage.c:505 storage/buffer/bufmgr.c:1145
 #, c-format
 msgid "invalid page in block %u of relation %s"
 msgstr "неверная страница в блоке %u отношения %s"
 
-#: commands/aggregatecmds.c:170
+#: commands/aggregatecmds.c:171
 #, c-format
 msgid "only ordered-set aggregates can be hypothetical"
 msgstr "гипотезирующими могут быть только сортирующие агрегатные функции"
 
-#: commands/aggregatecmds.c:195
+#: commands/aggregatecmds.c:196
 #, c-format
 msgid "aggregate attribute \"%s\" not recognized"
 msgstr "нераспознанный атрибут \"%s\" в определении агрегатной функции"
 
-#: commands/aggregatecmds.c:205
+#: commands/aggregatecmds.c:206
 #, c-format
 msgid "aggregate stype must be specified"
 msgstr "в определении агрегата требуется stype"
 
-#: commands/aggregatecmds.c:209
+#: commands/aggregatecmds.c:210
 #, c-format
 msgid "aggregate sfunc must be specified"
 msgstr "в определении агрегата требуется sfunc"
 
-#: commands/aggregatecmds.c:221
+#: commands/aggregatecmds.c:222
 #, c-format
 msgid "aggregate msfunc must be specified when mstype is specified"
 msgstr "в определении агрегата требуется msfunc, если указан mstype"
 
-#: commands/aggregatecmds.c:225
+#: commands/aggregatecmds.c:226
 #, c-format
 msgid "aggregate minvfunc must be specified when mstype is specified"
 msgstr "в определении агрегата требуется minvfunc, если указан mstype"
 
-#: commands/aggregatecmds.c:232
+#: commands/aggregatecmds.c:233
 #, c-format
 msgid "aggregate msfunc must not be specified without mstype"
 msgstr "msfunc для агрегата не должна указываться без mstype"
 
-#: commands/aggregatecmds.c:236
+#: commands/aggregatecmds.c:237
 #, c-format
 msgid "aggregate minvfunc must not be specified without mstype"
 msgstr "minvfunc для агрегата не должна указываться без mstype"
 
-#: commands/aggregatecmds.c:240
+#: commands/aggregatecmds.c:241
 #, c-format
 msgid "aggregate mfinalfunc must not be specified without mstype"
 msgstr "mfinalfunc для агрегата не должна указываться без mstype"
 
-#: commands/aggregatecmds.c:244
+#: commands/aggregatecmds.c:245
 #, c-format
 msgid "aggregate msspace must not be specified without mstype"
 msgstr "msspace для агрегата не должна указываться без mstype"
 
-#: commands/aggregatecmds.c:248
+#: commands/aggregatecmds.c:249
 #, c-format
 msgid "aggregate minitcond must not be specified without mstype"
 msgstr "minitcond для агрегата не должна указываться без mstype"
 
-#: commands/aggregatecmds.c:277
+#: commands/aggregatecmds.c:278
 #, c-format
 msgid "aggregate input type must be specified"
 msgstr "в определении агрегата требуется входной тип"
 
-#: commands/aggregatecmds.c:307
+#: commands/aggregatecmds.c:308
 #, c-format
 msgid "basetype is redundant with aggregate input type specification"
 msgstr "в определении агрегата с указанием входного типа не нужен базовый тип"
 
-#: commands/aggregatecmds.c:350 commands/aggregatecmds.c:391
+#: commands/aggregatecmds.c:351 commands/aggregatecmds.c:392
 #, c-format
 msgid "aggregate transition data type cannot be %s"
 msgstr "переходным типом агрегата не может быть %s"
 
-#: commands/aggregatecmds.c:362
+#: commands/aggregatecmds.c:363
 #, c-format
 msgid ""
 "serialization functions may be specified only when the aggregate transition "
@@ -6874,91 +6925,109 @@ msgstr ""
 "функции сериализации могут задаваться, только когда переходный тип данных "
 "агрегата - %s"
 
-#: commands/aggregatecmds.c:372
+#: commands/aggregatecmds.c:373
 #, c-format
 msgid ""
 "must specify both or neither of serialization and deserialization functions"
 msgstr "функции сериализации и десериализации должны задаваться совместно"
 
-#: commands/aggregatecmds.c:437 commands/functioncmds.c:643
+#: commands/aggregatecmds.c:438 commands/functioncmds.c:639
 #, c-format
 msgid "parameter \"parallel\" must be SAFE, RESTRICTED, or UNSAFE"
 msgstr ""
 "параметр \"parallel\" должен иметь значение SAFE, RESTRICTED или UNSAFE"
 
-#: commands/aggregatecmds.c:493
+#: commands/aggregatecmds.c:494
 #, c-format
 msgid "parameter \"%s\" must be READ_ONLY, SHAREABLE, or READ_WRITE"
 msgstr ""
 "параметр \"%s\" должен иметь характеристику READ_ONLY, SHAREABLE или "
 "READ_WRITE"
 
-#: commands/alter.c:84 commands/event_trigger.c:174
+#: commands/alter.c:86 commands/event_trigger.c:174
 #, c-format
 msgid "event trigger \"%s\" already exists"
 msgstr "событийный триггер \"%s\" уже существует"
 
-#: commands/alter.c:87 commands/foreigncmds.c:593
+#: commands/alter.c:89 commands/foreigncmds.c:593
 #, c-format
 msgid "foreign-data wrapper \"%s\" already exists"
 msgstr "обёртка сторонних данных \"%s\" уже существует"
 
-#: commands/alter.c:90 commands/foreigncmds.c:884
+#: commands/alter.c:92 commands/foreigncmds.c:884
 #, c-format
 msgid "server \"%s\" already exists"
 msgstr "сервер \"%s\" уже существует"
 
-#: commands/alter.c:93 commands/proclang.c:133
+#: commands/alter.c:95 commands/proclang.c:133
 #, c-format
 msgid "language \"%s\" already exists"
 msgstr "язык \"%s\" уже существует"
 
-#: commands/alter.c:96 commands/publicationcmds.c:770
+#: commands/alter.c:98 commands/publicationcmds.c:771
 #, c-format
 msgid "publication \"%s\" already exists"
 msgstr "публикация \"%s\" уже существует"
 
-#: commands/alter.c:99 commands/subscriptioncmds.c:567
+#: commands/alter.c:101 commands/subscriptioncmds.c:657
 #, c-format
 msgid "subscription \"%s\" already exists"
 msgstr "подписка \"%s\" уже существует"
 
-#: commands/alter.c:122
+#: commands/alter.c:124
 #, c-format
 msgid "conversion \"%s\" already exists in schema \"%s\""
 msgstr "преобразование \"%s\" уже существует в схеме \"%s\""
 
-#: commands/alter.c:126
+#: commands/alter.c:128
 #, c-format
 msgid "statistics object \"%s\" already exists in schema \"%s\""
 msgstr "объект статистики \"%s\" уже существует в схеме \"%s\""
 
-#: commands/alter.c:130
+#: commands/alter.c:132
 #, c-format
 msgid "text search parser \"%s\" already exists in schema \"%s\""
 msgstr "анализатор текстового поиска \"%s\" уже существует в схеме \"%s\""
 
-#: commands/alter.c:134
+#: commands/alter.c:136
 #, c-format
 msgid "text search dictionary \"%s\" already exists in schema \"%s\""
 msgstr "словарь текстового поиска \"%s\" уже существует в схеме \"%s\""
 
-#: commands/alter.c:138
+#: commands/alter.c:140
 #, c-format
 msgid "text search template \"%s\" already exists in schema \"%s\""
 msgstr "шаблон текстового поиска \"%s\" уже существует в схеме \"%s\""
 
-#: commands/alter.c:142
+#: commands/alter.c:144
 #, c-format
 msgid "text search configuration \"%s\" already exists in schema \"%s\""
 msgstr "конфигурация текстового поиска \"%s\" уже существует в схеме \"%s\""
 
-#: commands/alter.c:215
+#: commands/alter.c:217
 #, c-format
 msgid "must be superuser to rename %s"
 msgstr "переименовать \"%s\" может только суперпользователь"
 
-#: commands/alter.c:746
+#: commands/alter.c:259 commands/subscriptioncmds.c:636
+#: commands/subscriptioncmds.c:1116 commands/subscriptioncmds.c:1198
+#: commands/subscriptioncmds.c:1830
+#, c-format
+msgid "password_required=false is superuser-only"
+msgstr "задать password_required=false может только суперпользователь"
+
+#: commands/alter.c:260 commands/subscriptioncmds.c:637
+#: commands/subscriptioncmds.c:1117 commands/subscriptioncmds.c:1199
+#: commands/subscriptioncmds.c:1831
+#, c-format
+msgid ""
+"Subscriptions with the password_required option set to false may only be "
+"created or modified by the superuser."
+msgstr ""
+"Подписки с параметром password_required option, равным false, могут "
+"создавать или изменять только суперпользователи."
+
+#: commands/alter.c:775
 #, c-format
 msgid "must be superuser to set schema of %s"
 msgstr "для назначения схемы объекта %s нужно быть суперпользователем"
@@ -6978,7 +7047,7 @@ msgstr "Для создания метода доступа нужно быть
 msgid "access method \"%s\" already exists"
 msgstr "метод доступа \"%s\" уже существует"
 
-#: commands/amcmds.c:154 commands/indexcmds.c:213 commands/indexcmds.c:833
+#: commands/amcmds.c:154 commands/indexcmds.c:216 commands/indexcmds.c:839
 #: commands/opclasscmds.c:375 commands/opclasscmds.c:833
 #, c-format
 msgid "access method \"%s\" does not exist"
@@ -6990,8 +7059,8 @@ msgid "handler function is not specified"
 msgstr "не указана функция-обработчик"
 
 #: commands/amcmds.c:264 commands/event_trigger.c:183
-#: commands/foreigncmds.c:489 commands/proclang.c:80 commands/trigger.c:713
-#: parser/parse_clause.c:942
+#: commands/foreigncmds.c:489 commands/proclang.c:80 commands/trigger.c:709
+#: parser/parse_clause.c:941
 #, c-format
 msgid "function %s must return type %s"
 msgstr "функция %s должна возвращать тип %s"
@@ -7018,7 +7087,7 @@ msgstr "анализируется дерево наследования \"%s.%s
 msgid "analyzing \"%s.%s\""
 msgstr "анализируется \"%s.%s\""
 
-#: commands/analyze.c:396
+#: commands/analyze.c:395
 #, c-format
 msgid "column \"%s\" of relation \"%s\" appears more than once"
 msgstr "столбец \"%s\" отношения \"%s\" указан неоднократно"
@@ -7038,7 +7107,7 @@ msgstr ""
 "%.0f, \"мёртвых\" строк: %.0f; строк в выборке: %d, примерное общее число "
 "строк: %.0f"
 
-#: commands/analyze.c:1414
+#: commands/analyze.c:1418
 #, c-format
 msgid ""
 "skipping analyze of \"%s.%s\" inheritance tree --- this inheritance tree "
@@ -7047,7 +7116,7 @@ msgstr ""
 "пропускается анализ дерева наследования \"%s.%s\" --- это дерево "
 "наследования не содержит дочерних таблиц"
 
-#: commands/analyze.c:1512
+#: commands/analyze.c:1516
 #, c-format
 msgid ""
 "skipping analyze of \"%s.%s\" inheritance tree --- this inheritance tree "
@@ -7106,42 +7175,42 @@ msgstr ""
 "Очередь NOTIFY можно будет освободить, только когда этот процесс завершит "
 "текущую транзакцию."
 
-#: commands/cluster.c:128
+#: commands/cluster.c:130
 #, c-format
 msgid "unrecognized CLUSTER option \"%s\""
 msgstr "нераспознанный параметр CLUSTER: \"%s\""
 
-#: commands/cluster.c:158 commands/cluster.c:431
+#: commands/cluster.c:160 commands/cluster.c:433
 #, c-format
 msgid "cannot cluster temporary tables of other sessions"
 msgstr "кластеризовать временные таблицы других сеансов нельзя"
 
-#: commands/cluster.c:176
+#: commands/cluster.c:178
 #, c-format
 msgid "there is no previously clustered index for table \"%s\""
 msgstr "таблица \"%s\" ранее не кластеризовалась по какому-либо индексу"
 
-#: commands/cluster.c:190 commands/tablecmds.c:14128 commands/tablecmds.c:16008
+#: commands/cluster.c:192 commands/tablecmds.c:14200 commands/tablecmds.c:16043
 #, c-format
 msgid "index \"%s\" for table \"%s\" does not exist"
 msgstr "индекс \"%s\" для таблицы \"%s\" не существует"
 
-#: commands/cluster.c:420
+#: commands/cluster.c:422
 #, c-format
 msgid "cannot cluster a shared catalog"
 msgstr "кластеризовать разделяемый каталог нельзя"
 
-#: commands/cluster.c:435
+#: commands/cluster.c:437
 #, c-format
 msgid "cannot vacuum temporary tables of other sessions"
 msgstr "очищать временные таблицы других сеансов нельзя"
 
-#: commands/cluster.c:511 commands/tablecmds.c:16018
+#: commands/cluster.c:513 commands/tablecmds.c:16053
 #, c-format
 msgid "\"%s\" is not an index for table \"%s\""
 msgstr "\"%s\" не является индексом таблицы \"%s\""
 
-#: commands/cluster.c:519
+#: commands/cluster.c:521
 #, c-format
 msgid ""
 "cannot cluster on index \"%s\" because access method does not support "
@@ -7149,38 +7218,38 @@ msgid ""
 msgstr ""
 "кластеризация по индексу \"%s\" невозможна, её не поддерживает метод доступа"
 
-#: commands/cluster.c:531
+#: commands/cluster.c:533
 #, c-format
 msgid "cannot cluster on partial index \"%s\""
 msgstr "кластеризовать по частичному индексу \"%s\" нельзя"
 
-#: commands/cluster.c:545
+#: commands/cluster.c:547
 #, c-format
 msgid "cannot cluster on invalid index \"%s\""
 msgstr "нельзя кластеризовать таблицу по неверному индексу \"%s\""
 
-#: commands/cluster.c:569
+#: commands/cluster.c:571
 #, c-format
 msgid "cannot mark index clustered in partitioned table"
 msgstr "пометить индекс как кластеризованный в секционированной таблице нельзя"
 
-#: commands/cluster.c:948
+#: commands/cluster.c:950
 #, c-format
 msgid "clustering \"%s.%s\" using index scan on \"%s\""
 msgstr "кластеризация \"%s.%s\" путём сканирования индекса \"%s\""
 
-#: commands/cluster.c:954
+#: commands/cluster.c:956
 #, c-format
 msgid "clustering \"%s.%s\" using sequential scan and sort"
 msgstr ""
 "кластеризация \"%s.%s\" путём последовательного сканирования и сортировки"
 
-#: commands/cluster.c:959
+#: commands/cluster.c:961
 #, c-format
 msgid "vacuuming \"%s.%s\""
 msgstr "очистка \"%s.%s\""
 
-#: commands/cluster.c:985
+#: commands/cluster.c:988
 #, c-format
 msgid ""
 "\"%s.%s\": found %.0f removable, %.0f nonremovable row versions in %u pages"
@@ -7188,7 +7257,7 @@ msgstr ""
 "\"%s.%s\": найдено удаляемых версий строк: %.0f, неудаляемых: %.0f, "
 "просмотрено страниц: %u"
 
-#: commands/cluster.c:990
+#: commands/cluster.c:993
 #, c-format
 msgid ""
 "%.0f dead row versions cannot be removed yet.\n"
@@ -7197,117 +7266,142 @@ msgstr ""
 "В данный момент нельзя удалить \"мёртвых\" строк %.0f.\n"
 "%s."
 
-#: commands/collationcmds.c:106
+#: commands/collationcmds.c:112
 #, c-format
 msgid "collation attribute \"%s\" not recognized"
 msgstr "атрибут COLLATION \"%s\" не распознан"
 
-#: commands/collationcmds.c:119 commands/collationcmds.c:125
-#: commands/define.c:389 commands/tablecmds.c:7768
-#: replication/pgoutput/pgoutput.c:311 replication/pgoutput/pgoutput.c:334
-#: replication/pgoutput/pgoutput.c:348 replication/pgoutput/pgoutput.c:358
-#: replication/pgoutput/pgoutput.c:368 replication/pgoutput/pgoutput.c:378
-#: replication/walsender.c:1001 replication/walsender.c:1023
-#: replication/walsender.c:1033
+#: commands/collationcmds.c:125 commands/collationcmds.c:131
+#: commands/define.c:389 commands/tablecmds.c:7876
+#: replication/pgoutput/pgoutput.c:310 replication/pgoutput/pgoutput.c:333
+#: replication/pgoutput/pgoutput.c:347 replication/pgoutput/pgoutput.c:357
+#: replication/pgoutput/pgoutput.c:367 replication/pgoutput/pgoutput.c:377
+#: replication/pgoutput/pgoutput.c:387 replication/walsender.c:996
+#: replication/walsender.c:1018 replication/walsender.c:1028
 #, c-format
 msgid "conflicting or redundant options"
 msgstr "конфликтующие или избыточные параметры"
 
-#: commands/collationcmds.c:120
+#: commands/collationcmds.c:126
 #, c-format
 msgid "LOCALE cannot be specified together with LC_COLLATE or LC_CTYPE."
 msgstr "LOCALE нельзя указать вместе с LC_COLLATE или LC_CTYPE."
 
-#: commands/collationcmds.c:126
+#: commands/collationcmds.c:132
 #, c-format
 msgid "FROM cannot be specified together with any other options."
 msgstr "FROM нельзя задать вместе с каким-либо другим параметром."
 
-#: commands/collationcmds.c:174
+#: commands/collationcmds.c:191
 #, c-format
 msgid "collation \"default\" cannot be copied"
 msgstr "правило сортировки \"default\" нельзя скопировать"
 
-#: commands/collationcmds.c:204
+#: commands/collationcmds.c:225
 #, c-format
 msgid "unrecognized collation provider: %s"
 msgstr "нераспознанный провайдер правил сортировки: %s"
 
-#: commands/collationcmds.c:232
+#: commands/collationcmds.c:253
 #, c-format
 msgid "parameter \"lc_collate\" must be specified"
 msgstr "необходимо указать параметр \"lc_collate\""
 
-#: commands/collationcmds.c:237
+#: commands/collationcmds.c:258
 #, c-format
 msgid "parameter \"lc_ctype\" must be specified"
 msgstr "необходимо указать параметр \"lc_ctype\""
 
-#: commands/collationcmds.c:244
+#: commands/collationcmds.c:265
 #, c-format
 msgid "parameter \"locale\" must be specified"
 msgstr "необходимо указать параметр \"locale\""
 
-#: commands/collationcmds.c:256
+#: commands/collationcmds.c:279 commands/dbcommands.c:1091
+#, c-format
+msgid "using standard form \"%s\" for ICU locale \"%s\""
+msgstr "используется стандартная форма \"%s\" локали ICU \"%s\""
+
+#: commands/collationcmds.c:298
 #, c-format
 msgid "nondeterministic collations not supported with this provider"
 msgstr ""
 "недетерминированные правила сортировки не поддерживаются данным провайдером"
 
-#: commands/collationcmds.c:275
+#: commands/collationcmds.c:303 commands/dbcommands.c:1110
+#, c-format
+msgid "ICU rules cannot be specified unless locale provider is ICU"
+msgstr "правила ICU можно указать, только если выбран провайдер локали ICU"
+
+#: commands/collationcmds.c:322
 #, c-format
 msgid "current database's encoding is not supported with this provider"
 msgstr "кодировка текущей БД не поддерживается данным провайдером"
 
-#: commands/collationcmds.c:334
+#: commands/collationcmds.c:382
 #, c-format
 msgid "collation \"%s\" for encoding \"%s\" already exists in schema \"%s\""
 msgstr ""
 "правило сортировки \"%s\" для кодировки \"%s\" уже существует в схеме \"%s\""
 
-#: commands/collationcmds.c:345
+#: commands/collationcmds.c:393
 #, c-format
 msgid "collation \"%s\" already exists in schema \"%s\""
 msgstr "правило сортировки \"%s\" уже существует в схеме \"%s\""
 
-#: commands/collationcmds.c:395 commands/dbcommands.c:2398
+#: commands/collationcmds.c:418
+#, c-format
+msgid "cannot refresh version of default collation"
+msgstr "нельзя обновить версию правила сортировки по умолчанию"
+
+#: commands/collationcmds.c:419
+#, c-format
+msgid "Use ALTER DATABASE ... REFRESH COLLATION VERSION instead."
+msgstr "Вместо этого выполните ALTER DATABASE ... REFRESH COLLATION VERSION."
+
+#: commands/collationcmds.c:446 commands/dbcommands.c:2488
 #, c-format
 msgid "changing version from %s to %s"
 msgstr "изменение версии с %s на %s"
 
-#: commands/collationcmds.c:410 commands/dbcommands.c:2411
+#: commands/collationcmds.c:461 commands/dbcommands.c:2501
 #, c-format
 msgid "version has not changed"
 msgstr "версия не была изменена"
 
-#: commands/collationcmds.c:532
+#: commands/collationcmds.c:494 commands/dbcommands.c:2667
 #, c-format
-msgid "could not convert locale name \"%s\" to language tag: %s"
-msgstr "не удалось получить из названия локали \"%s\" метку языка: %s"
+msgid "database with OID %u does not exist"
+msgstr "база данных с OID %u не существует"
+
+#: commands/collationcmds.c:515
+#, c-format
+msgid "collation with OID %u does not exist"
+msgstr "правило сортировки с OID %u не существует"
 
-#: commands/collationcmds.c:590
+#: commands/collationcmds.c:803
 #, c-format
 msgid "must be superuser to import system collations"
 msgstr ""
 "импортировать системные правила сортировки может только суперпользователь"
 
-#: commands/collationcmds.c:618 commands/copyfrom.c:1499 commands/copyto.c:679
-#: libpq/be-secure-common.c:81
+#: commands/collationcmds.c:831 commands/copyfrom.c:1654 commands/copyto.c:656
+#: libpq/be-secure-common.c:59
 #, c-format
 msgid "could not execute command \"%s\": %m"
 msgstr "не удалось выполнить команду \"%s\": %m"
 
-#: commands/collationcmds.c:753
+#: commands/collationcmds.c:923 commands/collationcmds.c:1008
 #, c-format
 msgid "no usable system locales were found"
 msgstr "пригодные системные локали не найдены"
 
-#: commands/comment.c:61 commands/dbcommands.c:1538 commands/dbcommands.c:1735
-#: commands/dbcommands.c:1848 commands/dbcommands.c:2042
-#: commands/dbcommands.c:2284 commands/dbcommands.c:2371
-#: commands/dbcommands.c:2481 commands/dbcommands.c:2980
-#: utils/init/postinit.c:943 utils/init/postinit.c:1048
-#: utils/init/postinit.c:1065
+#: commands/comment.c:61 commands/dbcommands.c:1612 commands/dbcommands.c:1824
+#: commands/dbcommands.c:1934 commands/dbcommands.c:2132
+#: commands/dbcommands.c:2370 commands/dbcommands.c:2461
+#: commands/dbcommands.c:2571 commands/dbcommands.c:3071
+#: utils/init/postinit.c:1021 utils/init/postinit.c:1127
+#: utils/init/postinit.c:1153
 #, c-format
 msgid "database \"%s\" does not exist"
 msgstr "база данных \"%s\" не существует"
@@ -7317,12 +7411,12 @@ msgstr "база данных \"%s\" не существует"
 msgid "cannot set comment on relation \"%s\""
 msgstr "задать комментарий для отношения \"%s\" нельзя"
 
-#: commands/constraint.c:63 utils/adt/ri_triggers.c:2014
+#: commands/constraint.c:63 utils/adt/ri_triggers.c:2028
 #, c-format
 msgid "function \"%s\" was not called by trigger manager"
 msgstr "функция \"%s\" была вызвана не менеджером триггеров"
 
-#: commands/constraint.c:70 utils/adt/ri_triggers.c:2023
+#: commands/constraint.c:70 utils/adt/ri_triggers.c:2037
 #, c-format
 msgid "function \"%s\" must be fired AFTER ROW"
 msgstr "функция \"%s\" должна запускаться в триггере AFTER для строк"
@@ -7332,27 +7426,27 @@ msgstr "функция \"%s\" должна запускаться в тригг
 msgid "function \"%s\" must be fired for INSERT or UPDATE"
 msgstr "функция \"%s\" должна запускаться для INSERT или UPDATE"
 
-#: commands/conversioncmds.c:67
+#: commands/conversioncmds.c:69
 #, c-format
 msgid "source encoding \"%s\" does not exist"
 msgstr "исходная кодировка \"%s\" не существует"
 
-#: commands/conversioncmds.c:74
+#: commands/conversioncmds.c:76
 #, c-format
 msgid "destination encoding \"%s\" does not exist"
 msgstr "целевая кодировка \"%s\" не существует"
 
-#: commands/conversioncmds.c:87
+#: commands/conversioncmds.c:89
 #, c-format
 msgid "encoding conversion to or from \"SQL_ASCII\" is not supported"
 msgstr "преобразование кодировки из/в \"SQL_ASCII\" не поддерживается"
 
-#: commands/conversioncmds.c:100
+#: commands/conversioncmds.c:102
 #, c-format
 msgid "encoding conversion function %s must return type %s"
 msgstr "функция преобразования кодировки %s должна возвращать тип %s"
 
-#: commands/conversioncmds.c:130
+#: commands/conversioncmds.c:132
 #, c-format
 msgid ""
 "encoding conversion function %s returned incorrect result for empty input"
@@ -7362,14 +7456,19 @@ msgstr ""
 
 #: commands/copy.c:86
 #, c-format
+msgid "permission denied to COPY to or from an external program"
+msgstr "нет прав для выполнения COPY с внешней программой"
+
+#: commands/copy.c:87
+#, c-format
 msgid ""
-"must be superuser or have privileges of the pg_execute_server_program role "
-"to COPY to or from an external program"
+"Only roles with privileges of the \"%s\" role may COPY to or from an "
+"external program."
 msgstr ""
-"длÑ\8f Ð¸Ñ\81полÑ\8cзованиÑ\8f COPY Ñ\81 Ð²Ð½ÐµÑ\88ними Ð¿Ñ\80огÑ\80аммами Ð½Ñ\83жно Ð±Ñ\8bÑ\82Ñ\8c Ñ\81Ñ\83пеÑ\80полÑ\8cзоваÑ\82елем "
-"или иметь права роли pg_execute_server_program"
+"Ð\98Ñ\81полÑ\8cзоваÑ\82Ñ\8c COPY Ñ\81 Ð²Ð½ÐµÑ\88ними Ð¿Ñ\80огÑ\80аммами Ð¼Ð¾Ð³Ñ\83Ñ\82 Ñ\82олÑ\8cко Ñ\80оли Ñ\81 Ð¿Ñ\80авами Ñ\80оли "
+"\"%s\"."
 
-#: commands/copy.c:87 commands/copy.c:96 commands/copy.c:103
+#: commands/copy.c:89 commands/copy.c:100 commands/copy.c:109
 #, c-format
 msgid ""
 "Anyone can COPY to stdout or from stdin. psql's \\copy command also works "
@@ -7378,261 +7477,304 @@ msgstr ""
 "Не имея административных прав, можно использовать COPY с stdout и stdin (а "
 "также команду psql \\copy)."
 
-#: commands/copy.c:95
+#: commands/copy.c:97
 #, c-format
-msgid ""
-"must be superuser or have privileges of the pg_read_server_files role to "
-"COPY from a file"
+msgid "permission denied to COPY from a file"
+msgstr "нет прав для выполнения COPY с чтением файла"
+
+#: commands/copy.c:98
+#, c-format
+msgid "Only roles with privileges of the \"%s\" role may COPY from a file."
 msgstr ""
-"для выполнения COPY с чтением файла нужно быть суперпользователем или иметь "
-"права роли pg_read_server_files"
+"Выполнять COPY с чтением файла могут только роли с правами роли \"%s\"."
 
-#: commands/copy.c:102
+#: commands/copy.c:106
 #, c-format
-msgid ""
-"must be superuser or have privileges of the pg_write_server_files role to "
-"COPY to a file"
+msgid "permission denied to COPY to a file"
+msgstr "нет прав для выполнения COPY с записью в файл"
+
+#: commands/copy.c:107
+#, c-format
+msgid "Only roles with privileges of the \"%s\" role may COPY to a file."
 msgstr ""
-"для выполнения COPY с записью в файл нужно быть суперпользователем или иметь "
-"права роли pg_write_server_files"
+"Выполнять COPY с записью в файл могут только роли с правами роли \"%s\"."
 
-#: commands/copy.c:188
+#: commands/copy.c:195
 #, c-format
 msgid "COPY FROM not supported with row-level security"
 msgstr "COPY FROM не поддерживается с защитой на уровне строк."
 
-#: commands/copy.c:189
+#: commands/copy.c:196
 #, c-format
 msgid "Use INSERT statements instead."
 msgstr "Используйте операторы INSERT."
 
-#: commands/copy.c:280
+#: commands/copy.c:290
 #, c-format
 msgid "MERGE not supported in COPY"
 msgstr "MERGE не поддерживается в COPY"
 
-#: commands/copy.c:373
+#: commands/copy.c:383
 #, c-format
 msgid "cannot use \"%s\" with HEADER in COPY TO"
 msgstr "использовать \"%s\" с параметром HEADER в COPY TO нельзя"
 
-#: commands/copy.c:382
+#: commands/copy.c:392
 #, c-format
 msgid "%s requires a Boolean value or \"match\""
 msgstr "%s требует логическое значение или \"match\""
 
-#: commands/copy.c:441
+#: commands/copy.c:451
 #, c-format
 msgid "COPY format \"%s\" not recognized"
 msgstr "формат \"%s\" для COPY не распознан"
 
-#: commands/copy.c:493 commands/copy.c:506 commands/copy.c:519
-#: commands/copy.c:538
+#: commands/copy.c:509 commands/copy.c:522 commands/copy.c:535
+#: commands/copy.c:554
 #, c-format
 msgid "argument to option \"%s\" must be a list of column names"
 msgstr "аргументом параметра \"%s\" должен быть список имён столбцов"
 
-#: commands/copy.c:550
+#: commands/copy.c:566
 #, c-format
 msgid "argument to option \"%s\" must be a valid encoding name"
 msgstr "аргументом параметра \"%s\" должно быть название допустимой кодировки"
 
-#: commands/copy.c:557 commands/dbcommands.c:849 commands/dbcommands.c:2232
+#: commands/copy.c:573 commands/dbcommands.c:859 commands/dbcommands.c:2318
 #, c-format
 msgid "option \"%s\" not recognized"
 msgstr "параметр \"%s\" не распознан"
 
-#: commands/copy.c:569
+#: commands/copy.c:585
 #, c-format
 msgid "cannot specify DELIMITER in BINARY mode"
 msgstr "в режиме BINARY нельзя указывать DELIMITER"
 
-#: commands/copy.c:574
+#: commands/copy.c:590
 #, c-format
 msgid "cannot specify NULL in BINARY mode"
 msgstr "в режиме BINARY нельзя указывать NULL"
 
-#: commands/copy.c:596
+#: commands/copy.c:595
+#, c-format
+msgid "cannot specify DEFAULT in BINARY mode"
+msgstr "в режиме BINARY нельзя указывать DEFAULT"
+
+#: commands/copy.c:617
 #, c-format
 msgid "COPY delimiter must be a single one-byte character"
 msgstr "разделитель для COPY должен быть однобайтным символом"
 
-#: commands/copy.c:603
+#: commands/copy.c:624
 #, c-format
 msgid "COPY delimiter cannot be newline or carriage return"
 msgstr ""
 "разделителем для COPY не может быть символ новой строки или возврата каретки"
 
-#: commands/copy.c:609
+#: commands/copy.c:630
 #, c-format
 msgid "COPY null representation cannot use newline or carriage return"
 msgstr ""
 "представление NULL для COPY не может включать символ новой строки или "
 "возврата каретки"
 
-#: commands/copy.c:626
+#: commands/copy.c:640
+#, c-format
+msgid "COPY default representation cannot use newline or carriage return"
+msgstr ""
+"представление DEFAULT для COPY не может включать символ новой строки или "
+"возврата каретки"
+
+#: commands/copy.c:658
 #, c-format
 msgid "COPY delimiter cannot be \"%s\""
 msgstr "\"%s\" не может быть разделителем для COPY"
 
-#: commands/copy.c:632
+#: commands/copy.c:664
 #, c-format
 msgid "cannot specify HEADER in BINARY mode"
 msgstr "в режиме BINARY нельзя использовать HEADER"
 
-#: commands/copy.c:638
+#: commands/copy.c:670
 #, c-format
 msgid "COPY quote available only in CSV mode"
 msgstr "определить кавычки для COPY можно только в режиме CSV"
 
-#: commands/copy.c:643
+#: commands/copy.c:675
 #, c-format
 msgid "COPY quote must be a single one-byte character"
 msgstr "символ кавычек для COPY должен быть однобайтным"
 
-#: commands/copy.c:648
+#: commands/copy.c:680
 #, c-format
 msgid "COPY delimiter and quote must be different"
 msgstr "символ кавычек для COPY должен отличаться от разделителя"
 
-#: commands/copy.c:654
+#: commands/copy.c:686
 #, c-format
 msgid "COPY escape available only in CSV mode"
 msgstr "определить спецсимвол для COPY можно только в режиме CSV"
 
-#: commands/copy.c:659
+#: commands/copy.c:691
 #, c-format
 msgid "COPY escape must be a single one-byte character"
 msgstr "спецсимвол для COPY должен быть однобайтным"
 
-#: commands/copy.c:665
+#: commands/copy.c:697
 #, c-format
 msgid "COPY force quote available only in CSV mode"
 msgstr "параметр force quote для COPY можно использовать только в режиме CSV"
 
-#: commands/copy.c:669
+#: commands/copy.c:701
 #, c-format
 msgid "COPY force quote only available using COPY TO"
 msgstr "параметр force quote для COPY можно использовать только с COPY TO"
 
-#: commands/copy.c:675
+#: commands/copy.c:707
 #, c-format
 msgid "COPY force not null available only in CSV mode"
 msgstr ""
 "параметр force not null для COPY можно использовать только в режиме CSV"
 
-#: commands/copy.c:679
+#: commands/copy.c:711
 #, c-format
 msgid "COPY force not null only available using COPY FROM"
 msgstr "параметр force not null для COPY можно использовать только с COPY FROM"
 
-#: commands/copy.c:685
+#: commands/copy.c:717
 #, c-format
 msgid "COPY force null available only in CSV mode"
 msgstr "параметр force null для COPY можно использовать только в режиме CSV"
 
-#: commands/copy.c:690
+#: commands/copy.c:722
 #, c-format
 msgid "COPY force null only available using COPY FROM"
 msgstr "параметр force null для COPY можно использовать только с COPY FROM"
 
-#: commands/copy.c:696
+#: commands/copy.c:728
 #, c-format
 msgid "COPY delimiter must not appear in the NULL specification"
 msgstr "разделитель для COPY не должен присутствовать в представлении NULL"
 
-#: commands/copy.c:703
+#: commands/copy.c:735
 #, c-format
 msgid "CSV quote character must not appear in the NULL specification"
 msgstr "символ кавычек в CSV не должен присутствовать в представлении NULL"
 
-#: commands/copy.c:764
+#: commands/copy.c:742
+#, c-format
+msgid "COPY DEFAULT only available using COPY FROM"
+msgstr "параметр DEFAULT для COPY можно использовать только с COPY FROM"
+
+#: commands/copy.c:748
+#, c-format
+msgid "COPY delimiter must not appear in the DEFAULT specification"
+msgstr "разделитель для COPY не должен присутствовать в представлении DEFAULT"
+
+#: commands/copy.c:755
+#, c-format
+msgid "CSV quote character must not appear in the DEFAULT specification"
+msgstr "символ кавычек в CSV не должен присутствовать в представлении DEFAULT"
+
+#: commands/copy.c:763
+#, c-format
+msgid "NULL specification and DEFAULT specification cannot be the same"
+msgstr "представления NULL и DEFAULT не могут быть одинаковыми"
+
+#: commands/copy.c:825
 #, c-format
 msgid "column \"%s\" is a generated column"
 msgstr "столбец \"%s\" — генерируемый"
 
-#: commands/copy.c:766
+#: commands/copy.c:827
 #, c-format
 msgid "Generated columns cannot be used in COPY."
 msgstr "Генерируемые столбцы нельзя использовать в COPY."
 
-#: commands/copy.c:781 commands/indexcmds.c:1833 commands/statscmds.c:243
-#: commands/tablecmds.c:2379 commands/tablecmds.c:3035
-#: commands/tablecmds.c:3529 parser/parse_relation.c:3655
-#: parser/parse_relation.c:3675 utils/adt/tsvector_op.c:2688
+#: commands/copy.c:842 commands/indexcmds.c:1910 commands/statscmds.c:242
+#: commands/tablecmds.c:2405 commands/tablecmds.c:3127
+#: commands/tablecmds.c:3626 parser/parse_relation.c:3689
+#: parser/parse_relation.c:3699 parser/parse_relation.c:3717
+#: parser/parse_relation.c:3724 parser/parse_relation.c:3738
+#: utils/adt/tsvector_op.c:2855
 #, c-format
 msgid "column \"%s\" does not exist"
 msgstr "столбец \"%s\" не существует"
 
-#: commands/copy.c:788 commands/tablecmds.c:2405 commands/trigger.c:967
-#: parser/parse_target.c:1079 parser/parse_target.c:1090
+#: commands/copy.c:849 commands/tablecmds.c:2431 commands/trigger.c:958
+#: parser/parse_target.c:1070 parser/parse_target.c:1081
 #, c-format
 msgid "column \"%s\" specified more than once"
 msgstr "столбец \"%s\" указан неоднократно"
 
-#: commands/copyfrom.c:123
+#: commands/copyfrom.c:122
+#, c-format
+msgid "COPY %s"
+msgstr "COPY %s"
+
+#: commands/copyfrom.c:130
 #, c-format
 msgid "COPY %s, line %llu, column %s"
 msgstr "COPY %s, строка %llu, столбец %s"
 
-#: commands/copyfrom.c:128 commands/copyfrom.c:174
+#: commands/copyfrom.c:135 commands/copyfrom.c:181
 #, c-format
 msgid "COPY %s, line %llu"
 msgstr "COPY %s, строка %llu"
 
-#: commands/copyfrom.c:140
+#: commands/copyfrom.c:147
 #, c-format
 msgid "COPY %s, line %llu, column %s: \"%s\""
 msgstr "COPY %s, строка %llu, столбец %s: \"%s\""
 
-#: commands/copyfrom.c:150
+#: commands/copyfrom.c:157
 #, c-format
 msgid "COPY %s, line %llu, column %s: null input"
 msgstr "COPY %s, строка %llu, столбец %s: значение NULL"
 
-#: commands/copyfrom.c:167
+#: commands/copyfrom.c:174
 #, c-format
 msgid "COPY %s, line %llu: \"%s\""
 msgstr "COPY %s, строка %llu: \"%s\""
 
-#: commands/copyfrom.c:569
+#: commands/copyfrom.c:673
 #, c-format
 msgid "cannot copy to view \"%s\""
 msgstr "копировать в представление \"%s\" нельзя"
 
-#: commands/copyfrom.c:571
+#: commands/copyfrom.c:675
 #, c-format
 msgid "To enable copying to a view, provide an INSTEAD OF INSERT trigger."
 msgstr ""
 "Чтобы представление допускало копирование данных в него, установите триггер "
 "INSTEAD OF INSERT."
 
-#: commands/copyfrom.c:575
+#: commands/copyfrom.c:679
 #, c-format
 msgid "cannot copy to materialized view \"%s\""
 msgstr "копировать в материализованное представление \"%s\" нельзя"
 
-#: commands/copyfrom.c:580
+#: commands/copyfrom.c:684
 #, c-format
 msgid "cannot copy to sequence \"%s\""
 msgstr "копировать в последовательность \"%s\" нельзя"
 
-#: commands/copyfrom.c:585
+#: commands/copyfrom.c:689
 #, c-format
 msgid "cannot copy to non-table relation \"%s\""
 msgstr "копировать в отношение \"%s\", не являющееся таблицей, нельзя"
 
-#: commands/copyfrom.c:625
+#: commands/copyfrom.c:729
 #, c-format
 msgid "cannot perform COPY FREEZE on a partitioned table"
 msgstr "выполнить COPY FREEZE в секционированной таблице нельзя"
 
-#: commands/copyfrom.c:640
+#: commands/copyfrom.c:744
 #, c-format
 msgid "cannot perform COPY FREEZE because of prior transaction activity"
 msgstr "выполнить COPY FREEZE нельзя из-за предыдущей активности в транзакции"
 
-#: commands/copyfrom.c:646
+#: commands/copyfrom.c:750
 #, c-format
 msgid ""
 "cannot perform COPY FREEZE because the table was not created or truncated in "
@@ -7641,17 +7783,17 @@ msgstr ""
 "выполнить COPY FREEZE нельзя, так как таблица не была создана или усечена в "
 "текущей подтранзакции"
 
-#: commands/copyfrom.c:1267 commands/copyto.c:611
+#: commands/copyfrom.c:1411
 #, c-format
 msgid "FORCE_NOT_NULL column \"%s\" not referenced by COPY"
 msgstr "столбец FORCE_NOT_NULL \"%s\" не фигурирует в COPY"
 
-#: commands/copyfrom.c:1290 commands/copyto.c:634
+#: commands/copyfrom.c:1434
 #, c-format
 msgid "FORCE_NULL column \"%s\" not referenced by COPY"
 msgstr "столбец FORCE_NULL \"%s\" не фигурирует в COPY"
 
-#: commands/copyfrom.c:1518
+#: commands/copyfrom.c:1673
 #, c-format
 msgid ""
 "COPY FROM instructs the PostgreSQL server process to read a file. You may "
@@ -7661,17 +7803,17 @@ msgstr ""
 "файла. Возможно, на самом деле вам нужно клиентское средство, например, "
 "\\copy в psql."
 
-#: commands/copyfrom.c:1531 commands/copyto.c:731
+#: commands/copyfrom.c:1686 commands/copyto.c:708
 #, c-format
 msgid "\"%s\" is a directory"
 msgstr "\"%s\" - это каталог"
 
-#: commands/copyfrom.c:1599 commands/copyto.c:301 libpq/be-secure-common.c:105
+#: commands/copyfrom.c:1754 commands/copyto.c:306 libpq/be-secure-common.c:83
 #, c-format
 msgid "could not close pipe to external command: %m"
 msgstr "не удалось закрыть канал сообщений с внешней командой: %m"
 
-#: commands/copyfrom.c:1614 commands/copyto.c:306
+#: commands/copyfrom.c:1769 commands/copyto.c:311
 #, c-format
 msgid "program \"%s\" failed"
 msgstr "сбой программы \"%s\""
@@ -7712,7 +7854,7 @@ msgid "could not read from COPY file: %m"
 msgstr "не удалось прочитать файл COPY: %m"
 
 #: commands/copyfromparse.c:278 commands/copyfromparse.c:303
-#: tcop/postgres.c:358
+#: tcop/postgres.c:377
 #, c-format
 msgid "unexpected EOF on client connection with an open transaction"
 msgstr "неожиданный обрыв соединения с клиентом при открытой транзакции"
@@ -7749,194 +7891,204 @@ msgstr ""
 "несоответствие имени столбца в поле %d строки заголовка: получено \"%s\", "
 "ожидалось \"%s\""
 
-#: commands/copyfromparse.c:890 commands/copyfromparse.c:1495
-#: commands/copyfromparse.c:1725
+#: commands/copyfromparse.c:892 commands/copyfromparse.c:1512
+#: commands/copyfromparse.c:1768
 #, c-format
 msgid "extra data after last expected column"
 msgstr "лишние данные после содержимого последнего столбца"
 
-#: commands/copyfromparse.c:904
+#: commands/copyfromparse.c:906
 #, c-format
 msgid "missing data for column \"%s\""
 msgstr "нет данных для столбца \"%s\""
 
-#: commands/copyfromparse.c:982
+#: commands/copyfromparse.c:999
 #, c-format
 msgid "received copy data after EOF marker"
 msgstr "после маркера конца файла продолжаются данные COPY"
 
-#: commands/copyfromparse.c:989
+#: commands/copyfromparse.c:1006
 #, c-format
 msgid "row field count is %d, expected %d"
 msgstr "количество полей в строке: %d, ожидалось: %d"
 
-#: commands/copyfromparse.c:1277 commands/copyfromparse.c:1294
+#: commands/copyfromparse.c:1294 commands/copyfromparse.c:1311
 #, c-format
 msgid "literal carriage return found in data"
 msgstr "в данных обнаружен явный возврат каретки"
 
-#: commands/copyfromparse.c:1278 commands/copyfromparse.c:1295
+#: commands/copyfromparse.c:1295 commands/copyfromparse.c:1312
 #, c-format
 msgid "unquoted carriage return found in data"
 msgstr "в данных обнаружен возврат каретки не в кавычках"
 
-#: commands/copyfromparse.c:1280 commands/copyfromparse.c:1297
+#: commands/copyfromparse.c:1297 commands/copyfromparse.c:1314
 #, c-format
 msgid "Use \"\\r\" to represent carriage return."
 msgstr "Представьте возврат каретки как \"\\r\"."
 
-#: commands/copyfromparse.c:1281 commands/copyfromparse.c:1298
+#: commands/copyfromparse.c:1298 commands/copyfromparse.c:1315
 #, c-format
 msgid "Use quoted CSV field to represent carriage return."
 msgstr "Заключите возврат каретки в кавычки CSV."
 
-#: commands/copyfromparse.c:1310
+#: commands/copyfromparse.c:1327
 #, c-format
 msgid "literal newline found in data"
 msgstr "в данных обнаружен явный символ новой строки"
 
-#: commands/copyfromparse.c:1311
+#: commands/copyfromparse.c:1328
 #, c-format
 msgid "unquoted newline found in data"
 msgstr "в данных обнаружен явный символ новой строки не в кавычках"
 
-#: commands/copyfromparse.c:1313
+#: commands/copyfromparse.c:1330
 #, c-format
 msgid "Use \"\\n\" to represent newline."
 msgstr "Представьте символ новой строки как \"\\n\"."
 
-#: commands/copyfromparse.c:1314
+#: commands/copyfromparse.c:1331
 #, c-format
 msgid "Use quoted CSV field to represent newline."
 msgstr "Заключите символ новой строки в кавычки CSV."
 
-#: commands/copyfromparse.c:1360 commands/copyfromparse.c:1396
+#: commands/copyfromparse.c:1377 commands/copyfromparse.c:1413
 #, c-format
 msgid "end-of-copy marker does not match previous newline style"
 msgstr "маркер \"конец копии\" не соответствует предыдущему стилю новой строки"
 
-#: commands/copyfromparse.c:1369 commands/copyfromparse.c:1385
+#: commands/copyfromparse.c:1386 commands/copyfromparse.c:1402
 #, c-format
 msgid "end-of-copy marker corrupt"
 msgstr "маркер \"конец копии\" испорчен"
 
-#: commands/copyfromparse.c:1809
+#: commands/copyfromparse.c:1704 commands/copyfromparse.c:1919
+#, c-format
+msgid "unexpected default marker in COPY data"
+msgstr "неожиданный маркер DEFAULT в данных COPY"
+
+#: commands/copyfromparse.c:1705 commands/copyfromparse.c:1920
+#, c-format
+msgid "Column \"%s\" has no default value."
+msgstr "Для столбца \"%s\" не определено значение по умолчанию."
+
+#: commands/copyfromparse.c:1852
 #, c-format
 msgid "unterminated CSV quoted field"
 msgstr "незавершённое поле в кавычках CSV"
 
-#: commands/copyfromparse.c:1885 commands/copyfromparse.c:1904
+#: commands/copyfromparse.c:1954 commands/copyfromparse.c:1973
 #, c-format
 msgid "unexpected EOF in COPY data"
 msgstr "неожиданный конец данных COPY"
 
-#: commands/copyfromparse.c:1894
+#: commands/copyfromparse.c:1963
 #, c-format
 msgid "invalid field size"
 msgstr "неверный размер поля"
 
-#: commands/copyfromparse.c:1917
+#: commands/copyfromparse.c:1986
 #, c-format
 msgid "incorrect binary data format"
 msgstr "неверный двоичный формат данных"
 
-#: commands/copyto.c:234
+#: commands/copyto.c:236
 #, c-format
 msgid "could not write to COPY program: %m"
 msgstr "не удалось записать в канал программы COPY: %m"
 
-#: commands/copyto.c:239
+#: commands/copyto.c:241
 #, c-format
 msgid "could not write to COPY file: %m"
 msgstr "не удалось записать в файл COPY: %m"
 
-#: commands/copyto.c:369
+#: commands/copyto.c:386
 #, c-format
 msgid "cannot copy from view \"%s\""
 msgstr "копировать из представления \"%s\" нельзя"
 
-#: commands/copyto.c:371 commands/copyto.c:377 commands/copyto.c:383
-#: commands/copyto.c:394
+#: commands/copyto.c:388 commands/copyto.c:394 commands/copyto.c:400
+#: commands/copyto.c:411
 #, c-format
 msgid "Try the COPY (SELECT ...) TO variant."
 msgstr "Попробуйте вариацию COPY (SELECT ...) TO."
 
-#: commands/copyto.c:375
+#: commands/copyto.c:392
 #, c-format
 msgid "cannot copy from materialized view \"%s\""
 msgstr "копировать из материализованного представления \"%s\" нельзя"
 
-#: commands/copyto.c:381
+#: commands/copyto.c:398
 #, c-format
 msgid "cannot copy from foreign table \"%s\""
 msgstr "копировать из сторонней таблицы \"%s\" нельзя"
 
-#: commands/copyto.c:387
+#: commands/copyto.c:404
 #, c-format
 msgid "cannot copy from sequence \"%s\""
 msgstr "копировать из последовательности \"%s\" нельзя"
 
-#: commands/copyto.c:392
+#: commands/copyto.c:409
 #, c-format
 msgid "cannot copy from partitioned table \"%s\""
 msgstr "копировать из секционированной таблицы \"%s\" нельзя"
 
-#: commands/copyto.c:398
+#: commands/copyto.c:415
 #, c-format
 msgid "cannot copy from non-table relation \"%s\""
 msgstr "копировать из отношения \"%s\", не являющегося таблицей, нельзя"
 
-#: commands/copyto.c:450
+#: commands/copyto.c:467
 #, c-format
 msgid "DO INSTEAD NOTHING rules are not supported for COPY"
 msgstr "правила DO INSTEAD NOTHING не поддерживаются с COPY"
 
-#: commands/copyto.c:464
+#: commands/copyto.c:481
 #, c-format
 msgid "conditional DO INSTEAD rules are not supported for COPY"
 msgstr "условные правила DO INSTEAD не поддерживаются с COPY"
 
-#: commands/copyto.c:468
+#: commands/copyto.c:485
 #, c-format
 msgid "DO ALSO rules are not supported for the COPY"
 msgstr "правила DO ALSO не поддерживаются с COPY"
 
-#: commands/copyto.c:473
+#: commands/copyto.c:490
 #, c-format
 msgid "multi-statement DO INSTEAD rules are not supported for COPY"
 msgstr "составные правила DO INSTEAD не поддерживаются с COPY"
 
-#: commands/copyto.c:483
+#: commands/copyto.c:500
 #, c-format
 msgid "COPY (SELECT INTO) is not supported"
 msgstr "COPY (SELECT INTO) не поддерживается"
 
-#: commands/copyto.c:500
+#: commands/copyto.c:517
 #, c-format
 msgid "COPY query must have a RETURNING clause"
 msgstr "в запросе COPY должно быть предложение RETURNING"
 
-#: commands/copyto.c:529
+#: commands/copyto.c:546
 #, c-format
 msgid "relation referenced by COPY statement has changed"
 msgstr "отношение, задействованное в операторе COPY, изменилось"
 
-#: commands/copyto.c:588
+#: commands/copyto.c:605
 #, c-format
 msgid "FORCE_QUOTE column \"%s\" not referenced by COPY"
 msgstr "столбец FORCE_QUOTE \"%s\" не фигурирует в COPY"
 
-#: commands/copyto.c:696
+#: commands/copyto.c:673
 #, c-format
 msgid "relative path not allowed for COPY to file"
 msgstr "при выполнении COPY в файл нельзя указывать относительный путь"
 
-#: commands/copyto.c:715
+#: commands/copyto.c:692
 #, c-format
 msgid "could not open file \"%s\" for writing: %m"
 msgstr "не удалось открыть файл \"%s\" для записи: %m"
 
-#: commands/copyto.c:718
+#: commands/copyto.c:695
 #, c-format
 msgid ""
 "COPY TO instructs the PostgreSQL server process to write a file. You may "
@@ -7956,93 +8108,114 @@ msgstr "указано слишком много имён столбцов"
 msgid "policies not yet implemented for this command"
 msgstr "политики для этой команды ещё не реализованы"
 
-#: commands/dbcommands.c:812
+#: commands/dbcommands.c:822
 #, c-format
 msgid "LOCATION is not supported anymore"
 msgstr "LOCATION больше не поддерживается"
 
-#: commands/dbcommands.c:813
+#: commands/dbcommands.c:823
 #, c-format
 msgid "Consider using tablespaces instead."
 msgstr "Рассмотрите возможность использования табличных пространств."
 
-#: commands/dbcommands.c:838
+#: commands/dbcommands.c:848
 #, c-format
 msgid "OIDs less than %u are reserved for system objects"
 msgstr "значения OID меньше %u зарезервированы для системных объектов"
 
-#: commands/dbcommands.c:869 utils/adt/ascii.c:145
+#: commands/dbcommands.c:879 utils/adt/ascii.c:146
 #, c-format
 msgid "%d is not a valid encoding code"
 msgstr "%d не является верным кодом кодировки"
 
-#: commands/dbcommands.c:880 utils/adt/ascii.c:127
+#: commands/dbcommands.c:890 utils/adt/ascii.c:128
 #, c-format
 msgid "%s is not a valid encoding name"
 msgstr "%s не является верным названием кодировки"
 
-#: commands/dbcommands.c:907
+#: commands/dbcommands.c:919
 #, c-format
 msgid "unrecognized locale provider: %s"
 msgstr "нераспознанный провайдер локали: %s"
 
-#: commands/dbcommands.c:920 commands/dbcommands.c:2265 commands/user.c:237
-#: commands/user.c:611
+#: commands/dbcommands.c:932 commands/dbcommands.c:2351 commands/user.c:300
+#: commands/user.c:740
 #, c-format
 msgid "invalid connection limit: %d"
 msgstr "неверный предел подключений: %d"
 
-#: commands/dbcommands.c:941
+#: commands/dbcommands.c:953
 #, c-format
 msgid "permission denied to create database"
 msgstr "нет прав на создание базы данных"
 
-#: commands/dbcommands.c:965
+#: commands/dbcommands.c:977
 #, c-format
 msgid "template database \"%s\" does not exist"
 msgstr "шаблон базы данных \"%s\" не существует"
 
-#: commands/dbcommands.c:977
+#: commands/dbcommands.c:987
+#, c-format
+msgid "cannot use invalid database \"%s\" as template"
+msgstr "использовать некорректную базу \"%s\" в качестве шаблона нельзя"
+
+#: commands/dbcommands.c:988 commands/dbcommands.c:2380
+#: utils/init/postinit.c:1136
+#, c-format
+msgid "Use DROP DATABASE to drop invalid databases."
+msgstr "Выполните DROP DATABASE для удаления некорректных баз данных."
+
+#: commands/dbcommands.c:999
 #, c-format
 msgid "permission denied to copy database \"%s\""
 msgstr "нет прав на копирование базы данных \"%s\""
 
-#: commands/dbcommands.c:994
+#: commands/dbcommands.c:1016
 #, c-format
 msgid "invalid create database strategy \"%s\""
 msgstr "неверная стратегия создания БД \"%s\""
 
-#: commands/dbcommands.c:995
+#: commands/dbcommands.c:1017
 #, c-format
 msgid "Valid strategies are \"wal_log\", and \"file_copy\"."
 msgstr "Возможные стратегии: \"wal_log\" и \"file_copy\"."
 
-#: commands/dbcommands.c:1014
+#: commands/dbcommands.c:1043
 #, c-format
 msgid "invalid server encoding %d"
 msgstr "неверная кодировка для сервера: %d"
 
-#: commands/dbcommands.c:1020 commands/dbcommands.c:1025
+#: commands/dbcommands.c:1049
 #, c-format
-msgid "invalid locale name: \"%s\""
-msgstr "неверное имя локали: \"%s\""
+msgid "invalid LC_COLLATE locale name: \"%s\""
+msgstr "неверное имя локали LC_COLLATE: \"%s\""
 
-#: commands/dbcommands.c:1035
+#: commands/dbcommands.c:1050 commands/dbcommands.c:1056
+#, c-format
+msgid "If the locale name is specific to ICU, use ICU_LOCALE."
+msgstr "Если эта локаль свойственна ICU, используйте ICU_LOCALE."
+
+#: commands/dbcommands.c:1055
+#, c-format
+msgid "invalid LC_CTYPE locale name: \"%s\""
+msgstr "неверное имя локали LC_CTYPE: \"%s\""
+
+#: commands/dbcommands.c:1066
 #, c-format
 msgid "encoding \"%s\" is not supported with ICU provider"
 msgstr "кодировка \"%s\" не поддерживается провайдером ICU"
 
-#: commands/dbcommands.c:1045
+#: commands/dbcommands.c:1076
 #, c-format
-msgid "ICU locale must be specified"
-msgstr "необходимо задать локаль ICU"
+msgid "LOCALE or ICU_LOCALE must be specified"
+msgstr "необходимо задать LOCALE или ICU_LOCALE"
 
-#: commands/dbcommands.c:1054
+#: commands/dbcommands.c:1105
 #, c-format
 msgid "ICU locale cannot be specified unless locale provider is ICU"
 msgstr "локаль ICU можно указать, только если выбран провайдер локали ICU"
 
-#: commands/dbcommands.c:1072
+#: commands/dbcommands.c:1128
 #, c-format
 msgid ""
 "new encoding (%s) is incompatible with the encoding of the template database "
@@ -8050,7 +8223,7 @@ msgid ""
 msgstr ""
 "новая кодировка (%s) несовместима с кодировкой шаблона базы данных (%s)"
 
-#: commands/dbcommands.c:1075
+#: commands/dbcommands.c:1131
 #, c-format
 msgid ""
 "Use the same encoding as in the template database, or use template0 as "
@@ -8059,7 +8232,7 @@ msgstr ""
 "Используйте кодировку шаблона базы данных или выберите в качестве шаблона "
 "template0."
 
-#: commands/dbcommands.c:1080
+#: commands/dbcommands.c:1136
 #, c-format
 msgid ""
 "new collation (%s) is incompatible with the collation of the template "
@@ -8068,7 +8241,7 @@ msgstr ""
 "новое правило сортировки (%s) несовместимо с правилом в шаблоне базы данных "
 "(%s)"
 
-#: commands/dbcommands.c:1082
+#: commands/dbcommands.c:1138
 #, c-format
 msgid ""
 "Use the same collation as in the template database, or use template0 as "
@@ -8077,7 +8250,7 @@ msgstr ""
 "Используйте то же правило сортировки, что и в шаблоне базы данных, или "
 "выберите в качестве шаблона template0."
 
-#: commands/dbcommands.c:1087
+#: commands/dbcommands.c:1143
 #, c-format
 msgid ""
 "new LC_CTYPE (%s) is incompatible with the LC_CTYPE of the template database "
@@ -8086,7 +8259,7 @@ msgstr ""
 "новый параметр LC_CTYPE (%s) несовместим с LC_CTYPE в шаблоне базы данных "
 "(%s)"
 
-#: commands/dbcommands.c:1089
+#: commands/dbcommands.c:1145
 #, c-format
 msgid ""
 "Use the same LC_CTYPE as in the template database, or use template0 as "
@@ -8095,7 +8268,7 @@ msgstr ""
 "Используйте тот же LC_CTYPE, что и в шаблоне базы данных, или выберите в "
 "качестве шаблона template0."
 
-#: commands/dbcommands.c:1094
+#: commands/dbcommands.c:1150
 #, c-format
 msgid ""
 "new locale provider (%s) does not match locale provider of the template "
@@ -8104,7 +8277,7 @@ msgstr ""
 "новый провайдер локали (%s) не соответствует провайдеру локали в базе-"
 "шаблоне (%s)"
 
-#: commands/dbcommands.c:1096
+#: commands/dbcommands.c:1152
 #, c-format
 msgid ""
 "Use the same locale provider as in the template database, or use template0 "
@@ -8113,14 +8286,14 @@ msgstr ""
 "Используйте тот же провайдер локали, что и в базе-шаблоне, или выберите в "
 "качестве шаблона template0."
 
-#: commands/dbcommands.c:1105
+#: commands/dbcommands.c:1164
 #, c-format
 msgid ""
 "new ICU locale (%s) is incompatible with the ICU locale of the template "
 "database (%s)"
 msgstr "новая локаль ICU (%s) несовместима с локалью ICU в базе-шаблоне (%s)"
 
-#: commands/dbcommands.c:1107
+#: commands/dbcommands.c:1166
 #, c-format
 msgid ""
 "Use the same ICU locale as in the template database, or use template0 as "
@@ -8129,7 +8302,25 @@ msgstr ""
 "Используйте ту же локаль ICU, что и в базе-шаблоне, или выберите в качестве "
 "шаблона template0."
 
-#: commands/dbcommands.c:1130
+#: commands/dbcommands.c:1177
+#, c-format
+msgid ""
+"new ICU collation rules (%s) are incompatible with the ICU collation rules "
+"of the template database (%s)"
+msgstr ""
+"новые правила сортировки ICU (%s) несовместимы с правилами сортировки в "
+"шаблоне базы данных (%s)"
+
+#: commands/dbcommands.c:1179
+#, c-format
+msgid ""
+"Use the same ICU collation rules as in the template database, or use "
+"template0 as template."
+msgstr ""
+"Используйте те же правила сортировки, что и в шаблоне базы данных, или "
+"выберите в качестве шаблона template0."
+
+#: commands/dbcommands.c:1202
 #, c-format
 msgid ""
 "template database \"%s\" has a collation version, but no actual collation "
@@ -8138,13 +8329,13 @@ msgstr ""
 "в шаблоне \"%s\" имеется версия правила сортировки, но фактическую версию "
 "правила сортировки определить нельзя"
 
-#: commands/dbcommands.c:1135
+#: commands/dbcommands.c:1207
 #, c-format
 msgid "template database \"%s\" has a collation version mismatch"
 msgstr ""
 "в базе-шаблоне \"%s\" обнаружено несоответствие версии правила сортировки"
 
-#: commands/dbcommands.c:1137
+#: commands/dbcommands.c:1209
 #, c-format
 msgid ""
 "The template database was created using collation version %s, but the "
@@ -8153,7 +8344,7 @@ msgstr ""
 "База-шаблон была создана с версией правила сортировки %s, но операционная "
 "система предоставляет версию %s."
 
-#: commands/dbcommands.c:1140
+#: commands/dbcommands.c:1212
 #, c-format
 msgid ""
 "Rebuild all objects in the template database that use the default collation "
@@ -8164,18 +8355,18 @@ msgstr ""
 "сортировки, и выполните ALTER DATABASE %s REFRESH COLLATION VERSION, либо "
 "соберите PostgreSQL с правильной версией библиотеки."
 
-#: commands/dbcommands.c:1176 commands/dbcommands.c:1894
+#: commands/dbcommands.c:1248 commands/dbcommands.c:1980
 #, c-format
 msgid "pg_global cannot be used as default tablespace"
 msgstr ""
 "pg_global нельзя использовать в качестве табличного пространства по умолчанию"
 
-#: commands/dbcommands.c:1202
+#: commands/dbcommands.c:1274
 #, c-format
 msgid "cannot assign new default tablespace \"%s\""
 msgstr "не удалось назначить новое табличное пространство по умолчанию \"%s\""
 
-#: commands/dbcommands.c:1204
+#: commands/dbcommands.c:1276
 #, c-format
 msgid ""
 "There is a conflict because database \"%s\" already has some tables in this "
@@ -8184,62 +8375,62 @@ msgstr ""
 "База данных \"%s\" содержит таблицы, которые уже находятся в этом табличном "
 "пространстве."
 
-#: commands/dbcommands.c:1234 commands/dbcommands.c:1764
+#: commands/dbcommands.c:1306 commands/dbcommands.c:1853
 #, c-format
 msgid "database \"%s\" already exists"
 msgstr "база данных \"%s\" уже существует"
 
-#: commands/dbcommands.c:1248
+#: commands/dbcommands.c:1320
 #, c-format
 msgid "source database \"%s\" is being accessed by other users"
 msgstr "исходная база \"%s\" занята другими пользователями"
 
-#: commands/dbcommands.c:1270
+#: commands/dbcommands.c:1342
 #, c-format
 msgid "database OID %u is already in use by database \"%s\""
 msgstr "OID базы данных %u уже используется базой данных \"%s\""
 
-#: commands/dbcommands.c:1276
+#: commands/dbcommands.c:1348
 #, c-format
 msgid "data directory with the specified OID %u already exists"
 msgstr "каталог данных с указанным OID %u уже существует"
 
-#: commands/dbcommands.c:1447 commands/dbcommands.c:1462
+#: commands/dbcommands.c:1520 commands/dbcommands.c:1535
 #, c-format
 msgid "encoding \"%s\" does not match locale \"%s\""
 msgstr "кодировка \"%s\" не соответствует локали \"%s\""
 
-#: commands/dbcommands.c:1450
+#: commands/dbcommands.c:1523
 #, c-format
 msgid "The chosen LC_CTYPE setting requires encoding \"%s\"."
 msgstr "Для выбранного параметра LC_CTYPE требуется кодировка \"%s\"."
 
-#: commands/dbcommands.c:1465
+#: commands/dbcommands.c:1538
 #, c-format
 msgid "The chosen LC_COLLATE setting requires encoding \"%s\"."
 msgstr "Для выбранного параметра LC_COLLATE требуется кодировка \"%s\"."
 
-#: commands/dbcommands.c:1545
+#: commands/dbcommands.c:1619
 #, c-format
 msgid "database \"%s\" does not exist, skipping"
 msgstr "база данных \"%s\" не существует, пропускается"
 
-#: commands/dbcommands.c:1569
+#: commands/dbcommands.c:1643
 #, c-format
 msgid "cannot drop a template database"
 msgstr "удалить шаблон базы данных нельзя"
 
-#: commands/dbcommands.c:1575
+#: commands/dbcommands.c:1649
 #, c-format
 msgid "cannot drop the currently open database"
 msgstr "удалить базу данных, открытую в данный момент, нельзя"
 
-#: commands/dbcommands.c:1588
+#: commands/dbcommands.c:1662
 #, c-format
 msgid "database \"%s\" is used by an active logical replication slot"
 msgstr "база \"%s\" используется активным слотом логической репликации"
 
-#: commands/dbcommands.c:1590
+#: commands/dbcommands.c:1664
 #, c-format
 msgid "There is %d active slot."
 msgid_plural "There are %d active slots."
@@ -8247,12 +8438,12 @@ msgstr[0] "Обнаружен %d активный слот."
 msgstr[1] "Обнаружены %d активных слота."
 msgstr[2] "Обнаружено %d активных слотов."
 
-#: commands/dbcommands.c:1604
+#: commands/dbcommands.c:1678
 #, c-format
 msgid "database \"%s\" is being used by logical replication subscription"
 msgstr "база \"%s\" используется в подписке с логической репликацией"
 
-#: commands/dbcommands.c:1606
+#: commands/dbcommands.c:1680
 #, c-format
 msgid "There is %d subscription."
 msgid_plural "There are %d subscriptions."
@@ -8260,36 +8451,36 @@ msgstr[0] "Обнаружена %d подписка."
 msgstr[1] "Обнаружены %d подписки."
 msgstr[2] "Обнаружено %d подписок."
 
-#: commands/dbcommands.c:1627 commands/dbcommands.c:1786
-#: commands/dbcommands.c:1916
+#: commands/dbcommands.c:1701 commands/dbcommands.c:1875
+#: commands/dbcommands.c:2002
 #, c-format
 msgid "database \"%s\" is being accessed by other users"
 msgstr "база данных \"%s\" занята другими пользователями"
 
-#: commands/dbcommands.c:1746
+#: commands/dbcommands.c:1835
 #, c-format
 msgid "permission denied to rename database"
 msgstr "нет прав на переименование базы данных"
 
-#: commands/dbcommands.c:1775
+#: commands/dbcommands.c:1864
 #, c-format
 msgid "current database cannot be renamed"
 msgstr "нельзя переименовать текущую базу данных"
 
-#: commands/dbcommands.c:1872
+#: commands/dbcommands.c:1958
 #, c-format
 msgid "cannot change the tablespace of the currently open database"
 msgstr ""
 "изменить табличное пространство открытой в данный момент базы данных нельзя"
 
-#: commands/dbcommands.c:1978
+#: commands/dbcommands.c:2064
 #, c-format
 msgid "some relations of database \"%s\" are already in tablespace \"%s\""
 msgstr ""
 "некоторые отношения базы данных \"%s\" уже находятся в табличном "
 "пространстве \"%s\""
 
-#: commands/dbcommands.c:1980
+#: commands/dbcommands.c:2066
 #, c-format
 msgid ""
 "You must move them back to the database's default tablespace before using "
@@ -8298,33 +8489,38 @@ msgstr ""
 "Прежде чем выполнять эту команду, вы должны вернуть их назад в табличное "
 "пространство по умолчанию для этой базы данных."
 
-#: commands/dbcommands.c:2107 commands/dbcommands.c:2818
-#: commands/dbcommands.c:3082 commands/dbcommands.c:3196
+#: commands/dbcommands.c:2193 commands/dbcommands.c:2909
+#: commands/dbcommands.c:3209 commands/dbcommands.c:3322
 #, c-format
 msgid "some useless files may be left behind in old database directory \"%s\""
 msgstr "в старом каталоге базы данных \"%s\" могли остаться ненужные файлы"
 
-#: commands/dbcommands.c:2168
+#: commands/dbcommands.c:2254
 #, c-format
 msgid "unrecognized DROP DATABASE option \"%s\""
 msgstr "нераспознанный параметр DROP DATABASE: \"%s\""
 
-#: commands/dbcommands.c:2246
+#: commands/dbcommands.c:2332
 #, c-format
 msgid "option \"%s\" cannot be specified with other options"
 msgstr "параметр \"%s\" нельзя задать с другими параметрами"
 
-#: commands/dbcommands.c:2302
+#: commands/dbcommands.c:2379
+#, c-format
+msgid "cannot alter invalid database \"%s\""
+msgstr "изменить свойства некорректной базы \"%s\" нельзя"
+
+#: commands/dbcommands.c:2396
 #, c-format
 msgid "cannot disallow connections for current database"
 msgstr "запретить подключения к текущей базе данных нельзя"
 
-#: commands/dbcommands.c:2521
+#: commands/dbcommands.c:2611
 #, c-format
 msgid "permission denied to change owner of database"
 msgstr "нет прав на изменение владельца базы данных"
 
-#: commands/dbcommands.c:2924
+#: commands/dbcommands.c:3015
 #, c-format
 msgid ""
 "There are %d other session(s) and %d prepared transaction(s) using the "
@@ -8333,7 +8529,7 @@ msgstr ""
 "С этой базой данных связаны другие сеансы (%d) и подготовленные транзакции "
 "(%d)."
 
-#: commands/dbcommands.c:2927
+#: commands/dbcommands.c:3018
 #, c-format
 msgid "There is %d other session using the database."
 msgid_plural "There are %d other sessions using the database."
@@ -8341,7 +8537,7 @@ msgstr[0] "Эта база данных используется ещё в %d с
 msgstr[1] "Эта база данных используется ещё в %d сеансах."
 msgstr[2] "Эта база данных используется ещё в %d сеансах."
 
-#: commands/dbcommands.c:2932 storage/ipc/procarray.c:3825
+#: commands/dbcommands.c:3023 storage/ipc/procarray.c:3798
 #, c-format
 msgid "There is %d prepared transaction using the database."
 msgid_plural "There are %d prepared transactions using the database."
@@ -8349,13 +8545,13 @@ msgstr[0] "С этой базой данных связана %d подгото
 msgstr[1] "С этой базой данных связаны %d подготовленные транзакции."
 msgstr[2] "С этой базой данных связаны %d подготовленных транзакций."
 
-#: commands/dbcommands.c:3038
+#: commands/dbcommands.c:3165
 #, c-format
 msgid "missing directory \"%s\""
 msgstr "отсутствует каталог \"%s\""
 
-#: commands/dbcommands.c:3098 commands/tablespace.c:190
-#: commands/tablespace.c:654
+#: commands/dbcommands.c:3223 commands/tablespace.c:190
+#: commands/tablespace.c:639
 #, c-format
 msgid "could not stat directory \"%s\": %m"
 msgstr "не удалось получить информацию о каталоге \"%s\": %m"
@@ -8397,30 +8593,30 @@ msgstr "аргументом %s должно быть имя типа"
 msgid "invalid argument for %s: \"%s\""
 msgstr "неверный аргумент для %s: \"%s\""
 
-#: commands/dropcmds.c:100 commands/functioncmds.c:1394
-#: utils/adt/ruleutils.c:2908
+#: commands/dropcmds.c:101 commands/functioncmds.c:1387
+#: utils/adt/ruleutils.c:2897
 #, c-format
 msgid "\"%s\" is an aggregate function"
 msgstr "функция \"%s\" является агрегатной"
 
-#: commands/dropcmds.c:102
+#: commands/dropcmds.c:103
 #, c-format
 msgid "Use DROP AGGREGATE to drop aggregate functions."
 msgstr "Используйте DROP AGGREGATE для удаления агрегатных функций."
 
-#: commands/dropcmds.c:158 commands/sequence.c:475 commands/tablecmds.c:3613
-#: commands/tablecmds.c:3771 commands/tablecmds.c:3823
-#: commands/tablecmds.c:16435 tcop/utility.c:1332
+#: commands/dropcmds.c:158 commands/sequence.c:474 commands/tablecmds.c:3710
+#: commands/tablecmds.c:3868 commands/tablecmds.c:3920
+#: commands/tablecmds.c:16468 tcop/utility.c:1336
 #, c-format
 msgid "relation \"%s\" does not exist, skipping"
 msgstr "отношение \"%s\" не существует, пропускается"
 
-#: commands/dropcmds.c:188 commands/dropcmds.c:287 commands/tablecmds.c:1278
+#: commands/dropcmds.c:188 commands/dropcmds.c:287 commands/tablecmds.c:1285
 #, c-format
 msgid "schema \"%s\" does not exist, skipping"
 msgstr "схема \"%s\" не существует, пропускается"
 
-#: commands/dropcmds.c:228 commands/dropcmds.c:267 commands/tablecmds.c:276
+#: commands/dropcmds.c:228 commands/dropcmds.c:267 commands/tablecmds.c:277
 #, c-format
 msgid "type \"%s\" does not exist, skipping"
 msgstr "тип \"%s\" не существует, пропускается"
@@ -8440,7 +8636,7 @@ msgstr "правило сортировки \"%s\" не существует, п
 msgid "conversion \"%s\" does not exist, skipping"
 msgstr "преобразование \"%s\" не существует, пропускается"
 
-#: commands/dropcmds.c:293 commands/statscmds.c:655
+#: commands/dropcmds.c:293 commands/statscmds.c:654
 #, c-format
 msgid "statistics object \"%s\" does not exist, skipping"
 msgstr "объект статистики \"%s\" не существует, пропускается"
@@ -8595,18 +8791,23 @@ msgstr "для %s событийные триггеры не поддержив
 msgid "filter variable \"%s\" specified more than once"
 msgstr "переменная фильтра \"%s\" указана больше одного раза"
 
-#: commands/event_trigger.c:377 commands/event_trigger.c:421
-#: commands/event_trigger.c:515
+#: commands/event_trigger.c:376 commands/event_trigger.c:420
+#: commands/event_trigger.c:514
 #, c-format
 msgid "event trigger \"%s\" does not exist"
 msgstr "событийный триггер \"%s\" не существует"
 
-#: commands/event_trigger.c:483
+#: commands/event_trigger.c:452
+#, c-format
+msgid "event trigger with OID %u does not exist"
+msgstr "событийный триггер с OID %u не существует"
+
+#: commands/event_trigger.c:482
 #, c-format
 msgid "permission denied to change owner of event trigger \"%s\""
 msgstr "нет прав на изменение владельца событийного триггера \"%s\""
 
-#: commands/event_trigger.c:485
+#: commands/event_trigger.c:484
 #, c-format
 msgid "The owner of an event trigger must be a superuser."
 msgstr "Владельцем событийного триггера должен быть суперпользователь."
@@ -8616,105 +8817,112 @@ msgstr "Владельцем событийного триггера долже
 msgid "%s can only be called in a sql_drop event trigger function"
 msgstr "%s можно вызывать только в событийной триггерной функции sql_drop"
 
-#: commands/event_trigger.c:1400 commands/event_trigger.c:1421
+#: commands/event_trigger.c:1397 commands/event_trigger.c:1418
 #, c-format
 msgid "%s can only be called in a table_rewrite event trigger function"
 msgstr "%s можно вызывать только в событийной триггерной функции table_rewrite"
 
-#: commands/event_trigger.c:1834
+#: commands/event_trigger.c:1831
 #, c-format
 msgid "%s can only be called in an event trigger function"
 msgstr "%s можно вызывать только в событийной триггерной функции"
 
-#: commands/explain.c:218
+#: commands/explain.c:220
 #, c-format
 msgid "unrecognized value for EXPLAIN option \"%s\": \"%s\""
 msgstr "нераспознанное значение параметра EXPLAIN \"%s\": \"%s\""
 
-#: commands/explain.c:225
+#: commands/explain.c:227
 #, c-format
 msgid "unrecognized EXPLAIN option \"%s\""
 msgstr "нераспознанный параметр EXPLAIN: \"%s\""
 
-#: commands/explain.c:233
+#: commands/explain.c:236
 #, c-format
 msgid "EXPLAIN option WAL requires ANALYZE"
 msgstr "параметр WAL оператора EXPLAIN требует указания ANALYZE"
 
-#: commands/explain.c:242
+#: commands/explain.c:245
 #, c-format
 msgid "EXPLAIN option TIMING requires ANALYZE"
 msgstr "параметр TIMING оператора EXPLAIN требует указания ANALYZE"
 
-#: commands/extension.c:173 commands/extension.c:2936
+#: commands/explain.c:251
+#, c-format
+msgid "EXPLAIN options ANALYZE and GENERIC_PLAN cannot be used together"
+msgstr ""
+"параметры ANALYZE и GENERIC_PLAN оператора EXPLAIN нельзя использовать "
+"одновременно"
+
+#: commands/extension.c:177 commands/extension.c:3033
 #, c-format
 msgid "extension \"%s\" does not exist"
 msgstr "расширение \"%s\" не существует"
 
-#: commands/extension.c:272 commands/extension.c:281 commands/extension.c:293
-#: commands/extension.c:303
+#: commands/extension.c:276 commands/extension.c:285 commands/extension.c:297
+#: commands/extension.c:307
 #, c-format
 msgid "invalid extension name: \"%s\""
 msgstr "неверное имя расширения: \"%s\""
 
-#: commands/extension.c:273
+#: commands/extension.c:277
 #, c-format
 msgid "Extension names must not be empty."
 msgstr "Имя расширения не может быть пустым."
 
-#: commands/extension.c:282
+#: commands/extension.c:286
 #, c-format
 msgid "Extension names must not contain \"--\"."
 msgstr "Имя расширения не может содержать \"--\"."
 
-#: commands/extension.c:294
+#: commands/extension.c:298
 #, c-format
 msgid "Extension names must not begin or end with \"-\"."
 msgstr "Имя расширения не может начинаться или заканчиваться символом \"-\"."
 
-#: commands/extension.c:304
+#: commands/extension.c:308
 #, c-format
 msgid "Extension names must not contain directory separator characters."
 msgstr "Имя расширения не может содержать разделители пути."
 
-#: commands/extension.c:319 commands/extension.c:328 commands/extension.c:337
-#: commands/extension.c:347
+#: commands/extension.c:323 commands/extension.c:332 commands/extension.c:341
+#: commands/extension.c:351
 #, c-format
 msgid "invalid extension version name: \"%s\""
 msgstr "неверный идентификатор версии расширения: \"%s\""
 
-#: commands/extension.c:320
+#: commands/extension.c:324
 #, c-format
 msgid "Version names must not be empty."
 msgstr "Идентификатор версии не может быть пустым."
 
-#: commands/extension.c:329
+#: commands/extension.c:333
 #, c-format
 msgid "Version names must not contain \"--\"."
 msgstr "Идентификатор версии не может содержать \"--\"."
 
-#: commands/extension.c:338
+#: commands/extension.c:342
 #, c-format
 msgid "Version names must not begin or end with \"-\"."
 msgstr ""
 "Идентификатор версии не может начинаться или заканчиваться символом \"-\"."
 
-#: commands/extension.c:348
+#: commands/extension.c:352
 #, c-format
 msgid "Version names must not contain directory separator characters."
 msgstr "Идентификатор версии не может содержать разделители пути."
 
-#: commands/extension.c:502
+#: commands/extension.c:506
 #, c-format
 msgid "extension \"%s\" is not available"
 msgstr "расширение \"%s\" отсутствует"
 
-#: commands/extension.c:503
+#: commands/extension.c:507
 #, c-format
 msgid "Could not open extension control file \"%s\": %m."
 msgstr "Не удалось открыть управляющий файл расширения \"%s\": %m."
 
-#: commands/extension.c:505
+#: commands/extension.c:509
 #, c-format
 msgid ""
 "The extension must first be installed on the system where PostgreSQL is "
@@ -8722,84 +8930,99 @@ msgid ""
 msgstr ""
 "Сначала расширение нужно установить в системе, где работает PostgreSQL."
 
-#: commands/extension.c:509
+#: commands/extension.c:513
 #, c-format
 msgid "could not open extension control file \"%s\": %m"
 msgstr "не удалось открыть управляющий файл расширения \"%s\": %m"
 
-#: commands/extension.c:531 commands/extension.c:541
+#: commands/extension.c:536 commands/extension.c:546
 #, c-format
 msgid "parameter \"%s\" cannot be set in a secondary extension control file"
 msgstr ""
 "параметр \"%s\" нельзя задавать в дополнительном управляющем файле расширения"
 
-#: commands/extension.c:563 commands/extension.c:571 commands/extension.c:579
-#: utils/misc/guc.c:7380
+#: commands/extension.c:568 commands/extension.c:576 commands/extension.c:584
+#: utils/misc/guc.c:3098
 #, c-format
 msgid "parameter \"%s\" requires a Boolean value"
 msgstr "параметр \"%s\" требует логическое значение"
 
-#: commands/extension.c:588
+#: commands/extension.c:593
 #, c-format
 msgid "\"%s\" is not a valid encoding name"
 msgstr "\"%s\" не является верным названием кодировки"
 
-#: commands/extension.c:602
+#: commands/extension.c:607 commands/extension.c:622
 #, c-format
 msgid "parameter \"%s\" must be a list of extension names"
 msgstr "параметр \"%s\" должен содержать список имён расширений"
 
-#: commands/extension.c:609
+#: commands/extension.c:629
 #, c-format
 msgid "unrecognized parameter \"%s\" in file \"%s\""
 msgstr "нераспознанный параметр \"%s\" в файле \"%s\""
 
-#: commands/extension.c:618
+#: commands/extension.c:638
 #, c-format
 msgid "parameter \"schema\" cannot be specified when \"relocatable\" is true"
 msgstr ""
 "параметр \"schema\" не может быть указан вместе с \"relocatable\" = true"
 
-#: commands/extension.c:796
+#: commands/extension.c:816
 #, c-format
 msgid ""
 "transaction control statements are not allowed within an extension script"
 msgstr "в скрипте расширения не должно быть операторов управления транзакциями"
 
-#: commands/extension.c:873
+#: commands/extension.c:896
 #, c-format
 msgid "permission denied to create extension \"%s\""
 msgstr "нет прав на создание расширения \"%s\""
 
-#: commands/extension.c:876
+#: commands/extension.c:899
 #, c-format
 msgid ""
 "Must have CREATE privilege on current database to create this extension."
 msgstr "Для создания этого расширения нужно иметь право CREATE в текущей базе."
 
-#: commands/extension.c:877
+#: commands/extension.c:900
 #, c-format
 msgid "Must be superuser to create this extension."
 msgstr "Для создания этого расширения нужно быть суперпользователем."
 
-#: commands/extension.c:881
+#: commands/extension.c:904
 #, c-format
 msgid "permission denied to update extension \"%s\""
 msgstr "нет прав на изменение расширения \"%s\""
 
-#: commands/extension.c:884
+#: commands/extension.c:907
 #, c-format
 msgid ""
 "Must have CREATE privilege on current database to update this extension."
 msgstr ""
 "Для обновления этого расширения нужно иметь право CREATE в текущей базе."
 
-#: commands/extension.c:885
+#: commands/extension.c:908
 #, c-format
 msgid "Must be superuser to update this extension."
 msgstr "Для изменения этого расширения нужно быть суперпользователем."
 
-#: commands/extension.c:1216
+#: commands/extension.c:1046
+#, c-format
+msgid "invalid character in extension owner: must not contain any of \"%s\""
+msgstr ""
+"недопустимый символ в имени владельца расширения: имя не должно содержать "
+"\"%s\""
+
+#: commands/extension.c:1070 commands/extension.c:1097
+#, c-format
+msgid ""
+"invalid character in extension \"%s\" schema: must not contain any of \"%s\""
+msgstr ""
+"недопустимый символ в имени схемы расширения \"%s\": имя не должно содержать "
+"\"%s\""
+
+#: commands/extension.c:1292
 #, c-format
 msgid ""
 "extension \"%s\" has no update path from version \"%s\" to version \"%s\""
@@ -8807,12 +9030,12 @@ msgstr ""
 "для расширения \"%s\" не определён путь обновления с версии \"%s\" до версии "
 "\"%s\""
 
-#: commands/extension.c:1424 commands/extension.c:2994
+#: commands/extension.c:1500 commands/extension.c:3091
 #, c-format
 msgid "version to install must be specified"
 msgstr "нужно указать версию для установки"
 
-#: commands/extension.c:1461
+#: commands/extension.c:1537
 #, c-format
 msgid ""
 "extension \"%s\" has no installation script nor update path for version "
@@ -8821,71 +9044,71 @@ msgstr ""
 "для расширения \"%s\" не определён путь установки или обновления для версии "
 "\"%s\""
 
-#: commands/extension.c:1495
+#: commands/extension.c:1571
 #, c-format
 msgid "extension \"%s\" must be installed in schema \"%s\""
 msgstr "расширение \"%s\" должно устанавливаться в схему \"%s\""
 
-#: commands/extension.c:1655
+#: commands/extension.c:1731
 #, c-format
 msgid "cyclic dependency detected between extensions \"%s\" and \"%s\""
 msgstr "выявлена циклическая зависимость между расширениями \"%s\" и \"%s\""
 
-#: commands/extension.c:1660
+#: commands/extension.c:1736
 #, c-format
 msgid "installing required extension \"%s\""
 msgstr "установка требуемого расширения \"%s\""
 
-#: commands/extension.c:1683
+#: commands/extension.c:1759
 #, c-format
 msgid "required extension \"%s\" is not installed"
 msgstr "требуемое расширение \"%s\" не установлено"
 
-#: commands/extension.c:1686
+#: commands/extension.c:1762
 #, c-format
 msgid "Use CREATE EXTENSION ... CASCADE to install required extensions too."
 msgstr ""
 "Выполните CREATE EXTENSION ... CASCADE, чтобы установить также требуемые "
 "расширения."
 
-#: commands/extension.c:1721
+#: commands/extension.c:1797
 #, c-format
 msgid "extension \"%s\" already exists, skipping"
 msgstr "расширение \"%s\" уже существует, пропускается"
 
-#: commands/extension.c:1728
+#: commands/extension.c:1804
 #, c-format
 msgid "extension \"%s\" already exists"
 msgstr "расширение \"%s\" уже существует"
 
-#: commands/extension.c:1739
+#: commands/extension.c:1815
 #, c-format
 msgid "nested CREATE EXTENSION is not supported"
 msgstr "вложенные операторы CREATE EXTENSION не поддерживаются"
 
-#: commands/extension.c:1903
+#: commands/extension.c:1979
 #, c-format
 msgid "cannot drop extension \"%s\" because it is being modified"
 msgstr "удалить расширение \"%s\" нельзя, так как это модифицируемый объект"
 
-#: commands/extension.c:2380
+#: commands/extension.c:2454
 #, c-format
 msgid "%s can only be called from an SQL script executed by CREATE EXTENSION"
 msgstr ""
 "%s можно вызывать только из SQL-скрипта, запускаемого командой CREATE "
 "EXTENSION"
 
-#: commands/extension.c:2392
+#: commands/extension.c:2466
 #, c-format
 msgid "OID %u does not refer to a table"
 msgstr "OID %u не относится к таблице"
 
-#: commands/extension.c:2397
+#: commands/extension.c:2471
 #, c-format
 msgid "table \"%s\" is not a member of the extension being created"
 msgstr "таблица \"%s\" не относится к созданному расширению"
 
-#: commands/extension.c:2751
+#: commands/extension.c:2817
 #, c-format
 msgid ""
 "cannot move extension \"%s\" into schema \"%s\" because the extension "
@@ -8894,32 +9117,45 @@ msgstr ""
 "переместить расширение \"%s\" в схему \"%s\" нельзя, так как оно содержит "
 "схему"
 
-#: commands/extension.c:2792 commands/extension.c:2855
+#: commands/extension.c:2858 commands/extension.c:2952
 #, c-format
 msgid "extension \"%s\" does not support SET SCHEMA"
 msgstr "расширение \"%s\" не поддерживает SET SCHEMA"
 
-#: commands/extension.c:2857
+#: commands/extension.c:2915
+#, c-format
+msgid ""
+"cannot SET SCHEMA of extension \"%s\" because other extensions prevent it"
+msgstr ""
+"выполнить SET SCHEMA для расширения \"%s\" нельзя, так как этому "
+"препятствуют другие расширения"
+
+#: commands/extension.c:2917
+#, c-format
+msgid "Extension \"%s\" requests no relocation of extension \"%s\"."
+msgstr "Расширение \"%s\" не допускает перемещения расширения \"%s\"."
+
+#: commands/extension.c:2954
 #, c-format
 msgid "%s is not in the extension's schema \"%s\""
 msgstr "объект %s не принадлежит схеме расширения \"%s\""
 
-#: commands/extension.c:2916
+#: commands/extension.c:3013
 #, c-format
 msgid "nested ALTER EXTENSION is not supported"
 msgstr "вложенные операторы ALTER EXTENSION не поддерживаются"
 
-#: commands/extension.c:3005
+#: commands/extension.c:3102
 #, c-format
 msgid "version \"%s\" of extension \"%s\" is already installed"
 msgstr "версия \"%s\" расширения \"%s\" уже установлена"
 
-#: commands/extension.c:3217
+#: commands/extension.c:3314
 #, c-format
 msgid "cannot add an object of this type to an extension"
 msgstr "добавить объект этого типа к расширению нельзя"
 
-#: commands/extension.c:3283
+#: commands/extension.c:3380
 #, c-format
 msgid ""
 "cannot add schema \"%s\" to extension \"%s\" because the schema contains the "
@@ -8928,7 +9164,7 @@ msgstr ""
 "добавить схему \"%s\" к расширению \"%s\" нельзя, так как схема содержит "
 "расширение"
 
-#: commands/extension.c:3377
+#: commands/extension.c:3474
 #, c-format
 msgid "file \"%s\" is too large"
 msgstr "файл \"%s\" слишком большой"
@@ -8959,11 +9195,21 @@ msgstr ""
 msgid "The owner of a foreign-data wrapper must be a superuser."
 msgstr "Владельцем обёртки сторонних данных должен быть суперпользователь."
 
-#: commands/foreigncmds.c:291 commands/foreigncmds.c:707 foreign/foreign.c:669
+#: commands/foreigncmds.c:291 commands/foreigncmds.c:707 foreign/foreign.c:678
 #, c-format
 msgid "foreign-data wrapper \"%s\" does not exist"
 msgstr "обёртка сторонних данных \"%s\" не существует"
 
+#: commands/foreigncmds.c:325
+#, c-format
+msgid "foreign-data wrapper with OID %u does not exist"
+msgstr "обёртка сторонних данных с OID %u не существует"
+
+#: commands/foreigncmds.c:462
+#, c-format
+msgid "foreign server with OID %u does not exist"
+msgstr "сторонний сервер с OID %u не существует"
+
 #: commands/foreigncmds.c:580
 #, c-format
 msgid "permission denied to create foreign-data wrapper \"%s\""
@@ -9031,7 +9277,7 @@ msgstr ""
 "сопоставление пользователя \"%s\" для сервера \"%s\" не существует, "
 "пропускается"
 
-#: commands/foreigncmds.c:1507 foreign/foreign.c:390
+#: commands/foreigncmds.c:1507 foreign/foreign.c:391
 #, c-format
 msgid "foreign-data wrapper \"%s\" has no handler"
 msgstr "обёртка сторонних данных \"%s\" не имеет обработчика"
@@ -9056,141 +9302,141 @@ msgstr "SQL-функция не может возвращать тип-пуст
 msgid "return type %s is only a shell"
 msgstr "возвращаемый тип %s - лишь пустышка"
 
-#: commands/functioncmds.c:144 parser/parse_type.c:354
+#: commands/functioncmds.c:143 parser/parse_type.c:354
 #, c-format
 msgid "type modifier cannot be specified for shell type \"%s\""
 msgstr "для типа-пустышки \"%s\" нельзя указать модификатор типа"
 
-#: commands/functioncmds.c:150
+#: commands/functioncmds.c:149
 #, c-format
 msgid "type \"%s\" is not yet defined"
 msgstr "тип \"%s\" ещё не определён"
 
-#: commands/functioncmds.c:151
+#: commands/functioncmds.c:150
 #, c-format
 msgid "Creating a shell type definition."
 msgstr "Создание определения типа-пустышки."
 
-#: commands/functioncmds.c:250
+#: commands/functioncmds.c:249
 #, c-format
 msgid "SQL function cannot accept shell type %s"
 msgstr "SQL-функция не может принимать значение типа-пустышки %s"
 
-#: commands/functioncmds.c:256
+#: commands/functioncmds.c:255
 #, c-format
 msgid "aggregate cannot accept shell type %s"
 msgstr "агрегатная функция не может принимать значение типа-пустышки %s"
 
-#: commands/functioncmds.c:261
+#: commands/functioncmds.c:260
 #, c-format
 msgid "argument type %s is only a shell"
 msgstr "тип аргумента %s - лишь пустышка"
 
-#: commands/functioncmds.c:271
+#: commands/functioncmds.c:270
 #, c-format
 msgid "type %s does not exist"
 msgstr "тип %s не существует"
 
-#: commands/functioncmds.c:285
+#: commands/functioncmds.c:284
 #, c-format
 msgid "aggregates cannot accept set arguments"
 msgstr "агрегатные функции не принимают в аргументах множества"
 
-#: commands/functioncmds.c:289
+#: commands/functioncmds.c:288
 #, c-format
 msgid "procedures cannot accept set arguments"
 msgstr "процедуры не принимают в аргументах множества"
 
-#: commands/functioncmds.c:293
+#: commands/functioncmds.c:292
 #, c-format
 msgid "functions cannot accept set arguments"
 msgstr "функции не принимают аргументы-множества"
 
-#: commands/functioncmds.c:303
+#: commands/functioncmds.c:302
 #, c-format
 msgid "VARIADIC parameter must be the last input parameter"
 msgstr "параметр VARIADIC должен быть последним в списке входных параметров"
 
-#: commands/functioncmds.c:323
+#: commands/functioncmds.c:322
 #, c-format
 msgid "VARIADIC parameter must be the last parameter"
 msgstr "параметр VARIADIC должен быть последним в списке параметров"
 
-#: commands/functioncmds.c:348
+#: commands/functioncmds.c:347
 #, c-format
 msgid "VARIADIC parameter must be an array"
 msgstr "параметр VARIADIC должен быть массивом"
 
-#: commands/functioncmds.c:393
+#: commands/functioncmds.c:392
 #, c-format
 msgid "parameter name \"%s\" used more than once"
 msgstr "имя параметра \"%s\" указано неоднократно"
 
-#: commands/functioncmds.c:411
+#: commands/functioncmds.c:410
 #, c-format
 msgid "only input parameters can have default values"
 msgstr "значения по умолчанию могут быть только у входных параметров"
 
-#: commands/functioncmds.c:426
+#: commands/functioncmds.c:425
 #, c-format
 msgid "cannot use table references in parameter default value"
 msgstr "в значениях параметров по умолчанию нельзя ссылаться на таблицы"
 
-#: commands/functioncmds.c:450
+#: commands/functioncmds.c:449
 #, c-format
 msgid "input parameters after one with a default value must also have defaults"
 msgstr ""
 "входные параметры, следующие за параметром со значением по умолчанию, также "
 "должны иметь значения по умолчанию"
 
-#: commands/functioncmds.c:460
+#: commands/functioncmds.c:459
 #, c-format
 msgid "procedure OUT parameters cannot appear after one with a default value"
 msgstr ""
 "в объявлении процедуры параметры OUT не могут находиться после параметра со "
 "значением по умолчанию"
 
-#: commands/functioncmds.c:605 commands/functioncmds.c:784
+#: commands/functioncmds.c:601 commands/functioncmds.c:780
 #, c-format
 msgid "invalid attribute in procedure definition"
 msgstr "некорректный атрибут в определении процедуры"
 
-#: commands/functioncmds.c:701
+#: commands/functioncmds.c:697
 #, c-format
 msgid "support function %s must return type %s"
 msgstr "вспомогательная функция %s должна возвращать тип %s"
 
-#: commands/functioncmds.c:712
+#: commands/functioncmds.c:708
 #, c-format
 msgid "must be superuser to specify a support function"
 msgstr "для указания вспомогательной функции нужно быть суперпользователем"
 
-#: commands/functioncmds.c:833 commands/functioncmds.c:1439
+#: commands/functioncmds.c:829 commands/functioncmds.c:1432
 #, c-format
 msgid "COST must be positive"
 msgstr "значение COST должно быть положительным"
 
-#: commands/functioncmds.c:841 commands/functioncmds.c:1447
+#: commands/functioncmds.c:837 commands/functioncmds.c:1440
 #, c-format
 msgid "ROWS must be positive"
 msgstr "значение ROWS должно быть положительным"
 
-#: commands/functioncmds.c:870
+#: commands/functioncmds.c:866
 #, c-format
 msgid "no function body specified"
 msgstr "не указано тело функции"
 
-#: commands/functioncmds.c:875
+#: commands/functioncmds.c:871
 #, c-format
 msgid "duplicate function body specified"
 msgstr "тело функции задано неоднократно"
 
-#: commands/functioncmds.c:880
+#: commands/functioncmds.c:876
 #, c-format
 msgid "inline SQL function body only valid for language SQL"
 msgstr "встроенное тело функции SQL допускается только для языка SQL"
 
-#: commands/functioncmds.c:922
+#: commands/functioncmds.c:918
 #, c-format
 msgid ""
 "SQL function with unquoted function body cannot have polymorphic arguments"
@@ -9198,84 +9444,84 @@ msgstr ""
 "у SQL-функции с телом, задаваемым не в кавычках, не может быть полиморфных "
 "аргументов"
 
-#: commands/functioncmds.c:948 commands/functioncmds.c:967
+#: commands/functioncmds.c:944 commands/functioncmds.c:963
 #, c-format
 msgid "%s is not yet supported in unquoted SQL function body"
 msgstr ""
 "%s на данный момент не поддерживается в теле SQL-функции, задаваемом не в "
 "кавычках"
 
-#: commands/functioncmds.c:995
+#: commands/functioncmds.c:991
 #, c-format
 msgid "only one AS item needed for language \"%s\""
 msgstr "для языка \"%s\" нужно только одно выражение AS"
 
-#: commands/functioncmds.c:1100
+#: commands/functioncmds.c:1096
 #, c-format
 msgid "no language specified"
 msgstr "язык не указан"
 
-#: commands/functioncmds.c:1108 commands/functioncmds.c:2109
+#: commands/functioncmds.c:1104 commands/functioncmds.c:2105
 #: commands/proclang.c:237
 #, c-format
 msgid "language \"%s\" does not exist"
 msgstr "язык \"%s\" не существует"
 
-#: commands/functioncmds.c:1110 commands/functioncmds.c:2111
+#: commands/functioncmds.c:1106 commands/functioncmds.c:2107
 #, c-format
 msgid "Use CREATE EXTENSION to load the language into the database."
 msgstr "Выполните CREATE EXTENSION, чтобы загрузить язык в базу данных."
 
-#: commands/functioncmds.c:1145 commands/functioncmds.c:1431
+#: commands/functioncmds.c:1139 commands/functioncmds.c:1424
 #, c-format
 msgid "only superuser can define a leakproof function"
 msgstr ""
 "только суперпользователь может определить функцию с атрибутом LEAKPROOF"
 
-#: commands/functioncmds.c:1196
+#: commands/functioncmds.c:1190
 #, c-format
 msgid "function result type must be %s because of OUT parameters"
 msgstr ""
 "результат функции должен иметь тип %s (в соответствии с параметрами OUT)"
 
-#: commands/functioncmds.c:1209
+#: commands/functioncmds.c:1203
 #, c-format
 msgid "function result type must be specified"
 msgstr "необходимо указать тип результата функции"
 
-#: commands/functioncmds.c:1263 commands/functioncmds.c:1451
+#: commands/functioncmds.c:1256 commands/functioncmds.c:1444
 #, c-format
 msgid "ROWS is not applicable when function does not return a set"
 msgstr "указание ROWS неприменимо, когда функция возвращает не множество"
 
-#: commands/functioncmds.c:1552
+#: commands/functioncmds.c:1547
 #, c-format
 msgid "source data type %s is a pseudo-type"
 msgstr "исходный тип данных %s является псевдотипом"
 
-#: commands/functioncmds.c:1558
+#: commands/functioncmds.c:1553
 #, c-format
 msgid "target data type %s is a pseudo-type"
 msgstr "целевой тип данных %s является псевдотипом"
 
-#: commands/functioncmds.c:1582
+#: commands/functioncmds.c:1577
 #, c-format
 msgid "cast will be ignored because the source data type is a domain"
 msgstr ""
 "приведение будет проигнорировано, так как исходные данные имеют тип домен"
 
-#: commands/functioncmds.c:1587
+#: commands/functioncmds.c:1582
 #, c-format
 msgid "cast will be ignored because the target data type is a domain"
 msgstr ""
 "приведение будет проигнорировано, так как целевые данные имеют тип домен"
 
-#: commands/functioncmds.c:1612
+#: commands/functioncmds.c:1607
 #, c-format
 msgid "cast function must take one to three arguments"
 msgstr "функция приведения должна принимать от одного до трёх аргументов"
 
-#: commands/functioncmds.c:1616
+#: commands/functioncmds.c:1613
 #, c-format
 msgid ""
 "argument of cast function must match or be binary-coercible from source data "
@@ -9284,17 +9530,17 @@ msgstr ""
 "аргумент функции приведения должен совпадать или быть двоично-совместимым с "
 "исходным типом данных"
 
-#: commands/functioncmds.c:1620
+#: commands/functioncmds.c:1617
 #, c-format
 msgid "second argument of cast function must be type %s"
 msgstr "второй аргумент функции приведения должен иметь тип %s"
 
-#: commands/functioncmds.c:1625
+#: commands/functioncmds.c:1622
 #, c-format
 msgid "third argument of cast function must be type %s"
 msgstr "третий аргумент функции приведения должен иметь тип %s"
 
-#: commands/functioncmds.c:1630
+#: commands/functioncmds.c:1629
 #, c-format
 msgid ""
 "return data type of cast function must match or be binary-coercible to "
@@ -9303,127 +9549,127 @@ msgstr ""
 "тип возвращаемых данных функции приведения должен совпадать или быть двоично-"
 "совместимым с целевым типом данных"
 
-#: commands/functioncmds.c:1641
+#: commands/functioncmds.c:1640
 #, c-format
 msgid "cast function must not be volatile"
 msgstr "функция приведения не может быть изменчивой (volatile)"
 
-#: commands/functioncmds.c:1646
+#: commands/functioncmds.c:1645
 #, c-format
 msgid "cast function must be a normal function"
 msgstr "функция приведения должна быть обычной функцией"
 
-#: commands/functioncmds.c:1650
+#: commands/functioncmds.c:1649
 #, c-format
 msgid "cast function must not return a set"
 msgstr "функция приведения не может возвращать множество"
 
-#: commands/functioncmds.c:1676
+#: commands/functioncmds.c:1675
 #, c-format
 msgid "must be superuser to create a cast WITHOUT FUNCTION"
 msgstr "для создания приведения WITHOUT FUNCTION нужно быть суперпользователем"
 
-#: commands/functioncmds.c:1691
+#: commands/functioncmds.c:1690
 #, c-format
 msgid "source and target data types are not physically compatible"
 msgstr "исходный и целевой типы данных несовместимы физически"
 
-#: commands/functioncmds.c:1706
+#: commands/functioncmds.c:1705
 #, c-format
 msgid "composite data types are not binary-compatible"
 msgstr "составные типы данных несовместимы на двоичном уровне"
 
-#: commands/functioncmds.c:1712
+#: commands/functioncmds.c:1711
 #, c-format
 msgid "enum data types are not binary-compatible"
 msgstr "типы-перечисления несовместимы на двоичном уровне"
 
-#: commands/functioncmds.c:1718
+#: commands/functioncmds.c:1717
 #, c-format
 msgid "array data types are not binary-compatible"
 msgstr "типы-массивы несовместимы на двоичном уровне"
 
-#: commands/functioncmds.c:1735
+#: commands/functioncmds.c:1734
 #, c-format
 msgid "domain data types must not be marked binary-compatible"
 msgstr "типы-домены не могут считаться двоично-совместимыми"
 
-#: commands/functioncmds.c:1745
+#: commands/functioncmds.c:1744
 #, c-format
 msgid "source data type and target data type are the same"
 msgstr "исходный тип данных совпадает с целевым"
 
-#: commands/functioncmds.c:1778
+#: commands/functioncmds.c:1777
 #, c-format
 msgid "transform function must not be volatile"
 msgstr "функция преобразования не может быть изменчивой"
 
-#: commands/functioncmds.c:1782
+#: commands/functioncmds.c:1781
 #, c-format
 msgid "transform function must be a normal function"
 msgstr "функция преобразования должна быть обычной функцией"
 
-#: commands/functioncmds.c:1786
+#: commands/functioncmds.c:1785
 #, c-format
 msgid "transform function must not return a set"
 msgstr "функция преобразования не может возвращать множество"
 
-#: commands/functioncmds.c:1790
+#: commands/functioncmds.c:1789
 #, c-format
 msgid "transform function must take one argument"
 msgstr "функция преобразования должна принимать один аргумент"
 
-#: commands/functioncmds.c:1794
+#: commands/functioncmds.c:1793
 #, c-format
 msgid "first argument of transform function must be type %s"
 msgstr "первый аргумент функции преобразования должен иметь тип %s"
 
-#: commands/functioncmds.c:1833
+#: commands/functioncmds.c:1832
 #, c-format
 msgid "data type %s is a pseudo-type"
 msgstr "тип данных %s является псевдотипом"
 
-#: commands/functioncmds.c:1839
+#: commands/functioncmds.c:1838
 #, c-format
 msgid "data type %s is a domain"
 msgstr "тип данных \"%s\" является доменом"
 
-#: commands/functioncmds.c:1879
+#: commands/functioncmds.c:1878
 #, c-format
 msgid "return data type of FROM SQL function must be %s"
 msgstr "результат функции FROM SQL должен иметь тип %s"
 
-#: commands/functioncmds.c:1905
+#: commands/functioncmds.c:1904
 #, c-format
 msgid "return data type of TO SQL function must be the transform data type"
 msgstr "результат функции TO SQL должен иметь тип данных преобразования"
 
-#: commands/functioncmds.c:1934
+#: commands/functioncmds.c:1931
 #, c-format
 msgid "transform for type %s language \"%s\" already exists"
 msgstr "преобразование для типа %s, языка \"%s\" уже существует"
 
-#: commands/functioncmds.c:2021
+#: commands/functioncmds.c:2017
 #, c-format
 msgid "transform for type %s language \"%s\" does not exist"
 msgstr "преобразование для типа %s, языка \"%s\" не существует"
 
-#: commands/functioncmds.c:2045
+#: commands/functioncmds.c:2041
 #, c-format
 msgid "function %s already exists in schema \"%s\""
 msgstr "функция %s уже существует в схеме \"%s\""
 
-#: commands/functioncmds.c:2096
+#: commands/functioncmds.c:2092
 #, c-format
 msgid "no inline code specified"
 msgstr "нет внедрённого кода"
 
-#: commands/functioncmds.c:2142
+#: commands/functioncmds.c:2138
 #, c-format
 msgid "language \"%s\" does not support inline code execution"
 msgstr "язык \"%s\" не поддерживает выполнение внедрённого кода"
 
-#: commands/functioncmds.c:2237
+#: commands/functioncmds.c:2233
 #, c-format
 msgid "cannot pass more than %d argument to a procedure"
 msgid_plural "cannot pass more than %d arguments to a procedure"
@@ -9431,97 +9677,97 @@ msgstr[0] "процедуре нельзя передать больше %d ар
 msgstr[1] "процедуре нельзя передать больше %d аргументов"
 msgstr[2] "процедуре нельзя передать больше %d аргументов"
 
-#: commands/indexcmds.c:634
+#: commands/indexcmds.c:640
 #, c-format
 msgid "must specify at least one column"
 msgstr "нужно указать минимум один столбец"
 
-#: commands/indexcmds.c:638
+#: commands/indexcmds.c:644
 #, c-format
 msgid "cannot use more than %d columns in an index"
 msgstr "число столбцов в индексе не может превышать %d"
 
-#: commands/indexcmds.c:681
+#: commands/indexcmds.c:687
 #, c-format
 msgid "cannot create index on relation \"%s\""
 msgstr "создать индекс для отношения \"%s\" нельзя"
 
-#: commands/indexcmds.c:707
+#: commands/indexcmds.c:713
 #, c-format
 msgid "cannot create index on partitioned table \"%s\" concurrently"
 msgstr ""
 "создать индекс в секционированной таблице \"%s\" параллельным способом нельзя"
 
-#: commands/indexcmds.c:712
+#: commands/indexcmds.c:718
 #, c-format
 msgid "cannot create exclusion constraints on partitioned table \"%s\""
 msgstr ""
 "создать ограничение-исключение в секционированной таблице \"%s\" нельзя"
 
-#: commands/indexcmds.c:722
+#: commands/indexcmds.c:728
 #, c-format
 msgid "cannot create indexes on temporary tables of other sessions"
 msgstr "создавать индексы во временных таблицах других сеансов нельзя"
 
-#: commands/indexcmds.c:760 commands/tablecmds.c:781 commands/tablespace.c:1204
+#: commands/indexcmds.c:766 commands/tablecmds.c:784 commands/tablespace.c:1184
 #, c-format
 msgid "cannot specify default tablespace for partitioned relations"
 msgstr ""
 "для секционированных отношений нельзя назначить табличное пространство по "
 "умолчанию"
 
-#: commands/indexcmds.c:792 commands/tablecmds.c:816 commands/tablecmds.c:3312
+#: commands/indexcmds.c:798 commands/tablecmds.c:819 commands/tablecmds.c:3409
 #, c-format
 msgid "only shared relations can be placed in pg_global tablespace"
 msgstr ""
 "в табличное пространство pg_global можно поместить только разделяемые таблицы"
 
-#: commands/indexcmds.c:825
+#: commands/indexcmds.c:831
 #, c-format
 msgid "substituting access method \"gist\" for obsolete method \"rtree\""
 msgstr "устаревший метод доступа \"rtree\" подменяется методом \"gist\""
 
-#: commands/indexcmds.c:846
+#: commands/indexcmds.c:852
 #, c-format
 msgid "access method \"%s\" does not support unique indexes"
 msgstr "метод доступа \"%s\" не поддерживает уникальные индексы"
 
-#: commands/indexcmds.c:851
+#: commands/indexcmds.c:857
 #, c-format
 msgid "access method \"%s\" does not support included columns"
 msgstr "метод доступа \"%s\" не поддерживает включаемые столбцы"
 
-#: commands/indexcmds.c:856
+#: commands/indexcmds.c:862
 #, c-format
 msgid "access method \"%s\" does not support multicolumn indexes"
 msgstr "метод доступа \"%s\" не поддерживает индексы по многим столбцам"
 
-#: commands/indexcmds.c:861
+#: commands/indexcmds.c:867
 #, c-format
 msgid "access method \"%s\" does not support exclusion constraints"
 msgstr "метод доступа \"%s\" не поддерживает ограничения-исключения"
 
-#: commands/indexcmds.c:986
+#: commands/indexcmds.c:994
 #, c-format
 msgid "cannot match partition key to an index using access method \"%s\""
 msgstr ""
 "сопоставить ключ секционирования с индексом, использующим метод доступа "
 "\"%s\", нельзя"
 
-#: commands/indexcmds.c:996
+#: commands/indexcmds.c:1004
 #, c-format
 msgid "unsupported %s constraint with partition key definition"
 msgstr ""
 "неподдерживаемое ограничение \"%s\" с определением ключа секционирования"
 
-#: commands/indexcmds.c:998
+#: commands/indexcmds.c:1006
 #, c-format
 msgid "%s constraints cannot be used when partition keys include expressions."
 msgstr ""
 "Ограничения %s не могут использоваться, когда ключи секционирования включают "
 "выражения."
 
-#: commands/indexcmds.c:1037
+#: commands/indexcmds.c:1045
 #, c-format
 msgid ""
 "unique constraint on partitioned table must include all partitioning columns"
@@ -9529,7 +9775,7 @@ msgstr ""
 "ограничение уникальности в секционированной таблице должно включать все "
 "секционирующие столбцы"
 
-#: commands/indexcmds.c:1038
+#: commands/indexcmds.c:1046
 #, c-format
 msgid ""
 "%s constraint on table \"%s\" lacks column \"%s\" which is part of the "
@@ -9538,92 +9784,92 @@ msgstr ""
 "В ограничении %s таблицы \"%s\" не хватает столбца \"%s\", входящего в ключ "
 "секционирования."
 
-#: commands/indexcmds.c:1057 commands/indexcmds.c:1076
+#: commands/indexcmds.c:1065 commands/indexcmds.c:1084
 #, c-format
 msgid "index creation on system columns is not supported"
 msgstr "создание индекса для системных столбцов не поддерживается"
 
-#: commands/indexcmds.c:1276 tcop/utility.c:1518
+#: commands/indexcmds.c:1313 tcop/utility.c:1526
 #, c-format
 msgid "cannot create unique index on partitioned table \"%s\""
 msgstr "создать уникальный индекс в секционированной таблице \"%s\" нельзя"
 
-#: commands/indexcmds.c:1278 tcop/utility.c:1520
+#: commands/indexcmds.c:1315 tcop/utility.c:1528
 #, c-format
 msgid "Table \"%s\" contains partitions that are foreign tables."
 msgstr "Таблица \"%s\" содержит секции, являющиеся сторонними таблицами."
 
-#: commands/indexcmds.c:1750
+#: commands/indexcmds.c:1827
 #, c-format
 msgid "functions in index predicate must be marked IMMUTABLE"
 msgstr "функции в предикате индекса должны быть помечены как IMMUTABLE"
 
-#: commands/indexcmds.c:1828 parser/parse_utilcmd.c:2528
-#: parser/parse_utilcmd.c:2663
+#: commands/indexcmds.c:1905 parser/parse_utilcmd.c:2513
+#: parser/parse_utilcmd.c:2648
 #, c-format
 msgid "column \"%s\" named in key does not exist"
 msgstr "указанный в ключе столбец \"%s\" не существует"
 
-#: commands/indexcmds.c:1852 parser/parse_utilcmd.c:1825
+#: commands/indexcmds.c:1929 parser/parse_utilcmd.c:1812
 #, c-format
 msgid "expressions are not supported in included columns"
 msgstr "выражения во включаемых столбцах не поддерживаются"
 
-#: commands/indexcmds.c:1893
+#: commands/indexcmds.c:1970
 #, c-format
 msgid "functions in index expression must be marked IMMUTABLE"
 msgstr "функции в индексном выражении должны быть помечены как IMMUTABLE"
 
-#: commands/indexcmds.c:1908
+#: commands/indexcmds.c:1985
 #, c-format
 msgid "including column does not support a collation"
 msgstr "включаемые столбцы не поддерживают правила сортировки"
 
-#: commands/indexcmds.c:1912
+#: commands/indexcmds.c:1989
 #, c-format
 msgid "including column does not support an operator class"
 msgstr "включаемые столбцы не поддерживают классы операторов"
 
-#: commands/indexcmds.c:1916
+#: commands/indexcmds.c:1993
 #, c-format
 msgid "including column does not support ASC/DESC options"
 msgstr "включаемые столбцы не поддерживают сортировку ASC/DESC"
 
-#: commands/indexcmds.c:1920
+#: commands/indexcmds.c:1997
 #, c-format
 msgid "including column does not support NULLS FIRST/LAST options"
 msgstr "включаемые столбцы не поддерживают указания NULLS FIRST/LAST"
 
-#: commands/indexcmds.c:1961
+#: commands/indexcmds.c:2038
 #, c-format
 msgid "could not determine which collation to use for index expression"
 msgstr "не удалось определить правило сортировки для индексного выражения"
 
-#: commands/indexcmds.c:1969 commands/tablecmds.c:17450 commands/typecmds.c:807
-#: parser/parse_expr.c:2690 parser/parse_type.c:570 parser/parse_utilcmd.c:3795
-#: utils/adt/misc.c:601
+#: commands/indexcmds.c:2046 commands/tablecmds.c:17469 commands/typecmds.c:807
+#: parser/parse_expr.c:2722 parser/parse_type.c:568 parser/parse_utilcmd.c:3774
+#: utils/adt/misc.c:586
 #, c-format
 msgid "collations are not supported by type %s"
 msgstr "тип %s не поддерживает сортировку (COLLATION)"
 
-#: commands/indexcmds.c:2034
+#: commands/indexcmds.c:2111
 #, c-format
 msgid "operator %s is not commutative"
 msgstr "оператор %s не коммутативен"
 
-#: commands/indexcmds.c:2036
+#: commands/indexcmds.c:2113
 #, c-format
 msgid "Only commutative operators can be used in exclusion constraints."
 msgstr ""
 "В ограничениях-исключениях могут использоваться только коммутативные "
 "операторы."
 
-#: commands/indexcmds.c:2062
+#: commands/indexcmds.c:2139
 #, c-format
 msgid "operator %s is not a member of operator family \"%s\""
 msgstr "оператор \"%s\" не входит в семейство операторов \"%s\""
 
-#: commands/indexcmds.c:2065
+#: commands/indexcmds.c:2142
 #, c-format
 msgid ""
 "The exclusion operator must be related to the index operator class for the "
@@ -9632,25 +9878,25 @@ msgstr ""
 "Оператор исключения для ограничения должен относиться к классу операторов "
 "индекса."
 
-#: commands/indexcmds.c:2100
+#: commands/indexcmds.c:2177
 #, c-format
 msgid "access method \"%s\" does not support ASC/DESC options"
 msgstr "метод доступа \"%s\" не поддерживает сортировку ASC/DESC"
 
-#: commands/indexcmds.c:2105
+#: commands/indexcmds.c:2182
 #, c-format
 msgid "access method \"%s\" does not support NULLS FIRST/LAST options"
 msgstr "метод доступа \"%s\" не поддерживает параметр NULLS FIRST/LAST"
 
-#: commands/indexcmds.c:2151 commands/tablecmds.c:17475
-#: commands/tablecmds.c:17481 commands/typecmds.c:2302
+#: commands/indexcmds.c:2228 commands/tablecmds.c:17494
+#: commands/tablecmds.c:17500 commands/typecmds.c:2301
 #, c-format
 msgid "data type %s has no default operator class for access method \"%s\""
 msgstr ""
 "для типа данных %s не определён класс операторов по умолчанию для метода "
 "доступа \"%s\""
 
-#: commands/indexcmds.c:2153
+#: commands/indexcmds.c:2230
 #, c-format
 msgid ""
 "You must specify an operator class for the index or define a default "
@@ -9659,86 +9905,86 @@ msgstr ""
 "Вы должны указать класс операторов для индекса или определить класс "
 "операторов по умолчанию для этого типа данных."
 
-#: commands/indexcmds.c:2182 commands/indexcmds.c:2190
+#: commands/indexcmds.c:2259 commands/indexcmds.c:2267
 #: commands/opclasscmds.c:205
 #, c-format
 msgid "operator class \"%s\" does not exist for access method \"%s\""
 msgstr "класс операторов \"%s\" для метода доступа \"%s\" не существует"
 
-#: commands/indexcmds.c:2204 commands/typecmds.c:2290
+#: commands/indexcmds.c:2281 commands/typecmds.c:2289
 #, c-format
 msgid "operator class \"%s\" does not accept data type %s"
 msgstr "класс операторов \"%s\" не принимает тип данных %s"
 
-#: commands/indexcmds.c:2294
+#: commands/indexcmds.c:2371
 #, c-format
 msgid "there are multiple default operator classes for data type %s"
 msgstr ""
 "для типа данных %s определено несколько классов операторов по умолчанию"
 
-#: commands/indexcmds.c:2622
+#: commands/indexcmds.c:2699
 #, c-format
 msgid "unrecognized REINDEX option \"%s\""
 msgstr "нераспознанный параметр REINDEX: \"%s\""
 
-#: commands/indexcmds.c:2846
+#: commands/indexcmds.c:2923
 #, c-format
 msgid "table \"%s\" has no indexes that can be reindexed concurrently"
 msgstr ""
 "в таблице \"%s\" нет индексов, которые можно переиндексировать неблокирующим "
 "способом"
 
-#: commands/indexcmds.c:2860
+#: commands/indexcmds.c:2937
 #, c-format
 msgid "table \"%s\" has no indexes to reindex"
 msgstr "в таблице \"%s\" нет индексов для переиндексации"
 
-#: commands/indexcmds.c:2900 commands/indexcmds.c:3404
-#: commands/indexcmds.c:3532
+#: commands/indexcmds.c:2982 commands/indexcmds.c:3492
+#: commands/indexcmds.c:3620
 #, c-format
 msgid "cannot reindex system catalogs concurrently"
 msgstr "Переиндексировать системные каталоги неблокирующим способом нельзя"
 
-#: commands/indexcmds.c:2923
+#: commands/indexcmds.c:3005
 #, c-format
 msgid "can only reindex the currently open database"
 msgstr "переиндексировать можно только текущую базу данных"
 
-#: commands/indexcmds.c:3011
+#: commands/indexcmds.c:3099
 #, c-format
 msgid "cannot reindex system catalogs concurrently, skipping all"
 msgstr ""
 "все системные каталоги пропускаются, так как их нельзя переиндексировать "
 "неблокирующим способом"
 
-#: commands/indexcmds.c:3044
+#: commands/indexcmds.c:3132
 #, c-format
 msgid "cannot move system relations, skipping all"
 msgstr "переместить системные отношения нельзя, все они пропускаются"
 
-#: commands/indexcmds.c:3090
+#: commands/indexcmds.c:3178
 #, c-format
 msgid "while reindexing partitioned table \"%s.%s\""
 msgstr "при переиндексировании секционированной таблицы \"%s.%s\""
 
-#: commands/indexcmds.c:3093
+#: commands/indexcmds.c:3181
 #, c-format
 msgid "while reindexing partitioned index \"%s.%s\""
 msgstr "при перестроении секционированного индекса \"%s.%s\""
 
-#: commands/indexcmds.c:3284 commands/indexcmds.c:4140
+#: commands/indexcmds.c:3372 commands/indexcmds.c:4228
 #, c-format
 msgid "table \"%s.%s\" was reindexed"
 msgstr "таблица \"%s.%s\" переиндексирована"
 
-#: commands/indexcmds.c:3436 commands/indexcmds.c:3488
+#: commands/indexcmds.c:3524 commands/indexcmds.c:3576
 #, c-format
 msgid "cannot reindex invalid index \"%s.%s\" concurrently, skipping"
 msgstr ""
 "перестроить нерабочий индекс \"%s.%s\" неблокирующим способом нельзя, он "
 "пропускается"
 
-#: commands/indexcmds.c:3442
+#: commands/indexcmds.c:3530
 #, c-format
 msgid ""
 "cannot reindex exclusion constraint index \"%s.%s\" concurrently, skipping"
@@ -9746,24 +9992,24 @@ msgstr ""
 "перестроить индекс ограничения-исключения \"%s.%s\" неблокирующим способом "
 "нельзя, он пропускается"
 
-#: commands/indexcmds.c:3597
+#: commands/indexcmds.c:3685
 #, c-format
 msgid "cannot reindex this type of relation concurrently"
 msgstr "переиндексировать отношение такого типа неблокирующим способом нельзя"
 
-#: commands/indexcmds.c:3618
+#: commands/indexcmds.c:3706
 #, c-format
 msgid "cannot move non-shared relation to tablespace \"%s\""
 msgstr ""
 "переместить отношение, не являющееся разделяемым, в табличное пространство "
 "\"%s\" нельзя"
 
-#: commands/indexcmds.c:4121 commands/indexcmds.c:4133
+#: commands/indexcmds.c:4209 commands/indexcmds.c:4221
 #, c-format
 msgid "index \"%s.%s\" was reindexed"
 msgstr "индекс \"%s.%s\" был перестроен"
 
-#: commands/indexcmds.c:4123 commands/indexcmds.c:4142
+#: commands/indexcmds.c:4211 commands/indexcmds.c:4230
 #, c-format
 msgid "%s."
 msgstr "%s."
@@ -9780,7 +10026,7 @@ msgstr ""
 "CONCURRENTLY нельзя использовать, когда материализованное представление не "
 "наполнено"
 
-#: commands/matview.c:199 gram.y:17995
+#: commands/matview.c:199 gram.y:18306
 #, c-format
 msgid "%s and %s options cannot be used together"
 msgstr "параметры %s и %s исключают друг друга"
@@ -10056,63 +10302,63 @@ msgstr ""
 "семейство операторов \"%s\" для метода доступа \"%s\" уже существует в схеме "
 "\"%s\""
 
-#: commands/operatorcmds.c:111 commands/operatorcmds.c:119
+#: commands/operatorcmds.c:113 commands/operatorcmds.c:121
 #, c-format
 msgid "SETOF type not allowed for operator argument"
 msgstr "аргументом оператора не может быть тип SETOF"
 
-#: commands/operatorcmds.c:152 commands/operatorcmds.c:479
+#: commands/operatorcmds.c:154 commands/operatorcmds.c:481
 #, c-format
 msgid "operator attribute \"%s\" not recognized"
 msgstr "атрибут оператора \"%s\" не распознан"
 
-#: commands/operatorcmds.c:163
+#: commands/operatorcmds.c:165
 #, c-format
 msgid "operator function must be specified"
 msgstr "необходимо указать функцию оператора"
 
-#: commands/operatorcmds.c:181
+#: commands/operatorcmds.c:183
 #, c-format
 msgid "operator argument types must be specified"
 msgstr "нужно указать типы аргументов оператора"
 
-#: commands/operatorcmds.c:185
+#: commands/operatorcmds.c:187
 #, c-format
 msgid "operator right argument type must be specified"
 msgstr "нужно указать тип правого аргумента оператора"
 
-#: commands/operatorcmds.c:186
+#: commands/operatorcmds.c:188
 #, c-format
 msgid "Postfix operators are not supported."
 msgstr "Постфиксные операторы не поддерживаются."
 
-#: commands/operatorcmds.c:290
+#: commands/operatorcmds.c:292
 #, c-format
 msgid "restriction estimator function %s must return type %s"
 msgstr "функция оценки ограничения %s должна возвращать тип %s"
 
-#: commands/operatorcmds.c:333
+#: commands/operatorcmds.c:335
 #, c-format
 msgid "join estimator function %s has multiple matches"
 msgstr "функция оценки соединения %s присутствует в нескольких экземплярах"
 
-#: commands/operatorcmds.c:348
+#: commands/operatorcmds.c:350
 #, c-format
 msgid "join estimator function %s must return type %s"
 msgstr "функция оценки соединения %s должна возвращать тип %s"
 
-#: commands/operatorcmds.c:473
+#: commands/operatorcmds.c:475
 #, c-format
 msgid "operator attribute \"%s\" cannot be changed"
 msgstr "атрибут оператора \"%s\" нельзя изменить"
 
 #: commands/policy.c:89 commands/policy.c:382 commands/statscmds.c:149
-#: commands/tablecmds.c:1609 commands/tablecmds.c:2197
-#: commands/tablecmds.c:3423 commands/tablecmds.c:6312
-#: commands/tablecmds.c:9104 commands/tablecmds.c:17030
-#: commands/tablecmds.c:17065 commands/trigger.c:327 commands/trigger.c:1382
-#: commands/trigger.c:1492 rewrite/rewriteDefine.c:278
-#: rewrite/rewriteDefine.c:957 rewrite/rewriteRemove.c:80
+#: commands/tablecmds.c:1616 commands/tablecmds.c:2219
+#: commands/tablecmds.c:3520 commands/tablecmds.c:6369
+#: commands/tablecmds.c:9181 commands/tablecmds.c:17062
+#: commands/tablecmds.c:17097 commands/trigger.c:323 commands/trigger.c:1339
+#: commands/trigger.c:1449 rewrite/rewriteDefine.c:275
+#: rewrite/rewriteDefine.c:786 rewrite/rewriteRemove.c:80
 #, c-format
 msgid "permission denied: \"%s\" is a system catalog"
 msgstr "доступ запрещён: \"%s\" - это системный каталог"
@@ -10127,27 +10373,27 @@ msgstr "все указанные роли, кроме PUBLIC, игнориру
 msgid "All roles are members of the PUBLIC role."
 msgstr "Роль PUBLIC включает в себя все остальные роли."
 
-#: commands/policy.c:607
+#: commands/policy.c:606
 #, c-format
 msgid "WITH CHECK cannot be applied to SELECT or DELETE"
 msgstr "WITH CHECK нельзя применить к SELECT или DELETE"
 
-#: commands/policy.c:616 commands/policy.c:921
+#: commands/policy.c:615 commands/policy.c:918
 #, c-format
 msgid "only WITH CHECK expression allowed for INSERT"
 msgstr "для INSERT допускается только выражение WITH CHECK"
 
-#: commands/policy.c:691 commands/policy.c:1144
+#: commands/policy.c:689 commands/policy.c:1141
 #, c-format
 msgid "policy \"%s\" for table \"%s\" already exists"
 msgstr "политика \"%s\" для таблицы \"%s\" уже существует"
 
-#: commands/policy.c:893 commands/policy.c:1172 commands/policy.c:1243
+#: commands/policy.c:890 commands/policy.c:1169 commands/policy.c:1240
 #, c-format
 msgid "policy \"%s\" for table \"%s\" does not exist"
 msgstr "политика \"%s\" для таблицы \"%s\" не существует"
 
-#: commands/policy.c:911
+#: commands/policy.c:908
 #, c-format
 msgid "only USING expression allowed for SELECT, DELETE"
 msgstr "для SELECT, DELETE допускается только выражение USING"
@@ -10165,7 +10411,7 @@ msgstr ""
 "HOLD"
 
 #: commands/portalcmds.c:189 commands/portalcmds.c:242
-#: executor/execCurrent.c:70 utils/adt/xml.c:2593 utils/adt/xml.c:2763
+#: executor/execCurrent.c:70 utils/adt/xml.c:2844 utils/adt/xml.c:3014
 #, c-format
 msgid "cursor \"%s\" does not exist"
 msgstr "курсор \"%s\" не существует"
@@ -10214,37 +10460,38 @@ msgid "must be superuser to create custom procedural language"
 msgstr ""
 "для создания дополнительного процедурного языка нужно быть суперпользователем"
 
-#: commands/publicationcmds.c:130 postmaster/postmaster.c:1219
-#: postmaster/postmaster.c:1318 utils/init/miscinit.c:1651
+#: commands/publicationcmds.c:131 postmaster/postmaster.c:1205
+#: postmaster/postmaster.c:1303 storage/file/fd.c:3911
+#: utils/init/miscinit.c:1815
 #, c-format
 msgid "invalid list syntax in parameter \"%s\""
 msgstr "неверный формат списка в параметре \"%s\""
 
-#: commands/publicationcmds.c:149
+#: commands/publicationcmds.c:150
 #, c-format
 msgid "unrecognized value for publication option \"%s\": \"%s\""
 msgstr "нераспознанное значение параметра публикации \"%s\": \"%s\""
 
-#: commands/publicationcmds.c:163
+#: commands/publicationcmds.c:164
 #, c-format
 msgid "unrecognized publication parameter: \"%s\""
 msgstr "нераспознанный параметр репликации: \"%s\""
 
-#: commands/publicationcmds.c:204
+#: commands/publicationcmds.c:205
 #, c-format
 msgid "no schema has been selected for CURRENT_SCHEMA"
 msgstr "для CURRENT_SCHEMA требуется, чтобы была выбрана схема"
 
-#: commands/publicationcmds.c:501
+#: commands/publicationcmds.c:502
 msgid "System columns are not allowed."
 msgstr "Системные столбцы не допускаются."
 
-#: commands/publicationcmds.c:508 commands/publicationcmds.c:513
-#: commands/publicationcmds.c:530
+#: commands/publicationcmds.c:509 commands/publicationcmds.c:514
+#: commands/publicationcmds.c:531
 msgid "User-defined operators are not allowed."
 msgstr "Пользовательские операторы не допускаются."
 
-#: commands/publicationcmds.c:554
+#: commands/publicationcmds.c:555
 msgid ""
 "Only columns, constants, built-in operators, built-in data types, built-in "
 "collations, and immutable built-in functions are allowed."
@@ -10252,43 +10499,43 @@ msgstr ""
 "Допускаются только столбцы, константы, встроенные операторы, встроенные типы "
 "данных, встроенные правила сортировки и встроенные постоянные функции."
 
-#: commands/publicationcmds.c:566
+#: commands/publicationcmds.c:567
 msgid "User-defined types are not allowed."
 msgstr "Пользовательские типы не допускаются."
 
-#: commands/publicationcmds.c:569
+#: commands/publicationcmds.c:570
 msgid "User-defined or built-in mutable functions are not allowed."
 msgstr "Пользовательские или встроенные непостоянные функции не допускаются."
 
-#: commands/publicationcmds.c:572
+#: commands/publicationcmds.c:573
 msgid "User-defined collations are not allowed."
 msgstr "Пользовательские правила сортировки не допускаются."
 
-#: commands/publicationcmds.c:582
+#: commands/publicationcmds.c:583
 #, c-format
 msgid "invalid publication WHERE expression"
 msgstr "неверное выражение в предложении WHERE публикации"
 
-#: commands/publicationcmds.c:635
+#: commands/publicationcmds.c:636
 #, c-format
 msgid "cannot use publication WHERE clause for relation \"%s\""
 msgstr ""
 "использовать в публикации предложение WHERE для отношения \"%s\" нельзя"
 
-#: commands/publicationcmds.c:637
+#: commands/publicationcmds.c:638
 #, c-format
 msgid "WHERE clause cannot be used for a partitioned table when %s is false."
 msgstr ""
 "Предложение WHERE нельзя использовать для секционированной таблицы, когда %s "
 "равен false."
 
-#: commands/publicationcmds.c:708 commands/publicationcmds.c:722
+#: commands/publicationcmds.c:709 commands/publicationcmds.c:723
 #, c-format
 msgid "cannot use column list for relation \"%s.%s\" in publication \"%s\""
 msgstr ""
 "использовать список столбцов отношения \"%s.%s\" в публикации \"%s\" нельзя"
 
-#: commands/publicationcmds.c:711
+#: commands/publicationcmds.c:712
 #, c-format
 msgid ""
 "Column lists cannot be specified in publications containing FOR TABLES IN "
@@ -10297,7 +10544,7 @@ msgstr ""
 "Списки столбцов нельзя задавать в публикациях, содержащих элементы FOR "
 "TABLES IN SCHEMA."
 
-#: commands/publicationcmds.c:725
+#: commands/publicationcmds.c:726
 #, c-format
 msgid ""
 "Column lists cannot be specified for partitioned tables when %s is false."
@@ -10305,34 +10552,34 @@ msgstr ""
 "Списки столбцов нельзя задавать для секционированных таблиц, когда %s равен "
 "false."
 
-#: commands/publicationcmds.c:760
+#: commands/publicationcmds.c:761
 #, c-format
 msgid "must be superuser to create FOR ALL TABLES publication"
 msgstr "для создания публикации всех таблиц нужно быть суперпользователем"
 
-#: commands/publicationcmds.c:831
+#: commands/publicationcmds.c:832
 #, c-format
 msgid "must be superuser to create FOR TABLES IN SCHEMA publication"
 msgstr ""
 "для создания публикации вида FOR ALL TABLES IN SCHEMA нужно быть "
 "суперпользователем"
 
-#: commands/publicationcmds.c:867
+#: commands/publicationcmds.c:868
 #, c-format
 msgid "wal_level is insufficient to publish logical changes"
 msgstr "уровень wal_level недостаточен для публикации логических изменений"
 
-#: commands/publicationcmds.c:868
+#: commands/publicationcmds.c:869
 #, c-format
 msgid "Set wal_level to \"logical\" before creating subscriptions."
 msgstr "Задайте для wal_level значение \"logical\" до создания подписок."
 
-#: commands/publicationcmds.c:964 commands/publicationcmds.c:972
+#: commands/publicationcmds.c:965 commands/publicationcmds.c:973
 #, c-format
 msgid "cannot set parameter \"%s\" to false for publication \"%s\""
 msgstr "параметру \"%s\" публикации \"%s\" нельзя присвоить false"
 
-#: commands/publicationcmds.c:967
+#: commands/publicationcmds.c:968
 #, c-format
 msgid ""
 "The publication contains a WHERE clause for partitioned table \"%s\", which "
@@ -10341,7 +10588,7 @@ msgstr ""
 "Публикация содержит предложение WHERE для секционированной таблицы \"%s\", "
 "что не допускается, когда \"%s\" равен false."
 
-#: commands/publicationcmds.c:975
+#: commands/publicationcmds.c:976
 #, c-format
 msgid ""
 "The publication contains a column list for partitioned table \"%s\", which "
@@ -10350,12 +10597,12 @@ msgstr ""
 "Публикация содержит список столбцов для секционированной таблицы \"%s\", что "
 "не допускается, когда \"%s\" равен false."
 
-#: commands/publicationcmds.c:1298
+#: commands/publicationcmds.c:1299
 #, c-format
 msgid "cannot add schema to publication \"%s\""
 msgstr "добавить схему в публикацию \"%s\" нельзя"
 
-#: commands/publicationcmds.c:1300
+#: commands/publicationcmds.c:1301
 #, c-format
 msgid ""
 "Schemas cannot be added if any tables that specify a column list are already "
@@ -10364,86 +10611,97 @@ msgstr ""
 "Схемы нельзя добавлять в публикацию, если в неё уже добавлены таблицы, для "
 "которых задан список столбцов."
 
-#: commands/publicationcmds.c:1348
+#: commands/publicationcmds.c:1349
 #, c-format
 msgid "must be superuser to add or set schemas"
 msgstr "для добавления или замены схем нужно быть суперпользователем"
 
-#: commands/publicationcmds.c:1357 commands/publicationcmds.c:1365
+#: commands/publicationcmds.c:1358 commands/publicationcmds.c:1366
 #, c-format
 msgid "publication \"%s\" is defined as FOR ALL TABLES"
 msgstr "публикация \"%s\" определена для всех таблиц (FOR ALL TABLES)"
 
-#: commands/publicationcmds.c:1359
+#: commands/publicationcmds.c:1360
 #, c-format
 msgid "Schemas cannot be added to or dropped from FOR ALL TABLES publications."
 msgstr "В публикации вида FOR ALL TABLES нельзя добавлять или удалять таблицы."
 
-#: commands/publicationcmds.c:1367
+#: commands/publicationcmds.c:1368
 #, c-format
 msgid "Tables cannot be added to or dropped from FOR ALL TABLES publications."
 msgstr "В публикации всех таблиц нельзя добавлять или удалять таблицы."
 
-#: commands/publicationcmds.c:1593 commands/publicationcmds.c:1656
+#: commands/publicationcmds.c:1392 commands/publicationcmds.c:1431
+#: commands/publicationcmds.c:1968 utils/cache/lsyscache.c:3592
+#, c-format
+msgid "publication \"%s\" does not exist"
+msgstr "публикация \"%s\" не существует"
+
+#: commands/publicationcmds.c:1594 commands/publicationcmds.c:1657
 #, c-format
 msgid "conflicting or redundant WHERE clauses for table \"%s\""
 msgstr "конфликтующие или избыточные предложения WHERE для таблицы \"%s\""
 
-#: commands/publicationcmds.c:1600 commands/publicationcmds.c:1668
+#: commands/publicationcmds.c:1601 commands/publicationcmds.c:1669
 #, c-format
 msgid "conflicting or redundant column lists for table \"%s\""
 msgstr "конфликтующие или избыточные списки столбцов для таблицы \"%s\""
 
-#: commands/publicationcmds.c:1802
+#: commands/publicationcmds.c:1803
 #, c-format
 msgid "column list must not be specified in ALTER PUBLICATION ... DROP"
 msgstr "в ALTER PUBLICATION ... DROP не должен задаваться список столбцов"
 
-#: commands/publicationcmds.c:1814
+#: commands/publicationcmds.c:1815
 #, c-format
 msgid "relation \"%s\" is not part of the publication"
 msgstr "отношение \"%s\" не включено в публикацию"
 
-#: commands/publicationcmds.c:1821
+#: commands/publicationcmds.c:1822
 #, c-format
 msgid "cannot use a WHERE clause when removing a table from a publication"
 msgstr "использовать WHERE при удалении таблицы из публикации нельзя"
 
-#: commands/publicationcmds.c:1881
+#: commands/publicationcmds.c:1882
 #, c-format
 msgid "tables from schema \"%s\" are not part of the publication"
 msgstr "таблицы из схемы \"%s\" не являются частью публикации"
 
-#: commands/publicationcmds.c:1924 commands/publicationcmds.c:1931
+#: commands/publicationcmds.c:1925 commands/publicationcmds.c:1932
 #, c-format
 msgid "permission denied to change owner of publication \"%s\""
 msgstr "нет прав на изменение владельца публикации \"%s\""
 
-#: commands/publicationcmds.c:1926
+#: commands/publicationcmds.c:1927
 #, c-format
 msgid "The owner of a FOR ALL TABLES publication must be a superuser."
 msgstr ""
 "Владельцем публикации всех таблиц (FOR ALL TABLES) должен быть "
 "суперпользователь."
 
-#: commands/publicationcmds.c:1933
+#: commands/publicationcmds.c:1934
 #, c-format
 msgid "The owner of a FOR TABLES IN SCHEMA publication must be a superuser."
 msgstr ""
 "Владельцем публикации вида FOR TABLES IN SCHEMA должен быть "
 "суперпользователь."
 
-#: commands/schemacmds.c:105 commands/schemacmds.c:270
+#: commands/publicationcmds.c:2000
+#, c-format
+msgid "publication with OID %u does not exist"
+msgstr "публикация с OID %u не существует"
+
+#: commands/schemacmds.c:109 commands/schemacmds.c:289
 #, c-format
 msgid "unacceptable schema name \"%s\""
 msgstr "неприемлемое имя схемы: \"%s\""
 
-#: commands/schemacmds.c:106 commands/schemacmds.c:271
+#: commands/schemacmds.c:110 commands/schemacmds.c:290
 #, c-format
 msgid "The prefix \"pg_\" is reserved for system schemas."
 msgstr "Префикс \"pg_\" зарезервирован для системных схем."
 
-#: commands/schemacmds.c:130
+#: commands/schemacmds.c:134
 #, c-format
 msgid "schema \"%s\" already exists, skipping"
 msgstr "схема \"%s\" уже существует, пропускается"
@@ -10476,30 +10734,30 @@ msgstr "метки безопасности не поддерживаются д
 msgid "cannot set security label on relation \"%s\""
 msgstr "задать метку безопасности для отношения \"%s\" нельзя"
 
-#: commands/sequence.c:755
+#: commands/sequence.c:754
 #, c-format
 msgid "nextval: reached maximum value of sequence \"%s\" (%lld)"
 msgstr ""
 "функция nextval достигла максимума для последовательности \"%s\" (%lld)"
 
-#: commands/sequence.c:774
+#: commands/sequence.c:773
 #, c-format
 msgid "nextval: reached minimum value of sequence \"%s\" (%lld)"
 msgstr "функция nextval достигла минимума для последовательности \"%s\" (%lld)"
 
-#: commands/sequence.c:892
+#: commands/sequence.c:891
 #, c-format
 msgid "currval of sequence \"%s\" is not yet defined in this session"
 msgstr ""
 "текущее значение (currval) для последовательности \"%s\" ещё не определено в "
 "этом сеансе"
 
-#: commands/sequence.c:911 commands/sequence.c:917
+#: commands/sequence.c:910 commands/sequence.c:916
 #, c-format
 msgid "lastval is not yet defined in this session"
 msgstr "последнее значение (lastval) ещё не определено в этом сеансе"
 
-#: commands/sequence.c:997
+#: commands/sequence.c:996
 #, c-format
 msgid "setval: value %lld is out of bounds for sequence \"%s\" (%lld..%lld)"
 msgstr ""
@@ -10603,13 +10861,13 @@ msgstr ""
 msgid "cannot change ownership of identity sequence"
 msgstr "сменить владельца последовательности идентификации нельзя"
 
-#: commands/sequence.c:1679 commands/tablecmds.c:13819
-#: commands/tablecmds.c:16455
+#: commands/sequence.c:1679 commands/tablecmds.c:13891
+#: commands/tablecmds.c:16488
 #, c-format
 msgid "Sequence \"%s\" is linked to table \"%s\"."
 msgstr "Последовательность \"%s\" связана с таблицей \"%s\"."
 
-#: commands/statscmds.c:109 commands/statscmds.c:118 tcop/utility.c:1876
+#: commands/statscmds.c:109 commands/statscmds.c:118 tcop/utility.c:1887
 #, c-format
 msgid "only a single relation is allowed in CREATE STATISTICS"
 msgstr "в CREATE STATISTICS можно указать только одно отношение"
@@ -10619,27 +10877,27 @@ msgstr "в CREATE STATISTICS можно указать только одно о
 msgid "cannot define statistics for relation \"%s\""
 msgstr "для отношения \"%s\" нельзя определить объект статистики"
 
-#: commands/statscmds.c:191
+#: commands/statscmds.c:190
 #, c-format
 msgid "statistics object \"%s\" already exists, skipping"
 msgstr "объект статистики \"%s\" уже существует, пропускается"
 
-#: commands/statscmds.c:199
+#: commands/statscmds.c:198
 #, c-format
 msgid "statistics object \"%s\" already exists"
 msgstr "объект статистики \"%s\" уже существует"
 
-#: commands/statscmds.c:210
+#: commands/statscmds.c:209
 #, c-format
 msgid "cannot have more than %d columns in statistics"
 msgstr "в статистике не может быть больше %d столбцов"
 
-#: commands/statscmds.c:251 commands/statscmds.c:274 commands/statscmds.c:308
+#: commands/statscmds.c:250 commands/statscmds.c:273 commands/statscmds.c:307
 #, c-format
 msgid "statistics creation on system columns is not supported"
 msgstr "создание статистики для системных столбцов не поддерживается"
 
-#: commands/statscmds.c:258 commands/statscmds.c:281
+#: commands/statscmds.c:257 commands/statscmds.c:280
 #, c-format
 msgid ""
 "column \"%s\" cannot be used in statistics because its type %s has no "
@@ -10648,7 +10906,7 @@ msgstr ""
 "столбец \"%s\" нельзя использовать в статистике, так как для его типа %s не "
 "определён класс операторов B-дерева по умолчанию"
 
-#: commands/statscmds.c:325
+#: commands/statscmds.c:324
 #, c-format
 msgid ""
 "expression cannot be used in multivariate statistics because its type %s has "
@@ -10657,7 +10915,7 @@ msgstr ""
 "выражение нельзя использовать в многовариантной статистике, так как для его "
 "типа %s не определён класс операторов btree по умолчанию"
 
-#: commands/statscmds.c:346
+#: commands/statscmds.c:345
 #, c-format
 msgid ""
 "when building statistics on a single expression, statistics kinds may not be "
@@ -10666,71 +10924,76 @@ msgstr ""
 "при построении статистики по единственному выражению указывать виды "
 "статистики нельзя"
 
-#: commands/statscmds.c:375
+#: commands/statscmds.c:374
 #, c-format
 msgid "unrecognized statistics kind \"%s\""
 msgstr "нераспознанный вид статистики \"%s\""
 
-#: commands/statscmds.c:404
+#: commands/statscmds.c:403
 #, c-format
 msgid "extended statistics require at least 2 columns"
 msgstr "для расширенной статистики требуются минимум 2 столбца"
 
-#: commands/statscmds.c:422
+#: commands/statscmds.c:421
 #, c-format
 msgid "duplicate column name in statistics definition"
 msgstr "повторяющееся имя столбца в определении статистики"
 
-#: commands/statscmds.c:457
+#: commands/statscmds.c:456
 #, c-format
 msgid "duplicate expression in statistics definition"
 msgstr "повторяющееся выражение в определении статистики"
 
-#: commands/statscmds.c:620 commands/tablecmds.c:8072
+#: commands/statscmds.c:619 commands/tablecmds.c:8180
 #, c-format
 msgid "statistics target %d is too low"
 msgstr "ориентир статистики слишком мал (%d)"
 
-#: commands/statscmds.c:628 commands/tablecmds.c:8080
+#: commands/statscmds.c:627 commands/tablecmds.c:8188
 #, c-format
 msgid "lowering statistics target to %d"
 msgstr "ориентир статистики снижается до %d"
 
-#: commands/statscmds.c:651
+#: commands/statscmds.c:650
 #, c-format
 msgid "statistics object \"%s.%s\" does not exist, skipping"
 msgstr "объект статистики \"%s.%s\" не существует, пропускается"
 
-#: commands/subscriptioncmds.c:251 commands/subscriptioncmds.c:298
+#: commands/subscriptioncmds.c:271 commands/subscriptioncmds.c:359
 #, c-format
 msgid "unrecognized subscription parameter: \"%s\""
 msgstr "нераспознанный параметр подписки: \"%s\""
 
-#: commands/subscriptioncmds.c:289
+#: commands/subscriptioncmds.c:327 replication/pgoutput/pgoutput.c:398
+#, c-format
+msgid "unrecognized origin value: \"%s\""
+msgstr "нераспознанное значение origin: \"%s\""
+
+#: commands/subscriptioncmds.c:350
 #, c-format
 msgid "invalid WAL location (LSN): %s"
 msgstr "неверная позиция в WAL (LSN): %s"
 
 #. translator: both %s are strings of the form "option = value"
-#: commands/subscriptioncmds.c:313 commands/subscriptioncmds.c:320
-#: commands/subscriptioncmds.c:327 commands/subscriptioncmds.c:349
-#: commands/subscriptioncmds.c:365
+#: commands/subscriptioncmds.c:374 commands/subscriptioncmds.c:381
+#: commands/subscriptioncmds.c:388 commands/subscriptioncmds.c:410
+#: commands/subscriptioncmds.c:426
 #, c-format
 msgid "%s and %s are mutually exclusive options"
 msgstr "указания %s и %s являются взаимоисключающими"
 
 #. translator: both %s are strings of the form "option = value"
-#: commands/subscriptioncmds.c:355 commands/subscriptioncmds.c:371
+#: commands/subscriptioncmds.c:416 commands/subscriptioncmds.c:432
 #, c-format
 msgid "subscription with %s must also set %s"
 msgstr "для подписки с параметром %s необходимо также задать %s"
 
-#: commands/subscriptioncmds.c:433
+#: commands/subscriptioncmds.c:494
 #, c-format
 msgid "could not receive list of publications from the publisher: %s"
 msgstr "не удалось получить список публикаций с публикующего сервера: %s"
 
-#: commands/subscriptioncmds.c:465
+#: commands/subscriptioncmds.c:526
 #, c-format
 msgid "publication %s does not exist on the publisher"
 msgid_plural "publications %s do not exist on the publisher"
@@ -10738,55 +11001,71 @@ msgstr[0] "публикация %s не существует на публику
 msgstr[1] "публикации %s не существуют на публикующем сервере"
 msgstr[2] "публикации %s не существуют на публикующем сервере"
 
-#: commands/subscriptioncmds.c:547
+#: commands/subscriptioncmds.c:614
+#, c-format
+msgid "permission denied to create subscription"
+msgstr "нет прав для создания подписки"
+
+#: commands/subscriptioncmds.c:615
 #, c-format
-msgid "must be superuser to create subscriptions"
-msgstr "длÑ\8f Ñ\81озданиÑ\8f Ð¿Ð¾Ð´Ð¿Ð¸Ñ\81ок Ð½Ñ\83жно Ð±Ñ\8bÑ\82Ñ\8c Ñ\81Ñ\83пеÑ\80полÑ\8cзоваÑ\82елем"
+msgid "Only roles with privileges of the \"%s\" role may create subscriptions."
+msgstr "СоздаваÑ\82Ñ\8c Ð¿Ð¾Ð´Ð¿Ð¸Ñ\81ки Ð¼Ð¾Ð³Ñ\83Ñ\82 Ñ\82олÑ\8cко Ñ\80оли Ñ\81 Ð¿Ñ\80авами Ñ\80оли \"%s\"."
 
-#: commands/subscriptioncmds.c:648 commands/subscriptioncmds.c:776
-#: replication/logical/tablesync.c:1229 replication/logical/worker.c:3738
+#: commands/subscriptioncmds.c:745 commands/subscriptioncmds.c:878
+#: replication/logical/tablesync.c:1309 replication/logical/worker.c:4616
 #, c-format
 msgid "could not connect to the publisher: %s"
 msgstr "не удалось подключиться к серверу публикации: %s"
 
-#: commands/subscriptioncmds.c:717
+#: commands/subscriptioncmds.c:816
 #, c-format
 msgid "created replication slot \"%s\" on publisher"
 msgstr "на сервере публикации создан слот репликации \"%s\""
 
-#. translator: %s is an SQL ALTER statement
-#: commands/subscriptioncmds.c:730
+#: commands/subscriptioncmds.c:828
+#, c-format
+msgid "subscription was created, but is not connected"
+msgstr "подписка создана, но не подключена"
+
+#: commands/subscriptioncmds.c:829
 #, c-format
 msgid ""
-"tables were not subscribed, you will have to run %s to subscribe the tables"
+"To initiate replication, you must manually create the replication slot, "
+"enable the subscription, and refresh the subscription."
 msgstr ""
-"в подписке отсутствуют таблицы; потребуется выполнить %s, чтобы подписаться "
-"на таблицы"
+"Чтобы начать репликацию, вы должны вручную создать слот репликации, включить "
+"подписку, а затем обновить её."
+
+#: commands/subscriptioncmds.c:1096 commands/subscriptioncmds.c:1502
+#: commands/subscriptioncmds.c:1885 utils/cache/lsyscache.c:3642
+#, c-format
+msgid "subscription \"%s\" does not exist"
+msgstr "подписка \"%s\" не существует"
 
-#: commands/subscriptioncmds.c:1033
+#: commands/subscriptioncmds.c:1152
 #, c-format
 msgid "cannot set %s for enabled subscription"
 msgstr "для включённой подписки нельзя задать %s"
 
-#: commands/subscriptioncmds.c:1086
+#: commands/subscriptioncmds.c:1227
 #, c-format
 msgid "cannot enable subscription that does not have a slot name"
 msgstr "включить подписку, для которой не задано имя слота, нельзя"
 
-#: commands/subscriptioncmds.c:1129 commands/subscriptioncmds.c:1180
+#: commands/subscriptioncmds.c:1271 commands/subscriptioncmds.c:1322
 #, c-format
 msgid ""
 "ALTER SUBSCRIPTION with refresh is not allowed for disabled subscriptions"
 msgstr ""
 "ALTER SUBSCRIPTION с обновлением для отключённых подписок не допускается"
 
-#: commands/subscriptioncmds.c:1130
+#: commands/subscriptioncmds.c:1272
 #, c-format
 msgid "Use ALTER SUBSCRIPTION ... SET PUBLICATION ... WITH (refresh = false)."
 msgstr ""
 "Выполните ALTER SUBSCRIPTION ... SET PUBLICATION ... WITH (refresh = false)."
 
-#: commands/subscriptioncmds.c:1139 commands/subscriptioncmds.c:1194
+#: commands/subscriptioncmds.c:1281 commands/subscriptioncmds.c:1336
 #, c-format
 msgid ""
 "ALTER SUBSCRIPTION with refresh and copy_data is not allowed when two_phase "
@@ -10795,7 +11074,7 @@ msgstr ""
 "ALTER SUBSCRIPTION с параметром публикации refresh в режиме copy_data не "
 "допускается, когда включён параметр two_phase"
 
-#: commands/subscriptioncmds.c:1140
+#: commands/subscriptioncmds.c:1282
 #, c-format
 msgid ""
 "Use ALTER SUBSCRIPTION ... SET PUBLICATION with refresh = false, or with "
@@ -10805,13 +11084,13 @@ msgstr ""
 "copy_data = false либо выполните DROP/CREATE SUBSCRIPTION."
 
 #. translator: %s is an SQL ALTER command
-#: commands/subscriptioncmds.c:1182
+#: commands/subscriptioncmds.c:1324
 #, c-format
 msgid "Use %s instead."
 msgstr "Выполните %s."
 
 #. translator: %s is an SQL ALTER command
-#: commands/subscriptioncmds.c:1196
+#: commands/subscriptioncmds.c:1338
 #, c-format
 msgid ""
 "Use %s with refresh = false, or with copy_data = false, or use DROP/CREATE "
@@ -10820,13 +11099,13 @@ msgstr ""
 "Выполните %s с refresh = false или с copy_data = false либо выполните DROP/"
 "CREATE SUBSCRIPTION."
 
-#: commands/subscriptioncmds.c:1218
+#: commands/subscriptioncmds.c:1360
 #, c-format
 msgid ""
 "ALTER SUBSCRIPTION ... REFRESH is not allowed for disabled subscriptions"
 msgstr "ALTER SUBSCRIPTION ... REFRESH для отключённых подписок не допускается"
 
-#: commands/subscriptioncmds.c:1243
+#: commands/subscriptioncmds.c:1385
 #, c-format
 msgid ""
 "ALTER SUBSCRIPTION ... REFRESH with copy_data is not allowed when two_phase "
@@ -10835,7 +11114,7 @@ msgstr ""
 "ALTER SUBSCRIPTION ... REFRESH в режиме copy_data не допускается, когда "
 "включён параметр two_phase"
 
-#: commands/subscriptioncmds.c:1244
+#: commands/subscriptioncmds.c:1386
 #, c-format
 msgid ""
 "Use ALTER SUBSCRIPTION ... REFRESH with copy_data = false, or use DROP/"
@@ -10844,208 +11123,243 @@ msgstr ""
 "Выполните ALTER SUBSCRIPTION ... REFRESH с copy_data = false либо выполните "
 "DROP/CREATE SUBSCRIPTION."
 
-#: commands/subscriptioncmds.c:1263
-#, c-format
-msgid "must be superuser to skip transaction"
-msgstr "чтобы пропустить транзакцию, нужно быть суперпользователем"
-
-#: commands/subscriptioncmds.c:1283
+#: commands/subscriptioncmds.c:1421
 #, c-format
 msgid "skip WAL location (LSN %X/%X) must be greater than origin LSN %X/%X"
 msgstr ""
 "позиция пропуска в WAL (LSN %X/%X) должна быть больше начального LSN %X/%X"
 
-#: commands/subscriptioncmds.c:1363
+#: commands/subscriptioncmds.c:1506
 #, c-format
 msgid "subscription \"%s\" does not exist, skipping"
 msgstr "подписка \"%s\" не существует, пропускается"
 
-#: commands/subscriptioncmds.c:1621
+#: commands/subscriptioncmds.c:1775
 #, c-format
 msgid "dropped replication slot \"%s\" on publisher"
 msgstr "слот репликации \"%s\" удалён на сервере репликации"
 
-#: commands/subscriptioncmds.c:1630 commands/subscriptioncmds.c:1638
+#: commands/subscriptioncmds.c:1784 commands/subscriptioncmds.c:1792
 #, c-format
 msgid "could not drop replication slot \"%s\" on publisher: %s"
 msgstr "слот репликации \"%s\" на сервере публикации не был удалён: %s"
 
-#: commands/subscriptioncmds.c:1672
-#, c-format
-msgid "permission denied to change owner of subscription \"%s\""
-msgstr "нет прав на изменение владельца подписки \"%s\""
-
-#: commands/subscriptioncmds.c:1674
+#: commands/subscriptioncmds.c:1917
 #, c-format
-msgid "The owner of a subscription must be a superuser."
-msgstr "Ð\92ладелÑ\8cÑ\86ем Ð¿Ð¾Ð´Ð¿Ð¸Ñ\81ки Ð´Ð¾Ð»Ð¶ÐµÐ½ Ð±Ñ\8bÑ\82Ñ\8c Ñ\81Ñ\83пеÑ\80полÑ\8cзоваÑ\82елÑ\8c."
+msgid "subscription with OID %u does not exist"
+msgstr "подпиÑ\81ка Ñ\81 OID %u Ð½Ðµ Ñ\81Ñ\83Ñ\89еÑ\81Ñ\82вÑ\83еÑ\82"
 
-#: commands/subscriptioncmds.c:1788
+#: commands/subscriptioncmds.c:1988 commands/subscriptioncmds.c:2113
 #, c-format
 msgid "could not receive list of replicated tables from the publisher: %s"
 msgstr ""
 "не удалось получить список реплицируемых таблиц с сервера репликации: %s"
 
-#: commands/subscriptioncmds.c:1810 replication/logical/tablesync.c:809
-#: replication/pgoutput/pgoutput.c:1062
+#: commands/subscriptioncmds.c:2024
 #, c-format
 msgid ""
-"cannot use different column lists for table \"%s.%s\" in different "
-"publications"
+"subscription \"%s\" requested copy_data with origin = NONE but might copy "
+"data that had a different origin"
 msgstr ""
-"иÑ\81полÑ\8cзоваÑ\82Ñ\8c Ñ\80азлиÑ\87нÑ\8bе Ñ\81пиÑ\81ки Ñ\81Ñ\82олбÑ\86ов Ñ\82аблиÑ\86Ñ\8b \"%s.%s\" Ð² Ñ\80азнÑ\8bÑ\85 "
-"публикациях нельзя"
+"длÑ\8f Ð¿Ð¾Ð´Ð¿Ð¸Ñ\81ки \"%s\" Ð²Ñ\8bбÑ\80ан Ñ\80ежим copy_data Ñ\81 origin = NONE, Ð½Ð¾ Ð² Ð½ÐµÑ\91 Ð¼Ð¾Ð³Ñ\83Ñ\82 "
+"попасть данные из другого источника"
 
-#: commands/subscriptioncmds.c:1860
+#: commands/subscriptioncmds.c:2026
 #, c-format
 msgid ""
-"could not connect to publisher when attempting to drop replication slot "
-"\"%s\": %s"
-msgstr ""
-"не удалось подключиться к серверу публикации для удаления слота репликации "
-"\"%s\": %s"
-
-#. translator: %s is an SQL ALTER command
-#: commands/subscriptioncmds.c:1863
+"The subscription being created subscribes to a publication (%s) that "
+"contains tables that are written to by other subscriptions."
+msgid_plural ""
+"The subscription being created subscribes to publications (%s) that contain "
+"tables that are written to by other subscriptions."
+msgstr[0] ""
+"Создаваемая подписка связана с публикацией (%s), содержащей таблицы, в "
+"которые записывают другие подписки."
+msgstr[1] ""
+"Создаваемая подписка связана с публикациями (%s), содержащими таблицы, в "
+"которые записывают другие подписки."
+msgstr[2] ""
+"Создаваемая подписка связана с публикациями (%s), содержащими таблицы, в "
+"которые записывают другие подписки."
+
+#: commands/subscriptioncmds.c:2029
+#, c-format
+msgid ""
+"Verify that initial data copied from the publisher tables did not come from "
+"other origins."
+msgstr ""
+"Убедитесь, что начальные данные, скопированные из таблиц публикации, "
+"поступили не из других источников."
+
+#: commands/subscriptioncmds.c:2135 replication/logical/tablesync.c:876
+#: replication/pgoutput/pgoutput.c:1115
+#, c-format
+msgid ""
+"cannot use different column lists for table \"%s.%s\" in different "
+"publications"
+msgstr ""
+"использовать различные списки столбцов таблицы \"%s.%s\" в разных "
+"публикациях нельзя"
+
+#: commands/subscriptioncmds.c:2185
+#, c-format
+msgid ""
+"could not connect to publisher when attempting to drop replication slot "
+"\"%s\": %s"
+msgstr ""
+"не удалось подключиться к серверу публикации для удаления слота репликации "
+"\"%s\": %s"
+
+#. translator: %s is an SQL ALTER command
+#: commands/subscriptioncmds.c:2188
 #, c-format
-msgid "Use %s to disassociate the subscription from the slot."
-msgstr "Выполните %s, чтобы отвязать подписку от слота."
+msgid ""
+"Use %s to disable the subscription, and then use %s to disassociate it from "
+"the slot."
+msgstr ""
+"Выполните %s, чтобы отключить подписку, а затем выполните %s, чтобы отвязать "
+"её от слота."
 
-#: commands/subscriptioncmds.c:1893
+#: commands/subscriptioncmds.c:2219
 #, c-format
 msgid "publication name \"%s\" used more than once"
 msgstr "имя публикации \"%s\" используется неоднократно"
 
-#: commands/subscriptioncmds.c:1937
+#: commands/subscriptioncmds.c:2263
 #, c-format
 msgid "publication \"%s\" is already in subscription \"%s\""
 msgstr "публикация \"%s\" уже имеется в подписке \"%s\""
 
-#: commands/subscriptioncmds.c:1951
+#: commands/subscriptioncmds.c:2277
 #, c-format
 msgid "publication \"%s\" is not in subscription \"%s\""
 msgstr "публикация \"%s\" отсутствует в подписке \"%s\""
 
-#: commands/subscriptioncmds.c:1962
+#: commands/subscriptioncmds.c:2288
 #, c-format
 msgid "cannot drop all the publications from a subscription"
 msgstr "удалить все публикации из подписки нельзя"
 
-#: commands/tablecmds.c:245 commands/tablecmds.c:287
+#: commands/subscriptioncmds.c:2345
+#, c-format
+msgid "%s requires a Boolean value or \"parallel\""
+msgstr "%s требует логическое значение или \"parallel\""
+
+#: commands/tablecmds.c:246 commands/tablecmds.c:288
 #, c-format
 msgid "table \"%s\" does not exist"
 msgstr "таблица \"%s\" не существует"
 
-#: commands/tablecmds.c:246 commands/tablecmds.c:288
+#: commands/tablecmds.c:247 commands/tablecmds.c:289
 #, c-format
 msgid "table \"%s\" does not exist, skipping"
 msgstr "таблица \"%s\" не существует, пропускается"
 
-#: commands/tablecmds.c:248 commands/tablecmds.c:290
+#: commands/tablecmds.c:249 commands/tablecmds.c:291
 msgid "Use DROP TABLE to remove a table."
 msgstr "Выполните DROP TABLE для удаления таблицы."
 
-#: commands/tablecmds.c:251
+#: commands/tablecmds.c:252
 #, c-format
 msgid "sequence \"%s\" does not exist"
 msgstr "последовательность \"%s\" не существует"
 
-#: commands/tablecmds.c:252
+#: commands/tablecmds.c:253
 #, c-format
 msgid "sequence \"%s\" does not exist, skipping"
 msgstr "последовательность \"%s\" не существует, пропускается"
 
-#: commands/tablecmds.c:254
+#: commands/tablecmds.c:255
 msgid "Use DROP SEQUENCE to remove a sequence."
 msgstr "Выполните DROP SEQUENCE для удаления последовательности."
 
-#: commands/tablecmds.c:257
+#: commands/tablecmds.c:258
 #, c-format
 msgid "view \"%s\" does not exist"
 msgstr "представление \"%s\" не существует"
 
-#: commands/tablecmds.c:258
+#: commands/tablecmds.c:259
 #, c-format
 msgid "view \"%s\" does not exist, skipping"
 msgstr "представление \"%s\" не существует, пропускается"
 
-#: commands/tablecmds.c:260
+#: commands/tablecmds.c:261
 msgid "Use DROP VIEW to remove a view."
 msgstr "Выполните DROP VIEW для удаления представления."
 
-#: commands/tablecmds.c:263
+#: commands/tablecmds.c:264
 #, c-format
 msgid "materialized view \"%s\" does not exist"
 msgstr "материализованное представление \"%s\" не существует"
 
-#: commands/tablecmds.c:264
+#: commands/tablecmds.c:265
 #, c-format
 msgid "materialized view \"%s\" does not exist, skipping"
 msgstr "материализованное представление \"%s\" не существует, пропускается"
 
-#: commands/tablecmds.c:266
+#: commands/tablecmds.c:267
 msgid "Use DROP MATERIALIZED VIEW to remove a materialized view."
 msgstr ""
 "Выполните DROP MATERIALIZED VIEW для удаления материализованного "
 "представления."
 
-#: commands/tablecmds.c:269 commands/tablecmds.c:293 commands/tablecmds.c:18953
-#: parser/parse_utilcmd.c:2260
+#: commands/tablecmds.c:270 commands/tablecmds.c:294 commands/tablecmds.c:18978
+#: parser/parse_utilcmd.c:2245
 #, c-format
 msgid "index \"%s\" does not exist"
 msgstr "индекс \"%s\" не существует"
 
-#: commands/tablecmds.c:270 commands/tablecmds.c:294
+#: commands/tablecmds.c:271 commands/tablecmds.c:295
 #, c-format
 msgid "index \"%s\" does not exist, skipping"
 msgstr "индекс \"%s\" не существует, пропускается"
 
-#: commands/tablecmds.c:272 commands/tablecmds.c:296
+#: commands/tablecmds.c:273 commands/tablecmds.c:297
 msgid "Use DROP INDEX to remove an index."
 msgstr "Выполните DROP INDEX для удаления индекса."
 
-#: commands/tablecmds.c:277
+#: commands/tablecmds.c:278
 #, c-format
 msgid "\"%s\" is not a type"
 msgstr "\"%s\" - это не тип"
 
-#: commands/tablecmds.c:278
+#: commands/tablecmds.c:279
 msgid "Use DROP TYPE to remove a type."
 msgstr "Выполните DROP TYPE для удаления типа."
 
-#: commands/tablecmds.c:281 commands/tablecmds.c:13658
-#: commands/tablecmds.c:16158
+#: commands/tablecmds.c:282 commands/tablecmds.c:13730
+#: commands/tablecmds.c:16193
 #, c-format
 msgid "foreign table \"%s\" does not exist"
 msgstr "сторонняя таблица \"%s\" не существует"
 
-#: commands/tablecmds.c:282
+#: commands/tablecmds.c:283
 #, c-format
 msgid "foreign table \"%s\" does not exist, skipping"
 msgstr "сторонняя таблица \"%s\" не существует, пропускается"
 
-#: commands/tablecmds.c:284
+#: commands/tablecmds.c:285
 msgid "Use DROP FOREIGN TABLE to remove a foreign table."
 msgstr "Выполните DROP FOREIGN TABLE для удаления сторонней таблицы."
 
-#: commands/tablecmds.c:697
+#: commands/tablecmds.c:700
 #, c-format
 msgid "ON COMMIT can only be used on temporary tables"
 msgstr "ON COMMIT можно использовать только для временных таблиц"
 
-#: commands/tablecmds.c:728
+#: commands/tablecmds.c:731
 #, c-format
 msgid "cannot create temporary table within security-restricted operation"
 msgstr ""
 "в рамках операции с ограничениями по безопасности нельзя создать временную "
 "таблицу"
 
-#: commands/tablecmds.c:764 commands/tablecmds.c:14965
+#: commands/tablecmds.c:767 commands/tablecmds.c:15038
 #, c-format
 msgid "relation \"%s\" would be inherited from more than once"
 msgstr "отношение \"%s\" наследуется неоднократно"
 
-#: commands/tablecmds.c:949
+#: commands/tablecmds.c:955
 #, c-format
 msgid ""
 "specifying a table access method is not supported on a partitioned table"
@@ -11053,47 +11367,47 @@ msgstr ""
 "указание табличного метода доступа для секционированных таблиц не "
 "поддерживаются"
 
-#: commands/tablecmds.c:1042
+#: commands/tablecmds.c:1048
 #, c-format
 msgid "\"%s\" is not partitioned"
 msgstr "отношение \"%s\" не является секционированным"
 
-#: commands/tablecmds.c:1137
+#: commands/tablecmds.c:1142
 #, c-format
 msgid "cannot partition using more than %d columns"
 msgstr "число столбцов в ключе секционирования не может превышать %d"
 
-#: commands/tablecmds.c:1193
+#: commands/tablecmds.c:1198
 #, c-format
 msgid "cannot create foreign partition of partitioned table \"%s\""
 msgstr "создать стороннюю секцию для секционированной таблицы \"%s\" нельзя"
 
-#: commands/tablecmds.c:1195
+#: commands/tablecmds.c:1200
 #, c-format
 msgid "Table \"%s\" contains indexes that are unique."
 msgstr "Таблица \"%s\" содержит индексы, являющиеся уникальными."
 
-#: commands/tablecmds.c:1358
+#: commands/tablecmds.c:1365
 #, c-format
 msgid "DROP INDEX CONCURRENTLY does not support dropping multiple objects"
 msgstr "DROP INDEX CONCURRENTLY не поддерживает удаление нескольких объектов"
 
-#: commands/tablecmds.c:1362
+#: commands/tablecmds.c:1369
 #, c-format
 msgid "DROP INDEX CONCURRENTLY does not support CASCADE"
 msgstr "DROP INDEX CONCURRENTLY не поддерживает режим CASCADE"
 
-#: commands/tablecmds.c:1466
+#: commands/tablecmds.c:1473
 #, c-format
 msgid "cannot drop partitioned index \"%s\" concurrently"
 msgstr "удалить секционированный индекс \"%s\" параллельным способом нельзя"
 
-#: commands/tablecmds.c:1754
+#: commands/tablecmds.c:1761
 #, c-format
 msgid "cannot truncate only a partitioned table"
 msgstr "опустошить собственно секционированную таблицу нельзя"
 
-#: commands/tablecmds.c:1755
+#: commands/tablecmds.c:1762
 #, c-format
 msgid ""
 "Do not specify the ONLY keyword, or use TRUNCATE ONLY on the partitions "
@@ -11102,39 +11416,39 @@ msgstr ""
 "Не указывайте ключевое слово ONLY или выполните TRUNCATE ONLY "
 "непосредственно для секций."
 
-#: commands/tablecmds.c:1827
+#: commands/tablecmds.c:1835
 #, c-format
 msgid "truncate cascades to table \"%s\""
 msgstr "опустошение распространяется на таблицу %s"
 
-#: commands/tablecmds.c:2177
+#: commands/tablecmds.c:2199
 #, c-format
 msgid "cannot truncate foreign table \"%s\""
 msgstr "опустошить стороннюю таблицу \"%s\" нельзя"
 
-#: commands/tablecmds.c:2234
+#: commands/tablecmds.c:2256
 #, c-format
 msgid "cannot truncate temporary tables of other sessions"
 msgstr "временные таблицы других сеансов нельзя опустошить"
 
-#: commands/tablecmds.c:2462 commands/tablecmds.c:14862
+#: commands/tablecmds.c:2488 commands/tablecmds.c:14935
 #, c-format
 msgid "cannot inherit from partitioned table \"%s\""
 msgstr "наследование от секционированной таблицы \"%s\" не допускается"
 
-#: commands/tablecmds.c:2467
+#: commands/tablecmds.c:2493
 #, c-format
 msgid "cannot inherit from partition \"%s\""
 msgstr "наследование от секции \"%s\" не допускается"
 
-#: commands/tablecmds.c:2475 parser/parse_utilcmd.c:2490
-#: parser/parse_utilcmd.c:2632
+#: commands/tablecmds.c:2501 parser/parse_utilcmd.c:2475
+#: parser/parse_utilcmd.c:2617
 #, c-format
 msgid "inherited relation \"%s\" is not a table or foreign table"
 msgstr ""
 "наследуемое отношение \"%s\" не является таблицей или сторонней таблицей"
 
-#: commands/tablecmds.c:2487
+#: commands/tablecmds.c:2513
 #, c-format
 msgid ""
 "cannot create a temporary relation as partition of permanent relation \"%s\""
@@ -11142,74 +11456,74 @@ msgstr ""
 "создать временное отношение в качестве секции постоянного отношения \"%s\" "
 "нельзя"
 
-#: commands/tablecmds.c:2496 commands/tablecmds.c:14841
+#: commands/tablecmds.c:2522 commands/tablecmds.c:14914
 #, c-format
 msgid "cannot inherit from temporary relation \"%s\""
 msgstr "временное отношение \"%s\" не может наследоваться"
 
-#: commands/tablecmds.c:2506 commands/tablecmds.c:14849
+#: commands/tablecmds.c:2532 commands/tablecmds.c:14922
 #, c-format
 msgid "cannot inherit from temporary relation of another session"
 msgstr "наследование от временного отношения другого сеанса невозможно"
 
-#: commands/tablecmds.c:2560
+#: commands/tablecmds.c:2585
 #, c-format
 msgid "merging multiple inherited definitions of column \"%s\""
 msgstr "слияние нескольких наследованных определений столбца \"%s\""
 
-#: commands/tablecmds.c:2568
+#: commands/tablecmds.c:2597
 #, c-format
 msgid "inherited column \"%s\" has a type conflict"
 msgstr "конфликт типов в наследованном столбце \"%s\""
 
-#: commands/tablecmds.c:2570 commands/tablecmds.c:2593
-#: commands/tablecmds.c:2610 commands/tablecmds.c:2866
-#: commands/tablecmds.c:2896 commands/tablecmds.c:2910
+#: commands/tablecmds.c:2599 commands/tablecmds.c:2628
+#: commands/tablecmds.c:2647 commands/tablecmds.c:2919
+#: commands/tablecmds.c:2955 commands/tablecmds.c:2971
 #: parser/parse_coerce.c:2155 parser/parse_coerce.c:2175
 #: parser/parse_coerce.c:2195 parser/parse_coerce.c:2216
 #: parser/parse_coerce.c:2271 parser/parse_coerce.c:2305
 #: parser/parse_coerce.c:2381 parser/parse_coerce.c:2412
 #: parser/parse_coerce.c:2451 parser/parse_coerce.c:2518
-#: parser/parse_param.c:227
+#: parser/parse_param.c:223
 #, c-format
 msgid "%s versus %s"
 msgstr "%s и %s"
 
-#: commands/tablecmds.c:2579
+#: commands/tablecmds.c:2612
 #, c-format
 msgid "inherited column \"%s\" has a collation conflict"
 msgstr "конфликт правил сортировки в наследованном столбце \"%s\""
 
-#: commands/tablecmds.c:2581 commands/tablecmds.c:2878
-#: commands/tablecmds.c:6752
+#: commands/tablecmds.c:2614 commands/tablecmds.c:2935
+#: commands/tablecmds.c:6849
 #, c-format
 msgid "\"%s\" versus \"%s\""
 msgstr "\"%s\" и \"%s\""
 
-#: commands/tablecmds.c:2591
+#: commands/tablecmds.c:2626
 #, c-format
 msgid "inherited column \"%s\" has a storage parameter conflict"
 msgstr "конфликт параметров хранения в наследованном столбце \"%s\""
 
-#: commands/tablecmds.c:2608 commands/tablecmds.c:2908
+#: commands/tablecmds.c:2645 commands/tablecmds.c:2969
 #, c-format
 msgid "column \"%s\" has a compression method conflict"
 msgstr "в столбце \"%s\" возник конфликт методов сжатия"
 
-#: commands/tablecmds.c:2623
+#: commands/tablecmds.c:2661
 #, c-format
 msgid "inherited column \"%s\" has a generation conflict"
 msgstr "конфликт свойства генерирования в наследованном столбце \"%s\""
 
-#: commands/tablecmds.c:2717 commands/tablecmds.c:2772
-#: commands/tablecmds.c:12382 parser/parse_utilcmd.c:1301
-#: parser/parse_utilcmd.c:1344 parser/parse_utilcmd.c:1753
-#: parser/parse_utilcmd.c:1861
+#: commands/tablecmds.c:2767 commands/tablecmds.c:2822
+#: commands/tablecmds.c:12456 parser/parse_utilcmd.c:1298
+#: parser/parse_utilcmd.c:1341 parser/parse_utilcmd.c:1740
+#: parser/parse_utilcmd.c:1848
 #, c-format
 msgid "cannot convert whole-row table reference"
 msgstr "преобразовать ссылку на тип всей строки таблицы нельзя"
 
-#: commands/tablecmds.c:2718 parser/parse_utilcmd.c:1302
+#: commands/tablecmds.c:2768 parser/parse_utilcmd.c:1299
 #, c-format
 msgid ""
 "Generation expression for column \"%s\" contains a whole-row reference to "
@@ -11218,86 +11532,89 @@ msgstr ""
 "Генерирующее выражение столбца \"%s\" ссылается на тип всей строки в таблице "
 "\"%s\"."
 
-#: commands/tablecmds.c:2773 parser/parse_utilcmd.c:1345
+#: commands/tablecmds.c:2823 parser/parse_utilcmd.c:1342
 #, c-format
 msgid "Constraint \"%s\" contains a whole-row reference to table \"%s\"."
 msgstr "Ограничение \"%s\" ссылается на тип всей строки в таблице \"%s\"."
 
-#: commands/tablecmds.c:2852
+#: commands/tablecmds.c:2901
 #, c-format
 msgid "merging column \"%s\" with inherited definition"
 msgstr "слияние столбца \"%s\" с наследованным определением"
 
-#: commands/tablecmds.c:2856
+#: commands/tablecmds.c:2905
 #, c-format
 msgid "moving and merging column \"%s\" with inherited definition"
 msgstr "перемещение и слияние столбца \"%s\" с наследуемым определением"
 
-#: commands/tablecmds.c:2857
+#: commands/tablecmds.c:2906
 #, c-format
 msgid "User-specified column moved to the position of the inherited column."
 msgstr ""
 "Определённый пользователем столбец перемещён в позицию наследуемого столбца."
 
-#: commands/tablecmds.c:2864
+#: commands/tablecmds.c:2917
 #, c-format
 msgid "column \"%s\" has a type conflict"
 msgstr "конфликт типов в столбце \"%s\""
 
-#: commands/tablecmds.c:2876
+#: commands/tablecmds.c:2933
 #, c-format
 msgid "column \"%s\" has a collation conflict"
 msgstr "конфликт правил сортировки в столбце \"%s\""
 
-#: commands/tablecmds.c:2894
+#: commands/tablecmds.c:2953
 #, c-format
 msgid "column \"%s\" has a storage parameter conflict"
 msgstr "конфликт параметров хранения в столбце \"%s\""
 
-#: commands/tablecmds.c:2935
-#, c-format
-msgid "child column \"%s\" specifies generation expression"
-msgstr "для дочернего столбца \"%s\" указано генерирующее выражение"
-
-#: commands/tablecmds.c:2937
-#, c-format
-msgid ""
-"Omit the generation expression in the definition of the child table column "
-"to inherit the generation expression from the parent table."
-msgstr ""
-"Уберите генерирующее выражение из определения столбца в дочерней таблице, "
-"чтобы это выражение наследовалось из родительской."
-
-#: commands/tablecmds.c:2941
+#: commands/tablecmds.c:2999 commands/tablecmds.c:3086
 #, c-format
 msgid "column \"%s\" inherits from generated column but specifies default"
 msgstr ""
 "столбец \"%s\" наследуется от генерируемого столбца, но для него задано "
 "значение по умолчанию"
 
-#: commands/tablecmds.c:2946
+#: commands/tablecmds.c:3004 commands/tablecmds.c:3091
 #, c-format
 msgid "column \"%s\" inherits from generated column but specifies identity"
 msgstr ""
 "столбец \"%s\" наследуется от генерируемого столбца, но для него задано "
 "свойство идентификации"
 
-#: commands/tablecmds.c:3055
+#: commands/tablecmds.c:3012 commands/tablecmds.c:3099
+#, c-format
+msgid "child column \"%s\" specifies generation expression"
+msgstr "для дочернего столбца \"%s\" указано генерирующее выражение"
+
+#: commands/tablecmds.c:3014 commands/tablecmds.c:3101
+#, c-format
+msgid "A child table column cannot be generated unless its parent column is."
+msgstr ""
+"Дочерний столбец может быть генерируемым, только если родительский столбец "
+"является таковым."
+
+#: commands/tablecmds.c:3147
 #, c-format
 msgid "column \"%s\" inherits conflicting generation expressions"
 msgstr "столбец \"%s\" наследует конфликтующие генерирующие выражения"
 
-#: commands/tablecmds.c:3060
+#: commands/tablecmds.c:3149
+#, c-format
+msgid "To resolve the conflict, specify a generation expression explicitly."
+msgstr "Для разрешения конфликта укажите генерирующее выражение явно."
+
+#: commands/tablecmds.c:3153
 #, c-format
 msgid "column \"%s\" inherits conflicting default values"
 msgstr "столбец \"%s\" наследует конфликтующие значения по умолчанию"
 
-#: commands/tablecmds.c:3062
+#: commands/tablecmds.c:3155
 #, c-format
 msgid "To resolve the conflict, specify a default explicitly."
 msgstr "Для решения конфликта укажите желаемое значение по умолчанию."
 
-#: commands/tablecmds.c:3108
+#: commands/tablecmds.c:3205
 #, c-format
 msgid ""
 "check constraint name \"%s\" appears multiple times but with different "
@@ -11306,52 +11623,52 @@ msgstr ""
 "имя ограничения-проверки \"%s\" фигурирует несколько раз, но с разными "
 "выражениями"
 
-#: commands/tablecmds.c:3321
+#: commands/tablecmds.c:3418
 #, c-format
 msgid "cannot move temporary tables of other sessions"
 msgstr "перемещать временные таблицы других сеансов нельзя"
 
-#: commands/tablecmds.c:3391
+#: commands/tablecmds.c:3488
 #, c-format
 msgid "cannot rename column of typed table"
 msgstr "переименовать столбец типизированной таблицы нельзя"
 
-#: commands/tablecmds.c:3410
+#: commands/tablecmds.c:3507
 #, c-format
 msgid "cannot rename columns of relation \"%s\""
 msgstr "переименовывать столбцы отношения \"%s\" нельзя"
 
-#: commands/tablecmds.c:3505
+#: commands/tablecmds.c:3602
 #, c-format
 msgid "inherited column \"%s\" must be renamed in child tables too"
 msgstr ""
 "наследованный столбец \"%s\" должен быть также переименован в дочерних "
 "таблицах"
 
-#: commands/tablecmds.c:3537
+#: commands/tablecmds.c:3634
 #, c-format
 msgid "cannot rename system column \"%s\""
 msgstr "нельзя переименовать системный столбец \"%s\""
 
-#: commands/tablecmds.c:3552
+#: commands/tablecmds.c:3649
 #, c-format
 msgid "cannot rename inherited column \"%s\""
 msgstr "нельзя переименовать наследованный столбец \"%s\""
 
-#: commands/tablecmds.c:3704
+#: commands/tablecmds.c:3801
 #, c-format
 msgid "inherited constraint \"%s\" must be renamed in child tables too"
 msgstr ""
 "наследуемое ограничение \"%s\" должно быть также переименовано в дочерних "
 "таблицах"
 
-#: commands/tablecmds.c:3711
+#: commands/tablecmds.c:3808
 #, c-format
 msgid "cannot rename inherited constraint \"%s\""
 msgstr "нельзя переименовать наследованное ограничение \"%s\""
 
 #. translator: first %s is a SQL command, eg ALTER TABLE
-#: commands/tablecmds.c:4008
+#: commands/tablecmds.c:4105
 #, c-format
 msgid ""
 "cannot %s \"%s\" because it is being used by active queries in this session"
@@ -11360,59 +11677,59 @@ msgstr ""
 "запросами в данном сеансе"
 
 #. translator: first %s is a SQL command, eg ALTER TABLE
-#: commands/tablecmds.c:4017
+#: commands/tablecmds.c:4114
 #, c-format
 msgid "cannot %s \"%s\" because it has pending trigger events"
 msgstr ""
 "нельзя выполнить %s \"%s\", так как с этим объектом связаны отложенные "
 "события триггеров"
 
-#: commands/tablecmds.c:4486
+#: commands/tablecmds.c:4581
 #, c-format
 msgid "cannot alter partition \"%s\" with an incomplete detach"
 msgstr "нельзя изменить секцию \"%s\", которая не полностью отсоединена"
 
-#: commands/tablecmds.c:4679 commands/tablecmds.c:4694
+#: commands/tablecmds.c:4774 commands/tablecmds.c:4789
 #, c-format
 msgid "cannot change persistence setting twice"
 msgstr "изменить характеристику хранения дважды нельзя"
 
-#: commands/tablecmds.c:4715
+#: commands/tablecmds.c:4810
 #, c-format
 msgid "cannot change access method of a partitioned table"
 msgstr "менять метод доступа для секционированной таблицы нельзя"
 
-#: commands/tablecmds.c:4721
+#: commands/tablecmds.c:4816
 #, c-format
 msgid "cannot have multiple SET ACCESS METHOD subcommands"
 msgstr "множественные подкоманды SET ACCESS METHOD не допускаются"
 
-#: commands/tablecmds.c:5476
+#: commands/tablecmds.c:5537
 #, c-format
 msgid "cannot rewrite system relation \"%s\""
 msgstr "перезаписать системное отношение \"%s\" нельзя"
 
-#: commands/tablecmds.c:5482
+#: commands/tablecmds.c:5543
 #, c-format
 msgid "cannot rewrite table \"%s\" used as a catalog table"
 msgstr "перезаписать таблицу \"%s\", используемую как таблицу каталога, нельзя"
 
-#: commands/tablecmds.c:5492
+#: commands/tablecmds.c:5553
 #, c-format
 msgid "cannot rewrite temporary tables of other sessions"
 msgstr "перезаписывать временные таблицы других сеансов нельзя"
 
-#: commands/tablecmds.c:5986
+#: commands/tablecmds.c:6048
 #, c-format
 msgid "column \"%s\" of relation \"%s\" contains null values"
 msgstr "столбец \"%s\" отношения \"%s\" содержит значения NULL"
 
-#: commands/tablecmds.c:6003
+#: commands/tablecmds.c:6065
 #, c-format
 msgid "check constraint \"%s\" of relation \"%s\" is violated by some row"
 msgstr "ограничение-проверку \"%s\" отношения \"%s\" нарушает некоторая строка"
 
-#: commands/tablecmds.c:6022 partitioning/partbounds.c:3404
+#: commands/tablecmds.c:6084 partitioning/partbounds.c:3388
 #, c-format
 msgid ""
 "updated partition constraint for default partition \"%s\" would be violated "
@@ -11421,24 +11738,24 @@ msgstr ""
 "изменённое ограничение секции для секции по умолчанию \"%s\" будет нарушено "
 "некоторыми строками"
 
-#: commands/tablecmds.c:6028
+#: commands/tablecmds.c:6090
 #, c-format
 msgid "partition constraint of relation \"%s\" is violated by some row"
 msgstr "ограничение секции отношения \"%s\" нарушает некоторая строка"
 
 #. translator: %s is a group of some SQL keywords
-#: commands/tablecmds.c:6295
+#: commands/tablecmds.c:6352
 #, c-format
 msgid "ALTER action %s cannot be performed on relation \"%s\""
 msgstr "действие ALTER %s нельзя выполнить с отношением \"%s\""
 
-#: commands/tablecmds.c:6510 commands/tablecmds.c:6517
+#: commands/tablecmds.c:6607 commands/tablecmds.c:6614
 #, c-format
 msgid "cannot alter type \"%s\" because column \"%s.%s\" uses it"
 msgstr ""
 "изменить тип \"%s\" нельзя, так как он задействован в столбце \"%s.%s\""
 
-#: commands/tablecmds.c:6524
+#: commands/tablecmds.c:6621
 #, c-format
 msgid ""
 "cannot alter foreign table \"%s\" because column \"%s.%s\" uses its row type"
@@ -11446,77 +11763,77 @@ msgstr ""
 "изменить стороннюю таблицу \"%s\" нельзя, так как столбец \"%s.%s\" "
 "задействует тип её строки"
 
-#: commands/tablecmds.c:6531
+#: commands/tablecmds.c:6628
 #, c-format
 msgid "cannot alter table \"%s\" because column \"%s.%s\" uses its row type"
 msgstr ""
 "изменить таблицу \"%s\" нельзя, так как столбец \"%s.%s\" задействует тип её "
 "строки"
 
-#: commands/tablecmds.c:6587
+#: commands/tablecmds.c:6684
 #, c-format
 msgid "cannot alter type \"%s\" because it is the type of a typed table"
 msgstr "изменить тип \"%s\", так как это тип типизированной таблицы"
 
-#: commands/tablecmds.c:6589
+#: commands/tablecmds.c:6686
 #, c-format
 msgid "Use ALTER ... CASCADE to alter the typed tables too."
 msgstr ""
 "Чтобы изменить также типизированные таблицы, выполните ALTER ... CASCADE."
 
-#: commands/tablecmds.c:6635
+#: commands/tablecmds.c:6732
 #, c-format
 msgid "type %s is not a composite type"
 msgstr "тип %s не является составным"
 
-#: commands/tablecmds.c:6662
+#: commands/tablecmds.c:6759
 #, c-format
 msgid "cannot add column to typed table"
 msgstr "добавить столбец в типизированную таблицу нельзя"
 
-#: commands/tablecmds.c:6715
+#: commands/tablecmds.c:6812
 #, c-format
 msgid "cannot add column to a partition"
 msgstr "добавить столбец в секцию нельзя"
 
-#: commands/tablecmds.c:6744 commands/tablecmds.c:15092
+#: commands/tablecmds.c:6841 commands/tablecmds.c:15165
 #, c-format
 msgid "child table \"%s\" has different type for column \"%s\""
 msgstr "дочерняя таблица \"%s\" имеет другой тип для столбца \"%s\""
 
-#: commands/tablecmds.c:6750 commands/tablecmds.c:15099
+#: commands/tablecmds.c:6847 commands/tablecmds.c:15172
 #, c-format
 msgid "child table \"%s\" has different collation for column \"%s\""
 msgstr ""
 "дочерняя таблица \"%s\" имеет другое правило сортировки для столбца \"%s\""
 
-#: commands/tablecmds.c:6764
+#: commands/tablecmds.c:6865
 #, c-format
 msgid "merging definition of column \"%s\" for child \"%s\""
 msgstr "объединение определений столбца \"%s\" для потомка \"%s\""
 
-#: commands/tablecmds.c:6807
+#: commands/tablecmds.c:6908
 #, c-format
 msgid "cannot recursively add identity column to table that has child tables"
 msgstr ""
 "добавить столбец идентификации в таблицу, у которой есть дочерние, нельзя"
 
-#: commands/tablecmds.c:7051
+#: commands/tablecmds.c:7159
 #, c-format
 msgid "column must be added to child tables too"
 msgstr "столбец также должен быть добавлен к дочерним таблицам"
 
-#: commands/tablecmds.c:7129
+#: commands/tablecmds.c:7237
 #, c-format
 msgid "column \"%s\" of relation \"%s\" already exists, skipping"
 msgstr "столбец \"%s\" отношения \"%s\" уже существует, пропускается"
 
-#: commands/tablecmds.c:7136
+#: commands/tablecmds.c:7244
 #, c-format
 msgid "column \"%s\" of relation \"%s\" already exists"
 msgstr "столбец \"%s\" отношения \"%s\" уже существует"
 
-#: commands/tablecmds.c:7202 commands/tablecmds.c:12021
+#: commands/tablecmds.c:7310 commands/tablecmds.c:12094
 #, c-format
 msgid ""
 "cannot remove constraint from only the partitioned table when partitions "
@@ -11525,70 +11842,70 @@ msgstr ""
 "удалить ограничение только из секционированной таблицы, когда существуют "
 "секции, нельзя"
 
-#: commands/tablecmds.c:7203 commands/tablecmds.c:7520
-#: commands/tablecmds.c:8517 commands/tablecmds.c:12022
+#: commands/tablecmds.c:7311 commands/tablecmds.c:7628
+#: commands/tablecmds.c:8593 commands/tablecmds.c:12095
 #, c-format
 msgid "Do not specify the ONLY keyword."
 msgstr "Не указывайте ключевое слово ONLY."
 
-#: commands/tablecmds.c:7240 commands/tablecmds.c:7446
-#: commands/tablecmds.c:7588 commands/tablecmds.c:7702
-#: commands/tablecmds.c:7796 commands/tablecmds.c:7855
-#: commands/tablecmds.c:7974 commands/tablecmds.c:8113
-#: commands/tablecmds.c:8183 commands/tablecmds.c:8339
-#: commands/tablecmds.c:12176 commands/tablecmds.c:13681
-#: commands/tablecmds.c:16249
+#: commands/tablecmds.c:7348 commands/tablecmds.c:7554
+#: commands/tablecmds.c:7696 commands/tablecmds.c:7810
+#: commands/tablecmds.c:7904 commands/tablecmds.c:7963
+#: commands/tablecmds.c:8082 commands/tablecmds.c:8221
+#: commands/tablecmds.c:8291 commands/tablecmds.c:8425
+#: commands/tablecmds.c:12249 commands/tablecmds.c:13753
+#: commands/tablecmds.c:16282
 #, c-format
 msgid "cannot alter system column \"%s\""
 msgstr "системный столбец \"%s\" нельзя изменить"
 
-#: commands/tablecmds.c:7246 commands/tablecmds.c:7594
+#: commands/tablecmds.c:7354 commands/tablecmds.c:7702
 #, c-format
 msgid "column \"%s\" of relation \"%s\" is an identity column"
 msgstr "столбец \"%s\" отношения \"%s\" является столбцом идентификации"
 
-#: commands/tablecmds.c:7289
+#: commands/tablecmds.c:7397
 #, c-format
 msgid "column \"%s\" is in a primary key"
 msgstr "столбец \"%s\" входит в первичный ключ"
 
-#: commands/tablecmds.c:7294
+#: commands/tablecmds.c:7402
 #, c-format
 msgid "column \"%s\" is in index used as replica identity"
 msgstr "столбец \"%s\" входит в индекс, используемый для идентификации реплики"
 
-#: commands/tablecmds.c:7317
+#: commands/tablecmds.c:7425
 #, c-format
 msgid "column \"%s\" is marked NOT NULL in parent table"
 msgstr "столбец \"%s\" в родительской таблице помечен как NOT NULL"
 
-#: commands/tablecmds.c:7517 commands/tablecmds.c:9000
+#: commands/tablecmds.c:7625 commands/tablecmds.c:9077
 #, c-format
 msgid "constraint must be added to child tables too"
 msgstr "ограничение также должно быть добавлено к дочерним таблицам"
 
-#: commands/tablecmds.c:7518
+#: commands/tablecmds.c:7626
 #, c-format
 msgid "Column \"%s\" of relation \"%s\" is not already NOT NULL."
 msgstr "Столбец \"%s\" отношения \"%s\" уже имеет свойство NOT NULL."
 
-#: commands/tablecmds.c:7596
+#: commands/tablecmds.c:7704
 #, c-format
 msgid "Use ALTER TABLE ... ALTER COLUMN ... DROP IDENTITY instead."
 msgstr "Вместо этого выполните ALTER TABLE ... ALTER COLUMN ... DROP IDENTITY."
 
-#: commands/tablecmds.c:7601
+#: commands/tablecmds.c:7709
 #, c-format
 msgid "column \"%s\" of relation \"%s\" is a generated column"
 msgstr "столбец \"%s\" отношения \"%s\" является генерируемым"
 
-#: commands/tablecmds.c:7604
+#: commands/tablecmds.c:7712
 #, c-format
 msgid "Use ALTER TABLE ... ALTER COLUMN ... DROP EXPRESSION instead."
 msgstr ""
 "Вместо этого выполните ALTER TABLE ... ALTER COLUMN ... DROP EXPRESSION."
 
-#: commands/tablecmds.c:7713
+#: commands/tablecmds.c:7821
 #, c-format
 msgid ""
 "column \"%s\" of relation \"%s\" must be declared NOT NULL before identity "
@@ -11597,46 +11914,46 @@ msgstr ""
 "столбец \"%s\" отношения \"%s\" должен быть объявлен как NOT NULL, чтобы его "
 "можно было сделать столбцом идентификации"
 
-#: commands/tablecmds.c:7719
+#: commands/tablecmds.c:7827
 #, c-format
 msgid "column \"%s\" of relation \"%s\" is already an identity column"
 msgstr "столбец \"%s\" отношения \"%s\" уже является столбцом идентификации"
 
-#: commands/tablecmds.c:7725
+#: commands/tablecmds.c:7833
 #, c-format
 msgid "column \"%s\" of relation \"%s\" already has a default value"
 msgstr "столбец \"%s\" отношения \"%s\" уже имеет значение по умолчанию"
 
-#: commands/tablecmds.c:7802 commands/tablecmds.c:7863
+#: commands/tablecmds.c:7910 commands/tablecmds.c:7971
 #, c-format
 msgid "column \"%s\" of relation \"%s\" is not an identity column"
 msgstr "столбец \"%s\" отношения \"%s\" не является столбцом идентификации"
 
-#: commands/tablecmds.c:7868
+#: commands/tablecmds.c:7976
 #, c-format
 msgid "column \"%s\" of relation \"%s\" is not an identity column, skipping"
 msgstr ""
 "столбец \"%s\" отношения \"%s\" не является столбцом идентификации, "
 "пропускается"
 
-#: commands/tablecmds.c:7921
+#: commands/tablecmds.c:8029
 #, c-format
 msgid "ALTER TABLE / DROP EXPRESSION must be applied to child tables too"
 msgstr ""
 "ALTER TABLE / DROP EXPRESSION нужно применять также к дочерним таблицам"
 
-#: commands/tablecmds.c:7943
+#: commands/tablecmds.c:8051
 #, c-format
 msgid "cannot drop generation expression from inherited column"
 msgstr "нельзя удалить генерирующее выражение из наследуемого столбца"
 
-#: commands/tablecmds.c:7982
+#: commands/tablecmds.c:8090
 #, c-format
 msgid "column \"%s\" of relation \"%s\" is not a stored generated column"
 msgstr ""
 "столбец \"%s\" отношения \"%s\" не является сохранённым генерируемым столбцом"
 
-#: commands/tablecmds.c:7987
+#: commands/tablecmds.c:8095
 #, c-format
 msgid ""
 "column \"%s\" of relation \"%s\" is not a stored generated column, skipping"
@@ -11644,63 +11961,53 @@ msgstr ""
 "столбец \"%s\" отношения \"%s\" пропускается, так как не является "
 "сохранённым генерируемым столбцом"
 
-#: commands/tablecmds.c:8060
+#: commands/tablecmds.c:8168
 #, c-format
 msgid "cannot refer to non-index column by number"
 msgstr "по номеру можно ссылаться только на столбец в индексе"
 
-#: commands/tablecmds.c:8103
+#: commands/tablecmds.c:8211
 #, c-format
 msgid "column number %d of relation \"%s\" does not exist"
 msgstr "столбец с номером %d отношения \"%s\" не существует"
 
-#: commands/tablecmds.c:8122
+#: commands/tablecmds.c:8230
 #, c-format
 msgid "cannot alter statistics on included column \"%s\" of index \"%s\""
 msgstr "изменить статистику включённого столбца \"%s\" индекса \"%s\" нельзя"
 
-#: commands/tablecmds.c:8127
+#: commands/tablecmds.c:8235
 #, c-format
 msgid "cannot alter statistics on non-expression column \"%s\" of index \"%s\""
 msgstr ""
 "изменить статистику столбца \"%s\" (не выражения) индекса \"%s\" нельзя"
 
-#: commands/tablecmds.c:8129
+#: commands/tablecmds.c:8237
 #, c-format
 msgid "Alter statistics on table column instead."
 msgstr "Вместо этого измените статистику для столбца в таблице."
 
-#: commands/tablecmds.c:8319
-#, c-format
-msgid "invalid storage type \"%s\""
-msgstr "неверный тип хранилища \"%s\""
-
-#: commands/tablecmds.c:8351
-#, c-format
-msgid "column data type %s can only have storage PLAIN"
-msgstr "тип данных столбца %s совместим только с хранилищем PLAIN"
-
-#: commands/tablecmds.c:8396
+#: commands/tablecmds.c:8472
 #, c-format
 msgid "cannot drop column from typed table"
 msgstr "нельзя удалить столбец в типизированной таблице"
 
-#: commands/tablecmds.c:8455
+#: commands/tablecmds.c:8531
 #, c-format
 msgid "column \"%s\" of relation \"%s\" does not exist, skipping"
 msgstr "столбец \"%s\" в таблице\"%s\" не существует, пропускается"
 
-#: commands/tablecmds.c:8468
+#: commands/tablecmds.c:8544
 #, c-format
 msgid "cannot drop system column \"%s\""
 msgstr "нельзя удалить системный столбец \"%s\""
 
-#: commands/tablecmds.c:8478
+#: commands/tablecmds.c:8554
 #, c-format
 msgid "cannot drop inherited column \"%s\""
 msgstr "нельзя удалить наследованный столбец \"%s\""
 
-#: commands/tablecmds.c:8491
+#: commands/tablecmds.c:8567
 #, c-format
 msgid ""
 "cannot drop column \"%s\" because it is part of the partition key of "
@@ -11709,7 +12016,7 @@ msgstr ""
 "удалить столбец \"%s\" нельзя, так как он входит в ключ разбиения отношения "
 "\"%s\""
 
-#: commands/tablecmds.c:8516
+#: commands/tablecmds.c:8592
 #, c-format
 msgid ""
 "cannot drop column from only the partitioned table when partitions exist"
@@ -11717,7 +12024,7 @@ msgstr ""
 "удалить столбец только из секционированной таблицы, когда существуют секции, "
 "нельзя"
 
-#: commands/tablecmds.c:8720
+#: commands/tablecmds.c:8797
 #, c-format
 msgid ""
 "ALTER TABLE / ADD CONSTRAINT USING INDEX is not supported on partitioned "
@@ -11726,14 +12033,14 @@ msgstr ""
 "ALTER TABLE / ADD CONSTRAINT USING INDEX не поддерживается с "
 "секционированными таблицами"
 
-#: commands/tablecmds.c:8745
+#: commands/tablecmds.c:8822
 #, c-format
 msgid ""
 "ALTER TABLE / ADD CONSTRAINT USING INDEX will rename index \"%s\" to \"%s\""
 msgstr ""
 "ALTER TABLE / ADD CONSTRAINT USING INDEX переименует индекс \"%s\" в \"%s\""
 
-#: commands/tablecmds.c:9082
+#: commands/tablecmds.c:9159
 #, c-format
 msgid ""
 "cannot use ONLY for foreign key on partitioned table \"%s\" referencing "
@@ -11742,7 +12049,7 @@ msgstr ""
 "нельзя использовать ONLY для стороннего ключа в секционированной таблице "
 "\"%s\", ссылающегося на отношение \"%s\""
 
-#: commands/tablecmds.c:9088
+#: commands/tablecmds.c:9165
 #, c-format
 msgid ""
 "cannot add NOT VALID foreign key on partitioned table \"%s\" referencing "
@@ -11751,25 +12058,25 @@ msgstr ""
 "нельзя добавить с характеристикой NOT VALID сторонний ключ в "
 "секционированной таблице \"%s\", ссылающийся на отношение \"%s\""
 
-#: commands/tablecmds.c:9091
+#: commands/tablecmds.c:9168
 #, c-format
 msgid "This feature is not yet supported on partitioned tables."
 msgstr ""
 "Эта функциональность с секционированными таблицами пока не поддерживается."
 
-#: commands/tablecmds.c:9098 commands/tablecmds.c:9564
+#: commands/tablecmds.c:9175 commands/tablecmds.c:9631
 #, c-format
 msgid "referenced relation \"%s\" is not a table"
 msgstr "указанный объект \"%s\" не является таблицей"
 
-#: commands/tablecmds.c:9121
+#: commands/tablecmds.c:9198
 #, c-format
 msgid "constraints on permanent tables may reference only permanent tables"
 msgstr ""
 "ограничения в постоянных таблицах могут ссылаться только на постоянные "
 "таблицы"
 
-#: commands/tablecmds.c:9128
+#: commands/tablecmds.c:9205
 #, c-format
 msgid ""
 "constraints on unlogged tables may reference only permanent or unlogged "
@@ -11778,13 +12085,13 @@ msgstr ""
 "ограничения в нежурналируемых таблицах могут ссылаться только на постоянные "
 "или нежурналируемые таблицы"
 
-#: commands/tablecmds.c:9134
+#: commands/tablecmds.c:9211
 #, c-format
 msgid "constraints on temporary tables may reference only temporary tables"
 msgstr ""
 "ограничения во временных таблицах могут ссылаться только на временные таблицы"
 
-#: commands/tablecmds.c:9138
+#: commands/tablecmds.c:9215
 #, c-format
 msgid ""
 "constraints on temporary tables must involve temporary tables of this session"
@@ -11792,7 +12099,7 @@ msgstr ""
 "ограничения во временных таблицах должны ссылаться только на временные "
 "таблицы текущего сеанса"
 
-#: commands/tablecmds.c:9212 commands/tablecmds.c:9218
+#: commands/tablecmds.c:9279 commands/tablecmds.c:9285
 #, c-format
 msgid ""
 "invalid %s action for foreign key constraint containing generated column"
@@ -11800,22 +12107,22 @@ msgstr ""
 "некорректное действие %s для ограничения внешнего ключа, содержащего "
 "генерируемый столбец"
 
-#: commands/tablecmds.c:9234
+#: commands/tablecmds.c:9301
 #, c-format
 msgid "number of referencing and referenced columns for foreign key disagree"
 msgstr "число столбцов в источнике и назначении внешнего ключа не совпадает"
 
-#: commands/tablecmds.c:9341
+#: commands/tablecmds.c:9408
 #, c-format
 msgid "foreign key constraint \"%s\" cannot be implemented"
 msgstr "ограничение внешнего ключа \"%s\" нельзя реализовать"
 
-#: commands/tablecmds.c:9343
+#: commands/tablecmds.c:9410
 #, c-format
 msgid "Key columns \"%s\" and \"%s\" are of incompatible types: %s and %s."
 msgstr "Столбцы ключа \"%s\" и \"%s\" имеют несовместимые типы: %s и %s."
 
-#: commands/tablecmds.c:9500
+#: commands/tablecmds.c:9567
 #, c-format
 msgid ""
 "column \"%s\" referenced in ON DELETE SET action must be part of foreign key"
@@ -11823,40 +12130,40 @@ msgstr ""
 "столбец \"%s\", фигурирующий в действии ON DELETE SET, должен входить во "
 "внешний ключ"
 
-#: commands/tablecmds.c:9773 commands/tablecmds.c:10241
-#: parser/parse_utilcmd.c:795 parser/parse_utilcmd.c:924
+#: commands/tablecmds.c:9841 commands/tablecmds.c:10311
+#: parser/parse_utilcmd.c:791 parser/parse_utilcmd.c:920
 #, c-format
 msgid "foreign key constraints are not supported on foreign tables"
 msgstr "ограничения внешнего ключа для сторонних таблиц не поддерживаются"
 
-#: commands/tablecmds.c:10793 commands/tablecmds.c:11071
-#: commands/tablecmds.c:11978 commands/tablecmds.c:12053
+#: commands/tablecmds.c:10864 commands/tablecmds.c:11142
+#: commands/tablecmds.c:12051 commands/tablecmds.c:12126
 #, c-format
 msgid "constraint \"%s\" of relation \"%s\" does not exist"
 msgstr "ограничение \"%s\" в таблице \"%s\" не существует"
 
-#: commands/tablecmds.c:10800
+#: commands/tablecmds.c:10871
 #, c-format
 msgid "constraint \"%s\" of relation \"%s\" is not a foreign key constraint"
 msgstr "ограничение \"%s\" в таблице \"%s\" не является внешним ключом"
 
-#: commands/tablecmds.c:10838
+#: commands/tablecmds.c:10909
 #, c-format
 msgid "cannot alter constraint \"%s\" on relation \"%s\""
 msgstr "изменить ограничение \"%s\" таблицы \"%s\" нельзя"
 
-#: commands/tablecmds.c:10841
+#: commands/tablecmds.c:10912
 #, c-format
 msgid "Constraint \"%s\" is derived from constraint \"%s\" of relation \"%s\"."
 msgstr ""
 "Ограничение \"%s\" является производным от ограничения \"%s\" таблицы \"%s\"."
 
-#: commands/tablecmds.c:10843
+#: commands/tablecmds.c:10914
 #, c-format
-msgid "You may alter the constraint it derives from, instead."
+msgid "You may alter the constraint it derives from instead."
 msgstr "Вместо этого вы можете изменить родительское ограничение."
 
-#: commands/tablecmds.c:11079
+#: commands/tablecmds.c:11150
 #, c-format
 msgid ""
 "constraint \"%s\" of relation \"%s\" is not a foreign key or check constraint"
@@ -11864,46 +12171,51 @@ msgstr ""
 "ограничение \"%s\" в таблице \"%s\" не является внешним ключом или "
 "ограничением-проверкой"
 
-#: commands/tablecmds.c:11157
+#: commands/tablecmds.c:11227
 #, c-format
 msgid "constraint must be validated on child tables too"
 msgstr "ограничение также должно соблюдаться в дочерних таблицах"
 
-#: commands/tablecmds.c:11241
+#: commands/tablecmds.c:11314
 #, c-format
 msgid "column \"%s\" referenced in foreign key constraint does not exist"
 msgstr "столбец \"%s\", указанный в ограничении внешнего ключа, не существует"
 
-#: commands/tablecmds.c:11246
+#: commands/tablecmds.c:11320
+#, c-format
+msgid "system columns cannot be used in foreign keys"
+msgstr "системные столбцы нельзя использовать во внешних ключах"
+
+#: commands/tablecmds.c:11324
 #, c-format
 msgid "cannot have more than %d keys in a foreign key"
 msgstr "во внешнем ключе не может быть больше %d столбцов"
 
-#: commands/tablecmds.c:11312
+#: commands/tablecmds.c:11389
 #, c-format
 msgid "cannot use a deferrable primary key for referenced table \"%s\""
 msgstr ""
 "использовать откладываемый первичный ключ в целевой внешней таблице \"%s\" "
 "нельзя"
 
-#: commands/tablecmds.c:11329
+#: commands/tablecmds.c:11406
 #, c-format
 msgid "there is no primary key for referenced table \"%s\""
 msgstr "в целевой внешней таблице \"%s\" нет первичного ключа"
 
-#: commands/tablecmds.c:11394
+#: commands/tablecmds.c:11470
 #, c-format
 msgid "foreign key referenced-columns list must not contain duplicates"
 msgstr "в списке столбцов внешнего ключа не должно быть повторений"
 
-#: commands/tablecmds.c:11488
+#: commands/tablecmds.c:11562
 #, c-format
 msgid "cannot use a deferrable unique constraint for referenced table \"%s\""
 msgstr ""
 "использовать откладываемое ограничение уникальности в целевой внешней "
 "таблице \"%s\" нельзя"
 
-#: commands/tablecmds.c:11493
+#: commands/tablecmds.c:11567
 #, c-format
 msgid ""
 "there is no unique constraint matching given keys for referenced table \"%s\""
@@ -11911,27 +12223,27 @@ msgstr ""
 "в целевой внешней таблице \"%s\" нет ограничения уникальности, "
 "соответствующего данным ключам"
 
-#: commands/tablecmds.c:11934
+#: commands/tablecmds.c:12007
 #, c-format
 msgid "cannot drop inherited constraint \"%s\" of relation \"%s\""
 msgstr "удалить наследованное ограничение \"%s\" таблицы \"%s\" нельзя"
 
-#: commands/tablecmds.c:11984
+#: commands/tablecmds.c:12057
 #, c-format
 msgid "constraint \"%s\" of relation \"%s\" does not exist, skipping"
 msgstr "ограничение \"%s\" в таблице \"%s\" не существует, пропускается"
 
-#: commands/tablecmds.c:12160
+#: commands/tablecmds.c:12233
 #, c-format
 msgid "cannot alter column type of typed table"
 msgstr "изменить тип столбца в типизированной таблице нельзя"
 
-#: commands/tablecmds.c:12187
+#: commands/tablecmds.c:12260
 #, c-format
 msgid "cannot alter inherited column \"%s\""
 msgstr "изменить наследованный столбец \"%s\" нельзя"
 
-#: commands/tablecmds.c:12196
+#: commands/tablecmds.c:12269
 #, c-format
 msgid ""
 "cannot alter column \"%s\" because it is part of the partition key of "
@@ -11940,7 +12252,7 @@ msgstr ""
 "изменить столбец \"%s\" нельзя, так как он входит в ключ разбиения отношения "
 "\"%s\""
 
-#: commands/tablecmds.c:12246
+#: commands/tablecmds.c:12319
 #, c-format
 msgid ""
 "result of USING clause for column \"%s\" cannot be cast automatically to "
@@ -11948,45 +12260,45 @@ msgid ""
 msgstr ""
 "результат USING для столбца \"%s\" нельзя автоматически привести к типу %s"
 
-#: commands/tablecmds.c:12249
+#: commands/tablecmds.c:12322
 #, c-format
 msgid "You might need to add an explicit cast."
 msgstr "Возможно, необходимо добавить явное приведение."
 
-#: commands/tablecmds.c:12253
+#: commands/tablecmds.c:12326
 #, c-format
 msgid "column \"%s\" cannot be cast automatically to type %s"
 msgstr "столбец \"%s\" нельзя автоматически привести к типу %s"
 
 # skip-rule: double-colons
 #. translator: USING is SQL, don't translate it
-#: commands/tablecmds.c:12256
+#: commands/tablecmds.c:12329
 #, c-format
 msgid "You might need to specify \"USING %s::%s\"."
 msgstr "Возможно, необходимо указать \"USING %s::%s\"."
 
-#: commands/tablecmds.c:12355
+#: commands/tablecmds.c:12428
 #, c-format
 msgid "cannot alter inherited column \"%s\" of relation \"%s\""
 msgstr "изменить наследованный столбец \"%s\" отношения \"%s\" нельзя"
 
-#: commands/tablecmds.c:12383
+#: commands/tablecmds.c:12457
 #, c-format
 msgid "USING expression contains a whole-row table reference."
 msgstr "Выражение USING ссылается на тип всей строки таблицы."
 
-#: commands/tablecmds.c:12394
+#: commands/tablecmds.c:12468
 #, c-format
 msgid "type of inherited column \"%s\" must be changed in child tables too"
 msgstr ""
 "тип наследованного столбца \"%s\" должен быть изменён и в дочерних таблицах"
 
-#: commands/tablecmds.c:12519
+#: commands/tablecmds.c:12593
 #, c-format
 msgid "cannot alter type of column \"%s\" twice"
 msgstr "нельзя изменить тип столбца \"%s\" дважды"
 
-#: commands/tablecmds.c:12557
+#: commands/tablecmds.c:12631
 #, c-format
 msgid ""
 "generation expression for column \"%s\" cannot be cast automatically to type "
@@ -11995,153 +12307,153 @@ msgstr ""
 "генерирующее выражение для столбца \"%s\" нельзя автоматически привести к "
 "типу %s"
 
-#: commands/tablecmds.c:12562
+#: commands/tablecmds.c:12636
 #, c-format
 msgid "default for column \"%s\" cannot be cast automatically to type %s"
 msgstr ""
 "значение по умолчанию для столбца \"%s\" нельзя автоматически привести к "
 "типу %s"
 
-#: commands/tablecmds.c:12643
+#: commands/tablecmds.c:12717
 #, c-format
 msgid "cannot alter type of a column used by a view or rule"
 msgstr ""
 "изменить тип столбца, задействованного в представлении или правиле, нельзя"
 
-#: commands/tablecmds.c:12644 commands/tablecmds.c:12663
-#: commands/tablecmds.c:12681
+#: commands/tablecmds.c:12718 commands/tablecmds.c:12737
+#: commands/tablecmds.c:12755
 #, c-format
 msgid "%s depends on column \"%s\""
 msgstr "%s зависит от столбца \"%s\""
 
-#: commands/tablecmds.c:12662
+#: commands/tablecmds.c:12736
 #, c-format
 msgid "cannot alter type of a column used in a trigger definition"
 msgstr "изменить тип столбца, задействованного в определении триггера, нельзя"
 
-#: commands/tablecmds.c:12680
+#: commands/tablecmds.c:12754
 #, c-format
 msgid "cannot alter type of a column used in a policy definition"
 msgstr "изменить тип столбца, задействованного в определении политики, нельзя"
 
-#: commands/tablecmds.c:12711
+#: commands/tablecmds.c:12785
 #, c-format
 msgid "cannot alter type of a column used by a generated column"
 msgstr "изменить тип столбца, задействованного в генерируемом столбце, нельзя"
 
-#: commands/tablecmds.c:12712
+#: commands/tablecmds.c:12786
 #, c-format
 msgid "Column \"%s\" is used by generated column \"%s\"."
 msgstr "Столбец \"%s\" используется генерируемым столбцом \"%s\"."
 
-#: commands/tablecmds.c:13789 commands/tablecmds.c:13801
+#: commands/tablecmds.c:13861 commands/tablecmds.c:13873
 #, c-format
 msgid "cannot change owner of index \"%s\""
 msgstr "сменить владельца индекса \"%s\" нельзя"
 
-#: commands/tablecmds.c:13791 commands/tablecmds.c:13803
+#: commands/tablecmds.c:13863 commands/tablecmds.c:13875
 #, c-format
-msgid "Change the ownership of the index's table, instead."
+msgid "Change the ownership of the index's table instead."
 msgstr "Однако возможно сменить владельца таблицы, содержащей этот индекс."
 
-#: commands/tablecmds.c:13817
+#: commands/tablecmds.c:13889
 #, c-format
 msgid "cannot change owner of sequence \"%s\""
 msgstr "сменить владельца последовательности \"%s\" нельзя"
 
-#: commands/tablecmds.c:13831 commands/tablecmds.c:17141
-#: commands/tablecmds.c:17160
+#: commands/tablecmds.c:13903 commands/tablecmds.c:17173
+#: commands/tablecmds.c:17192
 #, c-format
 msgid "Use ALTER TYPE instead."
 msgstr "Используйте ALTER TYPE."
 
-#: commands/tablecmds.c:13840
+#: commands/tablecmds.c:13912
 #, c-format
 msgid "cannot change owner of relation \"%s\""
 msgstr "сменить владельца отношения \"%s\" нельзя"
 
-#: commands/tablecmds.c:14202
+#: commands/tablecmds.c:14274
 #, c-format
 msgid "cannot have multiple SET TABLESPACE subcommands"
 msgstr "в одной инструкции не может быть несколько подкоманд SET TABLESPACE"
 
-#: commands/tablecmds.c:14279
+#: commands/tablecmds.c:14351
 #, c-format
 msgid "cannot set options for relation \"%s\""
 msgstr "задать параметры отношения \"%s\" нельзя"
 
-#: commands/tablecmds.c:14313 commands/view.c:521
+#: commands/tablecmds.c:14385 commands/view.c:445
 #, c-format
 msgid "WITH CHECK OPTION is supported only on automatically updatable views"
 msgstr ""
 "WITH CHECK OPTION поддерживается только с автообновляемыми представлениями"
 
-#: commands/tablecmds.c:14563
+#: commands/tablecmds.c:14635
 #, c-format
 msgid "only tables, indexes, and materialized views exist in tablespaces"
 msgstr ""
 "в табличных пространствах есть только таблицы, индексы и материализованные "
 "представления"
 
-#: commands/tablecmds.c:14575
+#: commands/tablecmds.c:14647
 #, c-format
 msgid "cannot move relations in to or out of pg_global tablespace"
 msgstr "перемещать объекты в/из табличного пространства pg_global нельзя"
 
-#: commands/tablecmds.c:14667
+#: commands/tablecmds.c:14739
 #, c-format
 msgid "aborting because lock on relation \"%s.%s\" is not available"
 msgstr ""
 "обработка прерывается из-за невозможности заблокировать отношение \"%s.%s\""
 
-#: commands/tablecmds.c:14683
+#: commands/tablecmds.c:14755
 #, c-format
 msgid "no matching relations in tablespace \"%s\" found"
 msgstr "в табличном пространстве \"%s\" не найдены подходящие отношения"
 
-#: commands/tablecmds.c:14800
+#: commands/tablecmds.c:14873
 #, c-format
 msgid "cannot change inheritance of typed table"
 msgstr "изменить наследование типизированной таблицы нельзя"
 
-#: commands/tablecmds.c:14805 commands/tablecmds.c:15361
+#: commands/tablecmds.c:14878 commands/tablecmds.c:15396
 #, c-format
 msgid "cannot change inheritance of a partition"
 msgstr "изменить наследование секции нельзя"
 
-#: commands/tablecmds.c:14810
+#: commands/tablecmds.c:14883
 #, c-format
 msgid "cannot change inheritance of partitioned table"
 msgstr "изменить наследование секционированной таблицы нельзя"
 
-#: commands/tablecmds.c:14856
+#: commands/tablecmds.c:14929
 #, c-format
 msgid "cannot inherit to temporary relation of another session"
 msgstr "наследование для временного отношения другого сеанса невозможно"
 
-#: commands/tablecmds.c:14869
+#: commands/tablecmds.c:14942
 #, c-format
 msgid "cannot inherit from a partition"
 msgstr "наследование от секции невозможно"
 
-#: commands/tablecmds.c:14891 commands/tablecmds.c:17794
+#: commands/tablecmds.c:14964 commands/tablecmds.c:17813
 #, c-format
 msgid "circular inheritance not allowed"
 msgstr "циклическое наследование недопустимо"
 
-#: commands/tablecmds.c:14892 commands/tablecmds.c:17795
+#: commands/tablecmds.c:14965 commands/tablecmds.c:17814
 #, c-format
 msgid "\"%s\" is already a child of \"%s\"."
 msgstr "\"%s\" уже является потомком \"%s\"."
 
-#: commands/tablecmds.c:14905
+#: commands/tablecmds.c:14978
 #, c-format
 msgid "trigger \"%s\" prevents table \"%s\" from becoming an inheritance child"
 msgstr ""
 "триггер \"%s\" не позволяет таблице \"%s\" стать потомком в иерархии "
 "наследования"
 
-#: commands/tablecmds.c:14907
+#: commands/tablecmds.c:14980
 #, c-format
 msgid ""
 "ROW triggers with transition tables are not supported in inheritance "
@@ -12150,36 +12462,34 @@ msgstr ""
 "Триггеры ROW с переходными таблицами не поддерживаются в иерархиях "
 "наследования."
 
-#: commands/tablecmds.c:15110
+#: commands/tablecmds.c:15183
 #, c-format
 msgid "column \"%s\" in child table must be marked NOT NULL"
 msgstr "столбец \"%s\" в дочерней таблице должен быть помечен как NOT NULL"
 
-#: commands/tablecmds.c:15119
+#: commands/tablecmds.c:15192
 #, c-format
 msgid "column \"%s\" in child table must be a generated column"
 msgstr "столбец \"%s\" в дочерней таблице должен быть генерируемым"
 
-#: commands/tablecmds.c:15169
+#: commands/tablecmds.c:15197
 #, c-format
-msgid "column \"%s\" in child table has a conflicting generation expression"
-msgstr ""
-"столбец \"%s\" в дочерней таблице содержит конфликтующее генерирующее "
-"выражение"
+msgid "column \"%s\" in child table must not be a generated column"
+msgstr "столбец \"%s\" в дочерней таблице должен быть не генерируемым"
 
-#: commands/tablecmds.c:15197
+#: commands/tablecmds.c:15228
 #, c-format
 msgid "child table is missing column \"%s\""
 msgstr "в дочерней таблице не хватает столбца \"%s\""
 
-#: commands/tablecmds.c:15285
+#: commands/tablecmds.c:15316
 #, c-format
 msgid "child table \"%s\" has different definition for check constraint \"%s\""
 msgstr ""
 "дочерняя таблица \"%s\" содержит другое определение ограничения-проверки "
 "\"%s\""
 
-#: commands/tablecmds.c:15293
+#: commands/tablecmds.c:15324
 #, c-format
 msgid ""
 "constraint \"%s\" conflicts with non-inherited constraint on child table "
@@ -12188,7 +12498,7 @@ msgstr ""
 "ограничение \"%s\" конфликтует с ненаследуемым ограничением дочерней таблицы "
 "\"%s\""
 
-#: commands/tablecmds.c:15304
+#: commands/tablecmds.c:15335
 #, c-format
 msgid ""
 "constraint \"%s\" conflicts with NOT VALID constraint on child table \"%s\""
@@ -12196,82 +12506,82 @@ msgstr ""
 "ограничение \"%s\" конфликтует с непроверенным (NOT VALID) ограничением "
 "дочерней таблицы \"%s\""
 
-#: commands/tablecmds.c:15339
+#: commands/tablecmds.c:15374
 #, c-format
 msgid "child table is missing constraint \"%s\""
 msgstr "в дочерней таблице не хватает ограничения \"%s\""
 
-#: commands/tablecmds.c:15425
+#: commands/tablecmds.c:15460
 #, c-format
 msgid "partition \"%s\" already pending detach in partitioned table \"%s.%s\""
 msgstr ""
 "секция \"%s\" уже ожидает отсоединения от секционированной таблицы \"%s.%s\""
 
-#: commands/tablecmds.c:15454 commands/tablecmds.c:15502
+#: commands/tablecmds.c:15489 commands/tablecmds.c:15537
 #, c-format
 msgid "relation \"%s\" is not a partition of relation \"%s\""
 msgstr "отношение \"%s\" не является секцией отношения \"%s\""
 
-#: commands/tablecmds.c:15508
+#: commands/tablecmds.c:15543
 #, c-format
 msgid "relation \"%s\" is not a parent of relation \"%s\""
 msgstr "отношение \"%s\" не является предком отношения \"%s\""
 
-#: commands/tablecmds.c:15736
+#: commands/tablecmds.c:15771
 #, c-format
 msgid "typed tables cannot inherit"
 msgstr "типизированные таблицы не могут наследоваться"
 
-#: commands/tablecmds.c:15766
+#: commands/tablecmds.c:15801
 #, c-format
 msgid "table is missing column \"%s\""
 msgstr "в таблице не хватает столбца \"%s\""
 
-#: commands/tablecmds.c:15777
+#: commands/tablecmds.c:15812
 #, c-format
 msgid "table has column \"%s\" where type requires \"%s\""
 msgstr "таблица содержит столбец \"%s\", тогда как тип требует \"%s\""
 
-#: commands/tablecmds.c:15786
+#: commands/tablecmds.c:15821
 #, c-format
 msgid "table \"%s\" has different type for column \"%s\""
 msgstr "таблица \"%s\" содержит столбец \"%s\" другого типа"
 
-#: commands/tablecmds.c:15800
+#: commands/tablecmds.c:15835
 #, c-format
 msgid "table has extra column \"%s\""
 msgstr "таблица содержит лишний столбец \"%s\""
 
-#: commands/tablecmds.c:15852
+#: commands/tablecmds.c:15887
 #, c-format
 msgid "\"%s\" is not a typed table"
 msgstr "\"%s\" - это не типизированная таблица"
 
-#: commands/tablecmds.c:16026
+#: commands/tablecmds.c:16061
 #, c-format
 msgid "cannot use non-unique index \"%s\" as replica identity"
 msgstr ""
 "для идентификации реплики нельзя использовать неуникальный индекс \"%s\""
 
-#: commands/tablecmds.c:16032
+#: commands/tablecmds.c:16067
 #, c-format
 msgid "cannot use non-immediate index \"%s\" as replica identity"
 msgstr ""
 "для идентификации реплики нельзя использовать не непосредственный индекс "
 "\"%s\""
 
-#: commands/tablecmds.c:16038
+#: commands/tablecmds.c:16073
 #, c-format
 msgid "cannot use expression index \"%s\" as replica identity"
 msgstr ""
 "для идентификации реплики нельзя использовать индекс с выражением \"%s\""
 
-#: commands/tablecmds.c:16044
+#: commands/tablecmds.c:16079
 #, c-format
 msgid "cannot use partial index \"%s\" as replica identity"
 msgstr "для идентификации реплики нельзя использовать частичный индекс \"%s\""
 
-#: commands/tablecmds.c:16061
+#: commands/tablecmds.c:16096
 #, c-format
 msgid ""
 "index \"%s\" cannot be used as replica identity because column %d is a "
@@ -12280,7 +12590,7 @@ msgstr ""
 "индекс \"%s\" нельзя использовать для идентификации реплики, так как столбец "
 "%d - системный"
 
-#: commands/tablecmds.c:16068
+#: commands/tablecmds.c:16103
 #, c-format
 msgid ""
 "index \"%s\" cannot be used as replica identity because column \"%s\" is "
@@ -12289,13 +12599,13 @@ msgstr ""
 "индекс \"%s\" нельзя использовать для идентификации реплики, так как столбец "
 "\"%s\" допускает NULL"
 
-#: commands/tablecmds.c:16315
+#: commands/tablecmds.c:16348
 #, c-format
 msgid "cannot change logged status of table \"%s\" because it is temporary"
 msgstr ""
 "изменить состояние журналирования таблицы %s нельзя, так как она временная"
 
-#: commands/tablecmds.c:16339
+#: commands/tablecmds.c:16372
 #, c-format
 msgid ""
 "cannot change table \"%s\" to unlogged because it is part of a publication"
@@ -12303,12 +12613,12 @@ msgstr ""
 "таблицу \"%s\" нельзя сделать нежурналируемой, так как она включена в "
 "публикацию"
 
-#: commands/tablecmds.c:16341
+#: commands/tablecmds.c:16374
 #, c-format
 msgid "Unlogged relations cannot be replicated."
 msgstr "Нежурналируемые отношения не поддерживают репликацию."
 
-#: commands/tablecmds.c:16386
+#: commands/tablecmds.c:16419
 #, c-format
 msgid ""
 "could not change table \"%s\" to logged because it references unlogged table "
@@ -12317,7 +12627,7 @@ msgstr ""
 "не удалось сделать таблицу \"%s\" журналируемой, так как она ссылается на "
 "нежурналируемую таблицу \"%s\""
 
-#: commands/tablecmds.c:16396
+#: commands/tablecmds.c:16429
 #, c-format
 msgid ""
 "could not change table \"%s\" to unlogged because it references logged table "
@@ -12326,102 +12636,97 @@ msgstr ""
 "не удалось сделать таблицу \"%s\" нежурналируемой, так как она ссылается на "
 "журналируемую таблицу \"%s\""
 
-#: commands/tablecmds.c:16454
+#: commands/tablecmds.c:16487
 #, c-format
 msgid "cannot move an owned sequence into another schema"
 msgstr "переместить последовательность с владельцем в другую схему нельзя"
 
-#: commands/tablecmds.c:16561
+#: commands/tablecmds.c:16594
 #, c-format
 msgid "relation \"%s\" already exists in schema \"%s\""
 msgstr "отношение \"%s\" уже существует в схеме \"%s\""
 
-#: commands/tablecmds.c:16974
+#: commands/tablecmds.c:17006
 #, c-format
 msgid "\"%s\" is not a table or materialized view"
 msgstr "\"%s\" - это не таблица и не материализованное представление"
 
-#: commands/tablecmds.c:17124
+#: commands/tablecmds.c:17156
 #, c-format
 msgid "\"%s\" is not a composite type"
 msgstr "\"%s\" - это не составной тип"
 
-#: commands/tablecmds.c:17152
+#: commands/tablecmds.c:17184
 #, c-format
 msgid "cannot change schema of index \"%s\""
 msgstr "сменить схему индекса \"%s\" нельзя"
 
-#: commands/tablecmds.c:17154 commands/tablecmds.c:17166
+#: commands/tablecmds.c:17186 commands/tablecmds.c:17198
 #, c-format
 msgid "Change the schema of the table instead."
 msgstr "Однако возможно сменить владельца таблицы."
 
-#: commands/tablecmds.c:17158
+#: commands/tablecmds.c:17190
 #, c-format
 msgid "cannot change schema of composite type \"%s\""
 msgstr "сменить схему составного типа \"%s\" нельзя"
 
-#: commands/tablecmds.c:17164
+#: commands/tablecmds.c:17196
 #, c-format
 msgid "cannot change schema of TOAST table \"%s\""
 msgstr "сменить схему TOAST-таблицы \"%s\" нельзя"
 
-#: commands/tablecmds.c:17201
-#, c-format
-msgid "unrecognized partitioning strategy \"%s\""
-msgstr "нераспознанная стратегия секционирования \"%s\""
-
-#: commands/tablecmds.c:17209
+#: commands/tablecmds.c:17228
 #, c-format
 msgid "cannot use \"list\" partition strategy with more than one column"
 msgstr "стратегия секционирования по списку не поддерживает несколько столбцов"
 
-#: commands/tablecmds.c:17275
+#: commands/tablecmds.c:17294
 #, c-format
 msgid "column \"%s\" named in partition key does not exist"
 msgstr "столбец \"%s\", упомянутый в ключе секционирования, не существует"
 
-#: commands/tablecmds.c:17283
+#: commands/tablecmds.c:17302
 #, c-format
 msgid "cannot use system column \"%s\" in partition key"
 msgstr "системный столбец \"%s\" нельзя использовать в ключе секционирования"
 
-#: commands/tablecmds.c:17294 commands/tablecmds.c:17408
+#: commands/tablecmds.c:17313 commands/tablecmds.c:17427
 #, c-format
 msgid "cannot use generated column in partition key"
 msgstr "генерируемый столбец нельзя использовать в ключе секционирования"
 
-#: commands/tablecmds.c:17295 commands/tablecmds.c:17409 commands/trigger.c:667
-#: rewrite/rewriteHandler.c:912 rewrite/rewriteHandler.c:947
+#: commands/tablecmds.c:17314 commands/tablecmds.c:17428 commands/trigger.c:663
+#: rewrite/rewriteHandler.c:936 rewrite/rewriteHandler.c:971
 #, c-format
 msgid "Column \"%s\" is a generated column."
 msgstr "Столбец \"%s\" является генерируемым."
 
-#: commands/tablecmds.c:17371
+#: commands/tablecmds.c:17390
 #, c-format
 msgid "functions in partition key expression must be marked IMMUTABLE"
 msgstr ""
 "функции в выражении ключа секционирования должны быть помечены как IMMUTABLE"
 
-#: commands/tablecmds.c:17391
+#: commands/tablecmds.c:17410
 #, c-format
 msgid "partition key expressions cannot contain system column references"
 msgstr ""
 "выражения ключей секционирования не могут содержать ссылки на системный "
 "столбец"
 
-#: commands/tablecmds.c:17421
+#: commands/tablecmds.c:17440
 #, c-format
 msgid "cannot use constant expression as partition key"
 msgstr ""
 "в качестве ключа секционирования нельзя использовать константное выражение"
 
-#: commands/tablecmds.c:17442
+#: commands/tablecmds.c:17461
 #, c-format
 msgid "could not determine which collation to use for partition expression"
 msgstr "не удалось определить правило сортировки для выражения секционирования"
 
-#: commands/tablecmds.c:17477
+#: commands/tablecmds.c:17496
 #, c-format
 msgid ""
 "You must specify a hash operator class or define a default hash operator "
@@ -12430,7 +12735,7 @@ msgstr ""
 "Вы должны указать класс операторов хеширования или определить класс "
 "операторов хеширования по умолчанию для этого типа данных."
 
-#: commands/tablecmds.c:17483
+#: commands/tablecmds.c:17502
 #, c-format
 msgid ""
 "You must specify a btree operator class or define a default btree operator "
@@ -12439,27 +12744,27 @@ msgstr ""
 "Вы должны указать класс операторов B-дерева или определить класс операторов "
 "B-дерева по умолчанию для этого типа данных."
 
-#: commands/tablecmds.c:17734
+#: commands/tablecmds.c:17753
 #, c-format
 msgid "\"%s\" is already a partition"
 msgstr "\"%s\" уже является секцией"
 
-#: commands/tablecmds.c:17740
+#: commands/tablecmds.c:17759
 #, c-format
 msgid "cannot attach a typed table as partition"
 msgstr "подключить типизированную таблицу в качестве секции нельзя"
 
-#: commands/tablecmds.c:17756
+#: commands/tablecmds.c:17775
 #, c-format
 msgid "cannot attach inheritance child as partition"
 msgstr "подключить потомок в иерархии наследования в качестве секции нельзя"
 
-#: commands/tablecmds.c:17770
+#: commands/tablecmds.c:17789
 #, c-format
 msgid "cannot attach inheritance parent as partition"
 msgstr "подключить родитель в иерархии наследования в качестве секции нельзя"
 
-#: commands/tablecmds.c:17804
+#: commands/tablecmds.c:17823
 #, c-format
 msgid ""
 "cannot attach a temporary relation as partition of permanent relation \"%s\""
@@ -12467,7 +12772,7 @@ msgstr ""
 "подключить временное отношение в качестве секции постоянного отношения "
 "\"%s\" нельзя"
 
-#: commands/tablecmds.c:17812
+#: commands/tablecmds.c:17831
 #, c-format
 msgid ""
 "cannot attach a permanent relation as partition of temporary relation \"%s\""
@@ -12475,92 +12780,92 @@ msgstr ""
 "подключить постоянное отношение в качестве секции временного отношения "
 "\"%s\" нельзя"
 
-#: commands/tablecmds.c:17820
+#: commands/tablecmds.c:17839
 #, c-format
 msgid "cannot attach as partition of temporary relation of another session"
 msgstr "подключить секцию к временному отношению в другом сеансе нельзя"
 
-#: commands/tablecmds.c:17827
+#: commands/tablecmds.c:17846
 #, c-format
 msgid "cannot attach temporary relation of another session as partition"
 msgstr ""
 "подключить временное отношение из другого сеанса в качестве секции нельзя"
 
-#: commands/tablecmds.c:17847
+#: commands/tablecmds.c:17866
 #, c-format
 msgid "table \"%s\" contains column \"%s\" not found in parent \"%s\""
 msgstr ""
 "таблица \"%s\" содержит столбец \"%s\", отсутствующий в родителе \"%s\""
 
-#: commands/tablecmds.c:17850
+#: commands/tablecmds.c:17869
 #, c-format
 msgid "The new partition may contain only the columns present in parent."
 msgstr ""
 "Новая секция может содержать только столбцы, имеющиеся в родительской "
 "таблице."
 
-#: commands/tablecmds.c:17862
+#: commands/tablecmds.c:17881
 #, c-format
 msgid "trigger \"%s\" prevents table \"%s\" from becoming a partition"
 msgstr "триггер \"%s\" не позволяет сделать таблицу \"%s\" секцией"
 
-#: commands/tablecmds.c:17864
+#: commands/tablecmds.c:17883
 #, c-format
 msgid "ROW triggers with transition tables are not supported on partitions."
 msgstr "Триггеры ROW с переходными таблицами для секций не поддерживаются."
 
-#: commands/tablecmds.c:18043
+#: commands/tablecmds.c:18062
 #, c-format
 msgid ""
 "cannot attach foreign table \"%s\" as partition of partitioned table \"%s\""
 msgstr ""
 "нельзя присоединить стороннюю таблицу \"%s\" в качестве секции таблицы \"%s\""
 
-#: commands/tablecmds.c:18046
+#: commands/tablecmds.c:18065
 #, c-format
 msgid "Partitioned table \"%s\" contains unique indexes."
 msgstr "Секционированная таблица \"%s\" содержит уникальные индексы."
 
-#: commands/tablecmds.c:18357
+#: commands/tablecmds.c:18382
 #, c-format
 msgid "cannot detach partitions concurrently when a default partition exists"
 msgstr ""
 "секции нельзя отсоединять в режиме CONCURRENTLY, когда существует секция по "
 "умолчанию"
 
-#: commands/tablecmds.c:18466
+#: commands/tablecmds.c:18491
 #, c-format
 msgid "partitioned table \"%s\" was removed concurrently"
 msgstr "секционированная таблица \"%s\" была параллельно удалена"
 
-#: commands/tablecmds.c:18472
+#: commands/tablecmds.c:18497
 #, c-format
 msgid "partition \"%s\" was removed concurrently"
 msgstr "секция \"%s\" была параллельно удалена"
 
-#: commands/tablecmds.c:18987 commands/tablecmds.c:19007
-#: commands/tablecmds.c:19027 commands/tablecmds.c:19046
-#: commands/tablecmds.c:19088
+#: commands/tablecmds.c:19012 commands/tablecmds.c:19032
+#: commands/tablecmds.c:19053 commands/tablecmds.c:19072
+#: commands/tablecmds.c:19114
 #, c-format
 msgid "cannot attach index \"%s\" as a partition of index \"%s\""
 msgstr "нельзя присоединить индекс \"%s\" в качестве секции индекса \"%s\""
 
-#: commands/tablecmds.c:18990
+#: commands/tablecmds.c:19015
 #, c-format
 msgid "Index \"%s\" is already attached to another index."
 msgstr "Индекс \"%s\" уже присоединён к другому индексу."
 
-#: commands/tablecmds.c:19010
+#: commands/tablecmds.c:19035
 #, c-format
 msgid "Index \"%s\" is not an index on any partition of table \"%s\"."
 msgstr "Индекс \"%s\" не является индексом какой-либо секции таблицы \"%s\"."
 
-#: commands/tablecmds.c:19030
+#: commands/tablecmds.c:19056
 #, c-format
 msgid "The index definitions do not match."
 msgstr "Определения индексов не совпадают."
 
-#: commands/tablecmds.c:19049
+#: commands/tablecmds.c:19075
 #, c-format
 msgid ""
 "The index \"%s\" belongs to a constraint in table \"%s\" but no constraint "
@@ -12569,169 +12874,172 @@ msgstr ""
 "Индекс \"%s\" принадлежит ограничению в таблице \"%s\", но для индекса "
 "\"%s\" ограничения нет."
 
-#: commands/tablecmds.c:19091
+#: commands/tablecmds.c:19117
 #, c-format
 msgid "Another index is already attached for partition \"%s\"."
 msgstr "К секции \"%s\" уже присоединён другой индекс."
 
-#: commands/tablecmds.c:19321
+#: commands/tablecmds.c:19353
 #, c-format
 msgid "column data type %s does not support compression"
 msgstr "тим данных столбца %s не поддерживает сжатие"
 
-#: commands/tablecmds.c:19328
+#: commands/tablecmds.c:19360
 #, c-format
 msgid "invalid compression method \"%s\""
 msgstr "неверный метод сжатия \"%s\""
 
-#: commands/tablespace.c:199 commands/tablespace.c:665
+#: commands/tablecmds.c:19386
+#, c-format
+msgid "invalid storage type \"%s\""
+msgstr "неверный тип хранилища \"%s\""
+
+#: commands/tablecmds.c:19396
+#, c-format
+msgid "column data type %s can only have storage PLAIN"
+msgstr "тип данных столбца %s совместим только с хранилищем PLAIN"
+
+#: commands/tablespace.c:199 commands/tablespace.c:650
 #, c-format
 msgid "\"%s\" exists but is not a directory"
 msgstr "\"%s\" существует, но это не каталог"
 
-#: commands/tablespace.c:231
+#: commands/tablespace.c:230
 #, c-format
 msgid "permission denied to create tablespace \"%s\""
 msgstr "нет прав на создание табличного пространства \"%s\""
 
-#: commands/tablespace.c:233
+#: commands/tablespace.c:232
 #, c-format
 msgid "Must be superuser to create a tablespace."
 msgstr "Для создания табличного пространства нужно быть суперпользователем."
 
-#: commands/tablespace.c:249
+#: commands/tablespace.c:248
 #, c-format
 msgid "tablespace location cannot contain single quotes"
 msgstr "в пути к табличному пространству не должно быть одинарных кавычек"
 
-#: commands/tablespace.c:262
+#: commands/tablespace.c:261
 #, c-format
 msgid "tablespace location must be an absolute path"
 msgstr "путь к табличному пространству должен быть абсолютным"
 
-#: commands/tablespace.c:274
+#: commands/tablespace.c:273
 #, c-format
 msgid "tablespace location \"%s\" is too long"
 msgstr "путь к табличному пространству \"%s\" слишком длинный"
 
-#: commands/tablespace.c:281
+#: commands/tablespace.c:280
 #, c-format
 msgid "tablespace location should not be inside the data directory"
 msgstr "табличное пространство не должно располагаться внутри каталога данных"
 
-#: commands/tablespace.c:290 commands/tablespace.c:996
+#: commands/tablespace.c:289 commands/tablespace.c:976
 #, c-format
 msgid "unacceptable tablespace name \"%s\""
 msgstr "неприемлемое имя табличного пространства: \"%s\""
 
-#: commands/tablespace.c:292 commands/tablespace.c:997
+#: commands/tablespace.c:291 commands/tablespace.c:977
 #, c-format
 msgid "The prefix \"pg_\" is reserved for system tablespaces."
 msgstr "Префикс \"pg_\" зарезервирован для системных табличных пространств."
 
-#: commands/tablespace.c:311 commands/tablespace.c:1018
+#: commands/tablespace.c:310 commands/tablespace.c:998
 #, c-format
 msgid "tablespace \"%s\" already exists"
 msgstr "табличное пространство \"%s\" уже существует"
 
-#: commands/tablespace.c:329
+#: commands/tablespace.c:326
 #, c-format
 msgid "pg_tablespace OID value not set when in binary upgrade mode"
 msgstr "значение OID в pg_tablespace не задано в режиме двоичного обновления"
 
-#: commands/tablespace.c:441 commands/tablespace.c:979
-#: commands/tablespace.c:1068 commands/tablespace.c:1137
-#: commands/tablespace.c:1283 commands/tablespace.c:1486
+#: commands/tablespace.c:431 commands/tablespace.c:959
+#: commands/tablespace.c:1048 commands/tablespace.c:1117
+#: commands/tablespace.c:1263 commands/tablespace.c:1466
 #, c-format
 msgid "tablespace \"%s\" does not exist"
 msgstr "табличное пространство \"%s\" не существует"
 
-#: commands/tablespace.c:447
+#: commands/tablespace.c:437
 #, c-format
 msgid "tablespace \"%s\" does not exist, skipping"
 msgstr "табличное пространство \"%s\" не существует, пропускается"
 
-#: commands/tablespace.c:473
+#: commands/tablespace.c:463
 #, c-format
 msgid "tablespace \"%s\" cannot be dropped because some objects depend on it"
 msgstr ""
 "табличное пространство \"%s\" нельзя удалить, так как есть зависящие от него "
 "объекты"
 
-#: commands/tablespace.c:540
+#: commands/tablespace.c:530
 #, c-format
 msgid "tablespace \"%s\" is not empty"
 msgstr "табличное пространство \"%s\" не пусто"
 
-#: commands/tablespace.c:632
+#: commands/tablespace.c:617
 #, c-format
 msgid "directory \"%s\" does not exist"
 msgstr "каталог \"%s\" не существует"
 
-#: commands/tablespace.c:633
+#: commands/tablespace.c:618
 #, c-format
 msgid "Create this directory for the tablespace before restarting the server."
 msgstr ""
 "Создайте этот каталог для табличного пространства до перезапуска сервера."
 
-#: commands/tablespace.c:638
+#: commands/tablespace.c:623
 #, c-format
 msgid "could not set permissions on directory \"%s\": %m"
 msgstr "не удалось установить права для каталога \"%s\": %m"
 
-#: commands/tablespace.c:670
+#: commands/tablespace.c:655
 #, c-format
 msgid "directory \"%s\" already in use as a tablespace"
 msgstr "каталог \"%s\" уже используется как табличное пространство"
 
-#: commands/tablespace.c:788 commands/tablespace.c:801
-#: commands/tablespace.c:837 commands/tablespace.c:929 storage/file/fd.c:3255
-#: storage/file/fd.c:3669
-#, c-format
-msgid "could not remove directory \"%s\": %m"
-msgstr "ошибка при удалении каталога \"%s\": %m"
-
-#: commands/tablespace.c:850 commands/tablespace.c:938
+#: commands/tablespace.c:833 commands/tablespace.c:919
 #, c-format
 msgid "could not remove symbolic link \"%s\": %m"
 msgstr "ошибка при удалении символической ссылки \"%s\": %m"
 
-#: commands/tablespace.c:860 commands/tablespace.c:947
+#: commands/tablespace.c:842 commands/tablespace.c:927
 #, c-format
 msgid "\"%s\" is not a directory or symbolic link"
 msgstr "\"%s\" - это не каталог или символическая ссылка"
 
-#: commands/tablespace.c:1142
+#: commands/tablespace.c:1122
 #, c-format
 msgid "Tablespace \"%s\" does not exist."
 msgstr "Табличное пространство \"%s\" не существует."
 
-#: commands/tablespace.c:1588
+#: commands/tablespace.c:1568
 #, c-format
 msgid "directories for tablespace %u could not be removed"
 msgstr "удалить каталоги табличного пространства %u не удалось"
 
-#: commands/tablespace.c:1590
+#: commands/tablespace.c:1570
 #, c-format
 msgid "You can remove the directories manually if necessary."
 msgstr "При необходимости вы можете удалить их вручную."
 
-#: commands/trigger.c:229 commands/trigger.c:240
+#: commands/trigger.c:232 commands/trigger.c:243
 #, c-format
 msgid "\"%s\" is a table"
 msgstr "\"%s\" - это таблица"
 
-#: commands/trigger.c:231 commands/trigger.c:242
+#: commands/trigger.c:234 commands/trigger.c:245
 #, c-format
 msgid "Tables cannot have INSTEAD OF triggers."
 msgstr "У таблиц не может быть триггеров INSTEAD OF."
 
-#: commands/trigger.c:263
+#: commands/trigger.c:266
 #, c-format
 msgid "\"%s\" is a partitioned table"
 msgstr "\"%s\" - секционированная таблица"
 
-#: commands/trigger.c:265
+#: commands/trigger.c:268
 #, c-format
 msgid ""
 "ROW triggers with transition tables are not supported on partitioned tables."
@@ -12739,94 +13047,88 @@ msgstr ""
 "Триггеры ROW с переходными таблицами не поддерживаются в секционированных "
 "таблицах."
 
-#: commands/trigger.c:277 commands/trigger.c:284 commands/trigger.c:455
+#: commands/trigger.c:280 commands/trigger.c:287 commands/trigger.c:451
 #, c-format
 msgid "\"%s\" is a view"
 msgstr "\"%s\" - это представление"
 
-#: commands/trigger.c:279
+#: commands/trigger.c:282
 #, c-format
 msgid "Views cannot have row-level BEFORE or AFTER triggers."
 msgstr "У представлений не может быть строковых триггеров BEFORE/AFTER."
 
-#: commands/trigger.c:286
+#: commands/trigger.c:289
 #, c-format
 msgid "Views cannot have TRUNCATE triggers."
 msgstr "У представлений не может быть триггеров TRUNCATE."
 
-#: commands/trigger.c:294 commands/trigger.c:301 commands/trigger.c:313
-#: commands/trigger.c:448
+#: commands/trigger.c:297 commands/trigger.c:309 commands/trigger.c:444
 #, c-format
 msgid "\"%s\" is a foreign table"
 msgstr "\"%s\" - сторонняя таблица"
 
-#: commands/trigger.c:296
+#: commands/trigger.c:299
 #, c-format
 msgid "Foreign tables cannot have INSTEAD OF triggers."
 msgstr "У сторонних таблиц не может быть триггеров INSTEAD OF."
 
-#: commands/trigger.c:303
-#, c-format
-msgid "Foreign tables cannot have TRUNCATE triggers."
-msgstr "У сторонних таблиц не может быть триггеров TRUNCATE."
-
-#: commands/trigger.c:315
+#: commands/trigger.c:311
 #, c-format
 msgid "Foreign tables cannot have constraint triggers."
 msgstr "У сторонних таблиц не может быть ограничивающих триггеров."
 
-#: commands/trigger.c:320 commands/trigger.c:1375 commands/trigger.c:1482
+#: commands/trigger.c:316 commands/trigger.c:1332 commands/trigger.c:1439
 #, c-format
 msgid "relation \"%s\" cannot have triggers"
 msgstr "в отношении \"%s\" не может быть триггеров"
 
-#: commands/trigger.c:391
+#: commands/trigger.c:387
 #, c-format
 msgid "TRUNCATE FOR EACH ROW triggers are not supported"
 msgstr "триггеры TRUNCATE FOR EACH ROW не поддерживаются"
 
-#: commands/trigger.c:399
+#: commands/trigger.c:395
 #, c-format
 msgid "INSTEAD OF triggers must be FOR EACH ROW"
 msgstr "триггеры INSTEAD OF должны иметь тип FOR EACH ROW"
 
-#: commands/trigger.c:403
+#: commands/trigger.c:399
 #, c-format
 msgid "INSTEAD OF triggers cannot have WHEN conditions"
 msgstr "триггеры INSTEAD OF несовместимы с условиями WHEN"
 
-#: commands/trigger.c:407
+#: commands/trigger.c:403
 #, c-format
 msgid "INSTEAD OF triggers cannot have column lists"
 msgstr "для триггеров INSTEAD OF нельзя задать список столбцов"
 
-#: commands/trigger.c:436
+#: commands/trigger.c:432
 #, c-format
 msgid "ROW variable naming in the REFERENCING clause is not supported"
 msgstr ""
 "указание переменной типа кортеж в предложении REFERENCING не поддерживается"
 
-#: commands/trigger.c:437
+#: commands/trigger.c:433
 #, c-format
 msgid "Use OLD TABLE or NEW TABLE for naming transition tables."
 msgstr "Используйте OLD TABLE или NEW TABLE для именования переходных таблиц."
 
-#: commands/trigger.c:450
+#: commands/trigger.c:446
 #, c-format
 msgid "Triggers on foreign tables cannot have transition tables."
 msgstr "Триггеры сторонних таблиц не могут использовать переходные таблицы."
 
-#: commands/trigger.c:457
+#: commands/trigger.c:453
 #, c-format
 msgid "Triggers on views cannot have transition tables."
 msgstr "Триггеры представлений не могут использовать переходные таблицы."
 
-#: commands/trigger.c:473
+#: commands/trigger.c:469
 #, c-format
 msgid "ROW triggers with transition tables are not supported on partitions"
 msgstr "триггеры ROW с переходными таблицами для секций не поддерживаются"
 
-#: commands/trigger.c:477
+#: commands/trigger.c:473
 #, c-format
 msgid ""
 "ROW triggers with transition tables are not supported on inheritance children"
@@ -12834,17 +13136,17 @@ msgstr ""
 "триггеры ROW с переходными таблицами для потомков в иерархии наследования не "
 "поддерживаются"
 
-#: commands/trigger.c:483
+#: commands/trigger.c:479
 #, c-format
 msgid "transition table name can only be specified for an AFTER trigger"
 msgstr "имя переходной таблицы можно задать только для триггера AFTER"
 
-#: commands/trigger.c:488
+#: commands/trigger.c:484
 #, c-format
 msgid "TRUNCATE triggers with transition tables are not supported"
 msgstr "триггеры TRUNCATE с переходными таблицами не поддерживаются"
 
-#: commands/trigger.c:505
+#: commands/trigger.c:501
 #, c-format
 msgid ""
 "transition tables cannot be specified for triggers with more than one event"
@@ -12852,127 +13154,127 @@ msgstr ""
 "переходные таблицы нельзя задать для триггеров, назначаемых для нескольких "
 "событий"
 
-#: commands/trigger.c:516
+#: commands/trigger.c:512
 #, c-format
 msgid "transition tables cannot be specified for triggers with column lists"
 msgstr "переходные таблицы нельзя задать для триггеров со списками столбцов"
 
-#: commands/trigger.c:533
+#: commands/trigger.c:529
 #, c-format
 msgid "NEW TABLE can only be specified for an INSERT or UPDATE trigger"
 msgstr "NEW TABLE можно задать только для триггеров INSERT или UPDATE"
 
-#: commands/trigger.c:538
+#: commands/trigger.c:534
 #, c-format
 msgid "NEW TABLE cannot be specified multiple times"
 msgstr "NEW TABLE нельзя задать несколько раз"
 
-#: commands/trigger.c:548
+#: commands/trigger.c:544
 #, c-format
 msgid "OLD TABLE can only be specified for a DELETE or UPDATE trigger"
 msgstr "OLD TABLE можно задать только для триггеров DELETE или UPDATE"
 
-#: commands/trigger.c:553
+#: commands/trigger.c:549
 #, c-format
 msgid "OLD TABLE cannot be specified multiple times"
 msgstr "OLD TABLE нельзя задать несколько раз"
 
-#: commands/trigger.c:563
+#: commands/trigger.c:559
 #, c-format
 msgid "OLD TABLE name and NEW TABLE name cannot be the same"
 msgstr "имя OLD TABLE не должно совпадать с именем NEW TABLE"
 
-#: commands/trigger.c:627 commands/trigger.c:640
+#: commands/trigger.c:623 commands/trigger.c:636
 #, c-format
 msgid "statement trigger's WHEN condition cannot reference column values"
 msgstr ""
 "в условии WHEN для операторного триггера нельзя ссылаться на значения "
 "столбцов"
 
-#: commands/trigger.c:632
+#: commands/trigger.c:628
 #, c-format
 msgid "INSERT trigger's WHEN condition cannot reference OLD values"
 msgstr "в условии WHEN для триггера INSERT нельзя ссылаться на значения OLD"
 
-#: commands/trigger.c:645
+#: commands/trigger.c:641
 #, c-format
 msgid "DELETE trigger's WHEN condition cannot reference NEW values"
 msgstr "в условии WHEN для триггера DELETE нельзя ссылаться на значения NEW"
 
-#: commands/trigger.c:650
+#: commands/trigger.c:646
 #, c-format
 msgid "BEFORE trigger's WHEN condition cannot reference NEW system columns"
 msgstr ""
 "в условии WHEN для триггера BEFORE нельзя ссылаться на системные столбцы NEW"
 
-#: commands/trigger.c:658 commands/trigger.c:666
+#: commands/trigger.c:654 commands/trigger.c:662
 #, c-format
 msgid "BEFORE trigger's WHEN condition cannot reference NEW generated columns"
 msgstr ""
 "в условии WHEN для триггера BEFORE нельзя ссылаться на генерируемые столбцы "
 "NEW"
 
-#: commands/trigger.c:659
+#: commands/trigger.c:655
 #, c-format
 msgid "A whole-row reference is used and the table contains generated columns."
 msgstr ""
 "Используется ссылка на всю строку таблицы, а таблица содержит генерируемые "
 "столбцы."
 
-#: commands/trigger.c:774 commands/trigger.c:1657
+#: commands/trigger.c:770 commands/trigger.c:1614
 #, c-format
 msgid "trigger \"%s\" for relation \"%s\" already exists"
 msgstr "триггер \"%s\" для отношения \"%s\" уже существует"
 
-#: commands/trigger.c:787
+#: commands/trigger.c:783
 #, c-format
 msgid "trigger \"%s\" for relation \"%s\" is an internal or a child trigger"
 msgstr "триггер \"%s\" для отношения \"%s\" является внутренним или дочерним"
 
-#: commands/trigger.c:806
+#: commands/trigger.c:802
 #, c-format
 msgid "trigger \"%s\" for relation \"%s\" is a constraint trigger"
 msgstr ""
 "триггер \"%s\" для отношения \"%s\" является триггером, реализующим "
 "ограничение"
 
-#: commands/trigger.c:1447 commands/trigger.c:1600 commands/trigger.c:1876
+#: commands/trigger.c:1404 commands/trigger.c:1557 commands/trigger.c:1838
 #, c-format
 msgid "trigger \"%s\" for table \"%s\" does not exist"
 msgstr "триггер \"%s\" для таблицы \"%s\" не существует"
 
-#: commands/trigger.c:1572
+#: commands/trigger.c:1529
 #, c-format
 msgid "cannot rename trigger \"%s\" on table \"%s\""
 msgstr "переименовать триггер \"%s\" в таблице \"%s\" нельзя"
 
-#: commands/trigger.c:1574
+#: commands/trigger.c:1531
 #, c-format
 msgid "Rename the trigger on the partitioned table \"%s\" instead."
 msgstr "Однако можно переименовать триггер в секционированной таблице \"%s\"."
 
-#: commands/trigger.c:1674
+#: commands/trigger.c:1631
 #, c-format
 msgid "renamed trigger \"%s\" on relation \"%s\""
 msgstr "триггер \"%s\" в отношении \"%s\" переименован"
 
-#: commands/trigger.c:1816
+#: commands/trigger.c:1777
 #, c-format
 msgid "permission denied: \"%s\" is a system trigger"
 msgstr "нет доступа: \"%s\" - это системный триггер"
 
-#: commands/trigger.c:2437
+#: commands/trigger.c:2386
 #, c-format
 msgid "trigger function %u returned null value"
 msgstr "триггерная функция %u вернула значение NULL"
 
-#: commands/trigger.c:2497 commands/trigger.c:2715 commands/trigger.c:2965
-#: commands/trigger.c:3298
+#: commands/trigger.c:2446 commands/trigger.c:2664 commands/trigger.c:2917
+#: commands/trigger.c:3252
 #, c-format
 msgid "BEFORE STATEMENT trigger cannot return a value"
 msgstr "триггер BEFORE STATEMENT не может возвращать значение"
 
-#: commands/trigger.c:2573
+#: commands/trigger.c:2522
 #, c-format
 msgid ""
 "moving row to another partition during a BEFORE FOR EACH ROW trigger is not "
@@ -12980,7 +13282,7 @@ msgid ""
 msgstr ""
 "в триггере BEFORE FOR EACH ROW нельзя перемещать строку в другую секцию"
 
-#: commands/trigger.c:2574
+#: commands/trigger.c:2523
 #, c-format
 msgid ""
 "Before executing trigger \"%s\", the row was to be in partition \"%s.%s\"."
@@ -12988,8 +13290,8 @@ msgstr ""
 "До выполнения триггера \"%s\" строка должна была находиться в секции \"%s."
 "%s\"."
 
-#: commands/trigger.c:3372 executor/nodeModifyTable.c:2349
-#: executor/nodeModifyTable.c:2432
+#: commands/trigger.c:3329 executor/nodeModifyTable.c:2363
+#: executor/nodeModifyTable.c:2446
 #, c-format
 msgid ""
 "tuple to be updated was already modified by an operation triggered by the "
@@ -12998,9 +13300,9 @@ msgstr ""
 "кортеж, который должен быть изменён, уже модифицирован в операции, вызванной "
 "текущей командой"
 
-#: commands/trigger.c:3373 executor/nodeModifyTable.c:1535
-#: executor/nodeModifyTable.c:1609 executor/nodeModifyTable.c:2350
-#: executor/nodeModifyTable.c:2433 executor/nodeModifyTable.c:3091
+#: commands/trigger.c:3330 executor/nodeModifyTable.c:1531
+#: executor/nodeModifyTable.c:1605 executor/nodeModifyTable.c:2364
+#: executor/nodeModifyTable.c:2447 executor/nodeModifyTable.c:3078
 #, c-format
 msgid ""
 "Consider using an AFTER trigger instead of a BEFORE trigger to propagate "
@@ -13009,17 +13311,17 @@ msgstr ""
 "Возможно, для распространения изменений в другие строки следует использовать "
 "триггер AFTER вместо BEFORE."
 
-#: commands/trigger.c:3402 executor/nodeLockRows.c:229
-#: executor/nodeLockRows.c:238 executor/nodeModifyTable.c:331
-#: executor/nodeModifyTable.c:1551 executor/nodeModifyTable.c:2367
-#: executor/nodeModifyTable.c:2577
+#: commands/trigger.c:3371 executor/nodeLockRows.c:228
+#: executor/nodeLockRows.c:237 executor/nodeModifyTable.c:308
+#: executor/nodeModifyTable.c:1547 executor/nodeModifyTable.c:2381
+#: executor/nodeModifyTable.c:2589
 #, c-format
 msgid "could not serialize access due to concurrent update"
 msgstr "не удалось сериализовать доступ из-за параллельного изменения"
 
-#: commands/trigger.c:3410 executor/nodeModifyTable.c:1641
-#: executor/nodeModifyTable.c:2450 executor/nodeModifyTable.c:2601
-#: executor/nodeModifyTable.c:2957
+#: commands/trigger.c:3379 executor/nodeModifyTable.c:1637
+#: executor/nodeModifyTable.c:2464 executor/nodeModifyTable.c:2613
+#: executor/nodeModifyTable.c:2966
 #, c-format
 msgid "could not serialize access due to concurrent delete"
 msgstr "не удалось сериализовать доступ из-за параллельного удаления"
@@ -13117,22 +13419,22 @@ msgstr "указать и PARSER, и COPY одновременно нельзя"
 msgid "text search parser is required"
 msgstr "требуется анализатор текстового поиска"
 
-#: commands/tsearchcmds.c:1200
+#: commands/tsearchcmds.c:1241
 #, c-format
 msgid "token type \"%s\" does not exist"
 msgstr "тип фрагмента \"%s\" не существует"
 
-#: commands/tsearchcmds.c:1427
+#: commands/tsearchcmds.c:1501
 #, c-format
 msgid "mapping for token type \"%s\" does not exist"
 msgstr "сопоставление для типа фрагмента \"%s\" не существует"
 
-#: commands/tsearchcmds.c:1433
+#: commands/tsearchcmds.c:1507
 #, c-format
 msgid "mapping for token type \"%s\" does not exist, skipping"
 msgstr "сопоставление для типа фрагмента \"%s\" не существует, пропускается"
 
-#: commands/tsearchcmds.c:1596 commands/tsearchcmds.c:1711
+#: commands/tsearchcmds.c:1670 commands/tsearchcmds.c:1785
 #, c-format
 msgid "invalid parameter list format: \"%s\""
 msgstr "неверный формат списка параметров: \"%s\""
@@ -13151,7 +13453,7 @@ msgstr ""
 "Создайте тип в виде оболочки, затем определите для него функции ввода-вывода "
 "и в завершение выполните полноценную команду CREATE TYPE."
 
-#: commands/typecmds.c:327 commands/typecmds.c:1450 commands/typecmds.c:4268
+#: commands/typecmds.c:327 commands/typecmds.c:1450 commands/typecmds.c:4257
 #, c-format
 msgid "type attribute \"%s\" not recognized"
 msgstr "атрибут типа \"%s\" не распознан"
@@ -13171,7 +13473,7 @@ msgstr "типом элемента массива не может быть %s"
 msgid "alignment \"%s\" not recognized"
 msgstr "тип выравнивания \"%s\" не распознан"
 
-#: commands/typecmds.c:450 commands/typecmds.c:4142
+#: commands/typecmds.c:450 commands/typecmds.c:4131
 #, c-format
 msgid "storage \"%s\" not recognized"
 msgstr "неизвестная стратегия хранения \"%s\""
@@ -13222,33 +13524,33 @@ msgid "check constraints for domains cannot be marked NO INHERIT"
 msgstr ""
 "ограничения-проверки для доменов не могут иметь характеристики NO INHERIT"
 
-#: commands/typecmds.c:976 commands/typecmds.c:2960
+#: commands/typecmds.c:976 commands/typecmds.c:2956
 #, c-format
 msgid "unique constraints not possible for domains"
 msgstr "ограничения уникальности невозможны для доменов"
 
-#: commands/typecmds.c:982 commands/typecmds.c:2966
+#: commands/typecmds.c:982 commands/typecmds.c:2962
 #, c-format
 msgid "primary key constraints not possible for domains"
 msgstr "ограничения первичного ключа невозможны для доменов"
 
-#: commands/typecmds.c:988 commands/typecmds.c:2972
+#: commands/typecmds.c:988 commands/typecmds.c:2968
 #, c-format
 msgid "exclusion constraints not possible for domains"
 msgstr "ограничения-исключения невозможны для доменов"
 
-#: commands/typecmds.c:994 commands/typecmds.c:2978
+#: commands/typecmds.c:994 commands/typecmds.c:2974
 #, c-format
 msgid "foreign key constraints not possible for domains"
 msgstr "ограничения внешних ключей невозможны для доменов"
 
-#: commands/typecmds.c:1003 commands/typecmds.c:2987
+#: commands/typecmds.c:1003 commands/typecmds.c:2983
 #, c-format
 msgid "specifying constraint deferrability not supported for domains"
 msgstr ""
 "возможность определения отложенных ограничений для доменов не поддерживается"
 
-#: commands/typecmds.c:1317 utils/cache/typcache.c:2567
+#: commands/typecmds.c:1317 utils/cache/typcache.c:2561
 #, c-format
 msgid "%s is not an enum"
 msgstr "\"%s\" не является перечислением"
@@ -13286,96 +13588,96 @@ msgstr ""
 "Создайте тип в виде оболочки, затем определите для него функции приведения к "
 "каноническому виду и в завершение выполните полноценную команду CREATE TYPE."
 
-#: commands/typecmds.c:1966
+#: commands/typecmds.c:1965
 #, c-format
 msgid "type input function %s has multiple matches"
 msgstr "функция ввода типа %s присутствует в нескольких экземплярах"
 
-#: commands/typecmds.c:1984
+#: commands/typecmds.c:1983
 #, c-format
 msgid "type input function %s must return type %s"
 msgstr "функция ввода типа %s должна возвращать тип %s"
 
-#: commands/typecmds.c:2000
+#: commands/typecmds.c:1999
 #, c-format
 msgid "type input function %s should not be volatile"
 msgstr "функция ввода типа %s не должна быть изменчивой"
 
-#: commands/typecmds.c:2028
+#: commands/typecmds.c:2027
 #, c-format
 msgid "type output function %s must return type %s"
 msgstr "функция вывода типа %s должна возвращать тип %s"
 
-#: commands/typecmds.c:2035
+#: commands/typecmds.c:2034
 #, c-format
 msgid "type output function %s should not be volatile"
 msgstr "функция вывода типа %s не должна быть изменчивой"
 
-#: commands/typecmds.c:2064
+#: commands/typecmds.c:2063
 #, c-format
 msgid "type receive function %s has multiple matches"
 msgstr "функция получения типа %s присутствует в нескольких экземплярах"
 
-#: commands/typecmds.c:2082
+#: commands/typecmds.c:2081
 #, c-format
 msgid "type receive function %s must return type %s"
 msgstr "функция получения типа %s должна возвращать тип %s"
 
-#: commands/typecmds.c:2089
+#: commands/typecmds.c:2088
 #, c-format
 msgid "type receive function %s should not be volatile"
 msgstr "функция получения типа %s не должна быть изменчивой"
 
-#: commands/typecmds.c:2117
+#: commands/typecmds.c:2116
 #, c-format
 msgid "type send function %s must return type %s"
 msgstr "функция отправки типа %s должна возвращать тип %s"
 
-#: commands/typecmds.c:2124
+#: commands/typecmds.c:2123
 #, c-format
 msgid "type send function %s should not be volatile"
 msgstr "функция отправки типа %s не должна быть изменчивой"
 
-#: commands/typecmds.c:2151
+#: commands/typecmds.c:2150
 #, c-format
 msgid "typmod_in function %s must return type %s"
 msgstr "функция TYPMOD_IN %s должна возвращать тип %s"
 
-#: commands/typecmds.c:2158
+#: commands/typecmds.c:2157
 #, c-format
 msgid "type modifier input function %s should not be volatile"
 msgstr "функция ввода модификатора типа %s не должна быть изменчивой"
 
-#: commands/typecmds.c:2185
+#: commands/typecmds.c:2184
 #, c-format
 msgid "typmod_out function %s must return type %s"
 msgstr "функция TYPMOD_OUT %s должна возвращать тип %s"
 
-#: commands/typecmds.c:2192
+#: commands/typecmds.c:2191
 #, c-format
 msgid "type modifier output function %s should not be volatile"
 msgstr "функция вывода модификатора типа %s не должна быть изменчивой"
 
-#: commands/typecmds.c:2219
+#: commands/typecmds.c:2218
 #, c-format
 msgid "type analyze function %s must return type %s"
 msgstr "функция анализа типа %s должна возвращать тип %s"
 
-#: commands/typecmds.c:2248
+#: commands/typecmds.c:2247
 #, c-format
 msgid "type subscripting function %s must return type %s"
 msgstr ""
 "функция %s, реализующая для типа обращение по индексу, должна возвращать тип "
 "%s"
 
-#: commands/typecmds.c:2258
+#: commands/typecmds.c:2257
 #, c-format
 msgid "user-defined types cannot use subscripting function %s"
 msgstr ""
 "для пользовательских типов нельзя использовать функцию-обработчик обращения "
 "по индексу %s"
 
-#: commands/typecmds.c:2304
+#: commands/typecmds.c:2303
 #, c-format
 msgid ""
 "You must specify an operator class for the range type or define a default "
@@ -13384,464 +13686,609 @@ msgstr ""
 "Вы должны указать класс операторов для типа диапазона или определить класс "
 "операторов по умолчанию для этого подтипа."
 
-#: commands/typecmds.c:2335
+#: commands/typecmds.c:2334
 #, c-format
 msgid "range canonical function %s must return range type"
 msgstr ""
 "функция получения канонического диапазона %s должна возвращать диапазон"
 
-#: commands/typecmds.c:2341
+#: commands/typecmds.c:2340
 #, c-format
 msgid "range canonical function %s must be immutable"
 msgstr ""
 "функция получения канонического диапазона %s должна быть постоянной "
 "(IMMUTABLE)"
 
-#: commands/typecmds.c:2377
+#: commands/typecmds.c:2376
 #, c-format
 msgid "range subtype diff function %s must return type %s"
 msgstr "функция различий для подтипа диапазона (%s) должна возвращать тип %s"
 
-#: commands/typecmds.c:2384
+#: commands/typecmds.c:2383
 #, c-format
 msgid "range subtype diff function %s must be immutable"
 msgstr ""
 "функция различий для подтипа диапазона (%s) должна быть постоянной "
 "(IMMUTABLE)"
 
-#: commands/typecmds.c:2411
+#: commands/typecmds.c:2410
 #, c-format
 msgid "pg_type array OID value not set when in binary upgrade mode"
 msgstr "значение OID массива в pg_type не задано в режиме двоичного обновления"
 
-#: commands/typecmds.c:2444
+#: commands/typecmds.c:2443
 #, c-format
 msgid "pg_type multirange OID value not set when in binary upgrade mode"
 msgstr ""
 "значение OID мультидиапазона в pg_type не задано в режиме двоичного "
 "обновления"
 
-#: commands/typecmds.c:2477
+#: commands/typecmds.c:2476
 #, c-format
 msgid "pg_type multirange array OID value not set when in binary upgrade mode"
 msgstr ""
 "значение OID массива мультидиапазонов в pg_type не задано в режиме двоичного "
 "обновления"
 
-#: commands/typecmds.c:2776
+#: commands/typecmds.c:2772
 #, c-format
 msgid "column \"%s\" of table \"%s\" contains null values"
 msgstr "столбец \"%s\" таблицы \"%s\" содержит значения NULL"
 
-#: commands/typecmds.c:2889 commands/typecmds.c:3091
+#: commands/typecmds.c:2885 commands/typecmds.c:3086
 #, c-format
 msgid "constraint \"%s\" of domain \"%s\" does not exist"
 msgstr "ограничение \"%s\" для домена \"%s\" не существует"
 
-#: commands/typecmds.c:2893
+#: commands/typecmds.c:2889
 #, c-format
 msgid "constraint \"%s\" of domain \"%s\" does not exist, skipping"
 msgstr "ограничение \"%s\" для домена \"%s\" не существует, пропускается"
 
-#: commands/typecmds.c:3098
+#: commands/typecmds.c:3093
 #, c-format
 msgid "constraint \"%s\" of domain \"%s\" is not a check constraint"
 msgstr ""
 "ограничение \"%s\" для домена \"%s\" не является ограничением-проверкой"
 
-#: commands/typecmds.c:3204
+#: commands/typecmds.c:3194
 #, c-format
 msgid ""
 "column \"%s\" of table \"%s\" contains values that violate the new constraint"
 msgstr ""
 "столбец \"%s\" таблицы \"%s\" содержит значения, нарушающие новое ограничение"
 
-#: commands/typecmds.c:3433 commands/typecmds.c:3633 commands/typecmds.c:3714
-#: commands/typecmds.c:3900
+#: commands/typecmds.c:3423 commands/typecmds.c:3622 commands/typecmds.c:3703
+#: commands/typecmds.c:3889
 #, c-format
 msgid "%s is not a domain"
 msgstr "\"%s\" - это не домен"
 
-#: commands/typecmds.c:3465
+#: commands/typecmds.c:3455
 #, c-format
 msgid "constraint \"%s\" for domain \"%s\" already exists"
 msgstr "ограничение \"%s\" для домена \"%s\" уже существует"
 
-#: commands/typecmds.c:3516
+#: commands/typecmds.c:3506
 #, c-format
 msgid "cannot use table references in domain check constraint"
 msgstr "в ограничении-проверке для домена нельзя ссылаться на таблицы"
 
-#: commands/typecmds.c:3645 commands/typecmds.c:3726 commands/typecmds.c:4017
+#: commands/typecmds.c:3634 commands/typecmds.c:3715 commands/typecmds.c:4006
 #, c-format
 msgid "%s is a table's row type"
 msgstr "%s - это тип строк таблицы"
 
-#: commands/typecmds.c:3647 commands/typecmds.c:3728 commands/typecmds.c:4019
+#: commands/typecmds.c:3636 commands/typecmds.c:3717 commands/typecmds.c:4008
 #, c-format
 msgid "Use ALTER TABLE instead."
 msgstr "Изменить его можно с помощью ALTER TABLE."
 
-#: commands/typecmds.c:3653 commands/typecmds.c:3734 commands/typecmds.c:3932
+#: commands/typecmds.c:3642 commands/typecmds.c:3723 commands/typecmds.c:3921
 #, c-format
 msgid "cannot alter array type %s"
 msgstr "изменить тип массива \"%s\" нельзя"
 
-#: commands/typecmds.c:3655 commands/typecmds.c:3736 commands/typecmds.c:3934
+#: commands/typecmds.c:3644 commands/typecmds.c:3725 commands/typecmds.c:3923
 #, c-format
 msgid "You can alter type %s, which will alter the array type as well."
 msgstr "Однако можно изменить тип %s, что повлечёт изменение типа массива."
 
-#: commands/typecmds.c:4002
+#: commands/typecmds.c:3991
 #, c-format
 msgid "type \"%s\" already exists in schema \"%s\""
 msgstr "тип \"%s\" уже существует в схеме \"%s\""
 
-#: commands/typecmds.c:4170
+#: commands/typecmds.c:4159
 #, c-format
 msgid "cannot change type's storage to PLAIN"
 msgstr "сменить вариант хранения типа на PLAIN нельзя"
 
-#: commands/typecmds.c:4263
+#: commands/typecmds.c:4252
 #, c-format
 msgid "type attribute \"%s\" cannot be changed"
 msgstr "у типа нельзя изменить атрибут \"%s\""
 
-#: commands/typecmds.c:4281
+#: commands/typecmds.c:4270
 #, c-format
 msgid "must be superuser to alter a type"
 msgstr "для модификации типа нужно быть суперпользователем"
 
-#: commands/typecmds.c:4302 commands/typecmds.c:4311
+#: commands/typecmds.c:4291 commands/typecmds.c:4300
 #, c-format
 msgid "%s is not a base type"
 msgstr "%s — не базовый тип"
 
-#: commands/user.c:138
+#: commands/user.c:201
 #, c-format
 msgid "SYSID can no longer be specified"
 msgstr "SYSID уже не нужно указывать"
 
-#: commands/user.c:256
-#, c-format
-msgid "must be superuser to create superusers"
-msgstr "для создания суперпользователей нужно быть суперпользователем"
-
-#: commands/user.c:263
+#: commands/user.c:319 commands/user.c:325 commands/user.c:331
+#: commands/user.c:337 commands/user.c:343
 #, c-format
-msgid "must be superuser to create replication users"
-msgstr "длÑ\8f Ñ\81озданиÑ\8f Ð¿Ð¾Ð»Ñ\8cзоваÑ\82елей-Ñ\80епликаÑ\82оÑ\80ов Ð½Ñ\83жно Ð±Ñ\8bÑ\82Ñ\8c Ñ\81Ñ\83пеÑ\80полÑ\8cзоваÑ\82елем"
+msgid "permission denied to create role"
+msgstr "неÑ\82 Ð¿Ñ\80ав Ð´Ð»Ñ\8f Ñ\81озданиÑ\8f Ñ\80оли"
 
-#: commands/user.c:270
+#: commands/user.c:320
 #, c-format
-msgid "must be superuser to create bypassrls users"
-msgstr ""
-"для создания пользователей c атрибутом bypassrls нужно быть "
-"суперпользователем"
+msgid "Only roles with the %s attribute may create roles."
+msgstr "Создавать роли могут только роли с атрибутом %s."
 
-#: commands/user.c:277
+#: commands/user.c:326 commands/user.c:332 commands/user.c:338
+#: commands/user.c:344
 #, c-format
-msgid "permission denied to create role"
-msgstr "нет прав для создания роли"
+msgid ""
+"Only roles with the %s attribute may create roles with the %s attribute."
+msgstr "Создавать роли с атрибутом %s могут только роли с атрибутом %s."
 
-#: commands/user.c:287 commands/user.c:1139 commands/user.c:1146
-#: utils/adt/acl.c:5331 utils/adt/acl.c:5337 gram.y:16437 gram.y:16483
+#: commands/user.c:355 commands/user.c:1393 commands/user.c:1400
+#: utils/adt/acl.c:5401 utils/adt/acl.c:5407 gram.y:16726 gram.y:16772
 #, c-format
 msgid "role name \"%s\" is reserved"
 msgstr "имя роли \"%s\" зарезервировано"
 
-#: commands/user.c:289 commands/user.c:1141 commands/user.c:1148
+#: commands/user.c:357 commands/user.c:1395 commands/user.c:1402
 #, c-format
 msgid "Role names starting with \"pg_\" are reserved."
 msgstr "Имена ролей, начинающиеся с \"pg_\", зарезервированы."
 
-#: commands/user.c:310 commands/user.c:1163
+#: commands/user.c:378 commands/user.c:1417
 #, c-format
 msgid "role \"%s\" already exists"
 msgstr "роль \"%s\" уже существует"
 
-#: commands/user.c:376 commands/user.c:754
+#: commands/user.c:440 commands/user.c:925
 #, c-format
 msgid "empty string is not a valid password, clearing password"
 msgstr "пустая строка не является допустимым паролем; пароль сбрасывается"
 
-#: commands/user.c:405
+#: commands/user.c:469
 #, c-format
 msgid "pg_authid OID value not set when in binary upgrade mode"
 msgstr "значение OID в pg_authid не задано в режиме двоичного обновления"
 
-#: commands/user.c:524 commands/user.c:838
+#: commands/user.c:653 commands/user.c:1011
 msgid "Cannot alter reserved roles."
 msgstr "Изменять зарезервированные роли нельзя."
 
-# skip-rule: translate-superuser
-#: commands/user.c:638
+#: commands/user.c:760 commands/user.c:766 commands/user.c:782
+#: commands/user.c:790 commands/user.c:804 commands/user.c:810
+#: commands/user.c:816 commands/user.c:825 commands/user.c:870
+#: commands/user.c:1033 commands/user.c:1044
+#, c-format
+msgid "permission denied to alter role"
+msgstr "нет прав для изменения роли"
+
+#: commands/user.c:761 commands/user.c:1034
+#, c-format
+msgid "Only roles with the %s attribute may alter roles with the %s attribute."
+msgstr "Изменять роли с атрибутом %s могут только роли с атрибутом %s."
+
+#: commands/user.c:767 commands/user.c:805 commands/user.c:811
+#: commands/user.c:817
+#, c-format
+msgid "Only roles with the %s attribute may change the %s attribute."
+msgstr "Изменять атрибут %s могут только роли с атрибутом %s."
+
+#: commands/user.c:783 commands/user.c:1045
 #, c-format
 msgid ""
-"must be superuser to alter superuser roles or change superuser attribute"
+"Only roles with the %s attribute and the %s option on role \"%s\" may alter "
+"this role."
 msgstr ""
-"длÑ\8f Ð¼Ð¾Ð´Ð¸Ñ\84икаÑ\86ии Ñ\80олей Ñ\81Ñ\83пеÑ\80полÑ\8cзоваÑ\82елей Ð¸Ð»Ð¸ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ\8f Ð°Ñ\82Ñ\80ибÑ\83Ñ\82а superuser "
-"нужно быть суперпользователем"
+"Ð\98зменÑ\8fÑ\82Ñ\8c Ñ\8dÑ\82Ñ\83 Ñ\80олÑ\8c Ð¼Ð¾Ð³Ñ\83Ñ\82 Ñ\82олÑ\8cко Ñ\80оли Ñ\81 Ð°Ñ\82Ñ\80ибÑ\83Ñ\82ом %s Ð¸ Ð¿Ñ\80ивилегией %s Ð´Ð»Ñ\8f Ñ\80оли "
+"\"%s\"."
 
-#: commands/user.c:645
+#: commands/user.c:791
 #, c-format
 msgid ""
-"must be superuser to alter replication roles or change replication attribute"
+"To change another role's password, the current user must have the %s "
+"attribute and the %s option on the role."
 msgstr ""
-"длÑ\8f Ð¼Ð¾Ð´Ð¸Ñ\84икаÑ\86ии Ñ\80олей Ñ\80епликаÑ\86ии Ð¸Ð»Ð¸ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ\8f Ð°Ñ\82Ñ\80ибÑ\83Ñ\82а replication Ð½Ñ\83жно "
-"быть суперпользователем"
+"ЧÑ\82обÑ\8b Ñ\81мениÑ\82Ñ\8c Ð¿Ð°Ñ\80олÑ\8c Ð´Ñ\80Ñ\83гой Ñ\80оли, Ñ\82екÑ\83Ñ\89ий Ð¿Ð¾Ð»Ñ\8cзоваÑ\82елÑ\8c Ð´Ð¾Ð»Ð¶ÐµÐ½ Ð¸Ð¼ÐµÑ\82Ñ\8c Ð°Ñ\82Ñ\80ибÑ\83Ñ\82 "
+"%s и привилегию %s для этой роли."
 
-#: commands/user.c:652
+#: commands/user.c:826
 #, c-format
-msgid "must be superuser to change bypassrls attribute"
-msgstr "длÑ\8f Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ\8f Ð°Ñ\82Ñ\80ибÑ\83Ñ\82а bypassrls Ð½Ñ\83жно Ð±Ñ\8bÑ\82Ñ\8c Ñ\81Ñ\83пеÑ\80полÑ\8cзоваÑ\82елем"
+msgid "Only roles with the %s option on role \"%s\" may add members."
+msgstr "Ð\94обавлÑ\8fÑ\82Ñ\8c Ñ\87ленов Ð¼Ð¾Ð³Ñ\83Ñ\82 Ñ\82олÑ\8cко Ñ\80оли Ñ\81 Ð¿Ñ\80ивилегией %s Ð´Ð»Ñ\8f Ñ\80оли \"%s\"."
 
-#: commands/user.c:661 commands/user.c:866
+#: commands/user.c:871
 #, c-format
-msgid "permission denied"
-msgstr "неÑ\82 Ð´Ð¾Ñ\81Ñ\82Ñ\83па"
+msgid "The bootstrap user must have the %s attribute."
+msgstr "СÑ\82аÑ\80Ñ\82овÑ\8bй Ð¿Ð¾Ð»Ñ\8cзоваÑ\82елÑ\8c Ð´Ð¾Ð»Ð¶ÐµÐ½ Ð¸Ð¼ÐµÑ\82Ñ\8c Ð°Ñ\82Ñ\80ибÑ\83Ñ\82 %s."
 
-#: commands/user.c:859 commands/user.c:1400 commands/user.c:1573
+#: commands/user.c:1076
 #, c-format
-msgid "must be superuser to alter superusers"
-msgstr "длÑ\8f Ð¼Ð¾Ð´Ð¸Ñ\84икаÑ\86ии Ñ\81Ñ\83пеÑ\80полÑ\8cзоваÑ\82елей Ð½Ñ\83жно Ð±Ñ\8bÑ\82Ñ\8c Ñ\81Ñ\83пеÑ\80полÑ\8cзоваÑ\82елем"
+msgid "permission denied to alter setting"
+msgstr "неÑ\82 Ð¿Ñ\80ав Ð´Ð»Ñ\8f Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ\8f Ð¿Ð°Ñ\80амеÑ\82Ñ\80ов"
 
-#: commands/user.c:896
+#: commands/user.c:1077
 #, c-format
-msgid "must be superuser to alter settings globally"
-msgstr "длÑ\8f Ð³Ð»Ð¾Ð±Ð°Ð»Ñ\8cного Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ\8f Ð¿Ð°Ñ\80амеÑ\82Ñ\80ов Ð½Ñ\83жно Ð±Ñ\8bÑ\82Ñ\8c Ñ\81Ñ\83пеÑ\80полÑ\8cзоваÑ\82елем"
+msgid "Only roles with the %s attribute may alter settings globally."
+msgstr "Ð\98зменÑ\8fÑ\82Ñ\8c Ð¿Ð°Ñ\80амеÑ\82Ñ\80Ñ\8b Ð³Ð»Ð¾Ð±Ð°Ð»Ñ\8cно Ð¼Ð¾Ð³Ñ\83Ñ\82 Ñ\82олÑ\8cко Ñ\80оли Ñ\81 Ð°Ñ\82Ñ\80ибÑ\83Ñ\82ом %s."
 
-#: commands/user.c:918
+#: commands/user.c:1101 commands/user.c:1173 commands/user.c:1179
 #, c-format
 msgid "permission denied to drop role"
 msgstr "нет прав для удаления роли"
 
-#: commands/user.c:943
+#: commands/user.c:1102
+#, c-format
+msgid ""
+"Only roles with the %s attribute and the %s option on the target roles may "
+"drop roles."
+msgstr ""
+"Удалять роли могут только роли с атрибутом %s и с привилегией %s для целевых "
+"ролей."
+
+#: commands/user.c:1127
 #, c-format
 msgid "cannot use special role specifier in DROP ROLE"
 msgstr "использовать специальную роль в DROP ROLE нельзя"
 
-#: commands/user.c:953 commands/user.c:1110 commands/variable.c:778
-#: commands/variable.c:781 commands/variable.c:865 commands/variable.c:868
-#: utils/adt/acl.c:5186 utils/adt/acl.c:5234 utils/adt/acl.c:5262
-#: utils/adt/acl.c:5281 utils/init/miscinit.c:725
+#: commands/user.c:1137 commands/user.c:1364 commands/variable.c:836
+#: commands/variable.c:839 commands/variable.c:923 commands/variable.c:926
+#: utils/adt/acl.c:356 utils/adt/acl.c:376 utils/adt/acl.c:5256
+#: utils/adt/acl.c:5304 utils/adt/acl.c:5332 utils/adt/acl.c:5351
+#: utils/adt/regproc.c:1551 utils/init/miscinit.c:757
 #, c-format
 msgid "role \"%s\" does not exist"
 msgstr "роль \"%s\" не существует"
 
-#: commands/user.c:958
+#: commands/user.c:1142
 #, c-format
 msgid "role \"%s\" does not exist, skipping"
 msgstr "роль \"%s\" не существует, пропускается"
 
-#: commands/user.c:971 commands/user.c:975
+#: commands/user.c:1155 commands/user.c:1159
 #, c-format
 msgid "current user cannot be dropped"
 msgstr "пользователь не может удалить сам себя"
 
-#: commands/user.c:979
+#: commands/user.c:1163
 #, c-format
 msgid "session user cannot be dropped"
 msgstr "пользователя текущего сеанса нельзя удалить"
 
-#: commands/user.c:989
+#: commands/user.c:1174
 #, c-format
-msgid "must be superuser to drop superusers"
-msgstr "длÑ\8f Ñ\83далениÑ\8f Ñ\81Ñ\83пеÑ\80полÑ\8cзоваÑ\82елей Ð½Ñ\83жно Ð±Ñ\8bÑ\82Ñ\8c Ñ\81Ñ\83пеÑ\80полÑ\8cзоваÑ\82елем"
+msgid "Only roles with the %s attribute may drop roles with the %s attribute."
+msgstr "ТолÑ\8cко Ñ\80оли Ñ\81 Ð°Ñ\82Ñ\80ибÑ\83Ñ\82ом %s Ð¼Ð¾Ð³Ñ\83Ñ\82 Ñ\83далÑ\8fÑ\82Ñ\8c Ñ\80оли Ñ\81 Ð°Ñ\82Ñ\80ибÑ\83Ñ\82ом %s."
 
-#: commands/user.c:1005
+#: commands/user.c:1180
+#, c-format
+msgid ""
+"Only roles with the %s attribute and the %s option on role \"%s\" may drop "
+"this role."
+msgstr ""
+"Эту роль могут удалить только роли с атрибутом %s и привилегией %s для роли "
+"\"%s\"."
+
+#: commands/user.c:1306
 #, c-format
 msgid "role \"%s\" cannot be dropped because some objects depend on it"
 msgstr "роль \"%s\" нельзя удалить, так как есть зависящие от неё объекты"
 
-#: commands/user.c:1126
+#: commands/user.c:1380
 #, c-format
 msgid "session user cannot be renamed"
 msgstr "пользователя текущего сеанса нельзя переименовать"
 
-#: commands/user.c:1130
+#: commands/user.c:1384
 #, c-format
 msgid "current user cannot be renamed"
 msgstr "пользователь не может переименовать сам себя"
 
-#: commands/user.c:1173
-#, c-format
-msgid "must be superuser to rename superusers"
-msgstr "для переименования суперпользователей нужно быть суперпользователем"
-
-#: commands/user.c:1180
+#: commands/user.c:1428 commands/user.c:1438
 #, c-format
 msgid "permission denied to rename role"
 msgstr "нет прав на переименование роли"
 
-#: commands/user.c:1201
+#: commands/user.c:1429
+#, c-format
+msgid ""
+"Only roles with the %s attribute may rename roles with the %s attribute."
+msgstr "Только роли с атрибутом %s могут переименовывать роли с атрибутом %s."
+
+#: commands/user.c:1439
+#, c-format
+msgid ""
+"Only roles with the %s attribute and the %s option on role \"%s\" may rename "
+"this role."
+msgstr ""
+"Переименовать эту роль могут только роли с атрибутом %s и привилегией %s для "
+"роли \"%s\"."
+
+#: commands/user.c:1461
 #, c-format
 msgid "MD5 password cleared because of role rename"
 msgstr "в результате переименования роли очищен MD5-хеш пароля"
 
-#: commands/user.c:1261
+#: commands/user.c:1525 gram.y:1260
+#, c-format
+msgid "unrecognized role option \"%s\""
+msgstr "нераспознанный параметр роли \"%s\""
+
+#: commands/user.c:1530
+#, c-format
+msgid "unrecognized value for role option \"%s\": \"%s\""
+msgstr "нераспознанное значение для параметра роли \"%s\": \"%s\""
+
+#: commands/user.c:1563
 #, c-format
 msgid "column names cannot be included in GRANT/REVOKE ROLE"
 msgstr "в GRANT/REVOKE ROLE нельзя включать названия столбцов"
 
-#: commands/user.c:1299
+#: commands/user.c:1603
 #, c-format
 msgid "permission denied to drop objects"
 msgstr "нет прав на удаление объектов"
 
-#: commands/user.c:1326 commands/user.c:1335
+#: commands/user.c:1604
 #, c-format
-msgid "permission denied to reassign objects"
-msgstr "нет прав для переназначения объектов"
+msgid "Only roles with privileges of role \"%s\" may drop objects owned by it."
+msgstr ""
+"Только роли с правами роли \"%s\" могут удалять принадлежащие ей объекты."
 
-#: commands/user.c:1408 commands/user.c:1581
+#: commands/user.c:1632 commands/user.c:1643
 #, c-format
-msgid "must have admin option on role \"%s\""
-msgstr "требуется право admin для роли \"%s\""
+msgid "permission denied to reassign objects"
+msgstr "нет прав для переназначения объектов"
 
-#: commands/user.c:1422
+#: commands/user.c:1633
 #, c-format
-msgid "role \"%s\" cannot have explicit members"
-msgstr "роль \"%s\" не может содержать явных членов"
+msgid ""
+"Only roles with privileges of role \"%s\" may reassign objects owned by it."
+msgstr ""
+"Только роли с правами роли \"%s\" могут поменять владельца принадлежащих ей "
+"объектов."
 
-#: commands/user.c:1432
+#: commands/user.c:1644
 #, c-format
-msgid "must be superuser to set grantor"
-msgstr "для назначения права управления правами нужно быть суперпользователем"
+msgid "Only roles with privileges of role \"%s\" may reassign objects to it."
+msgstr ""
+"Только роли с правами роли \"%s\" могут назначать её владельцем объектов."
 
-#: commands/user.c:1468
+#: commands/user.c:1740
 #, c-format
 msgid "role \"%s\" cannot be a member of any role"
 msgstr "роль \"%s\" не может быть членом другой роли"
 
-#: commands/user.c:1481
+#: commands/user.c:1753
 #, c-format
 msgid "role \"%s\" is a member of role \"%s\""
 msgstr "роль \"%s\" включена в роль \"%s\""
 
-#: commands/user.c:1496
+#: commands/user.c:1793 commands/user.c:1819
 #, c-format
-msgid "role \"%s\" is already a member of role \"%s\""
-msgstr "роль \"%s\" уже включена в роль \"%s\""
+msgid "%s option cannot be granted back to your own grantor"
+msgstr "привилегию %s нельзя вернуть тому, кто назначил её вам"
 
-#: commands/user.c:1603
+#: commands/user.c:1896
+#, c-format
+msgid ""
+"role \"%s\" has already been granted membership in role \"%s\" by role \"%s\""
+msgstr "роль \"%s\" уже назначена членом роли \"%s\" ролью \"%s\""
+
+#: commands/user.c:2031
+#, c-format
+msgid ""
+"role \"%s\" has not been granted membership in role \"%s\" by role \"%s\""
+msgstr "роль \"%s\" не была назначена членом роли \"%s\" ролью \"%s\""
+
+#: commands/user.c:2131
+#, c-format
+msgid "role \"%s\" cannot have explicit members"
+msgstr "роль \"%s\" не может содержать явных членов"
+
+#: commands/user.c:2142 commands/user.c:2165
+#, c-format
+msgid "permission denied to grant role \"%s\""
+msgstr "нет прав для назначения членства в роли \"%s\""
+
+#: commands/user.c:2144
+#, c-format
+msgid "Only roles with the %s attribute may grant roles with the %s attribute."
+msgstr ""
+"Только роли с атрибутом %s могут назначать членов в ролях с атрибутов %s."
+
+#: commands/user.c:2149 commands/user.c:2172
+#, c-format
+msgid "permission denied to revoke role \"%s\""
+msgstr "нет прав для лишения членства в роли \"%s\""
+
+#: commands/user.c:2151
+#, c-format
+msgid ""
+"Only roles with the %s attribute may revoke roles with the %s attribute."
+msgstr ""
+"Только роли с атрибутом %s могут лишать членства в ролях с атрибутом %s."
+
+#: commands/user.c:2167
+#, c-format
+msgid "Only roles with the %s option on role \"%s\" may grant this role."
+msgstr ""
+"Только роли с привилегией %s для роли \"%s\" могут назначать членов в ней."
+
+#: commands/user.c:2174
+#, c-format
+msgid "Only roles with the %s option on role \"%s\" may revoke this role."
+msgstr ""
+"Только роли с привилегией %s для роли \"%s\" могут лишать членства в ней."
+
+#: commands/user.c:2254 commands/user.c:2263
+#, c-format
+msgid "permission denied to grant privileges as role \"%s\""
+msgstr "нет полномочий для назначения прав доступа роли \"%s\""
+
+#: commands/user.c:2256
+#, c-format
+msgid ""
+"Only roles with privileges of role \"%s\" may grant privileges as this role."
+msgstr ""
+"Только роли с правами роли \"%s\" могут назначать права от имени этой роли."
+
+#: commands/user.c:2265
+#, c-format
+msgid "The grantor must have the %s option on role \"%s\"."
+msgstr "Праводатель должен иметь привилегию %s для роли \"%s\"."
+
+#: commands/user.c:2273
+#, c-format
+msgid "permission denied to revoke privileges granted by role \"%s\""
+msgstr "нет полномочий для отзыва прав доступа, назначенных ролью \"%s\""
+
+#: commands/user.c:2275
 #, c-format
-msgid "role \"%s\" is not a member of role \"%s\""
-msgstr "роль \"%s\" не включена в роль \"%s\""
+msgid ""
+"Only roles with privileges of role \"%s\" may revoke privileges granted by "
+"this role."
+msgstr ""
+"Только роли с правами роли \"%s\" могут отзывать права от имени этой роли."
+
+#: commands/user.c:2498 utils/adt/acl.c:1309
+#, c-format
+msgid "dependent privileges exist"
+msgstr "существуют зависимые права"
+
+#: commands/user.c:2499 utils/adt/acl.c:1310
+#, c-format
+msgid "Use CASCADE to revoke them too."
+msgstr "Используйте CASCADE, чтобы отозвать и их."
+
+#: commands/vacuum.c:137
+#, c-format
+msgid "\"vacuum_buffer_usage_limit\" must be 0 or between %d kB and %d kB"
+msgstr ""
+"значение \"vacuum_buffer_usage_limit\" должно быть нулевым или лежать в "
+"диапазоне от %d kB до %d kB"
+
+#: commands/vacuum.c:209
+#, c-format
+msgid "BUFFER_USAGE_LIMIT option must be 0 or between %d kB and %d kB"
+msgstr ""
+"параметр BUFFER_USAGE_LIMIT должен быть нулевым или лежать в диапазоне от %d "
+"kB до %d kB"
 
-#: commands/vacuum.c:139
+#: commands/vacuum.c:219
 #, c-format
 msgid "unrecognized ANALYZE option \"%s\""
 msgstr "нераспознанный параметр ANALYZE: \"%s\""
 
-#: commands/vacuum.c:177
+#: commands/vacuum.c:259
 #, c-format
 msgid "parallel option requires a value between 0 and %d"
 msgstr "для параметра parallel требуется значение от 0 до %d"
 
-#: commands/vacuum.c:189
+#: commands/vacuum.c:271
 #, c-format
 msgid "parallel workers for vacuum must be between 0 and %d"
 msgstr ""
 "число параллельных исполнителей для выполнения очистки должно быть от 0 до %d"
 
-#: commands/vacuum.c:206
+#: commands/vacuum.c:292
 #, c-format
 msgid "unrecognized VACUUM option \"%s\""
 msgstr "нераспознанный параметр VACUUM: \"%s\""
 
-#: commands/vacuum.c:229
+#: commands/vacuum.c:318
 #, c-format
 msgid "VACUUM FULL cannot be performed in parallel"
 msgstr "VACUUM FULL нельзя выполнять в параллельном режиме"
 
-#: commands/vacuum.c:245
+#: commands/vacuum.c:329
 #, c-format
-msgid "ANALYZE option must be specified when a column list is provided"
-msgstr "еÑ\81ли Ð·Ð°Ð´Ð°Ñ\91Ñ\82Ñ\81Ñ\8f Ñ\81пиÑ\81ок Ñ\81Ñ\82олбÑ\86ов, Ð½ÐµÐ¾Ð±Ñ\85одимо Ñ\83казаÑ\82Ñ\8c ANALYZE"
+msgid "BUFFER_USAGE_LIMIT cannot be specified for VACUUM FULL"
+msgstr "паÑ\80амеÑ\82Ñ\80 BUFFER_USAGE_LIMIT Ð½ÐµÐ»Ñ\8cзÑ\8f Ð·Ð°Ð´Ð°Ð²Ð°Ñ\82Ñ\8c Ð´Ð»Ñ\8f VACUUM FULL"
 
-#: commands/vacuum.c:335
+#: commands/vacuum.c:343
 #, c-format
-msgid "%s cannot be executed from VACUUM or ANALYZE"
-msgstr "%s нельзя выполнить в ходе VACUUM или ANALYZE"
+msgid "ANALYZE option must be specified when a column list is provided"
+msgstr "если задаётся список столбцов, необходимо указать ANALYZE"
 
-#: commands/vacuum.c:345
+#: commands/vacuum.c:355
 #, c-format
 msgid "VACUUM option DISABLE_PAGE_SKIPPING cannot be used with FULL"
 msgstr "Параметр VACUUM DISABLE_PAGE_SKIPPING нельзя использовать с FULL"
 
-#: commands/vacuum.c:352
+#: commands/vacuum.c:362
 #, c-format
 msgid "PROCESS_TOAST required with VACUUM FULL"
 msgstr "VACUUM FULL работает только с PROCESS_TOAST"
 
-#: commands/vacuum.c:586
-#, c-format
-msgid "skipping \"%s\" --- only superuser can vacuum it"
-msgstr ""
-"\"%s\" пропускается --- только суперпользователь может очистить эту таблицу"
-
-#: commands/vacuum.c:590
+#: commands/vacuum.c:371
 #, c-format
-msgid "skipping \"%s\" --- only superuser or database owner can vacuum it"
-msgstr ""
-"пропускается \"%s\" --- только суперпользователь или владелец БД может "
-"очистить эту таблицу"
+msgid "ONLY_DATABASE_STATS cannot be specified with a list of tables"
+msgstr "ONLY_DATABASE_STATS нельзя задавать со списком таблиц"
 
-#: commands/vacuum.c:594
+#: commands/vacuum.c:380
 #, c-format
-msgid "skipping \"%s\" --- only table or database owner can vacuum it"
-msgstr ""
-"\"%s\" пропускается --- только владелец базы данных или этой таблицы может "
-"очистить её"
+msgid "ONLY_DATABASE_STATS cannot be specified with other VACUUM options"
+msgstr "ONLY_DATABASE_STATS нельзя задавать с другими параметрами VACUUM"
 
-#: commands/vacuum.c:609
+#: commands/vacuum.c:515
 #, c-format
-msgid "skipping \"%s\" --- only superuser can analyze it"
-msgstr ""
-"\"%s\" пропускается --- только суперпользователь может анализировать этот "
-"объект"
+msgid "%s cannot be executed from VACUUM or ANALYZE"
+msgstr "%s нельзя выполнить в ходе VACUUM или ANALYZE"
 
-#: commands/vacuum.c:613
+#: commands/vacuum.c:733
 #, c-format
-msgid "skipping \"%s\" --- only superuser or database owner can analyze it"
-msgstr ""
-"\"%s\" пропускается --- только суперпользователь или владелец БД может "
-"анализировать этот объект"
+msgid "permission denied to vacuum \"%s\", skipping it"
+msgstr "нет доступа для очистки отношения \"%s\", оно пропускается"
 
-#: commands/vacuum.c:617
+#: commands/vacuum.c:746
 #, c-format
-msgid "skipping \"%s\" --- only table or database owner can analyze it"
-msgstr ""
-"\"%s\" пропускается --- только владелец таблицы или БД может анализировать "
-"этот объект"
+msgid "permission denied to analyze \"%s\", skipping it"
+msgstr "нет доступа для анализа отношения \"%s\", оно пропускается"
 
-#: commands/vacuum.c:696 commands/vacuum.c:792
+#: commands/vacuum.c:824 commands/vacuum.c:921
 #, c-format
 msgid "skipping vacuum of \"%s\" --- lock not available"
 msgstr "очистка \"%s\" пропускается --- блокировка недоступна"
 
-#: commands/vacuum.c:701
+#: commands/vacuum.c:829
 #, c-format
 msgid "skipping vacuum of \"%s\" --- relation no longer exists"
 msgstr "очистка \"%s\" пропускается --- это отношение более не существует"
 
-#: commands/vacuum.c:717 commands/vacuum.c:797
+#: commands/vacuum.c:845 commands/vacuum.c:926
 #, c-format
 msgid "skipping analyze of \"%s\" --- lock not available"
 msgstr "анализ \"%s\" пропускается --- блокировка недоступна"
 
-#: commands/vacuum.c:722
+#: commands/vacuum.c:850
 #, c-format
 msgid "skipping analyze of \"%s\" --- relation no longer exists"
 msgstr "анализ \"%s\" пропускается --- это отношение более не существует"
 
-#: commands/vacuum.c:1041
+#: commands/vacuum.c:1161
 #, c-format
-msgid "oldest xmin is far in the past"
-msgstr "самый старый xmin далеко в прошлом"
+msgid "cutoff for removing and freezing tuples is far in the past"
+msgstr "момент отсечки для удаления и замораживания кортежей далеко в прошлом"
 
-#: commands/vacuum.c:1042
+#: commands/vacuum.c:1162 commands/vacuum.c:1167
 #, c-format
 msgid ""
 "Close open transactions soon to avoid wraparound problems.\n"
@@ -13853,50 +14300,42 @@ msgstr ""
 "Возможно, вам также придётся зафиксировать или откатить старые "
 "подготовленные транзакции и удалить неиспользуемые слоты репликации."
 
-#: commands/vacuum.c:1085
+#: commands/vacuum.c:1166
 #, c-format
-msgid "oldest multixact is far in the past"
-msgstr "самый старый multixact далеко в прошлом"
+msgid "cutoff for freezing multixacts is far in the past"
+msgstr "момент отсечки для замораживания мультитранзакций далеко в прошлом"
 
-#: commands/vacuum.c:1086
-#, c-format
-msgid ""
-"Close open transactions with multixacts soon to avoid wraparound problems."
-msgstr ""
-"Скорее закройте открытые транзакции в мультитранзакциях, чтобы избежать "
-"проблемы зацикливания."
-
-#: commands/vacuum.c:1792
+#: commands/vacuum.c:1908
 #, c-format
 msgid "some databases have not been vacuumed in over 2 billion transactions"
 msgstr ""
 "есть базы данных, которые не очищались на протяжении более чем 2 миллиардов "
 "транзакций"
 
-#: commands/vacuum.c:1793
+#: commands/vacuum.c:1909
 #, c-format
 msgid "You might have already suffered transaction-wraparound data loss."
 msgstr ""
 "Возможно, вы уже потеряли данные в результате зацикливания ID транзакций."
 
-#: commands/vacuum.c:1957
+#: commands/vacuum.c:2078
 #, c-format
 msgid "skipping \"%s\" --- cannot vacuum non-tables or special system tables"
 msgstr ""
 "\"%s\" пропускается --- очищать не таблицы или специальные системные таблицы "
 "нельзя"
 
-#: commands/vacuum.c:2328
+#: commands/vacuum.c:2503
 #, c-format
 msgid "scanned index \"%s\" to remove %d row versions"
 msgstr "просканирован индекс \"%s\", удалено версий строк: %d"
 
-#: commands/vacuum.c:2347
+#: commands/vacuum.c:2522
 #, c-format
 msgid "index \"%s\" now contains %.0f row versions in %u pages"
 msgstr "индекс \"%s\" теперь содержит версий строк: %.0f, в страницах: %u"
 
-#: commands/vacuum.c:2351
+#: commands/vacuum.c:2526
 #, c-format
 msgid ""
 "%.0f index row versions were removed.\n"
@@ -13908,7 +14347,7 @@ msgstr ""
 "На данный момент удалено страниц индекса: %u, из них свободны для "
 "использования: %u."
 
-#: commands/vacuumparallel.c:664
+#: commands/vacuumparallel.c:677
 #, c-format
 msgid "launched %d parallel vacuum worker for index vacuuming (planned: %d)"
 msgid_plural ""
@@ -13923,7 +14362,7 @@ msgstr[2] ""
 "запущено %d параллельных процессов очистки для очистки индекса "
 "(планировалось: %d)"
 
-#: commands/vacuumparallel.c:670
+#: commands/vacuumparallel.c:683
 #, c-format
 msgid "launched %d parallel vacuum worker for index cleanup (planned: %d)"
 msgid_plural ""
@@ -13938,121 +14377,144 @@ msgstr[2] ""
 "запущено %d параллельных процессов очистки для уборки индекса "
 "(планировалось: %d)"
 
-#: commands/variable.c:165 utils/misc/guc.c:12099 utils/misc/guc.c:12177
-#, c-format
-msgid "Unrecognized key word: \"%s\"."
-msgstr "нераспознанное ключевое слово: \"%s\"."
-
-#: commands/variable.c:177
+#: commands/variable.c:185
 #, c-format
 msgid "Conflicting \"datestyle\" specifications."
 msgstr "Конфликтующие спецификации стиля дат."
 
-#: commands/variable.c:299
+#: commands/variable.c:307
 #, c-format
 msgid "Cannot specify months in time zone interval."
 msgstr "В интервале, задающем часовой пояс, нельзя указывать месяцы."
 
-#: commands/variable.c:305
+#: commands/variable.c:313
 #, c-format
 msgid "Cannot specify days in time zone interval."
 msgstr "В интервале, задающем часовой пояс, нельзя указывать дни."
 
-#: commands/variable.c:343 commands/variable.c:425
+#: commands/variable.c:351 commands/variable.c:433
 #, c-format
 msgid "time zone \"%s\" appears to use leap seconds"
 msgstr "часовой пояс \"%s\" видимо использует координационные секунды"
 
-#: commands/variable.c:345 commands/variable.c:427
+#: commands/variable.c:353 commands/variable.c:435
 #, c-format
 msgid "PostgreSQL does not support leap seconds."
 msgstr "PostgreSQL не поддерживает координационные секунды."
 
-#: commands/variable.c:354
+#: commands/variable.c:362
 #, c-format
 msgid "UTC timezone offset is out of range."
 msgstr "смещение часового пояса UTC вне диапазона"
 
-#: commands/variable.c:494
+#: commands/variable.c:552
 #, c-format
 msgid "cannot set transaction read-write mode inside a read-only transaction"
 msgstr ""
 "нельзя установить режим транзакции \"чтение-запись\" внутри транзакции "
 "\"только чтение\""
 
-#: commands/variable.c:501
+#: commands/variable.c:559
 #, c-format
 msgid "transaction read-write mode must be set before any query"
 msgstr ""
 "режим транзакции \"чтение-запись\" должен быть установлен до выполнения "
 "запросов"
 
-#: commands/variable.c:508
+#: commands/variable.c:566
 #, c-format
 msgid "cannot set transaction read-write mode during recovery"
 msgstr ""
 "нельзя установить режим транзакции \"чтение-запись\" в процессе "
 "восстановления"
 
-#: commands/variable.c:534
+#: commands/variable.c:592
 #, c-format
 msgid "SET TRANSACTION ISOLATION LEVEL must be called before any query"
 msgstr "команда SET TRANSACTION ISOLATION LEVEL должна выполняться до запросов"
 
-#: commands/variable.c:541
+#: commands/variable.c:599
 #, c-format
 msgid "SET TRANSACTION ISOLATION LEVEL must not be called in a subtransaction"
 msgstr ""
 "команда SET TRANSACTION ISOLATION LEVEL не должна вызываться в подтранзакции"
 
-#: commands/variable.c:548 storage/lmgr/predicate.c:1694
+#: commands/variable.c:606 storage/lmgr/predicate.c:1629
 #, c-format
 msgid "cannot use serializable mode in a hot standby"
 msgstr "использовать сериализуемый режим в горячем резерве нельзя"
 
-#: commands/variable.c:549
+#: commands/variable.c:607
 #, c-format
 msgid "You can use REPEATABLE READ instead."
 msgstr "Используйте REPEATABLE READ."
 
-#: commands/variable.c:567
+#: commands/variable.c:625
 #, c-format
 msgid ""
 "SET TRANSACTION [NOT] DEFERRABLE cannot be called within a subtransaction"
 msgstr ""
 "команда SET TRANSACTION [NOT] DEFERRABLE не может вызываться в подтранзакции"
 
-#: commands/variable.c:573
+#: commands/variable.c:631
 #, c-format
 msgid "SET TRANSACTION [NOT] DEFERRABLE must be called before any query"
 msgstr ""
 "команда SET TRANSACTION [NOT] DEFERRABLE должна выполняться до запросов"
 
-#: commands/variable.c:655
+#: commands/variable.c:713
 #, c-format
 msgid "Conversion between %s and %s is not supported."
 msgstr "Преобразование кодировок %s <-> %s не поддерживается."
 
-#: commands/variable.c:662
+#: commands/variable.c:720
 #, c-format
 msgid "Cannot change \"client_encoding\" now."
 msgstr "Изменить клиентскую кодировку сейчас нельзя."
 
-#: commands/variable.c:723
+#: commands/variable.c:781
 #, c-format
 msgid "cannot change client_encoding during a parallel operation"
 msgstr "изменить клиентскую кодировку во время параллельной операции нельзя"
 
-#: commands/variable.c:890
+#: commands/variable.c:948
 #, c-format
 msgid "permission will be denied to set role \"%s\""
 msgstr "нет прав установить роль \"%s\""
 
-#: commands/variable.c:895
+#: commands/variable.c:953
 #, c-format
 msgid "permission denied to set role \"%s\""
 msgstr "нет прав установить роль \"%s\""
 
+#: commands/variable.c:1153
+#, c-format
+msgid "Bonjour is not supported by this build"
+msgstr "Bonjour не поддерживается в данной сборке"
+
+#: commands/variable.c:1181
+#, c-format
+msgid ""
+"effective_io_concurrency must be set to 0 on platforms that lack "
+"posix_fadvise()."
+msgstr ""
+"Значение effective_io_concurrency должно равняться 0 на платформах, где "
+"отсутствует lack posix_fadvise()."
+
+#: commands/variable.c:1194
+#, c-format
+msgid ""
+"maintenance_io_concurrency must be set to 0 on platforms that lack "
+"posix_fadvise()."
+msgstr ""
+"Значение maintenance_io_concurrency должно равняться 0 на платформах, где "
+"отсутствует lack posix_fadvise()."
+
+#: commands/variable.c:1207
+#, c-format
+msgid "SSL is not supported by this build"
+msgstr "SSL не поддерживается в данной сборке"
+
 #: commands/view.c:84
 #, c-format
 msgid "could not determine which collation to use for view column \"%s\""
@@ -14090,28 +14552,28 @@ msgstr ""
 "изменить правило сортировки для столбца представления \"%s\" с \"%s\" на "
 "\"%s\" нельзя"
 
-#: commands/view.c:468
+#: commands/view.c:392
 #, c-format
 msgid "views must not contain SELECT INTO"
 msgstr "представления не должны содержать SELECT INTO"
 
-#: commands/view.c:480
+#: commands/view.c:404
 #, c-format
 msgid "views must not contain data-modifying statements in WITH"
 msgstr "представления не должны содержать операторы, изменяющие данные в WITH"
 
-#: commands/view.c:550
+#: commands/view.c:474
 #, c-format
 msgid "CREATE VIEW specifies more column names than columns"
 msgstr "в CREATE VIEW указано больше имён столбцов, чем самих столбцов"
 
-#: commands/view.c:558
+#: commands/view.c:482
 #, c-format
 msgid "views cannot be unlogged because they do not have storage"
 msgstr ""
 "представления не могут быть нежурналируемыми, так как они нигде не хранятся"
 
-#: commands/view.c:572
+#: commands/view.c:496
 #, c-format
 msgid "view \"%s\" will be a temporary view"
 msgstr "представление \"%s\" будет создано как временное"
@@ -14149,7 +14611,7 @@ msgid "cursor \"%s\" is not a simply updatable scan of table \"%s\""
 msgstr ""
 "для курсора \"%s\" не выполняется обновляемое сканирование таблицы \"%s\""
 
-#: executor/execCurrent.c:280 executor/execExprInterp.c:2453
+#: executor/execCurrent.c:280 executor/execExprInterp.c:2498
 #, c-format
 msgid ""
 "type of parameter %d (%s) does not match that when preparing the plan (%s)"
@@ -14157,56 +14619,56 @@ msgstr ""
 "тип параметра %d (%s) не соответствует тому, с которым подготавливался план "
 "(%s)"
 
-#: executor/execCurrent.c:292 executor/execExprInterp.c:2465
+#: executor/execCurrent.c:292 executor/execExprInterp.c:2510
 #, c-format
 msgid "no value found for parameter %d"
 msgstr "не найдено значение параметра %d"
 
-#: executor/execExpr.c:632 executor/execExpr.c:639 executor/execExpr.c:645
-#: executor/execExprInterp.c:4052 executor/execExprInterp.c:4069
-#: executor/execExprInterp.c:4168 executor/nodeModifyTable.c:220
-#: executor/nodeModifyTable.c:231 executor/nodeModifyTable.c:248
-#: executor/nodeModifyTable.c:256
+#: executor/execExpr.c:637 executor/execExpr.c:644 executor/execExpr.c:650
+#: executor/execExprInterp.c:4234 executor/execExprInterp.c:4251
+#: executor/execExprInterp.c:4350 executor/nodeModifyTable.c:197
+#: executor/nodeModifyTable.c:208 executor/nodeModifyTable.c:225
+#: executor/nodeModifyTable.c:233
 #, c-format
 msgid "table row type and query-specified row type do not match"
 msgstr "тип строки таблицы отличается от типа строки-результата запроса"
 
-#: executor/execExpr.c:633 executor/nodeModifyTable.c:221
+#: executor/execExpr.c:638 executor/nodeModifyTable.c:198
 #, c-format
 msgid "Query has too many columns."
 msgstr "Запрос возвращает больше столбцов."
 
-#: executor/execExpr.c:640 executor/nodeModifyTable.c:249
+#: executor/execExpr.c:645 executor/nodeModifyTable.c:226
 #, c-format
 msgid "Query provides a value for a dropped column at ordinal position %d."
 msgstr ""
 "Запрос выдаёт значение для удалённого столбца (с порядковым номером %d)."
 
-#: executor/execExpr.c:646 executor/execExprInterp.c:4070
-#: executor/nodeModifyTable.c:232
+#: executor/execExpr.c:651 executor/execExprInterp.c:4252
+#: executor/nodeModifyTable.c:209
 #, c-format
 msgid "Table has type %s at ordinal position %d, but query expects %s."
 msgstr ""
 "В таблице определён тип %s (номер столбца: %d), а в запросе предполагается "
 "%s."
 
-#: executor/execExpr.c:1110 parser/parse_agg.c:827
+#: executor/execExpr.c:1099 parser/parse_agg.c:827
 #, c-format
 msgid "window function calls cannot be nested"
 msgstr "вложенные вызовы оконных функций недопустимы"
 
-#: executor/execExpr.c:1614
+#: executor/execExpr.c:1618
 #, c-format
 msgid "target type is not an array"
 msgstr "целевой тип не является массивом"
 
-#: executor/execExpr.c:1954
+#: executor/execExpr.c:1958
 #, c-format
 msgid "ROW() column has type %s instead of type %s"
 msgstr "столбец ROW() имеет тип %s, а должен - %s"
 
-#: executor/execExpr.c:2479 executor/execSRF.c:718 parser/parse_func.c:138
-#: parser/parse_func.c:655 parser/parse_func.c:1031
+#: executor/execExpr.c:2574 executor/execSRF.c:719 parser/parse_func.c:138
+#: parser/parse_func.c:655 parser/parse_func.c:1032
 #, c-format
 msgid "cannot pass more than %d argument to a function"
 msgid_plural "cannot pass more than %d arguments to a function"
@@ -14214,60 +14676,60 @@ msgstr[0] "функции нельзя передать больше %d аргу
 msgstr[1] "функции нельзя передать больше %d аргументов"
 msgstr[2] "функции нельзя передать больше %d аргументов"
 
-#: executor/execExpr.c:2506 executor/execSRF.c:738 executor/functions.c:1073
-#: utils/adt/jsonfuncs.c:3698 utils/fmgr/funcapi.c:98 utils/fmgr/funcapi.c:152
+#: executor/execExpr.c:2601 executor/execSRF.c:739 executor/functions.c:1066
+#: utils/adt/jsonfuncs.c:3780 utils/fmgr/funcapi.c:89 utils/fmgr/funcapi.c:143
 #, c-format
 msgid "set-valued function called in context that cannot accept a set"
 msgstr ""
 "функция, возвращающая множество, вызвана в контексте, где ему нет места"
 
-#: executor/execExpr.c:2865 parser/parse_node.c:276 parser/parse_node.c:326
+#: executor/execExpr.c:3007 parser/parse_node.c:277 parser/parse_node.c:327
 #, c-format
 msgid "cannot subscript type %s because it does not support subscripting"
 msgstr ""
 "к элементам типа %s нельзя обращаться по индексам, так как он это не "
 "поддерживает"
 
-#: executor/execExpr.c:2993 executor/execExpr.c:3015
+#: executor/execExpr.c:3135 executor/execExpr.c:3157
 #, c-format
 msgid "type %s does not support subscripted assignment"
 msgstr "тип %s не поддерживает изменение элемента по индексу"
 
-#: executor/execExprInterp.c:1918
+#: executor/execExprInterp.c:1962
 #, c-format
 msgid "attribute %d of type %s has been dropped"
 msgstr "атрибут %d типа %s был удалён"
 
-#: executor/execExprInterp.c:1924
+#: executor/execExprInterp.c:1968
 #, c-format
 msgid "attribute %d of type %s has wrong type"
 msgstr "атрибут %d типа %s имеет неправильный тип"
 
-#: executor/execExprInterp.c:1926 executor/execExprInterp.c:3054
-#: executor/execExprInterp.c:3100
+#: executor/execExprInterp.c:1970 executor/execExprInterp.c:3104
+#: executor/execExprInterp.c:3150
 #, c-format
 msgid "Table has type %s, but query expects %s."
 msgstr "В таблице задан тип %s, а в запросе ожидается %s."
 
-#: executor/execExprInterp.c:2005 utils/adt/expandedrecord.c:99
-#: utils/adt/expandedrecord.c:231 utils/cache/typcache.c:1749
-#: utils/cache/typcache.c:1908 utils/cache/typcache.c:2055
-#: utils/fmgr/funcapi.c:570
+#: executor/execExprInterp.c:2050 utils/adt/expandedrecord.c:99
+#: utils/adt/expandedrecord.c:231 utils/cache/typcache.c:1743
+#: utils/cache/typcache.c:1902 utils/cache/typcache.c:2049
+#: utils/fmgr/funcapi.c:561
 #, c-format
 msgid "type %s is not composite"
 msgstr "тип %s не является составным"
 
-#: executor/execExprInterp.c:2543
+#: executor/execExprInterp.c:2588
 #, c-format
 msgid "WHERE CURRENT OF is not supported for this table type"
 msgstr "WHERE CURRENT OF для таблиц такого типа не поддерживается"
 
-#: executor/execExprInterp.c:2756
+#: executor/execExprInterp.c:2801
 #, c-format
 msgid "cannot merge incompatible arrays"
 msgstr "не удалось объединить несовместимые массивы"
 
-#: executor/execExprInterp.c:2757
+#: executor/execExprInterp.c:2802
 #, c-format
 msgid ""
 "Array with element type %s cannot be included in ARRAY construct with "
@@ -14276,16 +14738,16 @@ msgstr ""
 "Массив с типом элементов %s нельзя включить в конструкцию ARRAY с типом "
 "элементов %s."
 
-#: executor/execExprInterp.c:2778 utils/adt/arrayfuncs.c:263
-#: utils/adt/arrayfuncs.c:563 utils/adt/arrayfuncs.c:1305
-#: utils/adt/arrayfuncs.c:3375 utils/adt/arrayfuncs.c:5372
-#: utils/adt/arrayfuncs.c:5889 utils/adt/arraysubs.c:150
+#: executor/execExprInterp.c:2823 utils/adt/arrayfuncs.c:265
+#: utils/adt/arrayfuncs.c:575 utils/adt/arrayfuncs.c:1329
+#: utils/adt/arrayfuncs.c:3483 utils/adt/arrayfuncs.c:5567
+#: utils/adt/arrayfuncs.c:6084 utils/adt/arraysubs.c:150
 #: utils/adt/arraysubs.c:488
 #, c-format
 msgid "number of array dimensions (%d) exceeds the maximum allowed (%d)"
 msgstr "число размерностей массива (%d) превышает предел (%d)"
 
-#: executor/execExprInterp.c:2798 executor/execExprInterp.c:2828
+#: executor/execExprInterp.c:2843 executor/execExprInterp.c:2878
 #, c-format
 msgid ""
 "multidimensional arrays must have array expressions with matching dimensions"
@@ -14293,22 +14755,32 @@ msgstr ""
 "для многомерных массивов должны задаваться выражения с соответствующими "
 "размерностями"
 
-#: executor/execExprInterp.c:3053 executor/execExprInterp.c:3099
+#: executor/execExprInterp.c:2855 utils/adt/array_expanded.c:274
+#: utils/adt/arrayfuncs.c:959 utils/adt/arrayfuncs.c:1568
+#: utils/adt/arrayfuncs.c:3285 utils/adt/arrayfuncs.c:3513
+#: utils/adt/arrayfuncs.c:6176 utils/adt/arrayfuncs.c:6517
+#: utils/adt/arrayutils.c:104 utils/adt/arrayutils.c:113
+#: utils/adt/arrayutils.c:120
+#, c-format
+msgid "array size exceeds the maximum allowed (%d)"
+msgstr "размер массива превышает предел (%d)"
+
+#: executor/execExprInterp.c:3103 executor/execExprInterp.c:3149
 #, c-format
 msgid "attribute %d has wrong type"
 msgstr "атрибут %d имеет неверный тип"
 
-#: executor/execExprInterp.c:3681 utils/adt/domains.c:149
+#: executor/execExprInterp.c:3735 utils/adt/domains.c:155
 #, c-format
 msgid "domain %s does not allow null values"
 msgstr "домен %s не допускает значения null"
 
-#: executor/execExprInterp.c:3696 utils/adt/domains.c:184
+#: executor/execExprInterp.c:3750 utils/adt/domains.c:193
 #, c-format
 msgid "value for domain %s violates check constraint \"%s\""
 msgstr "значение домена %s нарушает ограничение-проверку \"%s\""
 
-#: executor/execExprInterp.c:4053
+#: executor/execExprInterp.c:4235
 #, c-format
 msgid "Table row contains %d attribute, but query expects %d."
 msgid_plural "Table row contains %d attributes, but query expects %d."
@@ -14316,14 +14788,14 @@ msgstr[0] "Строка таблицы содержит %d атрибут, а в
 msgstr[1] "Строка таблицы содержит %d атрибута, а в запросе ожидается %d."
 msgstr[2] "Строка таблицы содержит %d атрибутов, а в запросе ожидается %d."
 
-#: executor/execExprInterp.c:4169 executor/execSRF.c:977
+#: executor/execExprInterp.c:4351 executor/execSRF.c:978
 #, c-format
 msgid "Physical storage mismatch on dropped attribute at ordinal position %d."
 msgstr ""
 "Несоответствие параметров физического хранения удалённого атрибута (под "
 "номером %d)."
 
-#: executor/execIndexing.c:571
+#: executor/execIndexing.c:588
 #, c-format
 msgid ""
 "ON CONFLICT does not support deferrable unique constraints/exclusion "
@@ -14332,54 +14804,54 @@ msgstr ""
 "ON CONFLICT не поддерживает откладываемые ограничения уникальности/"
 "ограничения-исключения в качестве определяющего индекса"
 
-#: executor/execIndexing.c:848
+#: executor/execIndexing.c:865
 #, c-format
 msgid "could not create exclusion constraint \"%s\""
 msgstr "не удалось создать ограничение-исключение \"%s\""
 
-#: executor/execIndexing.c:851
+#: executor/execIndexing.c:868
 #, c-format
 msgid "Key %s conflicts with key %s."
 msgstr "Ключ %s конфликтует с ключом %s."
 
-#: executor/execIndexing.c:853
+#: executor/execIndexing.c:870
 #, c-format
 msgid "Key conflicts exist."
 msgstr "Обнаружен конфликт ключей."
 
-#: executor/execIndexing.c:859
+#: executor/execIndexing.c:876
 #, c-format
 msgid "conflicting key value violates exclusion constraint \"%s\""
 msgstr "конфликтующее значение ключа нарушает ограничение-исключение \"%s\""
 
-#: executor/execIndexing.c:862
+#: executor/execIndexing.c:879
 #, c-format
 msgid "Key %s conflicts with existing key %s."
 msgstr "Ключ %s конфликтует с существующим ключом %s."
 
-#: executor/execIndexing.c:864
+#: executor/execIndexing.c:881
 #, c-format
 msgid "Key conflicts with existing key."
 msgstr "Ключ конфликтует с уже существующим."
 
-#: executor/execMain.c:1009
+#: executor/execMain.c:1039
 #, c-format
 msgid "cannot change sequence \"%s\""
 msgstr "последовательность \"%s\" изменить нельзя"
 
-#: executor/execMain.c:1015
+#: executor/execMain.c:1045
 #, c-format
 msgid "cannot change TOAST relation \"%s\""
 msgstr "TOAST-отношение \"%s\" изменить нельзя"
 
-#: executor/execMain.c:1033 rewrite/rewriteHandler.c:3069
-#: rewrite/rewriteHandler.c:3916
+#: executor/execMain.c:1063 rewrite/rewriteHandler.c:3079
+#: rewrite/rewriteHandler.c:3966
 #, c-format
 msgid "cannot insert into view \"%s\""
 msgstr "вставить данные в представление \"%s\" нельзя"
 
-#: executor/execMain.c:1035 rewrite/rewriteHandler.c:3072
-#: rewrite/rewriteHandler.c:3919
+#: executor/execMain.c:1065 rewrite/rewriteHandler.c:3082
+#: rewrite/rewriteHandler.c:3969
 #, c-format
 msgid ""
 "To enable inserting into the view, provide an INSTEAD OF INSERT trigger or "
@@ -14388,14 +14860,14 @@ msgstr ""
 "Чтобы представление допускало добавление данных, установите триггер INSTEAD "
 "OF INSERT или безусловное правило ON INSERT DO INSTEAD."
 
-#: executor/execMain.c:1041 rewrite/rewriteHandler.c:3077
-#: rewrite/rewriteHandler.c:3924
+#: executor/execMain.c:1071 rewrite/rewriteHandler.c:3087
+#: rewrite/rewriteHandler.c:3974
 #, c-format
 msgid "cannot update view \"%s\""
 msgstr "изменить данные в представлении \"%s\" нельзя"
 
-#: executor/execMain.c:1043 rewrite/rewriteHandler.c:3080
-#: rewrite/rewriteHandler.c:3927
+#: executor/execMain.c:1073 rewrite/rewriteHandler.c:3090
+#: rewrite/rewriteHandler.c:3977
 #, c-format
 msgid ""
 "To enable updating the view, provide an INSTEAD OF UPDATE trigger or an "
@@ -14404,14 +14876,14 @@ msgstr ""
 "Чтобы представление допускало изменение данных, установите триггер INSTEAD "
 "OF UPDATE или безусловное правило ON UPDATE DO INSTEAD."
 
-#: executor/execMain.c:1049 rewrite/rewriteHandler.c:3085
-#: rewrite/rewriteHandler.c:3932
+#: executor/execMain.c:1079 rewrite/rewriteHandler.c:3095
+#: rewrite/rewriteHandler.c:3982
 #, c-format
 msgid "cannot delete from view \"%s\""
 msgstr "удалить данные из представления \"%s\" нельзя"
 
-#: executor/execMain.c:1051 rewrite/rewriteHandler.c:3088
-#: rewrite/rewriteHandler.c:3935
+#: executor/execMain.c:1081 rewrite/rewriteHandler.c:3098
+#: rewrite/rewriteHandler.c:3985
 #, c-format
 msgid ""
 "To enable deleting from the view, provide an INSTEAD OF DELETE trigger or an "
@@ -14420,119 +14892,119 @@ msgstr ""
 "Чтобы представление допускало удаление данных, установите триггер INSTEAD OF "
 "DELETE или безусловное правило ON DELETE DO INSTEAD."
 
-#: executor/execMain.c:1062
+#: executor/execMain.c:1092
 #, c-format
 msgid "cannot change materialized view \"%s\""
 msgstr "изменить материализованное представление \"%s\" нельзя"
 
-#: executor/execMain.c:1074
+#: executor/execMain.c:1104
 #, c-format
 msgid "cannot insert into foreign table \"%s\""
 msgstr "вставлять данные в стороннюю таблицу \"%s\" нельзя"
 
-#: executor/execMain.c:1080
+#: executor/execMain.c:1110
 #, c-format
 msgid "foreign table \"%s\" does not allow inserts"
 msgstr "сторонняя таблица \"%s\" не допускает добавления"
 
-#: executor/execMain.c:1087
+#: executor/execMain.c:1117
 #, c-format
 msgid "cannot update foreign table \"%s\""
 msgstr "изменять данные в сторонней таблице \"%s\""
 
-#: executor/execMain.c:1093
+#: executor/execMain.c:1123
 #, c-format
 msgid "foreign table \"%s\" does not allow updates"
 msgstr "сторонняя таблица \"%s\" не допускает изменения"
 
-#: executor/execMain.c:1100
+#: executor/execMain.c:1130
 #, c-format
 msgid "cannot delete from foreign table \"%s\""
 msgstr "удалять данные из сторонней таблицы \"%s\" нельзя"
 
-#: executor/execMain.c:1106
+#: executor/execMain.c:1136
 #, c-format
 msgid "foreign table \"%s\" does not allow deletes"
 msgstr "сторонняя таблица \"%s\" не допускает удаления"
 
-#: executor/execMain.c:1117
+#: executor/execMain.c:1147
 #, c-format
 msgid "cannot change relation \"%s\""
 msgstr "отношение \"%s\" изменить нельзя"
 
-#: executor/execMain.c:1144
+#: executor/execMain.c:1174
 #, c-format
 msgid "cannot lock rows in sequence \"%s\""
 msgstr "блокировать строки в последовательности \"%s\" нельзя"
 
-#: executor/execMain.c:1151
+#: executor/execMain.c:1181
 #, c-format
 msgid "cannot lock rows in TOAST relation \"%s\""
 msgstr "блокировать строки в TOAST-отношении \"%s\" нельзя"
 
-#: executor/execMain.c:1158
+#: executor/execMain.c:1188
 #, c-format
 msgid "cannot lock rows in view \"%s\""
 msgstr "блокировать строки в представлении \"%s\" нельзя"
 
-#: executor/execMain.c:1166
+#: executor/execMain.c:1196
 #, c-format
 msgid "cannot lock rows in materialized view \"%s\""
 msgstr "блокировать строки в материализованном представлении \"%s\" нельзя"
 
-#: executor/execMain.c:1175 executor/execMain.c:2653
-#: executor/nodeLockRows.c:136
+#: executor/execMain.c:1205 executor/execMain.c:2708
+#: executor/nodeLockRows.c:135
 #, c-format
 msgid "cannot lock rows in foreign table \"%s\""
 msgstr "блокировать строки в сторонней таблице \"%s\" нельзя"
 
-#: executor/execMain.c:1181
+#: executor/execMain.c:1211
 #, c-format
 msgid "cannot lock rows in relation \"%s\""
 msgstr "блокировать строки в отношении \"%s\" нельзя"
 
-#: executor/execMain.c:1888
+#: executor/execMain.c:1922
 #, c-format
 msgid "new row for relation \"%s\" violates partition constraint"
 msgstr "новая строка в отношении \"%s\" нарушает ограничение секции"
 
-#: executor/execMain.c:1890 executor/execMain.c:1973 executor/execMain.c:2023
-#: executor/execMain.c:2132
+#: executor/execMain.c:1924 executor/execMain.c:2008 executor/execMain.c:2059
+#: executor/execMain.c:2169
 #, c-format
 msgid "Failing row contains %s."
 msgstr "Ошибочная строка содержит %s."
 
-#: executor/execMain.c:1970
+#: executor/execMain.c:2005
 #, c-format
 msgid ""
 "null value in column \"%s\" of relation \"%s\" violates not-null constraint"
 msgstr ""
 "значение NULL в столбце \"%s\" отношения \"%s\" нарушает ограничение NOT NULL"
 
-#: executor/execMain.c:2021
+#: executor/execMain.c:2057
 #, c-format
 msgid "new row for relation \"%s\" violates check constraint \"%s\""
 msgstr "новая строка в отношении \"%s\" нарушает ограничение-проверку \"%s\""
 
-#: executor/execMain.c:2130
+#: executor/execMain.c:2167
 #, c-format
 msgid "new row violates check option for view \"%s\""
 msgstr "новая строка нарушает ограничение-проверку для представления \"%s\""
 
-#: executor/execMain.c:2140
+#: executor/execMain.c:2177
 #, c-format
 msgid "new row violates row-level security policy \"%s\" for table \"%s\""
 msgstr ""
 "новая строка нарушает политику защиты на уровне строк \"%s\" для таблицы "
 "\"%s\""
 
-#: executor/execMain.c:2145
+#: executor/execMain.c:2182
 #, c-format
 msgid "new row violates row-level security policy for table \"%s\""
 msgstr ""
 "новая строка нарушает политику защиты на уровне строк для таблицы \"%s\""
 
-#: executor/execMain.c:2153
+#: executor/execMain.c:2190
 #, c-format
 msgid ""
 "target row violates row-level security policy \"%s\" (USING expression) for "
@@ -14541,7 +15013,7 @@ msgstr ""
 "целевая строка нарушает политику защиты на уровне строк \"%s\" (выражение "
 "USING) для таблицы \"%s\""
 
-#: executor/execMain.c:2158
+#: executor/execMain.c:2195
 #, c-format
 msgid ""
 "target row violates row-level security policy (USING expression) for table "
@@ -14550,7 +15022,7 @@ msgstr ""
 "новая строка нарушает политику защиты на уровне строк (выражение USING) для "
 "таблицы \"%s\""
 
-#: executor/execMain.c:2165
+#: executor/execMain.c:2202
 #, c-format
 msgid ""
 "new row violates row-level security policy \"%s\" (USING expression) for "
@@ -14559,7 +15031,7 @@ msgstr ""
 "новая строка нарушает политику защиты на уровне строк \"%s\" (выражение "
 "USING) для таблицы \"%s\""
 
-#: executor/execMain.c:2170
+#: executor/execMain.c:2207
 #, c-format
 msgid ""
 "new row violates row-level security policy (USING expression) for table "
@@ -14578,7 +15050,7 @@ msgstr "для строки не найдена секция в отношени
 msgid "Partition key of the failing row contains %s."
 msgstr "Ключ секционирования для неподходящей строки содержит %s."
 
-#: executor/execReplication.c:196 executor/execReplication.c:373
+#: executor/execReplication.c:231 executor/execReplication.c:415
 #, c-format
 msgid ""
 "tuple to be locked was already moved to another partition due to concurrent "
@@ -14587,31 +15059,31 @@ msgstr ""
 "кортеж, подлежащий блокировке, был перемещён в другую секцию в результате "
 "параллельного изменения; следует повторная попытка"
 
-#: executor/execReplication.c:200 executor/execReplication.c:377
+#: executor/execReplication.c:235 executor/execReplication.c:419
 #, c-format
 msgid "concurrent update, retrying"
 msgstr "параллельное изменение; следует повторная попытка"
 
-#: executor/execReplication.c:206 executor/execReplication.c:383
+#: executor/execReplication.c:241 executor/execReplication.c:425
 #, c-format
 msgid "concurrent delete, retrying"
 msgstr "параллельное удаление; следует повторная попытка"
 
-#: executor/execReplication.c:269 parser/parse_cte.c:308
-#: parser/parse_oper.c:233 utils/adt/array_userfuncs.c:720
-#: utils/adt/array_userfuncs.c:859 utils/adt/arrayfuncs.c:3655
-#: utils/adt/arrayfuncs.c:4210 utils/adt/arrayfuncs.c:6202
-#: utils/adt/rowtypes.c:1203
+#: executor/execReplication.c:311 parser/parse_cte.c:308
+#: parser/parse_oper.c:233 utils/adt/array_userfuncs.c:1348
+#: utils/adt/array_userfuncs.c:1491 utils/adt/arrayfuncs.c:3832
+#: utils/adt/arrayfuncs.c:4387 utils/adt/arrayfuncs.c:6397
+#: utils/adt/rowtypes.c:1230
 #, c-format
 msgid "could not identify an equality operator for type %s"
 msgstr "не удалось найти оператор равенства для типа %s"
 
-#: executor/execReplication.c:599 executor/execReplication.c:605
+#: executor/execReplication.c:642 executor/execReplication.c:648
 #, c-format
 msgid "cannot update table \"%s\""
 msgstr "изменять данные в таблице \"%s\" нельзя"
 
-#: executor/execReplication.c:601 executor/execReplication.c:613
+#: executor/execReplication.c:644 executor/execReplication.c:656
 #, c-format
 msgid ""
 "Column used in the publication WHERE expression is not part of the replica "
@@ -14620,7 +15092,7 @@ msgstr ""
 "Столбец, фигурирующий в выражении WHERE публикации, не входит в "
 "идентификатор реплики."
 
-#: executor/execReplication.c:607 executor/execReplication.c:619
+#: executor/execReplication.c:650 executor/execReplication.c:662
 #, c-format
 msgid ""
 "Column list used by the publication does not cover the replica identity."
@@ -14628,12 +15100,12 @@ msgstr ""
 "Список столбцов, используемых в публикации, не покрывает идентификатор "
 "реплики."
 
-#: executor/execReplication.c:611 executor/execReplication.c:617
+#: executor/execReplication.c:654 executor/execReplication.c:660
 #, c-format
 msgid "cannot delete from table \"%s\""
 msgstr "удалять данные из таблицы \"%s\" нельзя"
 
-#: executor/execReplication.c:637
+#: executor/execReplication.c:680
 #, c-format
 msgid ""
 "cannot update table \"%s\" because it does not have a replica identity and "
@@ -14642,14 +15114,14 @@ msgstr ""
 "изменение в таблице \"%s\" невозможно, так как в ней отсутствует "
 "идентификатор реплики, но она публикует изменения"
 
-#: executor/execReplication.c:639
+#: executor/execReplication.c:682
 #, c-format
 msgid "To enable updating the table, set REPLICA IDENTITY using ALTER TABLE."
 msgstr ""
 "Чтобы эта таблица поддерживала изменение, установите REPLICA IDENTITY, "
 "выполнив ALTER TABLE."
 
-#: executor/execReplication.c:643
+#: executor/execReplication.c:686
 #, c-format
 msgid ""
 "cannot delete from table \"%s\" because it does not have a replica identity "
@@ -14658,7 +15130,7 @@ msgstr ""
 "удаление из таблицы \"%s\" невозможно, так как в ней отсутствует "
 "идентификатор реплики, но она публикует удаления"
 
-#: executor/execReplication.c:645
+#: executor/execReplication.c:688
 #, c-format
 msgid ""
 "To enable deleting from the table, set REPLICA IDENTITY using ALTER TABLE."
@@ -14666,34 +15138,34 @@ msgstr ""
 "Чтобы эта таблица поддерживала удаление, установите REPLICA IDENTITY, "
 "выполнив ALTER TABLE."
 
-#: executor/execReplication.c:661
+#: executor/execReplication.c:704
 #, c-format
 msgid "cannot use relation \"%s.%s\" as logical replication target"
 msgstr ""
 "в качестве целевого отношения для логической репликации нельзя использовать "
 "\"%s.%s\""
 
-#: executor/execSRF.c:315
+#: executor/execSRF.c:316
 #, c-format
 msgid "rows returned by function are not all of the same row type"
 msgstr "строки, возвращённые функцией, имеют разные типы"
 
-#: executor/execSRF.c:365
+#: executor/execSRF.c:366
 #, c-format
 msgid "table-function protocol for value-per-call mode was not followed"
 msgstr "нарушение протокола табличной функции в режиме вызов-значение"
 
-#: executor/execSRF.c:373 executor/execSRF.c:667
+#: executor/execSRF.c:374 executor/execSRF.c:668
 #, c-format
 msgid "table-function protocol for materialize mode was not followed"
 msgstr "нарушение протокола табличной функции в режиме материализации"
 
-#: executor/execSRF.c:380 executor/execSRF.c:685
+#: executor/execSRF.c:381 executor/execSRF.c:686
 #, c-format
 msgid "unrecognized table-function returnMode: %d"
 msgstr "нераспознанный режим возврата табличной функции: %d"
 
-#: executor/execSRF.c:894
+#: executor/execSRF.c:895
 #, c-format
 msgid ""
 "function returning setof record called in context that cannot accept type "
@@ -14702,12 +15174,12 @@ msgstr ""
 "функция, возвращающая запись SET OF, вызвана в контексте, не допускающем "
 "этот тип"
 
-#: executor/execSRF.c:950 executor/execSRF.c:966 executor/execSRF.c:976
+#: executor/execSRF.c:951 executor/execSRF.c:967 executor/execSRF.c:977
 #, c-format
 msgid "function return row and query-specified return row do not match"
 msgstr "тип результат функции отличается от типа строки-результата запроса"
 
-#: executor/execSRF.c:951
+#: executor/execSRF.c:952
 #, c-format
 msgid "Returned row contains %d attribute, but query expects %d."
 msgid_plural "Returned row contains %d attributes, but query expects %d."
@@ -14717,23 +15189,23 @@ msgstr[1] ""
 msgstr[2] ""
 "Возвращённая строка содержит %d атрибутов, но запрос предполагает %d."
 
-#: executor/execSRF.c:967
+#: executor/execSRF.c:968
 #, c-format
 msgid "Returned type %s at ordinal position %d, but query expects %s."
 msgstr "Возвращён тип %s (номер столбца: %d), а в запросе предполагается %s."
 
 #: executor/execTuples.c:146 executor/execTuples.c:353
-#: executor/execTuples.c:521 executor/execTuples.c:712
+#: executor/execTuples.c:521 executor/execTuples.c:713
 #, c-format
 msgid "cannot retrieve a system column in this context"
 msgstr "системный столбец нельзя получить в данном контексте"
 
-#: executor/execUtils.c:742
+#: executor/execUtils.c:744
 #, c-format
 msgid "materialized view \"%s\" has not been populated"
 msgstr "материализованное представление \"%s\" не было наполнено"
 
-#: executor/execUtils.c:744
+#: executor/execUtils.c:746
 #, c-format
 msgid "Use the REFRESH MATERIALIZED VIEW command."
 msgstr "Примените команду REFRESH MATERIALIZED VIEW."
@@ -14743,48 +15215,48 @@ msgstr "Примените команду REFRESH MATERIALIZED VIEW."
 msgid "could not determine actual type of argument declared %s"
 msgstr "не удалось определить фактический тип аргумента, объявленного как %s"
 
-#: executor/functions.c:514
+#: executor/functions.c:512
 #, c-format
 msgid "cannot COPY to/from client in an SQL function"
 msgstr "в функции SQL нельзя выполнить COPY с участием клиента"
 
 #. translator: %s is a SQL statement name
-#: executor/functions.c:520
+#: executor/functions.c:518
 #, c-format
 msgid "%s is not allowed in an SQL function"
 msgstr "%s нельзя использовать в SQL-функции"
 
 #. translator: %s is a SQL statement name
-#: executor/functions.c:528 executor/spi.c:1742 executor/spi.c:2631
+#: executor/functions.c:526 executor/spi.c:1742 executor/spi.c:2635
 #, c-format
 msgid "%s is not allowed in a non-volatile function"
 msgstr "%s нельзя использовать в не изменчивой (volatile) функции"
 
-#: executor/functions.c:1457
+#: executor/functions.c:1450
 #, c-format
 msgid "SQL function \"%s\" statement %d"
 msgstr "SQL-функция \"%s\", оператор %d"
 
-#: executor/functions.c:1483
+#: executor/functions.c:1476
 #, c-format
 msgid "SQL function \"%s\" during startup"
 msgstr "SQL-функция \"%s\" (при старте)"
 
-#: executor/functions.c:1568
+#: executor/functions.c:1561
 #, c-format
 msgid ""
 "calling procedures with output arguments is not supported in SQL functions"
 msgstr ""
 "вызов процедур с выходными аргументами в функциях SQL не поддерживается"
 
-#: executor/functions.c:1701 executor/functions.c:1739
-#: executor/functions.c:1753 executor/functions.c:1843
-#: executor/functions.c:1876 executor/functions.c:1890
+#: executor/functions.c:1694 executor/functions.c:1732
+#: executor/functions.c:1746 executor/functions.c:1836
+#: executor/functions.c:1869 executor/functions.c:1883
 #, c-format
 msgid "return type mismatch in function declared to return %s"
 msgstr "несовпадение типа возврата в функции (в объявлении указан тип %s)"
 
-#: executor/functions.c:1703
+#: executor/functions.c:1696
 #, c-format
 msgid ""
 "Function's final statement must be SELECT or INSERT/UPDATE/DELETE RETURNING."
@@ -14792,72 +15264,58 @@ msgstr ""
 "Последним оператором в функции должен быть SELECT или INSERT/UPDATE/DELETE "
 "RETURNING."
 
-#: executor/functions.c:1741
+#: executor/functions.c:1734
 #, c-format
 msgid "Final statement must return exactly one column."
 msgstr "Последний оператор должен возвращать один столбец."
 
-#: executor/functions.c:1755
+#: executor/functions.c:1748
 #, c-format
 msgid "Actual return type is %s."
 msgstr "Фактический тип возврата: %s."
 
-#: executor/functions.c:1845
+#: executor/functions.c:1838
 #, c-format
 msgid "Final statement returns too many columns."
 msgstr "Последний оператор возвращает слишком много столбцов."
 
-#: executor/functions.c:1878
+#: executor/functions.c:1871
 #, c-format
 msgid "Final statement returns %s instead of %s at column %d."
 msgstr "Последний оператор возвращает %s вместо %s для столбца %d."
 
-#: executor/functions.c:1892
+#: executor/functions.c:1885
 #, c-format
 msgid "Final statement returns too few columns."
 msgstr "Последний оператор возвращает слишком мало столбцов."
 
-#: executor/functions.c:1920
+#: executor/functions.c:1913
 #, c-format
 msgid "return type %s is not supported for SQL functions"
 msgstr "для SQL-функций тип возврата %s не поддерживается"
 
-#: executor/nodeAgg.c:3006 executor/nodeAgg.c:3015 executor/nodeAgg.c:3027
-#, c-format
-msgid "unexpected EOF for tape %p: requested %zu bytes, read %zu bytes"
-msgstr ""
-"неожиданный конец файла для ленты %p: запрашивалось байт: %zu, прочитано: %zu"
-
-#: executor/nodeAgg.c:3922 executor/nodeWindowAgg.c:2982
+#: executor/nodeAgg.c:3937 executor/nodeWindowAgg.c:2993
 #, c-format
 msgid "aggregate %u needs to have compatible input type and transition type"
 msgstr ""
 "агрегатная функция %u должна иметь совместимые входной и переходный типы"
 
-#: executor/nodeAgg.c:3952 parser/parse_agg.c:668 parser/parse_agg.c:696
+#: executor/nodeAgg.c:3967 parser/parse_agg.c:669 parser/parse_agg.c:697
 #, c-format
 msgid "aggregate function calls cannot be nested"
 msgstr "вложенные вызовы агрегатных функций недопустимы"
 
-#: executor/nodeCustom.c:145 executor/nodeCustom.c:156
+#: executor/nodeCustom.c:154 executor/nodeCustom.c:165
 #, c-format
 msgid "custom scan \"%s\" does not support MarkPos"
 msgstr "нестандартное сканирование \"%s\" не поддерживает MarkPos"
 
-#: executor/nodeHashjoin.c:1046 executor/nodeHashjoin.c:1076
+#: executor/nodeHashjoin.c:1143 executor/nodeHashjoin.c:1173
 #, c-format
 msgid "could not rewind hash-join temporary file"
 msgstr "не удалось переместиться во временном файле хеш-соединения"
 
-#: executor/nodeHashjoin.c:1272 executor/nodeHashjoin.c:1283
-#, c-format
-msgid ""
-"could not read from hash-join temporary file: read only %zu of %zu bytes"
-msgstr ""
-"не удалось прочитать временный файл хеш-соединения (прочитано байт: %zu из "
-"%zu)"
-
-#: executor/nodeIndexonlyscan.c:240
+#: executor/nodeIndexonlyscan.c:238
 #, c-format
 msgid "lossy distance functions are not supported in index-only scans"
 msgstr ""
@@ -14874,25 +15332,25 @@ msgstr "OFFSET не может быть отрицательным"
 msgid "LIMIT must not be negative"
 msgstr "LIMIT не может быть отрицательным"
 
-#: executor/nodeMergejoin.c:1570
+#: executor/nodeMergejoin.c:1579
 #, c-format
 msgid "RIGHT JOIN is only supported with merge-joinable join conditions"
 msgstr ""
 "RIGHT JOIN поддерживается только с условиями, допускающими соединение "
 "слиянием"
 
-#: executor/nodeMergejoin.c:1588
+#: executor/nodeMergejoin.c:1597
 #, c-format
 msgid "FULL JOIN is only supported with merge-joinable join conditions"
 msgstr ""
 "FULL JOIN поддерживается только с условиями, допускающими соединение слиянием"
 
-#: executor/nodeModifyTable.c:257
+#: executor/nodeModifyTable.c:234
 #, c-format
 msgid "Query has too few columns."
 msgstr "Запрос возвращает меньше столбцов."
 
-#: executor/nodeModifyTable.c:1534 executor/nodeModifyTable.c:1608
+#: executor/nodeModifyTable.c:1530 executor/nodeModifyTable.c:1604
 #, c-format
 msgid ""
 "tuple to be deleted was already modified by an operation triggered by the "
@@ -14901,12 +15359,12 @@ msgstr ""
 "кортеж, который должен быть удалён, уже модифицирован в операции, вызванной "
 "текущей командой"
 
-#: executor/nodeModifyTable.c:1759
+#: executor/nodeModifyTable.c:1758
 #, c-format
 msgid "invalid ON UPDATE specification"
 msgstr "неверное указание ON UPDATE"
 
-#: executor/nodeModifyTable.c:1760
+#: executor/nodeModifyTable.c:1759
 #, c-format
 msgid ""
 "The result tuple would appear in a different partition than the original "
@@ -14915,7 +15373,7 @@ msgstr ""
 "Результирующий кортеж окажется перемещённым из секции исходного кортежа в "
 "другую."
 
-#: executor/nodeModifyTable.c:2207
+#: executor/nodeModifyTable.c:2217
 #, c-format
 msgid ""
 "cannot move tuple across partitions when a non-root ancestor of the source "
@@ -14924,25 +15382,25 @@ msgstr ""
 "нельзя переместить кортеж между секциями, когда внешний ключ непосредственно "
 "ссылается на предка исходной секции, который не является корнем иерархии"
 
-#: executor/nodeModifyTable.c:2208
+#: executor/nodeModifyTable.c:2218
 #, c-format
 msgid ""
 "A foreign key points to ancestor \"%s\" but not the root ancestor \"%s\"."
 msgstr ""
 "Внешний ключ ссылается на предка \"%s\", а не на корневого предка \"%s\"."
 
-#: executor/nodeModifyTable.c:2211
+#: executor/nodeModifyTable.c:2221
 #, c-format
 msgid "Consider defining the foreign key on table \"%s\"."
 msgstr "Возможно, имеет смысл перенацелить внешний ключ на таблицу \"%s\"."
 
 #. translator: %s is a SQL command name
-#: executor/nodeModifyTable.c:2555 executor/nodeModifyTable.c:2946
+#: executor/nodeModifyTable.c:2567 executor/nodeModifyTable.c:2955
 #, c-format
 msgid "%s command cannot affect row a second time"
 msgstr "команда %s не может подействовать на строку дважды"
 
-#: executor/nodeModifyTable.c:2557
+#: executor/nodeModifyTable.c:2569
 #, c-format
 msgid ""
 "Ensure that no rows proposed for insertion within the same command have "
@@ -14951,14 +15409,14 @@ msgstr ""
 "Проверьте, не содержат ли строки, которые должна добавить команда, "
 "дублирующиеся значения, подпадающие под ограничения."
 
-#: executor/nodeModifyTable.c:2948
+#: executor/nodeModifyTable.c:2957
 #, c-format
 msgid "Ensure that not more than one source row matches any one target row."
 msgstr ""
 "Проверьте, не может ли какой-либо целевой строке соответствовать более одной "
 "исходной строки."
 
-#: executor/nodeModifyTable.c:3051
+#: executor/nodeModifyTable.c:3038
 #, c-format
 msgid ""
 "tuple to be deleted was already moved to another partition due to concurrent "
@@ -14967,7 +15425,7 @@ msgstr ""
 "кортеж, подлежащий удалению, был перемещён в другую секцию в результате "
 "параллельного изменения"
 
-#: executor/nodeModifyTable.c:3090
+#: executor/nodeModifyTable.c:3077
 #, c-format
 msgid ""
 "tuple to be updated or deleted was already modified by an operation "
@@ -14986,8 +15444,8 @@ msgstr "параметр TABLESAMPLE не может быть NULL"
 msgid "TABLESAMPLE REPEATABLE parameter cannot be null"
 msgstr "параметр TABLESAMPLE REPEATABLE не может быть NULL"
 
-#: executor/nodeSubplan.c:346 executor/nodeSubplan.c:385
-#: executor/nodeSubplan.c:1159
+#: executor/nodeSubplan.c:325 executor/nodeSubplan.c:351
+#: executor/nodeSubplan.c:405 executor/nodeSubplan.c:1174
 #, c-format
 msgid "more than one row returned by a subquery used as an expression"
 msgstr "подзапрос в выражении вернул больше одной строки"
@@ -15017,32 +15475,32 @@ msgstr "Для столбца \"%s\" задано выражение NULL."
 msgid "null is not allowed in column \"%s\""
 msgstr "в столбце \"%s\" не допускается NULL"
 
-#: executor/nodeWindowAgg.c:355
+#: executor/nodeWindowAgg.c:356
 #, c-format
 msgid "moving-aggregate transition function must not return null"
 msgstr "функция перехода движимого агрегата не должна возвращать NULL"
 
-#: executor/nodeWindowAgg.c:2080
+#: executor/nodeWindowAgg.c:2083
 #, c-format
 msgid "frame starting offset must not be null"
 msgstr "смещение начала рамки не может быть NULL"
 
-#: executor/nodeWindowAgg.c:2093
+#: executor/nodeWindowAgg.c:2096
 #, c-format
 msgid "frame starting offset must not be negative"
 msgstr "смещение начала рамки не может быть отрицательным"
 
-#: executor/nodeWindowAgg.c:2105
+#: executor/nodeWindowAgg.c:2108
 #, c-format
 msgid "frame ending offset must not be null"
 msgstr "смещение конца рамки не может быть NULL"
 
-#: executor/nodeWindowAgg.c:2118
+#: executor/nodeWindowAgg.c:2121
 #, c-format
 msgid "frame ending offset must not be negative"
 msgstr "смещение конца рамки не может быть отрицательным"
 
-#: executor/nodeWindowAgg.c:2898
+#: executor/nodeWindowAgg.c:2909
 #, c-format
 msgid "aggregate function %s does not support use as a window function"
 msgstr ""
@@ -15095,33 +15553,33 @@ msgstr "не удалось открыть запрос %s как курсор"
 msgid "DECLARE SCROLL CURSOR ... FOR UPDATE/SHARE is not supported"
 msgstr "DECLARE SCROLL CURSOR ... FOR UPDATE/SHARE не поддерживается"
 
-#: executor/spi.c:1717 parser/analyze.c:2861
+#: executor/spi.c:1717 parser/analyze.c:2912
 #, c-format
 msgid "Scrollable cursors must be READ ONLY."
 msgstr "Прокручиваемые курсоры должны быть READ ONLY."
 
-#: executor/spi.c:2470
+#: executor/spi.c:2474
 #, c-format
 msgid "empty query does not return tuples"
 msgstr "пустой запрос не возвращает кортежи"
 
 #. translator: %s is name of a SQL command, eg INSERT
-#: executor/spi.c:2544
+#: executor/spi.c:2548
 #, c-format
 msgid "%s query does not return tuples"
 msgstr "запрос %s не возвращает кортежи"
 
-#: executor/spi.c:2959
+#: executor/spi.c:2963
 #, c-format
 msgid "SQL expression \"%s\""
 msgstr "SQL-выражение \"%s\""
 
-#: executor/spi.c:2964
+#: executor/spi.c:2968
 #, c-format
 msgid "PL/pgSQL assignment \"%s\""
 msgstr "присваивание PL/pgSQL \"%s\""
 
-#: executor/spi.c:2967
+#: executor/spi.c:2971
 #, c-format
 msgid "SQL statement \"%s\""
 msgstr "SQL-оператор: \"%s\""
@@ -15131,33 +15589,28 @@ msgstr "SQL-оператор: \"%s\""
 msgid "could not send tuple to shared-memory queue"
 msgstr "не удалось передать кортеж в очередь в разделяемой памяти"
 
-#: foreign/foreign.c:221
+#: foreign/foreign.c:222
 #, c-format
 msgid "user mapping not found for \"%s\""
 msgstr "сопоставление пользователя для \"%s\" не найдено"
 
-#: foreign/foreign.c:638
+#: foreign/foreign.c:647 storage/file/fd.c:3931
 #, c-format
 msgid "invalid option \"%s\""
 msgstr "неверный параметр \"%s\""
 
-#: foreign/foreign.c:640
+#: foreign/foreign.c:649
 #, c-format
-msgid "Valid options in this context are: %s"
-msgstr "В данном контексте допустимы параметры: %s"
+msgid "Perhaps you meant the option \"%s\"."
+msgstr "Возможно, предполагался параметр \"%s\"."
 
-#: foreign/foreign.c:642
+#: foreign/foreign.c:651
 #, c-format
 msgid "There are no valid options in this context."
 msgstr "В данном контексте недопустимы никакие параметры."
 
-#: jit/jit.c:205 utils/fmgr/dfmgr.c:209 utils/fmgr/dfmgr.c:415
-#, c-format
-msgid "could not access file \"%s\": %m"
-msgstr "нет доступа к файлу \"%s\": %m"
-
-#: lib/dshash.c:254 utils/mmgr/dsa.c:702 utils/mmgr/dsa.c:724
-#: utils/mmgr/dsa.c:805
+#: lib/dshash.c:254 utils/mmgr/dsa.c:715 utils/mmgr/dsa.c:737
+#: utils/mmgr/dsa.c:818
 #, c-format
 msgid "Failed on DSA request of size %zu."
 msgstr "Ошибка при запросе памяти DSA (%zu Б)."
@@ -15167,77 +15620,77 @@ msgstr "Ошибка при запросе памяти DSA (%zu Б)."
 msgid "expected SASL response, got message type %d"
 msgstr "ожидался ответ SASL, но получено сообщение %d"
 
-#: libpq/auth-scram.c:258
+#: libpq/auth-scram.c:270
 #, c-format
 msgid "client selected an invalid SASL authentication mechanism"
 msgstr "клиент выбрал неверный механизм аутентификации SASL"
 
-#: libpq/auth-scram.c:279 libpq/auth-scram.c:523 libpq/auth-scram.c:534
+#: libpq/auth-scram.c:294 libpq/auth-scram.c:543 libpq/auth-scram.c:554
 #, c-format
 msgid "invalid SCRAM secret for user \"%s\""
 msgstr "неверная запись секрета SCRAM для пользователя \"%s\""
 
-#: libpq/auth-scram.c:290
+#: libpq/auth-scram.c:305
 #, c-format
 msgid "User \"%s\" does not have a valid SCRAM secret."
 msgstr "Для пользователя \"%s\" нет подходящей записи секрета SCRAM."
 
-#: libpq/auth-scram.c:368 libpq/auth-scram.c:373 libpq/auth-scram.c:714
-#: libpq/auth-scram.c:722 libpq/auth-scram.c:827 libpq/auth-scram.c:840
-#: libpq/auth-scram.c:850 libpq/auth-scram.c:958 libpq/auth-scram.c:965
-#: libpq/auth-scram.c:980 libpq/auth-scram.c:995 libpq/auth-scram.c:1009
-#: libpq/auth-scram.c:1027 libpq/auth-scram.c:1042 libpq/auth-scram.c:1355
-#: libpq/auth-scram.c:1363
+#: libpq/auth-scram.c:385 libpq/auth-scram.c:390 libpq/auth-scram.c:744
+#: libpq/auth-scram.c:752 libpq/auth-scram.c:857 libpq/auth-scram.c:870
+#: libpq/auth-scram.c:880 libpq/auth-scram.c:988 libpq/auth-scram.c:995
+#: libpq/auth-scram.c:1010 libpq/auth-scram.c:1025 libpq/auth-scram.c:1039
+#: libpq/auth-scram.c:1057 libpq/auth-scram.c:1072 libpq/auth-scram.c:1386
+#: libpq/auth-scram.c:1394
 #, c-format
 msgid "malformed SCRAM message"
 msgstr "неправильное сообщение SCRAM"
 
-#: libpq/auth-scram.c:369
+#: libpq/auth-scram.c:386
 #, c-format
 msgid "The message is empty."
 msgstr "Сообщение пустое."
 
-#: libpq/auth-scram.c:374
+#: libpq/auth-scram.c:391
 #, c-format
 msgid "Message length does not match input length."
 msgstr "Длина сообщения не соответствует входной длине."
 
-#: libpq/auth-scram.c:406
+#: libpq/auth-scram.c:423
 #, c-format
 msgid "invalid SCRAM response"
 msgstr "неверный ответ SCRAM"
 
-#: libpq/auth-scram.c:407
+#: libpq/auth-scram.c:424
 #, c-format
 msgid "Nonce does not match."
 msgstr "Разовый код не совпадает."
 
-#: libpq/auth-scram.c:483
+#: libpq/auth-scram.c:500
 #, c-format
 msgid "could not generate random salt"
 msgstr "не удалось сгенерировать случайную соль"
 
-#: libpq/auth-scram.c:715
+#: libpq/auth-scram.c:745
 #, c-format
 msgid "Expected attribute \"%c\" but found \"%s\"."
 msgstr "Ожидался атрибут \"%c\", но обнаружено \"%s\"."
 
-#: libpq/auth-scram.c:723 libpq/auth-scram.c:851
+#: libpq/auth-scram.c:753 libpq/auth-scram.c:881
 #, c-format
 msgid "Expected character \"=\" for attribute \"%c\"."
 msgstr "Ожидался символ \"=\" для атрибута \"%c\"."
 
-#: libpq/auth-scram.c:828
+#: libpq/auth-scram.c:858
 #, c-format
 msgid "Attribute expected, but found end of string."
 msgstr "Ожидался атрибут, но обнаружен конец строки."
 
-#: libpq/auth-scram.c:841
+#: libpq/auth-scram.c:871
 #, c-format
 msgid "Attribute expected, but found invalid character \"%s\"."
 msgstr "Ожидался атрибут, но обнаружен неправильный символ \"%s\"."
 
-#: libpq/auth-scram.c:959 libpq/auth-scram.c:981
+#: libpq/auth-scram.c:989 libpq/auth-scram.c:1011
 #, c-format
 msgid ""
 "The client selected SCRAM-SHA-256-PLUS, but the SCRAM message does not "
@@ -15246,17 +15699,17 @@ msgstr ""
 "Клиент выбрал алгоритм SCRAM-SHA-256-PLUS, но в сообщении SCRAM отсутствуют "
 "данные связывания каналов."
 
-#: libpq/auth-scram.c:966 libpq/auth-scram.c:996
+#: libpq/auth-scram.c:996 libpq/auth-scram.c:1026
 #, c-format
 msgid "Comma expected, but found character \"%s\"."
 msgstr "Ожидалась запятая, но обнаружен символ \"%s\"."
 
-#: libpq/auth-scram.c:987
+#: libpq/auth-scram.c:1017
 #, c-format
 msgid "SCRAM channel binding negotiation error"
 msgstr "Ошибка согласования связывания каналов SCRAM"
 
-#: libpq/auth-scram.c:988
+#: libpq/auth-scram.c:1018
 #, c-format
 msgid ""
 "The client supports SCRAM channel binding but thinks the server does not.  "
@@ -15265,7 +15718,7 @@ msgstr ""
 "Клиент поддерживает связывание каналов SCRAM, но полагает, что оно не "
 "поддерживается сервером. Однако сервер тоже поддерживает связывание каналов."
 
-#: libpq/auth-scram.c:1010
+#: libpq/auth-scram.c:1040
 #, c-format
 msgid ""
 "The client selected SCRAM-SHA-256 without channel binding, but the SCRAM "
@@ -15274,155 +15727,155 @@ msgstr ""
 "Клиент выбрал алгоритм SCRAM-SHA-256 без связывания каналов, но сообщение "
 "SCRAM содержит данные связывания каналов."
 
-#: libpq/auth-scram.c:1021
+#: libpq/auth-scram.c:1051
 #, c-format
 msgid "unsupported SCRAM channel-binding type \"%s\""
 msgstr "неподдерживаемый тип связывания каналов SCRAM \"%s\""
 
-#: libpq/auth-scram.c:1028
+#: libpq/auth-scram.c:1058
 #, c-format
 msgid "Unexpected channel-binding flag \"%s\"."
 msgstr "Неожиданный флаг связывания каналов \"%s\"."
 
-#: libpq/auth-scram.c:1038
+#: libpq/auth-scram.c:1068
 #, c-format
 msgid "client uses authorization identity, but it is not supported"
 msgstr "клиент передал идентификатор для авторизации, но это не поддерживается"
 
-#: libpq/auth-scram.c:1043
+#: libpq/auth-scram.c:1073
 #, c-format
 msgid "Unexpected attribute \"%s\" in client-first-message."
 msgstr "Неожиданный атрибут \"%s\" в первом сообщении клиента."
 
-#: libpq/auth-scram.c:1059
+#: libpq/auth-scram.c:1089
 #, c-format
 msgid "client requires an unsupported SCRAM extension"
 msgstr "клиенту требуется неподдерживаемое расширение SCRAM"
 
-#: libpq/auth-scram.c:1073
+#: libpq/auth-scram.c:1103
 #, c-format
 msgid "non-printable characters in SCRAM nonce"
 msgstr "непечатаемые символы в разовом коде SCRAM"
 
-#: libpq/auth-scram.c:1203
+#: libpq/auth-scram.c:1234
 #, c-format
 msgid "could not generate random nonce"
 msgstr "не удалось сгенерировать разовый код"
 
-#: libpq/auth-scram.c:1213
+#: libpq/auth-scram.c:1244
 #, c-format
 msgid "could not encode random nonce"
 msgstr "не удалось оформить разовый код"
 
-#: libpq/auth-scram.c:1319
+#: libpq/auth-scram.c:1350
 #, c-format
 msgid "SCRAM channel binding check failed"
 msgstr "ошибка проверки связывания каналов SCRAM"
 
-#: libpq/auth-scram.c:1337
+#: libpq/auth-scram.c:1368
 #, c-format
 msgid "unexpected SCRAM channel-binding attribute in client-final-message"
 msgstr ""
 "неожиданный атрибут связывания каналов в последнем сообщении клиента SCRAM"
 
-#: libpq/auth-scram.c:1356
+#: libpq/auth-scram.c:1387
 #, c-format
 msgid "Malformed proof in client-final-message."
 msgstr "Некорректное подтверждение в последнем сообщении клиента."
 
-#: libpq/auth-scram.c:1364
+#: libpq/auth-scram.c:1395
 #, c-format
 msgid "Garbage found at the end of client-final-message."
 msgstr "Мусор в конце последнего сообщения клиента."
 
-#: libpq/auth.c:275
+#: libpq/auth.c:271
 #, c-format
 msgid "authentication failed for user \"%s\": host rejected"
 msgstr ""
 "пользователь \"%s\" не прошёл проверку подлинности: не разрешённый компьютер"
 
-#: libpq/auth.c:278
+#: libpq/auth.c:274
 #, c-format
 msgid "\"trust\" authentication failed for user \"%s\""
 msgstr "пользователь \"%s\" не прошёл проверку подлинности (\"trust\")"
 
-#: libpq/auth.c:281
+#: libpq/auth.c:277
 #, c-format
 msgid "Ident authentication failed for user \"%s\""
 msgstr "пользователь \"%s\" не прошёл проверку подлинности (Ident)"
 
-#: libpq/auth.c:284
+#: libpq/auth.c:280
 #, c-format
 msgid "Peer authentication failed for user \"%s\""
 msgstr "пользователь \"%s\" не прошёл проверку подлинности (Peer)"
 
-#: libpq/auth.c:289
+#: libpq/auth.c:285
 #, c-format
 msgid "password authentication failed for user \"%s\""
 msgstr "пользователь \"%s\" не прошёл проверку подлинности (по паролю)"
 
-#: libpq/auth.c:294
+#: libpq/auth.c:290
 #, c-format
 msgid "GSSAPI authentication failed for user \"%s\""
 msgstr "пользователь \"%s\" не прошёл проверку подлинности (GSSAPI)"
 
-#: libpq/auth.c:297
+#: libpq/auth.c:293
 #, c-format
 msgid "SSPI authentication failed for user \"%s\""
 msgstr "пользователь \"%s\" не прошёл проверку подлинности (SSPI)"
 
-#: libpq/auth.c:300
+#: libpq/auth.c:296
 #, c-format
 msgid "PAM authentication failed for user \"%s\""
 msgstr "пользователь \"%s\" не прошёл проверку подлинности (PAM)"
 
-#: libpq/auth.c:303
+#: libpq/auth.c:299
 #, c-format
 msgid "BSD authentication failed for user \"%s\""
 msgstr "пользователь \"%s\" не прошёл проверку подлинности (BSD)"
 
-#: libpq/auth.c:306
+#: libpq/auth.c:302
 #, c-format
 msgid "LDAP authentication failed for user \"%s\""
 msgstr "пользователь \"%s\" не прошёл проверку подлинности (LDAP)"
 
-#: libpq/auth.c:309
+#: libpq/auth.c:305
 #, c-format
 msgid "certificate authentication failed for user \"%s\""
 msgstr "пользователь \"%s\" не прошёл проверку подлинности (по сертификату)"
 
-#: libpq/auth.c:312
+#: libpq/auth.c:308
 #, c-format
 msgid "RADIUS authentication failed for user \"%s\""
 msgstr "пользователь \"%s\" не прошёл проверку подлинности (RADIUS)"
 
-#: libpq/auth.c:315
+#: libpq/auth.c:311
 #, c-format
 msgid "authentication failed for user \"%s\": invalid authentication method"
 msgstr ""
 "пользователь \"%s\" не прошёл проверку подлинности: неверный метод проверки"
 
-#: libpq/auth.c:319
+#: libpq/auth.c:315
 #, c-format
-msgid "Connection matched pg_hba.conf line %d: \"%s\""
-msgstr "Подключение соответствует строке %d в pg_hba.conf: \"%s\""
+msgid "Connection matched file \"%s\" line %d: \"%s\""
+msgstr "Подключение соответствует строке %2$d в \"%1$s\": \"%3$s\""
 
-#: libpq/auth.c:362
+#: libpq/auth.c:359
 #, c-format
 msgid "authentication identifier set more than once"
 msgstr "аутентификационный идентификатор указан повторно"
 
-#: libpq/auth.c:363
+#: libpq/auth.c:360
 #, c-format
 msgid "previous identifier: \"%s\"; new identifier: \"%s\""
 msgstr "предыдущий идентификатор: \"%s\"; новый: \"%s\""
 
-#: libpq/auth.c:372
+#: libpq/auth.c:370
 #, c-format
 msgid "connection authenticated: identity=\"%s\" method=%s (%s:%d)"
 msgstr "соединение аутентифицировано: идентификатор=\"%s\" метод=%s (%s:%d)"
 
-#: libpq/auth.c:411
+#: libpq/auth.c:410
 #, c-format
 msgid ""
 "client certificates can only be checked if a root certificate store is "
@@ -15431,25 +15884,25 @@ msgstr ""
 "сертификаты клиентов могут проверяться, только если доступно хранилище "
 "корневых сертификатов"
 
-#: libpq/auth.c:422
+#: libpq/auth.c:421
 #, c-format
 msgid "connection requires a valid client certificate"
 msgstr "для подключения требуется годный сертификат клиента"
 
-#: libpq/auth.c:453 libpq/auth.c:499
+#: libpq/auth.c:452 libpq/auth.c:498
 msgid "GSS encryption"
 msgstr "Шифрование GSS"
 
-#: libpq/auth.c:456 libpq/auth.c:502
+#: libpq/auth.c:455 libpq/auth.c:501
 msgid "SSL encryption"
 msgstr "Шифрование SSL"
 
-#: libpq/auth.c:458 libpq/auth.c:504
+#: libpq/auth.c:457 libpq/auth.c:503
 msgid "no encryption"
 msgstr "без шифрования"
 
 #. translator: last %s describes encryption state
-#: libpq/auth.c:464
+#: libpq/auth.c:463
 #, c-format
 msgid ""
 "pg_hba.conf rejects replication connection for host \"%s\", user \"%s\", %s"
@@ -15458,7 +15911,7 @@ msgstr ""
 "пользователь \"%s\", \"%s\""
 
 #. translator: last %s describes encryption state
-#: libpq/auth.c:471
+#: libpq/auth.c:470
 #, c-format
 msgid ""
 "pg_hba.conf rejects connection for host \"%s\", user \"%s\", database "
@@ -15467,38 +15920,38 @@ msgstr ""
 "pg_hba.conf отвергает подключение: компьютер \"%s\", пользователь \"%s\", "
 "база данных \"%s\", %s"
 
-#: libpq/auth.c:509
+#: libpq/auth.c:508
 #, c-format
 msgid "Client IP address resolved to \"%s\", forward lookup matches."
 msgstr ""
 "IP-адрес клиента разрешается в \"%s\", соответствует прямому преобразованию."
 
-#: libpq/auth.c:512
+#: libpq/auth.c:511
 #, c-format
 msgid "Client IP address resolved to \"%s\", forward lookup not checked."
 msgstr ""
 "IP-адрес клиента разрешается в \"%s\", прямое преобразование не проверялось."
 
-#: libpq/auth.c:515
+#: libpq/auth.c:514
 #, c-format
 msgid "Client IP address resolved to \"%s\", forward lookup does not match."
 msgstr ""
 "IP-адрес клиента разрешается в \"%s\", это не соответствует прямому "
 "преобразованию."
 
-#: libpq/auth.c:518
+#: libpq/auth.c:517
 #, c-format
 msgid "Could not translate client host name \"%s\" to IP address: %s."
 msgstr ""
 "Преобразовать имя клиентского компьютера \"%s\" в IP-адрес не удалось: %s."
 
-#: libpq/auth.c:523
+#: libpq/auth.c:522
 #, c-format
 msgid "Could not resolve client IP address to a host name: %s."
 msgstr "Получить имя компьютера из IP-адреса клиента не удалось: %s."
 
 #. translator: last %s describes encryption state
-#: libpq/auth.c:531
+#: libpq/auth.c:530
 #, c-format
 msgid ""
 "no pg_hba.conf entry for replication connection from host \"%s\", user "
@@ -15508,29 +15961,29 @@ msgstr ""
 "компьютера \"%s\" для пользователя \"%s\", %s"
 
 #. translator: last %s describes encryption state
-#: libpq/auth.c:539
+#: libpq/auth.c:538
 #, c-format
 msgid "no pg_hba.conf entry for host \"%s\", user \"%s\", database \"%s\", %s"
 msgstr ""
 "в pg_hba.conf нет записи для компьютера \"%s\", пользователя \"%s\", базы "
 "\"%s\", %s"
 
-#: libpq/auth.c:712
+#: libpq/auth.c:711
 #, c-format
 msgid "expected password response, got message type %d"
 msgstr "ожидался ответ с паролем, но получено сообщение %d"
 
-#: libpq/auth.c:733
+#: libpq/auth.c:732
 #, c-format
 msgid "invalid password packet size"
 msgstr "неверный размер пакета с паролем"
 
-#: libpq/auth.c:751
+#: libpq/auth.c:750
 #, c-format
 msgid "empty password returned by client"
 msgstr "клиент возвратил пустой пароль"
 
-#: libpq/auth.c:880 libpq/hba.c:1335
+#: libpq/auth.c:879 libpq/hba.c:1727
 #, c-format
 msgid ""
 "MD5 authentication is not supported when \"db_user_namespace\" is enabled"
@@ -15538,225 +15991,215 @@ msgstr ""
 "проверка подлинности MD5 не поддерживается, когда включён режим "
 "\"db_user_namespace\""
 
-#: libpq/auth.c:886
+#: libpq/auth.c:885
 #, c-format
 msgid "could not generate random MD5 salt"
 msgstr "не удалось сгенерировать случайную соль для MD5"
 
-#: libpq/auth.c:935 libpq/be-secure-gssapi.c:535
+#: libpq/auth.c:936 libpq/be-secure-gssapi.c:540
 #, c-format
 msgid "could not set environment: %m"
 msgstr "не удалось задать переменную окружения: %m"
 
-#: libpq/auth.c:971
+#: libpq/auth.c:975
 #, c-format
 msgid "expected GSS response, got message type %d"
 msgstr "ожидался ответ GSS, но получено сообщение %d"
 
-#: libpq/auth.c:1031
+#: libpq/auth.c:1041
 msgid "accepting GSS security context failed"
 msgstr "принять контекст безопасности GSS не удалось"
 
-#: libpq/auth.c:1072
+#: libpq/auth.c:1082
 msgid "retrieving GSS user name failed"
 msgstr "получить имя пользователя GSS не удалось"
 
-#: libpq/auth.c:1221
+#: libpq/auth.c:1228
 msgid "could not acquire SSPI credentials"
 msgstr "не удалось получить удостоверение SSPI"
 
-#: libpq/auth.c:1246
+#: libpq/auth.c:1253
 #, c-format
 msgid "expected SSPI response, got message type %d"
 msgstr "ожидался ответ SSPI, но получено сообщение %d"
 
-#: libpq/auth.c:1324
+#: libpq/auth.c:1331
 msgid "could not accept SSPI security context"
 msgstr "принять контекст безопасности SSPI не удалось"
 
-#: libpq/auth.c:1386
+#: libpq/auth.c:1372
 msgid "could not get token from SSPI security context"
 msgstr "не удалось получить маркер из контекста безопасности SSPI"
 
-#: libpq/auth.c:1525 libpq/auth.c:1544
+#: libpq/auth.c:1508 libpq/auth.c:1527
 #, c-format
 msgid "could not translate name"
 msgstr "не удалось преобразовать имя"
 
-#: libpq/auth.c:1557
+#: libpq/auth.c:1540
 #, c-format
 msgid "realm name too long"
 msgstr "имя области слишком длинное"
 
-#: libpq/auth.c:1572
+#: libpq/auth.c:1555
 #, c-format
 msgid "translated account name too long"
 msgstr "преобразованное имя учётной записи слишком длинное"
 
-#: libpq/auth.c:1753
+#: libpq/auth.c:1734
 #, c-format
 msgid "could not create socket for Ident connection: %m"
 msgstr "не удалось создать сокет для подключения к серверу Ident: %m"
 
-#: libpq/auth.c:1768
+#: libpq/auth.c:1749
 #, c-format
 msgid "could not bind to local address \"%s\": %m"
 msgstr "не удалось привязаться к локальному адресу \"%s\": %m"
 
-#: libpq/auth.c:1780
+#: libpq/auth.c:1761
 #, c-format
 msgid "could not connect to Ident server at address \"%s\", port %s: %m"
 msgstr "не удалось подключиться к серверу Ident по адресу \"%s\", порт %s: %m"
 
-#: libpq/auth.c:1802
+#: libpq/auth.c:1783
 #, c-format
 msgid "could not send query to Ident server at address \"%s\", port %s: %m"
 msgstr ""
 "не удалось отправить запрос серверу Ident по адресу \"%s\", порт %s: %m"
 
-#: libpq/auth.c:1819
+#: libpq/auth.c:1800
 #, c-format
 msgid ""
 "could not receive response from Ident server at address \"%s\", port %s: %m"
 msgstr ""
 "не удалось получить ответ от сервера Ident по адресу \"%s\", порт %s: %m"
 
-#: libpq/auth.c:1829
+#: libpq/auth.c:1810
 #, c-format
 msgid "invalidly formatted response from Ident server: \"%s\""
 msgstr "неверно форматированный ответ от сервера Ident: \"%s\""
 
-#: libpq/auth.c:1882
+#: libpq/auth.c:1863
 #, c-format
 msgid "peer authentication is not supported on this platform"
 msgstr "проверка подлинности peer в этой ОС не поддерживается"
 
-#: libpq/auth.c:1886
+#: libpq/auth.c:1867
 #, c-format
 msgid "could not get peer credentials: %m"
 msgstr "не удалось получить данные пользователя через механизм peer: %m"
 
-#: libpq/auth.c:1898
+#: libpq/auth.c:1879
 #, c-format
 msgid "could not look up local user ID %ld: %s"
 msgstr "найти локального пользователя по идентификатору (%ld) не удалось: %s"
 
-#: libpq/auth.c:1999
+#: libpq/auth.c:1981
 #, c-format
 msgid "error from underlying PAM layer: %s"
 msgstr "ошибка в нижележащем слое PAM: %s"
 
-#: libpq/auth.c:2010
+#: libpq/auth.c:1992
 #, c-format
 msgid "unsupported PAM conversation %d/\"%s\""
 msgstr "неподдерживаемое сообщение ответа PAM %d/\"%s\""
 
-#: libpq/auth.c:2070
+#: libpq/auth.c:2049
 #, c-format
 msgid "could not create PAM authenticator: %s"
 msgstr "не удалось создать аутентификатор PAM: %s"
 
-#: libpq/auth.c:2081
+#: libpq/auth.c:2060
 #, c-format
 msgid "pam_set_item(PAM_USER) failed: %s"
 msgstr "ошибка в pam_set_item(PAM_USER): %s"
 
-#: libpq/auth.c:2113
+#: libpq/auth.c:2092
 #, c-format
 msgid "pam_set_item(PAM_RHOST) failed: %s"
 msgstr "ошибка в pam_set_item(PAM_RHOST): %s"
 
-#: libpq/auth.c:2125
+#: libpq/auth.c:2104
 #, c-format
 msgid "pam_set_item(PAM_CONV) failed: %s"
 msgstr "ошибка в pam_set_item(PAM_CONV): %s"
 
-#: libpq/auth.c:2138
+#: libpq/auth.c:2117
 #, c-format
 msgid "pam_authenticate failed: %s"
 msgstr "ошибка в pam_authenticate: %s"
 
-#: libpq/auth.c:2151
+#: libpq/auth.c:2130
 #, c-format
 msgid "pam_acct_mgmt failed: %s"
 msgstr "ошибка в pam_acct_mgmt: %s"
 
-#: libpq/auth.c:2162
+#: libpq/auth.c:2141
 #, c-format
 msgid "could not release PAM authenticator: %s"
 msgstr "не удалось освободить аутентификатор PAM: %s"
 
-#: libpq/auth.c:2242
+#: libpq/auth.c:2221
 #, c-format
 msgid "could not initialize LDAP: error code %d"
 msgstr "не удалось инициализировать LDAP (код ошибки: %d)"
 
-#: libpq/auth.c:2279
+#: libpq/auth.c:2258
 #, c-format
 msgid "could not extract domain name from ldapbasedn"
 msgstr "не удалось извлечь имя домена из ldapbasedn"
 
-#: libpq/auth.c:2287
+#: libpq/auth.c:2266
 #, c-format
 msgid "LDAP authentication could not find DNS SRV records for \"%s\""
 msgstr "для аутентификации LDAP не удалось найти записи DNS SRV для \"%s\""
 
-#: libpq/auth.c:2289
+#: libpq/auth.c:2268
 #, c-format
 msgid "Set an LDAP server name explicitly."
 msgstr "Задайте имя сервера LDAP явным образом."
 
-#: libpq/auth.c:2341
+#: libpq/auth.c:2320
 #, c-format
 msgid "could not initialize LDAP: %s"
 msgstr "не удалось инициализировать LDAP: %s"
 
-#: libpq/auth.c:2351
+#: libpq/auth.c:2330
 #, c-format
 msgid "ldaps not supported with this LDAP library"
 msgstr "протокол ldaps с текущей библиотекой LDAP не поддерживается"
 
-#: libpq/auth.c:2359
+#: libpq/auth.c:2338
 #, c-format
 msgid "could not initialize LDAP: %m"
 msgstr "не удалось инициализировать LDAP: %m"
 
-#: libpq/auth.c:2369
+#: libpq/auth.c:2348
 #, c-format
 msgid "could not set LDAP protocol version: %s"
 msgstr "не удалось задать версию протокола LDAP: %s"
 
-#: libpq/auth.c:2409
-#, c-format
-msgid "could not load function _ldap_start_tls_sA in wldap32.dll"
-msgstr "не удалось найти функцию _ldap_start_tls_sA в wldap32.dll"
-
-#: libpq/auth.c:2410
-#, c-format
-msgid "LDAP over SSL is not supported on this platform."
-msgstr "LDAP через SSL не поддерживается в этой ОС."
-
-#: libpq/auth.c:2426
+#: libpq/auth.c:2364
 #, c-format
 msgid "could not start LDAP TLS session: %s"
 msgstr "не удалось начать сеанс LDAP TLS: %s"
 
-#: libpq/auth.c:2497
+#: libpq/auth.c:2441
 #, c-format
 msgid "LDAP server not specified, and no ldapbasedn"
 msgstr "LDAP-сервер не задан и значение ldapbasedn не определено"
 
-#: libpq/auth.c:2504
+#: libpq/auth.c:2448
 #, c-format
 msgid "LDAP server not specified"
 msgstr "LDAP-сервер не определён"
 
-#: libpq/auth.c:2566
+#: libpq/auth.c:2510
 #, c-format
 msgid "invalid character in user name for LDAP authentication"
 msgstr "недопустимый символ в имени пользователя для проверки подлинности LDAP"
 
-#: libpq/auth.c:2583
+#: libpq/auth.c:2527
 #, c-format
 msgid ""
 "could not perform initial LDAP bind for ldapbinddn \"%s\" on server \"%s\": "
@@ -15765,28 +16208,28 @@ msgstr ""
 "не удалось выполнить начальную привязку LDAP для ldapbinddn \"%s\" на "
 "сервере \"%s\": %s"
 
-#: libpq/auth.c:2612
+#: libpq/auth.c:2557
 #, c-format
 msgid "could not search LDAP for filter \"%s\" on server \"%s\": %s"
 msgstr ""
 "не удалось выполнить LDAP-поиск по фильтру \"%s\" на сервере \"%s\": %s"
 
-#: libpq/auth.c:2626
+#: libpq/auth.c:2573
 #, c-format
 msgid "LDAP user \"%s\" does not exist"
 msgstr "в LDAP нет пользователя \"%s\""
 
-#: libpq/auth.c:2627
+#: libpq/auth.c:2574
 #, c-format
 msgid "LDAP search for filter \"%s\" on server \"%s\" returned no entries."
 msgstr "LDAP-поиск по фильтру \"%s\" на сервере \"%s\" не вернул результатов"
 
-#: libpq/auth.c:2631
+#: libpq/auth.c:2578
 #, c-format
 msgid "LDAP user \"%s\" is not unique"
 msgstr "пользователь LDAP \"%s\" не уникален"
 
-#: libpq/auth.c:2632
+#: libpq/auth.c:2579
 #, c-format
 msgid "LDAP search for filter \"%s\" on server \"%s\" returned %d entry."
 msgid_plural ""
@@ -15795,7 +16238,7 @@ msgstr[0] "LDAP-поиск по фильтру \"%s\" на сервере \"%s\"
 msgstr[1] "LDAP-поиск по фильтру \"%s\" на сервере \"%s\" вернул %d записи."
 msgstr[2] "LDAP-поиск по фильтру \"%s\" на сервере \"%s\" вернул %d записей."
 
-#: libpq/auth.c:2652
+#: libpq/auth.c:2599
 #, c-format
 msgid ""
 "could not get dn for the first entry matching \"%s\" on server \"%s\": %s"
@@ -15803,24 +16246,24 @@ msgstr ""
 "не удалось получить dn для первого результата, соответствующего \"%s\" на "
 "сервере \"%s\": %s"
 
-#: libpq/auth.c:2673
+#: libpq/auth.c:2620
 #, c-format
 msgid "could not unbind after searching for user \"%s\" on server \"%s\""
 msgstr ""
 "не удалось отвязаться после поиска пользователя \"%s\" на сервере \"%s\""
 
-#: libpq/auth.c:2704
+#: libpq/auth.c:2651
 #, c-format
 msgid "LDAP login failed for user \"%s\" on server \"%s\": %s"
 msgstr ""
 "ошибка при регистрации в LDAP пользователя \"%s\" на сервере \"%s\": %s"
 
-#: libpq/auth.c:2736
+#: libpq/auth.c:2683
 #, c-format
 msgid "LDAP diagnostics: %s"
 msgstr "Диагностика LDAP: %s"
 
-#: libpq/auth.c:2774
+#: libpq/auth.c:2721
 #, c-format
 msgid ""
 "certificate authentication failed for user \"%s\": client certificate "
@@ -15829,7 +16272,7 @@ msgstr ""
 "ошибка проверки подлинности пользователя \"%s\" по сертификату: сертификат "
 "клиента не содержит имя пользователя"
 
-#: libpq/auth.c:2795
+#: libpq/auth.c:2742
 #, c-format
 msgid ""
 "certificate authentication failed for user \"%s\": unable to retrieve "
@@ -15838,7 +16281,7 @@ msgstr ""
 "пользователь \"%s\" не прошёл проверку подлинности по сертификату: не "
 "удалось получить DN субъекта"
 
-#: libpq/auth.c:2818
+#: libpq/auth.c:2765
 #, c-format
 msgid ""
 "certificate validation (clientcert=verify-full) failed for user \"%s\": DN "
@@ -15847,7 +16290,7 @@ msgstr ""
 "проверка сертификата (clientcert=verify-full) для пользователя \"%s\" не "
 "прошла: отличается DN"
 
-#: libpq/auth.c:2823
+#: libpq/auth.c:2770
 #, c-format
 msgid ""
 "certificate validation (clientcert=verify-full) failed for user \"%s\": CN "
@@ -15856,205 +16299,205 @@ msgstr ""
 "проверка сертификата (clientcert=verify-full) для пользователя \"%s\" не "
 "прошла: отличается CN"
 
-#: libpq/auth.c:2925
+#: libpq/auth.c:2872
 #, c-format
 msgid "RADIUS server not specified"
 msgstr "RADIUS-сервер не определён"
 
-#: libpq/auth.c:2932
+#: libpq/auth.c:2879
 #, c-format
 msgid "RADIUS secret not specified"
 msgstr "секрет RADIUS не определён"
 
 # well-spelled: симв
-#: libpq/auth.c:2946
+#: libpq/auth.c:2893
 #, c-format
 msgid ""
 "RADIUS authentication does not support passwords longer than %d characters"
 msgstr "проверка подлинности RADIUS не поддерживает пароли длиннее %d симв."
 
-#: libpq/auth.c:3053 libpq/hba.c:1976
+#: libpq/auth.c:2995 libpq/hba.c:2369
 #, c-format
 msgid "could not translate RADIUS server name \"%s\" to address: %s"
 msgstr "не удалось преобразовать имя сервера RADIUS \"%s\" в адрес: %s"
 
-#: libpq/auth.c:3067
+#: libpq/auth.c:3009
 #, c-format
 msgid "could not generate random encryption vector"
 msgstr "не удалось сгенерировать случайный вектор шифрования"
 
-#: libpq/auth.c:3104
+#: libpq/auth.c:3046
 #, c-format
 msgid "could not perform MD5 encryption of password: %s"
 msgstr "не удалось вычислить MD5-хеш пароля: %s"
 
-#: libpq/auth.c:3131
+#: libpq/auth.c:3073
 #, c-format
 msgid "could not create RADIUS socket: %m"
 msgstr "не удалось создать сокет RADIUS: %m"
 
-#: libpq/auth.c:3153
+#: libpq/auth.c:3089
 #, c-format
 msgid "could not bind local RADIUS socket: %m"
 msgstr "не удалось привязаться к локальному сокету RADIUS: %m"
 
-#: libpq/auth.c:3163
+#: libpq/auth.c:3099
 #, c-format
 msgid "could not send RADIUS packet: %m"
 msgstr "не удалось отправить пакет RADIUS: %m"
 
-#: libpq/auth.c:3197 libpq/auth.c:3223
+#: libpq/auth.c:3133 libpq/auth.c:3159
 #, c-format
 msgid "timeout waiting for RADIUS response from %s"
 msgstr "превышено время ожидания ответа RADIUS от %s"
 
-#: libpq/auth.c:3216
+#: libpq/auth.c:3152
 #, c-format
 msgid "could not check status on RADIUS socket: %m"
 msgstr "не удалось проверить состояние сокета RADIUS: %m"
 
-#: libpq/auth.c:3246
+#: libpq/auth.c:3182
 #, c-format
 msgid "could not read RADIUS response: %m"
 msgstr "не удалось прочитать ответ RADIUS: %m"
 
-#: libpq/auth.c:3259 libpq/auth.c:3263
+#: libpq/auth.c:3190
 #, c-format
 msgid "RADIUS response from %s was sent from incorrect port: %d"
 msgstr "ответ RADIUS от %s был отправлен с неверного порта: %d"
 
-#: libpq/auth.c:3272
+#: libpq/auth.c:3198
 #, c-format
 msgid "RADIUS response from %s too short: %d"
 msgstr "слишком короткий ответ RADIUS от %s: %d"
 
-#: libpq/auth.c:3279
+#: libpq/auth.c:3205
 #, c-format
 msgid "RADIUS response from %s has corrupt length: %d (actual length %d)"
 msgstr "в ответе RADIUS от %s испорчена длина: %d (фактическая длина %d)"
 
-#: libpq/auth.c:3287
+#: libpq/auth.c:3213
 #, c-format
 msgid "RADIUS response from %s is to a different request: %d (should be %d)"
 msgstr "пришёл ответ RADIUS от %s на другой запрос: %d (ожидался %d)"
 
-#: libpq/auth.c:3312
+#: libpq/auth.c:3238
 #, c-format
 msgid "could not perform MD5 encryption of received packet: %s"
 msgstr "не удалось вычислить MD5-хеш для принятого пакета: %s"
 
-#: libpq/auth.c:3322
+#: libpq/auth.c:3248
 #, c-format
 msgid "RADIUS response from %s has incorrect MD5 signature"
 msgstr "ответ RADIUS от %s содержит неверную подпись MD5"
 
-#: libpq/auth.c:3340
+#: libpq/auth.c:3266
 #, c-format
 msgid "RADIUS response from %s has invalid code (%d) for user \"%s\""
 msgstr "ответ RADIUS от %s содержит неверный код (%d) для пользователя \"%s\""
 
-#: libpq/be-fsstubs.c:128 libpq/be-fsstubs.c:157 libpq/be-fsstubs.c:185
-#: libpq/be-fsstubs.c:211 libpq/be-fsstubs.c:236 libpq/be-fsstubs.c:274
-#: libpq/be-fsstubs.c:297 libpq/be-fsstubs.c:545
+#: libpq/be-fsstubs.c:133 libpq/be-fsstubs.c:162 libpq/be-fsstubs.c:190
+#: libpq/be-fsstubs.c:216 libpq/be-fsstubs.c:241 libpq/be-fsstubs.c:283
+#: libpq/be-fsstubs.c:306 libpq/be-fsstubs.c:560
 #, c-format
 msgid "invalid large-object descriptor: %d"
 msgstr "неверный дескриптор большого объекта: %d"
 
-#: libpq/be-fsstubs.c:168
+#: libpq/be-fsstubs.c:173
 #, c-format
 msgid "large object descriptor %d was not opened for reading"
 msgstr "дескриптор большого объекта %d не был открыт для чтения"
 
-#: libpq/be-fsstubs.c:192 libpq/be-fsstubs.c:552
+#: libpq/be-fsstubs.c:197 libpq/be-fsstubs.c:567
 #, c-format
 msgid "large object descriptor %d was not opened for writing"
 msgstr "дескриптор большого объекта %d не был открыт для записи"
 
-#: libpq/be-fsstubs.c:219
+#: libpq/be-fsstubs.c:224
 #, c-format
 msgid "lo_lseek result out of range for large-object descriptor %d"
 msgstr ""
 "результат lo_lseek для дескриптора большого объекта %d вне допустимого "
 "диапазона"
 
-#: libpq/be-fsstubs.c:282
+#: libpq/be-fsstubs.c:291
 #, c-format
 msgid "lo_tell result out of range for large-object descriptor %d"
 msgstr ""
 "результат lo_tell для дескриптора большого объекта %d вне допустимого "
 "диапазона"
 
-#: libpq/be-fsstubs.c:424
+#: libpq/be-fsstubs.c:439
 #, c-format
 msgid "could not open server file \"%s\": %m"
 msgstr "не удалось открыть файл сервера \"%s\": %m"
 
-#: libpq/be-fsstubs.c:447
+#: libpq/be-fsstubs.c:462
 #, c-format
 msgid "could not read server file \"%s\": %m"
 msgstr "не удалось прочитать файл сервера \"%s\": %m"
 
-#: libpq/be-fsstubs.c:506
+#: libpq/be-fsstubs.c:521
 #, c-format
 msgid "could not create server file \"%s\": %m"
 msgstr "не удалось создать файл сервера \"%s\": %m"
 
-#: libpq/be-fsstubs.c:518
+#: libpq/be-fsstubs.c:533
 #, c-format
 msgid "could not write server file \"%s\": %m"
 msgstr "не удалось записать файл сервера \"%s\": %m"
 
-#: libpq/be-fsstubs.c:758
+#: libpq/be-fsstubs.c:774
 #, c-format
 msgid "large object read request is too large"
 msgstr "при чтении большого объекта запрошен чрезмерный размер"
 
-#: libpq/be-fsstubs.c:800 utils/adt/genfile.c:262 utils/adt/genfile.c:301
-#: utils/adt/genfile.c:337
+#: libpq/be-fsstubs.c:816 utils/adt/genfile.c:262 utils/adt/genfile.c:294
+#: utils/adt/genfile.c:315
 #, c-format
 msgid "requested length cannot be negative"
 msgstr "запрошенная длина не может быть отрицательной"
 
-#: libpq/be-fsstubs.c:851 storage/large_object/inv_api.c:299
+#: libpq/be-fsstubs.c:871 storage/large_object/inv_api.c:299
 #: storage/large_object/inv_api.c:311 storage/large_object/inv_api.c:508
 #: storage/large_object/inv_api.c:619 storage/large_object/inv_api.c:809
 #, c-format
 msgid "permission denied for large object %u"
 msgstr "нет доступа к большому объекту %u"
 
-#: libpq/be-secure-common.c:93
+#: libpq/be-secure-common.c:71
 #, c-format
 msgid "could not read from command \"%s\": %m"
 msgstr "не удалось прочитать вывод команды \"%s\": %m"
 
-#: libpq/be-secure-common.c:113
+#: libpq/be-secure-common.c:91
 #, c-format
 msgid "command \"%s\" failed"
 msgstr "ошибка команды \"%s\""
 
-#: libpq/be-secure-common.c:141
+#: libpq/be-secure-common.c:119
 #, c-format
 msgid "could not access private key file \"%s\": %m"
 msgstr "не удалось обратиться к файлу закрытого ключа \"%s\": %m"
 
-#: libpq/be-secure-common.c:151
+#: libpq/be-secure-common.c:129
 #, c-format
 msgid "private key file \"%s\" is not a regular file"
 msgstr "файл закрытого ключа \"%s\" - не обычный файл"
 
-#: libpq/be-secure-common.c:177
+#: libpq/be-secure-common.c:155
 #, c-format
 msgid "private key file \"%s\" must be owned by the database user or root"
 msgstr ""
 "файл закрытого ключа \"%s\" должен принадлежать пользователю, запускающему "
 "сервер, или root"
 
-#: libpq/be-secure-common.c:187
+#: libpq/be-secure-common.c:165
 #, c-format
 msgid "private key file \"%s\" has group or world access"
 msgstr "к файлу закрытого ключа \"%s\" имеют доступ все или группа"
 
-#: libpq/be-secure-common.c:189
+#: libpq/be-secure-common.c:167
 #, c-format
 msgid ""
 "File must have permissions u=rw (0600) or less if owned by the database "
@@ -16073,7 +16516,7 @@ msgstr "ошибка обёртывания сообщения в GSSAPI"
 msgid "outgoing GSSAPI message would not use confidentiality"
 msgstr "исходящее сообщение GSSAPI не будет защищено"
 
-#: libpq/be-secure-gssapi.c:218 libpq/be-secure-gssapi.c:622
+#: libpq/be-secure-gssapi.c:218 libpq/be-secure-gssapi.c:634
 #, c-format
 msgid "server tried to send oversize GSSAPI packet (%zu > %zu)"
 msgstr "сервер попытался передать чрезмерно большой пакет GSSAPI (%zu > %zu)"
@@ -16092,95 +16535,95 @@ msgstr "ошибка развёртывания сообщения в GSSAPI"
 msgid "incoming GSSAPI message did not use confidentiality"
 msgstr "входящее сообщение GSSAPI не защищено"
 
-#: libpq/be-secure-gssapi.c:570
+#: libpq/be-secure-gssapi.c:575
 #, c-format
 msgid "oversize GSSAPI packet sent by the client (%zu > %d)"
 msgstr "клиент передал чрезмерно большой пакет GSSAPI (%zu > %d)"
 
-#: libpq/be-secure-gssapi.c:594
+#: libpq/be-secure-gssapi.c:600
 msgid "could not accept GSSAPI security context"
 msgstr "принять контекст безопасности GSSAPI не удалось"
 
-#: libpq/be-secure-gssapi.c:689
+#: libpq/be-secure-gssapi.c:701
 msgid "GSSAPI size check error"
 msgstr "ошибка проверки размера в GSSAPI"
 
-#: libpq/be-secure-openssl.c:122
+#: libpq/be-secure-openssl.c:125
 #, c-format
 msgid "could not create SSL context: %s"
 msgstr "не удалось создать контекст SSL: %s"
 
-#: libpq/be-secure-openssl.c:148
+#: libpq/be-secure-openssl.c:151
 #, c-format
 msgid "could not load server certificate file \"%s\": %s"
 msgstr "не удалось загрузить сертификат сервера \"%s\": %s"
 
-#: libpq/be-secure-openssl.c:168
+#: libpq/be-secure-openssl.c:171
 #, c-format
 msgid ""
 "private key file \"%s\" cannot be reloaded because it requires a passphrase"
 msgstr ""
 "файл закрытого ключа \"%s\" нельзя перезагрузить, так как он защищён паролем"
 
-#: libpq/be-secure-openssl.c:173
+#: libpq/be-secure-openssl.c:176
 #, c-format
 msgid "could not load private key file \"%s\": %s"
 msgstr "не удалось загрузить файл закрытого ключа \"%s\": %s"
 
-#: libpq/be-secure-openssl.c:182
+#: libpq/be-secure-openssl.c:185
 #, c-format
 msgid "check of private key failed: %s"
 msgstr "ошибка при проверке закрытого ключа: %s"
 
 #. translator: first %s is a GUC option name, second %s is its value
-#: libpq/be-secure-openssl.c:195 libpq/be-secure-openssl.c:218
+#: libpq/be-secure-openssl.c:198 libpq/be-secure-openssl.c:221
 #, c-format
 msgid "\"%s\" setting \"%s\" not supported by this build"
 msgstr "для параметра \"%s\" значение \"%s\" не поддерживается в данной сборке"
 
-#: libpq/be-secure-openssl.c:205
+#: libpq/be-secure-openssl.c:208
 #, c-format
 msgid "could not set minimum SSL protocol version"
 msgstr "не удалось задать минимальную версию протокола SSL"
 
-#: libpq/be-secure-openssl.c:228
+#: libpq/be-secure-openssl.c:231
 #, c-format
 msgid "could not set maximum SSL protocol version"
 msgstr "не удалось задать максимальную версию протокола SSL"
 
-#: libpq/be-secure-openssl.c:244
+#: libpq/be-secure-openssl.c:247
 #, c-format
 msgid "could not set SSL protocol version range"
 msgstr "не удалось задать диапазон версий протокола SSL"
 
-#: libpq/be-secure-openssl.c:245
+#: libpq/be-secure-openssl.c:248
 #, c-format
 msgid "\"%s\" cannot be higher than \"%s\""
 msgstr "Версия \"%s\" не может быть выше \"%s\""
 
-#: libpq/be-secure-openssl.c:282
+#: libpq/be-secure-openssl.c:285
 #, c-format
 msgid "could not set the cipher list (no valid ciphers available)"
 msgstr "не удалось установить список шифров (подходящие шифры отсутствуют)"
 
-#: libpq/be-secure-openssl.c:302
+#: libpq/be-secure-openssl.c:305
 #, c-format
 msgid "could not load root certificate file \"%s\": %s"
 msgstr "не удалось загрузить файл корневых сертификатов \"%s\": %s"
 
-#: libpq/be-secure-openssl.c:351
+#: libpq/be-secure-openssl.c:354
 #, c-format
 msgid "could not load SSL certificate revocation list file \"%s\": %s"
 msgstr ""
 "не удалось загрузить список отзыва сертификатов SSL из файла \"%s\": %s"
 
-#: libpq/be-secure-openssl.c:359
+#: libpq/be-secure-openssl.c:362
 #, c-format
 msgid "could not load SSL certificate revocation list directory \"%s\": %s"
 msgstr ""
 "не удалось загрузить списки отзыва сертификатов SSL из каталога \"%s\": %s"
 
-#: libpq/be-secure-openssl.c:367
+#: libpq/be-secure-openssl.c:370
 #, c-format
 msgid ""
 "could not load SSL certificate revocation list file \"%s\" or directory "
@@ -16189,38 +16632,38 @@ msgstr ""
 "не удалось загрузить списки отзыва сертификатов SSL из файла \"%s\" или "
 "каталога \"%s\": %s"
 
-#: libpq/be-secure-openssl.c:425
+#: libpq/be-secure-openssl.c:428
 #, c-format
 msgid "could not initialize SSL connection: SSL context not set up"
 msgstr ""
 "инициализировать SSL-подключение не удалось: контекст SSL не установлен"
 
-#: libpq/be-secure-openssl.c:436
+#: libpq/be-secure-openssl.c:439
 #, c-format
 msgid "could not initialize SSL connection: %s"
 msgstr "инициализировать SSL-подключение не удалось: %s"
 
-#: libpq/be-secure-openssl.c:444
+#: libpq/be-secure-openssl.c:447
 #, c-format
 msgid "could not set SSL socket: %s"
 msgstr "не удалось создать SSL-сокет: %s"
 
-#: libpq/be-secure-openssl.c:499
+#: libpq/be-secure-openssl.c:502
 #, c-format
 msgid "could not accept SSL connection: %m"
 msgstr "не удалось принять SSL-подключение: %m"
 
-#: libpq/be-secure-openssl.c:503 libpq/be-secure-openssl.c:556
+#: libpq/be-secure-openssl.c:506 libpq/be-secure-openssl.c:561
 #, c-format
 msgid "could not accept SSL connection: EOF detected"
 msgstr "не удалось принять SSL-подключение: обрыв данных"
 
-#: libpq/be-secure-openssl.c:542
+#: libpq/be-secure-openssl.c:545
 #, c-format
 msgid "could not accept SSL connection: %s"
 msgstr "не удалось принять SSL-подключение: %s"
 
-#: libpq/be-secure-openssl.c:545
+#: libpq/be-secure-openssl.c:549
 #, c-format
 msgid ""
 "This may indicate that the client does not support any SSL protocol version "
@@ -16229,99 +16672,117 @@ msgstr ""
 "Это может указывать на то, что клиент не поддерживает ни одну версию "
 "протокола SSL между %s и %s."
 
-#: libpq/be-secure-openssl.c:561 libpq/be-secure-openssl.c:741
-#: libpq/be-secure-openssl.c:805
+#: libpq/be-secure-openssl.c:566 libpq/be-secure-openssl.c:746
+#: libpq/be-secure-openssl.c:810
 #, c-format
 msgid "unrecognized SSL error code: %d"
 msgstr "нераспознанный код ошибки SSL: %d"
 
-#: libpq/be-secure-openssl.c:607
+#: libpq/be-secure-openssl.c:612
 #, c-format
 msgid "SSL certificate's common name contains embedded null"
 msgstr "Имя SSL-сертификата включает нулевой байт"
 
-#: libpq/be-secure-openssl.c:647
+#: libpq/be-secure-openssl.c:652
 #, c-format
 msgid "SSL certificate's distinguished name contains embedded null"
 msgstr "уникальное имя (DN) в SSL-сертификате содержит нулевой байт"
 
-#: libpq/be-secure-openssl.c:730 libpq/be-secure-openssl.c:789
+#: libpq/be-secure-openssl.c:735 libpq/be-secure-openssl.c:794
 #, c-format
 msgid "SSL error: %s"
 msgstr "ошибка SSL: %s"
 
-#: libpq/be-secure-openssl.c:971
+#: libpq/be-secure-openssl.c:976
 #, c-format
 msgid "could not open DH parameters file \"%s\": %m"
 msgstr "не удалось открыть файл параметров DH \"%s\": %m"
 
-#: libpq/be-secure-openssl.c:983
+#: libpq/be-secure-openssl.c:988
 #, c-format
 msgid "could not load DH parameters file: %s"
 msgstr "не удалось загрузить файл параметров DH: %s"
 
-#: libpq/be-secure-openssl.c:993
+#: libpq/be-secure-openssl.c:998
 #, c-format
 msgid "invalid DH parameters: %s"
 msgstr "неверные параметры DH: %s"
 
-#: libpq/be-secure-openssl.c:1002
+#: libpq/be-secure-openssl.c:1007
 #, c-format
 msgid "invalid DH parameters: p is not prime"
 msgstr "неверные параметры DH: p - не простое число"
 
-#: libpq/be-secure-openssl.c:1011
+#: libpq/be-secure-openssl.c:1016
 #, c-format
 msgid "invalid DH parameters: neither suitable generator or safe prime"
 msgstr ""
 "неверные параметры DH: нет подходящего генератора или небезопасное простое "
 "число"
 
-#: libpq/be-secure-openssl.c:1172
+#: libpq/be-secure-openssl.c:1152
+#, c-format
+msgid "Client certificate verification failed at depth %d: %s."
+msgstr "Ошибка при проверке клиентского сертификата на глубине %d: %s."
+
+#: libpq/be-secure-openssl.c:1189
+#, c-format
+msgid ""
+"Failed certificate data (unverified): subject \"%s\", serial number %s, "
+"issuer \"%s\"."
+msgstr ""
+"Данные ошибочного сертификата (непроверенные): субъект \"%s\", серийный "
+"номер %s, издатель \"%s\"."
+
+#: libpq/be-secure-openssl.c:1190
+msgid "unknown"
+msgstr "н/д"
+
+#: libpq/be-secure-openssl.c:1281
 #, c-format
 msgid "DH: could not load DH parameters"
 msgstr "DH: не удалось загрузить параметры DH"
 
-#: libpq/be-secure-openssl.c:1180
+#: libpq/be-secure-openssl.c:1289
 #, c-format
 msgid "DH: could not set DH parameters: %s"
 msgstr "DH: не удалось задать параметры DH: %s"
 
-#: libpq/be-secure-openssl.c:1207
+#: libpq/be-secure-openssl.c:1316
 #, c-format
 msgid "ECDH: unrecognized curve name: %s"
 msgstr "ECDH: нераспознанное имя кривой: %s"
 
-#: libpq/be-secure-openssl.c:1216
+#: libpq/be-secure-openssl.c:1325
 #, c-format
 msgid "ECDH: could not create key"
 msgstr "ECDH: не удалось создать ключ"
 
-#: libpq/be-secure-openssl.c:1244
+#: libpq/be-secure-openssl.c:1353
 msgid "no SSL error reported"
 msgstr "нет сообщения об ошибке SSL"
 
-#: libpq/be-secure-openssl.c:1248
+#: libpq/be-secure-openssl.c:1357
 #, c-format
 msgid "SSL error code %lu"
 msgstr "код ошибки SSL: %lu"
 
-#: libpq/be-secure-openssl.c:1402
+#: libpq/be-secure-openssl.c:1516
 #, c-format
 msgid "could not create BIO"
 msgstr "не удалось создать BIO"
 
-#: libpq/be-secure-openssl.c:1412
+#: libpq/be-secure-openssl.c:1526
 #, c-format
 msgid "could not get NID for ASN1_OBJECT object"
 msgstr "не удалось получить NID для объекта ASN1_OBJECT"
 
-#: libpq/be-secure-openssl.c:1420
+#: libpq/be-secure-openssl.c:1534
 #, c-format
 msgid "could not convert NID %d to an ASN1_OBJECT structure"
 msgstr "не удалось преобразовать NID %d в структуру ASN1_OBJECT"
 
-#: libpq/be-secure.c:209 libpq/be-secure.c:305
+#: libpq/be-secure.c:207 libpq/be-secure.c:303
 #, c-format
 msgid "terminating connection due to unexpected postmaster exit"
 msgstr "закрытие подключения из-за неожиданного завершения главного процесса"
@@ -16341,113 +16802,110 @@ msgstr "Пользователь \"%s\" не имеет пароля."
 msgid "User \"%s\" has an expired password."
 msgstr "Срок действия пароля пользователя \"%s\" истёк."
 
-#: libpq/crypt.c:181
+#: libpq/crypt.c:183
 #, c-format
 msgid "User \"%s\" has a password that cannot be used with MD5 authentication."
 msgstr ""
 "Пользователь \"%s\" имеет пароль, неподходящий для аутентификации по MD5."
 
-#: libpq/crypt.c:202 libpq/crypt.c:244 libpq/crypt.c:264
+#: libpq/crypt.c:204 libpq/crypt.c:246 libpq/crypt.c:266
 #, c-format
 msgid "Password does not match for user \"%s\"."
 msgstr "Пароль не подходит для пользователя \"%s\"."
 
-#: libpq/crypt.c:283
+#: libpq/crypt.c:285
 #, c-format
 msgid "Password of user \"%s\" is in unrecognized format."
 msgstr "Пароль пользователя \"%s\" представлен в неизвестном формате."
 
-#: libpq/hba.c:209
+#: libpq/hba.c:332
 #, c-format
-msgid "authentication file token too long, skipping: \"%s\""
-msgstr ""
-"слишком длинный элемент в файле конфигурации безопасности пропускается: "
-"\"%s\""
+msgid "invalid regular expression \"%s\": %s"
+msgstr "неверное регулярное выражение \"%s\": %s"
 
-#: libpq/hba.c:381
+#: libpq/hba.c:334 libpq/hba.c:666 libpq/hba.c:1250 libpq/hba.c:1270
+#: libpq/hba.c:1293 libpq/hba.c:1306 libpq/hba.c:1359 libpq/hba.c:1387
+#: libpq/hba.c:1395 libpq/hba.c:1407 libpq/hba.c:1428 libpq/hba.c:1441
+#: libpq/hba.c:1466 libpq/hba.c:1493 libpq/hba.c:1505 libpq/hba.c:1564
+#: libpq/hba.c:1584 libpq/hba.c:1598 libpq/hba.c:1618 libpq/hba.c:1629
+#: libpq/hba.c:1644 libpq/hba.c:1663 libpq/hba.c:1679 libpq/hba.c:1691
+#: libpq/hba.c:1728 libpq/hba.c:1769 libpq/hba.c:1782 libpq/hba.c:1804
+#: libpq/hba.c:1816 libpq/hba.c:1834 libpq/hba.c:1884 libpq/hba.c:1928
+#: libpq/hba.c:1939 libpq/hba.c:1955 libpq/hba.c:1972 libpq/hba.c:1983
+#: libpq/hba.c:2002 libpq/hba.c:2018 libpq/hba.c:2034 libpq/hba.c:2093
+#: libpq/hba.c:2110 libpq/hba.c:2123 libpq/hba.c:2135 libpq/hba.c:2154
+#: libpq/hba.c:2240 libpq/hba.c:2258 libpq/hba.c:2352 libpq/hba.c:2371
+#: libpq/hba.c:2400 libpq/hba.c:2413 libpq/hba.c:2436 libpq/hba.c:2458
+#: libpq/hba.c:2472 tsearch/ts_locale.c:243
 #, c-format
-msgid "could not open secondary authentication file \"@%s\" as \"%s\": %m"
-msgstr ""
-"не удалось открыть дополнительный файл конфигурации безопасности \"@%s\" как "
-"\"%s\": %m"
+msgid "line %d of configuration file \"%s\""
+msgstr "строка %d файла конфигурации \"%s\""
+
+#: libpq/hba.c:462
+#, c-format
+msgid "skipping missing authentication file \"%s\""
+msgstr "отсутствующий файл настройки аутентификации \"%s\" пропускается"
+
+#: libpq/hba.c:614
+#, c-format
+msgid "could not open file \"%s\": maximum nesting depth exceeded"
+msgstr "открыть файл \"%s\" не удалось: превышен предел вложенности"
 
-#: libpq/hba.c:832
+#: libpq/hba.c:1221
 #, c-format
 msgid "error enumerating network interfaces: %m"
 msgstr "ошибка при перечислении сетевых интерфейсов: %m"
 
 #. translator: the second %s is a list of auth methods
-#: libpq/hba.c:859
+#: libpq/hba.c:1248
 #, c-format
 msgid ""
 "authentication option \"%s\" is only valid for authentication methods %s"
 msgstr "параметр проверки подлинности \"%s\" допускается только для методов %s"
 
-#: libpq/hba.c:861 libpq/hba.c:881 libpq/hba.c:916 libpq/hba.c:967
-#: libpq/hba.c:981 libpq/hba.c:1005 libpq/hba.c:1013 libpq/hba.c:1025
-#: libpq/hba.c:1046 libpq/hba.c:1059 libpq/hba.c:1079 libpq/hba.c:1101
-#: libpq/hba.c:1113 libpq/hba.c:1172 libpq/hba.c:1192 libpq/hba.c:1206
-#: libpq/hba.c:1226 libpq/hba.c:1237 libpq/hba.c:1252 libpq/hba.c:1271
-#: libpq/hba.c:1287 libpq/hba.c:1299 libpq/hba.c:1336 libpq/hba.c:1377
-#: libpq/hba.c:1390 libpq/hba.c:1412 libpq/hba.c:1424 libpq/hba.c:1442
-#: libpq/hba.c:1492 libpq/hba.c:1536 libpq/hba.c:1547 libpq/hba.c:1563
-#: libpq/hba.c:1580 libpq/hba.c:1591 libpq/hba.c:1610 libpq/hba.c:1626
-#: libpq/hba.c:1642 libpq/hba.c:1700 libpq/hba.c:1717 libpq/hba.c:1730
-#: libpq/hba.c:1742 libpq/hba.c:1761 libpq/hba.c:1847 libpq/hba.c:1865
-#: libpq/hba.c:1959 libpq/hba.c:1978 libpq/hba.c:2007 libpq/hba.c:2020
-#: libpq/hba.c:2043 libpq/hba.c:2065 libpq/hba.c:2079 tsearch/ts_locale.c:232
-#, c-format
-msgid "line %d of configuration file \"%s\""
-msgstr "строка %d файла конфигурации \"%s\""
-
-#: libpq/hba.c:879
+#: libpq/hba.c:1268
 #, c-format
 msgid "authentication method \"%s\" requires argument \"%s\" to be set"
 msgstr ""
 "для метода проверки подлинности \"%s\" требуется определить аргумент \"%s\""
 
-#: libpq/hba.c:903
+#: libpq/hba.c:1292
 #, c-format
-msgid "missing entry in file \"%s\" at end of line %d"
-msgstr "отсутствует запись в файле \"%s\" в конце строки %d"
+msgid "missing entry at end of line"
+msgstr "отсутствует запись в конце строки"
 
-#: libpq/hba.c:915
+#: libpq/hba.c:1305
 #, c-format
 msgid "multiple values in ident field"
 msgstr "множественные значения в поле ident"
 
-#: libpq/hba.c:965
+#: libpq/hba.c:1357
 #, c-format
 msgid "multiple values specified for connection type"
 msgstr "для типа подключения указано несколько значений"
 
-#: libpq/hba.c:966
+#: libpq/hba.c:1358
 #, c-format
 msgid "Specify exactly one connection type per line."
 msgstr "Определите в строке единственный тип подключения."
 
-#: libpq/hba.c:980
-#, c-format
-msgid "local connections are not supported by this build"
-msgstr "локальные подключения не поддерживаются в этой сборке"
-
-#: libpq/hba.c:1003
+#: libpq/hba.c:1385
 #, c-format
 msgid "hostssl record cannot match because SSL is disabled"
 msgstr "запись с hostssl недействительна, так как поддержка SSL отключена"
 
-#: libpq/hba.c:1004
+#: libpq/hba.c:1386
 #, c-format
 msgid "Set ssl = on in postgresql.conf."
 msgstr "Установите ssl = on в postgresql.conf."
 
-#: libpq/hba.c:1012
+#: libpq/hba.c:1394
 #, c-format
 msgid "hostssl record cannot match because SSL is not supported by this build"
 msgstr ""
 "запись с hostssl недействительна, так как SSL не поддерживается в этой сборке"
 
-#: libpq/hba.c:1024
+#: libpq/hba.c:1406
 #, c-format
 msgid ""
 "hostgssenc record cannot match because GSSAPI is not supported by this build"
@@ -16455,126 +16913,126 @@ msgstr ""
 "запись с hostgssenc недействительна, так как GSSAPI не поддерживается в этой "
 "сборке"
 
-#: libpq/hba.c:1044
+#: libpq/hba.c:1426
 #, c-format
 msgid "invalid connection type \"%s\""
 msgstr "неверный тип подключения \"%s\""
 
-#: libpq/hba.c:1058
+#: libpq/hba.c:1440
 #, c-format
 msgid "end-of-line before database specification"
 msgstr "конец строки перед определением базы данных"
 
-#: libpq/hba.c:1078
+#: libpq/hba.c:1465
 #, c-format
 msgid "end-of-line before role specification"
 msgstr "конец строки перед определением роли"
 
-#: libpq/hba.c:1100
+#: libpq/hba.c:1492
 #, c-format
 msgid "end-of-line before IP address specification"
 msgstr "конец строки перед определением IP-адресов"
 
-#: libpq/hba.c:1111
+#: libpq/hba.c:1503
 #, c-format
 msgid "multiple values specified for host address"
 msgstr "для адреса узла указано несколько значений"
 
-#: libpq/hba.c:1112
+#: libpq/hba.c:1504
 #, c-format
 msgid "Specify one address range per line."
 msgstr "Определите в строке один диапазон адресов."
 
-#: libpq/hba.c:1170
+#: libpq/hba.c:1562
 #, c-format
 msgid "invalid IP address \"%s\": %s"
 msgstr "неверный IP-адрес \"%s\": %s"
 
-#: libpq/hba.c:1190
+#: libpq/hba.c:1582
 #, c-format
 msgid "specifying both host name and CIDR mask is invalid: \"%s\""
 msgstr "указать одновременно и имя узла, и маску CIDR нельзя: \"%s\""
 
-#: libpq/hba.c:1204
+#: libpq/hba.c:1596
 #, c-format
 msgid "invalid CIDR mask in address \"%s\""
 msgstr "неверная маска CIDR в адресе \"%s\""
 
-#: libpq/hba.c:1224
+#: libpq/hba.c:1616
 #, c-format
 msgid "end-of-line before netmask specification"
 msgstr "конец строки перед определением маски сети"
 
-#: libpq/hba.c:1225
+#: libpq/hba.c:1617
 #, c-format
 msgid ""
 "Specify an address range in CIDR notation, or provide a separate netmask."
 msgstr ""
 "Укажите диапазон адресов в формате CIDR или задайте отдельную маску сети."
 
-#: libpq/hba.c:1236
+#: libpq/hba.c:1628
 #, c-format
 msgid "multiple values specified for netmask"
 msgstr "для сетевой маски указано несколько значений"
 
-#: libpq/hba.c:1250
+#: libpq/hba.c:1642
 #, c-format
 msgid "invalid IP mask \"%s\": %s"
 msgstr "неверная маска IP \"%s\": %s"
 
-#: libpq/hba.c:1270
+#: libpq/hba.c:1662
 #, c-format
 msgid "IP address and mask do not match"
 msgstr "IP-адрес не соответствует маске"
 
-#: libpq/hba.c:1286
+#: libpq/hba.c:1678
 #, c-format
 msgid "end-of-line before authentication method"
 msgstr "конец строки перед методом проверки подлинности"
 
-#: libpq/hba.c:1297
+#: libpq/hba.c:1689
 #, c-format
 msgid "multiple values specified for authentication type"
 msgstr "для типа проверки подлинности указано несколько значений"
 
-#: libpq/hba.c:1298
+#: libpq/hba.c:1690
 #, c-format
 msgid "Specify exactly one authentication type per line."
 msgstr "Определите в строке единственный тип проверки подлинности."
 
-#: libpq/hba.c:1375
+#: libpq/hba.c:1767
 #, c-format
 msgid "invalid authentication method \"%s\""
 msgstr "неверный метод проверки подлинности \"%s\""
 
-#: libpq/hba.c:1388
+#: libpq/hba.c:1780
 #, c-format
 msgid "invalid authentication method \"%s\": not supported by this build"
 msgstr ""
 "неверный метод проверки подлинности \"%s\": не поддерживается в этой сборке"
 
-#: libpq/hba.c:1411
+#: libpq/hba.c:1803
 #, c-format
 msgid "gssapi authentication is not supported on local sockets"
 msgstr "проверка подлинности gssapi для локальных сокетов не поддерживается"
 
-#: libpq/hba.c:1423
+#: libpq/hba.c:1815
 #, c-format
 msgid "peer authentication is only supported on local sockets"
 msgstr "проверка подлинности peer поддерживается только для локальных сокетов"
 
-#: libpq/hba.c:1441
+#: libpq/hba.c:1833
 #, c-format
 msgid "cert authentication is only supported on hostssl connections"
 msgstr ""
 "проверка подлинности cert поддерживается только для подключений hostssl"
 
-#: libpq/hba.c:1491
+#: libpq/hba.c:1883
 #, c-format
 msgid "authentication option not in name=value format: %s"
 msgstr "параметр проверки подлинности указан не в формате имя=значение: %s"
 
-#: libpq/hba.c:1535
+#: libpq/hba.c:1927
 #, c-format
 msgid ""
 "cannot use ldapbasedn, ldapbinddn, ldapbindpasswd, ldapsearchattribute, "
@@ -16583,7 +17041,7 @@ msgstr ""
 "нельзя использовать ldapbasedn, ldapbinddn, ldapbindpasswd, "
 "ldapsearchattribute, ldapsearchfilter или ldapurl вместе с ldapprefix"
 
-#: libpq/hba.c:1546
+#: libpq/hba.c:1938
 #, c-format
 msgid ""
 "authentication method \"ldap\" requires argument \"ldapbasedn\", "
@@ -16592,22 +17050,22 @@ msgstr ""
 "для метода проверки подлинности \"ldap\" требуется установить аргументы "
 "\"ldapbasedn\" и \"ldapprefix\" или \"ldapsuffix\""
 
-#: libpq/hba.c:1562
+#: libpq/hba.c:1954
 #, c-format
 msgid "cannot use ldapsearchattribute together with ldapsearchfilter"
 msgstr "нельзя использовать ldapsearchattribute вместе с ldapsearchfilter"
 
-#: libpq/hba.c:1579
+#: libpq/hba.c:1971
 #, c-format
 msgid "list of RADIUS servers cannot be empty"
 msgstr "список серверов RADIUS не может быть пустым"
 
-#: libpq/hba.c:1590
+#: libpq/hba.c:1982
 #, c-format
 msgid "list of RADIUS secrets cannot be empty"
 msgstr "список секретов RADIUS не может быть пустым"
 
-#: libpq/hba.c:1607
+#: libpq/hba.c:1999
 #, c-format
 msgid ""
 "the number of RADIUS secrets (%d) must be 1 or the same as the number of "
@@ -16616,7 +17074,7 @@ msgstr ""
 "количество секретов RADIUS (%d) должно равняться 1 или количеству серверов "
 "RADIUS (%d)"
 
-#: libpq/hba.c:1623
+#: libpq/hba.c:2015
 #, c-format
 msgid ""
 "the number of RADIUS ports (%d) must be 1 or the same as the number of "
@@ -16625,7 +17083,7 @@ msgstr ""
 "количество портов RADIUS (%d) должно равняться 1 или количеству серверов "
 "RADIUS (%d)"
 
-#: libpq/hba.c:1639
+#: libpq/hba.c:2031
 #, c-format
 msgid ""
 "the number of RADIUS identifiers (%d) must be 1 or the same as the number of "
@@ -16634,16 +17092,16 @@ msgstr ""
 "количество идентификаторов RADIUS (%d) должно равняться 1 или количеству "
 "серверов RADIUS (%d)"
 
-#: libpq/hba.c:1690
+#: libpq/hba.c:2083
 msgid "ident, peer, gssapi, sspi, and cert"
 msgstr "ident, peer, gssapi, sspi и cert"
 
-#: libpq/hba.c:1699
+#: libpq/hba.c:2092
 #, c-format
 msgid "clientcert can only be configured for \"hostssl\" rows"
 msgstr "clientcert можно определить только в строках \"hostssl\""
 
-#: libpq/hba.c:1716
+#: libpq/hba.c:2109
 #, c-format
 msgid ""
 "clientcert only accepts \"verify-full\" when using \"cert\" authentication"
@@ -16651,105 +17109,95 @@ msgstr ""
 "с проверкой подлинности \"cert\" для clientcert допускается только значение "
 "\"verify-full\""
 
-#: libpq/hba.c:1729
+#: libpq/hba.c:2122
 #, c-format
 msgid "invalid value for clientcert: \"%s\""
 msgstr "неверное значение для clientcert: \"%s\""
 
-#: libpq/hba.c:1741
+#: libpq/hba.c:2134
 #, c-format
 msgid "clientname can only be configured for \"hostssl\" rows"
 msgstr "clientname можно определить только в строках \"hostssl\""
 
-#: libpq/hba.c:1760
+#: libpq/hba.c:2153
 #, c-format
 msgid "invalid value for clientname: \"%s\""
 msgstr "неверное значение для clientname: \"%s\""
 
-#: libpq/hba.c:1793
+#: libpq/hba.c:2186
 #, c-format
 msgid "could not parse LDAP URL \"%s\": %s"
 msgstr "не удалось разобрать URL-адрес LDAP \"%s\": %s"
 
-#: libpq/hba.c:1804
+#: libpq/hba.c:2197
 #, c-format
 msgid "unsupported LDAP URL scheme: %s"
 msgstr "неподдерживаемая схема в URL-адресе LDAP: %s"
 
-#: libpq/hba.c:1828
+#: libpq/hba.c:2221
 #, c-format
 msgid "LDAP URLs not supported on this platform"
 msgstr "URL-адреса LDAP не поддерживаются в этой ОС"
 
-#: libpq/hba.c:1846
+#: libpq/hba.c:2239
 #, c-format
 msgid "invalid ldapscheme value: \"%s\""
 msgstr "неверное значение ldapscheme: \"%s\""
 
-#: libpq/hba.c:1864
+#: libpq/hba.c:2257
 #, c-format
 msgid "invalid LDAP port number: \"%s\""
 msgstr "неверный номер порта LDAP: \"%s\""
 
-#: libpq/hba.c:1910 libpq/hba.c:1917
+#: libpq/hba.c:2303 libpq/hba.c:2310
 msgid "gssapi and sspi"
 msgstr "gssapi и sspi"
 
-#: libpq/hba.c:1926 libpq/hba.c:1935
+#: libpq/hba.c:2319 libpq/hba.c:2328
 msgid "sspi"
 msgstr "sspi"
 
-#: libpq/hba.c:1957
+#: libpq/hba.c:2350
 #, c-format
 msgid "could not parse RADIUS server list \"%s\""
 msgstr "не удалось разобрать список серверов RADIUS \"%s\""
 
-#: libpq/hba.c:2005
+#: libpq/hba.c:2398
 #, c-format
 msgid "could not parse RADIUS port list \"%s\""
 msgstr "не удалось разобрать список портов RADIUS \"%s\""
 
-#: libpq/hba.c:2019
+#: libpq/hba.c:2412
 #, c-format
 msgid "invalid RADIUS port number: \"%s\""
 msgstr "неверный номер порта RADIUS: \"%s\""
 
-#: libpq/hba.c:2041
+#: libpq/hba.c:2434
 #, c-format
 msgid "could not parse RADIUS secret list \"%s\""
 msgstr "не удалось разобрать список секретов RADIUS \"%s\""
 
-#: libpq/hba.c:2063
+#: libpq/hba.c:2456
 #, c-format
 msgid "could not parse RADIUS identifiers list \"%s\""
 msgstr "не удалось разобрать список идентификаторов RADIUS \"%s\""
 
-#: libpq/hba.c:2077
+#: libpq/hba.c:2470
 #, c-format
 msgid "unrecognized authentication option name: \"%s\""
 msgstr "нераспознанное имя атрибута проверки подлинности: \"%s\""
 
-#: libpq/hba.c:2223 utils/adt/hbafuncs.c:376 guc-file.l:631
-#, c-format
-msgid "could not open configuration file \"%s\": %m"
-msgstr "открыть файл конфигурации \"%s\" не удалось: %m"
-
-#: libpq/hba.c:2274
+#: libpq/hba.c:2662
 #, c-format
 msgid "configuration file \"%s\" contains no entries"
 msgstr "файл конфигурации \"%s\" не содержит записей"
 
-#: libpq/hba.c:2374
-#, c-format
-msgid "invalid regular expression \"%s\": %s"
-msgstr "неверное регулярное выражение \"%s\": %s"
-
-#: libpq/hba.c:2437
+#: libpq/hba.c:2815
 #, c-format
 msgid "regular expression match for \"%s\" failed: %s"
 msgstr "ошибка при поиске по регулярному выражению для \"%s\": %s"
 
-#: libpq/hba.c:2456
+#: libpq/hba.c:2839
 #, c-format
 msgid ""
 "regular expression \"%s\" has no subexpressions as requested by "
@@ -16758,93 +17206,88 @@ msgstr ""
 "в регулярном выражении \"%s\" нет подвыражений, требуемых для обратной "
 "ссылки в \"%s\""
 
-#: libpq/hba.c:2552
+#: libpq/hba.c:2942
 #, c-format
 msgid "provided user name (%s) and authenticated user name (%s) do not match"
 msgstr ""
 "указанное имя пользователя (%s) не совпадает с именем прошедшего проверку "
 "(%s)"
 
-#: libpq/hba.c:2572
+#: libpq/hba.c:2962
 #, c-format
 msgid "no match in usermap \"%s\" for user \"%s\" authenticated as \"%s\""
 msgstr ""
 "нет соответствия в файле сопоставлений \"%s\" для пользователя \"%s\", "
 "прошедшего проверку как \"%s\""
 
-#: libpq/hba.c:2605 utils/adt/hbafuncs.c:512
-#, c-format
-msgid "could not open usermap file \"%s\": %m"
-msgstr "не удалось открыть файл сопоставлений пользователей \"%s\": %m"
-
-#: libpq/pqcomm.c:204
+#: libpq/pqcomm.c:200
 #, c-format
 msgid "could not set socket to nonblocking mode: %m"
 msgstr "не удалось перевести сокет в неблокирующий режим: %m"
 
-#: libpq/pqcomm.c:362
+#: libpq/pqcomm.c:361
 #, c-format
 msgid "Unix-domain socket path \"%s\" is too long (maximum %d bytes)"
 msgstr "длина пути Unix-сокета \"%s\" превышает предел (%d байт)"
 
-#: libpq/pqcomm.c:383
+#: libpq/pqcomm.c:381
 #, c-format
 msgid "could not translate host name \"%s\", service \"%s\" to address: %s"
 msgstr "перевести имя узла \"%s\", службы \"%s\" в адрес не удалось: %s"
 
-#: libpq/pqcomm.c:387
+#: libpq/pqcomm.c:385
 #, c-format
 msgid "could not translate service \"%s\" to address: %s"
 msgstr "не удалось перевести имя службы \"%s\" в адрес: %s"
 
-#: libpq/pqcomm.c:414
+#: libpq/pqcomm.c:412
 #, c-format
 msgid "could not bind to all requested addresses: MAXLISTEN (%d) exceeded"
 msgstr ""
 "не удалось привязаться ко всем запрошенным адресам: превышен предел "
 "MAXLISTEN (%d)"
 
-#: libpq/pqcomm.c:423
+#: libpq/pqcomm.c:421
 msgid "IPv4"
 msgstr "IPv4"
 
-#: libpq/pqcomm.c:427
+#: libpq/pqcomm.c:424
 msgid "IPv6"
 msgstr "IPv6"
 
-#: libpq/pqcomm.c:432
+#: libpq/pqcomm.c:427
 msgid "Unix"
 msgstr "Unix"
 
-#: libpq/pqcomm.c:437
+#: libpq/pqcomm.c:431
 #, c-format
 msgid "unrecognized address family %d"
 msgstr "нераспознанное семейство адресов: %d"
 
 #. translator: first %s is IPv4, IPv6, or Unix
-#: libpq/pqcomm.c:463
+#: libpq/pqcomm.c:455
 #, c-format
 msgid "could not create %s socket for address \"%s\": %m"
 msgstr "не удалось создать сокет %s для адреса \"%s\": %m"
 
 #. translator: third %s is IPv4, IPv6, or Unix
-#: libpq/pqcomm.c:489 libpq/pqcomm.c:507
+#: libpq/pqcomm.c:481 libpq/pqcomm.c:499
 #, c-format
 msgid "%s(%s) failed for %s address \"%s\": %m"
 msgstr "ошибка в %s(%s) для адреса %s \"%s\": %m"
 
 #. translator: first %s is IPv4, IPv6, or Unix
-#: libpq/pqcomm.c:530
+#: libpq/pqcomm.c:522
 #, c-format
 msgid "could not bind %s address \"%s\": %m"
 msgstr "не удалось привязаться к адресу %s \"%s\": %m"
 
-#: libpq/pqcomm.c:534
+#: libpq/pqcomm.c:526
 #, c-format
 msgid "Is another postmaster already running on port %d?"
 msgstr "Возможно, порт %d занят другим процессом postmaster?"
 
-#: libpq/pqcomm.c:536
+#: libpq/pqcomm.c:528
 #, c-format
 msgid ""
 "Is another postmaster already running on port %d? If not, wait a few seconds "
@@ -16854,127 +17297,128 @@ msgstr ""
 "попытку через несколько секунд."
 
 #. translator: first %s is IPv4, IPv6, or Unix
-#: libpq/pqcomm.c:569
+#: libpq/pqcomm.c:557
 #, c-format
 msgid "could not listen on %s address \"%s\": %m"
 msgstr "не удалось привязаться к адресу %s \"%s\": %m"
 
-#: libpq/pqcomm.c:578
+#: libpq/pqcomm.c:565
 #, c-format
 msgid "listening on Unix socket \"%s\""
 msgstr "для приёма подключений открыт Unix-сокет \"%s\""
 
 #. translator: first %s is IPv4 or IPv6
-#: libpq/pqcomm.c:584
+#: libpq/pqcomm.c:570
 #, c-format
 msgid "listening on %s address \"%s\", port %d"
 msgstr "для приёма подключений по адресу %s \"%s\" открыт порт %d"
 
-#: libpq/pqcomm.c:675
+#: libpq/pqcomm.c:659
 #, c-format
 msgid "group \"%s\" does not exist"
 msgstr "группа \"%s\" не существует"
 
-#: libpq/pqcomm.c:685
+#: libpq/pqcomm.c:669
 #, c-format
 msgid "could not set group of file \"%s\": %m"
 msgstr "не удалось установить группу для файла \"%s\": %m"
 
-#: libpq/pqcomm.c:696
+#: libpq/pqcomm.c:680
 #, c-format
 msgid "could not set permissions of file \"%s\": %m"
 msgstr "не удалось установить права доступа для файла \"%s\": %m"
 
-#: libpq/pqcomm.c:726
+#: libpq/pqcomm.c:708
 #, c-format
 msgid "could not accept new connection: %m"
 msgstr "не удалось принять новое подключение: %m"
 
-#: libpq/pqcomm.c:766 libpq/pqcomm.c:775 libpq/pqcomm.c:807 libpq/pqcomm.c:817
-#: libpq/pqcomm.c:1642 libpq/pqcomm.c:1687 libpq/pqcomm.c:1727
-#: libpq/pqcomm.c:1771 libpq/pqcomm.c:1810 libpq/pqcomm.c:1849
-#: libpq/pqcomm.c:1885 libpq/pqcomm.c:1924
+#: libpq/pqcomm.c:748 libpq/pqcomm.c:757 libpq/pqcomm.c:789 libpq/pqcomm.c:799
+#: libpq/pqcomm.c:1624 libpq/pqcomm.c:1669 libpq/pqcomm.c:1709
+#: libpq/pqcomm.c:1753 libpq/pqcomm.c:1792 libpq/pqcomm.c:1831
+#: libpq/pqcomm.c:1867 libpq/pqcomm.c:1906
 #, c-format
 msgid "%s(%s) failed: %m"
 msgstr "ошибка в %s(%s): %m"
 
-#: libpq/pqcomm.c:921
+#: libpq/pqcomm.c:903
 #, c-format
 msgid "there is no client connection"
 msgstr "нет клиентского подключения"
 
-#: libpq/pqcomm.c:972 libpq/pqcomm.c:1068
+#: libpq/pqcomm.c:954 libpq/pqcomm.c:1050
 #, c-format
 msgid "could not receive data from client: %m"
 msgstr "не удалось получить данные от клиента: %m"
 
-#: libpq/pqcomm.c:1173 tcop/postgres.c:4371
+#: libpq/pqcomm.c:1155 tcop/postgres.c:4405
 #, c-format
 msgid "terminating connection because protocol synchronization was lost"
 msgstr "закрытие подключения из-за потери синхронизации протокола"
 
-#: libpq/pqcomm.c:1239
+#: libpq/pqcomm.c:1221
 #, c-format
 msgid "unexpected EOF within message length word"
 msgstr "неожиданный обрыв данных в слове длины сообщения"
 
-#: libpq/pqcomm.c:1249
+#: libpq/pqcomm.c:1231
 #, c-format
 msgid "invalid message length"
 msgstr "неверная длина сообщения"
 
-#: libpq/pqcomm.c:1271 libpq/pqcomm.c:1284
+#: libpq/pqcomm.c:1253 libpq/pqcomm.c:1266
 #, c-format
 msgid "incomplete message from client"
 msgstr "неполное сообщение от клиента"
 
-#: libpq/pqcomm.c:1395
+#: libpq/pqcomm.c:1377
 #, c-format
 msgid "could not send data to client: %m"
 msgstr "не удалось послать данные клиенту: %m"
 
-#: libpq/pqcomm.c:1610
+#: libpq/pqcomm.c:1592
 #, c-format
 msgid "%s(%s) failed: error code %d"
 msgstr "ошибка в %s(%s): код ошибки %d"
 
-#: libpq/pqcomm.c:1699
+#: libpq/pqcomm.c:1681
 #, c-format
 msgid "setting the keepalive idle time is not supported"
 msgstr "изменение значения keepalives_idle не поддерживается"
 
-#: libpq/pqcomm.c:1783 libpq/pqcomm.c:1858 libpq/pqcomm.c:1933
+#: libpq/pqcomm.c:1765 libpq/pqcomm.c:1840 libpq/pqcomm.c:1915
 #, c-format
 msgid "%s(%s) not supported"
 msgstr "%s(%s) не поддерживается"
 
-#: libpq/pqformat.c:406
+#: libpq/pqformat.c:407
 #, c-format
 msgid "no data left in message"
 msgstr "в сообщении не осталось данных"
 
-#: libpq/pqformat.c:517 libpq/pqformat.c:535 libpq/pqformat.c:556
-#: utils/adt/arrayfuncs.c:1482 utils/adt/rowtypes.c:588
+#: libpq/pqformat.c:518 libpq/pqformat.c:536 libpq/pqformat.c:557
+#: utils/adt/array_userfuncs.c:799 utils/adt/arrayfuncs.c:1506
+#: utils/adt/rowtypes.c:615
 #, c-format
 msgid "insufficient data left in message"
 msgstr "недостаточно данных осталось в сообщении"
 
-#: libpq/pqformat.c:597 libpq/pqformat.c:626
+#: libpq/pqformat.c:598 libpq/pqformat.c:627
 #, c-format
 msgid "invalid string in message"
 msgstr "неверная строка в сообщении"
 
-#: libpq/pqformat.c:642
+#: libpq/pqformat.c:643
 #, c-format
 msgid "invalid message format"
 msgstr "неверный формат сообщения"
 
-#: main/main.c:239
+#: main/main.c:235
 #, c-format
 msgid "%s: WSAStartup failed: %d\n"
 msgstr "%s: ошибка WSAStartup: %d\n"
 
-#: main/main.c:350
+#: main/main.c:329
 #, c-format
 msgid ""
 "%s is the PostgreSQL server.\n"
@@ -16983,7 +17427,7 @@ msgstr ""
 "%s - сервер PostgreSQL.\n"
 "\n"
 
-#: main/main.c:351
+#: main/main.c:330
 #, c-format
 msgid ""
 "Usage:\n"
@@ -16994,109 +17438,110 @@ msgstr ""
 "  %s [ПАРАМЕТР]...\n"
 "\n"
 
-#: main/main.c:352
+#: main/main.c:331
 #, c-format
 msgid "Options:\n"
 msgstr "Параметры:\n"
 
-#: main/main.c:353
+#: main/main.c:332
 #, c-format
 msgid "  -B NBUFFERS        number of shared buffers\n"
 msgstr "  -B ЧИСЛО_БУФ       число разделяемых буферов\n"
 
-#: main/main.c:354
+#: main/main.c:333
 #, c-format
 msgid "  -c NAME=VALUE      set run-time parameter\n"
 msgstr "  -c ИМЯ=ЗНАЧЕНИЕ    установить параметр выполнения\n"
 
-#: main/main.c:355
+#: main/main.c:334
 #, c-format
 msgid "  -C NAME            print value of run-time parameter, then exit\n"
 msgstr "  -C ИМЯ             вывести значение параметра выполнения и выйти\n"
 
-#: main/main.c:356
+#: main/main.c:335
 #, c-format
 msgid "  -d 1-5             debugging level\n"
 msgstr "  -d 1-5             уровень отладочных сообщений\n"
 
-#: main/main.c:357
+#: main/main.c:336
 #, c-format
 msgid "  -D DATADIR         database directory\n"
 msgstr "  -D КАТАЛОГ         каталог с данными\n"
 
 # well-spelled: ДМГ
-#: main/main.c:358
+#: main/main.c:337
 #, c-format
 msgid "  -e                 use European date input format (DMY)\n"
 msgstr "  -e                 использовать европейский формат дат (ДМГ)\n"
 
-#: main/main.c:359
+#: main/main.c:338
 #, c-format
 msgid "  -F                 turn fsync off\n"
 msgstr "  -F                 выключить синхронизацию с ФС\n"
 
-#: main/main.c:360
+#: main/main.c:339
 #, c-format
 msgid "  -h HOSTNAME        host name or IP address to listen on\n"
 msgstr "  -h ИМЯ             имя или IP-адрес для приёма сетевых соединений\n"
 
-#: main/main.c:361
+#: main/main.c:340
 #, c-format
-msgid "  -i                 enable TCP/IP connections\n"
-msgstr "  -i                 включить соединения TCP/IP\n"
+msgid "  -i                 enable TCP/IP connections (deprecated)\n"
+msgstr ""
+"  -i                 включить соединения TCP/IP (устаревший параметр)\n"
 
-#: main/main.c:362
+#: main/main.c:341
 #, c-format
 msgid "  -k DIRECTORY       Unix-domain socket location\n"
 msgstr "  -k КАТАЛОГ         расположение Unix-сокетов\n"
 
-#: main/main.c:364
+#: main/main.c:343
 #, c-format
 msgid "  -l                 enable SSL connections\n"
 msgstr "  -l                 разрешить SSL-подключения\n"
 
 # well-spelled: ПОДКЛ
-#: main/main.c:366
+#: main/main.c:345
 #, c-format
 msgid "  -N MAX-CONNECT     maximum number of allowed connections\n"
 msgstr "  -N МАКС_ПОДКЛ      предельное число подключений\n"
 
-#: main/main.c:367
+#: main/main.c:346
 #, c-format
 msgid "  -p PORT            port number to listen on\n"
 msgstr "  -p ПОРТ            номер порта для приёма подключений\n"
 
-#: main/main.c:368
+#: main/main.c:347
 #, c-format
 msgid "  -s                 show statistics after each query\n"
 msgstr "  -s                 показывать статистику после каждого запроса\n"
 
-#: main/main.c:369
+#: main/main.c:348
 #, c-format
 msgid "  -S WORK-MEM        set amount of memory for sorts (in kB)\n"
 msgstr "  -S РАБ_ПАМЯТЬ      задать объём памяти для сортировки (в КБ)\n"
 
-#: main/main.c:370
+#: main/main.c:349
 #, c-format
 msgid "  -V, --version      output version information, then exit\n"
 msgstr "  -V, --version      показать версию и выйти\n"
 
-#: main/main.c:371
+#: main/main.c:350
 #, c-format
 msgid "  --NAME=VALUE       set run-time parameter\n"
 msgstr "  --ИМЯ=ЗНАЧЕНИЕ     установить параметр выполнения\n"
 
-#: main/main.c:372
+#: main/main.c:351
 #, c-format
 msgid "  --describe-config  describe configuration parameters, then exit\n"
 msgstr "  --describe-config  вывести параметры конфигурации и выйти\n"
 
-#: main/main.c:373
+#: main/main.c:352
 #, c-format
 msgid "  -?, --help         show this help, then exit\n"
 msgstr "  -?, --help         показать эту справку и выйти\n"
 
-#: main/main.c:375
+#: main/main.c:354
 #, c-format
 msgid ""
 "\n"
@@ -17105,49 +17550,41 @@ msgstr ""
 "\n"
 "Параметры для разработчиков:\n"
 
-#: main/main.c:376
+#: main/main.c:355
 #, c-format
 msgid "  -f s|i|o|b|t|n|m|h forbid use of some plan types\n"
 msgstr "  -f s|i|o|b|t|n|m|h запретить некоторые типы планов\n"
 
-#: main/main.c:377
-#, c-format
-msgid ""
-"  -n                 do not reinitialize shared memory after abnormal exit\n"
-msgstr ""
-"  -n                 не переинициализировать разделяемую память после\n"
-"                     аварийного выхода\n"
-
-#: main/main.c:378
+#: main/main.c:356
 #, c-format
 msgid "  -O                 allow system table structure changes\n"
 msgstr "  -O                 разрешить изменять структуру системных таблиц\n"
 
-#: main/main.c:379
+#: main/main.c:357
 #, c-format
 msgid "  -P                 disable system indexes\n"
 msgstr "  -P                 отключить системные индексы\n"
 
-#: main/main.c:380
+#: main/main.c:358
 #, c-format
 msgid "  -t pa|pl|ex        show timings after each query\n"
 msgstr "  -t pa|pl|ex        показать время каждого запроса\n"
 
-#: main/main.c:381
+#: main/main.c:359
 #, c-format
 msgid ""
-"  -T                 send SIGSTOP to all backend processes if one dies\n"
+"  -T                 send SIGABRT to all backend processes if one dies\n"
 msgstr ""
-"  -T                 посылать сигнал SIGSTOP всем серверным процессам\n"
+"  -T                 посылать сигнал SIGABRT всем серверным процессам\n"
 "                     при отключении одного\n"
 
-#: main/main.c:382
+#: main/main.c:360
 #, c-format
 msgid "  -W NUM             wait NUM seconds to allow attach from a debugger\n"
 msgstr ""
 "  -W СЕК             ждать заданное число секунд для подключения отладчика\n"
 
-#: main/main.c:384
+#: main/main.c:362
 #, c-format
 msgid ""
 "\n"
@@ -17156,7 +17593,7 @@ msgstr ""
 "\n"
 "Параметры для монопольного режима:\n"
 
-#: main/main.c:385
+#: main/main.c:363
 #, c-format
 msgid ""
 "  --single           selects single-user mode (must be first argument)\n"
@@ -17164,22 +17601,22 @@ msgstr ""
 "  --single           включить монопольный режим\n"
 "                     (этот аргумент должен быть первым)\n"
 
-#: main/main.c:386
+#: main/main.c:364
 #, c-format
 msgid "  DBNAME             database name (defaults to user name)\n"
 msgstr "  ИМЯ_БД             база данных (по умолчанию - имя пользователя)\n"
 
-#: main/main.c:387
+#: main/main.c:365
 #, c-format
 msgid "  -d 0-5             override debugging level\n"
 msgstr "  -d 0-5             переопределить уровень отладочных сообщений\n"
 
-#: main/main.c:388
+#: main/main.c:366
 #, c-format
 msgid "  -E                 echo statement before execution\n"
 msgstr "  -E                 выводить SQL-операторы перед выполнением\n"
 
-#: main/main.c:389
+#: main/main.c:367
 #, c-format
 msgid ""
 "  -j                 do not use newline as interactive query delimiter\n"
@@ -17187,12 +17624,12 @@ msgstr ""
 "  -j                 не считать конец строки разделителем интерактивных "
 "запросов\n"
 
-#: main/main.c:390 main/main.c:396
+#: main/main.c:368 main/main.c:374
 #, c-format
 msgid "  -r FILENAME        send stdout and stderr to given file\n"
 msgstr "  -r ИМЯ_ФАЙЛА       перенаправить STDOUT и STDERR в указанный файл\n"
 
-#: main/main.c:392
+#: main/main.c:370
 #, c-format
 msgid ""
 "\n"
@@ -17201,7 +17638,7 @@ msgstr ""
 "\n"
 "Параметры для режима инициализации:\n"
 
-#: main/main.c:393
+#: main/main.c:371
 #, c-format
 msgid ""
 "  --boot             selects bootstrapping mode (must be first argument)\n"
@@ -17209,14 +17646,14 @@ msgstr ""
 "  --boot             включить режим инициализации\n"
 "                     (этот аргумент должен быть первым)\n"
 
-#: main/main.c:394
+#: main/main.c:372
 #, c-format
 msgid "  --check            selects check mode (must be first argument)\n"
 msgstr ""
 "  --check            включить режим проверки (этот аргумент должен быть "
 "первым)\n"
 
-#: main/main.c:395
+#: main/main.c:373
 #, c-format
 msgid ""
 "  DBNAME             database name (mandatory argument in bootstrapping "
@@ -17224,7 +17661,7 @@ msgid ""
 msgstr ""
 "  ИМЯ_БД             имя базы данных (необходимо в режиме инициализации)\n"
 
-#: main/main.c:398
+#: main/main.c:376
 #, c-format
 msgid ""
 "\n"
@@ -17241,12 +17678,12 @@ msgstr ""
 "\n"
 "Об ошибках сообщайте по адресу <%s>.\n"
 
-#: main/main.c:402
+#: main/main.c:380
 #, c-format
 msgid "%s home page: <%s>\n"
 msgstr "Домашняя страница %s: <%s>\n"
 
-#: main/main.c:413
+#: main/main.c:391
 #, c-format
 msgid ""
 "\"root\" execution of the PostgreSQL server is not permitted.\n"
@@ -17259,12 +17696,12 @@ msgstr ""
 "должен запускать обычный пользователь. Подробнее о том, как\n"
 "правильно запускать сервер, вы можете узнать в документации.\n"
 
-#: main/main.c:430
+#: main/main.c:408
 #, c-format
 msgid "%s: real and effective user IDs must match\n"
 msgstr "%s: фактический и эффективный ID пользователя должны совпадать\n"
 
-#: main/main.c:437
+#: main/main.c:415
 #, c-format
 msgid ""
 "Execution of PostgreSQL by a user with administrative permissions is not\n"
@@ -17289,15 +17726,20 @@ msgstr "расширенный тип узла \"%s\" уже существуе
 msgid "ExtensibleNodeMethods \"%s\" was not registered"
 msgstr "методы расширенного узла \"%s\" не зарегистрированы"
 
-#: nodes/makefuncs.c:150 statistics/extended_stats.c:2336
+#: nodes/makefuncs.c:153 statistics/extended_stats.c:2335
 #, c-format
 msgid "relation \"%s\" does not have a composite type"
 msgstr "отношение \"%s\" не имеет составного типа"
 
-#: nodes/nodeFuncs.c:114 nodes/nodeFuncs.c:145 parser/parse_coerce.c:2567
+#: nodes/makefuncs.c:879
+#, c-format
+msgid "unrecognized JSON encoding: %s"
+msgstr "нераспознанная кодировка JSON: %s"
+
+#: nodes/nodeFuncs.c:116 nodes/nodeFuncs.c:147 parser/parse_coerce.c:2567
 #: parser/parse_coerce.c:2705 parser/parse_coerce.c:2752
-#: parser/parse_expr.c:2023 parser/parse_func.c:710 parser/parse_oper.c:883
-#: utils/fmgr/funcapi.c:670
+#: parser/parse_expr.c:2049 parser/parse_func.c:710 parser/parse_oper.c:883
+#: utils/fmgr/funcapi.c:661
 #, c-format
 msgid "could not find array type for data type %s"
 msgstr "тип массива для типа данных %s не найден"
@@ -17312,7 +17754,7 @@ msgstr "портал \"%s\" с параметрами: %s"
 msgid "unnamed portal with parameters: %s"
 msgstr "неименованный портал с параметрами: %s"
 
-#: optimizer/path/joinrels.c:855
+#: optimizer/path/joinrels.c:973
 #, c-format
 msgid ""
 "FULL JOIN is only supported with merge-joinable or hash-joinable join "
@@ -17321,32 +17763,32 @@ msgstr ""
 "FULL JOIN поддерживается только с условиями, допускающими соединение "
 "слиянием или хеш-соединение"
 
-#: optimizer/plan/createplan.c:7101 parser/parse_merge.c:182
+#: optimizer/plan/createplan.c:7111 parser/parse_merge.c:182
 #: parser/parse_merge.c:189
 #, c-format
 msgid "cannot execute MERGE on relation \"%s\""
 msgstr "выполнить MERGE для отношение \"%s\" нельзя"
 
 #. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: optimizer/plan/initsplan.c:1192
+#: optimizer/plan/initsplan.c:1408
 #, c-format
 msgid "%s cannot be applied to the nullable side of an outer join"
 msgstr "%s не может применяться к NULL-содержащей стороне внешнего соединения"
 
 #. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: optimizer/plan/planner.c:1344 parser/analyze.c:1714 parser/analyze.c:1970
-#: parser/analyze.c:3152
+#: optimizer/plan/planner.c:1361 parser/analyze.c:1761 parser/analyze.c:2018
+#: parser/analyze.c:3231
 #, c-format
 msgid "%s is not allowed with UNION/INTERSECT/EXCEPT"
 msgstr "%s несовместимо с UNION/INTERSECT/EXCEPT"
 
-#: optimizer/plan/planner.c:2051 optimizer/plan/planner.c:3707
+#: optimizer/plan/planner.c:2082 optimizer/plan/planner.c:4040
 #, c-format
 msgid "could not implement GROUP BY"
 msgstr "не удалось реализовать GROUP BY"
 
-#: optimizer/plan/planner.c:2052 optimizer/plan/planner.c:3708
-#: optimizer/plan/planner.c:4351 optimizer/prep/prepunion.c:1046
+#: optimizer/plan/planner.c:2083 optimizer/plan/planner.c:4041
+#: optimizer/plan/planner.c:4681 optimizer/prep/prepunion.c:1053
 #, c-format
 msgid ""
 "Some of the datatypes only support hashing, while others only support "
@@ -17355,82 +17797,77 @@ msgstr ""
 "Одни типы данных поддерживают только хеширование, а другие - только "
 "сортировку."
 
-#: optimizer/plan/planner.c:4350
+#: optimizer/plan/planner.c:4680
 #, c-format
 msgid "could not implement DISTINCT"
 msgstr "не удалось реализовать DISTINCT"
 
-#: optimizer/plan/planner.c:5471
+#: optimizer/plan/planner.c:6019
 #, c-format
 msgid "could not implement window PARTITION BY"
 msgstr "не удалось реализовать PARTITION BY для окна"
 
-#: optimizer/plan/planner.c:5472
+#: optimizer/plan/planner.c:6020
 #, c-format
 msgid "Window partitioning columns must be of sortable datatypes."
 msgstr "Столбцы, разбивающие окна, должны иметь сортируемые типы данных."
 
-#: optimizer/plan/planner.c:5476
+#: optimizer/plan/planner.c:6024
 #, c-format
 msgid "could not implement window ORDER BY"
 msgstr "не удалось реализовать ORDER BY для окна"
 
-#: optimizer/plan/planner.c:5477
+#: optimizer/plan/planner.c:6025
 #, c-format
 msgid "Window ordering columns must be of sortable datatypes."
 msgstr "Столбцы, сортирующие окна, должны иметь сортируемые типы данных."
 
-#: optimizer/prep/prepunion.c:509
+#: optimizer/prep/prepunion.c:516
 #, c-format
 msgid "could not implement recursive UNION"
 msgstr "не удалось реализовать рекурсивный UNION"
 
-#: optimizer/prep/prepunion.c:510
+#: optimizer/prep/prepunion.c:517
 #, c-format
 msgid "All column datatypes must be hashable."
 msgstr "Все столбцы должны иметь хешируемые типы данных."
 
 #. translator: %s is UNION, INTERSECT, or EXCEPT
-#: optimizer/prep/prepunion.c:1045
+#: optimizer/prep/prepunion.c:1052
 #, c-format
 msgid "could not implement %s"
 msgstr "не удалось реализовать %s"
 
-#: optimizer/util/clauses.c:4777
+#: optimizer/util/clauses.c:4856
 #, c-format
 msgid "SQL function \"%s\" during inlining"
 msgstr "внедрённая в код SQL-функция \"%s\""
 
-#: optimizer/util/plancat.c:142
-#, c-format
-msgid "cannot open relation \"%s\""
-msgstr "открыть отношение \"%s\" нельзя"
-
-#: optimizer/util/plancat.c:151
+#: optimizer/util/plancat.c:154
 #, c-format
 msgid "cannot access temporary or unlogged relations during recovery"
 msgstr ""
 "обращаться к временным или нежурналируемым отношениям в процессе "
 "восстановления нельзя"
 
-#: optimizer/util/plancat.c:691
+#: optimizer/util/plancat.c:726
 #, c-format
 msgid "whole row unique index inference specifications are not supported"
 msgstr ""
 "указания со ссылкой на всю строку для выбора уникального индекса не "
 "поддерживаются"
 
-#: optimizer/util/plancat.c:708
+#: optimizer/util/plancat.c:743
 #, c-format
 msgid "constraint in ON CONFLICT clause has no associated index"
 msgstr "ограничению в ON CONFLICT не соответствует индекс"
 
-#: optimizer/util/plancat.c:758
+#: optimizer/util/plancat.c:793
 #, c-format
 msgid "ON CONFLICT DO UPDATE not supported with exclusion constraints"
 msgstr "ON CONFLICT DO UPDATE не поддерживается с ограничениями-исключениями"
 
-#: optimizer/util/plancat.c:863
+#: optimizer/util/plancat.c:898
 #, c-format
 msgid ""
 "there is no unique or exclusion constraint matching the ON CONFLICT "
@@ -17439,22 +17876,22 @@ msgstr ""
 "нет уникального ограничения или ограничения-исключения, соответствующего "
 "указанию ON CONFLICT"
 
-#: parser/analyze.c:780 parser/analyze.c:1494
+#: parser/analyze.c:826 parser/analyze.c:1540
 #, c-format
 msgid "VALUES lists must all be the same length"
 msgstr "списки VALUES должны иметь одинаковую длину"
 
-#: parser/analyze.c:981
+#: parser/analyze.c:1028
 #, c-format
 msgid "INSERT has more expressions than target columns"
 msgstr "INSERT содержит больше выражений, чем целевых столбцов"
 
-#: parser/analyze.c:999
+#: parser/analyze.c:1046
 #, c-format
 msgid "INSERT has more target columns than expressions"
 msgstr "INSERT содержит больше целевых столбцов, чем выражений"
 
-#: parser/analyze.c:1003
+#: parser/analyze.c:1050
 #, c-format
 msgid ""
 "The insertion source is a row expression containing the same number of "
@@ -17463,29 +17900,29 @@ msgstr ""
 "Источником данных является строка, включающая столько же столбцов, сколько "
 "требуется для INSERT. Вы намеренно использовали скобки?"
 
-#: parser/analyze.c:1302 parser/analyze.c:1687
+#: parser/analyze.c:1347 parser/analyze.c:1734
 #, c-format
 msgid "SELECT ... INTO is not allowed here"
 msgstr "SELECT ... INTO здесь не допускается"
 
 #. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:1617 parser/analyze.c:3363
+#: parser/analyze.c:1663 parser/analyze.c:3463
 #, c-format
 msgid "%s cannot be applied to VALUES"
 msgstr "%s нельзя применять к VALUES"
 
-#: parser/analyze.c:1853
+#: parser/analyze.c:1900
 #, c-format
 msgid "invalid UNION/INTERSECT/EXCEPT ORDER BY clause"
 msgstr "неверное предложение UNION/INTERSECT/EXCEPT ORDER BY"
 
-#: parser/analyze.c:1854
+#: parser/analyze.c:1901
 #, c-format
 msgid "Only result column names can be used, not expressions or functions."
 msgstr ""
 "Допустимо использование только имён столбцов, но не выражений или функций."
 
-#: parser/analyze.c:1855
+#: parser/analyze.c:1902
 #, c-format
 msgid ""
 "Add the expression/function to every SELECT, or move the UNION into a FROM "
@@ -17494,12 +17931,12 @@ msgstr ""
 "Добавьте выражение/функцию в каждый SELECT или перенесите UNION в "
 "предложение FROM."
 
-#: parser/analyze.c:1960
+#: parser/analyze.c:2008
 #, c-format
 msgid "INTO is only allowed on first SELECT of UNION/INTERSECT/EXCEPT"
 msgstr "INTO можно добавить только в первый SELECT в UNION/INTERSECT/EXCEPT"
 
-#: parser/analyze.c:2032
+#: parser/analyze.c:2080
 #, c-format
 msgid ""
 "UNION/INTERSECT/EXCEPT member statement cannot refer to other relations of "
@@ -17508,17 +17945,17 @@ msgstr ""
 "оператор, составляющий UNION/INTERSECT/EXCEPT, не может ссылаться на другие "
 "отношения на том же уровне запроса"
 
-#: parser/analyze.c:2119
+#: parser/analyze.c:2167
 #, c-format
 msgid "each %s query must have the same number of columns"
 msgstr "все запросы в %s должны возвращать одинаковое число столбцов"
 
-#: parser/analyze.c:2523
+#: parser/analyze.c:2573
 #, c-format
 msgid "RETURNING must have at least one column"
 msgstr "в RETURNING должен быть минимум один столбец"
 
-#: parser/analyze.c:2626
+#: parser/analyze.c:2676
 #, c-format
 msgid "assignment source returned %d column"
 msgid_plural "assignment source returned %d columns"
@@ -17526,356 +17963,356 @@ msgstr[0] "источник присваиваемого значения выд
 msgstr[1] "источник присваиваемого значения выдал %d столбца"
 msgstr[2] "источник присваиваемого значения выдал %d столбцов"
 
-#: parser/analyze.c:2687
+#: parser/analyze.c:2737
 #, c-format
 msgid "variable \"%s\" is of type %s but expression is of type %s"
 msgstr "переменная \"%s\" имеет тип %s, а выражение - тип %s"
 
 #. translator: %s is a SQL keyword
-#: parser/analyze.c:2811 parser/analyze.c:2819
+#: parser/analyze.c:2862 parser/analyze.c:2870
 #, c-format
 msgid "cannot specify both %s and %s"
 msgstr "указать %s и %s одновременно нельзя"
 
-#: parser/analyze.c:2839
+#: parser/analyze.c:2890
 #, c-format
 msgid "DECLARE CURSOR must not contain data-modifying statements in WITH"
 msgstr "DECLARE CURSOR не может содержать операторы, изменяющие данные, в WITH"
 
 #. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:2847
+#: parser/analyze.c:2898
 #, c-format
 msgid "DECLARE CURSOR WITH HOLD ... %s is not supported"
 msgstr "DECLARE CURSOR WITH HOLD ... %s не поддерживается"
 
-#: parser/analyze.c:2850
+#: parser/analyze.c:2901
 #, c-format
 msgid "Holdable cursors must be READ ONLY."
 msgstr "Сохраняемые курсоры должны быть READ ONLY."
&nbs