From ac449d88016080663dbc1cd48004b5a481c034ce Mon Sep 17 00:00:00 2001
From: Peter Eisentraut <peter@eisentraut.org>
Date: Mon, 18 May 2020 12:49:30 +0200
Subject: [PATCH] Translation updates

Source-Git-URL: https://git.postgresql.org/git/pgtranslation/messages.git
Source-Git-Hash: 031ca65d7825c3e539a3e62ea9d6630af12e6b6b
---
 src/backend/po/es.po                 | 13398 +++++++++++++------------
 src/bin/initdb/po/es.po              |   379 +-
 src/bin/pg_archivecleanup/po/es.po   |    70 +-
 src/bin/pg_basebackup/po/de.po       |   268 +-
 src/bin/pg_basebackup/po/es.po       |   714 +-
 src/bin/pg_checksums/po/es.po        |    96 +-
 src/bin/pg_config/po/es.po           |    45 +-
 src/bin/pg_controldata/po/es.po      |   183 +-
 src/bin/pg_ctl/po/es.po              |   326 +-
 src/bin/pg_dump/po/es.po             |  1052 +-
 src/bin/pg_resetwal/po/es.po         |   244 +-
 src/bin/pg_rewind/po/es.po           |   380 +-
 src/bin/pg_test_fsync/po/es.po       |    70 +-
 src/bin/pg_test_timing/po/es.po      |     2 +-
 src/bin/pg_upgrade/po/es.po          |   585 +-
 src/bin/pg_waldump/po/es.po          |   179 +-
 src/bin/psql/po/es.po                |  3350 ++++---
 src/bin/psql/po/ja.po                |     8 +-
 src/bin/scripts/po/es.po             |   477 +-
 src/interfaces/ecpg/ecpglib/po/es.po |    11 +-
 src/interfaces/ecpg/preproc/po/de.po |    86 +-
 src/interfaces/ecpg/preproc/po/es.po |   175 +-
 src/interfaces/libpq/po/de.po        |    94 +-
 src/interfaces/libpq/po/es.po        |   592 +-
 src/pl/plperl/po/es.po               |    88 +-
 src/pl/plpgsql/src/po/es.po          |   200 +-
 src/pl/plpython/po/es.po             |   178 +-
 src/pl/tcl/po/es.po                  |    32 +-
 28 files changed, 12484 insertions(+), 10798 deletions(-)

diff --git a/src/backend/po/es.po b/src/backend/po/es.po
index 60ec9172956..8b24205d3fd 100644
--- a/src/backend/po/es.po
+++ b/src/backend/po/es.po
@@ -61,7 +61,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: PostgreSQL server 12\n"
 "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n"
-"POT-Creation-Date: 2019-09-29 23:39+0000\n"
+"POT-Creation-Date: 2020-05-17 02:39+0000\n"
 "PO-Revision-Date: 2020-04-02 13:22-0300\n"
 "Last-Translator: Álvaro Herrera <alvherre@alvh.no-ip.org>\n"
 "Language-Team: PgSQL-es-Ayuda <pgsql-es-ayuda@lists.postgresql.org>\n"
@@ -71,45 +71,45 @@ msgstr ""
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=2; plural=n != 1;\n"
 
-#: ../common/config_info.c:130 ../common/config_info.c:138
-#: ../common/config_info.c:146 ../common/config_info.c:154
-#: ../common/config_info.c:162 ../common/config_info.c:170
-#: ../common/config_info.c:178 ../common/config_info.c:186
-#: ../common/config_info.c:194
+#: ../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
+#: ../common/config_info.c:182 ../common/config_info.c:190
 msgid "not recorded"
 msgstr "no registrado"
 
 #: ../common/controldata_utils.c:68 ../common/controldata_utils.c:73
-#: commands/copy.c:3549 commands/extension.c:3341 utils/adt/genfile.c:153
+#: commands/copy.c:3495 commands/extension.c:3423 utils/adt/genfile.c:147
 #, c-format
 msgid "could not open file \"%s\" for reading: %m"
 msgstr "no se pudo abrir archivo «%s» para lectura: %m"
 
 #: ../common/controldata_utils.c:86 ../common/controldata_utils.c:89
-#: access/transam/timeline.c:347 access/transam/twophase.c:1293
-#: access/transam/xlog.c:3455 access/transam/xlog.c:4602
-#: access/transam/xlog.c:10790 access/transam/xlog.c:10803
-#: access/transam/xlog.c:11228 access/transam/xlog.c:11308
-#: access/transam/xlog.c:11347 access/transam/xlog.c:11390
-#: access/transam/xlogfuncs.c:663 access/transam/xlogfuncs.c:682
-#: commands/extension.c:3351 libpq/hba.c:499 replication/logical/origin.c:718
-#: replication/logical/origin.c:754 replication/logical/reorderbuffer.c:3312
-#: replication/logical/snapbuild.c:1746 replication/logical/snapbuild.c:1788
-#: replication/logical/snapbuild.c:1816 replication/logical/snapbuild.c:1843
-#: replication/slot.c:1426 replication/slot.c:1467 replication/walsender.c:513
-#: storage/file/copydir.c:195 utils/adt/genfile.c:170 utils/adt/misc.c:753
+#: access/transam/timeline.c:143 access/transam/timeline.c:362
+#: access/transam/twophase.c:1276 access/transam/xlog.c:3501
+#: access/transam/xlog.c:4726 access/transam/xlog.c:11098
+#: access/transam/xlog.c:11111 access/transam/xlog.c:11564
+#: access/transam/xlog.c:11644 access/transam/xlog.c:11683
+#: access/transam/xlog.c:11726 access/transam/xlogfuncs.c:662
+#: access/transam/xlogfuncs.c:681 commands/extension.c:3433 libpq/hba.c:499
+#: replication/logical/origin.c:717 replication/logical/origin.c:753
+#: replication/logical/reorderbuffer.c:3607
+#: replication/logical/snapbuild.c:1741 replication/logical/snapbuild.c:1783
+#: replication/logical/snapbuild.c:1811 replication/logical/snapbuild.c:1838
+#: replication/slot.c:1537 replication/slot.c:1578 replication/walsender.c:560
+#: storage/file/copydir.c:195 utils/adt/genfile.c:164 utils/adt/misc.c:765
 #: utils/cache/relmapper.c:741
 #, c-format
 msgid "could not read file \"%s\": %m"
 msgstr "no se pudo leer el archivo «%s»: %m"
 
 #: ../common/controldata_utils.c:97 ../common/controldata_utils.c:101
-#: access/transam/twophase.c:1296 access/transam/xlog.c:3460
-#: access/transam/xlog.c:4607 replication/logical/origin.c:723
-#: replication/logical/origin.c:762 replication/logical/snapbuild.c:1751
-#: replication/logical/snapbuild.c:1793 replication/logical/snapbuild.c:1821
-#: replication/logical/snapbuild.c:1848 replication/slot.c:1430
-#: replication/slot.c:1471 replication/walsender.c:518
+#: access/transam/twophase.c:1279 access/transam/xlog.c:3506
+#: access/transam/xlog.c:4731 replication/logical/origin.c:722
+#: replication/logical/origin.c:761 replication/logical/snapbuild.c:1746
+#: replication/logical/snapbuild.c:1788 replication/logical/snapbuild.c:1816
+#: replication/logical/snapbuild.c:1843 replication/slot.c:1541
+#: replication/slot.c:1582 replication/walsender.c:565
 #: utils/cache/relmapper.c:745
 #, c-format
 msgid "could not read file \"%s\": read %d of %zu"
@@ -117,20 +117,20 @@ msgstr "no se pudo leer el archivo «%s»: leídos %d de %zu"
 
 #: ../common/controldata_utils.c:112 ../common/controldata_utils.c:117
 #: ../common/controldata_utils.c:256 ../common/controldata_utils.c:259
-#: access/heap/rewriteheap.c:1208 access/heap/rewriteheap.c:1310
-#: access/transam/timeline.c:377 access/transam/timeline.c:421
-#: access/transam/timeline.c:499 access/transam/twophase.c:1305
-#: access/transam/twophase.c:1728 access/transam/xlog.c:3327
-#: access/transam/xlog.c:3495 access/transam/xlog.c:3500
-#: access/transam/xlog.c:3797 access/transam/xlog.c:4572
-#: access/transam/xlog.c:5533 access/transam/xlogfuncs.c:688
-#: commands/copy.c:1814 libpq/be-fsstubs.c:462 libpq/be-fsstubs.c:535
-#: replication/logical/origin.c:656 replication/logical/origin.c:795
-#: replication/logical/reorderbuffer.c:3370
-#: replication/logical/snapbuild.c:1658 replication/logical/snapbuild.c:1856
-#: replication/slot.c:1322 replication/slot.c:1478 replication/walsender.c:528
-#: storage/file/copydir.c:218 storage/file/copydir.c:223 storage/file/fd.c:654
-#: storage/file/fd.c:3308 storage/file/fd.c:3411 utils/cache/relmapper.c:753
+#: access/heap/rewriteheap.c:1181 access/heap/rewriteheap.c:1284
+#: access/transam/timeline.c:392 access/transam/timeline.c:438
+#: access/transam/timeline.c:516 access/transam/twophase.c:1288
+#: access/transam/twophase.c:1676 access/transam/xlog.c:3373
+#: access/transam/xlog.c:3541 access/transam/xlog.c:3546
+#: access/transam/xlog.c:3874 access/transam/xlog.c:4696
+#: access/transam/xlog.c:5620 access/transam/xlogfuncs.c:687
+#: commands/copy.c:1810 libpq/be-fsstubs.c:462 libpq/be-fsstubs.c:533
+#: replication/logical/origin.c:655 replication/logical/origin.c:794
+#: replication/logical/reorderbuffer.c:3665
+#: replication/logical/snapbuild.c:1653 replication/logical/snapbuild.c:1851
+#: replication/slot.c:1428 replication/slot.c:1589 replication/walsender.c:575
+#: storage/file/copydir.c:218 storage/file/copydir.c:223 storage/file/fd.c:702
+#: storage/file/fd.c:3417 storage/file/fd.c:3520 utils/cache/relmapper.c:753
 #: utils/cache/relmapper.c:892
 #, c-format
 msgid "could not close file \"%s\": %m"
@@ -155,186 +155,302 @@ msgstr ""
 "directorio de datos."
 
 #: ../common/controldata_utils.c:197 ../common/controldata_utils.c:203
-#: ../common/file_utils.c:226 ../common/file_utils.c:285
-#: ../common/file_utils.c:359 access/heap/rewriteheap.c:1293
-#: access/transam/timeline.c:111 access/transam/timeline.c:236
-#: access/transam/timeline.c:333 access/transam/twophase.c:1249
-#: access/transam/xlog.c:3229 access/transam/xlog.c:3369
-#: access/transam/xlog.c:3410 access/transam/xlog.c:3608
-#: access/transam/xlog.c:3693 access/transam/xlog.c:3771
-#: access/transam/xlog.c:4592 access/transam/xlogutils.c:708
-#: postmaster/syslogger.c:1489 replication/basebackup.c:529
-#: replication/basebackup.c:1408 replication/logical/origin.c:708
-#: replication/logical/reorderbuffer.c:2308
-#: replication/logical/reorderbuffer.c:2575
-#: replication/logical/reorderbuffer.c:3292
-#: replication/logical/snapbuild.c:1613 replication/logical/snapbuild.c:1717
-#: replication/slot.c:1398 replication/walsender.c:486
-#: replication/walsender.c:2451 storage/file/copydir.c:161
-#: storage/file/fd.c:629 storage/file/fd.c:3295 storage/file/fd.c:3382
-#: storage/smgr/md.c:462 utils/cache/relmapper.c:724
-#: utils/cache/relmapper.c:836 utils/error/elog.c:1861
-#: utils/init/miscinit.c:1269 utils/init/miscinit.c:1404
-#: utils/init/miscinit.c:1481 utils/misc/guc.c:8043 utils/misc/guc.c:8075
+#: ../common/file_utils.c:224 ../common/file_utils.c:283
+#: ../common/file_utils.c:357 access/heap/rewriteheap.c:1267
+#: access/transam/timeline.c:111 access/transam/timeline.c:251
+#: access/transam/timeline.c:348 access/transam/twophase.c:1232
+#: access/transam/xlog.c:3275 access/transam/xlog.c:3415
+#: access/transam/xlog.c:3456 access/transam/xlog.c:3654
+#: access/transam/xlog.c:3739 access/transam/xlog.c:3842
+#: access/transam/xlog.c:4716 access/transam/xlogutils.c:807
+#: postmaster/syslogger.c:1488 replication/basebackup.c:621
+#: replication/basebackup.c:1590 replication/logical/origin.c:707
+#: replication/logical/reorderbuffer.c:2466
+#: replication/logical/reorderbuffer.c:2833
+#: replication/logical/reorderbuffer.c:3587
+#: replication/logical/snapbuild.c:1608 replication/logical/snapbuild.c:1712
+#: replication/slot.c:1509 replication/walsender.c:533
+#: replication/walsender.c:2523 storage/file/copydir.c:161
+#: storage/file/fd.c:677 storage/file/fd.c:3404 storage/file/fd.c:3491
+#: storage/smgr/md.c:475 utils/cache/relmapper.c:724
+#: utils/cache/relmapper.c:836 utils/error/elog.c:1858
+#: utils/init/miscinit.c:1316 utils/init/miscinit.c:1450
+#: utils/init/miscinit.c:1527 utils/misc/guc.c:8262 utils/misc/guc.c:8294
 #, c-format
 msgid "could not open file \"%s\": %m"
 msgstr "no se pudo abrir el archivo «%s»: %m"
 
 #: ../common/controldata_utils.c:221 ../common/controldata_utils.c:224
-#: access/transam/twophase.c:1701 access/transam/twophase.c:1710
-#: access/transam/xlog.c:10547 access/transam/xlog.c:10585
-#: access/transam/xlog.c:10998 access/transam/xlogfuncs.c:742
-#: postmaster/syslogger.c:1500 postmaster/syslogger.c:1513
+#: access/transam/twophase.c:1649 access/transam/twophase.c:1658
+#: access/transam/xlog.c:10855 access/transam/xlog.c:10893
+#: access/transam/xlog.c:11306 access/transam/xlogfuncs.c:741
+#: postmaster/syslogger.c:1499 postmaster/syslogger.c:1512
 #: utils/cache/relmapper.c:870
 #, c-format
 msgid "could not write file \"%s\": %m"
 msgstr "no se pudo escribir el archivo «%s»: %m"
 
 #: ../common/controldata_utils.c:239 ../common/controldata_utils.c:245
-#: ../common/file_utils.c:297 ../common/file_utils.c:367
-#: access/heap/rewriteheap.c:981 access/heap/rewriteheap.c:1202
-#: access/heap/rewriteheap.c:1304 access/transam/timeline.c:415
-#: access/transam/timeline.c:493 access/transam/twophase.c:1722
-#: access/transam/xlog.c:3320 access/transam/xlog.c:3489
-#: access/transam/xlog.c:4565 access/transam/xlog.c:10065
-#: access/transam/xlog.c:10091 replication/logical/snapbuild.c:1651
-#: replication/slot.c:1312 replication/slot.c:1408 storage/file/fd.c:646
-#: storage/file/fd.c:3403 storage/smgr/md.c:885 storage/smgr/md.c:918
-#: storage/sync/sync.c:395 utils/cache/relmapper.c:885 utils/misc/guc.c:7826
+#: ../common/file_utils.c:295 ../common/file_utils.c:365
+#: access/heap/rewriteheap.c:961 access/heap/rewriteheap.c:1175
+#: access/heap/rewriteheap.c:1278 access/transam/timeline.c:432
+#: access/transam/timeline.c:510 access/transam/twophase.c:1670
+#: access/transam/xlog.c:3366 access/transam/xlog.c:3535
+#: access/transam/xlog.c:4689 access/transam/xlog.c:10363
+#: access/transam/xlog.c:10390 replication/logical/snapbuild.c:1646
+#: replication/slot.c:1414 replication/slot.c:1519 storage/file/fd.c:694
+#: storage/file/fd.c:3512 storage/smgr/md.c:921 storage/smgr/md.c:962
+#: storage/sync/sync.c:396 utils/cache/relmapper.c:885 utils/misc/guc.c:8045
 #, c-format
 msgid "could not fsync file \"%s\": %m"
 msgstr "no se pudo sincronizar (fsync) archivo «%s»: %m"
 
-#: ../common/exec.c:138 ../common/exec.c:255 ../common/exec.c:301
+#: ../common/exec.c:137 ../common/exec.c:254 ../common/exec.c:300
 #, c-format
 msgid "could not identify current directory: %m"
 msgstr "no se pudo identificar el directorio actual: %m"
 
-#: ../common/exec.c:157
+#: ../common/exec.c:156
 #, c-format
 msgid "invalid binary \"%s\""
 msgstr "el binario «%s» no es válido"
 
-#: ../common/exec.c:207
+#: ../common/exec.c:206
 #, c-format
 msgid "could not read binary \"%s\""
 msgstr "no se pudo leer el binario «%s»"
 
-#: ../common/exec.c:215
+#: ../common/exec.c:214
 #, c-format
 msgid "could not find a \"%s\" to execute"
 msgstr "no se pudo encontrar un «%s» para ejecutar"
 
-#: ../common/exec.c:271 ../common/exec.c:310 utils/init/miscinit.c:220
+#: ../common/exec.c:270 ../common/exec.c:309 utils/init/miscinit.c:395
 #, c-format
 msgid "could not change directory to \"%s\": %m"
 msgstr "no se pudo cambiar al directorio «%s»: %m"
 
-#: ../common/exec.c:288 access/transam/xlog.c:10420
-#: replication/basebackup.c:1246 utils/adt/misc.c:324
+#: ../common/exec.c:287 access/transam/xlog.c:10727
+#: replication/basebackup.c:1415 utils/adt/misc.c:336
 #, c-format
 msgid "could not read symbolic link \"%s\": %m"
 msgstr "no se pudo leer el enlace simbólico «%s»: %m"
 
-#: ../common/exec.c:541
+#: ../common/exec.c:410
 #, c-format
 msgid "pclose failed: %m"
 msgstr "pclose falló: %m"
 
-#: ../common/exec.c:670 ../common/exec.c:715 ../common/exec.c:807
-#: ../common/psprintf.c:143 ../port/path.c:630 ../port/path.c:668
-#: ../port/path.c:685 access/transam/twophase.c:1394 access/transam/xlog.c:6357
-#: lib/dshash.c:246 lib/stringinfo.c:283 libpq/auth.c:1092 libpq/auth.c:1482
-#: libpq/auth.c:1550 libpq/auth.c:2068 postmaster/bgworker.c:337
-#: postmaster/bgworker.c:907 postmaster/postmaster.c:2454
-#: postmaster/postmaster.c:2476 postmaster/postmaster.c:4068
-#: postmaster/postmaster.c:4757 postmaster/postmaster.c:4832
-#: postmaster/postmaster.c:5509 postmaster/postmaster.c:5856
-#: replication/libpqwalreceiver/libpqwalreceiver.c:257
-#: replication/logical/logical.c:179 storage/buffer/localbuf.c:436
-#: storage/file/fd.c:795 storage/file/fd.c:1191 storage/file/fd.c:1352
-#: storage/file/fd.c:2161 storage/ipc/procarray.c:1047
-#: storage/ipc/procarray.c:1542 storage/ipc/procarray.c:1549
-#: storage/ipc/procarray.c:1973 storage/ipc/procarray.c:2600
+#: ../common/exec.c:539 ../common/exec.c:584 ../common/exec.c:676
+#: ../common/psprintf.c:143 ../common/stringinfo.c:305 ../port/path.c:630
+#: ../port/path.c:668 ../port/path.c:685 access/transam/twophase.c:1341
+#: access/transam/xlog.c:6491 lib/dshash.c:246 libpq/auth.c:1090
+#: libpq/auth.c:1491 libpq/auth.c:1559 libpq/auth.c:2089
+#: libpq/be-secure-gssapi.c:484 postmaster/bgworker.c:336
+#: postmaster/bgworker.c:886 postmaster/postmaster.c:2501
+#: postmaster/postmaster.c:2523 postmaster/postmaster.c:4161
+#: postmaster/postmaster.c:4855 postmaster/postmaster.c:4925
+#: postmaster/postmaster.c:5610 postmaster/postmaster.c:5971
+#: replication/libpqwalreceiver/libpqwalreceiver.c:259
+#: replication/logical/logical.c:176 storage/buffer/localbuf.c:442
+#: storage/file/fd.c:832 storage/file/fd.c:1302 storage/file/fd.c:1463
+#: storage/file/fd.c:2268 storage/ipc/procarray.c:1045
+#: storage/ipc/procarray.c:1541 storage/ipc/procarray.c:1548
+#: storage/ipc/procarray.c:1972 storage/ipc/procarray.c:2597
 #: utils/adt/cryptohashes.c:45 utils/adt/cryptohashes.c:65
-#: utils/adt/formatting.c:1604 utils/adt/formatting.c:1728
-#: utils/adt/formatting.c:1853 utils/adt/pg_locale.c:473
-#: utils/adt/pg_locale.c:637 utils/adt/regexp.c:223 utils/fmgr/dfmgr.c:229
-#: utils/hash/dynahash.c:448 utils/hash/dynahash.c:557
-#: utils/hash/dynahash.c:1069 utils/mb/mbutils.c:365 utils/mb/mbutils.c:698
-#: utils/misc/guc.c:4620 utils/misc/guc.c:4636 utils/misc/guc.c:4649
-#: utils/misc/guc.c:7804 utils/misc/tzparser.c:468 utils/mmgr/aset.c:484
-#: utils/mmgr/dsa.c:701 utils/mmgr/dsa.c:723 utils/mmgr/dsa.c:804
-#: utils/mmgr/generation.c:249 utils/mmgr/mcxt.c:796 utils/mmgr/mcxt.c:832
-#: utils/mmgr/mcxt.c:870 utils/mmgr/mcxt.c:908 utils/mmgr/mcxt.c:944
-#: utils/mmgr/mcxt.c:975 utils/mmgr/mcxt.c:1011 utils/mmgr/mcxt.c:1063
-#: utils/mmgr/mcxt.c:1098 utils/mmgr/mcxt.c:1133 utils/mmgr/slab.c:239
+#: utils/adt/formatting.c:1698 utils/adt/formatting.c:1822
+#: utils/adt/formatting.c:1947 utils/adt/pg_locale.c:484
+#: utils/adt/pg_locale.c:648 utils/adt/regexp.c:223 utils/fmgr/dfmgr.c:229
+#: utils/hash/dynahash.c:450 utils/hash/dynahash.c:559
+#: utils/hash/dynahash.c:1071 utils/mb/mbutils.c:401 utils/mb/mbutils.c:428
+#: utils/mb/mbutils.c:757 utils/mb/mbutils.c:783 utils/misc/guc.c:4856
+#: utils/misc/guc.c:4872 utils/misc/guc.c:4885 utils/misc/guc.c:8023
+#: utils/misc/tzparser.c:467 utils/mmgr/aset.c:475 utils/mmgr/dsa.c:701
+#: utils/mmgr/dsa.c:723 utils/mmgr/dsa.c:804 utils/mmgr/generation.c:233
+#: utils/mmgr/mcxt.c:821 utils/mmgr/mcxt.c:857 utils/mmgr/mcxt.c:895
+#: utils/mmgr/mcxt.c:933 utils/mmgr/mcxt.c:969 utils/mmgr/mcxt.c:1000
+#: utils/mmgr/mcxt.c:1036 utils/mmgr/mcxt.c:1088 utils/mmgr/mcxt.c:1123
+#: utils/mmgr/mcxt.c:1158 utils/mmgr/slab.c:235
 #, c-format
 msgid "out of memory"
 msgstr "memoria agotada"
 
-#: ../common/fe_memutils.c:35 ../common/fe_memutils.c:75
-#: ../common/fe_memutils.c:98 ../common/psprintf.c:145 ../port/path.c:632
-#: ../port/path.c:670 ../port/path.c:687 utils/misc/ps_status.c:176
-#: utils/misc/ps_status.c:184 utils/misc/ps_status.c:214
-#: utils/misc/ps_status.c:222
-#, c-format
-msgid "out of memory\n"
-msgstr "memoria agotada\n"
+#: ../common/fe_archive.c:57
+#, fuzzy, c-format
+#| msgid "could not send replication command \"%s\": %s"
+msgid "could not use restore_command with %%r alias"
+msgstr "no se pudo ejecutar la orden de replicación «%s»: %s"
 
-#: ../common/fe_memutils.c:92
-#, c-format
-msgid "cannot duplicate null pointer (internal error)\n"
-msgstr "no se puede duplicar un puntero nulo (error interno)\n"
+#: ../common/fe_archive.c:78
+#, fuzzy, c-format
+#| msgid "archive file \"%s\" has wrong size: %lu instead of %lu"
+msgid "unexpected file size for \"%s\": %lu instead of %lu"
+msgstr "el archivo «%s» tiene tamaño erróneo: %lu en lugar de %lu"
 
-#: ../common/file_utils.c:81 ../common/file_utils.c:183
-#: access/transam/twophase.c:1261 access/transam/xlog.c:10523
-#: access/transam/xlog.c:10561 access/transam/xlog.c:10778
-#: access/transam/xlogarchive.c:104 access/transam/xlogarchive.c:264
-#: commands/copy.c:1944 commands/copy.c:3559 commands/extension.c:3330
-#: commands/tablespace.c:796 commands/tablespace.c:887 guc-file.l:1062
-#: replication/basebackup.c:355 replication/basebackup.c:535
-#: replication/basebackup.c:607 replication/logical/snapbuild.c:1527
-#: storage/file/copydir.c:68 storage/file/copydir.c:107 storage/file/fd.c:1703
-#: storage/file/fd.c:2980 storage/file/fd.c:3162 storage/file/fd.c:3247
-#: utils/adt/dbsize.c:70 utils/adt/dbsize.c:222 utils/adt/dbsize.c:302
-#: utils/adt/genfile.c:133 utils/adt/genfile.c:386
+#: ../common/fe_archive.c:89
+#, fuzzy, c-format
+#| msgid "could not restore file \"%s\" from archive: %s"
+msgid "could not open file \"%s\" restored from archive: %m"
+msgstr "no se pudo recuperar el archivo «%s»: %s"
+
+#: ../common/fe_archive.c:101 ../common/file_utils.c:79
+#: ../common/file_utils.c:181 access/transam/twophase.c:1244
+#: access/transam/xlog.c:10831 access/transam/xlog.c:10869
+#: access/transam/xlog.c:11086 access/transam/xlogarchive.c:110
+#: access/transam/xlogarchive.c:226 commands/copy.c:1938 commands/copy.c:3505
+#: commands/extension.c:3412 commands/tablespace.c:795
+#: commands/tablespace.c:886 replication/basebackup.c:444
+#: replication/basebackup.c:627 replication/basebackup.c:700
+#: replication/logical/snapbuild.c:1522 storage/file/copydir.c:68
+#: storage/file/copydir.c:107 storage/file/fd.c:1814 storage/file/fd.c:3088
+#: storage/file/fd.c:3270 storage/file/fd.c:3356 utils/adt/dbsize.c:70
+#: utils/adt/dbsize.c:222 utils/adt/dbsize.c:302 utils/adt/genfile.c:127
+#: utils/adt/genfile.c:380 utils/adt/genfile.c:606 guc-file.l:1061
 #, c-format
 msgid "could not stat file \"%s\": %m"
 msgstr "no se pudo hacer stat al archivo «%s»: %m"
 
-#: ../common/file_utils.c:160 ../common/pgfnames.c:48 commands/tablespace.c:719
-#: commands/tablespace.c:729 postmaster/postmaster.c:1474
-#: storage/file/fd.c:2562 storage/file/reinit.c:122 utils/adt/genfile.c:487
-#: utils/adt/genfile.c:565 utils/adt/misc.c:243 utils/misc/tzparser.c:339
+#: ../common/fe_archive.c:116
+#, fuzzy, c-format
+#| msgid "Restoring global objects in the new cluster"
+msgid "restore_command failed due to the signal: %s"
+msgstr "Restaurando objetos globales en el nuevo clúster"
+
+#: ../common/fe_archive.c:125
+#, fuzzy, c-format
+#| msgid "could not restore file \"%s\" from archive: %s"
+msgid "could not restore file \"%s\" from archive"
+msgstr "no se pudo recuperar el archivo «%s»: %s"
+
+#: ../common/fe_memutils.c:35 ../common/fe_memutils.c:75
+#: ../common/fe_memutils.c:98 ../common/fe_memutils.c:162
+#: ../common/psprintf.c:145 ../port/path.c:632 ../port/path.c:670
+#: ../port/path.c:687 utils/misc/ps_status.c:181 utils/misc/ps_status.c:189
+#: utils/misc/ps_status.c:219 utils/misc/ps_status.c:227
+#, c-format
+msgid "out of memory\n"
+msgstr "memoria agotada\n"
+
+#: ../common/fe_memutils.c:92 ../common/fe_memutils.c:154
+#, c-format
+msgid "cannot duplicate null pointer (internal error)\n"
+msgstr "no se puede duplicar un puntero nulo (error interno)\n"
+
+#: ../common/file_utils.c:158 ../common/pgfnames.c:48 commands/tablespace.c:718
+#: commands/tablespace.c:728 postmaster/postmaster.c:1497
+#: storage/file/fd.c:2671 storage/file/reinit.c:122 utils/adt/misc.c:258
+#: utils/misc/tzparser.c:338
 #, c-format
 msgid "could not open directory \"%s\": %m"
 msgstr "no se pudo abrir el directorio «%s»: %m"
 
-#: ../common/file_utils.c:194 ../common/pgfnames.c:69 storage/file/fd.c:2574
+#: ../common/file_utils.c:192 ../common/pgfnames.c:69 storage/file/fd.c:2683
 #, c-format
 msgid "could not read directory \"%s\": %m"
 msgstr "no se pudo leer el directorio «%s»: %m"
 
-#: ../common/file_utils.c:377 access/transam/xlogarchive.c:449
-#: postmaster/syslogger.c:1524 replication/logical/snapbuild.c:1670
-#: replication/slot.c:598 replication/slot.c:1210 replication/slot.c:1332
-#: storage/file/fd.c:664 storage/file/fd.c:759 utils/time/snapmgr.c:1350
+#: ../common/file_utils.c:375 access/transam/xlogarchive.c:411
+#: postmaster/syslogger.c:1523 replication/logical/snapbuild.c:1665
+#: replication/slot.c:607 replication/slot.c:1300 replication/slot.c:1442
+#: storage/file/fd.c:712 utils/time/snapmgr.c:1350
 #, c-format
 msgid "could not rename file \"%s\" to \"%s\": %m"
 msgstr "no se pudo renombrar el archivo de «%s» a «%s»: %m"
 
-#: ../common/logging.c:188
+#: ../common/jsonapi.c:1064
+#, c-format
+msgid "Escape sequence \"\\%s\" is invalid."
+msgstr "La secuencia de escape «%s» no es válida."
+
+#: ../common/jsonapi.c:1067
+#, c-format
+msgid "Character with value 0x%02x must be escaped."
+msgstr "Los caracteres con valor 0x%02x deben ser escapados"
+
+#: ../common/jsonapi.c:1070
+#, c-format
+msgid "Expected end of input, but found \"%s\"."
+msgstr "Se esperaba el fin de la entrada, se encontró «%s»."
+
+#: ../common/jsonapi.c:1073
+#, c-format
+msgid "Expected array element or \"]\", but found \"%s\"."
+msgstr "Se esperaba un elemento de array o «]», se encontró «%s»."
+
+#: ../common/jsonapi.c:1076
+#, c-format
+msgid "Expected \",\" or \"]\", but found \"%s\"."
+msgstr "Se esperaba «,» o «]», se encontró «%s»."
+
+#: ../common/jsonapi.c:1079
+#, c-format
+msgid "Expected \":\", but found \"%s\"."
+msgstr "Se esperaba «:», se encontró «%s»."
+
+#: ../common/jsonapi.c:1082
+#, c-format
+msgid "Expected JSON value, but found \"%s\"."
+msgstr "Se esperaba un valor JSON, se encontró «%s»."
+
+#: ../common/jsonapi.c:1085
+msgid "The input string ended unexpectedly."
+msgstr "La cadena de entrada terminó inesperadamente."
+
+#: ../common/jsonapi.c:1087
+#, c-format
+msgid "Expected string or \"}\", but found \"%s\"."
+msgstr "Se esperaba una cadena o «}», se encontró «%s»."
+
+#: ../common/jsonapi.c:1090
+#, c-format
+msgid "Expected \",\" or \"}\", but found \"%s\"."
+msgstr "Se esperaba «,» o «}», se encontró «%s»."
+
+#: ../common/jsonapi.c:1093
+#, c-format
+msgid "Expected string, but found \"%s\"."
+msgstr "Se esperaba una cadena, se encontró «%s»."
+
+#: ../common/jsonapi.c:1096
+#, c-format
+msgid "Token \"%s\" is invalid."
+msgstr "El elemento «%s» no es válido."
+
+#: ../common/jsonapi.c:1099 jsonpath_scan.l:495
+#, c-format
+msgid "\\u0000 cannot be converted to text."
+msgstr "\\u0000 no puede ser convertido a text."
+
+#: ../common/jsonapi.c:1101
+msgid "\"\\u\" must be followed by four hexadecimal digits."
+msgstr "«\\u» debe ser seguido por cuatro dígitos hexadecimales."
+
+#: ../common/jsonapi.c:1104
+msgid "Unicode escape values cannot be used for code point values above 007F when the encoding is not UTF8."
+msgstr ""
+
+#: ../common/jsonapi.c:1106 jsonpath_scan.l:516
+#, c-format
+msgid "Unicode high surrogate must not follow a high surrogate."
+msgstr "Un «high-surrogate» Unicode no puede venir después de un «high-surrogate»."
+
+#: ../common/jsonapi.c:1108 jsonpath_scan.l:527 jsonpath_scan.l:537
+#: jsonpath_scan.l:579
+#, c-format
+msgid "Unicode low surrogate must follow a high surrogate."
+msgstr "Un «low-surrogate» Unicode debe seguir a un «high-surrogate»."
+
+#: ../common/logging.c:236
 #, c-format
 msgid "fatal: "
 msgstr "fatal: "
 
-#: ../common/logging.c:195
+#: ../common/logging.c:243
 #, c-format
 msgid "error: "
 msgstr "error: "
 
-#: ../common/logging.c:202
+#: ../common/logging.c:250
 #, c-format
 msgid "warning: "
 msgstr "precaución: "
@@ -344,53 +460,60 @@ msgstr "precaución: "
 msgid "could not close directory \"%s\": %m"
 msgstr "no se pudo abrir el directorio «%s»: %m"
 
-#: ../common/relpath.c:58
+#: ../common/relpath.c:61
 #, c-format
 msgid "invalid fork name"
 msgstr "nombre de «fork» no válido"
 
-#: ../common/relpath.c:59
+#: ../common/relpath.c:62
 #, c-format
 msgid "Valid fork names are \"main\", \"fsm\", \"vm\", and \"init\"."
 msgstr "Los nombres de «fork» válidos son «main», «fsm», «vm» e «init»."
 
-#: ../common/restricted_token.c:69
-#, c-format
-msgid "cannot create restricted tokens on this platform"
+#: ../common/restricted_token.c:64 libpq/auth.c:1521 libpq/auth.c:2520
+#, fuzzy, c-format
+#| msgid "could not load library \"%s\": %s"
+msgid "could not load library \"%s\": error code %lu"
+msgstr "no se pudo cargar la biblioteca «%s»: %s"
+
+#: ../common/restricted_token.c:73
+#, fuzzy, c-format
+#| msgid "cannot create restricted tokens on this platform"
+msgid "cannot create restricted tokens on this platform: error code %lu"
 msgstr "no se pueden crear tokens restrigidos en esta plataforma"
 
-#: ../common/restricted_token.c:78
+#: ../common/restricted_token.c:82
 #, c-format
 msgid "could not open process token: error code %lu"
 msgstr "no se pudo abrir el token de proceso: código de error %lu"
 
-#: ../common/restricted_token.c:91
+#: ../common/restricted_token.c:97
 #, c-format
 msgid "could not allocate SIDs: error code %lu"
 msgstr "no se pudo emplazar los SIDs: código de error %lu"
 
-#: ../common/restricted_token.c:110
+#: ../common/restricted_token.c:119
 #, c-format
 msgid "could not create restricted token: error code %lu"
 msgstr "no se pudo crear el token restringido: código de error %lu"
 
-#: ../common/restricted_token.c:131
+#: ../common/restricted_token.c:140
 #, c-format
 msgid "could not start process for command \"%s\": error code %lu"
 msgstr "no se pudo iniciar el proceso para la orden «%s»: código de error %lu"
 
-#: ../common/restricted_token.c:169
+#: ../common/restricted_token.c:178
 #, c-format
 msgid "could not re-execute with restricted token: error code %lu"
 msgstr "no se pudo re-ejecutar con el token restringido: código de error %lu"
 
-#: ../common/restricted_token.c:185
+#: ../common/restricted_token.c:194
 #, c-format
 msgid "could not get exit code from subprocess: error code %lu"
 msgstr "no se pudo obtener el código de salida del subproceso»: código de error %lu"
 
-#: ../common/rmtree.c:79 replication/basebackup.c:1005
-#: replication/basebackup.c:1175
+#: ../common/rmtree.c:79 replication/basebackup.c:1168
+#: replication/basebackup.c:1344
 #, c-format
 msgid "could not stat file or directory \"%s\": %m"
 msgstr "no se pudo hacer stat al archivo o directorio «%s»: %m"
@@ -400,17 +523,31 @@ msgstr "no se pudo hacer stat al archivo o directorio «%s»: %m"
 msgid "could not remove file or directory \"%s\": %m"
 msgstr "no se pudo borrar el archivo o el directorio «%s»: %m"
 
-#: ../common/saslprep.c:1093
+#: ../common/saslprep.c:1087
 #, c-format
 msgid "password too long"
 msgstr "la contraseña es demasiado larga"
 
+#: ../common/stringinfo.c:306
+#, c-format
+msgid "Cannot enlarge string buffer containing %d bytes by %d more bytes."
+msgstr "No se puede agrandar el búfer de cadena que ya tiene %d bytes en %d bytes adicionales."
+
+#: ../common/stringinfo.c:310
+#, fuzzy, c-format
+#| msgid "Cannot enlarge string buffer containing %d bytes by %d more bytes."
+msgid ""
+"out of memory\n"
+"\n"
+"Cannot enlarge string buffer containing %d bytes by %d more bytes.\n"
+msgstr "No se puede agrandar el búfer de cadena que ya tiene %d bytes en %d bytes adicionales."
+
 #: ../common/username.c:43
 #, c-format
 msgid "could not look up effective user ID %ld: %s"
 msgstr "no se pudo encontrar el ID de usuario efectivo %ld: %s"
 
-#: ../common/username.c:45 libpq/auth.c:2015
+#: ../common/username.c:45 libpq/auth.c:2027
 msgid "user does not exist"
 msgstr "usuario no existe"
 
@@ -449,12 +586,12 @@ msgstr "el proceso hijo fue terminado por una señal %d: %s"
 msgid "child process exited with unrecognized status %d"
 msgstr "el proceso hijo terminó con código %d no reconocido"
 
-#: ../port/chklocale.c:288
+#: ../port/chklocale.c:307
 #, c-format
 msgid "could not determine encoding for codeset \"%s\""
 msgstr "no se pudo determinar la codificación para el codeset «%s»"
 
-#: ../port/chklocale.c:409 ../port/chklocale.c:415
+#: ../port/chklocale.c:428 ../port/chklocale.c:434
 #, c-format
 msgid "could not determine encoding for locale \"%s\": codeset is \"%s\""
 msgstr "no se pudo determinar la codificación para la configuración regional «%s»: el codeset es «%s»"
@@ -479,25 +616,25 @@ msgstr "no se pudo obtener junction para «%s»: %s"
 msgid "could not get junction for \"%s\": %s\n"
 msgstr "no se pudo obtener junction para «%s»: %s\n"
 
-#: ../port/open.c:128
+#: ../port/open.c:126
 #, c-format
 msgid "could not open file \"%s\": %s"
 msgstr "no se pudo abrir el archivo «%s»: %s"
 
-#: ../port/open.c:129
+#: ../port/open.c:127
 msgid "lock violation"
 msgstr "infracción de bloqueo (locking violation)"
 
-#: ../port/open.c:129
+#: ../port/open.c:127
 msgid "sharing violation"
 msgstr "infracción de uso compartido (sharing violation)"
 
-#: ../port/open.c:130
+#: ../port/open.c:128
 #, c-format
 msgid "Continuing to retry for 30 seconds."
 msgstr "Reintentando durante 30 segundos."
 
-#: ../port/open.c:131
+#: ../port/open.c:129
 #, c-format
 msgid "You might have antivirus, backup, or similar software interfering with the database system."
 msgstr "Es posible que tenga antivirus, sistema de respaldos, o software similar interfiriendo con el sistema de bases de datos."
@@ -527,43 +664,43 @@ msgstr "no se pudo obtener el SID del grupo PowerUsers: código de error %lu\n"
 msgid "could not check access token membership: error code %lu\n"
 msgstr "no se pudo verificar el token de proceso: código de error %lu\n"
 
-#: access/brin/brin.c:204
+#: access/brin/brin.c:210
 #, c-format
 msgid "request for BRIN range summarization for index \"%s\" page %u was not recorded"
 msgstr "petición para sumarización BRIN de rango para el índice «%s» página %u no fue registrada"
 
-#: access/brin/brin.c:881 access/brin/brin.c:958 access/gin/ginfast.c:1041
-#: access/transam/xlog.c:10200 access/transam/xlog.c:10729
-#: access/transam/xlogfuncs.c:289 access/transam/xlogfuncs.c:316
-#: access/transam/xlogfuncs.c:355 access/transam/xlogfuncs.c:376
-#: access/transam/xlogfuncs.c:397 access/transam/xlogfuncs.c:467
-#: access/transam/xlogfuncs.c:524
+#: access/brin/brin.c:873 access/brin/brin.c:950 access/gin/ginfast.c:1035
+#: access/transam/xlog.c:10499 access/transam/xlog.c:11037
+#: access/transam/xlogfuncs.c:274 access/transam/xlogfuncs.c:301
+#: access/transam/xlogfuncs.c:340 access/transam/xlogfuncs.c:361
+#: access/transam/xlogfuncs.c:382 access/transam/xlogfuncs.c:452
+#: access/transam/xlogfuncs.c:509
 #, c-format
 msgid "recovery is in progress"
 msgstr "la recuperación está en proceso"
 
-#: access/brin/brin.c:882 access/brin/brin.c:959
+#: access/brin/brin.c:874 access/brin/brin.c:951
 #, c-format
 msgid "BRIN control functions cannot be executed during recovery."
 msgstr "Las funciones de control de BRIN no pueden ejecutarse durante la recuperación."
 
-#: access/brin/brin.c:890 access/brin/brin.c:967
+#: access/brin/brin.c:882 access/brin/brin.c:959
 #, c-format
 msgid "block number out of range: %s"
 msgstr "el número de bloque está fuera de rango: %s"
 
-#: access/brin/brin.c:913 access/brin/brin.c:990
+#: access/brin/brin.c:905 access/brin/brin.c:982
 #, c-format
 msgid "\"%s\" is not a BRIN index"
 msgstr "«%s» no es un índice BRIN"
 
-#: access/brin/brin.c:929 access/brin/brin.c:1006
+#: access/brin/brin.c:921 access/brin/brin.c:998
 #, c-format
 msgid "could not open parent table of index %s"
 msgstr "no se pudo abrir la tabla padre del índice %s"
 
-#: access/brin/brin_pageops.c:77 access/brin/brin_pageops.c:363
-#: access/brin/brin_pageops.c:844 access/gin/ginentrypage.c:110
+#: access/brin/brin_pageops.c:76 access/brin/brin_pageops.c:362
+#: access/brin/brin_pageops.c:843 access/gin/ginentrypage.c:110
 #: access/gist/gist.c:1435 access/spgist/spgdoinsert.c:1957
 #, c-format
 msgid "index row size %zu exceeds maximum %zu for index \"%s\""
@@ -574,177 +711,196 @@ msgstr "el tamaño de fila de índice %zu excede el máximo %zu para el índice
 msgid "corrupted BRIN index: inconsistent range map"
 msgstr "índice BRIN corrompido: mapa de rango inconsistente"
 
-#: access/brin/brin_revmap.c:404
+#: access/brin/brin_revmap.c:405
 #, c-format
 msgid "leftover placeholder tuple detected in BRIN index \"%s\", deleting"
 msgstr "se detectó una tupla tentativa abandonada en el índice BRIN «%s», eliminando"
 
-#: access/brin/brin_revmap.c:601
+#: access/brin/brin_revmap.c:602
 #, c-format
 msgid "unexpected page type 0x%04X in BRIN index \"%s\" block %u"
 msgstr "tipo de página 0x%04X inesperado en el índice BRIN «%s» bloque %u"
 
-#: access/brin/brin_validate.c:116 access/gin/ginvalidate.c:149
-#: access/gist/gistvalidate.c:146 access/hash/hashvalidate.c:132
-#: access/nbtree/nbtvalidate.c:110 access/spgist/spgvalidate.c:165
+#: access/brin/brin_validate.c:118 access/gin/ginvalidate.c:151
+#: access/gist/gistvalidate.c:149 access/hash/hashvalidate.c:136
+#: access/nbtree/nbtvalidate.c:117 access/spgist/spgvalidate.c:168
 #, c-format
 msgid "operator family \"%s\" of access method %s contains function %s with invalid support number %d"
 msgstr "familia de operadores «%s» de método de acceso %s contiene la función %s con número de soporte %d no válido"
 
-#: access/brin/brin_validate.c:132 access/gin/ginvalidate.c:161
-#: access/gist/gistvalidate.c:158 access/hash/hashvalidate.c:115
-#: access/nbtree/nbtvalidate.c:122 access/spgist/spgvalidate.c:177
+#: access/brin/brin_validate.c:134 access/gin/ginvalidate.c:163
+#: access/gist/gistvalidate.c:161 access/hash/hashvalidate.c:115
+#: access/nbtree/nbtvalidate.c:129 access/spgist/spgvalidate.c:180
 #, c-format
 msgid "operator family \"%s\" of access method %s contains function %s with wrong signature for support number %d"
 msgstr "familia de operadores «%s» de método de acceso %s contiene la función %s con signatura incorrecta para el número de soporte %d"
 
-#: access/brin/brin_validate.c:154 access/gin/ginvalidate.c:180
-#: access/gist/gistvalidate.c:178 access/hash/hashvalidate.c:153
-#: access/nbtree/nbtvalidate.c:142 access/spgist/spgvalidate.c:197
+#: access/brin/brin_validate.c:156 access/gin/ginvalidate.c:182
+#: access/gist/gistvalidate.c:181 access/hash/hashvalidate.c:157
+#: access/nbtree/nbtvalidate.c:149 access/spgist/spgvalidate.c:200
 #, c-format
 msgid "operator family \"%s\" of access method %s contains operator %s with invalid strategy number %d"
 msgstr "familia de operadores «%s» de método de acceso %s contiene el operador %s con número de estrategia %d no válido"
 
-#: access/brin/brin_validate.c:183 access/gin/ginvalidate.c:193
-#: access/hash/hashvalidate.c:166 access/nbtree/nbtvalidate.c:155
-#: access/spgist/spgvalidate.c:213
+#: access/brin/brin_validate.c:185 access/gin/ginvalidate.c:195
+#: access/hash/hashvalidate.c:170 access/nbtree/nbtvalidate.c:162
+#: access/spgist/spgvalidate.c:216
 #, c-format
 msgid "operator family \"%s\" of access method %s contains invalid ORDER BY specification for operator %s"
 msgstr "familia de operadores «%s» de método de acceso %s contiene especificación ORDER BY no válida para el operador %s"
 
-#: access/brin/brin_validate.c:196 access/gin/ginvalidate.c:206
-#: access/gist/gistvalidate.c:226 access/hash/hashvalidate.c:179
-#: access/nbtree/nbtvalidate.c:168 access/spgist/spgvalidate.c:229
+#: access/brin/brin_validate.c:198 access/gin/ginvalidate.c:208
+#: access/gist/gistvalidate.c:229 access/hash/hashvalidate.c:183
+#: access/nbtree/nbtvalidate.c:175 access/spgist/spgvalidate.c:232
 #, c-format
 msgid "operator family \"%s\" of access method %s contains operator %s with wrong signature"
 msgstr "familia de operadores «%s» de método de acceso %s contiene el operador %s con signatura incorrecta"
 
-#: access/brin/brin_validate.c:234 access/hash/hashvalidate.c:219
-#: access/nbtree/nbtvalidate.c:226 access/spgist/spgvalidate.c:256
+#: access/brin/brin_validate.c:236 access/hash/hashvalidate.c:223
+#: access/nbtree/nbtvalidate.c:233 access/spgist/spgvalidate.c:259
 #, c-format
 msgid "operator family \"%s\" of access method %s is missing operator(s) for types %s and %s"
 msgstr "el/los operador(es) para los tipos %3$s y %4$s faltan de la familia de operadores «%1$s» de método de acceso %2$s"
 
-#: access/brin/brin_validate.c:244
+#: access/brin/brin_validate.c:246
 #, c-format
 msgid "operator family \"%s\" of access method %s is missing support function(s) for types %s and %s"
 msgstr "la(s) función/funciones de soporte para los tipos %3$s y %4$s faltan de la familia de operadores «%1$s» de método de acceso %2$s"
 
-#: access/brin/brin_validate.c:257 access/hash/hashvalidate.c:233
-#: access/nbtree/nbtvalidate.c:250 access/spgist/spgvalidate.c:289
+#: access/brin/brin_validate.c:259 access/hash/hashvalidate.c:237
+#: access/nbtree/nbtvalidate.c:257 access/spgist/spgvalidate.c:294
 #, c-format
 msgid "operator class \"%s\" of access method %s is missing operator(s)"
 msgstr "faltan operadores de la clase de operadores «%s» del método de acceso %s"
 
-#: access/brin/brin_validate.c:268 access/gin/ginvalidate.c:247
-#: access/gist/gistvalidate.c:266
+#: access/brin/brin_validate.c:270 access/gin/ginvalidate.c:250
+#: access/gist/gistvalidate.c:270
 #, c-format
 msgid "operator class \"%s\" of access method %s is missing support function %d"
 msgstr "falta la función de soporte %3$d de la clase de operadores «%1$s» del método de acceso %2$s"
 
+#: access/common/attmap.c:122
+#, c-format
+msgid "Returned type %s does not match expected type %s in column %d."
+msgstr "El tipo retornado %s no coincide con el tipo de registro esperado %s en la columna %d."
+
+#: access/common/attmap.c:150
+#, c-format
+msgid "Number of returned columns (%d) does not match expected column count (%d)."
+msgstr "La cantidad de columnas retornadas (%d) no coincide con la cantidad esperada de columnas (%d)."
+
+#: access/common/attmap.c:229 access/common/attmap.c:241
+#, c-format
+msgid "could not convert row type"
+msgstr "no se pudo convertir el tipo de registro"
+
+#: access/common/attmap.c:230
+#, c-format
+msgid "Attribute \"%s\" of type %s does not match corresponding attribute of type %s."
+msgstr "El atributo «%s» de tipo %s no coincide el atributo correspondiente de tipo %s."
+
+#: access/common/attmap.c:242
+#, c-format
+msgid "Attribute \"%s\" of type %s does not exist in type %s."
+msgstr "El atributo «%s» de tipo %s no existe en el tipo %s."
+
 #: access/common/heaptuple.c:1036 access/common/heaptuple.c:1371
 #, c-format
 msgid "number of columns (%d) exceeds limit (%d)"
 msgstr "el número de columnas (%d) excede el límite (%d)"
 
-#: access/common/indextuple.c:63
+#: access/common/indextuple.c:70
 #, c-format
 msgid "number of index columns (%d) exceeds limit (%d)"
 msgstr "el número de columnas del índice (%d) excede el límite (%d)"
 
-#: access/common/indextuple.c:179 access/spgist/spgutils.c:691
+#: access/common/indextuple.c:187 access/spgist/spgutils.c:703
 #, c-format
 msgid "index row requires %zu bytes, maximum size is %zu"
 msgstr "fila de índice requiere %zu bytes, tamaño máximo es %zu"
 
 #: access/common/printtup.c:369 tcop/fastpath.c:180 tcop/fastpath.c:530
-#: tcop/postgres.c:1834
+#: tcop/postgres.c:1904
 #, c-format
 msgid "unsupported format code: %d"
 msgstr "código de formato no soportado: %d"
 
-#: access/common/reloptions.c:579
+#: access/common/reloptions.c:506
+msgid "Valid values are \"on\", \"off\", and \"auto\"."
+msgstr "Los valores aceptables son «on», «off» y «auto»."
+
+#: access/common/reloptions.c:517
+msgid "Valid values are \"local\" and \"cascaded\"."
+msgstr "Los valores aceptables son «local» y «cascaded»."
+
+#: access/common/reloptions.c:665
 #, c-format
 msgid "user-defined relation parameter types limit exceeded"
 msgstr "el límite de tipos de parámetros de relación definidos por el usuario ha sido excedido"
 
-#: access/common/reloptions.c:867
+#: access/common/reloptions.c:1208
 #, c-format
 msgid "RESET must not include values for parameters"
 msgstr "RESET no debe incluir valores de parámetros"
 
-#: access/common/reloptions.c:899
+#: access/common/reloptions.c:1240
 #, c-format
 msgid "unrecognized parameter namespace \"%s\""
 msgstr "espacio de nombre de parámetro «%s» no reconocido"
 
-#: access/common/reloptions.c:936 utils/misc/guc.c:11710
+#: access/common/reloptions.c:1277 utils/misc/guc.c:12014
 #, c-format
 msgid "tables declared WITH OIDS are not supported"
 msgstr "las tablas declaradas WITH OIDS no está soportado"
 
-#: access/common/reloptions.c:1154
+#: access/common/reloptions.c:1447
 #, c-format
 msgid "unrecognized parameter \"%s\""
 msgstr "parámetro «%s» no reconocido"
 
-#: access/common/reloptions.c:1184
+#: access/common/reloptions.c:1559
 #, c-format
 msgid "parameter \"%s\" specified more than once"
 msgstr "el parámetro «%s» fue especificado más de una vez"
 
-#: access/common/reloptions.c:1200
+#: access/common/reloptions.c:1575
 #, c-format
 msgid "invalid value for boolean option \"%s\": %s"
 msgstr "valor no válido para la opción booleana «%s»: «%s»"
 
-#: access/common/reloptions.c:1212
+#: access/common/reloptions.c:1587
 #, c-format
 msgid "invalid value for integer option \"%s\": %s"
 msgstr "valor no válido para la opción entera «%s»: «%s»"
 
-#: access/common/reloptions.c:1218 access/common/reloptions.c:1238
+#: access/common/reloptions.c:1593 access/common/reloptions.c:1613
 #, c-format
 msgid "value %s out of bounds for option \"%s\""
 msgstr "el valor %s está fuera del rango de la opción «%s»"
 
-#: access/common/reloptions.c:1220
+#: access/common/reloptions.c:1595
 #, c-format
 msgid "Valid values are between \"%d\" and \"%d\"."
 msgstr "Los valores aceptables están entre «%d» y «%d»."
 
-#: access/common/reloptions.c:1232
+#: access/common/reloptions.c:1607
 #, c-format
 msgid "invalid value for floating point option \"%s\": %s"
 msgstr "valor no válido para la opción de coma flotante «%s»: «%s»"
 
-#: access/common/reloptions.c:1240
+#: access/common/reloptions.c:1615
 #, c-format
 msgid "Valid values are between \"%f\" and \"%f\"."
 msgstr "Valores aceptables están entre «%f» y «%f»."
 
-#: access/common/tupconvert.c:107
-#, c-format
-msgid "Returned type %s does not match expected type %s in column %d."
-msgstr "El tipo retornado %s no coincide con el tipo de registro esperado %s en la columna %d."
+#: access/common/reloptions.c:1637
+#, fuzzy, c-format
+#| msgid "invalid value for boolean option \"%s\": %s"
+msgid "invalid value for enum option \"%s\": %s"
+msgstr "valor no válido para la opción booleana «%s»: «%s»"
 
-#: access/common/tupconvert.c:135
-#, c-format
-msgid "Number of returned columns (%d) does not match expected column count (%d)."
-msgstr "La cantidad de columnas retornadas (%d) no coincide con la cantidad esperada de columnas (%d)."
-
-#: access/common/tupconvert.c:303
-#, c-format
-msgid "Attribute \"%s\" of type %s does not match corresponding attribute of type %s."
-msgstr "El atributo «%s» de tipo %s no coincide el atributo correspondiente de tipo %s."
-
-#: access/common/tupconvert.c:315
-#, c-format
-msgid "Attribute \"%s\" of type %s does not exist in type %s."
-msgstr "El atributo «%s» de tipo %s no existe en el tipo %s."
-
-#: access/common/tupdesc.c:842 parser/parse_clause.c:779
-#: parser/parse_relation.c:1578
+#: access/common/tupdesc.c:842 parser/parse_clause.c:772
+#: parser/parse_relation.c:1803
 #, c-format
 msgid "column \"%s\" cannot be declared SETOF"
 msgstr "la columna «%s» no puede ser declarada SETOF"
@@ -759,79 +915,69 @@ msgstr "la «posting list» es demasiado larga"
 msgid "Reduce maintenance_work_mem."
 msgstr "Reduzca maintenance_work_mem."
 
-#: access/gin/ginfast.c:1042
+#: access/gin/ginfast.c:1036
 #, c-format
 msgid "GIN pending list cannot be cleaned up during recovery."
 msgstr "La lista de pendientes GIN no puede limpiarse durante la recuperación."
 
-#: access/gin/ginfast.c:1049
+#: access/gin/ginfast.c:1043
 #, c-format
 msgid "\"%s\" is not a GIN index"
 msgstr "«%s» no es un índice GIN"
 
-#: access/gin/ginfast.c:1060
+#: access/gin/ginfast.c:1054
 #, c-format
 msgid "cannot access temporary indexes of other sessions"
 msgstr "no se pueden acceder índices temporales de otras sesiones"
 
-#: access/gin/ginscan.c:402
+#: access/gin/ginscan.c:431
 #, c-format
 msgid "old GIN indexes do not support whole-index scans nor searches for nulls"
 msgstr "los índices GIN antiguos no soportan recorridos del índice completo ni búsquedas de nulos"
 
-#: access/gin/ginscan.c:403
+#: access/gin/ginscan.c:432
 #, c-format
 msgid "To fix this, do REINDEX INDEX \"%s\"."
 msgstr "Para corregir esto, ejecute REINDEX INDEX \"%s\"."
 
-#: access/gin/ginutil.c:139 executor/execExpr.c:1860
-#: utils/adt/arrayfuncs.c:3789 utils/adt/arrayfuncs.c:6416
+#: access/gin/ginutil.c:144 executor/execExpr.c:1862
+#: utils/adt/arrayfuncs.c:3790 utils/adt/arrayfuncs.c:6418
 #: utils/adt/rowtypes.c:936
 #, c-format
 msgid "could not identify a comparison function for type %s"
 msgstr "no se pudo identificar una función de comparación para el tipo %s"
 
-#: access/gin/ginvalidate.c:93 access/gist/gistvalidate.c:93
+#: access/gin/ginvalidate.c:92 access/gist/gistvalidate.c:93
 #: access/hash/hashvalidate.c:99 access/spgist/spgvalidate.c:99
 #, c-format
 msgid "operator family \"%s\" of access method %s contains support function %s with different left and right input types"
 msgstr "la familia de operadores «%s» del método de acceso %s contiene el procedimiento de soporte %s registrado entre tipos distintos"
 
-#: access/gin/ginvalidate.c:257
+#: access/gin/ginvalidate.c:260
 #, c-format
 msgid "operator class \"%s\" of access method %s is missing support function %d or %d"
 msgstr "falta la función de soporte %3$d o %4$d de la clase de operadores «%1$s» del método de accesso %2$s"
 
-#: access/gist/gist.c:749 access/gist/gistvacuum.c:424
+#: access/gist/gist.c:753 access/gist/gistvacuum.c:408
 #, c-format
 msgid "index \"%s\" contains an inner tuple marked as invalid"
 msgstr "el índice «%s» contiene una tupla interna marcada como no válida"
 
-#: access/gist/gist.c:751 access/gist/gistvacuum.c:426
+#: access/gist/gist.c:755 access/gist/gistvacuum.c:410
 #, c-format
 msgid "This is caused by an incomplete page split at crash recovery before upgrading to PostgreSQL 9.1."
 msgstr "Esto es causado por una división de página incompleta durante una recuperación antes de actualizar a PostgreSQL 9.1."
 
-#: access/gist/gist.c:752 access/gist/gistutil.c:787 access/gist/gistutil.c:798
-#: access/gist/gistvacuum.c:427 access/hash/hashutil.c:241
-#: access/hash/hashutil.c:252 access/hash/hashutil.c:264
-#: access/hash/hashutil.c:285 access/nbtree/nbtpage.c:708
-#: access/nbtree/nbtpage.c:719
+#: access/gist/gist.c:756 access/gist/gistutil.c:786 access/gist/gistutil.c:797
+#: access/gist/gistvacuum.c:411 access/hash/hashutil.c:227
+#: access/hash/hashutil.c:238 access/hash/hashutil.c:250
+#: access/hash/hashutil.c:271 access/nbtree/nbtpage.c:741
+#: access/nbtree/nbtpage.c:752
 #, c-format
 msgid "Please REINDEX it."
 msgstr "Por favor aplíquele REINDEX."
 
-#: access/gist/gistbuild.c:253
-#, c-format
-msgid "invalid value for \"buffering\" option"
-msgstr "valor no válido para la opción «buffering»"
-
-#: access/gist/gistbuild.c:254
-#, c-format
-msgid "Valid values are \"on\", \"off\", and \"auto\"."
-msgstr "Los valores aceptables son «on», «off» y «auto»."
-
-#: access/gist/gistbuildbuffers.c:779 utils/sort/logtape.c:255
+#: access/gist/gistbuildbuffers.c:779 utils/sort/logtape.c:247
 #, c-format
 msgid "could not write block %ld of temporary file: %m"
 msgstr "no se pudo escribir el bloque %ld del archivo temporal: %m"
@@ -846,41 +992,42 @@ msgstr "el método picksplit para la columna %d del índice «%s» falló"
 msgid "The index is not optimal. To optimize it, contact a developer, or try to use the column as the second one in the CREATE INDEX command."
 msgstr "El índice no es óptimo.  Para optimizarlo, contacte un desarrollador o trate de usar la columna en segunda posición en la orden CREATE INDEX."
 
-#: access/gist/gistutil.c:784 access/hash/hashutil.c:238
-#: access/nbtree/nbtpage.c:705
+#: access/gist/gistutil.c:783 access/hash/hashutil.c:224
+#: access/nbtree/nbtpage.c:738
 #, c-format
 msgid "index \"%s\" contains unexpected zero page at block %u"
 msgstr "índice «%s» contiene páginas vacías no esperadas en el bloque %u"
 
-#: access/gist/gistutil.c:795 access/hash/hashutil.c:249
-#: access/hash/hashutil.c:261 access/nbtree/nbtpage.c:716
+#: access/gist/gistutil.c:794 access/hash/hashutil.c:235
+#: access/hash/hashutil.c:247 access/nbtree/nbtpage.c:749
 #, c-format
 msgid "index \"%s\" contains corrupted page at block %u"
 msgstr "el índice «%s» contiene una página corrupta en el bloque %u"
 
-#: access/gist/gistvalidate.c:196
+#: access/gist/gistvalidate.c:199
 #, c-format
 msgid "operator family \"%s\" of access method %s contains unsupported ORDER BY specification for operator %s"
 msgstr "la familia de operadores «%s» del método de acceso %s contiene una especificación ORDER BY no soportada para el operador %s"
 
-#: access/gist/gistvalidate.c:207
+#: access/gist/gistvalidate.c:210
 #, c-format
 msgid "operator family \"%s\" of access method %s contains incorrect ORDER BY opfamily specification for operator %s"
 msgstr "la familia de operadores «%s» del método de acceso %s contiene una especificación de familia en ORDER BY incorrecta para el operador %s"
 
 #: access/hash/hashfunc.c:255 access/hash/hashfunc.c:311
-#: utils/adt/varchar.c:992 utils/adt/varchar.c:1052
+#: utils/adt/varchar.c:993 utils/adt/varchar.c:1053
 #, c-format
 msgid "could not determine which collation to use for string hashing"
 msgstr "no se pudo determinar qué ordenamiento usar para el hashing de cadenas"
 
-#: access/hash/hashfunc.c:256 access/hash/hashfunc.c:312 catalog/heap.c:678
-#: commands/createas.c:207 commands/createas.c:491 commands/indexcmds.c:1694
-#: commands/tablecmds.c:15237 commands/view.c:105 regex/regc_pg_locale.c:263
-#: utils/adt/formatting.c:1571 utils/adt/formatting.c:1695
-#: utils/adt/formatting.c:1820 utils/adt/like.c:194
-#: utils/adt/like_support.c:965 utils/adt/varchar.c:734 utils/adt/varchar.c:993
-#: utils/adt/varchar.c:1053 utils/adt/varlena.c:1456
+#: access/hash/hashfunc.c:256 access/hash/hashfunc.c:312 catalog/heap.c:702
+#: catalog/heap.c:708 commands/createas.c:206 commands/createas.c:489
+#: commands/indexcmds.c:1815 commands/tablecmds.c:15945 commands/view.c:86
+#: parser/parse_utilcmd.c:4116 regex/regc_pg_locale.c:263
+#: utils/adt/formatting.c:1665 utils/adt/formatting.c:1789
+#: utils/adt/formatting.c:1914 utils/adt/like.c:194
+#: utils/adt/like_support.c:1005 utils/adt/varchar.c:733
+#: utils/adt/varchar.c:994 utils/adt/varchar.c:1054 utils/adt/varlena.c:1476
 #, c-format
 msgid "Use the COLLATE clause to set the collation explicitly."
 msgstr "Use la cláusula COLLATE para establecer el ordenamiento explícitamente."
@@ -891,7 +1038,7 @@ msgid "index row size %zu exceeds hash maximum %zu"
 msgstr "el tamaño de fila de índice %zu excede el máximo para hash %zu"
 
 #: access/hash/hashinsert.c:84 access/spgist/spgdoinsert.c:1961
-#: access/spgist/spgutils.c:752
+#: access/spgist/spgutils.c:764
 #, c-format
 msgid "Values larger than a buffer page cannot be indexed."
 msgstr "Valores mayores a una página del buffer no pueden ser indexados."
@@ -911,241 +1058,274 @@ msgstr "se agotaron las páginas de desbordamiento en el índice hash «%s»"
 msgid "hash indexes do not support whole-index scans"
 msgstr "los índices hash no soportan recorridos del índice completo"
 
-#: access/hash/hashutil.c:277
+#: access/hash/hashutil.c:263
 #, c-format
 msgid "index \"%s\" is not a hash index"
 msgstr "el índice «%s» no es un índice hash"
 
-#: access/hash/hashutil.c:283
+#: access/hash/hashutil.c:269
 #, c-format
 msgid "index \"%s\" has wrong hash version"
 msgstr "el índice «%s» tiene una versión de hash incorrecta"
 
-#: access/hash/hashvalidate.c:191
+#: access/hash/hashvalidate.c:195
 #, c-format
 msgid "operator family \"%s\" of access method %s lacks support function for operator %s"
 msgstr "la familia de operadores «%s» del método de acceso %s no tiene función de soporte para el operador %s"
 
-#: access/hash/hashvalidate.c:249 access/nbtree/nbtvalidate.c:266
+#: access/hash/hashvalidate.c:253 access/nbtree/nbtvalidate.c:273
 #, c-format
 msgid "operator family \"%s\" of access method %s is missing cross-type operator(s)"
 msgstr "faltan operadores entre tipos en la familia de operadores «%s» del método de acceso %s"
 
-#: access/heap/heapam.c:2063
+#: access/heap/heapam.c:2026
 #, c-format
 msgid "cannot insert tuples in a parallel worker"
 msgstr "no se pueden insertar tuplas en un ayudante paralelo"
 
-#: access/heap/heapam.c:2473
+#: access/heap/heapam.c:2444
 #, c-format
 msgid "cannot delete tuples during a parallel operation"
 msgstr "no se pueden eliminar tuplas durante una operación paralela"
 
-#: access/heap/heapam.c:2519
+#: access/heap/heapam.c:2490
 #, c-format
 msgid "attempted to delete invisible tuple"
 msgstr "se intentó eliminar una tupla invisible"
 
-#: access/heap/heapam.c:2945 access/heap/heapam.c:5726
+#: access/heap/heapam.c:2916 access/heap/heapam.c:5705
 #, c-format
 msgid "cannot update tuples during a parallel operation"
 msgstr "no se pueden actualizar tuplas durante una operación paralela"
 
-#: access/heap/heapam.c:3078
+#: access/heap/heapam.c:3049
 #, c-format
 msgid "attempted to update invisible tuple"
 msgstr "se intentó actualizar una tupla invisible"
 
-#: access/heap/heapam.c:4390 access/heap/heapam.c:4428
-#: access/heap/heapam.c:4685 access/heap/heapam_handler.c:454
+#: access/heap/heapam.c:4360 access/heap/heapam.c:4398
+#: access/heap/heapam.c:4655 access/heap/heapam_handler.c:450
 #, c-format
 msgid "could not obtain lock on row in relation \"%s\""
 msgstr "no se pudo bloquear un candado en la fila de la relación «%s»"
 
-#: access/heap/heapam_handler.c:405
+#: access/heap/heapam_handler.c:399
 #, c-format
 msgid "tuple to be locked was already moved to another partition due to concurrent update"
 msgstr "el registro a ser bloqueado ya fue movido a otra partición por un update concurrente"
 
-#: access/heap/hio.c:345 access/heap/rewriteheap.c:681
+#: access/heap/hio.c:345 access/heap/rewriteheap.c:662
 #, c-format
 msgid "row is too big: size %zu, maximum size %zu"
 msgstr "fila es demasiado grande: tamaño %zu, tamaño máximo %zu"
 
-#: access/heap/rewriteheap.c:941
+#: access/heap/rewriteheap.c:921
 #, c-format
 msgid "could not write to file \"%s\", wrote %d of %d: %m"
 msgstr "no se pudo escribir al archivo «%s», se escribió %d de %d: %m"
 
-#: access/heap/rewriteheap.c:1035 access/heap/rewriteheap.c:1154
-#: access/transam/timeline.c:314 access/transam/timeline.c:468
-#: access/transam/xlog.c:3252 access/transam/xlog.c:3424
-#: access/transam/xlog.c:4544 access/transam/xlog.c:10538
-#: access/transam/xlog.c:10576 access/transam/xlog.c:10981
-#: access/transam/xlogfuncs.c:736 postmaster/postmaster.c:4524
-#: replication/logical/origin.c:576 replication/slot.c:1261
-#: storage/file/copydir.c:167 storage/smgr/md.c:204 utils/time/snapmgr.c:1329
+#: access/heap/rewriteheap.c:1015 access/heap/rewriteheap.c:1134
+#: access/transam/timeline.c:329 access/transam/timeline.c:485
+#: access/transam/xlog.c:3298 access/transam/xlog.c:3470
+#: access/transam/xlog.c:4668 access/transam/xlog.c:10846
+#: access/transam/xlog.c:10884 access/transam/xlog.c:11289
+#: access/transam/xlogfuncs.c:735 postmaster/postmaster.c:4616
+#: replication/logical/origin.c:575 replication/slot.c:1361
+#: storage/file/copydir.c:167 storage/smgr/md.c:218 utils/time/snapmgr.c:1329
 #, c-format
 msgid "could not create file \"%s\": %m"
 msgstr "no se pudo crear archivo «%s»: %m"
 
-#: access/heap/rewriteheap.c:1164
+#: access/heap/rewriteheap.c:1144
 #, c-format
 msgid "could not truncate file \"%s\" to %u: %m"
 msgstr "no se pudo truncar el archivo «%s» a %u: %m"
 
-#: access/heap/rewriteheap.c:1172 replication/walsender.c:493
-#: storage/smgr/md.c:1245
-#, c-format
-msgid "could not seek to end of file \"%s\": %m"
-msgstr "no se pudo posicionar (seek) al fin del archivo «%s»: %m"
-
-#: access/heap/rewriteheap.c:1189 access/transam/timeline.c:369
-#: access/transam/timeline.c:408 access/transam/timeline.c:485
-#: access/transam/xlog.c:3308 access/transam/xlog.c:3480
-#: access/transam/xlog.c:4556 postmaster/postmaster.c:4534
-#: postmaster/postmaster.c:4544 replication/logical/origin.c:588
-#: replication/logical/origin.c:630 replication/logical/origin.c:649
-#: replication/logical/snapbuild.c:1627 replication/slot.c:1295
-#: storage/file/copydir.c:207 utils/init/miscinit.c:1345
-#: utils/init/miscinit.c:1356 utils/init/miscinit.c:1364 utils/misc/guc.c:7787
-#: utils/misc/guc.c:7818 utils/misc/guc.c:9743 utils/misc/guc.c:9757
+#: access/heap/rewriteheap.c:1162 access/transam/timeline.c:384
+#: access/transam/timeline.c:424 access/transam/timeline.c:502
+#: access/transam/xlog.c:3354 access/transam/xlog.c:3526
+#: access/transam/xlog.c:4680 postmaster/postmaster.c:4626
+#: postmaster/postmaster.c:4636 replication/logical/origin.c:587
+#: replication/logical/origin.c:629 replication/logical/origin.c:648
+#: replication/logical/snapbuild.c:1622 replication/slot.c:1396
+#: storage/file/copydir.c:207 utils/init/miscinit.c:1391
+#: utils/init/miscinit.c:1402 utils/init/miscinit.c:1410 utils/misc/guc.c:8006
+#: utils/misc/guc.c:8037 utils/misc/guc.c:9957 utils/misc/guc.c:9971
 #: utils/time/snapmgr.c:1334 utils/time/snapmgr.c:1341
 #, c-format
 msgid "could not write to file \"%s\": %m"
 msgstr "no se pudo escribir a archivo «%s»: %m"
 
-#: access/heap/rewriteheap.c:1279 access/transam/twophase.c:1661
-#: access/transam/xlogarchive.c:112 access/transam/xlogarchive.c:459
-#: postmaster/postmaster.c:1277 postmaster/syslogger.c:1466
-#: replication/logical/origin.c:564 replication/logical/reorderbuffer.c:2814
-#: replication/logical/snapbuild.c:1569 replication/logical/snapbuild.c:2011
-#: replication/slot.c:1383 storage/file/fd.c:704 storage/file/fd.c:3000
-#: storage/file/fd.c:3062 storage/file/reinit.c:255 storage/ipc/dsm.c:307
-#: storage/smgr/md.c:298 storage/smgr/md.c:354 storage/sync/sync.c:210
+#: access/heap/rewriteheap.c:1252 access/transam/twophase.c:1609
+#: access/transam/xlogarchive.c:118 access/transam/xlogarchive.c:421
+#: postmaster/postmaster.c:1080 postmaster/syslogger.c:1465
+#: replication/logical/origin.c:563 replication/logical/reorderbuffer.c:3087
+#: replication/logical/snapbuild.c:1564 replication/logical/snapbuild.c:2006
+#: replication/slot.c:1493 storage/file/fd.c:752 storage/file/fd.c:3108
+#: storage/file/fd.c:3170 storage/file/reinit.c:255 storage/ipc/dsm.c:302
+#: storage/smgr/md.c:311 storage/smgr/md.c:367 storage/sync/sync.c:210
 #: utils/time/snapmgr.c:1674
 #, c-format
 msgid "could not remove file \"%s\": %m"
 msgstr "no se pudo eliminar el archivo «%s»: %m"
 
-#: access/heap/vacuumlazy.c:267
-#, c-format
-msgid "skipping redundant vacuum to prevent wraparound of table \"%s.%s.%s\""
-msgstr "omitiendo vacuum redundante para prevenir wraparound de la tabla «%s.%s.%s»"
-
-#: access/heap/vacuumlazy.c:405
+#: access/heap/vacuumlazy.c:640
 #, c-format
 msgid "automatic aggressive vacuum to prevent wraparound of table \"%s.%s.%s\": index scans: %d\n"
 msgstr "vacuum agresivo automático para prevenir wraparound de la tabla «%s.%s.%s»: recorridos de índice: %d\n"
 
-#: access/heap/vacuumlazy.c:410
+#: access/heap/vacuumlazy.c:642
+#, fuzzy, c-format
+#| msgid "automatic aggressive vacuum to prevent wraparound of table \"%s.%s.%s\": index scans: %d\n"
+msgid "automatic vacuum to prevent wraparound of table \"%s.%s.%s\": index scans: %d\n"
+msgstr "vacuum agresivo automático para prevenir wraparound de la tabla «%s.%s.%s»: recorridos de índice: %d\n"
+
+#: access/heap/vacuumlazy.c:647
 #, c-format
 msgid "automatic aggressive vacuum of table \"%s.%s.%s\": index scans: %d\n"
 msgstr "vacuum agresivo automático de la tabla «%s.%s.%s»: recorridos de índice: %d\n"
 
-#: access/heap/vacuumlazy.c:412
+#: access/heap/vacuumlazy.c:649
 #, c-format
 msgid "automatic vacuum of table \"%s.%s.%s\": index scans: %d\n"
 msgstr "vacuum automático de la tabla «%s.%s.%s»: recorridos de índice: %d\n"
 
-#: access/heap/vacuumlazy.c:419
+#: access/heap/vacuumlazy.c:656
 #, c-format
 msgid "pages: %u removed, %u remain, %u skipped due to pins, %u skipped frozen\n"
 msgstr "páginas: %u eliminadas, %u quedan, %u saltadas debido a «pins», %u congeladas saltadas\n"
 
-#: access/heap/vacuumlazy.c:425
+#: access/heap/vacuumlazy.c:662
 #, c-format
 msgid "tuples: %.0f removed, %.0f remain, %.0f are dead but not yet removable, oldest xmin: %u\n"
 msgstr "tuplas: %.0f removidas, %.0f permanecen ,%.0f están muertas pero aún no se pueden quitar, el xmin más antiguo: %u\n"
 
-#: access/heap/vacuumlazy.c:431
-#, c-format
-msgid "buffer usage: %d hits, %d misses, %d dirtied\n"
+#: access/heap/vacuumlazy.c:668
+#, fuzzy, c-format
+#| msgid "buffer usage: %d hits, %d misses, %d dirtied\n"
+msgid "buffer usage: %lld hits, %lld misses, %lld dirtied\n"
 msgstr "uso de búfers: %d aciertos, %d fallas, %d ensuciados\n"
 
-#: access/heap/vacuumlazy.c:435
+#: access/heap/vacuumlazy.c:672
 #, c-format
 msgid "avg read rate: %.3f MB/s, avg write rate: %.3f MB/s\n"
 msgstr "tasa lectura promedio: %.3f MB/s, tasa escritura promedio: %.3f MB/s\n"
 
-#: access/heap/vacuumlazy.c:437
-#, c-format
-msgid "system usage: %s"
+#: access/heap/vacuumlazy.c:674
+#, fuzzy, c-format
+#| msgid "system usage: %s"
+msgid "system usage: %s\n"
 msgstr "uso de sistema: %s"
 
-#: access/heap/vacuumlazy.c:533
+#: access/heap/vacuumlazy.c:676
+#, c-format
+msgid "WAL usage: %ld records, %ld full page images, "
+msgstr ""
+
+#: access/heap/vacuumlazy.c:788
 #, c-format
 msgid "aggressively vacuuming \"%s.%s\""
 msgstr "haciendo vacuum agresivamente a «%s.%s»"
 
-#: access/heap/vacuumlazy.c:538 commands/cluster.c:910
+#: access/heap/vacuumlazy.c:793 commands/cluster.c:874
 #, c-format
 msgid "vacuuming \"%s.%s\""
 msgstr "haciendo vacuum a «%s.%s»"
 
-#: access/heap/vacuumlazy.c:1476
+#: access/heap/vacuumlazy.c:830
+#, c-format
+msgid "disabling parallel option of vacuum on \"%s\" --- cannot vacuum temporary tables in parallel"
+msgstr ""
+
+#: access/heap/vacuumlazy.c:1715
 #, c-format
 msgid "\"%s\": removed %.0f row versions in %u pages"
 msgstr "«%s»: se eliminaron %.0f versiones de filas en %u páginas"
 
-#: access/heap/vacuumlazy.c:1486
+#: access/heap/vacuumlazy.c:1725
 #, c-format
 msgid "%.0f dead row versions cannot be removed yet, oldest xmin: %u\n"
 msgstr "%.0f versiones muertas de filas no pueden ser eliminadas aún, xmin máx antiguo: %u\n"
 
-#: access/heap/vacuumlazy.c:1488
+#: access/heap/vacuumlazy.c:1727
 #, c-format
 msgid "There were %.0f unused item identifiers.\n"
 msgstr "Hubo %.0f identificadores de ítem sin usar.\n"
 
-#: access/heap/vacuumlazy.c:1490
+#: access/heap/vacuumlazy.c:1729
 #, c-format
 msgid "Skipped %u page due to buffer pins, "
 msgid_plural "Skipped %u pages due to buffer pins, "
 msgstr[0] "Omitiendo %u página debido a «pins» de página, "
 msgstr[1] "Omitiendo %u páginas debido a «pins» de página, "
 
-#: access/heap/vacuumlazy.c:1494
+#: access/heap/vacuumlazy.c:1733
 #, c-format
 msgid "%u frozen page.\n"
 msgid_plural "%u frozen pages.\n"
 msgstr[0] "%u página marcadas «frozen».\n"
 msgstr[1] "%u páginas marcadas «frozen».\n"
 
-#: access/heap/vacuumlazy.c:1498
+#: access/heap/vacuumlazy.c:1737
 #, c-format
 msgid "%u page is entirely empty.\n"
 msgid_plural "%u pages are entirely empty.\n"
 msgstr[0] "%u página está completamente vacía.\n"
 msgstr[1] "%u páginas están completamente vacías.\n"
 
-#: access/heap/vacuumlazy.c:1502 commands/indexcmds.c:3287
-#: commands/indexcmds.c:3305
+#: access/heap/vacuumlazy.c:1741 commands/indexcmds.c:3450
+#: commands/indexcmds.c:3468
 #, c-format
 msgid "%s."
 msgstr "%s."
 
-#: access/heap/vacuumlazy.c:1505
+#: access/heap/vacuumlazy.c:1744
 #, c-format
 msgid "\"%s\": found %.0f removable, %.0f nonremovable row versions in %u out of %u pages"
 msgstr "«%s»: se encontraron %.0f versiones de filas eliminables y %.0f no eliminables en %u de %u páginas"
 
-#: access/heap/vacuumlazy.c:1574
+#: access/heap/vacuumlazy.c:1876
 #, c-format
 msgid "\"%s\": removed %d row versions in %d pages"
 msgstr "«%s»: se eliminaron %d versiones de filas en %d páginas"
 
-#: access/heap/vacuumlazy.c:1765
+#: access/heap/vacuumlazy.c:2138
+#, c-format
+msgid "launched %d parallel vacuum worker for index cleanup (planned: %d)"
+msgid_plural "launched %d parallel vacuum workers for index cleanup (planned: %d)"
+msgstr[0] ""
+msgstr[1] ""
+
+#: access/heap/vacuumlazy.c:2144
+#, c-format
+msgid "launched %d parallel vacuum worker for index vacuuming (planned: %d)"
+msgid_plural "launched %d parallel vacuum workers for index vacuuming (planned: %d)"
+msgstr[0] ""
+msgstr[1] ""
+
+#: access/heap/vacuumlazy.c:2431
+#, fuzzy, c-format
+#| msgid "scanned index \"%s\" to remove %d row versions"
+msgid "scanned index \"%s\" to remove %d row versions by parallel vacuum worker"
+msgstr "se recorrió el índice «%s» para eliminar %d versiones de filas"
+
+#: access/heap/vacuumlazy.c:2433
 #, c-format
 msgid "scanned index \"%s\" to remove %d row versions"
 msgstr "se recorrió el índice «%s» para eliminar %d versiones de filas"
 
-#: access/heap/vacuumlazy.c:1818
+#: access/heap/vacuumlazy.c:2493
+#, fuzzy, c-format
+#| msgid "index \"%s\" now contains %.0f row versions in %u pages"
+msgid "index \"%s\" now contains %.0f row versions in %u pages as reported by parallel vacuum worker"
+msgstr "el índice «%s» ahora contiene %.0f versiones de filas en %u páginas"
+
+#: access/heap/vacuumlazy.c:2495
 #, c-format
 msgid "index \"%s\" now contains %.0f row versions in %u pages"
 msgstr "el índice «%s» ahora contiene %.0f versiones de filas en %u páginas"
 
-#: access/heap/vacuumlazy.c:1822
+#: access/heap/vacuumlazy.c:2502
 #, c-format
 msgid ""
 "%.0f index row versions were removed.\n"
@@ -1156,21 +1336,57 @@ msgstr ""
 "%u páginas de índice han sido eliminadas, %u son reusables.\n"
 "%s."
 
-#: access/heap/vacuumlazy.c:1920
+#: access/heap/vacuumlazy.c:2599
 #, c-format
 msgid "\"%s\": stopping truncate due to conflicting lock request"
 msgstr "«%s»: suspendiendo el truncado debido a una petición de candado en conflicto"
 
-#: access/heap/vacuumlazy.c:1985
+#: access/heap/vacuumlazy.c:2665
 #, c-format
 msgid "\"%s\": truncated %u to %u pages"
 msgstr "«%s»: truncadas %u a %u páginas"
 
-#: access/heap/vacuumlazy.c:2050
+#: access/heap/vacuumlazy.c:2730
 #, c-format
 msgid "\"%s\": suspending truncate due to conflicting lock request"
 msgstr "«%s»: suspendiendo el truncado debido a una petición de candado en conflicto"
 
+#: access/heap/vacuumlazy.c:3477
+#, fuzzy, c-format
+#| msgid "starting background worker process \"%s\""
+msgid "starting parallel vacuum worker for %s"
+msgstr "iniciando el proceso ayudante «%s»"
+
+#: access/heap/vacuumlazy.c:3568
+#, fuzzy, c-format
+#| msgid "writing block %u of relation %s"
+msgid "while scanning block %u of relation \"%s.%s\""
+msgstr "escribiendo el bloque %u de la relación %s"
+
+#: access/heap/vacuumlazy.c:3574
+#, fuzzy, c-format
+#| msgid "writing block %u of relation %s"
+msgid "while vacuuming block %u of relation \"%s.%s\""
+msgstr "escribiendo el bloque %u de la relación %s"
+
+#: access/heap/vacuumlazy.c:3579
+#, fuzzy, c-format
+#| msgid "while inserting index tuple (%u,%u) in relation \"%s\""
+msgid "while vacuuming index \"%s\" of relation \"%s.%s\""
+msgstr "mientras se insertaba la tupla de índice (%u,%u) en la relación «%s»"
+
+#: access/heap/vacuumlazy.c:3584
+#, fuzzy, c-format
+#| msgid "while deleting tuple (%u,%u) in relation \"%s\""
+msgid "while cleaning up index \"%s\" of relation \"%s.%s\""
+msgstr "mientras se borraba la tupla (%u,%u) en la relación «%s»"
+
+#: access/heap/vacuumlazy.c:3590
+#, fuzzy, c-format
+#| msgid "error while cloning relation \"%s.%s\" (\"%s\" to \"%s\"): %s\n"
+msgid "while truncating relation \"%s.%s\" to %u blocks"
+msgstr "error mientras se clonaba la relación «%s.%s» («%s» a «%s»): %s\n"
+
 #: access/index/amapi.c:83 commands/amcmds.c:167
 #, c-format
 msgid "access method \"%s\" is not of type %s"
@@ -1181,65 +1397,71 @@ msgstr "el método de acceso «%s» no es de tipo %s"
 msgid "index access method \"%s\" does not have a handler"
 msgstr "el método de acceso «%s» no tiene manejador"
 
-#: access/index/indexam.c:136 catalog/objectaddress.c:1259
-#: commands/indexcmds.c:2405 commands/tablecmds.c:248 commands/tablecmds.c:272
-#: commands/tablecmds.c:14944 commands/tablecmds.c:16334
+#: access/index/indexam.c:142 catalog/objectaddress.c:1260
+#: commands/indexcmds.c:2517 commands/tablecmds.c:254 commands/tablecmds.c:278
+#: commands/tablecmds.c:15643 commands/tablecmds.c:17098
 #, c-format
 msgid "\"%s\" is not an index"
 msgstr "«%s» no es un índice"
 
-#: access/nbtree/nbtinsert.c:565
+#: access/index/indexam.c:970
+#, fuzzy, c-format
+#| msgid "operator class %s for access method %s"
+msgid "operator class %s has no options"
+msgstr "clase de operadores «%s» para el método de acceso «%s»"
+
+#: access/nbtree/nbtinsert.c:650
 #, c-format
 msgid "duplicate key value violates unique constraint \"%s\""
 msgstr "llave duplicada viola restricción de unicidad «%s»"
 
-#: access/nbtree/nbtinsert.c:567
+#: access/nbtree/nbtinsert.c:652
 #, c-format
 msgid "Key %s already exists."
 msgstr "Ya existe la llave %s."
 
-#: access/nbtree/nbtinsert.c:638
+#: access/nbtree/nbtinsert.c:744
 #, c-format
 msgid "failed to re-find tuple within index \"%s\""
 msgstr "no se pudo volver a encontrar la tupla dentro del índice «%s»"
 
-#: access/nbtree/nbtinsert.c:640
+#: access/nbtree/nbtinsert.c:746
 #, c-format
 msgid "This may be because of a non-immutable index expression."
 msgstr "Esto puede deberse a una expresión de índice no inmutable."
 
-#: access/nbtree/nbtpage.c:135 access/nbtree/nbtpage.c:521
-#: parser/parse_utilcmd.c:2117
+#: access/nbtree/nbtpage.c:150 access/nbtree/nbtpage.c:538
+#: parser/parse_utilcmd.c:2156
 #, c-format
 msgid "index \"%s\" is not a btree"
 msgstr "el índice «%s» no es un btree"
 
-#: access/nbtree/nbtpage.c:142 access/nbtree/nbtpage.c:528
+#: access/nbtree/nbtpage.c:157 access/nbtree/nbtpage.c:545
 #, c-format
 msgid "version mismatch in index \"%s\": file version %d, current version %d, minimal supported version %d"
 msgstr "discordancia de versión en índice «%s»: versión de archivo %d, versión de código %d, mínima versión soportada %d"
 
-#: access/nbtree/nbtpage.c:1349
+#: access/nbtree/nbtpage.c:1501
 #, c-format
 msgid "index \"%s\" contains a half-dead internal page"
 msgstr "el índice «%s» contiene una página interna parcialmente muerta"
 
-#: access/nbtree/nbtpage.c:1351
+#: access/nbtree/nbtpage.c:1503
 #, c-format
 msgid "This can be caused by an interrupted VACUUM in version 9.3 or older, before upgrade. Please REINDEX it."
 msgstr "Esto puede ser causado por la interrupción de un VACUUM en la versión 9.3 o anteriores, antes de actualizar. Ejecute REINDEX por favor."
 
-#: access/nbtree/nbtutils.c:2563
+#: access/nbtree/nbtutils.c:2664
 #, c-format
 msgid "index row size %zu exceeds btree version %u maximum %zu for index \"%s\""
 msgstr "el tamaño de fila de índice %1$zu excede el máximo %3$zu para btree versión %2$u para el índice «%4$s»"
 
-#: access/nbtree/nbtutils.c:2569
+#: access/nbtree/nbtutils.c:2670
 #, c-format
 msgid "Index row references tuple (%u,%u) in relation \"%s\"."
 msgstr "La tupla de índice hace referencia a la tupla (%u,%u) en la relación «%s»."
 
-#: access/nbtree/nbtutils.c:2573
+#: access/nbtree/nbtutils.c:2674
 #, c-format
 msgid ""
 "Values larger than 1/3 of a buffer page cannot be indexed.\n"
@@ -1248,39 +1470,39 @@ msgstr ""
 "Valores mayores a 1/3 de la página del buffer no pueden ser indexados.\n"
 "Considere un índice sobre una función que genere un hash MD5 del valor, o utilice un esquema de indexación de texto completo."
 
-#: access/nbtree/nbtvalidate.c:236
+#: access/nbtree/nbtvalidate.c:243
 #, c-format
 msgid "operator family \"%s\" of access method %s is missing support function for types %s and %s"
 msgstr "falta una función de soporte para los tipos %3$s y %4$s en la familia de operadores «%1$s» del método de acceso %2$s"
 
-#: access/spgist/spgutils.c:142
+#: access/spgist/spgutils.c:147
 #, c-format
 msgid "compress method must be defined when leaf type is different from input type"
 msgstr "método «compress» debe estar definido cuando el tipo hoja es distinto del tipo de entrada"
 
-#: access/spgist/spgutils.c:749
+#: access/spgist/spgutils.c:761
 #, c-format
 msgid "SP-GiST inner tuple size %zu exceeds maximum %zu"
 msgstr "el tamaño de tupla interna SP-GiST %zu excede el máximo %zu"
 
-#: access/spgist/spgvalidate.c:276
+#: access/spgist/spgvalidate.c:281
 #, c-format
 msgid "operator family \"%s\" of access method %s is missing support function %d for type %s"
 msgstr "falta la función de soporte %3$d para el tipo %4$s de la clase de operadores «%1$s» del método de accesso %2$s"
 
 #: access/table/table.c:49 access/table/table.c:78 access/table/table.c:111
-#: catalog/aclchk.c:1832
+#: catalog/aclchk.c:1806
 #, c-format
 msgid "\"%s\" is an index"
 msgstr "«%s» es un índice"
 
 #: access/table/table.c:54 access/table/table.c:83 access/table/table.c:116
-#: catalog/aclchk.c:1839 commands/tablecmds.c:11755 commands/tablecmds.c:14953
+#: catalog/aclchk.c:1813 commands/tablecmds.c:12464 commands/tablecmds.c:15652
 #, c-format
 msgid "\"%s\" is a composite type"
 msgstr "«%s» es un tipo compuesto"
 
-#: access/table/tableam.c:236
+#: access/table/tableam.c:240
 #, c-format
 msgid "tid (%u, %u) is not valid for relation \"%s\""
 msgstr "el tid (%u, %u) no es válido para la relación «%s»"
@@ -1290,7 +1512,7 @@ msgstr "el tid (%u, %u) no es válido para la relación «%s»"
 msgid "%s cannot be empty."
 msgstr "%s no puede ser vacío."
 
-#: access/table/tableamapi.c:122 utils/misc/guc.c:11634
+#: access/table/tableamapi.c:122 utils/misc/guc.c:11938
 #, c-format
 msgid "%s is too long (maximum %d characters)."
 msgstr "%s es demasiado largo (máximo %d caracteres)."
@@ -1330,13 +1552,13 @@ msgstr "Asegúrese que el parámetro de configuración «%s» esté definido en
 msgid "Make sure the configuration parameter \"%s\" is set."
 msgstr "Asegúrese que el parámetro de configuración «%s» esté definido."
 
-#: access/transam/multixact.c:1000
+#: access/transam/multixact.c:1002
 #, c-format
 msgid "database is not accepting commands that generate new MultiXactIds to avoid wraparound data loss in database \"%s\""
 msgstr "la base de datos no está aceptando órdenes que generen nuevos MultiXactIds para evitar pérdida de datos debido al reciclaje de transacciones en la base de datos «%s»"
 
-#: access/transam/multixact.c:1002 access/transam/multixact.c:1009
-#: access/transam/multixact.c:1033 access/transam/multixact.c:1042
+#: access/transam/multixact.c:1004 access/transam/multixact.c:1011
+#: access/transam/multixact.c:1035 access/transam/multixact.c:1044
 #, c-format
 msgid ""
 "Execute a database-wide VACUUM in that database.\n"
@@ -1345,70 +1567,70 @@ msgstr ""
 "Ejecute VACUUM de la base completa en esa base de datos.\n"
 "Puede que además necesite comprometer o abortar transacciones preparadas antiguas, o eliminar slots de replicación añejos."
 
-#: access/transam/multixact.c:1007
+#: access/transam/multixact.c:1009
 #, c-format
 msgid "database is not accepting commands that generate new MultiXactIds to avoid wraparound data loss in database with OID %u"
 msgstr "la base de datos no está aceptando órdenes que generen nuevos MultiXactIds para evitar pérdida de datos debido al problema del reciclaje de transacciones en la base con OID %u"
 
-#: access/transam/multixact.c:1028 access/transam/multixact.c:2318
+#: access/transam/multixact.c:1030 access/transam/multixact.c:2320
 #, c-format
 msgid "database \"%s\" must be vacuumed before %u more MultiXactId is used"
 msgid_plural "database \"%s\" must be vacuumed before %u more MultiXactIds are used"
 msgstr[0] "base de datos «%s» debe ser limpiada antes de que %u más MultiXactId sea usado"
 msgstr[1] "base de datos «%s» debe ser limpiada dentro de que %u más MultiXactIds sean usados"
 
-#: access/transam/multixact.c:1037 access/transam/multixact.c:2327
+#: access/transam/multixact.c:1039 access/transam/multixact.c:2329
 #, c-format
 msgid "database with OID %u must be vacuumed before %u more MultiXactId is used"
 msgid_plural "database with OID %u must be vacuumed before %u more MultiXactIds are used"
 msgstr[0] "base de datos con OID %u debe ser limpiada antes de que %u más MultiXactId sea usado"
 msgstr[1] "base de datos con OID %u debe ser limpiada antes de que %u más MultiXactIds sean usados"
 
-#: access/transam/multixact.c:1098
+#: access/transam/multixact.c:1100
 #, c-format
 msgid "multixact \"members\" limit exceeded"
 msgstr "límite de miembros de multixact alcanzado"
 
-#: access/transam/multixact.c:1099
+#: access/transam/multixact.c:1101
 #, c-format
 msgid "This command would create a multixact with %u members, but the remaining space is only enough for %u member."
 msgid_plural "This command would create a multixact with %u members, but the remaining space is only enough for %u members."
 msgstr[0] "Esta orden crearía un multixact con %u miembros, pero el espacio que queda sólo sirve para %u miembro."
 msgstr[1] "Esta orden crearía un multixact con %u miembros, pero el espacio que queda sólo sirve para %u miembros."
 
-#: access/transam/multixact.c:1104
+#: access/transam/multixact.c:1106
 #, c-format
 msgid "Execute a database-wide VACUUM in database with OID %u with reduced vacuum_multixact_freeze_min_age and vacuum_multixact_freeze_table_age settings."
 msgstr "Ejecute un VACUUM de la base completa en la base de datos con OID %u con vacuum_multixact_freeze_min_age y vacuum_multixact_freeze_table_age reducidos."
 
-#: access/transam/multixact.c:1135
+#: access/transam/multixact.c:1137
 #, c-format
 msgid "database with OID %u must be vacuumed before %d more multixact member is used"
 msgid_plural "database with OID %u must be vacuumed before %d more multixact members are used"
 msgstr[0] "base de datos con OID %u debe ser limpiada antes de que %d miembro más de multixact sea usado"
 msgstr[1] "base de datos con OID %u debe ser limpiada antes de que %d más miembros de multixact sean usados"
 
-#: access/transam/multixact.c:1140
+#: access/transam/multixact.c:1142
 #, c-format
 msgid "Execute a database-wide VACUUM in that database with reduced vacuum_multixact_freeze_min_age and vacuum_multixact_freeze_table_age settings."
 msgstr "Ejecute un VACUUM de la base completa en esa base de datos con vacuum_multixact_freeze_min_age y vacuum_multixact_freeze_table_age reducidos."
 
-#: access/transam/multixact.c:1277
+#: access/transam/multixact.c:1279
 #, c-format
 msgid "MultiXactId %u does no longer exist -- apparent wraparound"
 msgstr "el MultiXactId %u ya no existe -- aparente problema por reciclaje"
 
-#: access/transam/multixact.c:1285
+#: access/transam/multixact.c:1287
 #, c-format
 msgid "MultiXactId %u has not been created yet -- apparent wraparound"
 msgstr "el MultiXactId %u no se ha creado aún -- aparente problema por reciclaje"
 
-#: access/transam/multixact.c:2268
+#: access/transam/multixact.c:2270
 #, c-format
 msgid "MultiXactId wrap limit is %u, limited by database with OID %u"
 msgstr "el límite para el reciclaje de MultiXactId es %u, limitado por base de datos con OID %u"
 
-#: access/transam/multixact.c:2323 access/transam/multixact.c:2332
+#: access/transam/multixact.c:2325 access/transam/multixact.c:2334
 #: access/transam/varsup.c:149 access/transam/varsup.c:156
 #: access/transam/varsup.c:447 access/transam/varsup.c:454
 #, c-format
@@ -1419,330 +1641,328 @@ msgstr ""
 "Para evitar que la base de datos se desactive, ejecute VACUUM en esa base de datos.\n"
 "Puede que además necesite comprometer o abortar transacciones preparadas antiguas, o eliminar slots de replicación añejos."
 
-#: access/transam/multixact.c:2602
+#: access/transam/multixact.c:2604
 #, c-format
 msgid "oldest MultiXactId member is at offset %u"
 msgstr "el miembro de multixact más antiguo está en la posición %u"
 
-#: access/transam/multixact.c:2606
+#: access/transam/multixact.c:2608
 #, c-format
 msgid "MultiXact member wraparound protections are disabled because oldest checkpointed MultiXact %u does not exist on disk"
 msgstr "las protecciones de reciclaje de miembros de multixact están inhabilitadas porque el multixact más antiguo %u en checkpoint no existe en disco"
 
-#: access/transam/multixact.c:2628
+#: access/transam/multixact.c:2630
 #, c-format
 msgid "MultiXact member wraparound protections are now enabled"
 msgstr "las protecciones de reciclaje de miembros de multixact están habilitadas"
 
-#: access/transam/multixact.c:2631
+#: access/transam/multixact.c:2633
 #, c-format
 msgid "MultiXact member stop limit is now %u based on MultiXact %u"
 msgstr "el límite de detención de miembros de multixact es ahora %u basado en el multixact %u"
 
-#: access/transam/multixact.c:3011
+#: access/transam/multixact.c:3013
 #, c-format
 msgid "oldest MultiXact %u not found, earliest MultiXact %u, skipping truncation"
 msgstr "multixact más antiguo %u no encontrado, multixact más antiguo es %u, omitiendo el truncado"
 
-#: access/transam/multixact.c:3029
+#: access/transam/multixact.c:3031
 #, c-format
 msgid "cannot truncate up to MultiXact %u because it does not exist on disk, skipping truncation"
 msgstr "no se puede truncar hasta el MultiXact %u porque no existe en disco, omitiendo el truncado"
 
-#: access/transam/multixact.c:3343
+#: access/transam/multixact.c:3345
 #, c-format
 msgid "invalid MultiXactId: %u"
 msgstr "el MultiXactId no es válido: %u"
 
-#: access/transam/parallel.c:673 access/transam/parallel.c:792
+#: access/transam/parallel.c:706 access/transam/parallel.c:825
 #, c-format
 msgid "parallel worker failed to initialize"
 msgstr "el ayudante paralelo no pudo iniciar"
 
-#: access/transam/parallel.c:674 access/transam/parallel.c:793
+#: access/transam/parallel.c:707 access/transam/parallel.c:826
 #, c-format
 msgid "More details may be available in the server log."
 msgstr "Puede haber más detalles disponibles en el log del servidor."
 
-#: access/transam/parallel.c:854
+#: access/transam/parallel.c:887
 #, c-format
 msgid "postmaster exited during a parallel transaction"
 msgstr "postmaster terminó durante una transacción paralela"
 
-#: access/transam/parallel.c:1041
+#: access/transam/parallel.c:1074
 #, c-format
 msgid "lost connection to parallel worker"
 msgstr "se ha perdido la conexión al ayudante paralelo"
 
-#: access/transam/parallel.c:1107 access/transam/parallel.c:1109
+#: access/transam/parallel.c:1140 access/transam/parallel.c:1142
 msgid "parallel worker"
 msgstr "ayudante paralelo"
 
-#: access/transam/parallel.c:1259
+#: access/transam/parallel.c:1293
 #, c-format
 msgid "could not map dynamic shared memory segment"
 msgstr "no se pudo mapear el segmento de memoria compartida dinámica"
 
-#: access/transam/parallel.c:1264
+#: access/transam/parallel.c:1298
 #, c-format
 msgid "invalid magic number in dynamic shared memory segment"
 msgstr "número mágico no válido en segmento de memoria compartida dinámica"
 
-#: access/transam/slru.c:674
+#: access/transam/slru.c:696
 #, c-format
 msgid "file \"%s\" doesn't exist, reading as zeroes"
 msgstr "el archivo «%s» no existe, leyendo como ceros"
 
-#: access/transam/slru.c:912 access/transam/slru.c:918
-#: access/transam/slru.c:926 access/transam/slru.c:931
-#: access/transam/slru.c:938 access/transam/slru.c:943
-#: access/transam/slru.c:950 access/transam/slru.c:957
+#: access/transam/slru.c:937 access/transam/slru.c:943
+#: access/transam/slru.c:951 access/transam/slru.c:956
+#: access/transam/slru.c:963 access/transam/slru.c:968
+#: access/transam/slru.c:975 access/transam/slru.c:982
 #, c-format
 msgid "could not access status of transaction %u"
 msgstr "no se pudo encontrar el estado de la transacción %u"
 
-#: access/transam/slru.c:913
+#: access/transam/slru.c:938
 #, c-format
 msgid "Could not open file \"%s\": %m."
 msgstr "No se pudo abrir el archivo «%s»: %m."
 
-#: access/transam/slru.c:919
+#: access/transam/slru.c:944
 #, c-format
 msgid "Could not seek in file \"%s\" to offset %u: %m."
 msgstr "No se pudo posicionar (seek) en el archivo «%s» a la posición %u: %m."
 
-#: access/transam/slru.c:927
+#: access/transam/slru.c:952
 #, c-format
 msgid "Could not read from file \"%s\" at offset %u: %m."
 msgstr "No se pudo leer desde el archivo «%s» en la posición %u: %m."
 
-#: access/transam/slru.c:932
+#: access/transam/slru.c:957
 #, c-format
-#| msgid "Could not read from file \"%s\" at offset %u: %m."
 msgid "Could not read from file \"%s\" at offset %u: read too few bytes."
 msgstr "No se pudo leer desde el archivo «%s» en la posición %u: se leyeron muy pocos bytes."
 
-#: access/transam/slru.c:939
+#: access/transam/slru.c:964
 #, c-format
 msgid "Could not write to file \"%s\" at offset %u: %m."
 msgstr "No se pudo escribir al archivo «%s» en la posición %u: %m."
 
-#: access/transam/slru.c:944
+#: access/transam/slru.c:969
 #, c-format
-#| msgid "Could not write to file \"%s\" at offset %u: %m."
 msgid "Could not write to file \"%s\" at offset %u: wrote too few bytes."
 msgstr "No se pudo escribir al archivo «%s» en la posición %u: se escribieron muy pocos bytes."
 
-#: access/transam/slru.c:951
+#: access/transam/slru.c:976
 #, c-format
 msgid "Could not fsync file \"%s\": %m."
 msgstr "No se pudo sincronizar (fsync) archivo «%s»: %m."
 
-#: access/transam/slru.c:958
+#: access/transam/slru.c:983
 #, c-format
 msgid "Could not close file \"%s\": %m."
 msgstr "No se pudo cerrar el archivo «%s»: %m."
 
-#: access/transam/slru.c:1215
+#: access/transam/slru.c:1246
 #, c-format
 msgid "could not truncate directory \"%s\": apparent wraparound"
 msgstr "no se pudo truncar el directorio «%s»: aparente problema por reciclaje de transacciones"
 
-#: access/transam/slru.c:1270 access/transam/slru.c:1326
+#: access/transam/slru.c:1301 access/transam/slru.c:1357
 #, c-format
 msgid "removing file \"%s\""
 msgstr "eliminando el archivo «%s»"
 
-#: access/transam/timeline.c:148 access/transam/timeline.c:153
+#: access/transam/timeline.c:163 access/transam/timeline.c:168
 #, c-format
 msgid "syntax error in history file: %s"
 msgstr "error de sintaxis en archivo de historia: %s"
 
-#: access/transam/timeline.c:149
+#: access/transam/timeline.c:164
 #, c-format
 msgid "Expected a numeric timeline ID."
 msgstr "Se esperaba un ID numérico de timeline."
 
-#: access/transam/timeline.c:154
+#: access/transam/timeline.c:169
 #, c-format
 msgid "Expected a write-ahead log switchpoint location."
 msgstr "Se esperaba una ubicación de punto de cambio del registro de transacciones."
 
-#: access/transam/timeline.c:158
+#: access/transam/timeline.c:173
 #, c-format
 msgid "invalid data in history file: %s"
 msgstr "datos no válidos en archivo de historia: %s"
 
-#: access/transam/timeline.c:159
+#: access/transam/timeline.c:174
 #, c-format
 msgid "Timeline IDs must be in increasing sequence."
 msgstr "IDs de timeline deben ser una secuencia creciente."
 
-#: access/transam/timeline.c:179
+#: access/transam/timeline.c:194
 #, c-format
 msgid "invalid data in history file \"%s\""
 msgstr "datos no válidos en archivo de historia «%s»"
 
-#: access/transam/timeline.c:180
+#: access/transam/timeline.c:195
 #, c-format
 msgid "Timeline IDs must be less than child timeline's ID."
 msgstr "IDs de timeline deben ser menores que el ID de timeline del hijo."
 
-#: access/transam/timeline.c:580
+#: access/transam/timeline.c:597
 #, c-format
 msgid "requested timeline %u is not in this server's history"
 msgstr "el timeline %u solicitado no está en la historia de este servidor"
 
-#: access/transam/twophase.c:382
+#: access/transam/twophase.c:381
 #, c-format
 msgid "transaction identifier \"%s\" is too long"
 msgstr "identificador de transacción «%s» es demasiado largo"
 
-#: access/transam/twophase.c:389
+#: access/transam/twophase.c:388
 #, c-format
 msgid "prepared transactions are disabled"
 msgstr "las transacciones preparadas están deshabilitadas"
 
-#: access/transam/twophase.c:390
+#: access/transam/twophase.c:389
 #, c-format
 msgid "Set max_prepared_transactions to a nonzero value."
 msgstr "Defina max_prepared_transactions a un valor distinto de cero."
 
-#: access/transam/twophase.c:409
+#: access/transam/twophase.c:408
 #, c-format
 msgid "transaction identifier \"%s\" is already in use"
 msgstr "identificador de transacción «%s» ya está siendo utilizado"
 
-#: access/transam/twophase.c:418 access/transam/twophase.c:2420
+#: access/transam/twophase.c:417 access/transam/twophase.c:2368
 #, c-format
 msgid "maximum number of prepared transactions reached"
 msgstr "se alcanzó el número máximo de transacciones preparadas"
 
-#: access/transam/twophase.c:419 access/transam/twophase.c:2421
+#: access/transam/twophase.c:418 access/transam/twophase.c:2369
 #, c-format
 msgid "Increase max_prepared_transactions (currently %d)."
 msgstr "Incremente max_prepared_transactions (actualmente es %d)."
 
-#: access/transam/twophase.c:587
+#: access/transam/twophase.c:586
 #, c-format
 msgid "prepared transaction with identifier \"%s\" is busy"
 msgstr "transacción preparada con identificador «%s» está ocupada"
 
-#: access/transam/twophase.c:593
+#: access/transam/twophase.c:592
 #, c-format
 msgid "permission denied to finish prepared transaction"
 msgstr "se ha denegado el permiso para finalizar la transacción preparada"
 
-#: access/transam/twophase.c:594
+#: access/transam/twophase.c:593
 #, c-format
 msgid "Must be superuser or the user that prepared the transaction."
 msgstr "Debe ser superusuario o el usuario que preparó la transacción."
 
-#: access/transam/twophase.c:605
+#: access/transam/twophase.c:604
 #, c-format
 msgid "prepared transaction belongs to another database"
 msgstr "la transacción preparada pertenece a otra base de datos"
 
-#: access/transam/twophase.c:606
+#: access/transam/twophase.c:605
 #, c-format
 msgid "Connect to the database where the transaction was prepared to finish it."
 msgstr "Conéctese a la base de datos donde la transacción fue preparada para terminarla."
 
-#: access/transam/twophase.c:621
+#: access/transam/twophase.c:620
 #, c-format
 msgid "prepared transaction with identifier \"%s\" does not exist"
 msgstr "transacción preparada con identificador «%s» no existe"
 
-#: access/transam/twophase.c:1115
+#: access/transam/twophase.c:1098
 #, c-format
 msgid "two-phase state file maximum length exceeded"
 msgstr "el largo máximo del archivo de estado de dos fases fue excedido"
 
-#: access/transam/twophase.c:1269
+#: access/transam/twophase.c:1252
 #, c-format
 msgid "incorrect size of file \"%s\": %zu byte"
 msgid_plural "incorrect size of file \"%s\": %zu bytes"
 msgstr[0] "tamaño incorrecto de archivo «%s»: %zu byte"
 msgstr[1] "tamaño incorrecto de archivo «%s»: %zu bytes"
 
-#: access/transam/twophase.c:1278
+#: access/transam/twophase.c:1261
 #, c-format
 msgid "incorrect alignment of CRC offset for file \"%s\""
 msgstr "alineamiento incorrecto del offset del CRC para el archivo «%s»"
 
-#: access/transam/twophase.c:1311
+#: access/transam/twophase.c:1294
 #, c-format
 msgid "invalid magic number stored in file \"%s\""
 msgstr "número mágico no válido almacenado en archivo «%s»"
 
-#: access/transam/twophase.c:1317
+#: access/transam/twophase.c:1300
 #, c-format
 msgid "invalid size stored in file \"%s\""
 msgstr "tamaño no válido en archivo «%s»"
 
-#: access/transam/twophase.c:1329
+#: access/transam/twophase.c:1312
 #, c-format
 msgid "calculated CRC checksum does not match value stored in file \"%s\""
 msgstr "la suma de verificación calculada no coincide con el valor almacenado en el archivo «%s»"
 
-#: access/transam/twophase.c:1395 access/transam/xlog.c:6358
+#: access/transam/twophase.c:1342 access/transam/xlog.c:6492
 #, c-format
 msgid "Failed while allocating a WAL reading processor."
 msgstr "Falló mientras se emplazaba un procesador de lectura de WAL."
 
-#: access/transam/twophase.c:1401
+#: access/transam/twophase.c:1349
 #, c-format
 msgid "could not read two-phase state from WAL at %X/%X"
 msgstr "no se pudo leer el archivo de estado de dos fases desde WAL en %X/%X"
 
-#: access/transam/twophase.c:1409
+#: access/transam/twophase.c:1357
 #, c-format
 msgid "expected two-phase state data is not present in WAL at %X/%X"
 msgstr "los datos de estado de dos fases esperados no están presentes en WAL en %X/%X"
 
-#: access/transam/twophase.c:1689
+#: access/transam/twophase.c:1637
 #, c-format
 msgid "could not recreate file \"%s\": %m"
 msgstr "no se pudo recrear archivo «%s»: %m"
 
-#: access/transam/twophase.c:1816
+#: access/transam/twophase.c:1764
 #, c-format
 msgid "%u two-phase state file was written for a long-running prepared transaction"
 msgid_plural "%u two-phase state files were written for long-running prepared transactions"
 msgstr[0] "%u archivo de estado de dos fases fue escrito para transacción de larga duración"
 msgstr[1] "%u archivos de estado de dos fases fueron escritos para transacciones de larga duración"
 
-#: access/transam/twophase.c:2050
+#: access/transam/twophase.c:1998
 #, c-format
 msgid "recovering prepared transaction %u from shared memory"
 msgstr "recuperando transacción preparada %u desde memoria compartida"
 
-#: access/transam/twophase.c:2141
+#: access/transam/twophase.c:2089
 #, c-format
 msgid "removing stale two-phase state file for transaction %u"
 msgstr "eliminando archivo obsoleto de estado de dos fases para transacción %u"
 
-#: access/transam/twophase.c:2148
+#: access/transam/twophase.c:2096
 #, c-format
 msgid "removing stale two-phase state from memory for transaction %u"
 msgstr "eliminando de memoria estado de dos fases obsoleto para transacción %u"
 
-#: access/transam/twophase.c:2161
+#: access/transam/twophase.c:2109
 #, c-format
 msgid "removing future two-phase state file for transaction %u"
 msgstr "eliminando archivo futuro de estado de dos fases para transacción %u"
 
-#: access/transam/twophase.c:2168
+#: access/transam/twophase.c:2116
 #, c-format
 msgid "removing future two-phase state from memory for transaction %u"
 msgstr "eliminando estado de dos fases futuro de memoria para transacción %u"
 
-#: access/transam/twophase.c:2193
+#: access/transam/twophase.c:2141
 #, c-format
 msgid "corrupted two-phase state file for transaction %u"
 msgstr "archivo de estado de dos fases corrupto para transacción %u"
 
-#: access/transam/twophase.c:2198
+#: access/transam/twophase.c:2146
 #, c-format
 msgid "corrupted two-phase state in memory for transaction %u"
 msgstr "estado de dos fases en memoria corrupto para transacción %u"
@@ -1781,544 +2001,551 @@ msgstr "base de datos con OID %u debe ser limpiada dentro de %u transacciones"
 msgid "transaction ID wrap limit is %u, limited by database with OID %u"
 msgstr "el límite para el reciclaje de ID de transacciones es %u, limitado por base de datos con OID %u"
 
-#: access/transam/xact.c:1027
+#: access/transam/xact.c:1030
 #, c-format
 msgid "cannot have more than 2^32-2 commands in a transaction"
 msgstr "no se pueden tener más de 2^32-2 órdenes en una transacción"
 
-#: access/transam/xact.c:1552
+#: access/transam/xact.c:1555
 #, c-format
 msgid "maximum number of committed subtransactions (%d) exceeded"
 msgstr "se superó el número máximo de subtransacciones comprometidas (%d)"
 
-#: access/transam/xact.c:2377
+#: access/transam/xact.c:2395
 #, c-format
 msgid "cannot PREPARE a transaction that has operated on temporary objects"
 msgstr "no se puede hacer PREPARE de una transacción que ha operado en objetos temporales"
 
-#: access/transam/xact.c:2387
+#: access/transam/xact.c:2405
 #, c-format
 msgid "cannot PREPARE a transaction that has exported snapshots"
 msgstr "no se puede hacer PREPARE de una transacción que ha exportado snapshots"
 
-#: access/transam/xact.c:2396
+#: access/transam/xact.c:2414
 #, c-format
 msgid "cannot PREPARE a transaction that has manipulated logical replication workers"
 msgstr "no se puede hacer PREPARE de una transacción que ha manipulado procesos ayudantes de replicación lógica"
 
 #. translator: %s represents an SQL statement name
-#: access/transam/xact.c:3337
+#: access/transam/xact.c:3359
 #, c-format
 msgid "%s cannot run inside a transaction block"
 msgstr "%s no puede ser ejecutado dentro de un bloque de transacción"
 
 #. translator: %s represents an SQL statement name
-#: access/transam/xact.c:3347
+#: access/transam/xact.c:3369
 #, c-format
 msgid "%s cannot run inside a subtransaction"
 msgstr "%s no puede ser ejecutado dentro de una subtransacción"
 
 #. translator: %s represents an SQL statement name
-#: access/transam/xact.c:3357
+#: access/transam/xact.c:3379
 #, c-format
 msgid "%s cannot be executed from a function"
 msgstr "%s no puede ser ejecutado desde una función"
 
 #. translator: %s represents an SQL statement name
-#: access/transam/xact.c:3426 access/transam/xact.c:3733
-#: access/transam/xact.c:3812 access/transam/xact.c:3935
-#: access/transam/xact.c:4086 access/transam/xact.c:4155
-#: access/transam/xact.c:4266
+#: access/transam/xact.c:3448 access/transam/xact.c:3754
+#: access/transam/xact.c:3833 access/transam/xact.c:3956
+#: access/transam/xact.c:4107 access/transam/xact.c:4176
+#: access/transam/xact.c:4287
 #, c-format
 msgid "%s can only be used in transaction blocks"
 msgstr "la orden %s sólo puede ser usada en bloques de transacción"
 
-#: access/transam/xact.c:3619
+#: access/transam/xact.c:3640
 #, c-format
 msgid "there is already a transaction in progress"
 msgstr "ya hay una transacción en curso"
 
-#: access/transam/xact.c:3738 access/transam/xact.c:3817
-#: access/transam/xact.c:3940
+#: access/transam/xact.c:3759 access/transam/xact.c:3838
+#: access/transam/xact.c:3961
 #, c-format
 msgid "there is no transaction in progress"
 msgstr "no hay una transacción en curso"
 
-#: access/transam/xact.c:3828
+#: access/transam/xact.c:3849
 #, c-format
 msgid "cannot commit during a parallel operation"
 msgstr "no se puede comprometer una transacción durante una operación paralela"
 
-#: access/transam/xact.c:3951
+#: access/transam/xact.c:3972
 #, c-format
 msgid "cannot abort during a parallel operation"
 msgstr "no se puede abortar durante una operación paralela"
 
-#: access/transam/xact.c:4050
+#: access/transam/xact.c:4071
 #, c-format
 msgid "cannot define savepoints during a parallel operation"
 msgstr "no se pueden definir savepoints durante una operación paralela"
 
-#: access/transam/xact.c:4137
+#: access/transam/xact.c:4158
 #, c-format
 msgid "cannot release savepoints during a parallel operation"
 msgstr "no se pueden liberar savepoints durante una operación paralela"
 
-#: access/transam/xact.c:4147 access/transam/xact.c:4198
-#: access/transam/xact.c:4258 access/transam/xact.c:4307
+#: access/transam/xact.c:4168 access/transam/xact.c:4219
+#: access/transam/xact.c:4279 access/transam/xact.c:4328
 #, c-format
 msgid "savepoint \"%s\" does not exist"
 msgstr "no existe el «savepoint» «%s»"
 
-#: access/transam/xact.c:4204 access/transam/xact.c:4313
+#: access/transam/xact.c:4225 access/transam/xact.c:4334
 #, c-format
 msgid "savepoint \"%s\" does not exist within current savepoint level"
 msgstr "el «savepoint» «%s» no existe dentro del nivel de savepoint actual"
 
-#: access/transam/xact.c:4246
+#: access/transam/xact.c:4267
 #, c-format
 msgid "cannot rollback to savepoints during a parallel operation"
 msgstr "no se puede hacer rollback a un savepoint durante una operación paralela"
 
-#: access/transam/xact.c:4374
+#: access/transam/xact.c:4395
 #, c-format
 msgid "cannot start subtransactions during a parallel operation"
 msgstr "no se pueden iniciar subtransacciones durante una operación paralela"
 
-#: access/transam/xact.c:4442
+#: access/transam/xact.c:4463
 #, c-format
 msgid "cannot commit subtransactions during a parallel operation"
 msgstr "no se pueden comprometer subtransacciones durante una operación paralela"
 
-#: access/transam/xact.c:5080
+#: access/transam/xact.c:5103
 #, c-format
 msgid "cannot have more than 2^32-1 subtransactions in a transaction"
 msgstr "no se pueden tener más de 2^32-1 subtransacciones en una transacción"
 
-#: access/transam/xlog.c:2506
+#: access/transam/xlog.c:2552
 #, c-format
 msgid "could not write to log file %s at offset %u, length %zu: %m"
 msgstr "no se pudo escribir archivo de registro %s en la posición %u, largo %zu: %m"
 
-#: access/transam/xlog.c:2782
+#: access/transam/xlog.c:2828
 #, c-format
 msgid "updated min recovery point to %X/%X on timeline %u"
 msgstr "el punto mínimo de recuperación fue actualizado a %X/%X en el timeline %u"
 
-#: access/transam/xlog.c:3863 access/transam/xlogutils.c:703
-#: replication/walsender.c:2446
+#: access/transam/xlog.c:3942 access/transam/xlogutils.c:802
+#: replication/walsender.c:2517
 #, c-format
 msgid "requested WAL segment %s has already been removed"
 msgstr "el segmento de WAL solicitado %s ya ha sido eliminado"
 
-#: access/transam/xlog.c:4105
+#: access/transam/xlog.c:4185
 #, c-format
 msgid "recycled write-ahead log file \"%s\""
 msgstr "reciclado archivo de WAL «%s»"
 
-#: access/transam/xlog.c:4117
+#: access/transam/xlog.c:4197
 #, c-format
 msgid "removing write-ahead log file \"%s\""
 msgstr "eliminando archivo de WAL «%s»"
 
-#: access/transam/xlog.c:4137
+#: access/transam/xlog.c:4217
 #, c-format
 msgid "could not rename file \"%s\": %m"
 msgstr "no se pudo renombrar el archivo «%s»: %m"
 
-#: access/transam/xlog.c:4179 access/transam/xlog.c:4189
+#: access/transam/xlog.c:4259 access/transam/xlog.c:4269
 #, c-format
 msgid "required WAL directory \"%s\" does not exist"
 msgstr "no existe el directorio WAL «%s»"
 
-#: access/transam/xlog.c:4195
+#: access/transam/xlog.c:4275
 #, c-format
 msgid "creating missing WAL directory \"%s\""
 msgstr "creando el directorio WAL faltante «%s»"
 
-#: access/transam/xlog.c:4198
+#: access/transam/xlog.c:4278
 #, c-format
 msgid "could not create missing directory \"%s\": %m"
 msgstr "no se pudo crear el directorio faltante «%s»: %m"
 
-#: access/transam/xlog.c:4303
+#: access/transam/xlog.c:4381
 #, c-format
 msgid "unexpected timeline ID %u in log segment %s, offset %u"
 msgstr "ID de timeline %u inesperado en archivo %s, posición %u"
 
-#: access/transam/xlog.c:4431
+#: access/transam/xlog.c:4519
 #, c-format
 msgid "new timeline %u is not a child of database system timeline %u"
 msgstr "el nuevo timeline %u especificado no es hijo del timeline de sistema %u"
 
-#: access/transam/xlog.c:4445
+#: access/transam/xlog.c:4533
 #, c-format
 msgid "new timeline %u forked off current database system timeline %u before current recovery point %X/%X"
 msgstr "el nuevo timeline %u bifurcó del timeline del sistema actual %u antes del punto re recuperación actual %X/%X"
 
-#: access/transam/xlog.c:4464
+#: access/transam/xlog.c:4552
 #, c-format
 msgid "new target timeline is %u"
 msgstr "el nuevo timeline destino es %u"
 
-#: access/transam/xlog.c:4623 access/transam/xlog.c:4632
-#: access/transam/xlog.c:4656 access/transam/xlog.c:4663
-#: access/transam/xlog.c:4670 access/transam/xlog.c:4675
-#: access/transam/xlog.c:4682 access/transam/xlog.c:4689
-#: access/transam/xlog.c:4696 access/transam/xlog.c:4703
-#: access/transam/xlog.c:4710 access/transam/xlog.c:4717
-#: access/transam/xlog.c:4726 access/transam/xlog.c:4733
-#: access/transam/xlog.c:4742 access/transam/xlog.c:4749
-#: utils/init/miscinit.c:1502
+#: access/transam/xlog.c:4588
+#, c-format
+msgid "could not generate secret authorization token"
+msgstr "no se pudo generar un token de autorización secreto"
+
+#: access/transam/xlog.c:4747 access/transam/xlog.c:4756
+#: access/transam/xlog.c:4780 access/transam/xlog.c:4787
+#: access/transam/xlog.c:4794 access/transam/xlog.c:4799
+#: access/transam/xlog.c:4806 access/transam/xlog.c:4813
+#: access/transam/xlog.c:4820 access/transam/xlog.c:4827
+#: access/transam/xlog.c:4834 access/transam/xlog.c:4841
+#: access/transam/xlog.c:4850 access/transam/xlog.c:4857
+#: utils/init/miscinit.c:1548
 #, c-format
 msgid "database files are incompatible with server"
 msgstr "los archivos de base de datos son incompatibles con el servidor"
 
-#: access/transam/xlog.c:4624
+#: access/transam/xlog.c:4748
 #, c-format
 msgid "The database cluster was initialized with PG_CONTROL_VERSION %d (0x%08x), but the server was compiled with PG_CONTROL_VERSION %d (0x%08x)."
 msgstr "Los archivos de base de datos fueron inicializados con PG_CONTROL_VERSION %d (0x%08x), pero el servidor fue compilado con PG_CONTROL_VERSION %d (0x%08x)."
 
-#: access/transam/xlog.c:4628
+#: access/transam/xlog.c:4752
 #, c-format
 msgid "This could be a problem of mismatched byte ordering.  It looks like you need to initdb."
 msgstr "Este puede ser un problema de discordancia en el orden de bytes. Parece que necesitará ejecutar initdb."
 
-#: access/transam/xlog.c:4633
+#: access/transam/xlog.c:4757
 #, c-format
 msgid "The database cluster was initialized with PG_CONTROL_VERSION %d, but the server was compiled with PG_CONTROL_VERSION %d."
 msgstr "Los archivos de base de datos fueron inicializados con PG_CONTROL_VERSION %d, pero el servidor fue compilado con PG_CONTROL_VERSION %d."
 
-#: access/transam/xlog.c:4636 access/transam/xlog.c:4660
-#: access/transam/xlog.c:4667 access/transam/xlog.c:4672
+#: access/transam/xlog.c:4760 access/transam/xlog.c:4784
+#: access/transam/xlog.c:4791 access/transam/xlog.c:4796
 #, c-format
 msgid "It looks like you need to initdb."
 msgstr "Parece que necesita ejecutar initdb."
 
-#: access/transam/xlog.c:4647
+#: access/transam/xlog.c:4771
 #, c-format
 msgid "incorrect checksum in control file"
 msgstr "la suma de verificación es incorrecta en el archivo de control"
 
-#: access/transam/xlog.c:4657
+#: access/transam/xlog.c:4781
 #, c-format
 msgid "The database cluster was initialized with CATALOG_VERSION_NO %d, but the server was compiled with CATALOG_VERSION_NO %d."
 msgstr "Los archivos de base de datos fueron inicializados con CATALOG_VERSION_NO %d, pero el servidor fue compilado con CATALOG_VERSION_NO %d."
 
-#: access/transam/xlog.c:4664
+#: access/transam/xlog.c:4788
 #, c-format
 msgid "The database cluster was initialized with MAXALIGN %d, but the server was compiled with MAXALIGN %d."
 msgstr "Los archivos de la base de datos fueron inicializados con MAXALIGN %d, pero el servidor fue compilado con MAXALIGN %d."
 
-#: access/transam/xlog.c:4671
+#: access/transam/xlog.c:4795
 #, c-format
 msgid "The database cluster appears to use a different floating-point number format than the server executable."
 msgstr "Los archivos de la base de datos parecen usar un formato de número de coma flotante distinto al del ejecutable del servidor."
 
-#: access/transam/xlog.c:4676
+#: access/transam/xlog.c:4800
 #, c-format
 msgid "The database cluster was initialized with BLCKSZ %d, but the server was compiled with BLCKSZ %d."
 msgstr "Los archivos de base de datos fueron inicializados con BLCKSZ %d, pero el servidor fue compilado con BLCKSZ %d."
 
-#: access/transam/xlog.c:4679 access/transam/xlog.c:4686
-#: access/transam/xlog.c:4693 access/transam/xlog.c:4700
-#: access/transam/xlog.c:4707 access/transam/xlog.c:4714
-#: access/transam/xlog.c:4721 access/transam/xlog.c:4729
-#: access/transam/xlog.c:4736 access/transam/xlog.c:4745
-#: access/transam/xlog.c:4752
+#: access/transam/xlog.c:4803 access/transam/xlog.c:4810
+#: access/transam/xlog.c:4817 access/transam/xlog.c:4824
+#: access/transam/xlog.c:4831 access/transam/xlog.c:4838
+#: access/transam/xlog.c:4845 access/transam/xlog.c:4853
+#: access/transam/xlog.c:4860
 #, c-format
 msgid "It looks like you need to recompile or initdb."
 msgstr "Parece que necesita recompilar o ejecutar initdb."
 
-#: access/transam/xlog.c:4683
+#: access/transam/xlog.c:4807
 #, c-format
 msgid "The database cluster was initialized with RELSEG_SIZE %d, but the server was compiled with RELSEG_SIZE %d."
 msgstr "Los archivos de la base de datos fueron inicializados con RELSEG_SIZE %d, pero el servidor fue compilado con RELSEG_SIZE %d."
 
-#: access/transam/xlog.c:4690
+#: access/transam/xlog.c:4814
 #, c-format
 msgid "The database cluster was initialized with XLOG_BLCKSZ %d, but the server was compiled with XLOG_BLCKSZ %d."
 msgstr "Los archivos de base de datos fueron inicializados con XLOG_BLCKSZ %d, pero el servidor fue compilado con XLOG_BLCKSZ %d."
 
-#: access/transam/xlog.c:4697
+#: access/transam/xlog.c:4821
 #, c-format
 msgid "The database cluster was initialized with NAMEDATALEN %d, but the server was compiled with NAMEDATALEN %d."
 msgstr "Los archivos de la base de datos fueron inicializados con NAMEDATALEN %d, pero el servidor fue compilado con NAMEDATALEN %d."
 
-#: access/transam/xlog.c:4704
+#: access/transam/xlog.c:4828
 #, c-format
 msgid "The database cluster was initialized with INDEX_MAX_KEYS %d, but the server was compiled with INDEX_MAX_KEYS %d."
 msgstr "Los archivos de la base de datos fueron inicializados con INDEX_MAX_KEYS %d, pero el servidor fue compilado con INDEX_MAX_KEYS %d."
 
-#: access/transam/xlog.c:4711
+#: access/transam/xlog.c:4835
 #, c-format
 msgid "The database cluster was initialized with TOAST_MAX_CHUNK_SIZE %d, but the server was compiled with TOAST_MAX_CHUNK_SIZE %d."
 msgstr "Los archivos de la base de datos fueron inicializados con TOAST_MAX_CHUNK_SIZE %d, pero el servidor fue compilado con TOAST_MAX_CHUNK_SIZE %d."
 
-#: access/transam/xlog.c:4718
+#: access/transam/xlog.c:4842
 #, c-format
 msgid "The database cluster was initialized with LOBLKSIZE %d, but the server was compiled with LOBLKSIZE %d."
 msgstr "Los archivos de base de datos fueron inicializados con LOBLKSIZE %d, pero el servidor fue compilado con LOBLKSIZE %d."
 
-#: access/transam/xlog.c:4727
-#, c-format
-msgid "The database cluster was initialized without USE_FLOAT4_BYVAL but the server was compiled with USE_FLOAT4_BYVAL."
-msgstr "Los archivos de base de datos fueron inicializados sin USE_FLOAT4_BYVAL, pero el servidor fue compilado con USE_FLOAT4_BYVAL."
-
-#: access/transam/xlog.c:4734
-#, c-format
-msgid "The database cluster was initialized with USE_FLOAT4_BYVAL but the server was compiled without USE_FLOAT4_BYVAL."
-msgstr "Los archivos de base de datos fueron inicializados con USE_FLOAT4_BYVAL, pero el servidor fue compilado sin USE_FLOAT4_BYVAL."
-
-#: access/transam/xlog.c:4743
+#: access/transam/xlog.c:4851
 #, c-format
 msgid "The database cluster was initialized without USE_FLOAT8_BYVAL but the server was compiled with USE_FLOAT8_BYVAL."
 msgstr "Los archivos de base de datos fueron inicializados sin USE_FLOAT8_BYVAL, pero el servidor fue compilado con USE_FLOAT8_BYVAL."
 
-#: access/transam/xlog.c:4750
+#: access/transam/xlog.c:4858
 #, c-format
 msgid "The database cluster was initialized with USE_FLOAT8_BYVAL but the server was compiled without USE_FLOAT8_BYVAL."
 msgstr "Los archivos de base de datos fueron inicializados con USE_FLOAT8_BYVAL, pero el servidor fue compilado sin USE_FLOAT8_BYVAL."
 
-#: access/transam/xlog.c:4759
+#: access/transam/xlog.c:4867
 #, c-format
 msgid "WAL segment size must be a power of two between 1 MB and 1 GB, but the control file specifies %d byte"
 msgid_plural "WAL segment size must be a power of two between 1 MB and 1 GB, but the control file specifies %d bytes"
 msgstr[0] "El tamaño del segmento de WAL debe ser una potencia de dos entre 1 MB y 1 GB, pero el archivo de control especifica %d byte"
 msgstr[1] "El tamaño del segmento de WAL debe ser una potencia de dos entre 1 MB y 1 GB, pero el archivo de control especifica %d bytes"
 
-#: access/transam/xlog.c:4771
+#: access/transam/xlog.c:4879
 #, c-format
 msgid "\"min_wal_size\" must be at least twice \"wal_segment_size\""
 msgstr "«min_wal_size» debe ser al menos el doble de «wal_segment_size»"
 
-#: access/transam/xlog.c:4775
+#: access/transam/xlog.c:4883
 #, c-format
 msgid "\"max_wal_size\" must be at least twice \"wal_segment_size\""
 msgstr "«max_wal_size» debe ser al menos el doble de «wal_segment_size»"
 
-#: access/transam/xlog.c:5127
-#, c-format
-msgid "could not generate secret authorization token"
-msgstr "no se pudo generar un token de autorización secreto"
-
-#: access/transam/xlog.c:5217
+#: access/transam/xlog.c:5316
 #, c-format
 msgid "could not write bootstrap write-ahead log file: %m"
 msgstr "no se pudo escribir el archivo WAL de boostrap: %m"
 
-#: access/transam/xlog.c:5225
+#: access/transam/xlog.c:5324
 #, c-format
 msgid "could not fsync bootstrap write-ahead log file: %m"
 msgstr "no se pudo sincronizar (fsync) el archivo de WAL de bootstrap: %m"
 
-#: access/transam/xlog.c:5231
+#: access/transam/xlog.c:5330
 #, c-format
 msgid "could not close bootstrap write-ahead log file: %m"
 msgstr "no se pudo cerrar el archivo WAL de bootstrap: %m"
 
-#: access/transam/xlog.c:5310
+#: access/transam/xlog.c:5391
 #, c-format
 msgid "using recovery command file \"%s\" is not supported"
 msgstr "el uso del archivo de configuración de recuperación «%s» no está soportado"
 
-#: access/transam/xlog.c:5375
+#: access/transam/xlog.c:5456
 #, c-format
 msgid "standby mode is not supported by single-user servers"
 msgstr "el modo standby no está soportado en el modo mono-usuario"
 
-#: access/transam/xlog.c:5392
+#: access/transam/xlog.c:5473
 #, c-format
 msgid "specified neither primary_conninfo nor restore_command"
 msgstr "no se especifica primary_conninfo ni restore_command"
 
-#: access/transam/xlog.c:5393
+#: access/transam/xlog.c:5474
 #, c-format
 msgid "The database server will regularly poll the pg_wal subdirectory to check for files placed there."
 msgstr "El servidor de bases de datos monitoreará el subdirectorio pg_wal con regularidad en búsqueda de archivos almacenados ahí."
 
-#: access/transam/xlog.c:5401
+#: access/transam/xlog.c:5482
 #, c-format
 msgid "must specify restore_command when standby mode is not enabled"
 msgstr "debe especificarse restore_command cuando el modo standby no está activo"
 
-#: access/transam/xlog.c:5439
+#: access/transam/xlog.c:5520
 #, c-format
 msgid "recovery target timeline %u does not exist"
 msgstr "no existe el timeline %u especificado como destino de recuperación"
 
-#: access/transam/xlog.c:5566
+#: access/transam/xlog.c:5642
 #, c-format
 msgid "archive recovery complete"
 msgstr "recuperación completa"
 
-#: access/transam/xlog.c:5625 access/transam/xlog.c:5891
+#: access/transam/xlog.c:5708 access/transam/xlog.c:5981
 #, c-format
 msgid "recovery stopping after reaching consistency"
 msgstr "deteniendo recuperación al alcanzar un estado consistente"
 
-#: access/transam/xlog.c:5646
+#: access/transam/xlog.c:5729
 #, c-format
 msgid "recovery stopping before WAL location (LSN) \"%X/%X\""
 msgstr "deteniendo recuperación antes de la ubicación (LSN) de WAL «%X/%X»"
 
-#: access/transam/xlog.c:5732
+#: access/transam/xlog.c:5815
 #, c-format
 msgid "recovery stopping before commit of transaction %u, time %s"
 msgstr "deteniendo recuperación antes de comprometer la transacción %u, hora %s"
 
-#: access/transam/xlog.c:5739
+#: access/transam/xlog.c:5822
 #, c-format
 msgid "recovery stopping before abort of transaction %u, time %s"
 msgstr "deteniendo recuperación antes de abortar la transacción %u, hora %s"
 
-#: access/transam/xlog.c:5785
+#: access/transam/xlog.c:5875
 #, c-format
 msgid "recovery stopping at restore point \"%s\", time %s"
 msgstr "deteniendo recuperación en el punto de recuperación «%s», hora %s"
 
-#: access/transam/xlog.c:5803
+#: access/transam/xlog.c:5893
 #, c-format
 msgid "recovery stopping after WAL location (LSN) \"%X/%X\""
 msgstr "deteniendo recuperación después de la ubicación (LSN) de WAL «%X/%X»"
 
-#: access/transam/xlog.c:5871
+#: access/transam/xlog.c:5961
 #, c-format
 msgid "recovery stopping after commit of transaction %u, time %s"
 msgstr "deteniendo recuperación de comprometer la transacción %u, hora %s"
 
-#: access/transam/xlog.c:5879
+#: access/transam/xlog.c:5969
 #, c-format
 msgid "recovery stopping after abort of transaction %u, time %s"
 msgstr "deteniendo recuperación después de abortar la transacción %u, hora %s"
 
-#: access/transam/xlog.c:5919
+#: access/transam/xlog.c:6018
+#, fuzzy, c-format
+#| msgid "starting archive recovery"
+msgid "pausing at the end of recovery"
+msgstr "comenzando proceso de recuperación"
+
+#: access/transam/xlog.c:6019
+#, fuzzy, c-format
+#| msgid "Execute pg_wal_replay_resume() to continue."
+msgid "Execute pg_wal_replay_resume() to promote."
+msgstr "Ejecute pg_wal_replay_resume() para continuar."
+
+#: access/transam/xlog.c:6022
 #, c-format
 msgid "recovery has paused"
 msgstr "la recuperación está en pausa"
 
-#: access/transam/xlog.c:5920
+#: access/transam/xlog.c:6023
 #, c-format
 msgid "Execute pg_wal_replay_resume() to continue."
 msgstr "Ejecute pg_wal_replay_resume() para continuar."
 
-#: access/transam/xlog.c:6128
+#: access/transam/xlog.c:6240
 #, c-format
 msgid "hot standby is not possible because %s = %d is a lower setting than on the master server (its value was %d)"
 msgstr "hot standby no es posible puesto que %s = %d es una configuración menor que en el servidor maestro (su valor era %d)"
 
-#: access/transam/xlog.c:6154
+#: access/transam/xlog.c:6264
 #, c-format
 msgid "WAL was generated with wal_level=minimal, data may be missing"
 msgstr "WAL fue generado con wal_level=minimal, puede haber datos faltantes"
 
-#: access/transam/xlog.c:6155
+#: access/transam/xlog.c:6265
 #, c-format
 msgid "This happens if you temporarily set wal_level=minimal without taking a new base backup."
 msgstr "Esto sucede si temporalmente define wal_level=minimal sin tomar un nuevo respaldo base."
 
-#: access/transam/xlog.c:6166
+#: access/transam/xlog.c:6276
 #, c-format
 msgid "hot standby is not possible because wal_level was not set to \"replica\" or higher on the master server"
 msgstr "hot standby no es posible porque wal_level no estaba configurado como «replica» o superior en el servidor maestro"
 
-#: access/transam/xlog.c:6167
+#: access/transam/xlog.c:6277
 #, c-format
 msgid "Either set wal_level to \"replica\" on the master, or turn off hot_standby here."
 msgstr "Defina wal_level a «replica» en el maestro, o bien desactive hot_standby en este servidor."
 
-#: access/transam/xlog.c:6231
-#, c-format
-msgid "control file contains invalid data"
+#: access/transam/xlog.c:6339
+#, fuzzy, c-format
+#| msgid "control file contains invalid data"
+msgid "control file contains invalid checkpoint location"
 msgstr "el archivo de control contiene datos no válidos"
 
-#: access/transam/xlog.c:6237
+#: access/transam/xlog.c:6350
 #, c-format
 msgid "database system was shut down at %s"
 msgstr "el sistema de bases de datos fue apagado en %s"
 
-#: access/transam/xlog.c:6242
+#: access/transam/xlog.c:6356
 #, c-format
 msgid "database system was shut down in recovery at %s"
 msgstr "el sistema de bases de datos fue apagado durante la recuperación en %s"
 
-#: access/transam/xlog.c:6246
+#: access/transam/xlog.c:6362
 #, c-format
 msgid "database system shutdown was interrupted; last known up at %s"
 msgstr "el apagado del sistema de datos fue interrumpido; última vez registrada en funcionamiento en %s"
 
-#: access/transam/xlog.c:6250
+#: access/transam/xlog.c:6368
 #, c-format
 msgid "database system was interrupted while in recovery at %s"
 msgstr "el sistema de bases de datos fue interrumpido durante la recuperación en %s"
 
-#: access/transam/xlog.c:6252
+#: access/transam/xlog.c:6370
 #, c-format
 msgid "This probably means that some data is corrupted and you will have to use the last backup for recovery."
 msgstr "Esto probablemente significa que algunos datos están corruptos y tendrá que usar el respaldo más reciente para la recuperación."
 
-#: access/transam/xlog.c:6256
+#: access/transam/xlog.c:6376
 #, c-format
 msgid "database system was interrupted while in recovery at log time %s"
 msgstr "el sistema de bases de datos fue interrumpido durante la recuperación en el instante de registro %s"
 
-#: access/transam/xlog.c:6258
+#: access/transam/xlog.c:6378
 #, c-format
 msgid "If this has occurred more than once some data might be corrupted and you might need to choose an earlier recovery target."
 msgstr "Si esto ha ocurrido más de una vez, algunos datos podrían estar corruptos y podría ser necesario escoger un punto de recuperación anterior."
 
-#: access/transam/xlog.c:6262
+#: access/transam/xlog.c:6384
 #, c-format
 msgid "database system was interrupted; last known up at %s"
 msgstr "el sistema de bases de datos fue interrumpido; última vez en funcionamiento en %s"
 
-#: access/transam/xlog.c:6318
+#: access/transam/xlog.c:6390
+#, fuzzy, c-format
+#| msgid "control file contains invalid data"
+msgid "control file contains invalid database cluster state"
+msgstr "el archivo de control contiene datos no válidos"
+
+#: access/transam/xlog.c:6447
 #, c-format
 msgid "entering standby mode"
 msgstr "entrando al modo standby"
 
-#: access/transam/xlog.c:6321
+#: access/transam/xlog.c:6450
 #, c-format
 msgid "starting point-in-time recovery to XID %u"
 msgstr "comenzando el proceso de recuperación hasta el XID %u"
 
-#: access/transam/xlog.c:6325
+#: access/transam/xlog.c:6454
 #, c-format
 msgid "starting point-in-time recovery to %s"
 msgstr "comenzando el proceso de recuperación hasta %s"
 
-#: access/transam/xlog.c:6329
+#: access/transam/xlog.c:6458
 #, c-format
 msgid "starting point-in-time recovery to \"%s\""
 msgstr "comenzando el proceso de recuperación hasta «%s»"
 
-#: access/transam/xlog.c:6333
+#: access/transam/xlog.c:6462
 #, c-format
 msgid "starting point-in-time recovery to WAL location (LSN) \"%X/%X\""
 msgstr "comenzando el proceso de recuperación punto-en-el-tiempo a la ubicación (LSN) de WAL «%X/%X»"
 
-#: access/transam/xlog.c:6338
+#: access/transam/xlog.c:6467
 #, c-format
 msgid "starting point-in-time recovery to earliest consistent point"
 msgstr "comenzando recuperación a un punto en el tiempo hasta alcanzar un estado consistente"
 
-#: access/transam/xlog.c:6341
+#: access/transam/xlog.c:6470
 #, c-format
 msgid "starting archive recovery"
 msgstr "comenzando proceso de recuperación"
 
-#: access/transam/xlog.c:6395 access/transam/xlog.c:6527
+#: access/transam/xlog.c:6529 access/transam/xlog.c:6662
 #, c-format
 msgid "checkpoint record is at %X/%X"
 msgstr "el registro del punto de control está en %X/%X"
 
-#: access/transam/xlog.c:6409
+#: access/transam/xlog.c:6544
 #, c-format
 msgid "could not find redo location referenced by checkpoint record"
 msgstr "no se pudo encontrar la ubicación de redo referida por el registro de checkpoint"
 
 # Purposefully deviate from quoting convention here, since argument is a shell command.
-#: access/transam/xlog.c:6410 access/transam/xlog.c:6420
+#: access/transam/xlog.c:6545 access/transam/xlog.c:6555
 #, c-format
 msgid ""
 "If you are restoring from a backup, touch \"%s/recovery.signal\" and add required recovery options.\n"
@@ -2329,482 +2556,498 @@ msgstr ""
 "Si no está restaurando de un respaldo, intente eliminar el archivo \"%s/backup_label\".\n"
 "Tenga cuidado: eliminar \"%s/backup_label\" resultará en un clúster corrupto si está restaurando de un respaldo."
 
-#: access/transam/xlog.c:6419
+#: access/transam/xlog.c:6554
 #, c-format
 msgid "could not locate required checkpoint record"
 msgstr "no se pudo localizar el registro del punto de control requerido"
 
-#: access/transam/xlog.c:6448 commands/tablespace.c:655
+#: access/transam/xlog.c:6583 commands/tablespace.c:654
 #, c-format
 msgid "could not create symbolic link \"%s\": %m"
 msgstr "no se pudo crear el enlace simbólico «%s»: %m"
 
-#: access/transam/xlog.c:6480 access/transam/xlog.c:6486
+#: access/transam/xlog.c:6615 access/transam/xlog.c:6621
 #, c-format
 msgid "ignoring file \"%s\" because no file \"%s\" exists"
 msgstr "ignorando el archivo «%s» porque no existe un archivo «%s»"
 
-#: access/transam/xlog.c:6482 access/transam/xlog.c:11469
+#: access/transam/xlog.c:6617 access/transam/xlog.c:11805
 #, c-format
 msgid "File \"%s\" was renamed to \"%s\"."
 msgstr "El archivo «%s» fue renombrado a «%s»."
 
-#: access/transam/xlog.c:6488
+#: access/transam/xlog.c:6623
 #, c-format
 msgid "Could not rename file \"%s\" to \"%s\": %m."
 msgstr "No se pudo renombrar el archivo de «%s» a «%s»: %m."
 
-#: access/transam/xlog.c:6539
+#: access/transam/xlog.c:6674
 #, c-format
 msgid "could not locate a valid checkpoint record"
 msgstr "no se pudo localizar un registro de punto de control válido"
 
-#: access/transam/xlog.c:6577
+#: access/transam/xlog.c:6712
 #, c-format
 msgid "requested timeline %u is not a child of this server's history"
 msgstr "el timeline solicitado %u no es un hijo de la historia de este servidor"
 
-#: access/transam/xlog.c:6579
+#: access/transam/xlog.c:6714
 #, c-format
 msgid "Latest checkpoint is at %X/%X on timeline %u, but in the history of the requested timeline, the server forked off from that timeline at %X/%X."
 msgstr "El punto de control más reciente está en %X/%X en el timeline %u, pero en la historia del timeline solicitado, el servidor se desvió desde ese timeline en %X/%X."
 
-#: access/transam/xlog.c:6595
+#: access/transam/xlog.c:6730
 #, c-format
 msgid "requested timeline %u does not contain minimum recovery point %X/%X on timeline %u"
 msgstr "el timeline solicitado %u no contiene el punto mínimo de recuperación %X/%X en el timeline %u"
 
-#: access/transam/xlog.c:6626
+#: access/transam/xlog.c:6761
 #, c-format
 msgid "invalid next transaction ID"
 msgstr "el siguiente ID de transacción no es válido"
 
-#: access/transam/xlog.c:6720
+#: access/transam/xlog.c:6855
 #, c-format
 msgid "invalid redo in checkpoint record"
 msgstr "redo no es válido en el registro de punto de control"
 
-#: access/transam/xlog.c:6731
+#: access/transam/xlog.c:6866
 #, c-format
 msgid "invalid redo record in shutdown checkpoint"
 msgstr "registro redo no es válido en el punto de control de apagado"
 
-#: access/transam/xlog.c:6759
+#: access/transam/xlog.c:6900
 #, c-format
 msgid "database system was not properly shut down; automatic recovery in progress"
 msgstr "el sistema de bases de datos no fue apagado apropiadamente; se está efectuando la recuperación automática"
 
-#: access/transam/xlog.c:6763
+#: access/transam/xlog.c:6904
 #, c-format
 msgid "crash recovery starts in timeline %u and has target timeline %u"
 msgstr "la recuperación comienza en el timeline %u y tiene un timeline de destino %u"
 
-#: access/transam/xlog.c:6806
+#: access/transam/xlog.c:6951
 #, c-format
 msgid "backup_label contains data inconsistent with control file"
 msgstr "backup_label contiene datos inconsistentes con el archivo de control"
 
-#: access/transam/xlog.c:6807
+#: access/transam/xlog.c:6952
 #, c-format
 msgid "This means that the backup is corrupted and you will have to use another backup for recovery."
 msgstr "Esto significa que el respaldo está corrupto y deberá usar otro respaldo para la recuperación."
 
-#: access/transam/xlog.c:6898
+#: access/transam/xlog.c:7043
 #, c-format
 msgid "initializing for hot standby"
 msgstr "inicializando para hot standby"
 
-#: access/transam/xlog.c:7030
+#: access/transam/xlog.c:7176
 #, c-format
 msgid "redo starts at %X/%X"
 msgstr "redo comienza en %X/%X"
 
-#: access/transam/xlog.c:7254
+#: access/transam/xlog.c:7400
 #, c-format
 msgid "requested recovery stop point is before consistent recovery point"
 msgstr "el punto de detención de recuperación pedido es antes del punto de recuperación consistente"
 
-#: access/transam/xlog.c:7292
+#: access/transam/xlog.c:7438
 #, c-format
 msgid "redo done at %X/%X"
 msgstr "redo listo en %X/%X"
 
-#: access/transam/xlog.c:7297
+#: access/transam/xlog.c:7443
 #, c-format
 msgid "last completed transaction was at log time %s"
 msgstr "última transacción completada al tiempo de registro %s"
 
-#: access/transam/xlog.c:7306
+#: access/transam/xlog.c:7452
 #, c-format
 msgid "redo is not required"
 msgstr "no se requiere redo"
 
-#: access/transam/xlog.c:7381 access/transam/xlog.c:7385
+#: access/transam/xlog.c:7464
+#, c-format
+msgid "recovery ended before configured recovery target was reached"
+msgstr ""
+
+#: access/transam/xlog.c:7543 access/transam/xlog.c:7547
 #, c-format
 msgid "WAL ends before end of online backup"
 msgstr "WAL termina antes del fin del respaldo en línea"
 
-#: access/transam/xlog.c:7382
+#: access/transam/xlog.c:7544
 #, c-format
 msgid "All WAL generated while online backup was taken must be available at recovery."
 msgstr "Todo el WAL generado durante el respaldo en línea debe estar disponible durante la recuperación."
 
-#: access/transam/xlog.c:7386
+#: access/transam/xlog.c:7548
 #, c-format
 msgid "Online backup started with pg_start_backup() must be ended with pg_stop_backup(), and all WAL up to that point must be available at recovery."
 msgstr "Un respaldo en línea iniciado con pg_start_backup() debe ser terminado con pg_stop_backup(), y todos los archivos WAL hasta ese punto deben estar disponibles durante la recuperación."
 
-#: access/transam/xlog.c:7389
+#: access/transam/xlog.c:7551
 #, c-format
 msgid "WAL ends before consistent recovery point"
 msgstr "WAL termina antes del punto de recuperación consistente"
 
-#: access/transam/xlog.c:7423
+#: access/transam/xlog.c:7586
 #, c-format
 msgid "selected new timeline ID: %u"
 msgstr "seleccionado nuevo ID de timeline: %u"
 
-#: access/transam/xlog.c:7860
+#: access/transam/xlog.c:8034
 #, c-format
 msgid "consistent recovery state reached at %X/%X"
 msgstr "el estado de recuperación consistente fue alcanzado en %X/%X"
 
-#: access/transam/xlog.c:8052
+#: access/transam/xlog.c:8244
 #, c-format
 msgid "invalid primary checkpoint link in control file"
 msgstr "el enlace de punto de control primario en archivo de control no es válido"
 
-#: access/transam/xlog.c:8056
+#: access/transam/xlog.c:8248
 #, c-format
 msgid "invalid checkpoint link in backup_label file"
 msgstr "el enlace del punto de control en backup_label no es válido"
 
-#: access/transam/xlog.c:8073
+#: access/transam/xlog.c:8266
 #, c-format
 msgid "invalid primary checkpoint record"
 msgstr "el registro del punto de control primario no es válido"
 
-#: access/transam/xlog.c:8077
+#: access/transam/xlog.c:8270
 #, c-format
 msgid "invalid checkpoint record"
 msgstr "el registro del punto de control no es válido"
 
-#: access/transam/xlog.c:8088
+#: access/transam/xlog.c:8281
 #, c-format
 msgid "invalid resource manager ID in primary checkpoint record"
 msgstr "el ID de gestor de recursos en el registro del punto de control primario no es válido"
 
-#: access/transam/xlog.c:8092
+#: access/transam/xlog.c:8285
 #, c-format
 msgid "invalid resource manager ID in checkpoint record"
 msgstr "el ID de gestor de recursos en el registro del punto de control no es válido"
 
-#: access/transam/xlog.c:8105
+#: access/transam/xlog.c:8298
 #, c-format
 msgid "invalid xl_info in primary checkpoint record"
 msgstr "xl_info en el registro del punto de control primario no es válido"
 
-#: access/transam/xlog.c:8109
+#: access/transam/xlog.c:8302
 #, c-format
 msgid "invalid xl_info in checkpoint record"
 msgstr "xl_info en el registro del punto de control no es válido"
 
-#: access/transam/xlog.c:8120
+#: access/transam/xlog.c:8313
 #, c-format
 msgid "invalid length of primary checkpoint record"
 msgstr "la longitud del registro del punto de control primario no es válida"
 
-#: access/transam/xlog.c:8124
+#: access/transam/xlog.c:8317
 #, c-format
 msgid "invalid length of checkpoint record"
 msgstr "la longitud del registro de punto de control no es válida"
 
-#: access/transam/xlog.c:8304
+#: access/transam/xlog.c:8497
 #, c-format
 msgid "shutting down"
 msgstr "apagando"
 
-#: access/transam/xlog.c:8624
+#: access/transam/xlog.c:8817
 #, c-format
 msgid "checkpoint skipped because system is idle"
 msgstr "omitiendo checkpoint porque el sistema está inactivo"
 
-#: access/transam/xlog.c:8824
+#: access/transam/xlog.c:9017
 #, c-format
 msgid "concurrent write-ahead log activity while database system is shutting down"
 msgstr "hay actividad de WAL mientras el sistema se está apagando"
 
-#: access/transam/xlog.c:9080
+#: access/transam/xlog.c:9274
 #, c-format
 msgid "skipping restartpoint, recovery has already ended"
 msgstr "omitiendo el restartpoint, la recuperación ya ha terminado"
 
-#: access/transam/xlog.c:9103
+#: access/transam/xlog.c:9297
 #, c-format
 msgid "skipping restartpoint, already performed at %X/%X"
 msgstr "omitiendo el restartpoint, ya fue llevado a cabo en %X/%X"
 
-#: access/transam/xlog.c:9270
+#: access/transam/xlog.c:9465
 #, c-format
 msgid "recovery restart point at %X/%X"
 msgstr "restartpoint de recuperación en %X/%X"
 
-#: access/transam/xlog.c:9272
+#: access/transam/xlog.c:9467
 #, c-format
 msgid "Last completed transaction was at log time %s."
 msgstr "Última transacción completada al tiempo de registro %s."
 
-#: access/transam/xlog.c:9406
+#: access/transam/xlog.c:9696
 #, c-format
 msgid "restore point \"%s\" created at %X/%X"
 msgstr "punto de recuperación «%s» creado en %X/%X"
 
-#: access/transam/xlog.c:9547
+#: access/transam/xlog.c:9837
 #, c-format
 msgid "unexpected previous timeline ID %u (current timeline ID %u) in checkpoint record"
 msgstr "ID de timeline previo %u inesperado (timeline actual %u) en el registro de punto de control"
 
-#: access/transam/xlog.c:9556
+#: access/transam/xlog.c:9846
 #, c-format
 msgid "unexpected timeline ID %u (after %u) in checkpoint record"
 msgstr "ID de timeline %u inesperado (después de %u) en el registro de punto de control"
 
-#: access/transam/xlog.c:9572
+#: access/transam/xlog.c:9862
 #, c-format
 msgid "unexpected timeline ID %u in checkpoint record, before reaching minimum recovery point %X/%X on timeline %u"
 msgstr "timeline ID %u inesperado en registro de checkpoint, antes de alcanzar el punto mínimo de recuperación %X/%X en el timeline %u"
 
-#: access/transam/xlog.c:9648
+#: access/transam/xlog.c:9938
 #, c-format
 msgid "online backup was canceled, recovery cannot continue"
 msgstr "el respaldo en línea fue cancelado, la recuperación no puede continuar"
 
-#: access/transam/xlog.c:9702 access/transam/xlog.c:9756
-#: access/transam/xlog.c:9779
+#: access/transam/xlog.c:9992 access/transam/xlog.c:10046
+#: access/transam/xlog.c:10069
 #, c-format
 msgid "unexpected timeline ID %u (should be %u) in checkpoint record"
 msgstr "ID de timeline %u inesperado (debería ser %u) en el registro de punto de control"
 
-#: access/transam/xlog.c:10099
+#: access/transam/xlog.c:10395
 #, c-format
 msgid "could not fsync write-through file \"%s\": %m"
 msgstr "no se pudo sincronizar (fsync write-through) el archivo «%s»: %m"
 
-#: access/transam/xlog.c:10108
+#: access/transam/xlog.c:10401
 #, c-format
 msgid "could not fdatasync file \"%s\": %m"
 msgstr "no se pudo sincronizar (fdatasync) archivo «%s»: %m"
 
-#: access/transam/xlog.c:10201 access/transam/xlog.c:10730
-#: access/transam/xlogfuncs.c:290 access/transam/xlogfuncs.c:317
-#: access/transam/xlogfuncs.c:356 access/transam/xlogfuncs.c:377
-#: access/transam/xlogfuncs.c:398
+#: access/transam/xlog.c:10500 access/transam/xlog.c:11038
+#: access/transam/xlogfuncs.c:275 access/transam/xlogfuncs.c:302
+#: access/transam/xlogfuncs.c:341 access/transam/xlogfuncs.c:362
+#: access/transam/xlogfuncs.c:383
 #, c-format
 msgid "WAL control functions cannot be executed during recovery."
 msgstr "Las funciones de control de WAL no pueden ejecutarse durante la recuperación."
 
-#: access/transam/xlog.c:10210 access/transam/xlog.c:10739
+#: access/transam/xlog.c:10509 access/transam/xlog.c:11047
 #, c-format
 msgid "WAL level not sufficient for making an online backup"
 msgstr "el nivel de WAL no es suficiente para hacer un respaldo en línea"
 
-#: access/transam/xlog.c:10211 access/transam/xlog.c:10740
-#: access/transam/xlogfuncs.c:323
+#: access/transam/xlog.c:10510 access/transam/xlog.c:11048
+#: access/transam/xlogfuncs.c:308
 #, c-format
 msgid "wal_level must be set to \"replica\" or \"logical\" at server start."
 msgstr "wal_level debe ser definido a «replica» o «logical» al inicio del servidor."
 
-#: access/transam/xlog.c:10216
+#: access/transam/xlog.c:10515
 #, c-format
 msgid "backup label too long (max %d bytes)"
 msgstr "la etiqueta de respaldo es demasiado larga (máximo %d bytes)"
 
-#: access/transam/xlog.c:10253 access/transam/xlog.c:10529
-#: access/transam/xlog.c:10567
+#: access/transam/xlog.c:10552 access/transam/xlog.c:10837
+#: access/transam/xlog.c:10875
 #, c-format
 msgid "a backup is already in progress"
 msgstr "ya hay un respaldo en curso"
 
-#: access/transam/xlog.c:10254
+#: access/transam/xlog.c:10553
 #, c-format
 msgid "Run pg_stop_backup() and try again."
 msgstr "Ejecute pg_stop_backup() e intente nuevamente."
 
-#: access/transam/xlog.c:10350
+#: access/transam/xlog.c:10649
 #, c-format
 msgid "WAL generated with full_page_writes=off was replayed since last restartpoint"
 msgstr "el WAL generado con full_page_writes=off fue restaurado desde el último restartpoint"
 
-#: access/transam/xlog.c:10352 access/transam/xlog.c:10935
+#: access/transam/xlog.c:10651 access/transam/xlog.c:11243
 #, c-format
 msgid "This means that the backup being taken on the standby is corrupt and should not be used. Enable full_page_writes and run CHECKPOINT on the master, and then try an online backup again."
 msgstr "Esto significa que el respaldo que estaba siendo tomado en el standby está corrupto y no debería usarse. Active full_page_writes y ejecute CHECKPOINT en el maestro, luego trate de ejecutar un respaldo en línea nuevamente."
 
-#: access/transam/xlog.c:10427 replication/basebackup.c:1251
-#: utils/adt/misc.c:329
+#: access/transam/xlog.c:10734 replication/basebackup.c:1420
+#: utils/adt/misc.c:341
 #, c-format
 msgid "symbolic link \"%s\" target is too long"
 msgstr "la ruta «%s» del enlace simbólico es demasiado larga"
 
-#: access/transam/xlog.c:10479 commands/tablespace.c:403
-#: commands/tablespace.c:567 replication/basebackup.c:1266 utils/adt/misc.c:337
+#: access/transam/xlog.c:10787 commands/tablespace.c:402
+#: commands/tablespace.c:566 replication/basebackup.c:1435 utils/adt/misc.c:349
 #, c-format
 msgid "tablespaces are not supported on this platform"
 msgstr "tablespaces no están soportados en esta plataforma"
 
-#: access/transam/xlog.c:10530 access/transam/xlog.c:10568
+#: access/transam/xlog.c:10838 access/transam/xlog.c:10876
 #, c-format
 msgid "If you're sure there is no backup in progress, remove file \"%s\" and try again."
 msgstr "Si está seguro que no hay un respaldo en curso, elimine el archivo «%s» e intente nuevamente."
 
-#: access/transam/xlog.c:10755
+#: access/transam/xlog.c:11063
 #, c-format
 msgid "exclusive backup not in progress"
 msgstr "no hay un respaldo exclusivo en curso"
 
-#: access/transam/xlog.c:10782
+#: access/transam/xlog.c:11090
 #, c-format
 msgid "a backup is not in progress"
 msgstr "no hay un respaldo en curso"
 
-#: access/transam/xlog.c:10868 access/transam/xlog.c:10881
-#: access/transam/xlog.c:11242 access/transam/xlog.c:11248
-#: access/transam/xlog.c:11296 access/transam/xlog.c:11369
-#: access/transam/xlogfuncs.c:693
+#: access/transam/xlog.c:11176 access/transam/xlog.c:11189
+#: access/transam/xlog.c:11578 access/transam/xlog.c:11584
+#: access/transam/xlog.c:11632 access/transam/xlog.c:11705
+#: access/transam/xlogfuncs.c:692
 #, c-format
 msgid "invalid data in file \"%s\""
 msgstr "datos no válidos en archivo «%s»"
 
-#: access/transam/xlog.c:10885 replication/basebackup.c:1103
+#: access/transam/xlog.c:11193 replication/basebackup.c:1268
 #, c-format
 msgid "the standby was promoted during online backup"
 msgstr "el standby fue promovido durante el respaldo en línea"
 
-#: access/transam/xlog.c:10886 replication/basebackup.c:1104
+#: access/transam/xlog.c:11194 replication/basebackup.c:1269
 #, c-format
 msgid "This means that the backup being taken is corrupt and should not be used. Try taking another online backup."
 msgstr "Esto significa que el respaldo que se estaba tomando está corrupto y no debería ser usado. Trate de ejecutar un nuevo respaldo en línea."
 
-#: access/transam/xlog.c:10933
+#: access/transam/xlog.c:11241
 #, c-format
 msgid "WAL generated with full_page_writes=off was replayed during online backup"
 msgstr "el WAL generado con full_page_writes=off fue restaurado durante el respaldo en línea"
 
-#: access/transam/xlog.c:11053
+#: access/transam/xlog.c:11361
 #, c-format
 msgid "base backup done, waiting for required WAL segments to be archived"
 msgstr "respaldo base completo, esperando que se archiven los segmentos WAL requeridos"
 
-#: access/transam/xlog.c:11063
+#: access/transam/xlog.c:11373
 #, c-format
 msgid "still waiting for all required WAL segments to be archived (%d seconds elapsed)"
 msgstr "todavía en espera de que todos los segmentos WAL requeridos sean archivados (han pasado %d segundos)"
 
-#: access/transam/xlog.c:11065
+#: access/transam/xlog.c:11375
 #, c-format
 msgid "Check that your archive_command is executing properly.  You can safely cancel this backup, but the database backup will not be usable without all the WAL segments."
 msgstr "Verifique que su archive_command se esté ejecutando con normalidad.  Puede cancelar este respaldo con confianza, pero el respaldo de la base de datos no será utilizable a menos que disponga de todos los segmentos de WAL."
 
-#: access/transam/xlog.c:11072
+#: access/transam/xlog.c:11382
 #, c-format
 msgid "all required WAL segments have been archived"
 msgstr "todos los segmentos de WAL requeridos han sido archivados"
 
-#: access/transam/xlog.c:11076
+#: access/transam/xlog.c:11386
 #, c-format
 msgid "WAL archiving is not enabled; you must ensure that all required WAL segments are copied through other means to complete the backup"
 msgstr "el archivado de WAL no está activo; debe asegurarse que todos los segmentos WAL requeridos se copian por algún otro mecanismo para completar el respaldo"
 
-#: access/transam/xlog.c:11279
+#: access/transam/xlog.c:11439
+#, c-format
+msgid "aborting backup due to backend exiting before pg_stop_backup was called"
+msgstr "abortando el backup porque el proceso servidor terminó antes de que pg_stop_backup fuera invocada"
+
+#: access/transam/xlog.c:11615
 #, c-format
 msgid "backup time %s in file \"%s\""
 msgstr "tiempo de respaldo %s en archivo «%s»"
 
-#: access/transam/xlog.c:11284
+#: access/transam/xlog.c:11620
 #, c-format
 msgid "backup label %s in file \"%s\""
 msgstr "etiqueta de respaldo %s en archivo «%s»"
 
-#: access/transam/xlog.c:11297
+#: access/transam/xlog.c:11633
 #, c-format
 msgid "Timeline ID parsed is %u, but expected %u."
 msgstr "El ID de timeline interpretado es %u, pero se esperaba %u."
 
-#: access/transam/xlog.c:11301
+#: access/transam/xlog.c:11637
 #, c-format
 msgid "backup timeline %u in file \"%s\""
 msgstr "línea de tiempo %u en archivo «%s»"
 
 #. translator: %s is a WAL record description
-#: access/transam/xlog.c:11409
+#: access/transam/xlog.c:11745
 #, c-format
 msgid "WAL redo at %X/%X for %s"
 msgstr "redo WAL en %X/%X para %s"
 
-#: access/transam/xlog.c:11458
+#: access/transam/xlog.c:11794
 #, c-format
 msgid "online backup mode was not canceled"
 msgstr "el modo de respaldo en línea no fue cancelado"
 
-#: access/transam/xlog.c:11459
+#: access/transam/xlog.c:11795
 #, c-format
 msgid "File \"%s\" could not be renamed to \"%s\": %m."
 msgstr "El archivo «%s» no se pudo renombrar a «%s»: %m."
 
-#: access/transam/xlog.c:11468 access/transam/xlog.c:11480
-#: access/transam/xlog.c:11490
+#: access/transam/xlog.c:11804 access/transam/xlog.c:11816
+#: access/transam/xlog.c:11826
 #, c-format
 msgid "online backup mode canceled"
 msgstr "el modo de respaldo en línea fue cancelado"
 
-#: access/transam/xlog.c:11481
+#: access/transam/xlog.c:11817
 #, c-format
 msgid "Files \"%s\" and \"%s\" were renamed to \"%s\" and \"%s\", respectively."
 msgstr "Los archivos «%s» y «%s» fueron renombrados a «%s» y «%s», respectivamente."
 
-#: access/transam/xlog.c:11491
+#: access/transam/xlog.c:11827
 #, c-format
 msgid "File \"%s\" was renamed to \"%s\", but file \"%s\" could not be renamed to \"%s\": %m."
 msgstr "El archivo «%s» fue renombrado a «%s», pero el archivo «%s» no pudo ser renombrado a «%s»: %m."
 
 # XXX why talk about "log segment" instead of "file"?
-#: access/transam/xlog.c:11624
+#: access/transam/xlog.c:11960 access/transam/xlogutils.c:971
 #, c-format
 msgid "could not read from log segment %s, offset %u: %m"
 msgstr "no se pudo leer del archivo de segmento %s, posición %u: %m"
 
 # XXX why talk about "log segment" instead of "file"?
-#: access/transam/xlog.c:11630 replication/walsender.c:2490
+#: access/transam/xlog.c:11966 access/transam/xlogutils.c:978
 #, c-format
 msgid "could not read from log segment %s, offset %u: read %d of %zu"
 msgstr "no se pudo leer del archivo de segmento %s, posición %u: leídos %d de %zu"
 
-#: access/transam/xlog.c:12163
+#: access/transam/xlog.c:12495
+#, fuzzy, c-format
+#| msgid "received fast shutdown request"
+msgid "wal receiver process shutdown requested"
+msgstr "se recibió petición de apagado rápido"
+
+#: access/transam/xlog.c:12601
 #, c-format
 msgid "received promote request"
 msgstr "se recibió petición de promoción"
 
-#: access/transam/xlog.c:12176
+#: access/transam/xlog.c:12614
 #, c-format
 msgid "promote trigger file found: %s"
 msgstr "se encontró el archivo disparador de promoción: %s"
 
-#: access/transam/xlog.c:12185
+#: access/transam/xlog.c:12623
 #, c-format
 msgid "could not stat promote trigger file \"%s\": %m"
 msgstr "no se pudo hacer stat al archivo disparador de promoción «%s»: %m"
 
-#: access/transam/xlogarchive.c:243
+#: access/transam/xlogarchive.c:205
 #, c-format
 msgid "archive file \"%s\" has wrong size: %lu instead of %lu"
 msgstr "el archivo «%s» tiene tamaño erróneo: %lu en lugar de %lu"
 
-#: access/transam/xlogarchive.c:252
+#: access/transam/xlogarchive.c:214
 #, c-format
 msgid "restored log file \"%s\" from archive"
 msgstr "se ha restaurado el archivo «%s» desde el área de archivado"
 
-#: access/transam/xlogarchive.c:297
+#: access/transam/xlogarchive.c:259
 #, c-format
 msgid "could not restore file \"%s\" from archive: %s"
 msgstr "no se pudo recuperar el archivo «%s»: %s"
@@ -2812,286 +3055,284 @@ msgstr "no se pudo recuperar el archivo «%s»: %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:406
+#: access/transam/xlogarchive.c:368
 #, c-format
 msgid "%s \"%s\": %s"
 msgstr "%s «%s»: %s"
 
-#: access/transam/xlogarchive.c:516 access/transam/xlogarchive.c:580
+#: access/transam/xlogarchive.c:478 access/transam/xlogarchive.c:542
 #, c-format
 msgid "could not create archive status file \"%s\": %m"
 msgstr "no se pudo crear el archivo de estado «%s»: %m"
 
-#: access/transam/xlogarchive.c:524 access/transam/xlogarchive.c:588
+#: access/transam/xlogarchive.c:486 access/transam/xlogarchive.c:550
 #, c-format
 msgid "could not write archive status file \"%s\": %m"
 msgstr "no se pudo escribir el archivo de estado «%s»: %m"
 
-#: access/transam/xlogfuncs.c:57
-#, c-format
-msgid "aborting backup due to backend exiting before pg_stop_backup was called"
-msgstr "abortando el backup porque el proceso servidor terminó antes de que pg_stop_backup fuera invocada"
-
-#: access/transam/xlogfuncs.c:87
+#: access/transam/xlogfuncs.c:74
 #, c-format
 msgid "a backup is already in progress in this session"
 msgstr "ya hay un respaldo en curso en esta sesión"
 
-#: access/transam/xlogfuncs.c:145 access/transam/xlogfuncs.c:227
+#: access/transam/xlogfuncs.c:132 access/transam/xlogfuncs.c:213
 #, c-format
 msgid "non-exclusive backup in progress"
 msgstr "respaldo no-exclusivo en curso"
 
-#: access/transam/xlogfuncs.c:146 access/transam/xlogfuncs.c:228
+#: access/transam/xlogfuncs.c:133 access/transam/xlogfuncs.c:214
 #, c-format
 msgid "Did you mean to use pg_stop_backup('f')?"
 msgstr "¿Quiso usar pg_stop_backup('f')?"
 
-#: access/transam/xlogfuncs.c:198 commands/event_trigger.c:1472
-#: commands/event_trigger.c:2024 commands/extension.c:1908
-#: commands/extension.c:2017 commands/extension.c:2241 commands/prepare.c:712
-#: executor/execExpr.c:2201 executor/execSRF.c:720 executor/functions.c:1023
-#: foreign/foreign.c:520 libpq/hba.c:2666 replication/logical/launcher.c:1112
-#: replication/logical/logicalfuncs.c:176 replication/logical/origin.c:1487
-#: replication/slotfuncs.c:236 replication/walsender.c:3246
-#: utils/adt/jsonfuncs.c:1700 utils/adt/jsonfuncs.c:1831
-#: utils/adt/jsonfuncs.c:2019 utils/adt/jsonfuncs.c:2146
-#: utils/adt/jsonfuncs.c:3608 utils/adt/pgstatfuncs.c:458
-#: utils/adt/pgstatfuncs.c:563 utils/fmgr/funcapi.c:63 utils/misc/guc.c:9443
-#: utils/mmgr/portalmem.c:1134
+#: access/transam/xlogfuncs.c:185 commands/event_trigger.c:1332
+#: commands/event_trigger.c:1884 commands/extension.c:1931
+#: commands/extension.c:2039 commands/extension.c:2324 commands/prepare.c:712
+#: executor/execExpr.c:2203 executor/execSRF.c:728 executor/functions.c:1046
+#: foreign/foreign.c:520 libpq/hba.c:2666 replication/logical/launcher.c:1086
+#: replication/logical/logicalfuncs.c:157 replication/logical/origin.c:1486
+#: replication/slotfuncs.c:251 replication/walsender.c:3275
+#: storage/ipc/shmem.c:550 utils/adt/datetime.c:4778 utils/adt/genfile.c:469
+#: utils/adt/genfile.c:552 utils/adt/jsonfuncs.c:1792
+#: utils/adt/jsonfuncs.c:1904 utils/adt/jsonfuncs.c:2092
+#: utils/adt/jsonfuncs.c:2201 utils/adt/jsonfuncs.c:3663 utils/adt/misc.c:214
+#: utils/adt/pgstatfuncs.c:476 utils/adt/pgstatfuncs.c:584
+#: utils/adt/pgstatfuncs.c:1713 utils/fmgr/funcapi.c:72 utils/misc/guc.c:9658
+#: utils/mmgr/portalmem.c:1136
 #, c-format
 msgid "set-valued function called in context that cannot accept a set"
 msgstr "se llamó una función que retorna un conjunto en un contexto que no puede aceptarlo"
 
-#: access/transam/xlogfuncs.c:202 commands/event_trigger.c:1476
-#: commands/event_trigger.c:2028 commands/extension.c:1912
-#: commands/extension.c:2021 commands/extension.c:2245 commands/prepare.c:716
-#: foreign/foreign.c:525 libpq/hba.c:2670 replication/logical/launcher.c:1116
-#: replication/logical/logicalfuncs.c:180 replication/logical/origin.c:1491
-#: replication/slotfuncs.c:240 replication/walsender.c:3250
-#: utils/adt/pgstatfuncs.c:462 utils/adt/pgstatfuncs.c:567
-#: utils/misc/guc.c:9447 utils/misc/pg_config.c:43 utils/mmgr/portalmem.c:1138
+#: access/transam/xlogfuncs.c:189 commands/event_trigger.c:1336
+#: commands/event_trigger.c:1888 commands/extension.c:1935
+#: commands/extension.c:2043 commands/extension.c:2328 commands/prepare.c:716
+#: foreign/foreign.c:525 libpq/hba.c:2670 replication/logical/launcher.c:1090
+#: replication/logical/logicalfuncs.c:161 replication/logical/origin.c:1490
+#: replication/slotfuncs.c:255 replication/walsender.c:3279
+#: storage/ipc/shmem.c:554 utils/adt/datetime.c:4782 utils/adt/genfile.c:473
+#: utils/adt/genfile.c:556 utils/adt/misc.c:218 utils/adt/pgstatfuncs.c:480
+#: utils/adt/pgstatfuncs.c:588 utils/adt/pgstatfuncs.c:1717
+#: utils/misc/guc.c:9662 utils/misc/pg_config.c:43 utils/mmgr/portalmem.c:1140
 #, c-format
 msgid "materialize mode required, but it is not allowed in this context"
 msgstr "se requiere un nodo «materialize», pero no está permitido en este contexto"
 
-#: access/transam/xlogfuncs.c:244
+#: access/transam/xlogfuncs.c:230
 #, c-format
 msgid "non-exclusive backup is not in progress"
 msgstr "no hay un respaldo no-exclusivo en progreso"
 
-#: access/transam/xlogfuncs.c:245
+#: access/transam/xlogfuncs.c:231
 #, c-format
 msgid "Did you mean to use pg_stop_backup('t')?"
 msgstr "¿Quiso usar pg_stop_backup('t')?"
 
-#: access/transam/xlogfuncs.c:322
+#: access/transam/xlogfuncs.c:307
 #, c-format
 msgid "WAL level not sufficient for creating a restore point"
 msgstr "el nivel de WAL no es suficiente para crear un punto de recuperación"
 
-#: access/transam/xlogfuncs.c:330
+#: access/transam/xlogfuncs.c:315
 #, c-format
 msgid "value too long for restore point (maximum %d characters)"
 msgstr "el valor es demasiado largo para un punto de recuperación (máximo %d caracteres)"
 
-#: access/transam/xlogfuncs.c:468 access/transam/xlogfuncs.c:525
+#: access/transam/xlogfuncs.c:453 access/transam/xlogfuncs.c:510
 #, c-format
 msgid "%s cannot be executed during recovery."
 msgstr "No se puede ejecutar %s durante la recuperación."
 
-#: access/transam/xlogfuncs.c:546 access/transam/xlogfuncs.c:566
-#: access/transam/xlogfuncs.c:583 access/transam/xlogfuncs.c:723
+#: access/transam/xlogfuncs.c:531 access/transam/xlogfuncs.c:558
+#: access/transam/xlogfuncs.c:582 access/transam/xlogfuncs.c:722
 #, c-format
 msgid "recovery is not in progress"
 msgstr "la recuperación no está en proceso"
 
-#: access/transam/xlogfuncs.c:547 access/transam/xlogfuncs.c:567
-#: access/transam/xlogfuncs.c:584 access/transam/xlogfuncs.c:724
+#: access/transam/xlogfuncs.c:532 access/transam/xlogfuncs.c:559
+#: access/transam/xlogfuncs.c:583 access/transam/xlogfuncs.c:723
 #, c-format
 msgid "Recovery control functions can only be executed during recovery."
 msgstr "Las funciones de control de recuperación sólo pueden ejecutarse durante la recuperación."
 
-#: access/transam/xlogfuncs.c:729
+#: access/transam/xlogfuncs.c:537 access/transam/xlogfuncs.c:564
+#, c-format
+msgid "standby promotion is ongoing"
+msgstr ""
+
+#: access/transam/xlogfuncs.c:538 access/transam/xlogfuncs.c:565
+#, fuzzy, c-format
+#| msgid "%s cannot be executed from a function"
+msgid "%s cannot be executed after promotion is triggered."
+msgstr "%s no puede ser ejecutado desde una función"
+
+#: access/transam/xlogfuncs.c:728
 #, c-format
-#| msgid "\"wait_seconds\" cannot be negative or equal zero"
 msgid "\"wait_seconds\" must not be negative or zero"
 msgstr "«wait_seconds» no puede ser negativo o cero"
 
-#: access/transam/xlogfuncs.c:749 storage/ipc/signalfuncs.c:164
+#: access/transam/xlogfuncs.c:748 storage/ipc/signalfuncs.c:164
 #, c-format
 msgid "failed to send signal to postmaster: %m"
 msgstr "no se pudo enviar señal a postmaster: %m"
 
-#: access/transam/xlogfuncs.c:785
+#: access/transam/xlogfuncs.c:784
 #, c-format
 msgid "server did not promote within %d seconds"
 msgstr "el servidor no promovió en %d segundos"
 
-#: access/transam/xlogreader.c:299
+#: access/transam/xlogreader.c:347
 #, c-format
 msgid "invalid record offset at %X/%X"
 msgstr "posición de registro no válida en %X/%X"
 
-#: access/transam/xlogreader.c:307
+#: access/transam/xlogreader.c:355
 #, c-format
 msgid "contrecord is requested by %X/%X"
 msgstr "contrecord solicitado por %X/%X"
 
-#: access/transam/xlogreader.c:348 access/transam/xlogreader.c:645
+#: access/transam/xlogreader.c:396 access/transam/xlogreader.c:693
 #, c-format
 msgid "invalid record length at %X/%X: wanted %u, got %u"
 msgstr "largo de registro no válido en %X/%X: se esperaba %u, se obtuvo %u"
 
-#: access/transam/xlogreader.c:372
+#: access/transam/xlogreader.c:420
 #, c-format
 msgid "record length %u at %X/%X too long"
 msgstr "largo de registro %u en %X/%X demasiado largo"
 
-#: access/transam/xlogreader.c:404
+#: access/transam/xlogreader.c:452
 #, c-format
 msgid "there is no contrecord flag at %X/%X"
 msgstr "no hay bandera de contrecord en %X/%X"
 
-#: access/transam/xlogreader.c:417
+#: access/transam/xlogreader.c:465
 #, c-format
 msgid "invalid contrecord length %u at %X/%X"
 msgstr "largo de contrecord %u no válido en %X/%X"
 
-#: access/transam/xlogreader.c:653
+#: access/transam/xlogreader.c:701
 #, c-format
 msgid "invalid resource manager ID %u at %X/%X"
 msgstr "ID de gestor de recursos %u no válido en %X/%X"
 
-#: access/transam/xlogreader.c:667 access/transam/xlogreader.c:684
+#: access/transam/xlogreader.c:715 access/transam/xlogreader.c:732
 #, c-format
 msgid "record with incorrect prev-link %X/%X at %X/%X"
 msgstr "registro con prev-link %X/%X incorrecto en %X/%X"
 
-#: access/transam/xlogreader.c:721
+#: access/transam/xlogreader.c:769
 #, c-format
 msgid "incorrect resource manager data checksum in record at %X/%X"
 msgstr "suma de verificación de los datos del gestor de recursos incorrecta en el registro en %X/%X"
 
-#: access/transam/xlogreader.c:758
+#: access/transam/xlogreader.c:806
 #, c-format
 msgid "invalid magic number %04X in log segment %s, offset %u"
 msgstr "número mágico %04X no válido en archivo %s, posición %u"
 
-#: access/transam/xlogreader.c:772 access/transam/xlogreader.c:823
+#: access/transam/xlogreader.c:820 access/transam/xlogreader.c:861
 #, c-format
 msgid "invalid info bits %04X in log segment %s, offset %u"
 msgstr "info bits %04X no válidos en archivo %s, posición %u"
 
-#: access/transam/xlogreader.c:798
-#, c-format
-msgid "WAL file is from different database system: WAL file database system identifier is %s, pg_control database system identifier is %s"
+#: access/transam/xlogreader.c:835
+#, fuzzy, c-format
+#| msgid "WAL file is from different database system: WAL file database system identifier is %s, pg_control database system identifier is %s"
+msgid "WAL file is from different database system: WAL file database system identifier is %llu, pg_control database system identifier is %llu"
 msgstr "archivo WAL es de un sistema de bases de datos distinto: identificador de sistema en archivo WAL es %s, identificador en pg_control es %s"
 
-#: access/transam/xlogreader.c:805
+#: access/transam/xlogreader.c:843
 #, c-format
 msgid "WAL file is from different database system: incorrect segment size in page header"
 msgstr "archivo WAL es de un sistema de bases de datos distinto: tamaño de segmento incorrecto en cabecera de paǵina"
 
-#: access/transam/xlogreader.c:811
+#: access/transam/xlogreader.c:849
 #, c-format
 msgid "WAL file is from different database system: incorrect XLOG_BLCKSZ in page header"
 msgstr "archivo WAL es de un sistema de bases de datos distinto: XLOG_BLCKSZ incorrecto en cabecera de paǵina"
 
-#: access/transam/xlogreader.c:842
+#: access/transam/xlogreader.c:880
 #, c-format
 msgid "unexpected pageaddr %X/%X in log segment %s, offset %u"
 msgstr "pageaddr %X/%X inesperado en archivo %s, posición %u"
 
-#: access/transam/xlogreader.c:867
+#: access/transam/xlogreader.c:905
 #, c-format
 msgid "out-of-sequence timeline ID %u (after %u) in log segment %s, offset %u"
 msgstr "ID de timeline %u fuera de secuencia (después de %u) en archivo %s, posición %u"
 
-#: access/transam/xlogreader.c:1112
+#: access/transam/xlogreader.c:1245
 #, c-format
 msgid "out-of-order block_id %u at %X/%X"
 msgstr "block_id %u fuera de orden en %X/%X"
 
-#: access/transam/xlogreader.c:1135
+#: access/transam/xlogreader.c:1268
 #, c-format
 msgid "BKPBLOCK_HAS_DATA set, but no data included at %X/%X"
 msgstr "BKPBLOCK_HAS_DATA está definido, pero no hay datos en %X/%X"
 
-#: access/transam/xlogreader.c:1142
+#: access/transam/xlogreader.c:1275
 #, c-format
 msgid "BKPBLOCK_HAS_DATA not set, but data length is %u at %X/%X"
 msgstr "BKPBLOCK_HAS_DATA no está definido, pero el largo de los datos es %u en %X/%X"
 
-#: access/transam/xlogreader.c:1178
+#: access/transam/xlogreader.c:1311
 #, c-format
 msgid "BKPIMAGE_HAS_HOLE set, but hole offset %u length %u block image length %u at %X/%X"
 msgstr "BKPIMAGE_HAS_HOLE está definido, pero posición del agujero es %u largo %u largo de imagen %u en %X/%X"
 
-#: access/transam/xlogreader.c:1194
+#: access/transam/xlogreader.c:1327
 #, c-format
 msgid "BKPIMAGE_HAS_HOLE not set, but hole offset %u length %u at %X/%X"
 msgstr "BKPIMAGE_HAS_HOLE no está definido, pero posición del agujero es %u largo %u en %X/%X"
 
-#: access/transam/xlogreader.c:1209
+#: access/transam/xlogreader.c:1342
 #, c-format
 msgid "BKPIMAGE_IS_COMPRESSED set, but block image length %u at %X/%X"
 msgstr "BKPIMAGE_IS_COMPRESSED definido, pero largo de imagen de bloque es %u en %X/%X"
 
-#: access/transam/xlogreader.c:1224
+#: access/transam/xlogreader.c:1357
 #, c-format
 msgid "neither BKPIMAGE_HAS_HOLE nor BKPIMAGE_IS_COMPRESSED set, but block image length is %u at %X/%X"
 msgstr "ni BKPIMAGE_HAS_HOLE ni BKPIMAGE_IS_COMPRESSED está definido, pero largo de imagen de bloque es %u en %X/%X"
 
-#: access/transam/xlogreader.c:1240
+#: access/transam/xlogreader.c:1373
 #, c-format
 msgid "BKPBLOCK_SAME_REL set but no previous rel at %X/%X"
 msgstr "BKPBLOCK_SAME_REL está definido, pero no hay «rel» anterior en %X/%X "
 
-#: access/transam/xlogreader.c:1252
+#: access/transam/xlogreader.c:1385
 #, c-format
 msgid "invalid block_id %u at %X/%X"
 msgstr "block_id %u no válido en %X/%X"
 
-#: access/transam/xlogreader.c:1341
+#: access/transam/xlogreader.c:1474
 #, c-format
 msgid "record with invalid length at %X/%X"
 msgstr "registro con largo no válido en %X/%X"
 
-#: access/transam/xlogreader.c:1430
+#: access/transam/xlogreader.c:1563
 #, c-format
 msgid "invalid compressed image at %X/%X, block %d"
 msgstr "imagen comprimida no válida en %X/%X, bloque %d"
 
-# XXX why talk about "log segment" instead of "file"?
-#: access/transam/xlogutils.c:727 replication/walreceiver.c:959
-#: replication/walsender.c:2463
-#, c-format
-msgid "could not seek in log segment %s to offset %u: %m"
-msgstr "no se pudo posicionar (seek) en segmento %s a la posición %u: %m"
-
-#: access/transam/xlogutils.c:751
-#, c-format
-msgid "could not read from log segment %s, offset %u, length %lu: %m"
-msgstr "no se pudo leer desde el segmento %s, posición %u, largo %lu: %m"
-
 #: bootstrap/bootstrap.c:271
 #, c-format
 msgid "-X requires a power of two value between 1 MB and 1 GB"
 msgstr "-X require un valor potencia de dos entre 1 MB y 1 GB"
 
-#: bootstrap/bootstrap.c:288 postmaster/postmaster.c:821 tcop/postgres.c:3635
+#: bootstrap/bootstrap.c:288 postmaster/postmaster.c:830 tcop/postgres.c:3705
 #, c-format
 msgid "--%s requires a value"
 msgstr "--%s requiere un valor"
 
-#: bootstrap/bootstrap.c:293 postmaster/postmaster.c:826 tcop/postgres.c:3640
+#: bootstrap/bootstrap.c:293 postmaster/postmaster.c:835 tcop/postgres.c:3710
 #, c-format
 msgid "-c %s requires a value"
 msgstr "-c %s requiere un valor"
 
-#: bootstrap/bootstrap.c:304 postmaster/postmaster.c:838
-#: postmaster/postmaster.c:851
+#: bootstrap/bootstrap.c:304 postmaster/postmaster.c:847
+#: postmaster/postmaster.c:860
 #, c-format
 msgid "Try \"%s --help\" for more information.\n"
 msgstr "Pruebe «%s --help» para mayor información.\n"
@@ -3101,760 +3342,764 @@ msgstr "Pruebe «%s --help» para mayor información.\n"
 msgid "%s: invalid command-line arguments\n"
 msgstr "%s: argumentos de línea de órdenes no válidos\n"
 
-#: catalog/aclchk.c:203
+#: catalog/aclchk.c:181
 #, c-format
 msgid "grant options can only be granted to roles"
 msgstr "la opción de grant sólo puede ser otorgada a roles"
 
-#: catalog/aclchk.c:326
+#: catalog/aclchk.c:300
 #, c-format
 msgid "no privileges were granted for column \"%s\" of relation \"%s\""
 msgstr "no se otorgaron privilegios para la columna «%s» de la relación «%s»"
 
-#: catalog/aclchk.c:331
+#: catalog/aclchk.c:305
 #, c-format
 msgid "no privileges were granted for \"%s\""
 msgstr "no se otorgaron privilegios para «%s»"
 
-#: catalog/aclchk.c:339
+#: catalog/aclchk.c:313
 #, c-format
 msgid "not all privileges were granted for column \"%s\" of relation \"%s\""
 msgstr "no todos los privilegios fueron otorgados para la columna «%s» de la relación «%s»"
 
-#: catalog/aclchk.c:344
+#: catalog/aclchk.c:318
 #, c-format
 msgid "not all privileges were granted for \"%s\""
 msgstr "no todos los privilegios fueron otorgados para «%s»"
 
-#: catalog/aclchk.c:355
+#: catalog/aclchk.c:329
 #, c-format
 msgid "no privileges could be revoked for column \"%s\" of relation \"%s\""
 msgstr "ningún privilegio pudo ser revocado para la columna «%s» de la relación «%s»"
 
-#: catalog/aclchk.c:360
+#: catalog/aclchk.c:334
 #, c-format
 msgid "no privileges could be revoked for \"%s\""
 msgstr "ningún privilegio pudo ser revocado para «%s»"
 
-#: catalog/aclchk.c:368
+#: catalog/aclchk.c:342
 #, c-format
 msgid "not all privileges could be revoked for column \"%s\" of relation \"%s\""
 msgstr "no todos los privilegios pudieron ser revocados para la columna «%s» de la relación «%s»"
 
-#: catalog/aclchk.c:373
+#: catalog/aclchk.c:347
 #, c-format
 msgid "not all privileges could be revoked for \"%s\""
 msgstr "no todos los privilegios pudieron ser revocados para «%s»"
 
-#: catalog/aclchk.c:456 catalog/aclchk.c:999
+#: catalog/aclchk.c:430 catalog/aclchk.c:973
 #, c-format
 msgid "invalid privilege type %s for relation"
 msgstr "el tipo de privilegio %s no es válido para una relación"
 
-#: catalog/aclchk.c:460 catalog/aclchk.c:1003
+#: catalog/aclchk.c:434 catalog/aclchk.c:977
 #, c-format
 msgid "invalid privilege type %s for sequence"
 msgstr "el tipo de privilegio %s no es válido para una secuencia"
 
-#: catalog/aclchk.c:464
+#: catalog/aclchk.c:438
 #, c-format
 msgid "invalid privilege type %s for database"
 msgstr "el tipo de privilegio %s no es válido para una base de datos"
 
-#: catalog/aclchk.c:468
+#: catalog/aclchk.c:442
 #, c-format
 msgid "invalid privilege type %s for domain"
 msgstr "el tipo de privilegio %s no es válido para un dominio"
 
-#: catalog/aclchk.c:472 catalog/aclchk.c:1007
+#: catalog/aclchk.c:446 catalog/aclchk.c:981
 #, c-format
 msgid "invalid privilege type %s for function"
 msgstr "el tipo de privilegio %s no es válido para una función"
 
-#: catalog/aclchk.c:476
+#: catalog/aclchk.c:450
 #, c-format
 msgid "invalid privilege type %s for language"
 msgstr "el tipo de privilegio %s no es válido para un lenguaje"
 
-#: catalog/aclchk.c:480
+#: catalog/aclchk.c:454
 #, c-format
 msgid "invalid privilege type %s for large object"
 msgstr "el tipo de privilegio %s no es válido para un objeto grande"
 
-#: catalog/aclchk.c:484 catalog/aclchk.c:1023
+#: catalog/aclchk.c:458 catalog/aclchk.c:997
 #, c-format
 msgid "invalid privilege type %s for schema"
 msgstr "el tipo de privilegio %s no es válido para un esquema"
 
-#: catalog/aclchk.c:488 catalog/aclchk.c:1011
+#: catalog/aclchk.c:462 catalog/aclchk.c:985
 #, c-format
 msgid "invalid privilege type %s for procedure"
 msgstr "el tipo de privilegio %s no es válido para un procedimiento"
 
-#: catalog/aclchk.c:492 catalog/aclchk.c:1015
+#: catalog/aclchk.c:466 catalog/aclchk.c:989
 #, c-format
 msgid "invalid privilege type %s for routine"
 msgstr "el tipo de privilegio %s no es válido para una rutina"
 
-#: catalog/aclchk.c:496
+#: catalog/aclchk.c:470
 #, c-format
 msgid "invalid privilege type %s for tablespace"
 msgstr "el tipo de privilegio %s no es válido para un tablespace"
 
-#: catalog/aclchk.c:500 catalog/aclchk.c:1019
+#: catalog/aclchk.c:474 catalog/aclchk.c:993
 #, c-format
 msgid "invalid privilege type %s for type"
 msgstr "el tipo de privilegio %s no es válido para un tipo"
 
-#: catalog/aclchk.c:504
+#: catalog/aclchk.c:478
 #, c-format
 msgid "invalid privilege type %s for foreign-data wrapper"
 msgstr "el tipo de privilegio %s no es válido para un conector de datos externos"
 
-#: catalog/aclchk.c:508
+#: catalog/aclchk.c:482
 #, c-format
 msgid "invalid privilege type %s for foreign server"
 msgstr "el tipo de privilegio %s no es válido para un servidor foráneo"
 
-#: catalog/aclchk.c:547
+#: catalog/aclchk.c:521
 #, c-format
 msgid "column privileges are only valid for relations"
 msgstr "los privilegios de columna son sólo válidos para relaciones"
 
-#: catalog/aclchk.c:707 catalog/aclchk.c:4135 catalog/aclchk.c:4917
-#: catalog/objectaddress.c:964 catalog/pg_largeobject.c:116
-#: storage/large_object/inv_api.c:283
+#: catalog/aclchk.c:681 catalog/aclchk.c:4100 catalog/aclchk.c:4882
+#: catalog/objectaddress.c:965 catalog/pg_largeobject.c:116
+#: storage/large_object/inv_api.c:285
 #, c-format
 msgid "large object %u does not exist"
 msgstr "no existe el objeto grande %u"
 
-#: catalog/aclchk.c:936 catalog/aclchk.c:945 commands/collationcmds.c:117
-#: commands/copy.c:1139 commands/copy.c:1159 commands/copy.c:1168
-#: commands/copy.c:1177 commands/copy.c:1186 commands/copy.c:1195
-#: commands/copy.c:1204 commands/copy.c:1213 commands/copy.c:1231
-#: commands/copy.c:1247 commands/copy.c:1267 commands/copy.c:1284
-#: commands/dbcommands.c:156 commands/dbcommands.c:165
-#: commands/dbcommands.c:174 commands/dbcommands.c:183
-#: commands/dbcommands.c:192 commands/dbcommands.c:201
-#: commands/dbcommands.c:210 commands/dbcommands.c:219
-#: commands/dbcommands.c:228 commands/dbcommands.c:1448
-#: commands/dbcommands.c:1457 commands/dbcommands.c:1466
-#: commands/dbcommands.c:1475 commands/extension.c:1688
-#: commands/extension.c:1698 commands/extension.c:1708
-#: commands/extension.c:1718 commands/extension.c:2960
-#: commands/foreigncmds.c:543 commands/foreigncmds.c:552
-#: commands/functioncmds.c:568 commands/functioncmds.c:734
-#: commands/functioncmds.c:743 commands/functioncmds.c:752
-#: commands/functioncmds.c:761 commands/functioncmds.c:2193
-#: commands/functioncmds.c:2201 commands/publicationcmds.c:91
+#: catalog/aclchk.c:910 catalog/aclchk.c:919 commands/collationcmds.c:118
+#: commands/copy.c:1134 commands/copy.c:1154 commands/copy.c:1163
+#: commands/copy.c:1172 commands/copy.c:1181 commands/copy.c:1190
+#: commands/copy.c:1199 commands/copy.c:1208 commands/copy.c:1226
+#: commands/copy.c:1242 commands/copy.c:1262 commands/copy.c:1279
+#: commands/dbcommands.c:157 commands/dbcommands.c:166
+#: commands/dbcommands.c:175 commands/dbcommands.c:184
+#: commands/dbcommands.c:193 commands/dbcommands.c:202
+#: commands/dbcommands.c:211 commands/dbcommands.c:220
+#: commands/dbcommands.c:229 commands/dbcommands.c:238
+#: commands/dbcommands.c:260 commands/dbcommands.c:1502
+#: commands/dbcommands.c:1511 commands/dbcommands.c:1520
+#: commands/dbcommands.c:1529 commands/extension.c:1722
+#: commands/extension.c:1732 commands/extension.c:1742
+#: commands/extension.c:3042 commands/foreigncmds.c:539
+#: commands/foreigncmds.c:548 commands/functioncmds.c:570
+#: commands/functioncmds.c:736 commands/functioncmds.c:745
+#: commands/functioncmds.c:754 commands/functioncmds.c:763
+#: commands/functioncmds.c:2014 commands/functioncmds.c:2022
+#: commands/publicationcmds.c:90 commands/publicationcmds.c:133
 #: commands/sequence.c:1267 commands/sequence.c:1277 commands/sequence.c:1287
 #: commands/sequence.c:1297 commands/sequence.c:1307 commands/sequence.c:1317
 #: commands/sequence.c:1327 commands/sequence.c:1337 commands/sequence.c:1347
-#: commands/subscriptioncmds.c:111 commands/subscriptioncmds.c:121
-#: commands/subscriptioncmds.c:131 commands/subscriptioncmds.c:141
-#: commands/subscriptioncmds.c:155 commands/subscriptioncmds.c:166
-#: commands/subscriptioncmds.c:180 commands/tablecmds.c:6553
-#: commands/typecmds.c:299 commands/typecmds.c:1428 commands/typecmds.c:1437
-#: commands/typecmds.c:1445 commands/typecmds.c:1453 commands/typecmds.c:1461
+#: commands/subscriptioncmds.c:104 commands/subscriptioncmds.c:114
+#: commands/subscriptioncmds.c:124 commands/subscriptioncmds.c:134
+#: commands/subscriptioncmds.c:148 commands/subscriptioncmds.c:159
+#: commands/subscriptioncmds.c:173 commands/tablecmds.c:6957
+#: commands/typecmds.c:321 commands/typecmds.c:1354 commands/typecmds.c:1363
+#: commands/typecmds.c:1371 commands/typecmds.c:1379 commands/typecmds.c:1387
 #: commands/user.c:133 commands/user.c:147 commands/user.c:156
 #: commands/user.c:165 commands/user.c:174 commands/user.c:183
 #: commands/user.c:192 commands/user.c:201 commands/user.c:210
 #: commands/user.c:219 commands/user.c:228 commands/user.c:237
-#: commands/user.c:246 commands/user.c:571 commands/user.c:579
-#: commands/user.c:587 commands/user.c:595 commands/user.c:603
-#: commands/user.c:611 commands/user.c:619 commands/user.c:627
-#: commands/user.c:636 commands/user.c:644 commands/user.c:652
-#: parser/parse_utilcmd.c:385 replication/pgoutput/pgoutput.c:111
-#: replication/pgoutput/pgoutput.c:132 replication/walsender.c:817
-#: replication/walsender.c:828 replication/walsender.c:838
+#: commands/user.c:246 commands/user.c:582 commands/user.c:590
+#: commands/user.c:598 commands/user.c:606 commands/user.c:614
+#: commands/user.c:622 commands/user.c:630 commands/user.c:638
+#: commands/user.c:647 commands/user.c:655 commands/user.c:663
+#: parser/parse_utilcmd.c:386 replication/pgoutput/pgoutput.c:141
+#: replication/pgoutput/pgoutput.c:162 replication/walsender.c:891
+#: replication/walsender.c:902 replication/walsender.c:912
 #, c-format
 msgid "conflicting or redundant options"
 msgstr "opciones contradictorias o redundantes"
 
-#: catalog/aclchk.c:1056
+#: catalog/aclchk.c:1030
 #, c-format
 msgid "default privileges cannot be set for columns"
 msgstr "los privilegios por omisión no pueden definirse para columnas"
 
-#: catalog/aclchk.c:1216
+#: catalog/aclchk.c:1190
 #, c-format
 msgid "cannot use IN SCHEMA clause when using GRANT/REVOKE ON SCHEMAS"
 msgstr "No puede utilizar la cláusula IN SCHEMA cuando se utiliza GRANT / REVOKE ON SCHEMAS"
 
-#: catalog/aclchk.c:1584 catalog/catalog.c:519 catalog/objectaddress.c:1426
-#: commands/analyze.c:383 commands/copy.c:5134 commands/sequence.c:1702
-#: commands/tablecmds.c:6095 commands/tablecmds.c:6253
-#: commands/tablecmds.c:6327 commands/tablecmds.c:6397
-#: commands/tablecmds.c:6478 commands/tablecmds.c:6572
-#: commands/tablecmds.c:6631 commands/tablecmds.c:6770
-#: commands/tablecmds.c:6852 commands/tablecmds.c:6944
-#: commands/tablecmds.c:7038 commands/tablecmds.c:10271
-#: commands/tablecmds.c:10452 commands/tablecmds.c:10613
-#: commands/tablecmds.c:11598 commands/trigger.c:928 parser/analyze.c:2330
-#: parser/parse_relation.c:2788 parser/parse_relation.c:2851
-#: parser/parse_target.c:1031 parser/parse_type.c:145 utils/adt/acl.c:2885
-#: utils/adt/ruleutils.c:2511
+#: catalog/aclchk.c:1558 catalog/catalog.c:506 catalog/objectaddress.c:1427
+#: commands/analyze.c:389 commands/copy.c:5080 commands/sequence.c:1702
+#: commands/tablecmds.c:6497 commands/tablecmds.c:6655
+#: commands/tablecmds.c:6729 commands/tablecmds.c:6799
+#: commands/tablecmds.c:6882 commands/tablecmds.c:6976
+#: commands/tablecmds.c:7035 commands/tablecmds.c:7108
+#: commands/tablecmds.c:7137 commands/tablecmds.c:7292
+#: commands/tablecmds.c:7374 commands/tablecmds.c:7467
+#: commands/tablecmds.c:7622 commands/tablecmds.c:10882
+#: commands/tablecmds.c:11064 commands/tablecmds.c:11224
+#: commands/tablecmds.c:12307 commands/trigger.c:876 parser/analyze.c:2339
+#: parser/parse_relation.c:713 parser/parse_target.c:1036
+#: parser/parse_type.c:144 parser/parse_utilcmd.c:3202
+#: parser/parse_utilcmd.c:3237 parser/parse_utilcmd.c:3279 utils/adt/acl.c:2870
+#: utils/adt/ruleutils.c:2535
 #, c-format
 msgid "column \"%s\" of relation \"%s\" does not exist"
 msgstr "no existe la columna «%s» en la relación «%s»"
 
-#: catalog/aclchk.c:1847 catalog/objectaddress.c:1266 commands/sequence.c:1140
-#: commands/tablecmds.c:230 commands/tablecmds.c:14917 utils/adt/acl.c:2075
-#: utils/adt/acl.c:2105 utils/adt/acl.c:2137 utils/adt/acl.c:2169
-#: utils/adt/acl.c:2197 utils/adt/acl.c:2227
+#: catalog/aclchk.c:1821 catalog/objectaddress.c:1267 commands/sequence.c:1140
+#: commands/tablecmds.c:236 commands/tablecmds.c:15616 utils/adt/acl.c:2060
+#: utils/adt/acl.c:2090 utils/adt/acl.c:2122 utils/adt/acl.c:2154
+#: utils/adt/acl.c:2182 utils/adt/acl.c:2212
 #, c-format
 msgid "\"%s\" is not a sequence"
 msgstr "«%s» no es una secuencia"
 
-#: catalog/aclchk.c:1885
+#: catalog/aclchk.c:1859
 #, c-format
 msgid "sequence \"%s\" only supports USAGE, SELECT, and UPDATE privileges"
 msgstr "la secuencia «%s» sólo soporta los privilegios USAGE, SELECT, y UPDATE"
 
-#: catalog/aclchk.c:1902
+#: catalog/aclchk.c:1876
 #, c-format
 msgid "invalid privilege type %s for table"
 msgstr "el tipo de privilegio %s no es válido para una tabla"
 
-#: catalog/aclchk.c:2068
+#: catalog/aclchk.c:2042
 #, c-format
 msgid "invalid privilege type %s for column"
 msgstr "el tipo de privilegio %s no es válido para una columna"
 
-#: catalog/aclchk.c:2081
+#: catalog/aclchk.c:2055
 #, c-format
 msgid "sequence \"%s\" only supports SELECT column privileges"
 msgstr "la secuencia «%s» sólo soporta el privilegio SELECT"
 
-#: catalog/aclchk.c:2663
+#: catalog/aclchk.c:2637
 #, c-format
 msgid "language \"%s\" is not trusted"
 msgstr "el lenguaje «%s» no es confiable (trusted)"
 
-#: catalog/aclchk.c:2665
+#: catalog/aclchk.c:2639
 #, c-format
 msgid "GRANT and REVOKE are not allowed on untrusted languages, because only superusers can use untrusted languages."
 msgstr "GRANT y REVOKE no están permitidos en lenguajes no confiables, porque sólo los superusuarios pueden usar lenguajes no confiables."
 
-#: catalog/aclchk.c:3179
+#: catalog/aclchk.c:3153
 #, c-format
 msgid "cannot set privileges of array types"
 msgstr "no se puede definir privilegios para tipos de array"
 
-#: catalog/aclchk.c:3180
+#: catalog/aclchk.c:3154
 #, c-format
 msgid "Set the privileges of the element type instead."
 msgstr "Defina los privilegios del tipo elemento en su lugar."
 
-#: catalog/aclchk.c:3187 catalog/objectaddress.c:1560
+#: catalog/aclchk.c:3161 catalog/objectaddress.c:1561
 #, c-format
 msgid "\"%s\" is not a domain"
 msgstr "«%s» no es un dominio"
 
-#: catalog/aclchk.c:3307
+#: catalog/aclchk.c:3281
 #, c-format
 msgid "unrecognized privilege type \"%s\""
 msgstr "tipo de privilegio «%s» no reconocido"
 
-#: catalog/aclchk.c:3368
+#: catalog/aclchk.c:3342
 #, c-format
 msgid "permission denied for aggregate %s"
 msgstr "permiso denegado a la función de agregación %s"
 
-#: catalog/aclchk.c:3371
+#: catalog/aclchk.c:3345
 #, c-format
 msgid "permission denied for collation %s"
 msgstr "permiso denegado al ordenamiento (collation) %s"
 
-#: catalog/aclchk.c:3374
+#: catalog/aclchk.c:3348
 #, c-format
 msgid "permission denied for column %s"
 msgstr "permiso denegado a la columna %s"
 
-#: catalog/aclchk.c:3377
+#: catalog/aclchk.c:3351
 #, c-format
 msgid "permission denied for conversion %s"
 msgstr "permiso denegado a la conversión %s"
 
-#: catalog/aclchk.c:3380
+#: catalog/aclchk.c:3354
 #, c-format
 msgid "permission denied for database %s"
 msgstr "permiso denegado a la base de datos %s"
 
-#: catalog/aclchk.c:3383
+#: catalog/aclchk.c:3357
 #, c-format
 msgid "permission denied for domain %s"
 msgstr "permiso denegado al dominio %s"
 
-#: catalog/aclchk.c:3386
+#: catalog/aclchk.c:3360
 #, c-format
 msgid "permission denied for event trigger %s"
 msgstr "permiso denegado al disparador por eventos %s"
 
-#: catalog/aclchk.c:3389
+#: catalog/aclchk.c:3363
 #, c-format
 msgid "permission denied for extension %s"
 msgstr "permiso denegado a la extensión %s"
 
-#: catalog/aclchk.c:3392
+#: catalog/aclchk.c:3366
 #, c-format
 msgid "permission denied for foreign-data wrapper %s"
 msgstr "permiso denegado al conector de datos externos %s"
 
-#: catalog/aclchk.c:3395
+#: catalog/aclchk.c:3369
 #, c-format
 msgid "permission denied for foreign server %s"
 msgstr "permiso denegado al servidor foráneo %s"
 
-#: catalog/aclchk.c:3398
+#: catalog/aclchk.c:3372
 #, c-format
 msgid "permission denied for foreign table %s"
 msgstr "permiso denegado a la tabla foránea %s"
 
-#: catalog/aclchk.c:3401
+#: catalog/aclchk.c:3375
 #, c-format
 msgid "permission denied for function %s"
 msgstr "permiso denegado a la función %s"
 
-#: catalog/aclchk.c:3404
+#: catalog/aclchk.c:3378
 #, c-format
 msgid "permission denied for index %s"
 msgstr "permiso denegado al índice %s"
 
-#: catalog/aclchk.c:3407
+#: catalog/aclchk.c:3381
 #, c-format
 msgid "permission denied for language %s"
 msgstr "permiso denegado al lenguaje %s"
 
-#: catalog/aclchk.c:3410
+#: catalog/aclchk.c:3384
 #, c-format
 msgid "permission denied for large object %s"
 msgstr "permiso denegado al objeto grande %s"
 
-#: catalog/aclchk.c:3413
+#: catalog/aclchk.c:3387
 #, c-format
 msgid "permission denied for materialized view %s"
 msgstr "permiso denegado a la vista materializada %s"
 
-#: catalog/aclchk.c:3416
+#: catalog/aclchk.c:3390
 #, c-format
 msgid "permission denied for operator class %s"
 msgstr "permiso denegado a la clase de operadores %s"
 
-#: catalog/aclchk.c:3419
+#: catalog/aclchk.c:3393
 #, c-format
 msgid "permission denied for operator %s"
 msgstr "permiso denegado al operador %s"
 
-#: catalog/aclchk.c:3422
+#: catalog/aclchk.c:3396
 #, c-format
 msgid "permission denied for operator family %s"
 msgstr "permiso denegado a la familia de operadores %s"
 
-#: catalog/aclchk.c:3425
+#: catalog/aclchk.c:3399
 #, c-format
 msgid "permission denied for policy %s"
 msgstr "permiso denegado a la política %s"
 
-#: catalog/aclchk.c:3428
+#: catalog/aclchk.c:3402
 #, c-format
 msgid "permission denied for procedure %s"
 msgstr "permiso denegado al procedimiento %s"
 
-#: catalog/aclchk.c:3431
+#: catalog/aclchk.c:3405
 #, c-format
 msgid "permission denied for publication %s"
 msgstr "permiso denegado a la publicación %s"
 
-#: catalog/aclchk.c:3434
+#: catalog/aclchk.c:3408
 #, c-format
 msgid "permission denied for routine %s"
 msgstr "permiso denegado a la rutina %s"
 
-#: catalog/aclchk.c:3437
+#: catalog/aclchk.c:3411
 #, c-format
 msgid "permission denied for schema %s"
 msgstr "permiso denegado al esquema %s"
 
-#: catalog/aclchk.c:3440 commands/sequence.c:610 commands/sequence.c:844
+#: catalog/aclchk.c:3414 commands/sequence.c:610 commands/sequence.c:844
 #: commands/sequence.c:886 commands/sequence.c:927 commands/sequence.c:1800
 #: commands/sequence.c:1864
 #, c-format
 msgid "permission denied for sequence %s"
 msgstr "permiso denegado a la secuencia %s"
 
-#: catalog/aclchk.c:3443
+#: catalog/aclchk.c:3417
 #, c-format
 msgid "permission denied for statistics object %s"
 msgstr "permiso denegado al objeto de estadísticas %s"
 
-#: catalog/aclchk.c:3446
+#: catalog/aclchk.c:3420
 #, c-format
 msgid "permission denied for subscription %s"
 msgstr "permiso denegado a la suscripción %s"
 
-#: catalog/aclchk.c:3449
+#: catalog/aclchk.c:3423
 #, c-format
 msgid "permission denied for table %s"
 msgstr "permiso denegado a la tabla %s"
 
-#: catalog/aclchk.c:3452
+#: catalog/aclchk.c:3426
 #, c-format
 msgid "permission denied for tablespace %s"
 msgstr "permiso denegado al tablespace %s"
 
-#: catalog/aclchk.c:3455
+#: catalog/aclchk.c:3429
 #, c-format
 msgid "permission denied for text search configuration %s"
 msgstr "permiso denegado a la configuración de búsqueda en texto %s"
 
-#: catalog/aclchk.c:3458
+#: catalog/aclchk.c:3432
 #, c-format
 msgid "permission denied for text search dictionary %s"
 msgstr "permiso denegado a la configuración de búsqueda en texto %s"
 
-#: catalog/aclchk.c:3461
+#: catalog/aclchk.c:3435
 #, c-format
 msgid "permission denied for type %s"
 msgstr "permiso denegado al tipo %s"
 
-#: catalog/aclchk.c:3464
+#: catalog/aclchk.c:3438
 #, c-format
 msgid "permission denied for view %s"
 msgstr "permiso denegado a la vista %s"
 
-#: catalog/aclchk.c:3499
+#: catalog/aclchk.c:3473
 #, c-format
 msgid "must be owner of aggregate %s"
 msgstr "debe ser dueño de la función de agregación %s"
 
-#: catalog/aclchk.c:3502
+#: catalog/aclchk.c:3476
 #, c-format
 msgid "must be owner of collation %s"
 msgstr "debe ser dueño del ordenamiento (collation) %s"
 
-#: catalog/aclchk.c:3505
+#: catalog/aclchk.c:3479
 #, c-format
 msgid "must be owner of conversion %s"
 msgstr "debe ser dueño de la conversión %s"
 
-#: catalog/aclchk.c:3508
+#: catalog/aclchk.c:3482
 #, c-format
 msgid "must be owner of database %s"
 msgstr "debe ser dueño de la base de datos %s"
 
-#: catalog/aclchk.c:3511
+#: catalog/aclchk.c:3485
 #, c-format
 msgid "must be owner of domain %s"
 msgstr "debe ser dueño del dominio %s"
 
-#: catalog/aclchk.c:3514
+#: catalog/aclchk.c:3488
 #, c-format
 msgid "must be owner of event trigger %s"
 msgstr "debe ser dueño del disparador por eventos %s"
 
-#: catalog/aclchk.c:3517
+#: catalog/aclchk.c:3491
 #, c-format
 msgid "must be owner of extension %s"
 msgstr "debe ser dueño de la extensión %s"
 
-#: catalog/aclchk.c:3520
+#: catalog/aclchk.c:3494
 #, c-format
 msgid "must be owner of foreign-data wrapper %s"
 msgstr "debe ser dueño del conector de datos externos %s"
 
-#: catalog/aclchk.c:3523
+#: catalog/aclchk.c:3497
 #, c-format
 msgid "must be owner of foreign server %s"
 msgstr "debe ser dueño del servidor foráneo %s"
 
-#: catalog/aclchk.c:3526
+#: catalog/aclchk.c:3500
 #, c-format
 msgid "must be owner of foreign table %s"
 msgstr "debe ser dueño de la tabla foránea %s"
 
-#: catalog/aclchk.c:3529
+#: catalog/aclchk.c:3503
 #, c-format
 msgid "must be owner of function %s"
 msgstr "debe ser dueño de la función %s"
 
-#: catalog/aclchk.c:3532
+#: catalog/aclchk.c:3506
 #, c-format
 msgid "must be owner of index %s"
 msgstr "debe ser dueño del índice %s"
 
-#: catalog/aclchk.c:3535
+#: catalog/aclchk.c:3509
 #, c-format
 msgid "must be owner of language %s"
 msgstr "debe ser dueño del lenguaje %s"
 
-#: catalog/aclchk.c:3538
+#: catalog/aclchk.c:3512
 #, c-format
 msgid "must be owner of large object %s"
 msgstr "debe ser dueño del objeto grande %s"
 
-#: catalog/aclchk.c:3541
+#: catalog/aclchk.c:3515
 #, c-format
 msgid "must be owner of materialized view %s"
 msgstr "debe ser dueño de la vista materializada %s"
 
-#: catalog/aclchk.c:3544
+#: catalog/aclchk.c:3518
 #, c-format
 msgid "must be owner of operator class %s"
 msgstr "debe ser dueño de la clase de operadores %s"
 
-#: catalog/aclchk.c:3547
+#: catalog/aclchk.c:3521
 #, c-format
 msgid "must be owner of operator %s"
 msgstr "debe ser dueño del operador %s"
 
-#: catalog/aclchk.c:3550
+#: catalog/aclchk.c:3524
 #, c-format
 msgid "must be owner of operator family %s"
 msgstr "debe ser dueño de la familia de operadores %s"
 
-#: catalog/aclchk.c:3553
+#: catalog/aclchk.c:3527
 #, c-format
 msgid "must be owner of procedure %s"
 msgstr "debe ser dueño del procedimiento %s"
 
-#: catalog/aclchk.c:3556
+#: catalog/aclchk.c:3530
 #, c-format
 msgid "must be owner of publication %s"
 msgstr "debe ser dueño de la publicación %s"
 
-#: catalog/aclchk.c:3559
+#: catalog/aclchk.c:3533
 #, c-format
 msgid "must be owner of routine %s"
 msgstr "debe ser dueño de la rutina %s"
 
-#: catalog/aclchk.c:3562
+#: catalog/aclchk.c:3536
 #, c-format
 msgid "must be owner of sequence %s"
 msgstr "debe ser dueño de la secuencia %s"
 
-#: catalog/aclchk.c:3565
+#: catalog/aclchk.c:3539
 #, c-format
 msgid "must be owner of subscription %s"
 msgstr "debe ser dueño de la suscripción %s"
 
-#: catalog/aclchk.c:3568
+#: catalog/aclchk.c:3542
 #, c-format
 msgid "must be owner of table %s"
 msgstr "debe ser dueño de la tabla %s"
 
-#: catalog/aclchk.c:3571
+#: catalog/aclchk.c:3545
 #, c-format
 msgid "must be owner of type %s"
 msgstr "debe ser dueño del tipo %s"
 
-#: catalog/aclchk.c:3574
+#: catalog/aclchk.c:3548
 #, c-format
 msgid "must be owner of view %s"
 msgstr "debe ser dueño de la vista %s"
 
-#: catalog/aclchk.c:3577
+#: catalog/aclchk.c:3551
 #, c-format
 msgid "must be owner of schema %s"
 msgstr "debe ser dueño del esquema %s"
 
-#: catalog/aclchk.c:3580
+#: catalog/aclchk.c:3554
 #, c-format
 msgid "must be owner of statistics object %s"
 msgstr "debe ser dueño del objeto de estadísticas %s"
 
-#: catalog/aclchk.c:3583
+#: catalog/aclchk.c:3557
 #, c-format
 msgid "must be owner of tablespace %s"
 msgstr "debe ser dueño del tablespace %s"
 
-#: catalog/aclchk.c:3586
+#: catalog/aclchk.c:3560
 #, c-format
 msgid "must be owner of text search configuration %s"
 msgstr "debe ser dueño de la configuración de búsqueda en texto %s"
 
-#: catalog/aclchk.c:3589
+#: catalog/aclchk.c:3563
 #, c-format
 msgid "must be owner of text search dictionary %s"
 msgstr "debe ser dueño del diccionario de búsqueda en texto %s"
 
-#: catalog/aclchk.c:3603
+#: catalog/aclchk.c:3577
 #, c-format
 msgid "must be owner of relation %s"
 msgstr "debe ser dueño de la relación %s"
 
-#: catalog/aclchk.c:3647
+#: catalog/aclchk.c:3621
 #, c-format
 msgid "permission denied for column \"%s\" of relation \"%s\""
 msgstr "permiso denegado a la columna «%s» de la relación «%s»"
 
-#: catalog/aclchk.c:3768 catalog/aclchk.c:3776
+#: catalog/aclchk.c:3742 catalog/aclchk.c:3750
 #, c-format
 msgid "attribute %d of relation with OID %u does not exist"
 msgstr "no existe el atributo %d de la relación con OID %u"
 
-#: catalog/aclchk.c:3849 catalog/aclchk.c:4768
+#: catalog/aclchk.c:3823 catalog/aclchk.c:4733
 #, c-format
 msgid "relation with OID %u does not exist"
 msgstr "no existe la relación con OID %u"
 
-#: catalog/aclchk.c:3948 catalog/aclchk.c:5186
+#: catalog/aclchk.c:3913 catalog/aclchk.c:5151
 #, c-format
 msgid "database with OID %u does not exist"
 msgstr "no existe la base de datos con OID %u"
 
-#: catalog/aclchk.c:4002 catalog/aclchk.c:4846 tcop/fastpath.c:221
-#: utils/fmgr/fmgr.c:2017
+#: catalog/aclchk.c:3967 catalog/aclchk.c:4811 tcop/fastpath.c:221
+#: utils/fmgr/fmgr.c:2055
 #, c-format
 msgid "function with OID %u does not exist"
 msgstr "no existe la función con OID %u"
 
-#: catalog/aclchk.c:4056 catalog/aclchk.c:4872
+#: catalog/aclchk.c:4021 catalog/aclchk.c:4837
 #, c-format
 msgid "language with OID %u does not exist"
 msgstr "no existe el lenguaje con OID %u"
 
-#: catalog/aclchk.c:4220 catalog/aclchk.c:4944
+#: catalog/aclchk.c:4185 catalog/aclchk.c:4909
 #, c-format
 msgid "schema with OID %u does not exist"
 msgstr "no existe el esquema con OID %u"
 
-#: catalog/aclchk.c:4274 catalog/aclchk.c:4971 utils/adt/genfile.c:637
+#: catalog/aclchk.c:4239 catalog/aclchk.c:4936 utils/adt/genfile.c:650
 #, c-format
 msgid "tablespace with OID %u does not exist"
 msgstr "no existe el tablespace con OID %u"
 
-#: catalog/aclchk.c:4333 catalog/aclchk.c:5105 commands/foreigncmds.c:328
+#: catalog/aclchk.c:4298 catalog/aclchk.c:5070 commands/foreigncmds.c:325
 #, c-format
 msgid "foreign-data wrapper with OID %u does not exist"
 msgstr "no existe el conector de datos externos con OID %u"
 
-#: catalog/aclchk.c:4395 catalog/aclchk.c:5132 commands/foreigncmds.c:465
+#: catalog/aclchk.c:4360 catalog/aclchk.c:5097 commands/foreigncmds.c:462
 #, c-format
 msgid "foreign server with OID %u does not exist"
 msgstr "no existe el servidor foráneo con OID %u"
 
-#: catalog/aclchk.c:4455 catalog/aclchk.c:4794 utils/cache/typcache.c:369
+#: catalog/aclchk.c:4420 catalog/aclchk.c:4759 utils/cache/typcache.c:378
+#: utils/cache/typcache.c:432
 #, c-format
 msgid "type with OID %u does not exist"
 msgstr "no existe el tipo con OID %u"
 
-#: catalog/aclchk.c:4820
+#: catalog/aclchk.c:4785
 #, c-format
 msgid "operator with OID %u does not exist"
 msgstr "no existe el operador con OID %u"
 
-#: catalog/aclchk.c:4997
+#: catalog/aclchk.c:4962
 #, c-format
 msgid "operator class with OID %u does not exist"
 msgstr "no existe la clase de operadores con OID %u"
 
-#: catalog/aclchk.c:5024
+#: catalog/aclchk.c:4989
 #, c-format
 msgid "operator family with OID %u does not exist"
 msgstr "no existe la familia de operadores con OID %u"
 
-#: catalog/aclchk.c:5051
+#: catalog/aclchk.c:5016
 #, c-format
 msgid "text search dictionary with OID %u does not exist"
 msgstr "no existe el diccionario de búsqueda en texto con OID %u"
 
-#: catalog/aclchk.c:5078
+#: catalog/aclchk.c:5043
 #, c-format
 msgid "text search configuration with OID %u does not exist"
 msgstr "no existe la configuración de búsqueda en texto con OID %u"
 
-#: catalog/aclchk.c:5159 commands/event_trigger.c:595
+#: catalog/aclchk.c:5124 commands/event_trigger.c:475
 #, c-format
 msgid "event trigger with OID %u does not exist"
 msgstr "no existe el disparador por eventos con OID %u"
 
-#: catalog/aclchk.c:5212 commands/collationcmds.c:366
+#: catalog/aclchk.c:5177 commands/collationcmds.c:367
 #, c-format
 msgid "collation with OID %u does not exist"
 msgstr "no existe el ordenamiento (collation) con OID %u"
 
-#: catalog/aclchk.c:5238
+#: catalog/aclchk.c:5203
 #, c-format
 msgid "conversion with OID %u does not exist"
 msgstr "no existe la conversión con OID %u"
 
-#: catalog/aclchk.c:5279
+#: catalog/aclchk.c:5244
 #, c-format
 msgid "extension with OID %u does not exist"
 msgstr "no existe la extensión con OID %u"
 
-#: catalog/aclchk.c:5306 commands/publicationcmds.c:759
+#: catalog/aclchk.c:5271 commands/publicationcmds.c:794
 #, c-format
 msgid "publication with OID %u does not exist"
 msgstr "no existe la publicación con OID %u"
 
-#: catalog/aclchk.c:5332 commands/subscriptioncmds.c:1130
+#: catalog/aclchk.c:5297 commands/subscriptioncmds.c:1112
 #, c-format
 msgid "subscription with OID %u does not exist"
 msgstr "no existe la suscripción con OID %u"
 
-#: catalog/aclchk.c:5358
+#: catalog/aclchk.c:5323
 #, c-format
 msgid "statistics object with OID %u does not exist"
 msgstr "no existe el objeto de estadísticas con OID %u"
 
-#: catalog/catalog.c:498
+#: catalog/catalog.c:485
 #, c-format
 msgid "must be superuser to call pg_nextoid()"
 msgstr "debe ser superusuario para invocar pg_nextoid()"
 
-#: catalog/catalog.c:506
+#: catalog/catalog.c:493
 #, c-format
 msgid "pg_nextoid() can only be used on system catalogs"
 msgstr "pg_nextoid() sólo puede usarse en catálogos de sistema"
 
-#: catalog/catalog.c:511 parser/parse_utilcmd.c:2064
+#: catalog/catalog.c:498 parser/parse_utilcmd.c:2103
 #, c-format
 msgid "index \"%s\" does not belong to table \"%s\""
 msgstr "el índice «%s» no pertenece a la tabla «%s»"
 
-#: catalog/catalog.c:528
+#: catalog/catalog.c:515
 #, c-format
 msgid "column \"%s\" is not of type oid"
 msgstr "la columna «%s» no es de tipo oid"
 
-#: catalog/catalog.c:535
+#: catalog/catalog.c:522
 #, c-format
 msgid "index \"%s\" is not the index for column \"%s\""
 msgstr "«el índice %s» no es el índice para la columna «%s»"
 
-#: catalog/dependency.c:824 catalog/dependency.c:1062
+#: catalog/dependency.c:823 catalog/dependency.c:1061
 #, c-format
 msgid "cannot drop %s because %s requires it"
 msgstr "no se puede eliminar %s porque %s lo requiere"
 
-#: catalog/dependency.c:826 catalog/dependency.c:1064
+#: catalog/dependency.c:825 catalog/dependency.c:1063
 #, c-format
 msgid "You can drop %s instead."
 msgstr "Puede eliminar %s en su lugar."
 
-#: catalog/dependency.c:934 catalog/pg_shdepend.c:641
+#: catalog/dependency.c:933 catalog/pg_shdepend.c:640
 #, c-format
 msgid "cannot drop %s because it is required by the database system"
 msgstr "no se puede eliminar %s porque es requerido por el sistema"
 
-#: catalog/dependency.c:1130
+#: catalog/dependency.c:1129
 #, c-format
 msgid "drop auto-cascades to %s"
 msgstr "eliminando automáticamente %s"
 
-#: catalog/dependency.c:1142 catalog/dependency.c:1151
+#: catalog/dependency.c:1141 catalog/dependency.c:1150
 #, c-format
 msgid "%s depends on %s"
 msgstr "%s depende de %s"
 
-#: catalog/dependency.c:1163 catalog/dependency.c:1172
+#: catalog/dependency.c:1162 catalog/dependency.c:1171
 #, c-format
 msgid "drop cascades to %s"
 msgstr "eliminando además %s"
 
-#: catalog/dependency.c:1180 catalog/pg_shdepend.c:770
+#: catalog/dependency.c:1179 catalog/pg_shdepend.c:769
 #, c-format
 msgid ""
 "\n"
@@ -3869,204 +4114,219 @@ msgstr[1] ""
 "\n"
 "y otros %d objetos (vea el registro del servidor para obtener la lista)"
 
-#: catalog/dependency.c:1192
+#: catalog/dependency.c:1191
 #, c-format
 msgid "cannot drop %s because other objects depend on it"
 msgstr "no se puede eliminar %s porque otros objetos dependen de él"
 
-#: catalog/dependency.c:1194 catalog/dependency.c:1195
-#: catalog/dependency.c:1201 catalog/dependency.c:1202
-#: catalog/dependency.c:1213 catalog/dependency.c:1214
-#: commands/tablecmds.c:1215 commands/tablecmds.c:12215 commands/user.c:1082
-#: commands/view.c:505 libpq/auth.c:332 replication/syncrep.c:1163
-#: storage/lmgr/deadlock.c:1145 storage/lmgr/proc.c:1347 utils/adt/acl.c:5344
-#: utils/misc/guc.c:6562 utils/misc/guc.c:6598 utils/misc/guc.c:6668
-#: utils/misc/guc.c:10714 utils/misc/guc.c:10748 utils/misc/guc.c:10782
-#: utils/misc/guc.c:10816 utils/misc/guc.c:10851
+#: catalog/dependency.c:1193 catalog/dependency.c:1194
+#: catalog/dependency.c:1200 catalog/dependency.c:1201
+#: catalog/dependency.c:1212 catalog/dependency.c:1213
+#: commands/tablecmds.c:1247 commands/tablecmds.c:12926 commands/user.c:1093
+#: commands/view.c:495 libpq/auth.c:334 replication/syncrep.c:1032
+#: storage/lmgr/deadlock.c:1154 storage/lmgr/proc.c:1350 utils/adt/acl.c:5329
+#: utils/adt/jsonfuncs.c:614 utils/adt/jsonfuncs.c:620 utils/misc/guc.c:6781
+#: utils/misc/guc.c:6817 utils/misc/guc.c:6887 utils/misc/guc.c:10957
+#: utils/misc/guc.c:10991 utils/misc/guc.c:11025 utils/misc/guc.c:11059
+#: utils/misc/guc.c:11094
 #, c-format
 msgid "%s"
 msgstr "%s"
 
-#: catalog/dependency.c:1196 catalog/dependency.c:1203
+#: catalog/dependency.c:1195 catalog/dependency.c:1202
 #, c-format
 msgid "Use DROP ... CASCADE to drop the dependent objects too."
 msgstr "Use DROP ... CASCADE para eliminar además los objetos dependientes."
 
-#: catalog/dependency.c:1200
+#: catalog/dependency.c:1199
 #, c-format
 msgid "cannot drop desired object(s) because other objects depend on them"
 msgstr "no se puede eliminar el o los objetos deseados porque otros objetos dependen de ellos"
 
 #. translator: %d always has a value larger than 1
-#: catalog/dependency.c:1209
+#: catalog/dependency.c:1208
 #, c-format
 msgid "drop cascades to %d other object"
 msgid_plural "drop cascades to %d other objects"
 msgstr[0] "eliminando además %d objeto más"
 msgstr[1] "eliminando además %d objetos más"
 
-#: catalog/dependency.c:1886
+#: catalog/dependency.c:1875
 #, c-format
 msgid "constant of the type %s cannot be used here"
 msgstr "no se puede usar una constante de tipo %s aquí"
 
-#: catalog/heap.c:332
+#: catalog/heap.c:330
 #, c-format
 msgid "permission denied to create \"%s.%s\""
 msgstr "se ha denegado el permiso para crear «%s.%s»"
 
-#: catalog/heap.c:334
+#: catalog/heap.c:332
 #, c-format
 msgid "System catalog modifications are currently disallowed."
 msgstr "Las modificaciones al catálogo del sistema están actualmente deshabilitadas."
 
-#: catalog/heap.c:502 commands/tablecmds.c:2066 commands/tablecmds.c:2583
-#: commands/tablecmds.c:5700
+#: catalog/heap.c:500 commands/tablecmds.c:2132 commands/tablecmds.c:2690
+#: commands/tablecmds.c:6094
 #, c-format
 msgid "tables can have at most %d columns"
 msgstr "las tablas pueden tener a lo más %d columnas"
 
-#: catalog/heap.c:520 commands/tablecmds.c:5985
+#: catalog/heap.c:518 commands/tablecmds.c:6387
 #, c-format
 msgid "column name \"%s\" conflicts with a system column name"
 msgstr "el nombre de columna «%s» colisiona con nombre de una columna de sistema"
 
-#: catalog/heap.c:536
+#: catalog/heap.c:534
 #, c-format
 msgid "column name \"%s\" specified more than once"
 msgstr "el nombre de columna «%s» fue especificado más de una vez"
 
-#: catalog/heap.c:604
+#. translator: first %s is an integer not a name
+#: catalog/heap.c:609
+#, fuzzy, c-format
+#| msgid "column \"%s\" has pseudo-type %s"
+msgid "partition key column %s has pseudo-type %s"
+msgstr "la columna «%s» tiene pseudotipo %s"
+
+#: catalog/heap.c:614
 #, c-format
 msgid "column \"%s\" has pseudo-type %s"
 msgstr "la columna «%s» tiene pseudotipo %s"
 
-#: catalog/heap.c:634
+#: catalog/heap.c:645
 #, c-format
 msgid "composite type %s cannot be made a member of itself"
 msgstr "un tipo compuesto %s no puede ser hecho miembro de sí mismo"
 
-#: catalog/heap.c:676 commands/createas.c:204 commands/createas.c:488
+#. translator: first %s is an integer not a name
+#: catalog/heap.c:700
+#, fuzzy, c-format
+#| msgid "no collation was derived for column \"%s\" with collatable type %s"
+msgid "no collation was derived for partition key column %s with collatable type %s"
+msgstr "no se derivó ningún ordenamiento (collate) para la columna «%s» con tipo ordenable %s"
+
+#: catalog/heap.c:706 commands/createas.c:203 commands/createas.c:486
 #, c-format
 msgid "no collation was derived for column \"%s\" with collatable type %s"
 msgstr "no se derivó ningún ordenamiento (collate) para la columna «%s» con tipo ordenable %s"
 
-#: catalog/heap.c:1122 catalog/index.c:864 commands/tablecmds.c:3350
+#: catalog/heap.c:1155 catalog/index.c:865 commands/tablecmds.c:3465
 #, c-format
 msgid "relation \"%s\" already exists"
 msgstr "la relación «%s» ya existe"
 
-#: catalog/heap.c:1138 catalog/pg_type.c:427 catalog/pg_type.c:749
-#: commands/typecmds.c:240 commands/typecmds.c:791 commands/typecmds.c:1191
-#: commands/typecmds.c:1403 commands/typecmds.c:2160
+#: catalog/heap.c:1171 catalog/pg_type.c:428 catalog/pg_type.c:775
+#: commands/typecmds.c:237 commands/typecmds.c:249 commands/typecmds.c:718
+#: commands/typecmds.c:1124 commands/typecmds.c:1336 commands/typecmds.c:2101
 #, c-format
 msgid "type \"%s\" already exists"
 msgstr "ya existe un tipo «%s»"
 
-#: catalog/heap.c:1139
+#: catalog/heap.c:1172
 #, c-format
 msgid "A relation has an associated type of the same name, so you must use a name that doesn't conflict with any existing type."
 msgstr "Una relación tiene un tipo asociado del mismo nombre, de modo que debe usar un nombre que no entre en conflicto con un tipo existente."
 
-#: catalog/heap.c:1168
+#: catalog/heap.c:1201
 #, c-format
 msgid "pg_class heap OID value not set when in binary upgrade mode"
 msgstr "el valor de OID de heap de pg_class no se definió en modo de actualización binaria"
 
-#: catalog/heap.c:2368
+#: catalog/heap.c:2400
 #, c-format
 msgid "cannot add NO INHERIT constraint to partitioned table \"%s\""
 msgstr "no se puede agregar una restricción NO INHERIT a la tabla particionada «%s»"
 
-#: catalog/heap.c:2638
+#: catalog/heap.c:2670
 #, c-format
 msgid "check constraint \"%s\" already exists"
 msgstr "la restricción «check» «%s» ya existe"
 
-#: catalog/heap.c:2808 catalog/index.c:878 catalog/pg_constraint.c:669
-#: commands/tablecmds.c:7379
+#: catalog/heap.c:2840 catalog/index.c:879 catalog/pg_constraint.c:668
+#: commands/tablecmds.c:7972
 #, c-format
 msgid "constraint \"%s\" for relation \"%s\" already exists"
 msgstr "la restricción «%s» para la relación «%s» ya existe"
 
-#: catalog/heap.c:2815
+#: catalog/heap.c:2847
 #, c-format
 msgid "constraint \"%s\" conflicts with non-inherited constraint on relation \"%s\""
 msgstr "la restricción «%s» está en conflicto con la restricción no heredada de la relación «%s»"
 
-#: catalog/heap.c:2826
+#: catalog/heap.c:2858
 #, c-format
 msgid "constraint \"%s\" conflicts with inherited constraint on relation \"%s\""
 msgstr "la restricción «%s» está en conflicto con la restricción heredada de la relación «%s»"
 
-#: catalog/heap.c:2836
+#: catalog/heap.c:2868
 #, c-format
 msgid "constraint \"%s\" conflicts with NOT VALID constraint on relation \"%s\""
 msgstr "la restricción «%s» está en conflicto con la restricción NOT VALID de la relación «%s»"
 
-#: catalog/heap.c:2841
+#: catalog/heap.c:2873
 #, c-format
 msgid "merging constraint \"%s\" with inherited definition"
 msgstr "mezclando la restricción «%s» con la definición heredada"
 
-#: catalog/heap.c:2943
+#: catalog/heap.c:2975
 #, c-format
 msgid "cannot use generated column \"%s\" in column generation expression"
 msgstr "no se puede usar la columna generada «%s» en una expresión de generación de columna"
 
-#: catalog/heap.c:2945
+#: catalog/heap.c:2977
 #, c-format
 msgid "A generated column cannot reference another generated column."
 msgstr "Una columna generada no puede hacer referencia a otra columna generada."
 
-#: catalog/heap.c:2997
+#: catalog/heap.c:3029
 #, c-format
 msgid "generation expression is not immutable"
 msgstr "la expresión de generación no es inmutable"
 
-#: catalog/heap.c:3025 rewrite/rewriteHandler.c:1189
+#: catalog/heap.c:3057 rewrite/rewriteHandler.c:1192
 #, c-format
 msgid "column \"%s\" is of type %s but default expression is of type %s"
 msgstr "la columna «%s» es de tipo %s pero la expresión default es de tipo %s"
 
-#: catalog/heap.c:3030 commands/prepare.c:384 parser/parse_node.c:434
-#: parser/parse_target.c:591 parser/parse_target.c:866
-#: parser/parse_target.c:876 rewrite/rewriteHandler.c:1194
+#: catalog/heap.c:3062 commands/prepare.c:367 parser/parse_node.c:412
+#: parser/parse_target.c:589 parser/parse_target.c:869
+#: parser/parse_target.c:879 rewrite/rewriteHandler.c:1197
 #, c-format
 msgid "You will need to rewrite or cast the expression."
 msgstr "Necesitará reescribir la expresión o aplicarle una conversión de tipo."
 
-#: catalog/heap.c:3077
+#: catalog/heap.c:3109
 #, c-format
 msgid "only table \"%s\" can be referenced in check constraint"
 msgstr "sólo la tabla «%s» puede ser referenciada en una restricción «check»"
 
-#: catalog/heap.c:3327
+#: catalog/heap.c:3366
 #, c-format
 msgid "unsupported ON COMMIT and foreign key combination"
 msgstr "combinación de ON COMMIT y llaves foráneas no soportada"
 
-#: catalog/heap.c:3328
+#: catalog/heap.c:3367
 #, c-format
 msgid "Table \"%s\" references \"%s\", but they do not have the same ON COMMIT setting."
 msgstr "La tabla «%s» se refiere a «%s», pero no tienen la misma expresión para ON COMMIT."
 
-#: catalog/heap.c:3333
+#: catalog/heap.c:3372
 #, c-format
 msgid "cannot truncate a table referenced in a foreign key constraint"
 msgstr "no se puede truncar una tabla referida en una llave foránea"
 
-#: catalog/heap.c:3334
+#: catalog/heap.c:3373
 #, c-format
 msgid "Table \"%s\" references \"%s\"."
 msgstr "La tabla «%s» hace referencia a «%s»."
 
-#: catalog/heap.c:3336
+#: catalog/heap.c:3375
 #, c-format
 msgid "Truncate table \"%s\" at the same time, or use TRUNCATE ... CASCADE."
 msgstr "Trunque la tabla «%s» al mismo tiempo, o utilice TRUNCATE ... CASCADE."
 
-#: catalog/index.c:219 parser/parse_utilcmd.c:1873 parser/parse_utilcmd.c:1972
+#: catalog/index.c:219 parser/parse_utilcmd.c:1910 parser/parse_utilcmd.c:2009
 #, c-format
 msgid "multiple primary keys for table \"%s\" are not allowed"
 msgstr "no se permiten múltiples llaves primarias para la tabla «%s»"
@@ -4081,438 +4341,451 @@ msgstr "las llaves primarias no pueden ser expresiones"
 msgid "primary key column \"%s\" is not marked NOT NULL"
 msgstr "columna de llave primaria «%s» no está marcada NOT NULL"
 
-#: catalog/index.c:763 catalog/index.c:1816
+#: catalog/index.c:764 catalog/index.c:1839
 #, c-format
 msgid "user-defined indexes on system catalog tables are not supported"
 msgstr "los usuarios no pueden crear índices en tablas del sistema"
 
-#: catalog/index.c:803
+#: catalog/index.c:804
 #, c-format
 msgid "nondeterministic collations are not supported for operator class \"%s\""
 msgstr "los ordenamientos no determinísticos no están soportados para la clase de operadores «%s»"
 
-#: catalog/index.c:818
+#: catalog/index.c:819
 #, c-format
 msgid "concurrent index creation on system catalog tables is not supported"
 msgstr "no se pueden crear índices de forma concurrente en tablas del sistema"
 
-#: catalog/index.c:827 catalog/index.c:1272
+#: catalog/index.c:828 catalog/index.c:1281
 #, c-format
 msgid "concurrent index creation for exclusion constraints is not supported"
 msgstr "no se pueden crear índices para restricciones de exclusión de forma concurrente"
 
-#: catalog/index.c:836
+#: catalog/index.c:837
 #, c-format
 msgid "shared indexes cannot be created after initdb"
 msgstr "no se pueden crear índices compartidos después de initdb"
 
-#: catalog/index.c:856 commands/createas.c:253 commands/sequence.c:154
+#: catalog/index.c:857 commands/createas.c:252 commands/sequence.c:154
 #: parser/parse_utilcmd.c:208
 #, c-format
 msgid "relation \"%s\" already exists, skipping"
 msgstr "la relación «%s» ya existe, omitiendo"
 
-#: catalog/index.c:906
+#: catalog/index.c:907
 #, c-format
 msgid "pg_class index OID value not set when in binary upgrade mode"
 msgstr "el valor de OID de índice de pg_class no se definió en modo de actualización binaria"
 
-#: catalog/index.c:2092
+#: catalog/index.c:2124
 #, c-format
 msgid "DROP INDEX CONCURRENTLY must be first action in transaction"
 msgstr "DROP INDEX CONCURRENTLY debe ser la primera acción en una transacción"
 
-#: catalog/index.c:2789
+#: catalog/index.c:2855
 #, c-format
 msgid "building index \"%s\" on table \"%s\" serially"
 msgstr "construyendo índice «%s» en la tabla «%s» en forma serial"
 
-#: catalog/index.c:2794
+#: catalog/index.c:2860
 #, c-format
 msgid "building index \"%s\" on table \"%s\" with request for %d parallel worker"
 msgid_plural "building index \"%s\" on table \"%s\" with request for %d parallel workers"
 msgstr[0] "construyendo índice «%s» en la tabla «%s» solicitando %d ayudante paralelo"
 msgstr[1] "construyendo índice «%s» en la tabla «%s» solicitando %d ayudantes paralelos"
 
-#: catalog/index.c:3422
+#: catalog/index.c:3488
 #, c-format
 msgid "cannot reindex temporary tables of other sessions"
 msgstr "no se puede hacer reindex de tablas temporales de otras sesiones"
 
-#: catalog/index.c:3553
+#: catalog/index.c:3499
+#, fuzzy, c-format
+#| msgid "cannot reindex specific index(es) in all databases"
+msgid "cannot reindex invalid index on TOAST table"
+msgstr "no es posible reindexar índices específicos en todas las bases de datos"
+
+#: catalog/index.c:3621
 #, c-format
 msgid "index \"%s\" was reindexed"
 msgstr "el índice «%s» fue reindexado"
 
-#: catalog/index.c:3627 commands/indexcmds.c:2882
+#: catalog/index.c:3697 commands/indexcmds.c:3017
 #, c-format
 msgid "REINDEX of partitioned tables is not yet implemented, skipping \"%s\""
 msgstr "REINDEX de tablas particionadas no está implementado aún, omitiendo «%s»"
 
-#: catalog/namespace.c:249 catalog/namespace.c:453 catalog/namespace.c:545
-#: commands/trigger.c:5394
+#: catalog/index.c:3752
+#, fuzzy, c-format
+#| msgid "cannot reindex invalid index \"%s.%s\" concurrently, skipping"
+msgid "cannot reindex invalid index \"%s.%s\" on TOAST table, skipping"
+msgstr "no se puede reindexar el índice no válido «%s.%s» concurrentemente, omitiendo"
+
+#: catalog/namespace.c:257 catalog/namespace.c:461 catalog/namespace.c:553
+#: commands/trigger.c:5043
 #, c-format
 msgid "cross-database references are not implemented: \"%s.%s.%s\""
 msgstr "no están implementadas las referencias entre bases de datos: «%s.%s.%s»"
 
-#: catalog/namespace.c:306
+#: catalog/namespace.c:314
 #, c-format
 msgid "temporary tables cannot specify a schema name"
 msgstr "las tablas temporales no pueden especificar un nombre de esquema"
 
-#: catalog/namespace.c:387
+#: catalog/namespace.c:395
 #, c-format
 msgid "could not obtain lock on relation \"%s.%s\""
 msgstr "no se pudo bloquear un candado en la relación «%s.%s»"
 
-#: catalog/namespace.c:392 commands/lockcmds.c:162 commands/lockcmds.c:249
+#: catalog/namespace.c:400 commands/lockcmds.c:142 commands/lockcmds.c:227
 #, c-format
 msgid "could not obtain lock on relation \"%s\""
 msgstr "no se pudo bloquear un candado en la relación «%s»"
 
-#: catalog/namespace.c:420 parser/parse_relation.c:1172
+#: catalog/namespace.c:428 parser/parse_relation.c:1357
 #, c-format
 msgid "relation \"%s.%s\" does not exist"
 msgstr "no existe la relación «%s.%s»"
 
-#: catalog/namespace.c:425 parser/parse_relation.c:1185
-#: parser/parse_relation.c:1193
+#: catalog/namespace.c:433 parser/parse_relation.c:1370
+#: parser/parse_relation.c:1378
 #, c-format
 msgid "relation \"%s\" does not exist"
 msgstr "no existe la relación «%s»"
 
-#: catalog/namespace.c:491 catalog/namespace.c:3022 commands/extension.c:1469
-#: commands/extension.c:1475
+#: catalog/namespace.c:499 catalog/namespace.c:3030 commands/extension.c:1506
+#: commands/extension.c:1512
 #, c-format
 msgid "no schema has been selected to create in"
 msgstr "no se ha seleccionado ningún esquema dentro del cual crear"
 
-#: catalog/namespace.c:643 catalog/namespace.c:656
+#: catalog/namespace.c:651 catalog/namespace.c:664
 #, c-format
 msgid "cannot create relations in temporary schemas of other sessions"
 msgstr "no se pueden crear relaciones en esquemas temporales de otras sesiones"
 
-#: catalog/namespace.c:647
+#: catalog/namespace.c:655
 #, c-format
 msgid "cannot create temporary relation in non-temporary schema"
 msgstr "no se pueden crear tablas temporales en esquemas no temporales"
 
-#: catalog/namespace.c:662
+#: catalog/namespace.c:670
 #, c-format
 msgid "only temporary relations may be created in temporary schemas"
 msgstr "sólo relaciones temporales pueden ser creadas en los esquemas temporales"
 
-#: catalog/namespace.c:2214
+#: catalog/namespace.c:2222
 #, c-format
 msgid "statistics object \"%s\" does not exist"
 msgstr "no existe el objeto de estadísticas «%s»"
 
-#: catalog/namespace.c:2337
+#: catalog/namespace.c:2345
 #, c-format
 msgid "text search parser \"%s\" does not exist"
 msgstr "no existe el analizador de búsqueda en texto «%s»"
 
-#: catalog/namespace.c:2463
+#: catalog/namespace.c:2471
 #, c-format
 msgid "text search dictionary \"%s\" does not exist"
 msgstr "no existe el diccionario de búsqueda en texto «%s»"
 
-#: catalog/namespace.c:2590
+#: catalog/namespace.c:2598
 #, c-format
 msgid "text search template \"%s\" does not exist"
 msgstr "no existe la plantilla de búsqueda en texto «%s»"
 
-#: catalog/namespace.c:2716 commands/tsearchcmds.c:1197
+#: catalog/namespace.c:2724 commands/tsearchcmds.c:1194
 #: utils/cache/ts_cache.c:617
 #, c-format
 msgid "text search configuration \"%s\" does not exist"
 msgstr "no existe la configuración de búsqueda en texto «%s»"
 
-#: catalog/namespace.c:2829 parser/parse_expr.c:866 parser/parse_target.c:1221
+#: catalog/namespace.c:2837 parser/parse_expr.c:872 parser/parse_target.c:1228
 #, c-format
 msgid "cross-database references are not implemented: %s"
 msgstr "no están implementadas las referencias entre bases de datos: %s"
 
-#: catalog/namespace.c:2835 gram.y:14731 gram.y:16165 parser/parse_expr.c:873
-#: parser/parse_target.c:1228
+#: catalog/namespace.c:2843 parser/parse_expr.c:879 parser/parse_target.c:1235
+#: gram.y:14978 gram.y:16432
 #, c-format
 msgid "improper qualified name (too many dotted names): %s"
 msgstr "el nombre no es válido (demasiados puntos): %s"
 
-#: catalog/namespace.c:2965
+#: catalog/namespace.c:2973
 #, c-format
 msgid "cannot move objects into or out of temporary schemas"
 msgstr "no se puede mover objetos hacia o desde esquemas temporales"
 
-#: catalog/namespace.c:2971
+#: catalog/namespace.c:2979
 #, c-format
 msgid "cannot move objects into or out of TOAST schema"
 msgstr "no se puede mover objetos hacia o desde el esquema TOAST"
 
-#: catalog/namespace.c:3044 commands/schemacmds.c:257 commands/schemacmds.c:337
-#: commands/tablecmds.c:1160
+#: catalog/namespace.c:3052 commands/schemacmds.c:256 commands/schemacmds.c:336
+#: commands/tablecmds.c:1192
 #, c-format
 msgid "schema \"%s\" does not exist"
 msgstr "no existe el esquema «%s»"
 
-#: catalog/namespace.c:3075
+#: catalog/namespace.c:3083
 #, c-format
 msgid "improper relation name (too many dotted names): %s"
 msgstr "el nombre de relación no es válido (demasiados puntos): %s"
 
-#: catalog/namespace.c:3609
+#: catalog/namespace.c:3646
 #, c-format
 msgid "collation \"%s\" for encoding \"%s\" does not exist"
 msgstr "no existe el ordenamiento (collation) «%s» para la codificación «%s»"
 
-#: catalog/namespace.c:3664
+#: catalog/namespace.c:3701
 #, c-format
 msgid "conversion \"%s\" does not exist"
 msgstr "no existe la conversión «%s»"
 
-#: catalog/namespace.c:3904
+#: catalog/namespace.c:3965
 #, c-format
 msgid "permission denied to create temporary tables in database \"%s\""
 msgstr "se ha denegado el permiso para crear tablas temporales en la base de datos «%s»"
 
-#: catalog/namespace.c:3920
+#: catalog/namespace.c:3981
 #, c-format
 msgid "cannot create temporary tables during recovery"
 msgstr "no se pueden crear tablas temporales durante la recuperación"
 
-#: catalog/namespace.c:3926
+#: catalog/namespace.c:3987
 #, c-format
 msgid "cannot create temporary tables during a parallel operation"
 msgstr "no se pueden crear tablas temporales durante una operación paralela"
 
-#: catalog/namespace.c:4209 commands/tablespace.c:1205 commands/variable.c:64
-#: utils/misc/guc.c:10883 utils/misc/guc.c:10961
+#: catalog/namespace.c:4286 commands/tablespace.c:1204 commands/variable.c:64
+#: utils/misc/guc.c:11126 utils/misc/guc.c:11204
 #, c-format
 msgid "List syntax is invalid."
 msgstr "La sintaxis de lista no es válida."
 
-#: catalog/objectaddress.c:1274 catalog/pg_publication.c:66
+#: catalog/objectaddress.c:1275 catalog/pg_publication.c:57
 #: commands/policy.c:95 commands/policy.c:395 commands/policy.c:485
-#: commands/tablecmds.c:224 commands/tablecmds.c:266 commands/tablecmds.c:1922
-#: commands/tablecmds.c:5173 commands/tablecmds.c:10387
+#: commands/tablecmds.c:230 commands/tablecmds.c:272 commands/tablecmds.c:1976
+#: commands/tablecmds.c:5541 commands/tablecmds.c:10999
 #, c-format
 msgid "\"%s\" is not a table"
 msgstr "«%s» no es una tabla"
 
-#: catalog/objectaddress.c:1281 commands/tablecmds.c:236
-#: commands/tablecmds.c:5203 commands/tablecmds.c:14922 commands/view.c:138
+#: catalog/objectaddress.c:1282 commands/tablecmds.c:242
+#: commands/tablecmds.c:5571 commands/tablecmds.c:15621 commands/view.c:119
 #, c-format
 msgid "\"%s\" is not a view"
 msgstr "«%s» no es una vista"
 
-#: catalog/objectaddress.c:1288 commands/matview.c:175 commands/tablecmds.c:242
-#: commands/tablecmds.c:14927
+#: catalog/objectaddress.c:1289 commands/matview.c:175 commands/tablecmds.c:248
+#: commands/tablecmds.c:15626
 #, c-format
 msgid "\"%s\" is not a materialized view"
 msgstr "«%s» no es una vista materializada"
 
-#: catalog/objectaddress.c:1295 commands/tablecmds.c:260
-#: commands/tablecmds.c:5206 commands/tablecmds.c:14932
+#: catalog/objectaddress.c:1296 commands/tablecmds.c:266
+#: commands/tablecmds.c:5574 commands/tablecmds.c:15631
 #, c-format
 msgid "\"%s\" is not a foreign table"
 msgstr "«%s» no es una tabla foránea"
 
-#: catalog/objectaddress.c:1336
+#: catalog/objectaddress.c:1337
 #, c-format
 msgid "must specify relation and object name"
 msgstr "debe especificar nombre de relación y nombre de objeto"
 
-#: catalog/objectaddress.c:1412 catalog/objectaddress.c:1465
+#: catalog/objectaddress.c:1413 catalog/objectaddress.c:1466
 #, c-format
 msgid "column name must be qualified"
 msgstr "el nombre de columna debe ser calificado"
 
-#: catalog/objectaddress.c:1512
+#: catalog/objectaddress.c:1513
 #, c-format
 msgid "default value for column \"%s\" of relation \"%s\" does not exist"
 msgstr "no existe el valor por omisión para la columna «%s» de la relación «%s»"
 
-#: catalog/objectaddress.c:1549 commands/functioncmds.c:132
-#: commands/tablecmds.c:252 commands/typecmds.c:3321 parser/parse_type.c:244
-#: parser/parse_type.c:273 parser/parse_type.c:846 utils/adt/acl.c:4451
+#: catalog/objectaddress.c:1550 commands/functioncmds.c:133
+#: commands/tablecmds.c:258 commands/typecmds.c:262 commands/typecmds.c:3252
+#: parser/parse_type.c:243 parser/parse_type.c:272 parser/parse_type.c:845
+#: utils/adt/acl.c:4436
 #, c-format
 msgid "type \"%s\" does not exist"
 msgstr "no existe el tipo «%s»"
 
-#: catalog/objectaddress.c:1668
+#: catalog/objectaddress.c:1669
 #, c-format
 msgid "operator %d (%s, %s) of %s does not exist"
 msgstr "no existe el operador %d (%s, %s) de %s"
 
-#: catalog/objectaddress.c:1699
+#: catalog/objectaddress.c:1700
 #, c-format
 msgid "function %d (%s, %s) of %s does not exist"
 msgstr "no existe la función %d (%s, %s) de %s"
 
-#: catalog/objectaddress.c:1750 catalog/objectaddress.c:1776
+#: catalog/objectaddress.c:1751 catalog/objectaddress.c:1777
 #, c-format
 msgid "user mapping for user \"%s\" on server \"%s\" does not exist"
 msgstr "no existe el mapeo para el usuario «%s» en el servidor «%s»"
 
-#: catalog/objectaddress.c:1765 commands/foreigncmds.c:433
-#: commands/foreigncmds.c:1016 commands/foreigncmds.c:1396
+#: catalog/objectaddress.c:1766 commands/foreigncmds.c:430
+#: commands/foreigncmds.c:1012 commands/foreigncmds.c:1392
 #: foreign/foreign.c:723
 #, c-format
 msgid "server \"%s\" does not exist"
 msgstr "no existe el servidor «%s»"
 
-#: catalog/objectaddress.c:1832
+#: catalog/objectaddress.c:1833
 #, c-format
 msgid "publication relation \"%s\" in publication \"%s\" does not exist"
 msgstr "no existe la relación «%s» en la publicación «%s»"
 
-#: catalog/objectaddress.c:1894
+#: catalog/objectaddress.c:1895
 #, c-format
 msgid "unrecognized default ACL object type \"%c\""
 msgstr "tipo de objeto para ACL por omisión «%c» no reconocido"
 
-#: catalog/objectaddress.c:1895
+#: catalog/objectaddress.c:1896
 #, c-format
 msgid "Valid object types are \"%c\", \"%c\", \"%c\", \"%c\", \"%c\"."
 msgstr "Tipos válidos de objeto son «%c», «%c», «%c», «%c» y «%c»."
 
-#: catalog/objectaddress.c:1946
+#: catalog/objectaddress.c:1947
 #, c-format
 msgid "default ACL for user \"%s\" in schema \"%s\" on %s does not exist"
 msgstr "no existe el ACL por omisión para el usuario «%s» en el esquema «%s» en %s"
 
-#: catalog/objectaddress.c:1951
+#: catalog/objectaddress.c:1952
 #, c-format
 msgid "default ACL for user \"%s\" on %s does not exist"
 msgstr "no existe el ACL por omisión para el usuario «%s» en %s"
 
-#: catalog/objectaddress.c:1978 catalog/objectaddress.c:2036
-#: catalog/objectaddress.c:2093
+#: catalog/objectaddress.c:1979 catalog/objectaddress.c:2037
+#: catalog/objectaddress.c:2094
 #, c-format
 msgid "name or argument lists may not contain nulls"
 msgstr "las listas de nombres o argumentos no pueden contener nulls"
 
-#: catalog/objectaddress.c:2012
+#: catalog/objectaddress.c:2013
 #, c-format
 msgid "unsupported object type \"%s\""
 msgstr "tipo de objeto «%s» no soportado"
 
-#: catalog/objectaddress.c:2032 catalog/objectaddress.c:2050
-#: catalog/objectaddress.c:2191
+#: catalog/objectaddress.c:2033 catalog/objectaddress.c:2051
+#: catalog/objectaddress.c:2192
 #, c-format
 msgid "name list length must be exactly %d"
 msgstr "el largo de la lista de nombres debe ser exactamente %d"
 
-#: catalog/objectaddress.c:2054
+#: catalog/objectaddress.c:2055
 #, c-format
 msgid "large object OID may not be null"
 msgstr "el OID de objeto grande no puede ser null"
 
-#: catalog/objectaddress.c:2063 catalog/objectaddress.c:2126
-#: catalog/objectaddress.c:2133
+#: catalog/objectaddress.c:2064 catalog/objectaddress.c:2127
+#: catalog/objectaddress.c:2134
 #, c-format
 msgid "name list length must be at least %d"
 msgstr "el largo de la lista de nombres debe ser al menos %d"
 
-#: catalog/objectaddress.c:2119 catalog/objectaddress.c:2140
+#: catalog/objectaddress.c:2120 catalog/objectaddress.c:2141
 #, c-format
 msgid "argument list length must be exactly %d"
 msgstr "el largo de la lista de argumentos debe ser exactamente %d"
 
-#: catalog/objectaddress.c:2392 libpq/be-fsstubs.c:321
+#: catalog/objectaddress.c:2393 libpq/be-fsstubs.c:321
 #, c-format
 msgid "must be owner of large object %u"
 msgstr "debe ser dueño del objeto grande %u"
 
-#: catalog/objectaddress.c:2407 commands/functioncmds.c:1535
+#: catalog/objectaddress.c:2408 commands/functioncmds.c:1445
 #, c-format
 msgid "must be owner of type %s or type %s"
 msgstr "debe ser dueño del tipo %s o el tipo %s"
 
-#: catalog/objectaddress.c:2457 catalog/objectaddress.c:2474
+#: catalog/objectaddress.c:2458 catalog/objectaddress.c:2475
 #, c-format
 msgid "must be superuser"
 msgstr "debe ser superusuario"
 
-#: catalog/objectaddress.c:2464
+#: catalog/objectaddress.c:2465
 #, c-format
 msgid "must have CREATEROLE privilege"
 msgstr "debe tener privilegio CREATEROLE"
 
-#: catalog/objectaddress.c:2543
+#: catalog/objectaddress.c:2544
 #, c-format
 msgid "unrecognized object type \"%s\""
 msgstr "tipo de objeto «%s» no reconocido"
 
 #. translator: second %s is, e.g., "table %s"
-#: catalog/objectaddress.c:2764
+#: catalog/objectaddress.c:2772
 #, c-format
 msgid "column %s of %s"
 msgstr " columna %s de %s"
 
-#: catalog/objectaddress.c:2774
+#: catalog/objectaddress.c:2782
 #, c-format
 msgid "function %s"
 msgstr "función %s"
 
-#: catalog/objectaddress.c:2779
+#: catalog/objectaddress.c:2787
 #, c-format
 msgid "type %s"
 msgstr "tipo %s"
 
-#: catalog/objectaddress.c:2809
+#: catalog/objectaddress.c:2817
 #, c-format
 msgid "cast from %s to %s"
 msgstr "conversión de %s a %s"
 
-#: catalog/objectaddress.c:2837
+#: catalog/objectaddress.c:2845
 #, c-format
 msgid "collation %s"
 msgstr "ordenamiento (collation) %s"
 
 #. translator: second %s is, e.g., "table %s"
-#: catalog/objectaddress.c:2863
+#: catalog/objectaddress.c:2871
 #, c-format
 msgid "constraint %s on %s"
 msgstr "restricción «%s» en %s"
 
-#: catalog/objectaddress.c:2869
+#: catalog/objectaddress.c:2877
 #, c-format
 msgid "constraint %s"
 msgstr "restricción %s"
 
-#: catalog/objectaddress.c:2896
+#: catalog/objectaddress.c:2904
 #, c-format
 msgid "conversion %s"
 msgstr "conversión %s"
 
 #. translator: %s is typically "column %s of table %s"
-#: catalog/objectaddress.c:2935
+#: catalog/objectaddress.c:2943
 #, c-format
 msgid "default value for %s"
 msgstr "valor por omisión para %s"
 
-#: catalog/objectaddress.c:2944
+#: catalog/objectaddress.c:2952
 #, c-format
 msgid "language %s"
 msgstr "lenguaje %s"
 
-#: catalog/objectaddress.c:2949
+#: catalog/objectaddress.c:2957
 #, c-format
 msgid "large object %u"
 msgstr "objeto grande %u"
 
-#: catalog/objectaddress.c:2954
+#: catalog/objectaddress.c:2962
 #, c-format
 msgid "operator %s"
 msgstr "operador %s"
 
-#: catalog/objectaddress.c:2986
+#: catalog/objectaddress.c:2994
 #, c-format
 msgid "operator class %s for access method %s"
 msgstr "clase de operadores «%s» para el método de acceso «%s»"
 
-#: catalog/objectaddress.c:3009
+#: catalog/objectaddress.c:3017
 #, c-format
 msgid "access method %s"
 msgstr "método de acceso %s"
@@ -4521,7 +4794,7 @@ msgstr "método de acceso %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:3051
+#: catalog/objectaddress.c:3059
 #, c-format
 msgid "operator %d (%s, %s) of %s: %s"
 msgstr "operador %d (%s, %s) de %s: %s"
@@ -4530,392 +4803,368 @@ msgstr "operador %d (%s, %s) de %s: %s"
 #. are data type names, the third %s is the description of the
 #. operator family, and the last %s is the textual form of the
 #. function with arguments.
-#: catalog/objectaddress.c:3101
+#: catalog/objectaddress.c:3109
 #, c-format
 msgid "function %d (%s, %s) of %s: %s"
 msgstr "función %d (%s, %s) de %s: %s"
 
 #. translator: second %s is, e.g., "table %s"
-#: catalog/objectaddress.c:3145
+#: catalog/objectaddress.c:3153
 #, c-format
 msgid "rule %s on %s"
 msgstr "regla %s en %s"
 
 #. translator: second %s is, e.g., "table %s"
-#: catalog/objectaddress.c:3183
+#: catalog/objectaddress.c:3191
 #, c-format
 msgid "trigger %s on %s"
 msgstr "disparador %s en %s"
 
-#: catalog/objectaddress.c:3199
+#: catalog/objectaddress.c:3207
 #, c-format
 msgid "schema %s"
 msgstr "esquema %s"
 
-#: catalog/objectaddress.c:3222
+#: catalog/objectaddress.c:3230
 #, c-format
 msgid "statistics object %s"
 msgstr "object de estadísticas %s"
 
-#: catalog/objectaddress.c:3249
+#: catalog/objectaddress.c:3257
 #, c-format
 msgid "text search parser %s"
 msgstr "analizador de búsqueda en texto %s"
 
-#: catalog/objectaddress.c:3275
+#: catalog/objectaddress.c:3283
 #, c-format
 msgid "text search dictionary %s"
 msgstr "diccionario de búsqueda en texto %s"
 
-#: catalog/objectaddress.c:3301
+#: catalog/objectaddress.c:3309
 #, c-format
 msgid "text search template %s"
 msgstr "plantilla de búsqueda en texto %s"
 
-#: catalog/objectaddress.c:3327
+#: catalog/objectaddress.c:3335
 #, c-format
 msgid "text search configuration %s"
 msgstr "configuración de búsqueda en texto %s"
 
-#: catalog/objectaddress.c:3336
+#: catalog/objectaddress.c:3344
 #, c-format
 msgid "role %s"
 msgstr "rol %s"
 
-#: catalog/objectaddress.c:3349
+#: catalog/objectaddress.c:3357
 #, c-format
 msgid "database %s"
 msgstr "base de datos %s"
 
-#: catalog/objectaddress.c:3361
+#: catalog/objectaddress.c:3369
 #, c-format
 msgid "tablespace %s"
 msgstr "tablespace %s"
 
-#: catalog/objectaddress.c:3370
+#: catalog/objectaddress.c:3378
 #, c-format
 msgid "foreign-data wrapper %s"
 msgstr "conector de datos externos %s"
 
-#: catalog/objectaddress.c:3379
+#: catalog/objectaddress.c:3387
 #, c-format
 msgid "server %s"
 msgstr "servidor %s"
 
-#: catalog/objectaddress.c:3407
+#: catalog/objectaddress.c:3415
 #, c-format
 msgid "user mapping for %s on server %s"
 msgstr "mapeo para el usuario %s en el servidor %s"
 
-#: catalog/objectaddress.c:3452
+#: catalog/objectaddress.c:3460
 #, c-format
 msgid "default privileges on new relations belonging to role %s in schema %s"
 msgstr "privilegios por omisión en nuevas relaciones pertenecientes al rol %s en el esquema %s"
 
-#: catalog/objectaddress.c:3456
+#: catalog/objectaddress.c:3464
 #, c-format
 msgid "default privileges on new relations belonging to role %s"
 msgstr "privilegios por omisión en nuevas relaciones pertenecientes al rol %s"
 
-#: catalog/objectaddress.c:3462
+#: catalog/objectaddress.c:3470
 #, c-format
 msgid "default privileges on new sequences belonging to role %s in schema %s"
 msgstr "privilegios por omisión en nuevas secuencias pertenecientes al rol %s en el esquema %s"
 
-#: catalog/objectaddress.c:3466
+#: catalog/objectaddress.c:3474
 #, c-format
 msgid "default privileges on new sequences belonging to role %s"
 msgstr "privilegios por omisión en nuevas secuencias pertenecientes al rol %s"
 
-#: catalog/objectaddress.c:3472
+#: catalog/objectaddress.c:3480
 #, c-format
 msgid "default privileges on new functions belonging to role %s in schema %s"
 msgstr "privilegios por omisión en nuevas funciones pertenecientes al rol %s en el esquema %s"
 
-#: catalog/objectaddress.c:3476
+#: catalog/objectaddress.c:3484
 #, c-format
 msgid "default privileges on new functions belonging to role %s"
 msgstr "privilegios por omisión en nuevas funciones pertenecientes al rol %s"
 
-#: catalog/objectaddress.c:3482
+#: catalog/objectaddress.c:3490
 #, c-format
 msgid "default privileges on new types belonging to role %s in schema %s"
 msgstr "privilegios por omisión en nuevos tipos pertenecientes al rol %s en el esquema %s"
 
-#: catalog/objectaddress.c:3486
+#: catalog/objectaddress.c:3494
 #, c-format
 msgid "default privileges on new types belonging to role %s"
 msgstr "privilegios por omisión en nuevos tipos pertenecientes al rol %s"
 
-#: catalog/objectaddress.c:3492
+#: catalog/objectaddress.c:3500
 #, c-format
 msgid "default privileges on new schemas belonging to role %s"
 msgstr "privilegios por omisión en nuevos esquemas pertenecientes al rol %s"
 
-#: catalog/objectaddress.c:3499
+#: catalog/objectaddress.c:3507
 #, c-format
 msgid "default privileges belonging to role %s in schema %s"
 msgstr "privilegios por omisión pertenecientes al rol %s en el esquema %s"
 
-#: catalog/objectaddress.c:3503
+#: catalog/objectaddress.c:3511
 #, c-format
 msgid "default privileges belonging to role %s"
 msgstr "privilegios por omisión pertenecientes al rol %s"
 
-#: catalog/objectaddress.c:3521
+#: catalog/objectaddress.c:3529
 #, c-format
 msgid "extension %s"
 msgstr "extensión %s"
 
-#: catalog/objectaddress.c:3534
+#: catalog/objectaddress.c:3542
 #, c-format
 msgid "event trigger %s"
 msgstr "disparador por eventos %s"
 
 #. translator: second %s is, e.g., "table %s"
-#: catalog/objectaddress.c:3570
+#: catalog/objectaddress.c:3578
 #, c-format
 msgid "policy %s on %s"
 msgstr "política %s en %s"
 
-#: catalog/objectaddress.c:3580
+#: catalog/objectaddress.c:3588
 #, c-format
 msgid "publication %s"
 msgstr "publicación %s"
 
 #. translator: first %s is, e.g., "table %s"
-#: catalog/objectaddress.c:3606
+#: catalog/objectaddress.c:3614
 #, c-format
 msgid "publication of %s in publication %s"
 msgstr "publicación de %s en la publicación %s"
 
-#: catalog/objectaddress.c:3615
+#: catalog/objectaddress.c:3623
 #, c-format
 msgid "subscription %s"
 msgstr "suscripción %s"
 
-#: catalog/objectaddress.c:3634
+#: catalog/objectaddress.c:3642
 #, c-format
 msgid "transform for %s language %s"
 msgstr "transformación para %s lenguaje %s"
 
-#: catalog/objectaddress.c:3697
+#: catalog/objectaddress.c:3705
 #, c-format
 msgid "table %s"
 msgstr "tabla %s"
 
-#: catalog/objectaddress.c:3702
+#: catalog/objectaddress.c:3710
 #, c-format
 msgid "index %s"
 msgstr "índice %s"
 
-#: catalog/objectaddress.c:3706
+#: catalog/objectaddress.c:3714
 #, c-format
 msgid "sequence %s"
 msgstr "secuencia %s"
 
-#: catalog/objectaddress.c:3710
+#: catalog/objectaddress.c:3718
 #, c-format
 msgid "toast table %s"
 msgstr "tabla toast %s"
 
-#: catalog/objectaddress.c:3714
+#: catalog/objectaddress.c:3722
 #, c-format
 msgid "view %s"
 msgstr "vista %s"
 
-#: catalog/objectaddress.c:3718
+#: catalog/objectaddress.c:3726
 #, c-format
 msgid "materialized view %s"
 msgstr "vista materializada %s"
 
-#: catalog/objectaddress.c:3722
+#: catalog/objectaddress.c:3730
 #, c-format
 msgid "composite type %s"
 msgstr "tipo compuesto %s"
 
-#: catalog/objectaddress.c:3726
+#: catalog/objectaddress.c:3734
 #, c-format
 msgid "foreign table %s"
 msgstr "tabla foránea %s"
 
-#: catalog/objectaddress.c:3731
+#: catalog/objectaddress.c:3739
 #, c-format
 msgid "relation %s"
 msgstr "relación %s"
 
-#: catalog/objectaddress.c:3768
+#: catalog/objectaddress.c:3776
 #, c-format
 msgid "operator family %s for access method %s"
 msgstr "familia de operadores %s para el método de acceso %s"
 
-#: catalog/partition.c:214 commands/analyze.c:1359 commands/indexcmds.c:1090
-#: commands/tablecmds.c:1091 commands/tablecmds.c:8176
-#: commands/tablecmds.c:8319 commands/tablecmds.c:8510
-#: commands/tablecmds.c:8647 commands/tablecmds.c:10478
-#: commands/tablecmds.c:15865 commands/tablecmds.c:16442
-#: executor/execExprInterp.c:3303 executor/execMain.c:1863
-#: executor/execMain.c:1949 executor/execMain.c:1999 executor/execMain.c:2107
-#: executor/execPartition.c:590 executor/execPartition.c:650
-#: executor/execPartition.c:794 executor/execPartition.c:908
-#: executor/execPartition.c:941 executor/execPartition.c:1046
-#: executor/nodeModifyTable.c:1960
-msgid "could not convert row type"
-msgstr "no se pudo convertir el tipo de registro"
-
-#: catalog/pg_aggregate.c:129
+#: catalog/pg_aggregate.c:128
 #, c-format
 msgid "aggregates cannot have more than %d argument"
 msgid_plural "aggregates cannot have more than %d arguments"
 msgstr[0] "las funciones de agregación no pueden tener más de %d argumento"
 msgstr[1] "las funciones de agregación no pueden tener más de %d argumentos"
 
-#: catalog/pg_aggregate.c:152 catalog/pg_aggregate.c:162
+#: catalog/pg_aggregate.c:143 catalog/pg_aggregate.c:157
 #, c-format
 msgid "cannot determine transition data type"
 msgstr "no se pudo determinar el tipo de dato de transición"
 
-#: catalog/pg_aggregate.c:153 catalog/pg_aggregate.c:163
-#, c-format
-msgid "An aggregate using a polymorphic transition type must have at least one polymorphic argument."
-msgstr "Una función de agregación que use un tipo de dato de transición polimórfico debe tener al menos un argumento de tipo polimórfico."
-
-#: catalog/pg_aggregate.c:176
+#: catalog/pg_aggregate.c:172
 #, c-format
 msgid "a variadic ordered-set aggregate must use VARIADIC type ANY"
 msgstr "una función de agregación variádica de conjuntos ordenados debe ser de tipo VARIADIC ANY"
 
-#: catalog/pg_aggregate.c:202
+#: catalog/pg_aggregate.c:198
 #, c-format
 msgid "a hypothetical-set aggregate must have direct arguments matching its aggregated arguments"
 msgstr "la función de agregación de conjunto hipotético debe tener argumentos directos que coincidan con los argumentos agregados"
 
-#: catalog/pg_aggregate.c:249 catalog/pg_aggregate.c:293
+#: catalog/pg_aggregate.c:245 catalog/pg_aggregate.c:289
 #, c-format
 msgid "return type of transition function %s is not %s"
 msgstr "el tipo de retorno de la función de transición %s no es %s"
 
-#: catalog/pg_aggregate.c:269 catalog/pg_aggregate.c:312
+#: catalog/pg_aggregate.c:265 catalog/pg_aggregate.c:308
 #, c-format
 msgid "must not omit initial value when transition function is strict and transition type is not compatible with input type"
 msgstr "no se puede omitir el valor inicial cuando la función de transición es «strict» y el tipo de transición no es compatible con el tipo de entrada"
 
-#: catalog/pg_aggregate.c:338
+#: catalog/pg_aggregate.c:334
 #, c-format
 msgid "return type of inverse transition function %s is not %s"
 msgstr "el tipo de retorno de la función inversa de transición %s no es %s"
 
-#: catalog/pg_aggregate.c:355 executor/nodeWindowAgg.c:2851
+#: catalog/pg_aggregate.c:351 executor/nodeWindowAgg.c:2852
 #, c-format
 msgid "strictness of aggregate's forward and inverse transition functions must match"
 msgstr "la opción «strict» de las funciones de transición directa e inversa deben coincidir exactamente en la función de agregación"
 
-#: catalog/pg_aggregate.c:399 catalog/pg_aggregate.c:552
+#: catalog/pg_aggregate.c:395 catalog/pg_aggregate.c:553
 #, c-format
 msgid "final function with extra arguments must not be declared STRICT"
 msgstr "la función final con argumentos extra no debe declararse STRICT"
 
-#: catalog/pg_aggregate.c:430
+#: catalog/pg_aggregate.c:426
 #, c-format
 msgid "return type of combine function %s is not %s"
 msgstr "el tipo de retorno de la función «combine» %s no es %s"
 
-#: catalog/pg_aggregate.c:442 executor/nodeAgg.c:3003
+#: catalog/pg_aggregate.c:438 executor/nodeAgg.c:4099
 #, c-format
 msgid "combine function with transition type %s must not be declared STRICT"
 msgstr "la función «combine» con tipo de transición %s no debe declararse STRICT"
 
-#: catalog/pg_aggregate.c:461
+#: catalog/pg_aggregate.c:457
 #, c-format
 msgid "return type of serialization function %s is not %s"
 msgstr "el tipo de retorno de la función de serialización %s no es %s"
 
-#: catalog/pg_aggregate.c:482
+#: catalog/pg_aggregate.c:478
 #, c-format
 msgid "return type of deserialization function %s is not %s"
 msgstr "el tipo de retorno de la función de deserialización %s no es %s"
 
-#: catalog/pg_aggregate.c:498 catalog/pg_proc.c:243 catalog/pg_proc.c:250
+#: catalog/pg_aggregate.c:497 catalog/pg_proc.c:186 catalog/pg_proc.c:220
 #, c-format
 msgid "cannot determine result data type"
 msgstr "no se puede determinar el tipo de dato del resultado"
 
-#: catalog/pg_aggregate.c:499
-#, c-format
-msgid "An aggregate returning a polymorphic type must have at least one polymorphic argument."
-msgstr "Una función de agregación que retorne un tipo de datos polimórfico debe tener al menos un argumento de tipo polimórfico."
-
-#: catalog/pg_aggregate.c:511 catalog/pg_proc.c:256
+#: catalog/pg_aggregate.c:512 catalog/pg_proc.c:199 catalog/pg_proc.c:228
 #, c-format
 msgid "unsafe use of pseudo-type \"internal\""
 msgstr "uso inseguro de pseudotipo «internal»"
 
-#: catalog/pg_aggregate.c:512 catalog/pg_proc.c:257
-#, c-format
-msgid "A function returning \"internal\" must have at least one \"internal\" argument."
-msgstr "Una función que retorne «internal» debe tener al menos un argumento de tipo «internal»."
-
-#: catalog/pg_aggregate.c:565
+#: catalog/pg_aggregate.c:566
 #, c-format
 msgid "moving-aggregate implementation returns type %s, but plain implementation returns type %s"
 msgstr "la implementación de la función de agregación en modo «moving» devuelve tipo de dato %s, pero la implementación normal devuelve tipo de dato %s"
 
-#: catalog/pg_aggregate.c:576
+#: catalog/pg_aggregate.c:577
 #, c-format
 msgid "sort operator can only be specified for single-argument aggregates"
 msgstr "el operador de ordenamiento sólo puede ser especificado para funciones de agregación de un solo argumento"
 
-#: catalog/pg_aggregate.c:703 catalog/pg_proc.c:396
+#: catalog/pg_aggregate.c:704 catalog/pg_proc.c:374
 #, c-format
 msgid "cannot change routine kind"
 msgstr "no se puede cambiar el tipo de rutina"
 
-#: catalog/pg_aggregate.c:705
+#: catalog/pg_aggregate.c:706
 #, c-format
 msgid "\"%s\" is an ordinary aggregate function."
 msgstr "«%s» es una función de agregación corriente."
 
-#: catalog/pg_aggregate.c:707
+#: catalog/pg_aggregate.c:708
 #, c-format
 msgid "\"%s\" is an ordered-set aggregate."
 msgstr "«%s» es una función de agregación de conjunto ordenado."
 
-#: catalog/pg_aggregate.c:709
+#: catalog/pg_aggregate.c:710
 #, c-format
 msgid "\"%s\" is a hypothetical-set aggregate."
 msgstr "«%s» es una agregación de conjunto hipotético."
 
-#: catalog/pg_aggregate.c:714
+#: catalog/pg_aggregate.c:715
 #, c-format
 msgid "cannot change number of direct arguments of an aggregate function"
 msgstr "no se puede cambiar cantidad de argumentos directos de una función de agregación"
 
-#: catalog/pg_aggregate.c:869 commands/functioncmds.c:665
-#: commands/typecmds.c:1751 commands/typecmds.c:1802 commands/typecmds.c:1833
-#: commands/typecmds.c:1856 commands/typecmds.c:1877 commands/typecmds.c:1904
-#: commands/typecmds.c:1931 commands/typecmds.c:2008 commands/typecmds.c:2050
-#: parser/parse_func.c:418 parser/parse_func.c:447 parser/parse_func.c:472
-#: parser/parse_func.c:486 parser/parse_func.c:606 parser/parse_func.c:626
-#: parser/parse_func.c:2144 parser/parse_func.c:2335
+#: catalog/pg_aggregate.c:870 commands/functioncmds.c:667
+#: commands/typecmds.c:1647 commands/typecmds.c:1692 commands/typecmds.c:1734
+#: commands/typecmds.c:1770 commands/typecmds.c:1804 commands/typecmds.c:1838
+#: commands/typecmds.c:1872 commands/typecmds.c:1949 commands/typecmds.c:1991
+#: parser/parse_func.c:414 parser/parse_func.c:443 parser/parse_func.c:468
+#: parser/parse_func.c:482 parser/parse_func.c:602 parser/parse_func.c:622
+#: parser/parse_func.c:2129 parser/parse_func.c:2320
 #, c-format
 msgid "function %s does not exist"
 msgstr "no existe la función %s"
 
-#: catalog/pg_aggregate.c:875
+#: catalog/pg_aggregate.c:876
 #, c-format
 msgid "function %s returns a set"
 msgstr "la función %s retorna un conjunto"
 
-#: catalog/pg_aggregate.c:890
+#: catalog/pg_aggregate.c:891
 #, c-format
 msgid "function %s must accept VARIADIC ANY to be used in this aggregate"
 msgstr "la función %s debe aceptar VARIADIC ANY para usarse en esta agregación"
 
-#: catalog/pg_aggregate.c:914
+#: catalog/pg_aggregate.c:915
 #, c-format
 msgid "function %s requires run-time type coercion"
 msgstr "la función %s requiere conversión de tipos en tiempo de ejecución"
 
+#: catalog/pg_cast.c:67
+#, c-format
+msgid "cast from type %s to type %s already exists"
+msgstr "ya existe una conversión del tipo %s al tipo %s"
+
 #: catalog/pg_collation.c:93 catalog/pg_collation.c:140
 #, c-format
 msgid "collation \"%s\" already exists, skipping"
@@ -4936,17 +5185,17 @@ msgstr "el ordenamiento «%s» ya existe"
 msgid "collation \"%s\" for encoding \"%s\" already exists"
 msgstr "la codificación «%2$s» ya tiene un ordenamiento llamado «%1$s»"
 
-#: catalog/pg_constraint.c:677
+#: catalog/pg_constraint.c:676
 #, c-format
 msgid "constraint \"%s\" for domain %s already exists"
 msgstr "el dominio %2$s ya contiene una restricción llamada «%1$s»"
 
-#: catalog/pg_constraint.c:875 catalog/pg_constraint.c:968
+#: catalog/pg_constraint.c:874 catalog/pg_constraint.c:967
 #, c-format
 msgid "constraint \"%s\" for table \"%s\" does not exist"
 msgstr "no existe la restricción «%s» para la tabla «%s»"
 
-#: catalog/pg_constraint.c:1057
+#: catalog/pg_constraint.c:1056
 #, c-format
 msgid "constraint \"%s\" for domain %s does not exist"
 msgstr "no existe la restricción «%s» para el dominio %s"
@@ -4961,52 +5210,52 @@ msgstr "ya existe la conversión «%s»"
 msgid "default conversion for %s to %s already exists"
 msgstr "ya existe una conversión por omisión desde %s a %s"
 
-#: catalog/pg_depend.c:162 commands/extension.c:3229
+#: catalog/pg_depend.c:162 commands/extension.c:3311
 #, c-format
 msgid "%s is already a member of extension \"%s\""
 msgstr "«%s» ya es un miembro de la extensión «%s»"
 
-#: catalog/pg_depend.c:489
+#: catalog/pg_depend.c:538
 #, c-format
 msgid "cannot remove dependency on %s because it is a system object"
 msgstr "no se puede eliminar dependencia a %s porque es un objeto requerido por el sistema"
 
-#: catalog/pg_enum.c:128 catalog/pg_enum.c:231 catalog/pg_enum.c:526
+#: catalog/pg_enum.c:127 catalog/pg_enum.c:230 catalog/pg_enum.c:525
 #, c-format
 msgid "invalid enum label \"%s\""
 msgstr "la etiqueta enum «%s» no es válida"
 
-#: catalog/pg_enum.c:129 catalog/pg_enum.c:232 catalog/pg_enum.c:527
+#: catalog/pg_enum.c:128 catalog/pg_enum.c:231 catalog/pg_enum.c:526
 #, c-format
 msgid "Labels must be %d characters or less."
 msgstr "Las etiquetas deben ser de %d caracteres o menos."
 
-#: catalog/pg_enum.c:260
+#: catalog/pg_enum.c:259
 #, c-format
 msgid "enum label \"%s\" already exists, skipping"
 msgstr "la etiqueta de enum «%s» ya existe, omitiendo"
 
-#: catalog/pg_enum.c:267 catalog/pg_enum.c:570
+#: catalog/pg_enum.c:266 catalog/pg_enum.c:569
 #, c-format
 msgid "enum label \"%s\" already exists"
 msgstr "la etiqueta de enum «%s» ya existe"
 
-#: catalog/pg_enum.c:322 catalog/pg_enum.c:565
+#: catalog/pg_enum.c:321 catalog/pg_enum.c:564
 #, c-format
 msgid "\"%s\" is not an existing enum label"
 msgstr "«%s» no es una etiqueta de enum existente"
 
-#: catalog/pg_enum.c:380
+#: catalog/pg_enum.c:379
 #, c-format
 msgid "pg_enum OID value not set when in binary upgrade mode"
 msgstr "el valor de OID de pg_enum no se definió en modo de actualización binaria"
 
-#: catalog/pg_enum.c:390
+#: catalog/pg_enum.c:389
 #, c-format
 msgid "ALTER TYPE ADD BEFORE/AFTER is incompatible with binary upgrade"
 msgstr "ALTER TYPE ADD BEFORE/AFTER es incompatible con la actualización binaria"
 
-#: catalog/pg_namespace.c:64 commands/schemacmds.c:266
+#: catalog/pg_namespace.c:64 commands/schemacmds.c:265
 #, c-format
 msgid "schema \"%s\" already exists"
 msgstr "ya existe el esquema «%s»"
@@ -5021,7 +5270,7 @@ msgstr "«%s» no es un nombre válido de operador"
 msgid "only binary operators can have commutators"
 msgstr "sólo los operadores binarios pueden tener conmutadores"
 
-#: catalog/pg_operator.c:374 commands/operatorcmds.c:485
+#: catalog/pg_operator.c:374 commands/operatorcmds.c:483
 #, c-format
 msgid "only binary operators can have join selectivity"
 msgstr "sólo los operadores binarios pueden tener selectividad de join"
@@ -5041,12 +5290,12 @@ msgstr "sólo los operadores binarios pueden ser usados en hash"
 msgid "only boolean operators can have negators"
 msgstr "sólo los operadores booleanos pueden tener negadores"
 
-#: catalog/pg_operator.c:397 commands/operatorcmds.c:493
+#: catalog/pg_operator.c:397 commands/operatorcmds.c:491
 #, c-format
 msgid "only boolean operators can have restriction selectivity"
 msgstr "sólo los operadores booleanos pueden tener selectividad de restricción"
 
-#: catalog/pg_operator.c:401 commands/operatorcmds.c:497
+#: catalog/pg_operator.c:401 commands/operatorcmds.c:495
 #, c-format
 msgid "only boolean operators can have join selectivity"
 msgstr "sólo los operadores booleanos pueden tener selectividad de join"
@@ -5071,54 +5320,44 @@ msgstr "ya existe un operador %s"
 msgid "operator cannot be its own negator or sort operator"
 msgstr "un operador no puede ser su propio negador u operador de ordenamiento"
 
-#: catalog/pg_proc.c:131 parser/parse_func.c:2206
+#: catalog/pg_proc.c:127 parser/parse_func.c:2191
 #, c-format
 msgid "functions cannot have more than %d argument"
 msgid_plural "functions cannot have more than %d arguments"
 msgstr[0] "las funciones no pueden tener más de %d argumento"
 msgstr[1] "las funciones no pueden tener más de %d argumentos"
 
-#: catalog/pg_proc.c:244
-#, c-format
-msgid "A function returning a polymorphic type must have at least one polymorphic argument."
-msgstr "Una función que retorne un tipo polimórfico debe tener al menos un argumento de tipo polimórfico."
-
-#: catalog/pg_proc.c:251
-#, c-format
-msgid "A function returning \"anyrange\" must have at least one \"anyrange\" argument."
-msgstr "Una función que retorne «anyrange» debe tener al menos un argumento de tipo «anyrange»."
-
-#: catalog/pg_proc.c:386
+#: catalog/pg_proc.c:364
 #, c-format
 msgid "function \"%s\" already exists with same argument types"
 msgstr "ya existe una función «%s» con los mismos argumentos"
 
-#: catalog/pg_proc.c:398
+#: catalog/pg_proc.c:376
 #, c-format
 msgid "\"%s\" is an aggregate function."
 msgstr "«%s» es una función de agregación."
 
-#: catalog/pg_proc.c:400
+#: catalog/pg_proc.c:378
 #, c-format
 msgid "\"%s\" is a function."
 msgstr "«%s» es una función de agregación."
 
-#: catalog/pg_proc.c:402
+#: catalog/pg_proc.c:380
 #, c-format
 msgid "\"%s\" is a procedure."
 msgstr "«%s» es un índice parcial."
 
-#: catalog/pg_proc.c:404
+#: catalog/pg_proc.c:382
 #, c-format
 msgid "\"%s\" is a window function."
 msgstr "«%s» es una función de ventana deslizante."
 
-#: catalog/pg_proc.c:424
+#: catalog/pg_proc.c:402
 #, c-format
 msgid "cannot change whether a procedure has output parameters"
 msgstr "no se puede cambiar que un procedimiento tenga parámetros de salida"
 
-#: catalog/pg_proc.c:425 catalog/pg_proc.c:455
+#: catalog/pg_proc.c:403 catalog/pg_proc.c:433
 #, c-format
 msgid "cannot change return type of existing function"
 msgstr "no se puede cambiar el tipo de retorno de una función existente"
@@ -5127,104 +5366,89 @@ msgstr "no se puede cambiar el tipo de retorno de una función existente"
 #. AGGREGATE
 #.
 #. translator: first %s is DROP FUNCTION or DROP PROCEDURE
-#: catalog/pg_proc.c:431 catalog/pg_proc.c:458 catalog/pg_proc.c:503
-#: catalog/pg_proc.c:529 catalog/pg_proc.c:557
+#: catalog/pg_proc.c:409 catalog/pg_proc.c:436 catalog/pg_proc.c:481
+#: catalog/pg_proc.c:507 catalog/pg_proc.c:533
 #, c-format
 msgid "Use %s %s first."
 msgstr "Use %s %s primero."
 
-#: catalog/pg_proc.c:456
+#: catalog/pg_proc.c:434
 #, c-format
 msgid "Row type defined by OUT parameters is different."
 msgstr "Tipo de registro definido por parámetros OUT es diferente."
 
-#: catalog/pg_proc.c:500
+#: catalog/pg_proc.c:478
 #, c-format
 msgid "cannot change name of input parameter \"%s\""
 msgstr "no se puede cambiar el nombre del parámetro de entrada «%s»"
 
-#: catalog/pg_proc.c:527
+#: catalog/pg_proc.c:505
 #, c-format
 msgid "cannot remove parameter defaults from existing function"
 msgstr "no se puede eliminar el valor por omisión de funciones existentes"
 
-#: catalog/pg_proc.c:555
+#: catalog/pg_proc.c:531
 #, c-format
 msgid "cannot change data type of existing parameter default value"
 msgstr "no se puede cambiar el tipo de dato del valor por omisión de un parámetro"
 
-#: catalog/pg_proc.c:772
+#: catalog/pg_proc.c:748
 #, c-format
 msgid "there is no built-in function named \"%s\""
 msgstr "no hay ninguna función interna llamada «%s»"
 
-#: catalog/pg_proc.c:870
+#: catalog/pg_proc.c:846
 #, c-format
 msgid "SQL functions cannot return type %s"
 msgstr "las funciones SQL no pueden retornar el tipo %s"
 
-#: catalog/pg_proc.c:885
+#: catalog/pg_proc.c:861
 #, c-format
 msgid "SQL functions cannot have arguments of type %s"
 msgstr "las funciones SQL no pueden tener argumentos de tipo %s"
 
-#: catalog/pg_proc.c:973 executor/functions.c:1423
+#: catalog/pg_proc.c:954 executor/functions.c:1446
 #, c-format
 msgid "SQL function \"%s\""
 msgstr "función SQL «%s»"
 
-#: catalog/pg_publication.c:57 commands/trigger.c:238 commands/trigger.c:256
-#, c-format
-msgid "\"%s\" is a partitioned table"
-msgstr "«%s» es una tabla particionada"
-
 #: catalog/pg_publication.c:59
 #, c-format
-msgid "Adding partitioned tables to publications is not supported."
-msgstr "Agregar tablas particionadas a publicaciones no está soportado."
-
-#: catalog/pg_publication.c:60
-#, c-format
-msgid "You can add the table partitions individually."
-msgstr "Puede agregar las particiones de tabla de forma individual."
-
-#: catalog/pg_publication.c:68
-#, c-format
 msgid "Only tables can be added to publications."
 msgstr "Sólo se pueden agregar tablas a las publicaciones."
 
-#: catalog/pg_publication.c:74
+#: catalog/pg_publication.c:65
 #, c-format
 msgid "\"%s\" is a system table"
 msgstr "«%s» es una tabla de sistema"
 
-#: catalog/pg_publication.c:76
+#: catalog/pg_publication.c:67
 #, c-format
 msgid "System tables cannot be added to publications."
 msgstr "Las tablas de sistema no pueden agregarse a publicaciones."
 
-#: catalog/pg_publication.c:82
+#: catalog/pg_publication.c:73
 #, c-format
 msgid "table \"%s\" cannot be replicated"
 msgstr "la tabla «%s» no puede replicarse"
 
-#: catalog/pg_publication.c:84
+#: catalog/pg_publication.c:75
 #, c-format
 msgid "Temporary and unlogged relations cannot be replicated."
 msgstr "Las tablas temporales o «unlogged» no pueden replicarse."
 
-#: catalog/pg_publication.c:182
+#: catalog/pg_publication.c:174
 #, c-format
 msgid "relation \"%s\" is already member of publication \"%s\""
 msgstr "la relación «%s» ya es un miembro de la publicación «%s»"
 
-#: catalog/pg_publication.c:418 catalog/pg_publication.c:440
-#: commands/publicationcmds.c:422 commands/publicationcmds.c:727
+#: catalog/pg_publication.c:470 commands/publicationcmds.c:451
+#: commands/publicationcmds.c:762
 #, c-format
 msgid "publication \"%s\" does not exist"
 msgstr "no existe la publicación «%s»"
 
-#: catalog/pg_shdepend.c:777
+#: catalog/pg_shdepend.c:776
 #, c-format
 msgid ""
 "\n"
@@ -5239,61 +5463,61 @@ msgstr[1] ""
 "\n"
 "y objetos en otras %d bases de datos (vea el registro del servidor para obtener la lista)"
 
-#: catalog/pg_shdepend.c:1083
+#: catalog/pg_shdepend.c:1082
 #, c-format
 msgid "role %u was concurrently dropped"
 msgstr "el rol %u fue eliminado por una transacción concurrente"
 
-#: catalog/pg_shdepend.c:1102
+#: catalog/pg_shdepend.c:1101
 #, c-format
 msgid "tablespace %u was concurrently dropped"
 msgstr "el tablespace %u fue eliminado por una transacción concurrente"
 
-#: catalog/pg_shdepend.c:1117
+#: catalog/pg_shdepend.c:1116
 #, c-format
 msgid "database %u was concurrently dropped"
 msgstr "la base de datos %u fue eliminado por una transacción concurrente"
 
-#: catalog/pg_shdepend.c:1162
+#: catalog/pg_shdepend.c:1161
 #, c-format
 msgid "owner of %s"
 msgstr "dueño de %s"
 
-#: catalog/pg_shdepend.c:1164
+#: catalog/pg_shdepend.c:1163
 #, c-format
 msgid "privileges for %s"
 msgstr "privilegios para %s"
 
-#: catalog/pg_shdepend.c:1166
+#: catalog/pg_shdepend.c:1165
 #, c-format
 msgid "target of %s"
 msgstr "destino de %s"
 
 #. translator: %s will always be "database %s"
-#: catalog/pg_shdepend.c:1174
+#: catalog/pg_shdepend.c:1173
 #, c-format
 msgid "%d object in %s"
 msgid_plural "%d objects in %s"
 msgstr[0] "%d objeto en %s"
 msgstr[1] "%d objetos en %s"
 
-#: catalog/pg_shdepend.c:1285
+#: catalog/pg_shdepend.c:1284
 #, c-format
 msgid "cannot drop objects owned by %s because they are required by the database system"
 msgstr "no se puede eliminar objetos de propiedad de %s porque son requeridos por el sistema"
 
-#: catalog/pg_shdepend.c:1408
+#: catalog/pg_shdepend.c:1431
 #, c-format
 msgid "cannot reassign ownership of objects owned by %s because they are required by the database system"
 msgstr "no se puede reasignar la propiedad de objetos de %s porque son requeridos por el sistema"
 
-#: catalog/pg_subscription.c:177 commands/subscriptioncmds.c:657
-#: commands/subscriptioncmds.c:871 commands/subscriptioncmds.c:1098
+#: catalog/pg_subscription.c:171 commands/subscriptioncmds.c:644
+#: commands/subscriptioncmds.c:858 commands/subscriptioncmds.c:1080
 #, c-format
 msgid "subscription \"%s\" does not exist"
 msgstr "no existe la suscripción «%s»"
 
-#: catalog/pg_type.c:131 catalog/pg_type.c:467
+#: catalog/pg_type.c:131 catalog/pg_type.c:468
 #, c-format
 msgid "pg_type OID value not set when in binary upgrade mode"
 msgstr "el valor de OID de pg_type no se definió en modo de actualización binaria"
@@ -5314,28 +5538,28 @@ msgstr "el alineamiento «%c» no es válido para un tipo pasado por valor de ta
 msgid "internal size %d is invalid for passed-by-value type"
 msgstr "el tamaño interno %d no es válido para un tipo pasado por valor"
 
-#: catalog/pg_type.c:306 catalog/pg_type.c:312
+#: catalog/pg_type.c:307 catalog/pg_type.c:313
 #, c-format
 msgid "alignment \"%c\" is invalid for variable-length type"
 msgstr "el alineamiento «%c» no es válido para un tipo de largo variable"
 
-#: catalog/pg_type.c:320
+#: catalog/pg_type.c:321 commands/typecmds.c:3704
 #, c-format
 msgid "fixed-size types must have storage PLAIN"
 msgstr "los tipos de tamaño fijo deben tener almacenamiento PLAIN"
 
-#: catalog/pg_type.c:818
+#: catalog/pg_type.c:839
 #, c-format
 msgid "could not form array type name for type \"%s\""
 msgstr "no se pudo formar un nombre de tipo de array para el tipo «%s»"
 
-#: catalog/storage.c:344 storage/buffer/bufmgr.c:922
+#: catalog/storage.c:449 storage/buffer/bufmgr.c:933
 #, c-format
 msgid "invalid page in block %u of relation %s"
 msgstr "la página no es válida en el bloque %u de la relación %s"
 
-#: catalog/toasting.c:106 commands/indexcmds.c:575 commands/tablecmds.c:5185
-#: commands/tablecmds.c:14788
+#: catalog/toasting.c:106 commands/indexcmds.c:639 commands/tablecmds.c:5553
+#: commands/tablecmds.c:15486
 #, c-format
 msgid "\"%s\" is not a table or materialized view"
 msgstr "«%s» no es una tabla o vista materializada"
@@ -5420,7 +5644,7 @@ msgstr "las funciones de serialización pueden especificarse sólo cuando el tip
 msgid "must specify both or neither of serialization and deserialization functions"
 msgstr "debe especificar ambas o ninguna de las funciones de serialización y deserialización"
 
-#: commands/aggregatecmds.c:436 commands/functioncmds.c:613
+#: commands/aggregatecmds.c:436 commands/functioncmds.c:615
 #, c-format
 msgid "parameter \"parallel\" must be SAFE, RESTRICTED, or UNSAFE"
 msgstr "el parámetro «parallel» debe ser SAFE, RESTRICTED o UNSAFE"
@@ -5430,72 +5654,72 @@ msgstr "el parámetro «parallel» debe ser SAFE, RESTRICTED o UNSAFE"
 msgid "parameter \"%s\" must be READ_ONLY, SHAREABLE, or READ_WRITE"
 msgstr "el parámetro «%s» debe ser READ_ONLY, SHAREABLE o READ_WRITE"
 
-#: commands/alter.c:85 commands/event_trigger.c:236
+#: commands/alter.c:84 commands/event_trigger.c:174
 #, c-format
 msgid "event trigger \"%s\" already exists"
 msgstr "el disparador por eventos «%s» ya existe"
 
-#: commands/alter.c:88 commands/foreigncmds.c:601
+#: commands/alter.c:87 commands/foreigncmds.c:597
 #, c-format
 msgid "foreign-data wrapper \"%s\" already exists"
 msgstr "el conector de datos externos «%s» ya existe"
 
-#: commands/alter.c:91 commands/foreigncmds.c:907
+#: commands/alter.c:90 commands/foreigncmds.c:903
 #, c-format
 msgid "server \"%s\" already exists"
 msgstr "el servidor «%s» ya existe"
 
-#: commands/alter.c:94 commands/proclang.c:368
+#: commands/alter.c:93 commands/proclang.c:132
 #, c-format
 msgid "language \"%s\" already exists"
 msgstr "ya existe el lenguaje «%s»"
 
-#: commands/alter.c:97 commands/publicationcmds.c:176
+#: commands/alter.c:96 commands/publicationcmds.c:183
 #, c-format
 msgid "publication \"%s\" already exists"
 msgstr "la publicación «%s» ya existe"
 
-#: commands/alter.c:100 commands/subscriptioncmds.c:378
+#: commands/alter.c:99 commands/subscriptioncmds.c:371
 #, c-format
 msgid "subscription \"%s\" already exists"
 msgstr "la suscripción «%s» ya existe"
 
-#: commands/alter.c:123
+#: commands/alter.c:122
 #, c-format
 msgid "conversion \"%s\" already exists in schema \"%s\""
 msgstr "ya existe una conversión llamada «%s» en el esquema «%s»"
 
-#: commands/alter.c:127
+#: commands/alter.c:126
 #, c-format
 msgid "statistics object \"%s\" already exists in schema \"%s\""
 msgstr "ya existe un objeto de estadísticas llamado «%s» en el esquema «%s»"
 
-#: commands/alter.c:131
+#: commands/alter.c:130
 #, c-format
 msgid "text search parser \"%s\" already exists in schema \"%s\""
 msgstr "el analizador de búsqueda en texto «%s» ya existe en el esquema «%s»"
 
-#: commands/alter.c:135
+#: commands/alter.c:134
 #, c-format
 msgid "text search dictionary \"%s\" already exists in schema \"%s\""
 msgstr "el diccionario de búsqueda en texto «%s» ya existe en el esquema «%s»"
 
-#: commands/alter.c:139
+#: commands/alter.c:138
 #, c-format
 msgid "text search template \"%s\" already exists in schema \"%s\""
 msgstr "la plantilla de búsqueda en texto «%s» ya existe en el esquema «%s»"
 
-#: commands/alter.c:143
+#: commands/alter.c:142
 #, c-format
 msgid "text search configuration \"%s\" already exists in schema \"%s\""
 msgstr "la configuración de búsqueda en texto «%s» ya existe en el esquema «%s»"
 
-#: commands/alter.c:217
+#: commands/alter.c:215
 #, c-format
 msgid "must be superuser to rename %s"
 msgstr "debe ser superusuario para cambiar el nombre de «%s»"
 
-#: commands/alter.c:720
+#: commands/alter.c:744
 #, c-format
 msgid "must be superuser to set schema of %s"
 msgstr "debe ser superusuario para definir el esquema de %s"
@@ -5520,8 +5744,8 @@ msgstr "el método de acceso «%s» ya existe"
 msgid "must be superuser to drop access methods"
 msgstr "debe ser superusuario para eliminar métodos de acceso"
 
-#: commands/amcmds.c:178 commands/indexcmds.c:187 commands/indexcmds.c:720
-#: commands/opclasscmds.c:372 commands/opclasscmds.c:791
+#: commands/amcmds.c:178 commands/indexcmds.c:188 commands/indexcmds.c:790
+#: commands/opclasscmds.c:373 commands/opclasscmds.c:793
 #, c-format
 msgid "access method \"%s\" does not exist"
 msgstr "no existe el método de acceso «%s»"
@@ -5531,169 +5755,169 @@ msgstr "no existe el método de acceso «%s»"
 msgid "handler function is not specified"
 msgstr "no se ha especificado una función manejadora"
 
-#: commands/amcmds.c:288 commands/event_trigger.c:245
-#: commands/foreigncmds.c:493 commands/proclang.c:115 commands/proclang.c:287
-#: commands/trigger.c:719 parser/parse_clause.c:950
+#: commands/amcmds.c:288 commands/event_trigger.c:183
+#: commands/foreigncmds.c:489 commands/proclang.c:79 commands/trigger.c:687
+#: parser/parse_clause.c:941
 #, c-format
 msgid "function %s must return type %s"
 msgstr "la función %s debe retornar el tipo %s"
 
-#: commands/analyze.c:225
+#: commands/analyze.c:226
 #, c-format
 msgid "skipping \"%s\" --- cannot analyze this foreign table"
 msgstr "omitiendo «%s»: no se puede analizar esta tabla foránea"
 
-#: commands/analyze.c:242
+#: commands/analyze.c:243
 #, c-format
 msgid "skipping \"%s\" --- cannot analyze non-tables or special system tables"
 msgstr "omitiendo «%s»: no se pueden analizar objetos que no son tablas, ni tablas especiales de sistema"
 
-#: commands/analyze.c:323
+#: commands/analyze.c:329
 #, c-format
 msgid "analyzing \"%s.%s\" inheritance tree"
 msgstr "analizando la jerarquía de herencia «%s.%s»"
 
-#: commands/analyze.c:328
+#: commands/analyze.c:334
 #, c-format
 msgid "analyzing \"%s.%s\""
 msgstr "analizando «%s.%s»"
 
-#: commands/analyze.c:388
+#: commands/analyze.c:394
 #, c-format
 msgid "column \"%s\" of relation \"%s\" appears more than once"
 msgstr "la columna «%s» aparece más de una vez en la relación «%s»"
 
-#: commands/analyze.c:674
+#: commands/analyze.c:700
 #, c-format
 msgid "automatic analyze of table \"%s.%s.%s\" system usage: %s"
 msgstr "analyze automático de la tabla «%s.%s.%s»: uso del sistema: %s"
 
-#: commands/analyze.c:1133
+#: commands/analyze.c:1169
 #, c-format
 msgid "\"%s\": scanned %d of %u pages, containing %.0f live rows and %.0f dead rows; %d rows in sample, %.0f estimated total rows"
 msgstr "«%s»: se procesaron %d de %u páginas, que contenían %.0f filas vigentes y %.0f filas no vigentes; %d filas en la muestra, %.0f total de filas estimadas"
 
-#: commands/analyze.c:1213
+#: commands/analyze.c:1249
 #, c-format
 msgid "skipping analyze of \"%s.%s\" inheritance tree --- this inheritance tree contains no child tables"
 msgstr "omitiendo el análisis del árbol de herencia «%s.%s» --- este árbol no contiene tablas hijas"
 
-#: commands/analyze.c:1311
+#: commands/analyze.c:1347
 #, c-format
 msgid "skipping analyze of \"%s.%s\" inheritance tree --- this inheritance tree contains no analyzable child tables"
 msgstr "omitiendo el análisis del árbol de herencia «%s.%s» --- este árbol no contiene tablas hijas analizables"
 
-#: commands/async.c:557
+#: commands/async.c:631
 #, c-format
 msgid "channel name cannot be empty"
 msgstr "el nombre de canal no puede ser vacío"
 
-#: commands/async.c:562
+#: commands/async.c:637
 #, c-format
 msgid "channel name too long"
 msgstr "el nombre de canal es demasiado largo"
 
-#: commands/async.c:569
+#: commands/async.c:642
 #, c-format
 msgid "payload string too long"
 msgstr "la cadena de carga es demasiado larga"
 
-#: commands/async.c:755
+#: commands/async.c:861
 #, c-format
 msgid "cannot PREPARE a transaction that has executed LISTEN, UNLISTEN, or NOTIFY"
 msgstr "no se puede hacer PREPARE de una transacción que ha ejecutado LISTEN, UNLISTEN o NOTIFY"
 
-#: commands/async.c:858
+#: commands/async.c:967
 #, c-format
 msgid "too many notifications in the NOTIFY queue"
 msgstr "demasiadas notificaciones en la cola NOTIFY"
 
-#: commands/async.c:1490
+#: commands/async.c:1633
 #, c-format
 msgid "NOTIFY queue is %.0f%% full"
 msgstr "la cola NOTIFY está %.0f%% llena"
 
-#: commands/async.c:1492
+#: commands/async.c:1635
 #, c-format
 msgid "The server process with PID %d is among those with the oldest transactions."
 msgstr "El proceso servidor con PID %d está entre aquellos con transacciones más antiguas."
 
-#: commands/async.c:1495
+#: commands/async.c:1638
 #, c-format
 msgid "The NOTIFY queue cannot be emptied until that process ends its current transaction."
 msgstr "La cola NOTIFY no puede vaciarse hasta que ese proceso cierre su transacción actual."
 
-#: commands/cluster.c:126 commands/cluster.c:388
+#: commands/cluster.c:125 commands/cluster.c:362
 #, c-format
 msgid "cannot cluster temporary tables of other sessions"
 msgstr "no se pueden reordenar tablas temporales de otras sesiones"
 
-#: commands/cluster.c:134
+#: commands/cluster.c:133
 #, c-format
 msgid "cannot cluster a partitioned table"
 msgstr "no se puede hacer «cluster» a una tabla particionada"
 
-#: commands/cluster.c:164
+#: commands/cluster.c:151
 #, c-format
 msgid "there is no previously clustered index for table \"%s\""
 msgstr "no hay un índice de ordenamiento definido para la tabla «%s»"
 
-#: commands/cluster.c:178 commands/tablecmds.c:12054 commands/tablecmds.c:13856
+#: commands/cluster.c:165 commands/tablecmds.c:12763 commands/tablecmds.c:14569
 #, c-format
 msgid "index \"%s\" for table \"%s\" does not exist"
 msgstr "no existe el índice «%s» en la tabla «%s»"
 
-#: commands/cluster.c:377
+#: commands/cluster.c:351
 #, c-format
 msgid "cannot cluster a shared catalog"
 msgstr "no se puede reordenar un catálogo compartido"
 
-#: commands/cluster.c:392
+#: commands/cluster.c:366
 #, c-format
 msgid "cannot vacuum temporary tables of other sessions"
 msgstr "no se puede hacer vacuum a tablas temporales de otras sesiones"
 
-#: commands/cluster.c:458 commands/tablecmds.c:13866
+#: commands/cluster.c:432 commands/tablecmds.c:14579
 #, c-format
 msgid "\"%s\" is not an index for table \"%s\""
 msgstr "«%s» no es un índice de la tabla «%s»"
 
-#: commands/cluster.c:466
+#: commands/cluster.c:440
 #, c-format
 msgid "cannot cluster on index \"%s\" because access method does not support clustering"
 msgstr "no se puede reordenar en índice «%s» porque el método de acceso no soporta reordenamiento"
 
-#: commands/cluster.c:478
+#: commands/cluster.c:452
 #, c-format
 msgid "cannot cluster on partial index \"%s\""
 msgstr "no se puede reordenar en índice parcial «%s»"
 
-#: commands/cluster.c:492
+#: commands/cluster.c:466
 #, c-format
 msgid "cannot cluster on invalid index \"%s\""
 msgstr "no se puede reordenar en el índice no válido «%s»"
 
-#: commands/cluster.c:516
+#: commands/cluster.c:490
 #, c-format
 msgid "cannot mark index clustered in partitioned table"
 msgstr "no se puede marcar un índice «clustered» en una tabla particionada"
 
-#: commands/cluster.c:899
+#: commands/cluster.c:863
 #, c-format
 msgid "clustering \"%s.%s\" using index scan on \"%s\""
 msgstr "reordenando «%s.%s» usando un recorrido de índice en «%s»"
 
-#: commands/cluster.c:905
+#: commands/cluster.c:869
 #, c-format
 msgid "clustering \"%s.%s\" using sequential scan and sort"
 msgstr "reordenando «%s.%s» usando un recorrido secuencial y ordenamiento"
 
-#: commands/cluster.c:936
+#: commands/cluster.c:900
 #, c-format
 msgid "\"%s\": found %.0f removable, %.0f nonremovable row versions in %u pages"
 msgstr "«%s»: se encontraron %.0f versiones eliminables de filas y %.0f no eliminables en %u páginas"
 
-#: commands/cluster.c:940
+#: commands/cluster.c:904
 #, c-format
 msgid ""
 "%.0f dead row versions cannot be removed yet.\n"
@@ -5702,97 +5926,97 @@ msgstr ""
 "%.0f versiones muertas de filas no pueden ser eliminadas aún.\n"
 "%s."
 
-#: commands/collationcmds.c:104
+#: commands/collationcmds.c:105
 #, c-format
 msgid "collation attribute \"%s\" not recognized"
 msgstr "el atributo de ordenamiento (collation) «%s» no es reconocido"
 
-#: commands/collationcmds.c:147
+#: commands/collationcmds.c:148
 #, c-format
 msgid "collation \"default\" cannot be copied"
 msgstr "el ordenamiento «default» no puede copiarse"
 
-#: commands/collationcmds.c:180
+#: commands/collationcmds.c:181
 #, c-format
 msgid "unrecognized collation provider: %s"
 msgstr "proveedor de ordenamiento no reconocido: %s"
 
-#: commands/collationcmds.c:189
+#: commands/collationcmds.c:190
 #, c-format
 msgid "parameter \"lc_collate\" must be specified"
 msgstr "debe especificarse el parámetro «lc_collate»"
 
-#: commands/collationcmds.c:194
+#: commands/collationcmds.c:195
 #, c-format
 msgid "parameter \"lc_ctype\" must be specified"
 msgstr "debe especificarse el parámetro «lc_ctype»"
 
-#: commands/collationcmds.c:204
+#: commands/collationcmds.c:205
 #, c-format
 msgid "nondeterministic collations not supported with this provider"
 msgstr "los ordenamientos no determinísticos no están soportados con este proveedor"
 
-#: commands/collationcmds.c:264
+#: commands/collationcmds.c:265
 #, c-format
 msgid "collation \"%s\" for encoding \"%s\" already exists in schema \"%s\""
 msgstr "ya existe un ordenamiento (collation) llamado «%s» para la codificación «%s» en el esquema «%s»"
 
-#: commands/collationcmds.c:275
+#: commands/collationcmds.c:276
 #, c-format
 msgid "collation \"%s\" already exists in schema \"%s\""
 msgstr "ya existe un ordenamiento llamado «%s» en el esquema «%s»"
 
-#: commands/collationcmds.c:323
+#: commands/collationcmds.c:324
 #, c-format
 msgid "changing version from %s to %s"
 msgstr "cambiando versión de %s a %s"
 
-#: commands/collationcmds.c:338
+#: commands/collationcmds.c:339
 #, c-format
 msgid "version has not changed"
 msgstr "la versión no ha cambiado"
 
-#: commands/collationcmds.c:469
+#: commands/collationcmds.c:470
 #, c-format
 msgid "could not convert locale name \"%s\" to language tag: %s"
 msgstr "no se pudo convertir el nombre de configuración regional «%s» a etiqueta de lenguaje: %s"
 
-#: commands/collationcmds.c:530
+#: commands/collationcmds.c:531
 #, c-format
 msgid "must be superuser to import system collations"
 msgstr "debe ser superusuario para importar ordenamientos del sistema"
 
-#: commands/collationcmds.c:553 commands/copy.c:1898 commands/copy.c:3534
-#: libpq/be-secure-common.c:80
+#: commands/collationcmds.c:554 commands/copy.c:1894 commands/copy.c:3480
+#: libpq/be-secure-common.c:81
 #, c-format
 msgid "could not execute command \"%s\": %m"
 msgstr "no se pudo ejecutar la orden «%s»: %m"
 
-#: commands/collationcmds.c:684
+#: commands/collationcmds.c:685
 #, c-format
 msgid "no usable system locales were found"
 msgstr "no se encontraron locales de sistema utilizables"
 
-#: commands/comment.c:61 commands/dbcommands.c:820 commands/dbcommands.c:1008
-#: commands/dbcommands.c:1121 commands/dbcommands.c:1311
-#: commands/dbcommands.c:1534 commands/dbcommands.c:1648
-#: commands/dbcommands.c:2065 utils/init/postinit.c:890
-#: utils/init/postinit.c:995 utils/init/postinit.c:1012
+#: commands/comment.c:61 commands/dbcommands.c:841 commands/dbcommands.c:1037
+#: commands/dbcommands.c:1150 commands/dbcommands.c:1340
+#: commands/dbcommands.c:1588 commands/dbcommands.c:1702
+#: commands/dbcommands.c:2142 utils/init/postinit.c:888
+#: utils/init/postinit.c:993 utils/init/postinit.c:1010
 #, c-format
 msgid "database \"%s\" does not exist"
 msgstr "no existe la base de datos «%s»"
 
-#: commands/comment.c:101 commands/seclabel.c:117 parser/parse_utilcmd.c:944
+#: commands/comment.c:101 commands/seclabel.c:117 parser/parse_utilcmd.c:955
 #, c-format
 msgid "\"%s\" is not a table, view, materialized view, composite type, or foreign table"
 msgstr "«%s» no es una tabla, vista, vista materializada, tipo compuesto, o tabla foránea"
 
-#: commands/constraint.c:63 utils/adt/ri_triggers.c:1915
+#: commands/constraint.c:63 utils/adt/ri_triggers.c:1913
 #, c-format
 msgid "function \"%s\" was not called by trigger manager"
 msgstr "la función «%s» no fue ejecutada por el manejador de triggers"
 
-#: commands/constraint.c:70 utils/adt/ri_triggers.c:1924
+#: commands/constraint.c:70 utils/adt/ri_triggers.c:1922
 #, c-format
 msgid "function \"%s\" must be fired AFTER ROW"
 msgstr "la función «%s» debe ser ejecutada AFTER ROW"
@@ -5802,779 +6026,796 @@ msgstr "la función «%s» debe ser ejecutada AFTER ROW"
 msgid "function \"%s\" must be fired for INSERT or UPDATE"
 msgstr "la función «%s» debe ser ejecutada en INSERT o UPDATE"
 
-#: commands/conversioncmds.c:65
+#: commands/conversioncmds.c:66
 #, c-format
 msgid "source encoding \"%s\" does not exist"
 msgstr "no existe la codificación fuente «%s»"
 
-#: commands/conversioncmds.c:72
+#: commands/conversioncmds.c:73
 #, c-format
 msgid "destination encoding \"%s\" does not exist"
 msgstr "no existe la codificación de destino «%s»"
 
 #: commands/conversioncmds.c:86
+#, fuzzy, c-format
+#| msgid "encoding conversion from %s to ASCII not supported"
+msgid "encoding conversion to or from \"SQL_ASCII\" is not supported"
+msgstr "la conversión de codificación de %s a ASCII no está soportada"
+
+#: commands/conversioncmds.c:99
 #, c-format
 msgid "encoding conversion function %s must return type %s"
 msgstr "la función de conversión de codificación %s debe retornar tipo %s"
 
-#: commands/copy.c:427 commands/copy.c:461
+#: commands/copy.c:426 commands/copy.c:460
 #, c-format
 msgid "COPY BINARY is not supported to stdout or from stdin"
 msgstr "COPY BINARY no está soportado a la salida estándar o desde la entrada estándar"
 
-#: commands/copy.c:561
+#: commands/copy.c:560
 #, c-format
 msgid "could not write to COPY program: %m"
 msgstr "no se pudo escribir al programa COPY: %m"
 
-#: commands/copy.c:566
+#: commands/copy.c:565
 #, c-format
 msgid "could not write to COPY file: %m"
 msgstr "no se pudo escribir archivo COPY: %m"
 
-#: commands/copy.c:579
+#: commands/copy.c:578
 #, c-format
 msgid "connection lost during COPY to stdout"
 msgstr "se perdió la conexión durante COPY a la salida estándar"
 
-#: commands/copy.c:623
+#: commands/copy.c:622
 #, c-format
 msgid "could not read from COPY file: %m"
 msgstr "no se pudo leer desde archivo COPY: %m"
 
-#: commands/copy.c:641 commands/copy.c:662 commands/copy.c:666
-#: tcop/postgres.c:348 tcop/postgres.c:384 tcop/postgres.c:411
+#: commands/copy.c:640 commands/copy.c:661 commands/copy.c:665
+#: tcop/postgres.c:344 tcop/postgres.c:380 tcop/postgres.c:407
 #, c-format
 msgid "unexpected EOF on client connection with an open transaction"
 msgstr "se encontró fin de archivo inesperado en una conexión con una transacción abierta"
 
-#: commands/copy.c:679
+#: commands/copy.c:678
 #, c-format
 msgid "COPY from stdin failed: %s"
 msgstr "falló COPY desde la entrada estándar: %s"
 
-#: commands/copy.c:695
+#: commands/copy.c:694
 #, c-format
 msgid "unexpected message type 0x%02X during COPY from stdin"
 msgstr "se recibió un mensaje de tipo 0x%02X inesperado durante COPY desde la entrada estándar"
 
-#: commands/copy.c:862
+#: commands/copy.c:861
 #, c-format
 msgid "must be superuser or a member of the pg_execute_server_program role to COPY to or from an external program"
 msgstr "debe ser superusuario o miembro del rol pg_execute_server_program para usar COPY desde o hacia un programa externo"
 
-#: commands/copy.c:863 commands/copy.c:872 commands/copy.c:879
+#: commands/copy.c:862 commands/copy.c:871 commands/copy.c:878
 #, c-format
 msgid "Anyone can COPY to stdout or from stdin. psql's \\copy command also works for anyone."
 msgstr "Cualquier usuario puede usar COPY hacia la salida estándar o desde la entrada estándar. La orden \\copy de psql también puede ser utilizado por cualquier usuario."
 
-#: commands/copy.c:871
+#: commands/copy.c:870
 #, c-format
 msgid "must be superuser or a member of the pg_read_server_files role to COPY from a file"
 msgstr "debe ser superusuario o miembro del rol pg_read_server_files para hacer COPY desde un archivo"
 
-#: commands/copy.c:878
+#: commands/copy.c:877
 #, c-format
 msgid "must be superuser or a member of the pg_write_server_files role to COPY to a file"
 msgstr "debe ser superusuario o miembro del rol pg_write_server_files para hacer COPY a un archivo"
 
-#: commands/copy.c:962
+#: commands/copy.c:963
 #, c-format
 msgid "COPY FROM not supported with row-level security"
 msgstr "COPY FROM no está soportado con seguridad a nivel de registros"
 
-#: commands/copy.c:963
+#: commands/copy.c:964
 #, c-format
 msgid "Use INSERT statements instead."
 msgstr "Use sentencias INSERT en su lugar."
 
-#: commands/copy.c:1151
+#: commands/copy.c:1146
 #, c-format
 msgid "COPY format \"%s\" not recognized"
 msgstr "el formato de COPY «%s» no es reconocido"
 
-#: commands/copy.c:1222 commands/copy.c:1238 commands/copy.c:1253
-#: commands/copy.c:1275
+#: commands/copy.c:1217 commands/copy.c:1233 commands/copy.c:1248
+#: commands/copy.c:1270
 #, c-format
 msgid "argument to option \"%s\" must be a list of column names"
 msgstr "el argumento de la opción «%s» debe ser una lista de nombres de columna"
 
-#: commands/copy.c:1290
+#: commands/copy.c:1285
 #, c-format
 msgid "argument to option \"%s\" must be a valid encoding name"
 msgstr "el argumento de la opción «%s» debe ser un nombre válido de codificación"
 
-#: commands/copy.c:1297 commands/dbcommands.c:243 commands/dbcommands.c:1482
+#: commands/copy.c:1292 commands/dbcommands.c:253 commands/dbcommands.c:1536
 #, c-format
 msgid "option \"%s\" not recognized"
 msgstr "no se reconoce la opción «%s»"
 
-#: commands/copy.c:1309
+#: commands/copy.c:1304
 #, c-format
 msgid "cannot specify DELIMITER in BINARY mode"
 msgstr "no se puede especificar DELIMITER en modo BINARY"
 
-#: commands/copy.c:1314
+#: commands/copy.c:1309
 #, c-format
 msgid "cannot specify NULL in BINARY mode"
 msgstr "no se puede especificar NULL en modo BINARY"
 
-#: commands/copy.c:1336
+#: commands/copy.c:1331
 #, c-format
 msgid "COPY delimiter must be a single one-byte character"
 msgstr "el delimitador de COPY debe ser un solo carácter de un byte"
 
-#: commands/copy.c:1343
+#: commands/copy.c:1338
 #, c-format
 msgid "COPY delimiter cannot be newline or carriage return"
 msgstr "el delimitador de COPY no puede ser el carácter de nueva línea ni el de retorno de carro"
 
-#: commands/copy.c:1349
+#: commands/copy.c:1344
 #, c-format
 msgid "COPY null representation cannot use newline or carriage return"
 msgstr "la representación de null de COPY no puede usar el carácter de nueva línea ni el de retorno de carro"
 
-#: commands/copy.c:1366
+#: commands/copy.c:1361
 #, c-format
 msgid "COPY delimiter cannot be \"%s\""
 msgstr "el delimitador de COPY no puede ser «%s»"
 
-#: commands/copy.c:1372
+#: commands/copy.c:1367
 #, c-format
 msgid "COPY HEADER available only in CSV mode"
 msgstr "el «header» de COPY está disponible sólo en modo CSV"
 
-#: commands/copy.c:1378
+#: commands/copy.c:1373
 #, c-format
 msgid "COPY quote available only in CSV mode"
 msgstr "el «quote» de COPY está disponible sólo en modo CSV"
 
-#: commands/copy.c:1383
+#: commands/copy.c:1378
 #, c-format
 msgid "COPY quote must be a single one-byte character"
 msgstr "la comilla («quote») de COPY debe ser un solo carácter de un byte"
 
-#: commands/copy.c:1388
+#: commands/copy.c:1383
 #, c-format
 msgid "COPY delimiter and quote must be different"
 msgstr "el delimitador de COPY y la comilla («quote») deben ser diferentes"
 
-#: commands/copy.c:1394
+#: commands/copy.c:1389
 #, c-format
 msgid "COPY escape available only in CSV mode"
 msgstr "escape de COPY disponible sólo en modo CSV"
 
-#: commands/copy.c:1399
+#: commands/copy.c:1394
 #, c-format
 msgid "COPY escape must be a single one-byte character"
 msgstr "el escape de COPY debe ser un sólo carácter de un byte"
 
-#: commands/copy.c:1405
+#: commands/copy.c:1400
 #, c-format
 msgid "COPY force quote available only in CSV mode"
 msgstr "el forzado de comillas de COPY sólo está disponible en modo CSV"
 
-#: commands/copy.c:1409
+#: commands/copy.c:1404
 #, c-format
 msgid "COPY force quote only available using COPY TO"
 msgstr "el forzado de comillas de COPY sólo está disponible en COPY TO"
 
-#: commands/copy.c:1415
+#: commands/copy.c:1410
 #, c-format
 msgid "COPY force not null available only in CSV mode"
 msgstr "el forzado de no nulos en COPY sólo está disponible en modo CSV"
 
-#: commands/copy.c:1419
+#: commands/copy.c:1414
 #, c-format
 msgid "COPY force not null only available using COPY FROM"
 msgstr "el forzado de no nulos en COPY sólo está disponible usando COPY FROM"
 
-#: commands/copy.c:1425
+#: commands/copy.c:1420
 #, c-format
 msgid "COPY force null available only in CSV mode"
 msgstr "el forzado de nulos en COPY sólo está disponible en modo CSV"
 
-#: commands/copy.c:1430
+#: commands/copy.c:1425
 #, c-format
 msgid "COPY force null only available using COPY FROM"
 msgstr "el forzado de nulos en COPY sólo está disponible usando COPY FROM"
 
-#: commands/copy.c:1436
+#: commands/copy.c:1431
 #, c-format
 msgid "COPY delimiter must not appear in the NULL specification"
 msgstr "el delimitador de COPY no debe aparecer en la especificación NULL"
 
-#: commands/copy.c:1443
+#: commands/copy.c:1438
 #, c-format
 msgid "CSV quote character must not appear in the NULL specification"
 msgstr "el carácter de «quote» de CSV no debe aparecer en la especificación NULL"
 
-#: commands/copy.c:1529
+#: commands/copy.c:1524
 #, c-format
 msgid "DO INSTEAD NOTHING rules are not supported for COPY"
 msgstr "las reglas DO INSTEAD NOTHING no están soportadas para COPY"
 
-#: commands/copy.c:1543
+#: commands/copy.c:1538
 #, c-format
 msgid "conditional DO INSTEAD rules are not supported for COPY"
 msgstr "las reglas DO INSTEAD condicionales no están soportadas para COPY"
 
-#: commands/copy.c:1547
+#: commands/copy.c:1542
 #, c-format
 msgid "DO ALSO rules are not supported for the COPY"
 msgstr "las reglas DO ALSO no están soportadas para COPY"
 
-#: commands/copy.c:1552
+#: commands/copy.c:1547
 #, c-format
 msgid "multi-statement DO INSTEAD rules are not supported for COPY"
 msgstr "las reglas DO INSTEAD de múltiples sentencias no están soportadas para COPY"
 
-#: commands/copy.c:1562
+#: commands/copy.c:1557
 #, c-format
 msgid "COPY (SELECT INTO) is not supported"
 msgstr "COPY (SELECT INTO) no está soportado"
 
-#: commands/copy.c:1579
+#: commands/copy.c:1574
 #, c-format
 msgid "COPY query must have a RETURNING clause"
 msgstr "la consulta COPY debe tener una cláusula RETURNING"
 
-#: commands/copy.c:1607
+#: commands/copy.c:1603
 #, c-format
 msgid "relation referenced by COPY statement has changed"
 msgstr "la relación referenciada por la sentencia COPY ha cambiado"
 
-#: commands/copy.c:1666
+#: commands/copy.c:1662
 #, c-format
 msgid "FORCE_QUOTE column \"%s\" not referenced by COPY"
 msgstr "la columna FORCE_QUOTE «%s» no es referenciada en COPY"
 
-#: commands/copy.c:1689
+#: commands/copy.c:1685
 #, c-format
 msgid "FORCE_NOT_NULL column \"%s\" not referenced by COPY"
 msgstr "la columna FORCE_NOT_NULL «%s» no es referenciada en COPY"
 
-#: commands/copy.c:1712
+#: commands/copy.c:1708
 #, c-format
 msgid "FORCE_NULL column \"%s\" not referenced by COPY"
 msgstr "la columna FORCE_NULL «%s» no es referenciada en COPY"
 
-#: commands/copy.c:1778 libpq/be-secure-common.c:102
+#: commands/copy.c:1774 libpq/be-secure-common.c:105
 #, c-format
 msgid "could not close pipe to external command: %m"
 msgstr "no se pudo cerrar la tubería a la orden externa: %m"
 
-#: commands/copy.c:1793
+#: commands/copy.c:1789
 #, c-format
 msgid "program \"%s\" failed"
 msgstr "el programa «%s» falló"
 
-#: commands/copy.c:1844
+#: commands/copy.c:1840
 #, c-format
 msgid "cannot copy from view \"%s\""
 msgstr "no se puede copiar desde la vista «%s»"
 
-#: commands/copy.c:1846 commands/copy.c:1852 commands/copy.c:1858
-#: commands/copy.c:1869
+#: commands/copy.c:1842 commands/copy.c:1848 commands/copy.c:1854
+#: commands/copy.c:1865
 #, c-format
 msgid "Try the COPY (SELECT ...) TO variant."
 msgstr "Intente la forma COPY (SELECT ...) TO."
 
-#: commands/copy.c:1850
+#: commands/copy.c:1846
 #, c-format
 msgid "cannot copy from materialized view \"%s\""
 msgstr "no se puede copiar desde la vista materializada «%s»"
 
-#: commands/copy.c:1856
+#: commands/copy.c:1852
 #, c-format
 msgid "cannot copy from foreign table \"%s\""
 msgstr "no se puede copiar desde la tabla foránea «%s»"
 
-#: commands/copy.c:1862
+#: commands/copy.c:1858
 #, c-format
 msgid "cannot copy from sequence \"%s\""
 msgstr "no se puede copiar desde la secuencia «%s»"
 
-#: commands/copy.c:1867
+#: commands/copy.c:1863
 #, c-format
 msgid "cannot copy from partitioned table \"%s\""
 msgstr "no se puede hacer copy de la tabla particionada «%s»"
 
-#: commands/copy.c:1873
+#: commands/copy.c:1869
 #, c-format
 msgid "cannot copy from non-table relation \"%s\""
 msgstr "no se puede copiar desde la relación «%s» porque no es una tabla"
 
-#: commands/copy.c:1913
+#: commands/copy.c:1909
 #, c-format
 msgid "relative path not allowed for COPY to file"
 msgstr "no se permiten rutas relativas para COPY hacia un archivo"
 
-#: commands/copy.c:1934
+#: commands/copy.c:1928
 #, c-format
 msgid "could not open file \"%s\" for writing: %m"
 msgstr "no se pudo abrir el archivo «%s» para escritura: %m"
 
-#: commands/copy.c:1937
+#: commands/copy.c:1931
 #, c-format
 msgid "COPY TO instructs the PostgreSQL server process to write a file. You may want a client-side facility such as psql's \\copy."
 msgstr "COPY TO indica al proceso servidor PostgreSQL escribir a un archivo. Puede desear usar facilidades del lado del cliente, como \\copy de psql."
 
-#: commands/copy.c:1950 commands/copy.c:3565
+#: commands/copy.c:1944 commands/copy.c:3511
 #, c-format
 msgid "\"%s\" is a directory"
 msgstr "«%s» es un directorio"
 
-#: commands/copy.c:2252
+#: commands/copy.c:2246
 #, c-format
 msgid "COPY %s, line %s, column %s"
 msgstr "COPY %s, línea %s, columna %s"
 
-#: commands/copy.c:2256 commands/copy.c:2303
+#: commands/copy.c:2250 commands/copy.c:2297
 #, c-format
 msgid "COPY %s, line %s"
 msgstr "COPY %s, línea %s"
 
-#: commands/copy.c:2267
+#: commands/copy.c:2261
 #, c-format
 msgid "COPY %s, line %s, column %s: \"%s\""
 msgstr "COPY %s, línea %s, columna %s: «%s»"
 
-#: commands/copy.c:2275
+#: commands/copy.c:2269
 #, c-format
 msgid "COPY %s, line %s, column %s: null input"
 msgstr "COPY %s, línea %s, columna %s: entrada nula"
 
-#: commands/copy.c:2297
+#: commands/copy.c:2291
 #, c-format
 msgid "COPY %s, line %s: \"%s\""
 msgstr "COPY %s, línea %s: «%s»"
 
-#: commands/copy.c:2698
+#: commands/copy.c:2692
 #, c-format
 msgid "cannot copy to view \"%s\""
 msgstr "no se puede copiar hacia la vista «%s»"
 
-#: commands/copy.c:2700
+#: commands/copy.c:2694
 #, c-format
 msgid "To enable copying to a view, provide an INSTEAD OF INSERT trigger."
 msgstr "Para posibilitar «copy» a una vista, provea un disparador INSTEAD OF INSERT."
 
-#: commands/copy.c:2704
+#: commands/copy.c:2698
 #, c-format
 msgid "cannot copy to materialized view \"%s\""
 msgstr "no se puede copiar hacia la vista materializada «%s»"
 
-#: commands/copy.c:2709
+#: commands/copy.c:2703
 #, c-format
 msgid "cannot copy to sequence \"%s\""
 msgstr "no se puede copiar hacia la secuencia «%s»"
 
-#: commands/copy.c:2714
+#: commands/copy.c:2708
 #, c-format
 msgid "cannot copy to non-table relation \"%s\""
 msgstr "no se puede copiar hacia la relación «%s» porque no es una tabla"
 
-#: commands/copy.c:2802
+#: commands/copy.c:2748
 #, c-format
 msgid "cannot perform COPY FREEZE on a partitioned table"
 msgstr "no se puede hacer COPY FREEZE a una tabla particionada"
 
-#: commands/copy.c:2817
+#: commands/copy.c:2763
 #, c-format
 msgid "cannot perform COPY FREEZE because of prior transaction activity"
 msgstr "no se puede ejecutar COPY FREEZE debido a actividad anterior en la transacción"
 
-#: commands/copy.c:2823
+#: commands/copy.c:2769
 #, c-format
 msgid "cannot perform COPY FREEZE because the table was not created or truncated in the current subtransaction"
 msgstr "no se puede ejecutar COPY FREEZE porque la tabla no fue creada ni truncada en la subtransacción en curso"
 
-#: commands/copy.c:3552
+#: commands/copy.c:3498
 #, 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 indica al proceso servidor de PostgreSQL leer un archivo. Puede desear usar una facilidad del lado del cliente como \\copy de psql."
 
-#: commands/copy.c:3580
+#: commands/copy.c:3526
 #, c-format
 msgid "COPY file signature not recognized"
 msgstr "el identificador del archivo COPY no es reconocido"
 
-#: commands/copy.c:3585
+#: commands/copy.c:3531
 #, c-format
 msgid "invalid COPY file header (missing flags)"
 msgstr "el encabezado del archivo COPY no es válido (faltan campos)"
 
-#: commands/copy.c:3589
+#: commands/copy.c:3535
 #, c-format
 msgid "invalid COPY file header (WITH OIDS)"
 msgstr "encabezado de archivo COPY no válido (WITH OIDS)"
 
-#: commands/copy.c:3594
+#: commands/copy.c:3540
 #, c-format
 msgid "unrecognized critical flags in COPY file header"
 msgstr "valores requeridos no reconocidos en encabezado de COPY"
 
-#: commands/copy.c:3600
+#: commands/copy.c:3546
 #, c-format
 msgid "invalid COPY file header (missing length)"
 msgstr "el encabezado del archivo COPY no es válido (falta el largo)"
 
-#: commands/copy.c:3607
+#: commands/copy.c:3553
 #, c-format
 msgid "invalid COPY file header (wrong length)"
 msgstr "el encabezado del archivo COPY no es válido (largo incorrecto)"
 
-#: commands/copy.c:3726 commands/copy.c:4391 commands/copy.c:4621
+#: commands/copy.c:3672 commands/copy.c:4337 commands/copy.c:4567
 #, c-format
 msgid "extra data after last expected column"
 msgstr "datos extra después de la última columna esperada"
 
-#: commands/copy.c:3740
+#: commands/copy.c:3686
 #, c-format
 msgid "missing data for column \"%s\""
 msgstr "faltan datos en la columna «%s»"
 
-#: commands/copy.c:3823
+#: commands/copy.c:3769
 #, c-format
 msgid "received copy data after EOF marker"
 msgstr "se recibieron datos de copy después del marcador EOF"
 
-#: commands/copy.c:3830
+#: commands/copy.c:3776
 #, c-format
 msgid "row field count is %d, expected %d"
 msgstr "la cantidad de registros es %d, pero se esperaban %d"
 
-#: commands/copy.c:4150 commands/copy.c:4167
+#: commands/copy.c:4096 commands/copy.c:4113
 #, c-format
 msgid "literal carriage return found in data"
 msgstr "se encontró un retorno de carro literal en los datos"
 
-#: commands/copy.c:4151 commands/copy.c:4168
+#: commands/copy.c:4097 commands/copy.c:4114
 #, c-format
 msgid "unquoted carriage return found in data"
 msgstr "se encontró un retorno de carro fuera de comillas en los datos"
 
-#: commands/copy.c:4153 commands/copy.c:4170
+#: commands/copy.c:4099 commands/copy.c:4116
 #, c-format
 msgid "Use \"\\r\" to represent carriage return."
 msgstr "Use «\\r» para representar el retorno de carro."
 
-#: commands/copy.c:4154 commands/copy.c:4171
+#: commands/copy.c:4100 commands/copy.c:4117
 #, c-format
 msgid "Use quoted CSV field to represent carriage return."
 msgstr "Use un campo CSV entre comillas para representar el retorno de carro."
 
-#: commands/copy.c:4183
+#: commands/copy.c:4129
 #, c-format
 msgid "literal newline found in data"
 msgstr "se encontró un salto de línea literal en los datos"
 
-#: commands/copy.c:4184
+#: commands/copy.c:4130
 #, c-format
 msgid "unquoted newline found in data"
 msgstr "se encontró un salto de línea fuera de comillas en los datos"
 
-#: commands/copy.c:4186
+#: commands/copy.c:4132
 #, c-format
 msgid "Use \"\\n\" to represent newline."
 msgstr "Use «\\n» para representar un salto de línea."
 
-#: commands/copy.c:4187
+#: commands/copy.c:4133
 #, c-format
 msgid "Use quoted CSV field to represent newline."
 msgstr "Use un campo CSV entre comillas para representar un salto de línea."
 
-#: commands/copy.c:4233 commands/copy.c:4269
+#: commands/copy.c:4179 commands/copy.c:4215
 #, c-format
 msgid "end-of-copy marker does not match previous newline style"
 msgstr "el marcador fin-de-copy no coincide con el estilo previo de salto de línea"
 
-#: commands/copy.c:4242 commands/copy.c:4258
+#: commands/copy.c:4188 commands/copy.c:4204
 #, c-format
 msgid "end-of-copy marker corrupt"
 msgstr "marcador fin-de-copy corrupto"
 
-#: commands/copy.c:4705
+#: commands/copy.c:4651
 #, c-format
 msgid "unterminated CSV quoted field"
 msgstr "un valor entre comillas está inconcluso"
 
-#: commands/copy.c:4782 commands/copy.c:4801
+#: commands/copy.c:4728 commands/copy.c:4747
 #, c-format
 msgid "unexpected EOF in COPY data"
 msgstr "EOF inesperado en datos de COPY"
 
-#: commands/copy.c:4791
+#: commands/copy.c:4737
 #, c-format
 msgid "invalid field size"
 msgstr "el tamaño de campo no es válido"
 
-#: commands/copy.c:4814
+#: commands/copy.c:4760
 #, c-format
 msgid "incorrect binary data format"
 msgstr "el formato de datos binarios es incorrecto"
 
-#: commands/copy.c:5122
+#: commands/copy.c:5068
 #, c-format
 msgid "column \"%s\" is a generated column"
 msgstr "la columna «%s» es una columna generada"
 
-#: commands/copy.c:5124
+#: commands/copy.c:5070
 #, c-format
 msgid "Generated columns cannot be used in COPY."
 msgstr "Las columnas generadas no pueden usarse en COPY."
 
-#: commands/copy.c:5139 commands/indexcmds.c:1579 commands/statscmds.c:214
-#: commands/tablecmds.c:2092 commands/tablecmds.c:2633
-#: commands/tablecmds.c:3012 parser/parse_relation.c:3353
-#: parser/parse_relation.c:3373 utils/adt/tsvector_op.c:2559
+#: commands/copy.c:5085 commands/indexcmds.c:1700 commands/statscmds.c:217
+#: commands/tablecmds.c:2163 commands/tablecmds.c:2740
+#: commands/tablecmds.c:3127 parser/parse_relation.c:3507
+#: parser/parse_relation.c:3527 utils/adt/tsvector_op.c:2616
 #, c-format
 msgid "column \"%s\" does not exist"
 msgstr "no existe la columna «%s»"
 
-#: commands/copy.c:5146 commands/tablecmds.c:2125 commands/trigger.c:937
-#: parser/parse_target.c:1047 parser/parse_target.c:1058
+#: commands/copy.c:5092 commands/tablecmds.c:2189 commands/trigger.c:885
+#: parser/parse_target.c:1052 parser/parse_target.c:1063
 #, c-format
 msgid "column \"%s\" specified more than once"
 msgstr "la columna «%s» fue especificada más de una vez"
 
-#: commands/createas.c:216 commands/createas.c:499
+#: commands/createas.c:215 commands/createas.c:497
 #, c-format
 msgid "too many column names were specified"
 msgstr "se especificaron demasiados nombres de columna"
 
-#: commands/createas.c:541
+#: commands/createas.c:539
 #, c-format
 msgid "policies not yet implemented for this command"
 msgstr "las políticas no están implementadas para esta orden"
 
-#: commands/dbcommands.c:236
+#: commands/dbcommands.c:246
 #, c-format
 msgid "LOCATION is not supported anymore"
 msgstr "LOCATION ya no está soportado"
 
-#: commands/dbcommands.c:237
+#: commands/dbcommands.c:247
 #, c-format
 msgid "Consider using tablespaces instead."
 msgstr "Considere usar tablespaces."
 
-#: commands/dbcommands.c:263 utils/adt/ascii.c:145
+#: commands/dbcommands.c:261
+#, c-format
+msgid "LOCALE cannot be specified together with LC_COLLATE or LC_CTYPE."
+msgstr ""
+
+#: commands/dbcommands.c:279 utils/adt/ascii.c:145
 #, c-format
 msgid "%d is not a valid encoding code"
 msgstr "%d no es un código válido de codificación"
 
-#: commands/dbcommands.c:274 utils/adt/ascii.c:127
+#: commands/dbcommands.c:290 utils/adt/ascii.c:127
 #, c-format
 msgid "%s is not a valid encoding name"
 msgstr "%s no es un nombre válido de codificación"
 
-#: commands/dbcommands.c:293 commands/dbcommands.c:1515 commands/user.c:275
-#: commands/user.c:680
+#: commands/dbcommands.c:314 commands/dbcommands.c:1569 commands/user.c:275
+#: commands/user.c:691
 #, c-format
 msgid "invalid connection limit: %d"
 msgstr "límite de conexión no válido: %d"
 
-#: commands/dbcommands.c:312
+#: commands/dbcommands.c:333
 #, c-format
 msgid "permission denied to create database"
 msgstr "se ha denegado el permiso para crear la base de datos"
 
-#: commands/dbcommands.c:335
+#: commands/dbcommands.c:356
 #, c-format
 msgid "template database \"%s\" does not exist"
 msgstr "no existe la base de datos patrón «%s»"
 
-#: commands/dbcommands.c:347
+#: commands/dbcommands.c:368
 #, c-format
 msgid "permission denied to copy database \"%s\""
 msgstr "se ha denegado el permiso para copiar la base de datos «%s»"
 
-#: commands/dbcommands.c:363
+#: commands/dbcommands.c:384
 #, c-format
 msgid "invalid server encoding %d"
 msgstr "la codificación de servidor %d no es válida"
 
-#: commands/dbcommands.c:369 commands/dbcommands.c:374
+#: commands/dbcommands.c:390 commands/dbcommands.c:395
 #, c-format
 msgid "invalid locale name: \"%s\""
 msgstr "nombre de configuración regional no válido: «%s»"
 
-#: commands/dbcommands.c:394
+#: commands/dbcommands.c:415
 #, c-format
 msgid "new encoding (%s) is incompatible with the encoding of the template database (%s)"
 msgstr "la nueva codificación (%s) es incompatible con la codificación de la base de datos patrón (%s)"
 
-#: commands/dbcommands.c:397
+#: commands/dbcommands.c:418
 #, c-format
 msgid "Use the same encoding as in the template database, or use template0 as template."
 msgstr "Use la misma codificación que en la base de datos patrón, o bien use template0 como patrón."
 
-#: commands/dbcommands.c:402
+#: commands/dbcommands.c:423
 #, c-format
 msgid "new collation (%s) is incompatible with the collation of the template database (%s)"
 msgstr "la nueva «collation» (%s) es incompatible con la «collation» de la base de datos patrón (%s)"
 
-#: commands/dbcommands.c:404
+#: commands/dbcommands.c:425
 #, c-format
 msgid "Use the same collation as in the template database, or use template0 as template."
 msgstr "Use la misma «collation» que en la base de datos patrón, o bien use template0 como patrón."
 
-#: commands/dbcommands.c:409
+#: commands/dbcommands.c:430
 #, c-format
 msgid "new LC_CTYPE (%s) is incompatible with the LC_CTYPE of the template database (%s)"
 msgstr "el nuevo LC_CTYPE (%s) es incompatible con el LC_CTYPE de la base de datos patrón (%s)"
 
-#: commands/dbcommands.c:411
+#: commands/dbcommands.c:432
 #, c-format
 msgid "Use the same LC_CTYPE as in the template database, or use template0 as template."
 msgstr "Use el mismo LC_CTYPE que en la base de datos patrón, o bien use template0 como patrón."
 
-#: commands/dbcommands.c:433 commands/dbcommands.c:1167
+#: commands/dbcommands.c:454 commands/dbcommands.c:1196
 #, c-format
 msgid "pg_global cannot be used as default tablespace"
 msgstr "no puede usarse pg_global como tablespace por omisión"
 
-#: commands/dbcommands.c:459
+#: commands/dbcommands.c:480
 #, c-format
 msgid "cannot assign new default tablespace \"%s\""
 msgstr "no se puede asignar el nuevo tablespace por omisión «%s»"
 
-#: commands/dbcommands.c:461
+#: commands/dbcommands.c:482
 #, c-format
 msgid "There is a conflict because database \"%s\" already has some tables in this tablespace."
 msgstr "Hay un conflicto puesto que la base de datos «%s» ya tiene algunas tablas en este tablespace."
 
-#: commands/dbcommands.c:491 commands/dbcommands.c:1037
+#: commands/dbcommands.c:512 commands/dbcommands.c:1066
 #, c-format
 msgid "database \"%s\" already exists"
 msgstr "la base de datos «%s» ya existe"
 
-#: commands/dbcommands.c:505
+#: commands/dbcommands.c:526
 #, c-format
 msgid "source database \"%s\" is being accessed by other users"
 msgstr "la base de datos de origen «%s» está siendo utilizada por otros usuarios"
 
-#: commands/dbcommands.c:748 commands/dbcommands.c:763
+#: commands/dbcommands.c:769 commands/dbcommands.c:784
 #, c-format
 msgid "encoding \"%s\" does not match locale \"%s\""
 msgstr "la codificación «%s» no coincide con la configuración regional «%s»"
 
-#: commands/dbcommands.c:751
+#: commands/dbcommands.c:772
 #, c-format
 msgid "The chosen LC_CTYPE setting requires encoding \"%s\"."
 msgstr "El parámetro LC_CTYPE escogido requiere la codificación «%s»."
 
-#: commands/dbcommands.c:766
+#: commands/dbcommands.c:787
 #, c-format
 msgid "The chosen LC_COLLATE setting requires encoding \"%s\"."
 msgstr "El parámetro LC_COLLATE escogido requiere la codificación «%s»."
 
-#: commands/dbcommands.c:827
+#: commands/dbcommands.c:848
 #, c-format
 msgid "database \"%s\" does not exist, skipping"
 msgstr "no existe la base de datos «%s», omitiendo"
 
-#: commands/dbcommands.c:851
+#: commands/dbcommands.c:872
 #, c-format
 msgid "cannot drop a template database"
 msgstr "no se puede borrar una base de datos patrón"
 
-#: commands/dbcommands.c:857
+#: commands/dbcommands.c:878
 #, c-format
 msgid "cannot drop the currently open database"
 msgstr "no se puede eliminar la base de datos activa"
 
-#: commands/dbcommands.c:870
+#: commands/dbcommands.c:891
 #, c-format
 msgid "database \"%s\" is used by an active logical replication slot"
 msgstr "la base de datos «%s» está en uso por un slot de replicación activo"
 
-#: commands/dbcommands.c:872
+#: commands/dbcommands.c:893
 #, c-format
 msgid "There is %d active slot."
 msgid_plural "There are %d active slots."
 msgstr[0] "Hay %d slot activo."
 msgstr[1] "Hay %d slots activos."
 
-#: commands/dbcommands.c:886 commands/dbcommands.c:1059
-#: commands/dbcommands.c:1189
-#, c-format
-msgid "database \"%s\" is being accessed by other users"
-msgstr "la base de datos «%s» está siendo utilizada por otros usuarios"
-
-#: commands/dbcommands.c:899
+#: commands/dbcommands.c:907
 #, c-format
 msgid "database \"%s\" is being used by logical replication subscription"
 msgstr "la base de datos «%s» está siendo utilizada por suscripciones de replicación lógica"
 
-#: commands/dbcommands.c:901
+#: commands/dbcommands.c:909
 #, c-format
 msgid "There is %d subscription."
 msgid_plural "There are %d subscriptions."
 msgstr[0] "Hay %d suscripción."
 msgstr[1] "Hay %d suscripciones."
 
-#: commands/dbcommands.c:1019
+#: commands/dbcommands.c:930 commands/dbcommands.c:1088
+#: commands/dbcommands.c:1218
+#, c-format
+msgid "database \"%s\" is being accessed by other users"
+msgstr "la base de datos «%s» está siendo utilizada por otros usuarios"
+
+#: commands/dbcommands.c:1048
 #, c-format
 msgid "permission denied to rename database"
 msgstr "se ha denegado el permiso para cambiar el nombre a la base de datos"
 
-#: commands/dbcommands.c:1048
+#: commands/dbcommands.c:1077
 #, c-format
 msgid "current database cannot be renamed"
 msgstr "no se puede cambiar el nombre de la base de datos activa"
 
-#: commands/dbcommands.c:1145
+#: commands/dbcommands.c:1174
 #, c-format
 msgid "cannot change the tablespace of the currently open database"
 msgstr "no se puede cambiar el tablespace de la base de datos activa"
 
-#: commands/dbcommands.c:1248
+#: commands/dbcommands.c:1277
 #, c-format
 msgid "some relations of database \"%s\" are already in tablespace \"%s\""
 msgstr "algunas relaciones de la base de datos «%s» ya están en el tablespace «%s»"
 
-#: commands/dbcommands.c:1250
+#: commands/dbcommands.c:1279
 #, c-format
 msgid "You must move them back to the database's default tablespace before using this command."
 msgstr "Debe moverlas de vuelta al tablespace por omisión de la base de datos antes de ejecutar esta orden."
 
-#: commands/dbcommands.c:1375 commands/dbcommands.c:1921
-#: commands/dbcommands.c:2126 commands/dbcommands.c:2181
-#: commands/tablespace.c:620
+#: commands/dbcommands.c:1404 commands/dbcommands.c:1980
+#: commands/dbcommands.c:2203 commands/dbcommands.c:2261
+#: commands/tablespace.c:619
 #, c-format
 msgid "some useless files may be left behind in old database directory \"%s\""
 msgstr "algunos archivos inútiles pueden haber quedado en el directorio \"%s\""
 
-#: commands/dbcommands.c:1496
+#: commands/dbcommands.c:1460
+#, fuzzy, c-format
+#| msgid "unrecognized ANALYZE option \"%s\""
+msgid "unrecognized DROP DATABASE option \"%s\""
+msgstr "opción de ANALYZE «%s» no reconocida"
+
+#: commands/dbcommands.c:1550
 #, c-format
 msgid "option \"%s\" cannot be specified with other options"
 msgstr "la opción «%s» no puede ser especificada con otras opciones"
 
-#: commands/dbcommands.c:1552
+#: commands/dbcommands.c:1606
 #, c-format
 msgid "cannot disallow connections for current database"
 msgstr "no se pueden prohibir las conexiones para la base de datos actual"
 
-#: commands/dbcommands.c:1688
+#: commands/dbcommands.c:1742
 #, c-format
 msgid "permission denied to change owner of database"
 msgstr "se ha denegado el permiso para cambiar el dueño de la base de datos"
 
-#: commands/dbcommands.c:2009
+#: commands/dbcommands.c:2086
 #, c-format
 msgid "There are %d other session(s) and %d prepared transaction(s) using the database."
 msgstr "Hay otras %d sesiones y %d transacciones preparadas usando la base de datos."
 
-#: commands/dbcommands.c:2012
+#: commands/dbcommands.c:2089
 #, c-format
 msgid "There is %d other session using the database."
 msgid_plural "There are %d other sessions using the database."
 msgstr[0] "Hay %d otra sesión usando la base de datos."
 msgstr[1] "Hay otras %d sesiones usando la base de datos."
 
-#: commands/dbcommands.c:2017
+#: commands/dbcommands.c:2094 storage/ipc/procarray.c:3016
 #, c-format
 msgid "There is %d prepared transaction using the database."
 msgid_plural "There are %d prepared transactions using the database."
@@ -6618,1221 +6859,1237 @@ msgstr "el argumento de %s debe ser un nombre de tipo"
 msgid "invalid argument for %s: \"%s\""
 msgstr "argumento no válido para %s: «%s»"
 
-#: commands/dropcmds.c:99 commands/functioncmds.c:1272
-#: utils/adt/ruleutils.c:2609
+#: commands/dropcmds.c:100 commands/functioncmds.c:1274
+#: utils/adt/ruleutils.c:2633
 #, c-format
 msgid "\"%s\" is an aggregate function"
 msgstr "«%s» es una función de agregación"
 
-#: commands/dropcmds.c:101
+#: commands/dropcmds.c:102
 #, c-format
 msgid "Use DROP AGGREGATE to drop aggregate functions."
 msgstr "Use DROP AGGREGATE para eliminar funciones de agregación."
 
-#: commands/dropcmds.c:157 commands/sequence.c:447 commands/tablecmds.c:3096
-#: commands/tablecmds.c:3254 commands/tablecmds.c:3299
-#: commands/tablecmds.c:14235 tcop/utility.c:1174
+#: commands/dropcmds.c:158 commands/sequence.c:447 commands/tablecmds.c:3211
+#: commands/tablecmds.c:3369 commands/tablecmds.c:3414
+#: commands/tablecmds.c:14948 tcop/utility.c:1276
 #, c-format
 msgid "relation \"%s\" does not exist, skipping"
 msgstr "no existe la relación «%s», omitiendo"
 
-#: commands/dropcmds.c:187 commands/dropcmds.c:286 commands/tablecmds.c:1165
+#: commands/dropcmds.c:188 commands/dropcmds.c:287 commands/tablecmds.c:1197
 #, c-format
 msgid "schema \"%s\" does not exist, skipping"
 msgstr "el esquema «%s» no existe, omitiendo"
 
-#: commands/dropcmds.c:227 commands/dropcmds.c:266 commands/tablecmds.c:253
+#: commands/dropcmds.c:228 commands/dropcmds.c:267 commands/tablecmds.c:259
 #, c-format
 msgid "type \"%s\" does not exist, skipping"
 msgstr "el tipo «%s» no existe, omitiendo"
 
-#: commands/dropcmds.c:256
+#: commands/dropcmds.c:257
 #, c-format
 msgid "access method \"%s\" does not exist, skipping"
 msgstr "no existe el método de acceso «%s», omitiendo"
 
-#: commands/dropcmds.c:274
+#: commands/dropcmds.c:275
 #, c-format
 msgid "collation \"%s\" does not exist, skipping"
 msgstr "no existe el ordenamiento (collation) «%s», omitiendo"
 
-#: commands/dropcmds.c:281
+#: commands/dropcmds.c:282
 #, c-format
 msgid "conversion \"%s\" does not exist, skipping"
 msgstr "no existe la conversión «%s», omitiendo"
 
-#: commands/dropcmds.c:292
+#: commands/dropcmds.c:293 commands/statscmds.c:477
 #, c-format
 msgid "statistics object \"%s\" does not exist, skipping"
 msgstr "no existe el objeto de estadísticas «%s», omitiendo"
 
-#: commands/dropcmds.c:299
+#: commands/dropcmds.c:300
 #, c-format
 msgid "text search parser \"%s\" does not exist, skipping"
 msgstr "el analizador de búsqueda en texto «%s» no existe, omitiendo"
 
-#: commands/dropcmds.c:306
+#: commands/dropcmds.c:307
 #, c-format
 msgid "text search dictionary \"%s\" does not exist, skipping"
 msgstr "el diccionario de búsqueda en texto «%s» no existe, omitiendo"
 
-#: commands/dropcmds.c:313
+#: commands/dropcmds.c:314
 #, c-format
 msgid "text search template \"%s\" does not exist, skipping"
 msgstr "la plantilla de búsqueda en texto «%s» no existe, omitiendo"
 
-#: commands/dropcmds.c:320
+#: commands/dropcmds.c:321
 #, c-format
 msgid "text search configuration \"%s\" does not exist, skipping"
 msgstr "no existe la configuración de búsqueda en texto «%s», omitiendo"
 
-#: commands/dropcmds.c:325
+#: commands/dropcmds.c:326
 #, c-format
 msgid "extension \"%s\" does not exist, skipping"
 msgstr "no existe la extensión «%s», omitiendo"
 
-#: commands/dropcmds.c:335
+#: commands/dropcmds.c:336
 #, c-format
 msgid "function %s(%s) does not exist, skipping"
 msgstr "no existe la función %s(%s), omitiendo"
 
-#: commands/dropcmds.c:348
+#: commands/dropcmds.c:349
 #, c-format
 msgid "procedure %s(%s) does not exist, skipping"
 msgstr "el procedimiento %s(%s) no existe, omitiendo"
 
-#: commands/dropcmds.c:361
+#: commands/dropcmds.c:362
 #, c-format
 msgid "routine %s(%s) does not exist, skipping"
 msgstr "no existe la rutina %s(%s), omitiendo"
 
-#: commands/dropcmds.c:374
+#: commands/dropcmds.c:375
 #, c-format
 msgid "aggregate %s(%s) does not exist, skipping"
 msgstr "la función de agregación %s(%s) no existe, omitiendo"
 
-#: commands/dropcmds.c:387
+#: commands/dropcmds.c:388
 #, c-format
 msgid "operator %s does not exist, skipping"
 msgstr "el operador %s no existe, omitiendo"
 
-#: commands/dropcmds.c:393
+#: commands/dropcmds.c:394
 #, c-format
 msgid "language \"%s\" does not exist, skipping"
 msgstr "el lenguaje «%s» no existe, omitiendo"
 
-#: commands/dropcmds.c:402
+#: commands/dropcmds.c:403
 #, c-format
 msgid "cast from type %s to type %s does not exist, skipping"
 msgstr "no existe la conversión del tipo %s al tipo %s, omitiendo"
 
-#: commands/dropcmds.c:411
+#: commands/dropcmds.c:412
 #, c-format
 msgid "transform for type %s language \"%s\" does not exist, skipping"
 msgstr "la transformación para el tipo %s lenguaje «%s» no existe, omitiendo"
 
-#: commands/dropcmds.c:419
+#: commands/dropcmds.c:420
 #, c-format
 msgid "trigger \"%s\" for relation \"%s\" does not exist, skipping"
 msgstr "disparador «%s» para la relación «%s» no existe, omitiendo"
 
-#: commands/dropcmds.c:428
+#: commands/dropcmds.c:429
 #, c-format
 msgid "policy \"%s\" for relation \"%s\" does not exist, skipping"
 msgstr "la política «%s» para la relación «%s» no existe, omitiendo"
 
-#: commands/dropcmds.c:435
+#: commands/dropcmds.c:436
 #, c-format
 msgid "event trigger \"%s\" does not exist, skipping"
 msgstr "el disparador por eventos «%s» no existe, omitiendo"
 
-#: commands/dropcmds.c:441
+#: commands/dropcmds.c:442
 #, c-format
 msgid "rule \"%s\" for relation \"%s\" does not exist, skipping"
 msgstr "la regla «%s» para la relación «%s» no existe, omitiendo"
 
-#: commands/dropcmds.c:448
+#: commands/dropcmds.c:449
 #, c-format
 msgid "foreign-data wrapper \"%s\" does not exist, skipping"
 msgstr "no existe el conector de datos externos «%s», omitiendo"
 
-#: commands/dropcmds.c:452 commands/foreigncmds.c:1400
+#: commands/dropcmds.c:453 commands/foreigncmds.c:1396
 #, c-format
 msgid "server \"%s\" does not exist, skipping"
 msgstr "el servidor «%s» no existe, omitiendo"
 
-#: commands/dropcmds.c:461
+#: commands/dropcmds.c:462
 #, c-format
 msgid "operator class \"%s\" does not exist for access method \"%s\", skipping"
 msgstr "no existe la clase de operadores «%s» para el método de acceso «%s», omitiendo"
 
-#: commands/dropcmds.c:473
+#: commands/dropcmds.c:474
 #, c-format
 msgid "operator family \"%s\" does not exist for access method \"%s\", skipping"
 msgstr "no existe la familia de operadores «%s» para el método de acceso «%s», omitiendo"
 
-#: commands/dropcmds.c:480
+#: commands/dropcmds.c:481
 #, c-format
 msgid "publication \"%s\" does not exist, skipping"
 msgstr "no existe la publicación «%s», omitiendo"
 
-#: commands/event_trigger.c:187
+#: commands/event_trigger.c:125
 #, c-format
 msgid "permission denied to create event trigger \"%s\""
 msgstr "se ha denegado el permiso para crear el disparador por eventos «%s»"
 
-#: commands/event_trigger.c:189
+#: commands/event_trigger.c:127
 #, c-format
 msgid "Must be superuser to create an event trigger."
 msgstr "Debe ser superusuario para crear un disparador por eventos."
 
-#: commands/event_trigger.c:198
+#: commands/event_trigger.c:136
 #, c-format
 msgid "unrecognized event name \"%s\""
 msgstr "nomre de evento «%s» no reconocido"
 
-#: commands/event_trigger.c:215
+#: commands/event_trigger.c:153
 #, c-format
 msgid "unrecognized filter variable \"%s\""
 msgstr "variable de filtro «%s» no reconocida"
 
-#: commands/event_trigger.c:270
+#: commands/event_trigger.c:207
 #, c-format
 msgid "filter value \"%s\" not recognized for filter variable \"%s\""
 msgstr "el valor de filtro «%s» no es reconocido por la variable de filtro «%s»"
 
 #. translator: %s represents an SQL statement name
-#: commands/event_trigger.c:276 commands/event_trigger.c:346
+#: commands/event_trigger.c:213 commands/event_trigger.c:235
 #, c-format
 msgid "event triggers are not supported for %s"
 msgstr "los disparadores por eventos no están soportados para %s"
 
-#: commands/event_trigger.c:369
+#: commands/event_trigger.c:248
 #, c-format
 msgid "filter variable \"%s\" specified more than once"
 msgstr "la variable de filtro «%s» fue especificada más de una vez"
 
-#: commands/event_trigger.c:519 commands/event_trigger.c:563
-#: commands/event_trigger.c:657
+#: commands/event_trigger.c:399 commands/event_trigger.c:443
+#: commands/event_trigger.c:537
 #, c-format
 msgid "event trigger \"%s\" does not exist"
 msgstr "no existe el disparador por eventos «%s»"
 
-#: commands/event_trigger.c:625
+#: commands/event_trigger.c:505
 #, c-format
 msgid "permission denied to change owner of event trigger \"%s\""
 msgstr "se ha denegado el permiso para cambiar el dueño del disparador por eventos «%s»"
 
-#: commands/event_trigger.c:627
+#: commands/event_trigger.c:507
 #, c-format
 msgid "The owner of an event trigger must be a superuser."
 msgstr "El dueño de un disparador por eventos debe ser un superusuario."
 
-#: commands/event_trigger.c:1465
+#: commands/event_trigger.c:1325
 #, c-format
 msgid "%s can only be called in a sql_drop event trigger function"
 msgstr "%s sólo puede invocarse en una función de un disparador en el evento sql_drop"
 
-#: commands/event_trigger.c:1585 commands/event_trigger.c:1606
+#: commands/event_trigger.c:1445 commands/event_trigger.c:1466
 #, c-format
 msgid "%s can only be called in a table_rewrite event trigger function"
 msgstr "%s sólo puede invocarse en una función de un disparador en el evento table_rewrite"
 
-#: commands/event_trigger.c:2017
+#: commands/event_trigger.c:1877
 #, c-format
 msgid "%s can only be called in an event trigger function"
 msgstr "%s sólo puede invocarse en una función de un disparador por eventos"
 
-#: commands/explain.c:193
+#: commands/explain.c:212
 #, c-format
 msgid "unrecognized value for EXPLAIN option \"%s\": \"%s\""
 msgstr "valor no reconocido para la opción de EXPLAIN «%s»: «%s»"
 
-#: commands/explain.c:200
+#: commands/explain.c:219
 #, c-format
 msgid "unrecognized EXPLAIN option \"%s\""
 msgstr "opción de EXPLAIN «%s» no reconocida"
 
-#: commands/explain.c:208
+#: commands/explain.c:227
 #, c-format
 msgid "EXPLAIN option BUFFERS requires ANALYZE"
 msgstr "la opción BUFFERS de EXPLAIN requiere ANALYZE"
 
-#: commands/explain.c:217
+#: commands/explain.c:232
+#, fuzzy, c-format
+#| msgid "EXPLAIN option TIMING requires ANALYZE"
+msgid "EXPLAIN option WAL requires ANALYZE"
+msgstr "la opción TIMING de EXPLAIN requiere ANALYZE"
+
+#: commands/explain.c:241
 #, c-format
 msgid "EXPLAIN option TIMING requires ANALYZE"
 msgstr "la opción TIMING de EXPLAIN requiere ANALYZE"
 
-#: commands/extension.c:171 commands/extension.c:2918
+#: commands/extension.c:173 commands/extension.c:3000
 #, c-format
 msgid "extension \"%s\" does not exist"
 msgstr "no existe la extensión «%s»"
 
-#: commands/extension.c:270 commands/extension.c:279 commands/extension.c:291
-#: commands/extension.c:301
+#: commands/extension.c:272 commands/extension.c:281 commands/extension.c:293
+#: commands/extension.c:303
 #, c-format
 msgid "invalid extension name: \"%s\""
 msgstr "nombre de extensión no válido: «%s»"
 
-#: commands/extension.c:271
+#: commands/extension.c:273
 #, c-format
 msgid "Extension names must not be empty."
 msgstr "Los nombres de extensión no deben ser vacíos."
 
-#: commands/extension.c:280
+#: commands/extension.c:282
 #, c-format
 msgid "Extension names must not contain \"--\"."
 msgstr "Los nombres de extensión no deben contener «--»."
 
-#: commands/extension.c:292
+#: commands/extension.c:294
 #, c-format
 msgid "Extension names must not begin or end with \"-\"."
 msgstr "Los nombres de extensión no deben empezar ni terminar con «-»."
 
-#: commands/extension.c:302
+#: commands/extension.c:304
 #, c-format
 msgid "Extension names must not contain directory separator characters."
 msgstr "Los nombres de extensión no deben contener caracteres separadores de directorio."
 
-#: commands/extension.c:317 commands/extension.c:326 commands/extension.c:335
-#: commands/extension.c:345
+#: commands/extension.c:319 commands/extension.c:328 commands/extension.c:337
+#: commands/extension.c:347
 #, c-format
 msgid "invalid extension version name: \"%s\""
 msgstr "nombre de versión de extensión no válido: «%s»"
 
-#: commands/extension.c:318
+#: commands/extension.c:320
 #, c-format
 msgid "Version names must not be empty."
 msgstr "Los nombres de versión no deben ser vacíos."
 
-#: commands/extension.c:327
+#: commands/extension.c:329
 #, c-format
 msgid "Version names must not contain \"--\"."
 msgstr "Los nombres de versión no deben contener «--»."
 
-#: commands/extension.c:336
+#: commands/extension.c:338
 #, c-format
 msgid "Version names must not begin or end with \"-\"."
 msgstr "Los nombres de versión no deben empezar ni terminar con «-»."
 
-#: commands/extension.c:346
+#: commands/extension.c:348
 #, c-format
 msgid "Version names must not contain directory separator characters."
 msgstr "Los nombres de versión no deben contener caracteres separadores de directorio."
 
-#: commands/extension.c:496
+#: commands/extension.c:498
 #, c-format
 msgid "could not open extension control file \"%s\": %m"
 msgstr "no se pudo abrir el archivo de control de extensión «%s»: %m"
 
-#: commands/extension.c:518 commands/extension.c:528
+#: commands/extension.c:520 commands/extension.c:530
 #, c-format
 msgid "parameter \"%s\" cannot be set in a secondary extension control file"
 msgstr "el parámetro «%s» no se puede cambiar en un archivo control secundario de extensión"
 
-#: commands/extension.c:550 commands/extension.c:558 utils/misc/guc.c:6540
+#: commands/extension.c:552 commands/extension.c:560 commands/extension.c:568
+#: utils/misc/guc.c:6759
 #, c-format
 msgid "parameter \"%s\" requires a Boolean value"
 msgstr "el parámetro «%s» requiere un valor lógico (booleano)"
 
-#: commands/extension.c:567
+#: commands/extension.c:577
 #, c-format
 msgid "\"%s\" is not a valid encoding name"
 msgstr "«%s» no es un nombre válido de codificación"
 
-#: commands/extension.c:581
+#: commands/extension.c:591
 #, c-format
 msgid "parameter \"%s\" must be a list of extension names"
 msgstr "el parámetro «%s» debe ser una lista de nombres de extensión"
 
-#: commands/extension.c:588
+#: commands/extension.c:598
 #, c-format
 msgid "unrecognized parameter \"%s\" in file \"%s\""
 msgstr "parámetro no reconocido «%s» en el archivo «%s»"
 
-#: commands/extension.c:597
+#: commands/extension.c:607
 #, c-format
 msgid "parameter \"schema\" cannot be specified when \"relocatable\" is true"
 msgstr "el parámetro «schema» no puede ser especificado cuando «relocatable» es verdadero"
 
-#: commands/extension.c:762
+#: commands/extension.c:785
 #, c-format
 msgid "transaction control statements are not allowed within an extension script"
 msgstr "las sentencias de control de transacción no están permitidos dentro de un guión de transacción"
 
-#: commands/extension.c:808
+#: commands/extension.c:861
 #, c-format
 msgid "permission denied to create extension \"%s\""
 msgstr "se ha denegado el permiso para crear la extensión «%s»"
 
-#: commands/extension.c:810
+#: commands/extension.c:864
+#, fuzzy, c-format
+#| msgid "Must be superuser to create this extension."
+msgid "Must have CREATE privilege on current database to create this extension."
+msgstr "Debe ser superusuario para crear esta extensión."
+
+#: commands/extension.c:865
 #, c-format
 msgid "Must be superuser to create this extension."
 msgstr "Debe ser superusuario para crear esta extensión."
 
-#: commands/extension.c:814
+#: commands/extension.c:869
 #, c-format
 msgid "permission denied to update extension \"%s\""
 msgstr "se ha denegado el permiso para actualizar la extensión «%s»"
 
-#: commands/extension.c:816
+#: commands/extension.c:872
+#, fuzzy, c-format
+#| msgid "Must be superuser to update this extension."
+msgid "Must have CREATE privilege on current database to update this extension."
+msgstr "Debe ser superusuario para actualizar esta extensión."
+
+#: commands/extension.c:873
 #, c-format
 msgid "Must be superuser to update this extension."
 msgstr "Debe ser superusuario para actualizar esta extensión."
 
-#: commands/extension.c:1100
+#: commands/extension.c:1187
 #, c-format
 msgid "extension \"%s\" has no update path from version \"%s\" to version \"%s\""
 msgstr "la extensión «%s» no tiene ruta de actualización desde la versión «%s» hasta la versión «%s»"
 
-#: commands/extension.c:1307 commands/extension.c:2979
+#: commands/extension.c:1395 commands/extension.c:3061
 #, c-format
 msgid "version to install must be specified"
 msgstr "la versión a instalar debe ser especificada"
 
-#: commands/extension.c:1329
-#, c-format
-msgid "FROM version must be different from installation target version \"%s\""
-msgstr "la versión FROM debe ser diferente de la versión destino de instalación «%s»"
-
-#: commands/extension.c:1394
+#: commands/extension.c:1432
 #, c-format
 msgid "extension \"%s\" has no installation script nor update path for version \"%s\""
 msgstr "la extensión «%s» no tiene script de instalación ni ruta de actualización para la versión «%s»"
 
-#: commands/extension.c:1429
+#: commands/extension.c:1466
 #, c-format
 msgid "extension \"%s\" must be installed in schema \"%s\""
 msgstr "la extensión «%s» debe ser instalada en el esquema «%s»"
 
-#: commands/extension.c:1589
+#: commands/extension.c:1626
 #, c-format
 msgid "cyclic dependency detected between extensions \"%s\" and \"%s\""
 msgstr "detectada una dependencia cíclica entre las extensiones «%s» y «%s»"
 
-#: commands/extension.c:1594
+#: commands/extension.c:1631
 #, c-format
 msgid "installing required extension \"%s\""
 msgstr "instalando la extensión requerida «%s»"
 
-#: commands/extension.c:1618
+#: commands/extension.c:1654
 #, c-format
 msgid "required extension \"%s\" is not installed"
 msgstr "la extensión requerida «%s» no está instalada"
 
-#: commands/extension.c:1621
+#: commands/extension.c:1657
 #, c-format
 msgid "Use CREATE EXTENSION ... CASCADE to install required extensions too."
 msgstr "Use CREATE EXTENSION ... CASCADE para instalar además las extensiones requeridas."
 
-#: commands/extension.c:1658
+#: commands/extension.c:1692
 #, c-format
 msgid "extension \"%s\" already exists, skipping"
 msgstr "la extensión «%s» ya existe, omitiendo"
 
-#: commands/extension.c:1665
+#: commands/extension.c:1699
 #, c-format
 msgid "extension \"%s\" already exists"
 msgstr "la extensión «%s» ya existe"
 
-#: commands/extension.c:1676
+#: commands/extension.c:1710
 #, c-format
 msgid "nested CREATE EXTENSION is not supported"
 msgstr "los CREATE EXTENSION anidados no están soportados"
 
-#: commands/extension.c:1860
+#: commands/extension.c:1883
 #, c-format
 msgid "cannot drop extension \"%s\" because it is being modified"
 msgstr "no se puede eliminar la extensión «%s» porque está siendo modificada"
 
-#: commands/extension.c:2362
+#: commands/extension.c:2444
 #, c-format
 msgid "%s can only be called from an SQL script executed by CREATE EXTENSION"
 msgstr "%s sólo puede invocarse desde un script SQL ejecutado por CREATE EXTENSION"
 
-#: commands/extension.c:2374
+#: commands/extension.c:2456
 #, c-format
 msgid "OID %u does not refer to a table"
 msgstr "el OID %u no hace referencia a una tabla"
 
-#: commands/extension.c:2379
+#: commands/extension.c:2461
 #, c-format
 msgid "table \"%s\" is not a member of the extension being created"
 msgstr "el tabla «%s» no es un miembro de la extensión que se está creando"
 
-#: commands/extension.c:2733
+#: commands/extension.c:2815
 #, c-format
 msgid "cannot move extension \"%s\" into schema \"%s\" because the extension contains the schema"
 msgstr "no se puede mover la extensión «%s» al esquema «%s» porque la extensión contiene al esquema"
 
-#: commands/extension.c:2774 commands/extension.c:2837
+#: commands/extension.c:2856 commands/extension.c:2919
 #, c-format
 msgid "extension \"%s\" does not support SET SCHEMA"
 msgstr "la extensión «%s» no soporta SET SCHEMA"
 
-#: commands/extension.c:2839
+#: commands/extension.c:2921
 #, c-format
 msgid "%s is not in the extension's schema \"%s\""
 msgstr "%s no está en el esquema de la extensión, «%s»"
 
-#: commands/extension.c:2898
+#: commands/extension.c:2980
 #, c-format
 msgid "nested ALTER EXTENSION is not supported"
 msgstr "los ALTER EXTENSION anidados no están soportados"
 
-#: commands/extension.c:2990
+#: commands/extension.c:3072
 #, c-format
 msgid "version \"%s\" of extension \"%s\" is already installed"
 msgstr "la versión «%s» de la extensión «%s» ya está instalada"
 
-#: commands/extension.c:3241
+#: commands/extension.c:3323
 #, c-format
 msgid "cannot add schema \"%s\" to extension \"%s\" because the schema contains the extension"
 msgstr "no se puede agregar el esquema «%s» a la extensión «%s» porque el esquema contiene la extensión"
 
-#: commands/extension.c:3269
+#: commands/extension.c:3351
 #, c-format
 msgid "%s is not a member of extension \"%s\""
 msgstr "%s no es un miembro de la extensión «%s»"
 
-#: commands/extension.c:3335
+#: commands/extension.c:3417
 #, c-format
 msgid "file \"%s\" is too large"
 msgstr "el archivo «%s» es demasiado grande"
 
-#: commands/foreigncmds.c:151 commands/foreigncmds.c:160
+#: commands/foreigncmds.c:148 commands/foreigncmds.c:157
 #, c-format
 msgid "option \"%s\" not found"
 msgstr "opción «%s» no encontrada"
 
-#: commands/foreigncmds.c:170
+#: commands/foreigncmds.c:167
 #, c-format
 msgid "option \"%s\" provided more than once"
 msgstr "la opción «%s» fue especificada más de una vez"
 
-#: commands/foreigncmds.c:224 commands/foreigncmds.c:232
+#: commands/foreigncmds.c:221 commands/foreigncmds.c:229
 #, c-format
 msgid "permission denied to change owner of foreign-data wrapper \"%s\""
 msgstr "se ha denegado el permiso para cambiar el dueño del conector de datos externos «%s»"
 
-#: commands/foreigncmds.c:226
+#: commands/foreigncmds.c:223
 #, c-format
 msgid "Must be superuser to change owner of a foreign-data wrapper."
 msgstr "Debe ser superusuario para cambiar el dueño de un conector de datos externos."
 
-#: commands/foreigncmds.c:234
+#: commands/foreigncmds.c:231
 #, c-format
 msgid "The owner of a foreign-data wrapper must be a superuser."
 msgstr "El dueño de un conector de datos externos debe ser un superusuario."
 
-#: commands/foreigncmds.c:294 commands/foreigncmds.c:715 foreign/foreign.c:701
+#: commands/foreigncmds.c:291 commands/foreigncmds.c:711 foreign/foreign.c:701
 #, c-format
 msgid "foreign-data wrapper \"%s\" does not exist"
 msgstr "no existe el conector de datos externos «%s»"
 
-#: commands/foreigncmds.c:588
+#: commands/foreigncmds.c:584
 #, c-format
 msgid "permission denied to create foreign-data wrapper \"%s\""
 msgstr "se ha denegado el permiso para crear el conector de datos externos «%s»"
 
-#: commands/foreigncmds.c:590
+#: commands/foreigncmds.c:586
 #, c-format
 msgid "Must be superuser to create a foreign-data wrapper."
 msgstr "Debe ser superusuario para crear un conector de datos externos."
 
-#: commands/foreigncmds.c:705
+#: commands/foreigncmds.c:701
 #, c-format
 msgid "permission denied to alter foreign-data wrapper \"%s\""
 msgstr "se ha denegado el permiso para cambiar el conector de datos externos «%s»"
 
-#: commands/foreigncmds.c:707
+#: commands/foreigncmds.c:703
 #, c-format
 msgid "Must be superuser to alter a foreign-data wrapper."
 msgstr "Debe ser superusuario para alterar un conector de datos externos."
 
-#: commands/foreigncmds.c:738
+#: commands/foreigncmds.c:734
 #, c-format
 msgid "changing the foreign-data wrapper handler can change behavior of existing foreign tables"
 msgstr "al cambiar el manejador del conector de datos externos, el comportamiento de las tablas foráneas existentes puede cambiar"
 
-#: commands/foreigncmds.c:753
+#: commands/foreigncmds.c:749
 #, c-format
 msgid "changing the foreign-data wrapper validator can cause the options for dependent objects to become invalid"
 msgstr "al cambiar el validador del conector de datos externos, las opciones para los objetos dependientes de él pueden volverse no válidas"
 
-#: commands/foreigncmds.c:899
+#: commands/foreigncmds.c:895
 #, c-format
 msgid "server \"%s\" already exists, skipping"
 msgstr "el servidor «%s» ya existe, omitiendo"
 
-#: commands/foreigncmds.c:1187
+#: commands/foreigncmds.c:1183
 #, c-format
 msgid "user mapping for \"%s\" already exists for server \"%s\", skipping"
 msgstr "el mapeo de usuario «%s» ya existe para el servidor «%s», omitiendo"
 
-#: commands/foreigncmds.c:1197
+#: commands/foreigncmds.c:1193
 #, c-format
 msgid "user mapping for \"%s\" already exists for server \"%s\""
 msgstr "el mapeo de usuario «%s» ya existe para el servidor «%s»"
 
-#: commands/foreigncmds.c:1297 commands/foreigncmds.c:1414
+#: commands/foreigncmds.c:1293 commands/foreigncmds.c:1410
 #, c-format
 msgid "user mapping for \"%s\" does not exist for server \"%s\""
 msgstr "no existe el mapeo de usuario «%s» para el servidor «%s»"
 
-#: commands/foreigncmds.c:1419
+#: commands/foreigncmds.c:1415
 #, c-format
 msgid "user mapping for \"%s\" does not exist for server \"%s\", skipping"
 msgstr "no existe el mapeo de usuario «%s» para el servidor «%s», omitiendo"
 
-#: commands/foreigncmds.c:1570 foreign/foreign.c:389
+#: commands/foreigncmds.c:1566 foreign/foreign.c:389
 #, c-format
 msgid "foreign-data wrapper \"%s\" has no handler"
 msgstr "el conector de datos externos «%s» no tiene manejador"
 
-#: commands/foreigncmds.c:1576
+#: commands/foreigncmds.c:1572
 #, c-format
 msgid "foreign-data wrapper \"%s\" does not support IMPORT FOREIGN SCHEMA"
 msgstr "el conector de datos externos «%s» no soporta IMPORT FOREIGN SCHEMA"
 
-#: commands/foreigncmds.c:1679
+#: commands/foreigncmds.c:1675
 #, c-format
 msgid "importing foreign table \"%s\""
 msgstr "importando la tabla foránea «%s»"
 
-#: commands/functioncmds.c:103
+#: commands/functioncmds.c:104
 #, c-format
 msgid "SQL function cannot return shell type %s"
 msgstr "una función SQL no puede retornar el tipo inconcluso %s"
 
-#: commands/functioncmds.c:108
+#: commands/functioncmds.c:109
 #, c-format
 msgid "return type %s is only a shell"
 msgstr "el tipo de retorno %s está inconcluso"
 
-#: commands/functioncmds.c:138 parser/parse_type.c:355
+#: commands/functioncmds.c:139 parser/parse_type.c:354
 #, c-format
 msgid "type modifier cannot be specified for shell type \"%s\""
 msgstr "no se puede especificar un modificador de tipo para el tipo inconcluso «%s»"
 
-#: commands/functioncmds.c:144
+#: commands/functioncmds.c:145
 #, c-format
 msgid "type \"%s\" is not yet defined"
 msgstr "el tipo «%s» no ha sido definido aún"
 
-#: commands/functioncmds.c:145
+#: commands/functioncmds.c:146
 #, c-format
 msgid "Creating a shell type definition."
 msgstr "Creando una definición de tipo inconclusa."
 
-#: commands/functioncmds.c:237
+#: commands/functioncmds.c:238
 #, c-format
 msgid "SQL function cannot accept shell type %s"
 msgstr "las funciones SQL no pueden aceptar el tipo inconcluso %s"
 
-#: commands/functioncmds.c:243
+#: commands/functioncmds.c:244
 #, c-format
 msgid "aggregate cannot accept shell type %s"
 msgstr "las funciones de agregación no pueden aceptar el tipo inconcluso %s"
 
-#: commands/functioncmds.c:248
+#: commands/functioncmds.c:249
 #, c-format
 msgid "argument type %s is only a shell"
 msgstr "el tipo de argumento %s está inconcluso"
 
-#: commands/functioncmds.c:258
+#: commands/functioncmds.c:259
 #, c-format
 msgid "type %s does not exist"
 msgstr "no existe el tipo %s"
 
-#: commands/functioncmds.c:272
+#: commands/functioncmds.c:273
 #, c-format
 msgid "aggregates cannot accept set arguments"
 msgstr "las funciones de agregación no pueden aceptar argumentos de conjunto"
 
-#: commands/functioncmds.c:276
+#: commands/functioncmds.c:277
 #, c-format
 msgid "procedures cannot accept set arguments"
 msgstr "los procedimientos no pueden aceptar argumentos de conjunto"
 
-#: commands/functioncmds.c:280
+#: commands/functioncmds.c:281
 #, c-format
 msgid "functions cannot accept set arguments"
 msgstr "funciones no pueden aceptar argumentos de conjunto"
 
-#: commands/functioncmds.c:288
+#: commands/functioncmds.c:289
 #, c-format
 msgid "procedures cannot have OUT arguments"
 msgstr "los procedimientos no pueden tener argumentos OUT"
 
-#: commands/functioncmds.c:289
+#: commands/functioncmds.c:290
 #, c-format
 msgid "INOUT arguments are permitted."
 msgstr "Argumentos INOUT están permitidos."
 
-#: commands/functioncmds.c:299
+#: commands/functioncmds.c:300
 #, c-format
 msgid "VARIADIC parameter must be the last input parameter"
 msgstr "el parámetro VARIADIC debe ser el último parámetro de entrada"
 
-#: commands/functioncmds.c:329
+#: commands/functioncmds.c:331
 #, c-format
 msgid "VARIADIC parameter must be an array"
 msgstr "el parámetro VARIADIC debe ser un array"
 
-#: commands/functioncmds.c:369
+#: commands/functioncmds.c:371
 #, c-format
 msgid "parameter name \"%s\" used more than once"
 msgstr "nombre de parámetro «%s» usado más de una vez"
 
-#: commands/functioncmds.c:384
+#: commands/functioncmds.c:386
 #, c-format
 msgid "only input parameters can have default values"
 msgstr "solo los parámetros de entrada pueden tener valores por omisión"
 
-#: commands/functioncmds.c:399
+#: commands/functioncmds.c:401
 #, c-format
 msgid "cannot use table references in parameter default value"
 msgstr "no se pueden usar referencias a tablas en el valor por omisión de un parámetro"
 
-#: commands/functioncmds.c:423
+#: commands/functioncmds.c:425
 #, c-format
 msgid "input parameters after one with a default value must also have defaults"
 msgstr "los parámetros de entrada después de uno que tenga valor por omisión también deben tener valores por omisión"
 
-#: commands/functioncmds.c:575 commands/functioncmds.c:766
+#: commands/functioncmds.c:577 commands/functioncmds.c:768
 #, c-format
 msgid "invalid attribute in procedure definition"
 msgstr "atributo no válido en definición de procedimiento"
 
-#: commands/functioncmds.c:671
+#: commands/functioncmds.c:673
 #, c-format
 msgid "support function %s must return type %s"
 msgstr "la función de soporte %s debe retornar el tipo %s"
 
-#: commands/functioncmds.c:682
+#: commands/functioncmds.c:684
 #, c-format
 msgid "must be superuser to specify a support function"
 msgstr "debe ser superusuario para especificar una función de soporte"
 
-#: commands/functioncmds.c:798
+#: commands/functioncmds.c:800
 #, c-format
 msgid "no function body specified"
 msgstr "no se ha especificado un cuerpo para la función"
 
-#: commands/functioncmds.c:808
+#: commands/functioncmds.c:810
 #, c-format
 msgid "no language specified"
 msgstr "no se ha especificado el lenguaje"
 
-#: commands/functioncmds.c:833 commands/functioncmds.c:1317
+#: commands/functioncmds.c:835 commands/functioncmds.c:1319
 #, c-format
 msgid "COST must be positive"
 msgstr "COST debe ser positivo"
 
-#: commands/functioncmds.c:841 commands/functioncmds.c:1325
+#: commands/functioncmds.c:843 commands/functioncmds.c:1327
 #, c-format
 msgid "ROWS must be positive"
 msgstr "ROWS debe ser positivo"
 
-#: commands/functioncmds.c:895
+#: commands/functioncmds.c:897
 #, c-format
 msgid "only one AS item needed for language \"%s\""
 msgstr "sólo se requiere un item AS para el lenguaje «%s»"
 
-#: commands/functioncmds.c:993 commands/functioncmds.c:2227
-#: commands/proclang.c:568
+#: commands/functioncmds.c:995 commands/functioncmds.c:2048
+#: commands/proclang.c:259
 #, c-format
 msgid "language \"%s\" does not exist"
 msgstr "no existe el lenguaje «%s»"
 
-#: commands/functioncmds.c:995 commands/functioncmds.c:2229
+#: commands/functioncmds.c:997 commands/functioncmds.c:2050
 #, c-format
 msgid "Use CREATE EXTENSION to load the language into the database."
 msgstr "Use CREATE EXTENSION para cargar el lenguaje en la base de datos."
 
-#: commands/functioncmds.c:1030 commands/functioncmds.c:1309
+#: commands/functioncmds.c:1032 commands/functioncmds.c:1311
 #, c-format
 msgid "only superuser can define a leakproof function"
 msgstr "sólo un superusuario puede definir funciones «leakproof»"
 
-#: commands/functioncmds.c:1079
+#: commands/functioncmds.c:1081
 #, c-format
 msgid "function result type must be %s because of OUT parameters"
 msgstr "tipo de retorno de función debe ser %s debido a los parámetros OUT"
 
-#: commands/functioncmds.c:1092
+#: commands/functioncmds.c:1094
 #, c-format
 msgid "function result type must be specified"
 msgstr "el tipo de retorno de la función debe ser especificado"
 
-#: commands/functioncmds.c:1144 commands/functioncmds.c:1329
+#: commands/functioncmds.c:1146 commands/functioncmds.c:1331
 #, c-format
 msgid "ROWS is not applicable when function does not return a set"
 msgstr "ROWS no es aplicable cuando una función no retorna un conjunto"
 
-#: commands/functioncmds.c:1521
+#: commands/functioncmds.c:1431
 #, c-format
 msgid "source data type %s is a pseudo-type"
 msgstr "el tipo de origen %s es un pseudotipo"
 
-#: commands/functioncmds.c:1527
+#: commands/functioncmds.c:1437
 #, c-format
 msgid "target data type %s is a pseudo-type"
 msgstr "el tipo de retorno %s es un pseudotipo"
 
-#: commands/functioncmds.c:1551
+#: commands/functioncmds.c:1461
 #, c-format
 msgid "cast will be ignored because the source data type is a domain"
 msgstr "el cast será ignorado porque el tipo de datos de origen es un dominio"
 
-#: commands/functioncmds.c:1556
+#: commands/functioncmds.c:1466
 #, c-format
 msgid "cast will be ignored because the target data type is a domain"
 msgstr "el cast será ignorado porque el tipo de datos de destino es un dominio"
 
-#: commands/functioncmds.c:1581
+#: commands/functioncmds.c:1491
 #, c-format
 msgid "cast function must take one to three arguments"
 msgstr "la función de conversión lleva de uno a tres argumentos"
 
-#: commands/functioncmds.c:1585
+#: commands/functioncmds.c:1495
 #, c-format
 msgid "argument of cast function must match or be binary-coercible from source data type"
 msgstr "el argumento de la función de conversión debe coincidir o ser binario-convertible con el tipo de origen"
 
-#: commands/functioncmds.c:1589
+#: commands/functioncmds.c:1499
 #, c-format
 msgid "second argument of cast function must be type %s"
 msgstr "el segundo argumento de la función de conversión debe ser de tipo %s"
 
-#: commands/functioncmds.c:1594
+#: commands/functioncmds.c:1504
 #, c-format
 msgid "third argument of cast function must be type %s"
 msgstr "el tercer argumento de la función de conversión debe ser de tipo %s"
 
-#: commands/functioncmds.c:1599
+#: commands/functioncmds.c:1509
 #, c-format
 msgid "return data type of cast function must match or be binary-coercible to target data type"
 msgstr "el tipo de salida de la función de conversión debe coincidir o ser binario-convertible con el tipo de retorno"
 
-#: commands/functioncmds.c:1610
+#: commands/functioncmds.c:1520
 #, c-format
 msgid "cast function must not be volatile"
 msgstr "la función de conversión no debe ser volatile"
 
-#: commands/functioncmds.c:1615
+#: commands/functioncmds.c:1525
 #, c-format
 msgid "cast function must be a normal function"
 msgstr "la función de conversión debe ser una función normal"
 
-#: commands/functioncmds.c:1619
+#: commands/functioncmds.c:1529
 #, c-format
 msgid "cast function must not return a set"
 msgstr "la función de conversión no debe retornar un conjunto"
 
-#: commands/functioncmds.c:1645
+#: commands/functioncmds.c:1555
 #, c-format
 msgid "must be superuser to create a cast WITHOUT FUNCTION"
 msgstr "debe ser superusuario para crear una conversión sin especificar función"
 
-#: commands/functioncmds.c:1660
+#: commands/functioncmds.c:1570
 #, c-format
 msgid "source and target data types are not physically compatible"
 msgstr "los tipos de datos de origen y destino no son físicamente compatibles"
 
-#: commands/functioncmds.c:1675
+#: commands/functioncmds.c:1585
 #, c-format
 msgid "composite data types are not binary-compatible"
 msgstr "los tipos de datos compuestos no son binario-compatibles"
 
-#: commands/functioncmds.c:1681
+#: commands/functioncmds.c:1591
 #, c-format
 msgid "enum data types are not binary-compatible"
 msgstr "los tipos de datos enum no son binario-compatibles"
 
-#: commands/functioncmds.c:1687
+#: commands/functioncmds.c:1597
 #, c-format
 msgid "array data types are not binary-compatible"
 msgstr "los tipos de datos de array no son binario-compatibles"
 
-#: commands/functioncmds.c:1704
+#: commands/functioncmds.c:1614
 #, c-format
 msgid "domain data types must not be marked binary-compatible"
 msgstr "los tipos de dato de dominio no deben ser marcados binario-compatibles"
 
-#: commands/functioncmds.c:1714
+#: commands/functioncmds.c:1624
 #, c-format
 msgid "source data type and target data type are the same"
 msgstr "el tipo de origen y el tipo de retorno son el mismo"
 
-#: commands/functioncmds.c:1747
-#, c-format
-msgid "cast from type %s to type %s already exists"
-msgstr "ya existe una conversión del tipo %s al tipo %s"
-
-#: commands/functioncmds.c:1822
-#, c-format
-msgid "cast from type %s to type %s does not exist"
-msgstr "no existe la conversión del tipo %s al tipo %s"
-
-#: commands/functioncmds.c:1861
+#: commands/functioncmds.c:1682
 #, c-format
 msgid "transform function must not be volatile"
 msgstr "la función de transformación no debe ser volatile"
 
-#: commands/functioncmds.c:1865
+#: commands/functioncmds.c:1686
 #, c-format
 msgid "transform function must be a normal function"
 msgstr "la función de transformación debe ser una función normal"
 
-#: commands/functioncmds.c:1869
+#: commands/functioncmds.c:1690
 #, c-format
 msgid "transform function must not return a set"
 msgstr "la función de transformación no debe retornar un conjunto"
 
-#: commands/functioncmds.c:1873
+#: commands/functioncmds.c:1694
 #, c-format
 msgid "transform function must take one argument"
 msgstr "la función de transformación debe recibir un argumento"
 
-#: commands/functioncmds.c:1877
+#: commands/functioncmds.c:1698
 #, c-format
 msgid "first argument of transform function must be type %s"
 msgstr "el primer argumento de la función de transformación debe ser de tipo %s"
 
-#: commands/functioncmds.c:1915
+#: commands/functioncmds.c:1736
 #, c-format
 msgid "data type %s is a pseudo-type"
 msgstr "el tipo de dato %s es un pseudo-tipo"
 
-#: commands/functioncmds.c:1921
+#: commands/functioncmds.c:1742
 #, c-format
 msgid "data type %s is a domain"
 msgstr "tipo de dato «%s» es un dominio"
 
-#: commands/functioncmds.c:1961
+#: commands/functioncmds.c:1782
 #, c-format
 msgid "return data type of FROM SQL function must be %s"
 msgstr "el tipo de dato de retorno de la función FROM SQL debe ser %s"
 
-#: commands/functioncmds.c:1987
+#: commands/functioncmds.c:1808
 #, c-format
 msgid "return data type of TO SQL function must be the transform data type"
 msgstr "el tipo de dato de retorno de la función TO SQL debe ser el tipo de dato de la transformación"
 
-#: commands/functioncmds.c:2016
+#: commands/functioncmds.c:1837
 #, c-format
 msgid "transform for type %s language \"%s\" already exists"
 msgstr "la transformación para el tipo %s lenguaje «%s» ya existe"
 
-#: commands/functioncmds.c:2108
+#: commands/functioncmds.c:1929
 #, c-format
 msgid "transform for type %s language \"%s\" does not exist"
 msgstr "la transformación para el tipo %s lenguaje «%s» no existe"
 
-#: commands/functioncmds.c:2159
+#: commands/functioncmds.c:1980
 #, c-format
 msgid "function %s already exists in schema \"%s\""
 msgstr "ya existe una función llamada %s en el esquema «%s»"
 
-#: commands/functioncmds.c:2214
+#: commands/functioncmds.c:2035
 #, c-format
 msgid "no inline code specified"
 msgstr "no se ha especificado código"
 
-#: commands/functioncmds.c:2260
+#: commands/functioncmds.c:2081
 #, c-format
 msgid "language \"%s\" does not support inline code execution"
 msgstr "el lenguaje «%s» no soporta ejecución de código en línea"
 
-#: commands/functioncmds.c:2372
+#: commands/functioncmds.c:2193
 #, c-format
 msgid "cannot pass more than %d argument to a procedure"
 msgid_plural "cannot pass more than %d arguments to a procedure"
 msgstr[0] "no se pueden pasar más de %d argumento a un procedimiento"
 msgstr[1] "no se pueden pasar más de %d argumentos a un procedimiento"
 
-#: commands/indexcmds.c:526
+#: commands/indexcmds.c:590
 #, c-format
 msgid "must specify at least one column"
 msgstr "debe especificar al menos una columna"
 
-#: commands/indexcmds.c:530
+#: commands/indexcmds.c:594
 #, c-format
 msgid "cannot use more than %d columns in an index"
 msgstr "no se puede usar más de %d columnas en un índice"
 
-#: commands/indexcmds.c:569
+#: commands/indexcmds.c:633
 #, c-format
 msgid "cannot create index on foreign table \"%s\""
 msgstr "no se puede crear un índice en la tabla foránea «%s»"
 
-#: commands/indexcmds.c:594
+#: commands/indexcmds.c:664
 #, c-format
 msgid "cannot create index on partitioned table \"%s\" concurrently"
 msgstr "no se puede crear un índice en la tabla particionada «%s» concurrentemente"
 
-#: commands/indexcmds.c:599
+#: commands/indexcmds.c:669
 #, c-format
 msgid "cannot create exclusion constraints on partitioned table \"%s\""
 msgstr "no se pueden create restricciones de exclusión en la tabla particionada «%s»"
 
-#: commands/indexcmds.c:609
+#: commands/indexcmds.c:679
 #, c-format
 msgid "cannot create indexes on temporary tables of other sessions"
 msgstr "no se pueden crear índices en tablas temporales de otras sesiones"
 
-#: commands/indexcmds.c:647 commands/tablecmds.c:676 commands/tablespace.c:1174
+#: commands/indexcmds.c:717 commands/tablecmds.c:702 commands/tablespace.c:1173
 #, c-format
 msgid "cannot specify default tablespace for partitioned relations"
 msgstr "no se puede especificar el tablespace por omisión para las relaciones particionadas"
 
-#: commands/indexcmds.c:679 commands/tablecmds.c:711 commands/tablecmds.c:12361
-#: commands/tablecmds.c:12473
+#: commands/indexcmds.c:749 commands/tablecmds.c:737 commands/tablecmds.c:13072
+#: commands/tablecmds.c:13186
 #, c-format
 msgid "only shared relations can be placed in pg_global tablespace"
 msgstr "sólo relaciones compartidas pueden ser puestas en el tablespace pg_global"
 
-#: commands/indexcmds.c:712
+#: commands/indexcmds.c:782
 #, c-format
 msgid "substituting access method \"gist\" for obsolete method \"rtree\""
 msgstr "sustituyendo el método de acceso obsoleto «rtree» por «gist»"
 
-#: commands/indexcmds.c:733
+#: commands/indexcmds.c:803
 #, c-format
 msgid "access method \"%s\" does not support unique indexes"
 msgstr "el método de acceso «%s» no soporta índices únicos"
 
-#: commands/indexcmds.c:738
+#: commands/indexcmds.c:808
 #, c-format
 msgid "access method \"%s\" does not support included columns"
 msgstr "el método de acceso «%s» no soporta columnas incluidas"
 
-#: commands/indexcmds.c:743
+#: commands/indexcmds.c:813
 #, c-format
 msgid "access method \"%s\" does not support multicolumn indexes"
 msgstr "el método de acceso «%s» no soporta índices multicolumna"
 
-#: commands/indexcmds.c:748
+#: commands/indexcmds.c:818
 #, c-format
 msgid "access method \"%s\" does not support exclusion constraints"
 msgstr "el método de acceso «%s» no soporta restricciones de exclusión"
 
-#: commands/indexcmds.c:850
+#: commands/indexcmds.c:941
+#, fuzzy, c-format
+#| msgid "cannot create partitioned table as inheritance child"
+msgid "cannot match partition key to an index using access method \"%s\""
+msgstr "no se puede crear una tabla particionada como hija de herencia"
+
+#: commands/indexcmds.c:951
 #, c-format
 msgid "unsupported %s constraint with partition key definition"
 msgstr "restricción %s no soportada con definición de llave de particionamiento"
 
-#: commands/indexcmds.c:852
+#: commands/indexcmds.c:953
 #, c-format
 msgid "%s constraints cannot be used when partition keys include expressions."
 msgstr "No se pueden usar restricciones %s cuando las llaves de particionamiento incluyen expresiones."
 
-#: commands/indexcmds.c:870
+#: commands/indexcmds.c:992
 #, c-format
 msgid "insufficient columns in %s constraint definition"
 msgstr "columnas insuficientes en definición de restricción %s"
 
-#: commands/indexcmds.c:872
+#: commands/indexcmds.c:994
 #, c-format
 msgid "%s constraint on table \"%s\" lacks column \"%s\" which is part of the partition key."
 msgstr "La restricción %s en la tabla «%s» no incluye la columna «%s» que es parte de la llave de particionamiento."
 
-#: commands/indexcmds.c:891 commands/indexcmds.c:910
+#: commands/indexcmds.c:1013 commands/indexcmds.c:1032
 #, c-format
 msgid "index creation on system columns is not supported"
 msgstr "la creación de índices en columnas de sistema no está soportada"
 
-#: commands/indexcmds.c:935
+#: commands/indexcmds.c:1057
 #, c-format
 msgid "%s %s will create implicit index \"%s\" for table \"%s\""
 msgstr "%s %s creará el índice implícito «%s» para la tabla «%s»"
 
-#: commands/indexcmds.c:1077 tcop/utility.c:1359
+#: commands/indexcmds.c:1198 tcop/utility.c:1461
 #, c-format
 msgid "cannot create unique index on partitioned table \"%s\""
 msgstr "no se puede crear un índice único en la tabla particionada «%s»"
 
-#: commands/indexcmds.c:1079 tcop/utility.c:1361
+#: commands/indexcmds.c:1200 tcop/utility.c:1463
 #, c-format
 msgid "Table \"%s\" contains partitions that are foreign tables."
 msgstr "La tabla «%s» contiene particiones que son tablas foráneas."
 
-#: commands/indexcmds.c:1508
+#: commands/indexcmds.c:1629
 #, c-format
 msgid "functions in index predicate must be marked IMMUTABLE"
 msgstr "las funciones utilizadas en predicados de índice deben estar marcadas IMMUTABLE"
 
-#: commands/indexcmds.c:1574 parser/parse_utilcmd.c:2307
-#: parser/parse_utilcmd.c:2441
+#: commands/indexcmds.c:1695 parser/parse_utilcmd.c:2352
+#: parser/parse_utilcmd.c:2487
 #, c-format
 msgid "column \"%s\" named in key does not exist"
 msgstr "no existe la columna «%s» en la llave"
 
-#: commands/indexcmds.c:1598 parser/parse_utilcmd.c:1633
+#: commands/indexcmds.c:1719 parser/parse_utilcmd.c:1670
 #, c-format
 msgid "expressions are not supported in included columns"
 msgstr "las expresiones no están soportadas en columnas incluidas"
 
-#: commands/indexcmds.c:1639
+#: commands/indexcmds.c:1760
 #, c-format
 msgid "functions in index expression must be marked IMMUTABLE"
 msgstr "las funciones utilizadas en expresiones de índice deben estar marcadas IMMUTABLE"
 
-#: commands/indexcmds.c:1654
+#: commands/indexcmds.c:1775
 #, c-format
 msgid "including column does not support a collation"
 msgstr "la columna incluida no permite un ordenamiento (collation)"
 
-#: commands/indexcmds.c:1658
+#: commands/indexcmds.c:1779
 #, c-format
 msgid "including column does not support an operator class"
 msgstr "la columna incluida no permite una clase de operadores"
 
-#: commands/indexcmds.c:1662
+#: commands/indexcmds.c:1783
 #, c-format
 msgid "including column does not support ASC/DESC options"
 msgstr "la columna incluida no permite las opciones ASC/DESC"
 
-#: commands/indexcmds.c:1666
+#: commands/indexcmds.c:1787
 #, c-format
 msgid "including column does not support NULLS FIRST/LAST options"
 msgstr "la columna incluida no permite las opciones NULLS FIRST/LAST"
 
-#: commands/indexcmds.c:1693
+#: commands/indexcmds.c:1814
 #, c-format
 msgid "could not determine which collation to use for index expression"
 msgstr "no se pudo determinar qué ordenamiento (collation) usar para la expresión de índice"
 
-#: commands/indexcmds.c:1701 commands/tablecmds.c:15244 commands/typecmds.c:837
-#: parser/parse_expr.c:2854 parser/parse_type.c:567 parser/parse_utilcmd.c:3514
-#: utils/adt/misc.c:490
+#: commands/indexcmds.c:1822 commands/tablecmds.c:15952 commands/typecmds.c:770
+#: parser/parse_expr.c:2850 parser/parse_type.c:566 parser/parse_utilcmd.c:3562
+#: parser/parse_utilcmd.c:4123 utils/adt/misc.c:502
 #, c-format
 msgid "collations are not supported by type %s"
 msgstr "los ordenamientos (collation) no están soportados por el tipo %s"
 
-#: commands/indexcmds.c:1739
+#: commands/indexcmds.c:1860
 #, c-format
 msgid "operator %s is not commutative"
 msgstr "el operador %s no es conmutativo"
 
-#: commands/indexcmds.c:1741
+#: commands/indexcmds.c:1862
 #, c-format
 msgid "Only commutative operators can be used in exclusion constraints."
 msgstr "Sólo operadores conmutativos pueden ser usados en restricciones de exclusión."
 
-#: commands/indexcmds.c:1767
+#: commands/indexcmds.c:1888
 #, c-format
 msgid "operator %s is not a member of operator family \"%s\""
 msgstr "el operador %s no es un miembro de la familia de operadores «%s»"
 
-#: commands/indexcmds.c:1770
+#: commands/indexcmds.c:1891
 #, c-format
 msgid "The exclusion operator must be related to the index operator class for the constraint."
 msgstr "El operador de exclusión debe estar relacionado con la clase de operadores del índice para la restricción."
 
-#: commands/indexcmds.c:1805
+#: commands/indexcmds.c:1926
 #, c-format
 msgid "access method \"%s\" does not support ASC/DESC options"
 msgstr "el método de acceso «%s» no soporta las opciones ASC/DESC"
 
-#: commands/indexcmds.c:1810
+#: commands/indexcmds.c:1931
 #, c-format
 msgid "access method \"%s\" does not support NULLS FIRST/LAST options"
 msgstr "el método de acceso «%s» no soporta las opciones NULLS FIRST/LAST"
 
-#: commands/indexcmds.c:1870 commands/tablecmds.c:15269
-#: commands/tablecmds.c:15275 commands/typecmds.c:1981
+#: commands/indexcmds.c:1977 commands/tablecmds.c:15977
+#: commands/tablecmds.c:15983 commands/typecmds.c:1922
 #, c-format
 msgid "data type %s has no default operator class for access method \"%s\""
 msgstr "el tipo de dato %s no tiene una clase de operadores por omisión para el método de acceso «%s»"
 
-#: commands/indexcmds.c:1872
+#: commands/indexcmds.c:1979
 #, c-format
 msgid "You must specify an operator class for the index or define a default operator class for the data type."
 msgstr "Debe especificar una clase de operadores para el índice, o definir una clase de operadores por omisión para el tipo de datos."
 
-#: commands/indexcmds.c:1901 commands/indexcmds.c:1909
+#: commands/indexcmds.c:2008 commands/indexcmds.c:2016
 #: commands/opclasscmds.c:208
 #, c-format
 msgid "operator class \"%s\" does not exist for access method \"%s\""
 msgstr "no existe la clase de operadores «%s» para el método de acceso «%s»"
 
-#: commands/indexcmds.c:1923 commands/typecmds.c:1969
+#: commands/indexcmds.c:2030 commands/typecmds.c:1910
 #, c-format
 msgid "operator class \"%s\" does not accept data type %s"
 msgstr "la clase de operadores «%s» no acepta el tipo de datos %s"
 
-#: commands/indexcmds.c:2013
+#: commands/indexcmds.c:2120
 #, c-format
 msgid "there are multiple default operator classes for data type %s"
 msgstr "hay múltiples clases de operadores por omisión para el tipo de datos %s"
 
-#: commands/indexcmds.c:2450
+#: commands/indexcmds.c:2569
 #, c-format
 msgid "table \"%s\" has no indexes that can be reindexed concurrently"
 msgstr "la tabla «%s» no tiene índices que puedan ser reindexados concurrentemente"
 
-#: commands/indexcmds.c:2461
+#: commands/indexcmds.c:2580
 #, c-format
 msgid "table \"%s\" has no indexes to reindex"
 msgstr "la tabla «%s» no tiene índices para reindexar"
 
-#: commands/indexcmds.c:2500 commands/indexcmds.c:2768
-#: commands/indexcmds.c:2861
+#: commands/indexcmds.c:2619 commands/indexcmds.c:2893
+#: commands/indexcmds.c:2986
 #, c-format
 msgid "cannot reindex system catalogs concurrently"
 msgstr "no se pueden reindexar catálogos de sistema concurrentemente"
 
-#: commands/indexcmds.c:2523
+#: commands/indexcmds.c:2642
 #, c-format
 msgid "can only reindex the currently open database"
 msgstr "sólo se puede reindexar la base de datos actualmente abierta"
 
-#: commands/indexcmds.c:2614
+#: commands/indexcmds.c:2733
 #, c-format
 msgid "cannot reindex system catalogs concurrently, skipping all"
 msgstr "no se puede reindexar un catálogo de sistema concurrentemente, omitiéndolos todos"
 
-#: commands/indexcmds.c:2666 commands/indexcmds.c:3303
+#: commands/indexcmds.c:2785 commands/indexcmds.c:3466
 #, c-format
 msgid "table \"%s.%s\" was reindexed"
 msgstr "la tabla «%s.%s» fue reindexada"
 
-#: commands/indexcmds.c:2783 commands/indexcmds.c:2829
+#: commands/indexcmds.c:2908 commands/indexcmds.c:2954
 #, c-format
 msgid "cannot reindex invalid index \"%s.%s\" concurrently, skipping"
 msgstr "no se puede reindexar el índice no válido «%s.%s» concurrentemente, omitiendo"
 
-#: commands/indexcmds.c:2789
+#: commands/indexcmds.c:2914
 #, c-format
 msgid "cannot reindex exclusion constraint index \"%s.%s\" concurrently, skipping"
 msgstr "no se puede reindexar el índice de restricción de exclusión «%s.%s» concurrentemente, omitiendo"
 
-#: commands/indexcmds.c:2889
+#: commands/indexcmds.c:2996
+#, fuzzy, c-format
+#| msgid "cannot reindex invalid index \"%s.%s\" concurrently, skipping"
+msgid "cannot reindex invalid index on TOAST table concurrently"
+msgstr "no se puede reindexar el índice no válido «%s.%s» concurrentemente, omitiendo"
+
+#: commands/indexcmds.c:3024
 #, c-format
 msgid "cannot reindex this type of relation concurrently"
 msgstr "no se puede reindexar este tipo de relación concurrentemente"
 
-#: commands/indexcmds.c:3285 commands/indexcmds.c:3296
+#: commands/indexcmds.c:3448 commands/indexcmds.c:3459
 #, c-format
 msgid "index \"%s.%s\" was reindexed"
 msgstr "el índice «%s.%s» fue reindexado"
 
-#: commands/indexcmds.c:3328
+#: commands/indexcmds.c:3491
 #, c-format
 msgid "REINDEX is not yet implemented for partitioned indexes"
 msgstr "REINDEX no está implementado aún para tablas particionadas"
 
-#: commands/lockcmds.c:102 commands/tablecmds.c:5176 commands/trigger.c:313
+#: commands/lockcmds.c:91 commands/tablecmds.c:5544 commands/trigger.c:295
 #: rewrite/rewriteDefine.c:271 rewrite/rewriteDefine.c:928
 #, c-format
 msgid "\"%s\" is not a table or view"
 msgstr "«%s» no es una tabla o vista"
 
-#: commands/lockcmds.c:235 rewrite/rewriteHandler.c:1974
-#: rewrite/rewriteHandler.c:3707
+#: commands/lockcmds.c:213 rewrite/rewriteHandler.c:1977
+#: rewrite/rewriteHandler.c:3782
 #, c-format
 msgid "infinite recursion detected in rules for relation \"%s\""
 msgstr "se detectó recursión infinita en las reglas de la relación «%s»"
@@ -7857,12 +8114,12 @@ msgstr "no se puede refrescar la vista materializada «%s» concurrentemente"
 msgid "Create a unique index with no WHERE clause on one or more columns of the materialized view."
 msgstr "Cree un índice único sin cláusula WHERE en una o más columnas de la vista materializada."
 
-#: commands/matview.c:645
+#: commands/matview.c:641
 #, c-format
 msgid "new data for materialized view \"%s\" contains duplicate rows without any null columns"
 msgstr "nuevos datos para la vista materializada «%s» contiene filas duplicadas sin columnas nulas"
 
-#: commands/matview.c:647
+#: commands/matview.c:643
 #, c-format
 msgid "Row: %s"
 msgstr "Fila: %s"
@@ -7877,225 +8134,265 @@ msgstr "no existe la familia de operadores «%s» para el método de acceso «%s
 msgid "operator family \"%s\" for access method \"%s\" already exists"
 msgstr "ya exista una familia de operadores «%s» para el método de acceso «%s»"
 
-#: commands/opclasscmds.c:412
+#: commands/opclasscmds.c:414
 #, c-format
 msgid "must be superuser to create an operator class"
 msgstr "debe ser superusuario para crear una clase de operadores"
 
-#: commands/opclasscmds.c:485 commands/opclasscmds.c:864
-#: commands/opclasscmds.c:988
+#: commands/opclasscmds.c:487 commands/opclasscmds.c:869
+#: commands/opclasscmds.c:993
 #, c-format
 msgid "invalid operator number %d, must be between 1 and %d"
 msgstr "el número de operador %d es incorrecto, debe estar entre 1 y %d"
 
-#: commands/opclasscmds.c:529 commands/opclasscmds.c:908
-#: commands/opclasscmds.c:1003
+#: commands/opclasscmds.c:531 commands/opclasscmds.c:913
+#: commands/opclasscmds.c:1008
 #, c-format
 msgid "invalid function number %d, must be between 1 and %d"
 msgstr "número de función %d no válido, debe estar entre 1 y %d"
 
-#: commands/opclasscmds.c:558
+#: commands/opclasscmds.c:559
 #, c-format
 msgid "storage type specified more than once"
 msgstr "el tipo de almacenamiento fue especificado más de una vez"
 
-#: commands/opclasscmds.c:585
+#: commands/opclasscmds.c:586
 #, c-format
 msgid "storage type cannot be different from data type for access method \"%s\""
 msgstr "el tipo de almacenamiento no puede ser diferente del tipo de dato para el método de acceso «%s»"
 
-#: commands/opclasscmds.c:601
+#: commands/opclasscmds.c:602
 #, c-format
 msgid "operator class \"%s\" for access method \"%s\" already exists"
 msgstr "ya exista una clase de operadores «%s» para el método de acceso «%s»"
 
-#: commands/opclasscmds.c:629
+#: commands/opclasscmds.c:630
 #, c-format
 msgid "could not make operator class \"%s\" be default for type %s"
 msgstr "no se pudo hacer que «%s» sea la clase de operadores por omisión para el tipo %s"
 
-#: commands/opclasscmds.c:632
+#: commands/opclasscmds.c:633
 #, c-format
 msgid "Operator class \"%s\" already is the default."
 msgstr "Actualmente, «%s» es la clase de operadores por omisión."
 
-#: commands/opclasscmds.c:760
+#: commands/opclasscmds.c:761
 #, c-format
 msgid "must be superuser to create an operator family"
 msgstr "debe ser superusuario para crear una familia de operadores"
 
-#: commands/opclasscmds.c:818
+#: commands/opclasscmds.c:821
 #, c-format
 msgid "must be superuser to alter an operator family"
 msgstr "debe ser superusuario para alterar una familia de operadores"
 
-#: commands/opclasscmds.c:873
+#: commands/opclasscmds.c:878
 #, c-format
 msgid "operator argument types must be specified in ALTER OPERATOR FAMILY"
 msgstr "los tipos de los argumentos de operador deben ser especificados en ALTER OPERATOR FAMILY"
 
-#: commands/opclasscmds.c:936
+#: commands/opclasscmds.c:941
 #, c-format
 msgid "STORAGE cannot be specified in ALTER OPERATOR FAMILY"
 msgstr "STORAGE no puede ser especificado en ALTER OPERATOR FAMILY"
 
-#: commands/opclasscmds.c:1058
+#: commands/opclasscmds.c:1063
 #, c-format
 msgid "one or two argument types must be specified"
 msgstr "uno o dos tipos de argumento debe/n ser especificado"
 
-#: commands/opclasscmds.c:1084
+#: commands/opclasscmds.c:1089
 #, c-format
 msgid "index operators must be binary"
 msgstr "los operadores de índice deben ser binarios"
 
-#: commands/opclasscmds.c:1103
+#: commands/opclasscmds.c:1108
 #, c-format
 msgid "access method \"%s\" does not support ordering operators"
 msgstr "el método de acceso «%s» no soporta operadores de ordenamiento"
 
-#: commands/opclasscmds.c:1114
+#: commands/opclasscmds.c:1119
 #, c-format
 msgid "index search operators must return boolean"
 msgstr "los operadores de búsqueda en índices deben retornar boolean"
 
-#: commands/opclasscmds.c:1158
+#: commands/opclasscmds.c:1159
+#, c-format
+msgid "associated data types for opclass options parsing functions must match opclass input type"
+msgstr ""
+
+#: commands/opclasscmds.c:1166
+#, fuzzy, c-format
+#| msgid "strictness of aggregate's forward and inverse transition functions must match"
+msgid "left and right associated data types for opclass options parsing functions must match"
+msgstr "la opción «strict» de las funciones de transición directa e inversa deben coincidir exactamente en la función de agregación"
+
+#: commands/opclasscmds.c:1174
+#, fuzzy, c-format
+#| msgid "invalid XML processing instruction"
+msgid "invalid opclass options parsing function"
+msgstr "instrucción de procesamiento XML no válida"
+
+#: commands/opclasscmds.c:1175
+#, c-format
+msgid "Valid signature of opclass options parsing function is '%s'."
+msgstr ""
+
+#: commands/opclasscmds.c:1194
 #, c-format
 msgid "btree comparison functions must have two arguments"
 msgstr "las funciones de comparación btree deben tener dos argumentos"
 
-#: commands/opclasscmds.c:1162
+#: commands/opclasscmds.c:1198
 #, c-format
 msgid "btree comparison functions must return integer"
 msgstr "las funciones de comparación btree deben retornar entero"
 
-#: commands/opclasscmds.c:1179
+#: commands/opclasscmds.c:1215
 #, c-format
 msgid "btree sort support functions must accept type \"internal\""
 msgstr "las funciones btree de soporte de ordenamiento deben aceptar tipo «internal»"
 
-#: commands/opclasscmds.c:1183
+#: commands/opclasscmds.c:1219
 #, c-format
 msgid "btree sort support functions must return void"
 msgstr "las funciones btree de soporte de ordenamiento deben retornar void"
 
-#: commands/opclasscmds.c:1194
+#: commands/opclasscmds.c:1230
 #, c-format
 msgid "btree in_range functions must have five arguments"
 msgstr "las funciones btree in_range deben tener cinco argumentos"
 
-#: commands/opclasscmds.c:1198
+#: commands/opclasscmds.c:1234
 #, c-format
 msgid "btree in_range functions must return boolean"
 msgstr "las funciones btree in_range deben retornar booleano"
 
-#: commands/opclasscmds.c:1217
+#: commands/opclasscmds.c:1250
+#, fuzzy, c-format
+#| msgid "btree in_range functions must have five arguments"
+msgid "btree equal image functions must have one argument"
+msgstr "las funciones btree in_range deben tener cinco argumentos"
+
+#: commands/opclasscmds.c:1254
+#, fuzzy, c-format
+#| msgid "btree in_range functions must return boolean"
+msgid "btree equal image functions must return boolean"
+msgstr "las funciones btree in_range deben retornar booleano"
+
+#: commands/opclasscmds.c:1267
+#, fuzzy, c-format
+#| msgid "btree in_range functions must return boolean"
+msgid "btree equal image functions must not be cross-type"
+msgstr "las funciones btree in_range deben retornar booleano"
+
+#: commands/opclasscmds.c:1277
 #, c-format
 msgid "hash function 1 must have one argument"
 msgstr "la función de hash 1 debe tener un argumento"
 
-#: commands/opclasscmds.c:1221
+#: commands/opclasscmds.c:1281
 #, c-format
 msgid "hash function 1 must return integer"
 msgstr "la función de hash 1 debe retornar integer"
 
-#: commands/opclasscmds.c:1228
+#: commands/opclasscmds.c:1288
 #, c-format
 msgid "hash function 2 must have two arguments"
 msgstr "la función de hash 2 debe tener dos argumentos"
 
-#: commands/opclasscmds.c:1232
+#: commands/opclasscmds.c:1292
 #, c-format
 msgid "hash function 2 must return bigint"
 msgstr "la función de hash 2 debe retornar bigint"
 
-#: commands/opclasscmds.c:1257
+#: commands/opclasscmds.c:1317
 #, c-format
 msgid "associated data types must be specified for index support function"
 msgstr "los tipos de datos asociados deben ser especificados para una función de soporte de índice"
 
-#: commands/opclasscmds.c:1282
+#: commands/opclasscmds.c:1342
 #, c-format
 msgid "function number %d for (%s,%s) appears more than once"
 msgstr "la función número %d para (%s,%s) aparece más de una vez"
 
-#: commands/opclasscmds.c:1289
+#: commands/opclasscmds.c:1349
 #, c-format
 msgid "operator number %d for (%s,%s) appears more than once"
 msgstr "el número de operador %d para (%s,%s) aparece más de una vez"
 
-#: commands/opclasscmds.c:1338
+#: commands/opclasscmds.c:1398
 #, c-format
 msgid "operator %d(%s,%s) already exists in operator family \"%s\""
 msgstr "ya existe un operador %d(%s,%s) en la familia de operadores «%s»"
 
-#: commands/opclasscmds.c:1455
+#: commands/opclasscmds.c:1515
 #, c-format
 msgid "function %d(%s,%s) already exists in operator family \"%s\""
 msgstr "ya existe una función %d(%s,%s) en la familia de operador «%s»"
 
-#: commands/opclasscmds.c:1546
+#: commands/opclasscmds.c:1606
 #, c-format
 msgid "operator %d(%s,%s) does not exist in operator family \"%s\""
 msgstr "no existe el operador %d(%s,%s) en la familia de operadores «%s»"
 
-#: commands/opclasscmds.c:1586
+#: commands/opclasscmds.c:1646
 #, c-format
 msgid "function %d(%s,%s) does not exist in operator family \"%s\""
 msgstr "no existe la función %d(%s,%s) en la familia de operadores «%s»"
 
-#: commands/opclasscmds.c:1716
+#: commands/opclasscmds.c:1776
 #, c-format
 msgid "operator class \"%s\" for access method \"%s\" already exists in schema \"%s\""
 msgstr "ya existe una clase de operadores «%s» para el método de acceso «%s» en el esquema «%s»"
 
-#: commands/opclasscmds.c:1739
+#: commands/opclasscmds.c:1799
 #, c-format
 msgid "operator family \"%s\" for access method \"%s\" already exists in schema \"%s\""
 msgstr "ya existe una familia de operadores «%s» para el método de acceso «%s» en el esquema «%s»"
 
-#: commands/operatorcmds.c:113 commands/operatorcmds.c:121
+#: commands/operatorcmds.c:111 commands/operatorcmds.c:119
 #, c-format
 msgid "SETOF type not allowed for operator argument"
 msgstr "no se permite un tipo SETOF en los argumentos de un operador"
 
-#: commands/operatorcmds.c:154 commands/operatorcmds.c:457
+#: commands/operatorcmds.c:152 commands/operatorcmds.c:455
 #, c-format
 msgid "operator attribute \"%s\" not recognized"
 msgstr "el atributo de operador «%s» no es reconocido"
 
-#: commands/operatorcmds.c:165
+#: commands/operatorcmds.c:163
 #, c-format
 msgid "operator function must be specified"
 msgstr "la función del operador debe especificarse"
 
-#: commands/operatorcmds.c:176
+#: commands/operatorcmds.c:174
 #, c-format
 msgid "at least one of leftarg or rightarg must be specified"
 msgstr "debe especificar al menos uno de los argumentos izquierdo o derecho"
 
-#: commands/operatorcmds.c:280
+#: commands/operatorcmds.c:278
 #, c-format
 msgid "restriction estimator function %s must return type %s"
 msgstr "la función de estimación de restricción %s debe retornar tipo %s"
 
-#: commands/operatorcmds.c:326
+#: commands/operatorcmds.c:324
 #, c-format
 msgid "join estimator function %s must return type %s"
 msgstr "la función de estimación de join %s debe retornar tipo %s"
 
-#: commands/operatorcmds.c:451
+#: commands/operatorcmds.c:449
 #, c-format
 msgid "operator attribute \"%s\" cannot be changed"
 msgstr "el atributo de operador «%s» no puede ser cambiado"
 
 #: commands/policy.c:88 commands/policy.c:401 commands/policy.c:491
-#: commands/tablecmds.c:1451 commands/tablecmds.c:1933
-#: commands/tablecmds.c:2906 commands/tablecmds.c:5155
-#: commands/tablecmds.c:7657 commands/tablecmds.c:14843
-#: commands/tablecmds.c:14878 commands/trigger.c:319 commands/trigger.c:1544
-#: commands/trigger.c:1653 rewrite/rewriteDefine.c:277
-#: rewrite/rewriteDefine.c:933
+#: commands/tablecmds.c:1499 commands/tablecmds.c:1981
+#: commands/tablecmds.c:3021 commands/tablecmds.c:5523
+#: commands/tablecmds.c:8250 commands/tablecmds.c:15542
+#: commands/tablecmds.c:15577 commands/trigger.c:301 commands/trigger.c:1206
+#: commands/trigger.c:1315 rewrite/rewriteDefine.c:277
+#: rewrite/rewriteDefine.c:933 rewrite/rewriteRemove.c:80
 #, c-format
 msgid "permission denied: \"%s\" is a system catalog"
 msgstr "permiso denegado: «%s» es un catálogo de sistema"
@@ -8125,12 +8422,12 @@ msgstr "WITH CHECK no puede ser aplicado a SELECT o DELETE"
 msgid "only WITH CHECK expression allowed for INSERT"
 msgstr "sólo se permite una expresión WITH CHECK para INSERT"
 
-#: commands/policy.c:808 commands/policy.c:1260
+#: commands/policy.c:808 commands/policy.c:1261
 #, c-format
 msgid "policy \"%s\" for table \"%s\" already exists"
 msgstr "la política «%s» para la tabla «%s» ya existe"
 
-#: commands/policy.c:1010 commands/policy.c:1288 commands/policy.c:1359
+#: commands/policy.c:1010 commands/policy.c:1289 commands/policy.c:1360
 #, c-format
 msgid "policy \"%s\" for table \"%s\" does not exist"
 msgstr "no existe la política «%s» para la tabla «%s»"
@@ -8140,149 +8437,134 @@ msgstr "no existe la política «%s» para la tabla «%s»"
 msgid "only USING expression allowed for SELECT, DELETE"
 msgstr "sólo se permite una expresión USING para SELECT, DELETE"
 
-#: commands/portalcmds.c:58 commands/portalcmds.c:182 commands/portalcmds.c:234
+#: commands/portalcmds.c:59 commands/portalcmds.c:182 commands/portalcmds.c:233
 #, c-format
 msgid "invalid cursor name: must not be empty"
 msgstr "el nombre de cursor no es válido: no debe ser vacío"
 
-#: commands/portalcmds.c:190 commands/portalcmds.c:244
-#: executor/execCurrent.c:70 utils/adt/xml.c:2608 utils/adt/xml.c:2778
+#: commands/portalcmds.c:190 commands/portalcmds.c:243
+#: executor/execCurrent.c:70 utils/adt/xml.c:2594 utils/adt/xml.c:2764
 #, c-format
 msgid "cursor \"%s\" does not exist"
 msgstr "no existe el cursor «%s»"
 
-#: commands/prepare.c:75
+#: commands/prepare.c:76
 #, c-format
 msgid "invalid statement name: must not be empty"
 msgstr "el nombre de sentencia no es válido: no debe ser vacío"
 
-#: commands/prepare.c:141 parser/parse_param.c:304 tcop/postgres.c:1468
+#: commands/prepare.c:134 parser/parse_param.c:304 tcop/postgres.c:1498
 #, c-format
 msgid "could not determine data type of parameter $%d"
 msgstr "no se pudo determinar el tipo del parámetro $%d"
 
-#: commands/prepare.c:159
+#: commands/prepare.c:152
 #, c-format
 msgid "utility statements cannot be prepared"
 msgstr "sentencias de utilidad no pueden ser preparadas"
 
-#: commands/prepare.c:269 commands/prepare.c:274
+#: commands/prepare.c:256 commands/prepare.c:261
 #, c-format
 msgid "prepared statement is not a SELECT"
 msgstr "la sentencia preparada no es un SELECT"
 
-#: commands/prepare.c:342
+#: commands/prepare.c:328
 #, c-format
 msgid "wrong number of parameters for prepared statement \"%s\""
 msgstr "el número de parámetros es incorrecto en la sentencia preparada «%s»"
 
-#: commands/prepare.c:344
+#: commands/prepare.c:330
 #, c-format
 msgid "Expected %d parameters but got %d."
 msgstr "Se esperaban %d parámetros pero se obtuvieron %d."
 
-#: commands/prepare.c:380
+#: commands/prepare.c:363
 #, c-format
 msgid "parameter $%d of type %s cannot be coerced to the expected type %s"
 msgstr "el parámetro $%d de tipo %s no puede ser convertido al tipo esperado %s"
 
-#: commands/prepare.c:465
+#: commands/prepare.c:449
 #, c-format
 msgid "prepared statement \"%s\" already exists"
 msgstr "la sentencia preparada «%s» ya existe"
 
-#: commands/prepare.c:504
+#: commands/prepare.c:488
 #, c-format
 msgid "prepared statement \"%s\" does not exist"
 msgstr "no existe la sentencia preparada «%s»"
 
-#: commands/proclang.c:85
-#, c-format
-msgid "using pg_pltemplate information instead of CREATE LANGUAGE parameters"
-msgstr "usando información de pg_pltemplate en vez de los parámetros de CREATE LANGUAGE"
-
-#: commands/proclang.c:95
-#, c-format
-msgid "must be superuser to create procedural language \"%s\""
-msgstr "debe ser superusuario para crear el lenguaje procedural «%s»"
-
-#: commands/proclang.c:250
-#, c-format
-msgid "unsupported language \"%s\""
-msgstr "lenguaje no soportado: «%s»"
-
-#: commands/proclang.c:252
-#, c-format
-msgid "The supported languages are listed in the pg_pltemplate system catalog."
-msgstr "Los lenguajes soportados están listados en el catálogo del sistema pg_pltemplate."
-
-#: commands/proclang.c:260
+#: commands/proclang.c:67
 #, c-format
 msgid "must be superuser to create custom procedural language"
 msgstr "debe ser superusuario para crear un lenguaje procedural personalizado"
 
-#: commands/proclang.c:279 commands/trigger.c:711 commands/typecmds.c:458
-#: commands/typecmds.c:475
-#, c-format
-msgid "changing return type of function %s from %s to %s"
-msgstr "cambiando el tipo de retorno de la función %s de %s a %s"
-
-#: commands/publicationcmds.c:108
+#: commands/publicationcmds.c:107
 #, c-format
 msgid "invalid list syntax for \"publish\" option"
 msgstr "sintaxis de entrada no válida para la opción «publish»"
 
-#: commands/publicationcmds.c:126
+#: commands/publicationcmds.c:125
 #, c-format
 msgid "unrecognized \"publish\" value: \"%s\""
 msgstr "valor de «publish» no reconocido: «%s»"
 
-#: commands/publicationcmds.c:132
+#: commands/publicationcmds.c:140
 #, c-format
 msgid "unrecognized publication parameter: \"%s\""
 msgstr "parámetro de publicación no reconocido: «%s»"
 
-#: commands/publicationcmds.c:165
+#: commands/publicationcmds.c:172
 #, c-format
 msgid "must be superuser to create FOR ALL TABLES publication"
 msgstr "debe ser superusuario para crear publicaciones FOR ALL TABLES"
 
-#: commands/publicationcmds.c:341
+#: commands/publicationcmds.c:248
+#, c-format
+msgid "wal_level is insufficient to publish logical changes"
+msgstr ""
+
+#: commands/publicationcmds.c:249
+#, fuzzy, c-format
+#| msgid "Change wal_level to be logical or higher."
+msgid "Set wal_level to logical before creating subscriptions."
+msgstr "Cambie wal_level a logical o superior."
+
+#: commands/publicationcmds.c:369
 #, c-format
 msgid "publication \"%s\" is defined as FOR ALL TABLES"
 msgstr "la publicación \"%s\" se define como FOR ALL TABLES"
 
-#: commands/publicationcmds.c:343
+#: commands/publicationcmds.c:371
 #, c-format
 msgid "Tables cannot be added to or dropped from FOR ALL TABLES publications."
 msgstr "Las tablas no se pueden agregar ni eliminar de las publicaciones FOR ALL TABLES."
 
-#: commands/publicationcmds.c:648
+#: commands/publicationcmds.c:683
 #, c-format
 msgid "relation \"%s\" is not part of the publication"
 msgstr "relación «%s» no es parte de la publicación"
 
-#: commands/publicationcmds.c:691
+#: commands/publicationcmds.c:726
 #, c-format
 msgid "permission denied to change owner of publication \"%s\""
 msgstr "se ha denegado el permiso para cambiar el dueño de la publicación «%s»"
 
-#: commands/publicationcmds.c:693
+#: commands/publicationcmds.c:728
 #, c-format
 msgid "The owner of a FOR ALL TABLES publication must be a superuser."
 msgstr "El dueño de una publicación FOR ALL TABLES debe ser un superusuario."
 
-#: commands/schemacmds.c:106 commands/schemacmds.c:282
+#: commands/schemacmds.c:105 commands/schemacmds.c:281
 #, c-format
 msgid "unacceptable schema name \"%s\""
 msgstr "el nombre de schema «%s» es inaceptable"
 
-#: commands/schemacmds.c:107 commands/schemacmds.c:283
+#: commands/schemacmds.c:106 commands/schemacmds.c:282
 #, c-format
 msgid "The prefix \"pg_\" is reserved for system schemas."
 msgstr "El prefijo «pg_» está reservado para esquemas del sistema."
 
-#: commands/schemacmds.c:121
+#: commands/schemacmds.c:120
 #, c-format
 msgid "schema \"%s\" already exists, skipping"
 msgstr "el esquema «%s» ya existe, omitiendo"
@@ -8422,2313 +8704,2399 @@ msgstr "la secuencia debe estar en el mismo esquema que la tabla a la que está
 msgid "cannot change ownership of identity sequence"
 msgstr "no se puede cambiar el dueño de la secuencia de identidad"
 
-#: commands/sequence.c:1718 commands/tablecmds.c:11745
-#: commands/tablecmds.c:14255
+#: commands/sequence.c:1718 commands/tablecmds.c:12454
+#: commands/tablecmds.c:14968
 #, c-format
 msgid "Sequence \"%s\" is linked to table \"%s\"."
 msgstr "La secuencia «%s» está enlazada a la tabla «%s»."
 
-#: commands/statscmds.c:101 commands/statscmds.c:110
+#: commands/statscmds.c:104 commands/statscmds.c:113
 #, c-format
 msgid "only a single relation is allowed in CREATE STATISTICS"
 msgstr "sólo se permite una relación en CREATE STATISTICS"
 
-#: commands/statscmds.c:128
+#: commands/statscmds.c:131
 #, c-format
 msgid "relation \"%s\" is not a table, foreign table, or materialized view"
 msgstr "la relación «%s» no es una tabla, tabla foránea o vista materializada"
 
-#: commands/statscmds.c:171
+#: commands/statscmds.c:174
 #, c-format
 msgid "statistics object \"%s\" already exists, skipping"
 msgstr "el objeto de estadísticas «%s» ya existe, omitiendo"
 
-#: commands/statscmds.c:179
+#: commands/statscmds.c:182
 #, c-format
 msgid "statistics object \"%s\" already exists"
 msgstr "el objeto de estadísticas «%s» ya existe"
 
-#: commands/statscmds.c:201 commands/statscmds.c:207
+#: commands/statscmds.c:204 commands/statscmds.c:210
 #, c-format
 msgid "only simple column references are allowed in CREATE STATISTICS"
 msgstr "sólo se permiten referencias de columnas simples en CREATE STATISTICS"
 
-#: commands/statscmds.c:222
+#: commands/statscmds.c:225
 #, c-format
 msgid "statistics creation on system columns is not supported"
 msgstr "la creación de estadísticas en columnas de sistema no está soportada"
 
-#: commands/statscmds.c:229
+#: commands/statscmds.c:232
 #, c-format
 msgid "column \"%s\" cannot be used in statistics because its type %s has no default btree operator class"
 msgstr "la columna «%s» no puede ser usado en estadísticas porque su tipo %s no tiene una clase de operadores por omisión para btree"
 
-#: commands/statscmds.c:236
+#: commands/statscmds.c:239
 #, c-format
 msgid "cannot have more than %d columns in statistics"
 msgstr "no se puede tener más de %d columnas en estadísticas"
 
-#: commands/statscmds.c:251
+#: commands/statscmds.c:254
 #, c-format
 msgid "extended statistics require at least 2 columns"
 msgstr "las estadísticas extendidas requieren al menos 2 columnas"
 
-#: commands/statscmds.c:269
+#: commands/statscmds.c:272
 #, c-format
 msgid "duplicate column name in statistics definition"
 msgstr "nombre de columna duplicado en definición de estadísticas"
 
-#: commands/statscmds.c:303
+#: commands/statscmds.c:306
 #, c-format
 msgid "unrecognized statistics kind \"%s\""
 msgstr "tipo de estadísticas «%s» no reconocido"
 
-#: commands/subscriptioncmds.c:188
+#: commands/statscmds.c:442 commands/tablecmds.c:7271
+#, c-format
+msgid "statistics target %d is too low"
+msgstr "el valor de estadísticas %d es demasiado bajo"
+
+#: commands/statscmds.c:450 commands/tablecmds.c:7279
+#, c-format
+msgid "lowering statistics target to %d"
+msgstr "bajando el valor de estadísticas a %d"
+
+#: commands/statscmds.c:473
+#, fuzzy, c-format
+#| msgid "statistics object \"%s\" does not exist, skipping"
+msgid "statistics object \"%s.%s\" does not exist, skipping"
+msgstr "no existe el objeto de estadísticas «%s», omitiendo"
+
+#: commands/subscriptioncmds.c:181
 #, c-format
 msgid "unrecognized subscription parameter: \"%s\""
 msgstr "parámetro de suscripción no reconocido: «%s»"
 
 #. translator: both %s are strings of the form "option = value"
-#: commands/subscriptioncmds.c:202 commands/subscriptioncmds.c:208
-#: commands/subscriptioncmds.c:214 commands/subscriptioncmds.c:233
-#: commands/subscriptioncmds.c:239
+#: commands/subscriptioncmds.c:195 commands/subscriptioncmds.c:201
+#: commands/subscriptioncmds.c:207 commands/subscriptioncmds.c:226
+#: commands/subscriptioncmds.c:232
 #, c-format
 msgid "%s and %s are mutually exclusive options"
 msgstr "%s y %s son opciones mutuamente excluyentes"
 
 #. translator: both %s are strings of the form "option = value"
-#: commands/subscriptioncmds.c:246 commands/subscriptioncmds.c:252
+#: commands/subscriptioncmds.c:239 commands/subscriptioncmds.c:245
 #, c-format
 msgid "subscription with %s must also set %s"
 msgstr "suscripción con %s también debe activar %s"
 
-#: commands/subscriptioncmds.c:294
+#: commands/subscriptioncmds.c:287
 #, c-format
 msgid "publication name \"%s\" used more than once"
 msgstr "nombre de publicación «%s» usado más de una vez"
 
-#: commands/subscriptioncmds.c:358
+#: commands/subscriptioncmds.c:351
 #, c-format
 msgid "must be superuser to create subscriptions"
 msgstr "debe ser superusuario para crear suscripciones"
 
-#: commands/subscriptioncmds.c:450 commands/subscriptioncmds.c:543
-#: replication/logical/tablesync.c:846 replication/logical/worker.c:1704
+#: commands/subscriptioncmds.c:442 commands/subscriptioncmds.c:530
+#: replication/logical/tablesync.c:857 replication/logical/worker.c:2085
 #, c-format
 msgid "could not connect to the publisher: %s"
 msgstr "no se pudo connectar con el editor (publisher): %s"
 
-#: commands/subscriptioncmds.c:492
+#: commands/subscriptioncmds.c:484
 #, c-format
 msgid "created replication slot \"%s\" on publisher"
 msgstr "se creó el slot de replicación «%s» en el editor (publisher)"
 
 #. translator: %s is an SQL ALTER statement
-#: commands/subscriptioncmds.c:510
+#: commands/subscriptioncmds.c:497
 #, c-format
 msgid "tables were not subscribed, you will have to run %s to subscribe the tables"
 msgstr "las tablas no se suscribieron, tendrá que ejecutar %s para suscribir las tablas"
 
-#: commands/subscriptioncmds.c:599
+#: commands/subscriptioncmds.c:586
 #, c-format
 msgid "table \"%s.%s\" added to subscription \"%s\""
 msgstr "tabla «%s.%s» agregada a suscripción «%s»"
 
-#: commands/subscriptioncmds.c:623
+#: commands/subscriptioncmds.c:610
 #, c-format
 msgid "table \"%s.%s\" removed from subscription \"%s\""
 msgstr "tabla «%s.%s» eliminada de suscripción «%s»"
 
-#: commands/subscriptioncmds.c:695
+#: commands/subscriptioncmds.c:682
 #, c-format
 msgid "cannot set %s for enabled subscription"
 msgstr "no se puede establecer %s para la suscripción activada"
 
-#: commands/subscriptioncmds.c:730
+#: commands/subscriptioncmds.c:717
 #, c-format
 msgid "cannot enable subscription that does not have a slot name"
 msgstr "no se puede habilitar la suscripción que no tiene un nombre de slot"
 
-#: commands/subscriptioncmds.c:776
+#: commands/subscriptioncmds.c:763
 #, c-format
 msgid "ALTER SUBSCRIPTION with refresh is not allowed for disabled subscriptions"
 msgstr "ALTER SUBSCRIPTION con actualización no está permitido para las suscripciones desactivadas"
 
-#: commands/subscriptioncmds.c:777
+#: commands/subscriptioncmds.c:764
 #, c-format
 msgid "Use ALTER SUBSCRIPTION ... SET PUBLICATION ... WITH (refresh = false)."
 msgstr "Use ALTER SUBSCRIPTION ... SET PUBLICATION ... WITH (refresh = false)."
 
-#: commands/subscriptioncmds.c:795
+#: commands/subscriptioncmds.c:782
 #, c-format
 msgid "ALTER SUBSCRIPTION ... REFRESH is not allowed for disabled subscriptions"
 msgstr "ALTER SUBSCRIPTION ... REFRESH no está permitido para las suscripciones desactivadas"
 
-#: commands/subscriptioncmds.c:875
+#: commands/subscriptioncmds.c:862
 #, c-format
 msgid "subscription \"%s\" does not exist, skipping"
 msgstr "no existe la suscripción «%s», omitiendo"
 
-#: commands/subscriptioncmds.c:1001
+#: commands/subscriptioncmds.c:987
 #, c-format
 msgid "could not connect to publisher when attempting to drop the replication slot \"%s\""
 msgstr "no se pudo conectar con el editor (publisher) al intentar eliminar el slot \"%s\""
 
-#: commands/subscriptioncmds.c:1003 commands/subscriptioncmds.c:1018
-#: replication/logical/tablesync.c:895 replication/logical/tablesync.c:917
+#: commands/subscriptioncmds.c:989 commands/subscriptioncmds.c:1004
+#: replication/logical/tablesync.c:906 replication/logical/tablesync.c:928
 #, c-format
 msgid "The error was: %s"
 msgstr "El error fue: %s"
 
 #. translator: %s is an SQL ALTER command
-#: commands/subscriptioncmds.c:1005
+#: commands/subscriptioncmds.c:991
 #, c-format
 msgid "Use %s to disassociate the subscription from the slot."
 msgstr "Use %s para disociar la suscripción del slot."
 
-#: commands/subscriptioncmds.c:1016
+#: commands/subscriptioncmds.c:1002
 #, c-format
 msgid "could not drop the replication slot \"%s\" on publisher"
 msgstr "no se pudo eliminar el slot de replicación «%s» en editor (publisher)"
 
-#: commands/subscriptioncmds.c:1021
+#: commands/subscriptioncmds.c:1007
 #, c-format
 msgid "dropped replication slot \"%s\" on publisher"
 msgstr "eliminando el slot de replicación «%s» en editor (publisher)"
 
-#: commands/subscriptioncmds.c:1062
+#: commands/subscriptioncmds.c:1044
 #, c-format
 msgid "permission denied to change owner of subscription \"%s\""
 msgstr "se ha denegado el permiso para cambiar el dueño de la suscripción «%s»"
 
-#: commands/subscriptioncmds.c:1064
+#: commands/subscriptioncmds.c:1046
 #, c-format
 msgid "The owner of a subscription must be a superuser."
 msgstr "El dueño de una suscripción debe ser un superusuario."
 
-#: commands/subscriptioncmds.c:1179
+#: commands/subscriptioncmds.c:1161
 #, c-format
 msgid "could not receive list of replicated tables from the publisher: %s"
 msgstr "no se pudo recibir la lista de tablas replicadas desde el editor (publisher): %s"
 
-#: commands/tablecmds.c:222 commands/tablecmds.c:264
+#: commands/tablecmds.c:228 commands/tablecmds.c:270
 #, c-format
 msgid "table \"%s\" does not exist"
 msgstr "no existe la tabla «%s»"
 
-#: commands/tablecmds.c:223 commands/tablecmds.c:265
+#: commands/tablecmds.c:229 commands/tablecmds.c:271
 #, c-format
 msgid "table \"%s\" does not exist, skipping"
 msgstr "la tabla «%s» no existe, omitiendo"
 
-#: commands/tablecmds.c:225 commands/tablecmds.c:267
+#: commands/tablecmds.c:231 commands/tablecmds.c:273
 msgid "Use DROP TABLE to remove a table."
 msgstr "Use DROP TABLE para eliminar una tabla."
 
-#: commands/tablecmds.c:228
+#: commands/tablecmds.c:234
 #, c-format
 msgid "sequence \"%s\" does not exist"
 msgstr "no existe la secuencia «%s»"
 
-#: commands/tablecmds.c:229
+#: commands/tablecmds.c:235
 #, c-format
 msgid "sequence \"%s\" does not exist, skipping"
 msgstr "la secuencia «%s» no existe, omitiendo"
 
-#: commands/tablecmds.c:231
+#: commands/tablecmds.c:237
 msgid "Use DROP SEQUENCE to remove a sequence."
 msgstr "Use DROP SEQUENCE para eliminar una secuencia."
 
-#: commands/tablecmds.c:234
+#: commands/tablecmds.c:240
 #, c-format
 msgid "view \"%s\" does not exist"
 msgstr "no existe la vista «%s»"
 
-#: commands/tablecmds.c:235
+#: commands/tablecmds.c:241
 #, c-format
 msgid "view \"%s\" does not exist, skipping"
 msgstr "la vista «%s» no existe, omitiendo"
 
-#: commands/tablecmds.c:237
+#: commands/tablecmds.c:243
 msgid "Use DROP VIEW to remove a view."
 msgstr "Use DROP VIEW para eliminar una vista."
 
-#: commands/tablecmds.c:240
+#: commands/tablecmds.c:246
 #, c-format
 msgid "materialized view \"%s\" does not exist"
 msgstr "no existe la vista materializada «%s»"
 
-#: commands/tablecmds.c:241
+#: commands/tablecmds.c:247
 #, c-format
 msgid "materialized view \"%s\" does not exist, skipping"
 msgstr "la vista materializada «%s» no existe, omitiendo"
 
-#: commands/tablecmds.c:243
+#: commands/tablecmds.c:249
 msgid "Use DROP MATERIALIZED VIEW to remove a materialized view."
 msgstr "Use DROP MATERIALIZED VIEW para eliminar una vista materializada."
 
-#: commands/tablecmds.c:246 commands/tablecmds.c:270 commands/tablecmds.c:16377
-#: parser/parse_utilcmd.c:2045
+#: commands/tablecmds.c:252 commands/tablecmds.c:276 commands/tablecmds.c:17141
+#: parser/parse_utilcmd.c:2084
 #, c-format
 msgid "index \"%s\" does not exist"
 msgstr "no existe el índice «%s»"
 
-#: commands/tablecmds.c:247 commands/tablecmds.c:271
+#: commands/tablecmds.c:253 commands/tablecmds.c:277
 #, c-format
 msgid "index \"%s\" does not exist, skipping"
 msgstr "el índice «%s» no existe, omitiendo"
 
-#: commands/tablecmds.c:249 commands/tablecmds.c:273
+#: commands/tablecmds.c:255 commands/tablecmds.c:279
 msgid "Use DROP INDEX to remove an index."
 msgstr "Use DROP INDEX para eliminar un índice."
 
-#: commands/tablecmds.c:254
+#: commands/tablecmds.c:260
 #, c-format
 msgid "\"%s\" is not a type"
 msgstr "«%s» no es un tipo"
 
-#: commands/tablecmds.c:255
+#: commands/tablecmds.c:261
 msgid "Use DROP TYPE to remove a type."
 msgstr "Use DROP TYPE para eliminar un tipo."
 
-#: commands/tablecmds.c:258 commands/tablecmds.c:11584
-#: commands/tablecmds.c:14035
+#: commands/tablecmds.c:264 commands/tablecmds.c:12293
+#: commands/tablecmds.c:14748
 #, c-format
 msgid "foreign table \"%s\" does not exist"
 msgstr "no existe la tabla foránea «%s»"
 
-#: commands/tablecmds.c:259
+#: commands/tablecmds.c:265
 #, c-format
 msgid "foreign table \"%s\" does not exist, skipping"
 msgstr "la tabla foránea «%s» no existe, omitiendo"
 
-#: commands/tablecmds.c:261
+#: commands/tablecmds.c:267
 msgid "Use DROP FOREIGN TABLE to remove a foreign table."
 msgstr "Use DROP FOREIGN TABLE para eliminar una tabla foránea."
 
-#: commands/tablecmds.c:592
+#: commands/tablecmds.c:618
 #, c-format
 msgid "ON COMMIT can only be used on temporary tables"
 msgstr "ON COMMIT sólo puede ser usado en tablas temporales"
 
-#: commands/tablecmds.c:623
+#: commands/tablecmds.c:649
 #, c-format
 msgid "cannot create temporary table within security-restricted operation"
 msgstr "no se puede crear una tabla temporal dentro una operación restringida por seguridad"
 
-#: commands/tablecmds.c:659 commands/tablecmds.c:12939
+#: commands/tablecmds.c:685 commands/tablecmds.c:13652
 #, c-format
 msgid "relation \"%s\" would be inherited from more than once"
 msgstr "se heredaría de la relación «%s» más de una vez"
 
-#: commands/tablecmds.c:833
+#: commands/tablecmds.c:866
 #, c-format
 msgid "specifying a table access method is not supported on a partitioned table"
 msgstr "especificar un método de acceso de tablas no está soportado en tablas particionadas."
 
-#: commands/tablecmds.c:929
+#: commands/tablecmds.c:962
 #, c-format
 msgid "\"%s\" is not partitioned"
 msgstr "«%s» no está particionada"
 
-#: commands/tablecmds.c:1022
+#: commands/tablecmds.c:1056
 #, c-format
 msgid "cannot partition using more than %d columns"
 msgstr "no se puede particionar usando más de %d columnas"
 
-#: commands/tablecmds.c:1078
+#: commands/tablecmds.c:1112
 #, c-format
 msgid "cannot create foreign partition of partitioned table \"%s\""
 msgstr "no se puede crear una partición foránea en la tabla particionada «%s»"
 
-#: commands/tablecmds.c:1080
+#: commands/tablecmds.c:1114
 #, c-format
 msgid "Table \"%s\" contains indexes that are unique."
 msgstr "La tabla «%s» contiene índices que son únicos."
 
-#: commands/tablecmds.c:1241
+#: commands/tablecmds.c:1277
 #, c-format
 msgid "DROP INDEX CONCURRENTLY does not support dropping multiple objects"
 msgstr "DROP INDEX CONCURRENTLY no soporta eliminar múltiples objetos"
 
-#: commands/tablecmds.c:1245
+#: commands/tablecmds.c:1281
 #, c-format
 msgid "DROP INDEX CONCURRENTLY does not support CASCADE"
 msgstr "DROP INDEX CONCURRENTLY no soporta CASCADE"
 
-#: commands/tablecmds.c:1587
+#: commands/tablecmds.c:1641
 #, c-format
 msgid "cannot truncate only a partitioned table"
 msgstr "no se puede truncar ONLY una tabla particionada"
 
-#: commands/tablecmds.c:1588
+#: commands/tablecmds.c:1642
 #, c-format
 msgid "Do not specify the ONLY keyword, or use TRUNCATE ONLY on the partitions directly."
 msgstr "No especifique la opción ONLY, o ejecute TRUNCATE ONLY en las particiones directamente."
 
-#: commands/tablecmds.c:1657
+#: commands/tablecmds.c:1711
 #, c-format
 msgid "truncate cascades to table \"%s\""
 msgstr "truncando además la tabla «%s»"
 
-#: commands/tablecmds.c:1952
+#: commands/tablecmds.c:2018
 #, c-format
 msgid "cannot truncate temporary tables of other sessions"
 msgstr "no se pueden truncar tablas temporales de otras sesiones"
 
-#: commands/tablecmds.c:2178 commands/tablecmds.c:12836
+#: commands/tablecmds.c:2242 commands/tablecmds.c:13549
 #, c-format
 msgid "cannot inherit from partitioned table \"%s\""
 msgstr "no se puede heredar de la tabla particionada «%s»"
 
-#: commands/tablecmds.c:2183
+#: commands/tablecmds.c:2247
 #, c-format
 msgid "cannot inherit from partition \"%s\""
 msgstr "no se puede heredar de la partición «%s»"
 
-#: commands/tablecmds.c:2191 parser/parse_utilcmd.c:2269
-#: parser/parse_utilcmd.c:2410
+#: commands/tablecmds.c:2255 parser/parse_utilcmd.c:2314
+#: parser/parse_utilcmd.c:2456
 #, c-format
 msgid "inherited relation \"%s\" is not a table or foreign table"
 msgstr "la relación heredada «%s» no es una tabla o tabla foránea"
 
-#: commands/tablecmds.c:2203
+#: commands/tablecmds.c:2267
 #, c-format
 msgid "cannot create a temporary relation as partition of permanent relation \"%s\""
 msgstr "no se puede crear una relación temporal como partición de la relación permanente «%s»"
 
-#: commands/tablecmds.c:2212 commands/tablecmds.c:12815
+#: commands/tablecmds.c:2276 commands/tablecmds.c:13528
 #, c-format
 msgid "cannot inherit from temporary relation \"%s\""
 msgstr "no se puede heredar de la tabla temporal «%s»"
 
-#: commands/tablecmds.c:2222 commands/tablecmds.c:12823
+#: commands/tablecmds.c:2286 commands/tablecmds.c:13536
 #, c-format
 msgid "cannot inherit from temporary relation of another session"
 msgstr "no se puede heredar de una tabla temporal de otra sesión"
 
-#: commands/tablecmds.c:2274
+#: commands/tablecmds.c:2337
 #, c-format
 msgid "merging multiple inherited definitions of column \"%s\""
 msgstr "mezclando múltiples definiciones heredadas de la columna «%s»"
 
-#: commands/tablecmds.c:2282
+#: commands/tablecmds.c:2345
 #, c-format
 msgid "inherited column \"%s\" has a type conflict"
 msgstr "columna heredada «%s» tiene conflicto de tipos"
 
-#: commands/tablecmds.c:2284 commands/tablecmds.c:2307
-#: commands/tablecmds.c:2520 commands/tablecmds.c:2550
-#: parser/parse_coerce.c:1721 parser/parse_coerce.c:1741
-#: parser/parse_coerce.c:1761 parser/parse_coerce.c:1807
-#: parser/parse_coerce.c:1846 parser/parse_param.c:218
+#: commands/tablecmds.c:2347 commands/tablecmds.c:2370
+#: commands/tablecmds.c:2583 commands/tablecmds.c:2613
+#: parser/parse_coerce.c:1935 parser/parse_coerce.c:1955
+#: parser/parse_coerce.c:1975 parser/parse_coerce.c:2030
+#: parser/parse_coerce.c:2107 parser/parse_coerce.c:2141
+#: parser/parse_param.c:218
 #, c-format
 msgid "%s versus %s"
 msgstr "%s versus %s"
 
-#: commands/tablecmds.c:2293
+#: commands/tablecmds.c:2356
 #, c-format
 msgid "inherited column \"%s\" has a collation conflict"
 msgstr "columna heredada «%s» tiene conflicto de ordenamiento (collation)"
 
-#: commands/tablecmds.c:2295 commands/tablecmds.c:2532
-#: commands/tablecmds.c:5648
+#: commands/tablecmds.c:2358 commands/tablecmds.c:2595
+#: commands/tablecmds.c:6025
 #, c-format
 msgid "\"%s\" versus \"%s\""
 msgstr "«%s» versus «%s»"
 
-#: commands/tablecmds.c:2305
+#: commands/tablecmds.c:2368
 #, c-format
 msgid "inherited column \"%s\" has a storage parameter conflict"
 msgstr "columna heredada «%s» tiene conflicto de parámetros de almacenamiento"
 
-#: commands/tablecmds.c:2321
+#: commands/tablecmds.c:2384
 #, c-format
 msgid "inherited column \"%s\" has a generation conflict"
 msgstr "columna heredada «%s» tiene conflicto de generación"
 
-#: commands/tablecmds.c:2426 commands/tablecmds.c:10487
-#: parser/parse_utilcmd.c:1065 parser/parse_utilcmd.c:1149
-#: parser/parse_utilcmd.c:1562 parser/parse_utilcmd.c:1669
+#: commands/tablecmds.c:2489 commands/tablecmds.c:11098
+#: parser/parse_utilcmd.c:1094 parser/parse_utilcmd.c:1181
+#: parser/parse_utilcmd.c:1597 parser/parse_utilcmd.c:1706
 #, c-format
 msgid "cannot convert whole-row table reference"
 msgstr "no se puede convertir una referencia a la fila completa (whole-row)"
 
-#: commands/tablecmds.c:2427 parser/parse_utilcmd.c:1150
+#: commands/tablecmds.c:2490 parser/parse_utilcmd.c:1182
 #, c-format
 msgid "Constraint \"%s\" contains a whole-row reference to table \"%s\"."
 msgstr "La restricción «%s» contiene una referencia a la fila completa (whole-row) de la tabla «%s»."
 
-#: commands/tablecmds.c:2506
+#: commands/tablecmds.c:2569
 #, c-format
 msgid "merging column \"%s\" with inherited definition"
 msgstr "mezclando la columna «%s» con la definición heredada"
 
-#: commands/tablecmds.c:2510
+#: commands/tablecmds.c:2573
 #, c-format
 msgid "moving and merging column \"%s\" with inherited definition"
 msgstr "moviendo y mezclando la columna «%s» con la definición heredada"
 
-#: commands/tablecmds.c:2511
+#: commands/tablecmds.c:2574
 #, c-format
 msgid "User-specified column moved to the position of the inherited column."
 msgstr "La columna especificada por el usuario fue movida a la posición de la columna heredada."
 
-#: commands/tablecmds.c:2518
+#: commands/tablecmds.c:2581
 #, c-format
 msgid "column \"%s\" has a type conflict"
 msgstr "la columna «%s» tiene conflicto de tipos"
 
-#: commands/tablecmds.c:2530
+#: commands/tablecmds.c:2593
 #, c-format
 msgid "column \"%s\" has a collation conflict"
 msgstr "la columna «%s» tiene conflicto de ordenamientos (collation)"
 
-#: commands/tablecmds.c:2548
+#: commands/tablecmds.c:2611
 #, c-format
 msgid "column \"%s\" has a storage parameter conflict"
 msgstr "la columna «%s» tiene conflicto de parámetros de almacenamiento"
 
-#: commands/tablecmds.c:2651
+#: commands/tablecmds.c:2639
+#, fuzzy, c-format
+#| msgid "cannot use system column \"%s\" in column generation expression"
+msgid "child column \"%s\" specifies generation expression"
+msgstr "no se puede usar la columna de sistema «%s» en una expresión de generación de columna"
+
+#: commands/tablecmds.c:2641
+#, 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:2645
+#, fuzzy, c-format
+#| msgid "column \"%s\" is a generated column"
+msgid "column \"%s\" inherits from generated column but specifies default"
+msgstr "la columna «%s» es una columna generada"
+
+#: commands/tablecmds.c:2650
+#, fuzzy, c-format
+#| msgid "column \"%s\" is a generated column"
+msgid "column \"%s\" inherits from generated column but specifies identity"
+msgstr "la columna «%s» es una columna generada"
+
+#: commands/tablecmds.c:2760
+#, fuzzy, c-format
+#| msgid "column \"%s\" inherits conflicting default values"
+msgid "column \"%s\" inherits conflicting generation expressions"
+msgstr "la columna «%s» hereda valores por omisión no coincidentes"
+
+#: commands/tablecmds.c:2765
 #, c-format
 msgid "column \"%s\" inherits conflicting default values"
 msgstr "la columna «%s» hereda valores por omisión no coincidentes"
 
-#: commands/tablecmds.c:2653
+#: commands/tablecmds.c:2767
 #, c-format
 msgid "To resolve the conflict, specify a default explicitly."
 msgstr "Para resolver el conflicto, indique explícitamente un valor por omisión."
 
-#: commands/tablecmds.c:2698
+#: commands/tablecmds.c:2813
 #, c-format
 msgid "check constraint name \"%s\" appears multiple times but with different expressions"
 msgstr "la restricción «check» «%s» aparece más de una vez con diferentes expresiones"
 
-#: commands/tablecmds.c:2875
+#: commands/tablecmds.c:2990
 #, c-format
 msgid "cannot rename column of typed table"
 msgstr "no se puede cambiar el nombre a una columna de una tabla tipada"
 
-#: commands/tablecmds.c:2894
+#: commands/tablecmds.c:3009
 #, c-format
 msgid "\"%s\" is not a table, view, materialized view, composite type, index, or foreign table"
 msgstr "«%s» no es una tabla, vista, vista materializada, tipo compuesto, índice o tabla foránea"
 
-#: commands/tablecmds.c:2988
+#: commands/tablecmds.c:3103
 #, c-format
 msgid "inherited column \"%s\" must be renamed in child tables too"
 msgstr "debe cambiar el nombre a la columna heredada «%s» en las tablas hijas también"
 
-#: commands/tablecmds.c:3020
+#: commands/tablecmds.c:3135
 #, c-format
 msgid "cannot rename system column \"%s\""
 msgstr "no se puede cambiar el nombre a la columna de sistema «%s»"
 
-#: commands/tablecmds.c:3035
+#: commands/tablecmds.c:3150
 #, c-format
 msgid "cannot rename inherited column \"%s\""
 msgstr "no se puede cambiar el nombre a la columna heredada «%s»"
 
-#: commands/tablecmds.c:3187
+#: commands/tablecmds.c:3302
 #, c-format
 msgid "inherited constraint \"%s\" must be renamed in child tables too"
 msgstr "debe cambiar el nombre a la restricción heredada «%s» en las tablas hijas también"
 
-#: commands/tablecmds.c:3194
+#: commands/tablecmds.c:3309
 #, c-format
 msgid "cannot rename inherited constraint \"%s\""
 msgstr "no se puede cambiar el nombre a la restricción heredada «%s»"
 
 #. translator: first %s is a SQL command, eg ALTER TABLE
-#: commands/tablecmds.c:3427
+#: commands/tablecmds.c:3542
 #, c-format
 msgid "cannot %s \"%s\" because it is being used by active queries in this session"
 msgstr "no se puede hacer %s en «%s» porque está siendo usada por consultas activas en esta sesión"
 
 #. translator: first %s is a SQL command, eg ALTER TABLE
-#: commands/tablecmds.c:3436
+#: commands/tablecmds.c:3551
 #, c-format
 msgid "cannot %s \"%s\" because it has pending trigger events"
 msgstr "no se puede hacer %s en «%s» porque tiene eventos de disparador pendientes"
 
-#: commands/tablecmds.c:4567
+#: commands/tablecmds.c:4174 commands/tablecmds.c:4189
+#, fuzzy, c-format
+#| msgid "cannot change inheritance of partitioned table"
+msgid "cannot change persistence setting twice"
+msgstr "no se puede cambiar la herencia de una tabla particionada"
+
+#: commands/tablecmds.c:4884
 #, c-format
 msgid "cannot rewrite system relation \"%s\""
 msgstr "no se puede reescribir la relación de sistema «%s»"
 
-#: commands/tablecmds.c:4573
+#: commands/tablecmds.c:4890
 #, c-format
 msgid "cannot rewrite table \"%s\" used as a catalog table"
 msgstr "no se puede reescribir la tabla «%s» que es usada como tabla de catálogo"
 
-#: commands/tablecmds.c:4583
+#: commands/tablecmds.c:4900
 #, c-format
 msgid "cannot rewrite temporary tables of other sessions"
 msgstr "no se puede reescribir tablas temporales de otras sesiones"
 
-#: commands/tablecmds.c:4862
+#: commands/tablecmds.c:5189
 #, c-format
 msgid "rewriting table \"%s\""
 msgstr "reescribiendo tabla «%s»"
 
-#: commands/tablecmds.c:4866
+#: commands/tablecmds.c:5193
 #, c-format
 msgid "verifying table \"%s\""
 msgstr "verificando tabla «%s»"
 
-#: commands/tablecmds.c:4996
-#, c-format
-msgid "column \"%s\" contains null values"
-msgstr "la columna «%s» contiene valores nulos"
+#: commands/tablecmds.c:5358
+#, fuzzy, c-format
+#| msgid "column \"%s\" of table \"%s\" contains null values"
+msgid "column \"%s\" of relation \"%s\" contains null values"
+msgstr "la columna «%s» de la tabla «%s» contiene valores null"
 
-#: commands/tablecmds.c:5012 commands/tablecmds.c:9697
-#, c-format
-msgid "check constraint \"%s\" is violated by some row"
+#: commands/tablecmds.c:5375 commands/tablecmds.c:10294
+#, fuzzy, c-format
+#| msgid "check constraint \"%s\" is violated by some row"
+msgid "check constraint \"%s\" of relation \"%s\" is violated by some row"
 msgstr "la restricción «check» «%s» es violada por alguna fila"
 
-#: commands/tablecmds.c:5030
+#: commands/tablecmds.c:5394 partitioning/partbounds.c:3237
 #, c-format
-msgid "updated partition constraint for default partition would be violated by some row"
-msgstr "la restricción de partición actualizada para la partición «default» sería violada por alguna fila"
+msgid "updated partition constraint for default partition \"%s\" would be violated by some row"
+msgstr "la restricción de partición actualizada para la partición default «%s» sería violada por alguna fila"
 
-#: commands/tablecmds.c:5034
-#, c-format
-msgid "partition constraint is violated by some row"
+#: commands/tablecmds.c:5400
+#, fuzzy, c-format
+#| msgid "partition constraint is violated by some row"
+msgid "partition constraint of relation \"%s\" is violated by some row"
 msgstr "la restricción de partición es violada por alguna fila"
 
-#: commands/tablecmds.c:5179 commands/trigger.c:1538 commands/trigger.c:1644
+#: commands/tablecmds.c:5547 commands/trigger.c:1200 commands/trigger.c:1306
 #, c-format
 msgid "\"%s\" is not a table, view, or foreign table"
 msgstr "«%s» no es una tabla, vista o tabla foránea"
 
-#: commands/tablecmds.c:5182
+#: commands/tablecmds.c:5550
 #, c-format
 msgid "\"%s\" is not a table, view, materialized view, or index"
 msgstr "«%s» no es una tabla, vista, vista materializada, o índice"
 
-#: commands/tablecmds.c:5188
+#: commands/tablecmds.c:5556
 #, c-format
 msgid "\"%s\" is not a table, materialized view, or index"
 msgstr "«%s» no es una tabla, vista materializada, o índice"
 
-#: commands/tablecmds.c:5191
+#: commands/tablecmds.c:5559
 #, c-format
 msgid "\"%s\" is not a table, materialized view, or foreign table"
 msgstr "«%s» no es una tabla, vista materializada o tabla foránea"
 
-#: commands/tablecmds.c:5194
+#: commands/tablecmds.c:5562
 #, c-format
 msgid "\"%s\" is not a table or foreign table"
 msgstr "«%s» no es una tabla o tabla foránea"
 
-#: commands/tablecmds.c:5197
+#: commands/tablecmds.c:5565
 #, c-format
 msgid "\"%s\" is not a table, composite type, or foreign table"
 msgstr "«%s» no es una tabla, tipo compuesto, o tabla foránea"
 
-#: commands/tablecmds.c:5200 commands/tablecmds.c:6706
+#: commands/tablecmds.c:5568
 #, c-format
 msgid "\"%s\" is not a table, materialized view, index, or foreign table"
 msgstr "«%s» no es una tabla, vista materializada, índice o tabla foránea"
 
-#: commands/tablecmds.c:5210
+#: commands/tablecmds.c:5578
 #, c-format
 msgid "\"%s\" is of the wrong type"
 msgstr "«%s» es tipo equivocado"
 
-#: commands/tablecmds.c:5416 commands/tablecmds.c:5423
+#: commands/tablecmds.c:5785 commands/tablecmds.c:5792
 #, c-format
 msgid "cannot alter type \"%s\" because column \"%s.%s\" uses it"
 msgstr "no se puede alterar el tipo «%s» porque la columna «%s.%s» lo usa"
 
-#: commands/tablecmds.c:5430
+#: commands/tablecmds.c:5799
 #, c-format
 msgid "cannot alter foreign table \"%s\" because column \"%s.%s\" uses its row type"
 msgstr "no se puede alterar la tabla foránea «%s» porque la columna «%s.%s» usa su tipo de registro"
 
-#: commands/tablecmds.c:5437
+#: commands/tablecmds.c:5806
 #, c-format
 msgid "cannot alter table \"%s\" because column \"%s.%s\" uses its row type"
 msgstr "no se puede alterar la tabla «%s» porque la columna «%s.%s» usa su tipo de registro"
 
-#: commands/tablecmds.c:5493
+#: commands/tablecmds.c:5862
 #, c-format
 msgid "cannot alter type \"%s\" because it is the type of a typed table"
 msgstr "no se puede cambiar el tipo «%s» porque es el tipo de una tabla tipada"
 
-#: commands/tablecmds.c:5495
+#: commands/tablecmds.c:5864
 #, c-format
 msgid "Use ALTER ... CASCADE to alter the typed tables too."
 msgstr "Use ALTER ... CASCADE para eliminar además las tablas tipadas."
 
-#: commands/tablecmds.c:5541
+#: commands/tablecmds.c:5910
 #, c-format
 msgid "type %s is not a composite type"
 msgstr "el tipo %s no es un tipo compuesto"
 
-#: commands/tablecmds.c:5567
+#: commands/tablecmds.c:5937
 #, c-format
 msgid "cannot add column to typed table"
 msgstr "no se puede agregar una columna a una tabla tipada"
 
-#: commands/tablecmds.c:5611
+#: commands/tablecmds.c:5988
 #, c-format
 msgid "cannot add column to a partition"
 msgstr "no se puede agregar una columna a una partición"
 
-#: commands/tablecmds.c:5640 commands/tablecmds.c:13066
+#: commands/tablecmds.c:6017 commands/tablecmds.c:13779
 #, c-format
 msgid "child table \"%s\" has different type for column \"%s\""
 msgstr "la tabla hija «%s» tiene un tipo diferente para la columna «%s»"
 
-#: commands/tablecmds.c:5646 commands/tablecmds.c:13073
+#: commands/tablecmds.c:6023 commands/tablecmds.c:13786
 #, c-format
 msgid "child table \"%s\" has different collation for column \"%s\""
 msgstr "la tabla hija «%s» tiene un ordenamiento (collation) diferente para la columna «%s»"
 
-#: commands/tablecmds.c:5660
+#: commands/tablecmds.c:6037
 #, c-format
 msgid "merging definition of column \"%s\" for child \"%s\""
 msgstr "mezclando la definición de la columna «%s» en la tabla hija «%s»"
 
-#: commands/tablecmds.c:5684
+#: commands/tablecmds.c:6080
 #, c-format
 msgid "cannot recursively add identity column to table that has child tables"
 msgstr "no se puede agregar una columna de identidad recursivamente a una tabla que tiene tablas hijas"
 
-#: commands/tablecmds.c:5918
+#: commands/tablecmds.c:6317
 #, c-format
 msgid "column must be added to child tables too"
 msgstr "la columna debe ser agregada a las tablas hijas también"
 
-#: commands/tablecmds.c:5993
+#: commands/tablecmds.c:6395
 #, c-format
 msgid "column \"%s\" of relation \"%s\" already exists, skipping"
 msgstr "la columna «%s» de la relación «%s» ya existe, omitiendo"
 
-#: commands/tablecmds.c:6000
+#: commands/tablecmds.c:6402
 #, c-format
 msgid "column \"%s\" of relation \"%s\" already exists"
 msgstr "ya existe la columna «%s» en la relación «%s»"
 
-#: commands/tablecmds.c:6066 commands/tablecmds.c:10140
+#: commands/tablecmds.c:6468 commands/tablecmds.c:10736
 #, c-format
 msgid "cannot remove constraint from only the partitioned table when partitions exist"
 msgstr "no se pueden eliminar restricciones sólo de la tabla particionada cuando existen particiones"
 
-#: commands/tablecmds.c:6067 commands/tablecmds.c:6336
-#: commands/tablecmds.c:7105 commands/tablecmds.c:10141
+#: commands/tablecmds.c:6469 commands/tablecmds.c:6738
+#: commands/tablecmds.c:7689 commands/tablecmds.c:10737
 #, c-format
 msgid "Do not specify the ONLY keyword."
 msgstr "No especifique la opción ONLY."
 
-#: commands/tablecmds.c:6104 commands/tablecmds.c:6262
-#: commands/tablecmds.c:6404 commands/tablecmds.c:6487
-#: commands/tablecmds.c:6581 commands/tablecmds.c:6640
-#: commands/tablecmds.c:6790 commands/tablecmds.c:6860
-#: commands/tablecmds.c:6952 commands/tablecmds.c:10280
-#: commands/tablecmds.c:11607
+#: commands/tablecmds.c:6506 commands/tablecmds.c:6664
+#: commands/tablecmds.c:6806 commands/tablecmds.c:6891
+#: commands/tablecmds.c:6985 commands/tablecmds.c:7044
+#: commands/tablecmds.c:7146 commands/tablecmds.c:7312
+#: commands/tablecmds.c:7382 commands/tablecmds.c:7475
+#: commands/tablecmds.c:10891 commands/tablecmds.c:12316
 #, c-format
 msgid "cannot alter system column \"%s\""
 msgstr "no se puede alterar columna de sistema «%s»"
 
-#: commands/tablecmds.c:6110 commands/tablecmds.c:6410
+#: commands/tablecmds.c:6512 commands/tablecmds.c:6812
 #, c-format
 msgid "column \"%s\" of relation \"%s\" is an identity column"
 msgstr "la columna «%s» en la relación «%s» es una columna de identidad"
 
-#: commands/tablecmds.c:6146
+#: commands/tablecmds.c:6548
 #, c-format
 msgid "column \"%s\" is in a primary key"
 msgstr "la columna «%s» está en la llave primaria"
 
-#: commands/tablecmds.c:6168
+#: commands/tablecmds.c:6570
 #, c-format
 msgid "column \"%s\" is marked NOT NULL in parent table"
 msgstr "columna «%s» está marcada NOT NULL en la tabla padre"
 
-#: commands/tablecmds.c:6333 commands/tablecmds.c:7555
+#: commands/tablecmds.c:6735 commands/tablecmds.c:8148
 #, c-format
 msgid "constraint must be added to child tables too"
 msgstr "la restricción debe ser agregada a las tablas hijas también"
 
-#: commands/tablecmds.c:6334
+#: commands/tablecmds.c:6736
 #, c-format
 msgid "Column \"%s\" of relation \"%s\" is not already NOT NULL."
 msgstr "La columna «%s» de la relación «%s» no está previamente marcada NOT NULL."
 
-#: commands/tablecmds.c:6369
+#: commands/tablecmds.c:6771
 #, c-format
 msgid "existing constraints on column \"%s\".\"%s\" are sufficient to prove that it does not contain nulls"
 msgstr "las restricciones existentes en la columna «%s.%s» son suficientes para demostrar que no contiene nulos"
 
-#: commands/tablecmds.c:6412
+#: commands/tablecmds.c:6814
 #, c-format
 msgid "Use ALTER TABLE ... ALTER COLUMN ... DROP IDENTITY instead."
 msgstr "Use ALTER TABLE ... ALTER COLUMN ... DROP IDENTITY en su lugar."
 
-#: commands/tablecmds.c:6417
+#: commands/tablecmds.c:6819
 #, c-format
 msgid "column \"%s\" of relation \"%s\" is a generated column"
 msgstr "la columna «%s» en la relación «%s» es una columna generada"
 
-#: commands/tablecmds.c:6498
+#: commands/tablecmds.c:6822
+#, fuzzy, c-format
+#| msgid "Use ALTER TABLE ... ALTER COLUMN ... DROP IDENTITY instead."
+msgid "Use ALTER TABLE ... ALTER COLUMN ... DROP EXPRESSION instead."
+msgstr "Use ALTER TABLE ... ALTER COLUMN ... DROP IDENTITY en su lugar."
+
+#: commands/tablecmds.c:6902
 #, c-format
 msgid "column \"%s\" of relation \"%s\" must be declared NOT NULL before identity can be added"
 msgstr "la columna «%s» en la relación «%s» debe ser declarada NOT NULL antes de que una identidad pueda agregarse"
 
-#: commands/tablecmds.c:6504
+#: commands/tablecmds.c:6908
 #, c-format
 msgid "column \"%s\" of relation \"%s\" is already an identity column"
 msgstr "la columna «%s» en la relación «%s» ya es una columna de identidad"
 
-#: commands/tablecmds.c:6510
+#: commands/tablecmds.c:6914
 #, c-format
 msgid "column \"%s\" of relation \"%s\" already has a default value"
 msgstr "la columna «%s» en la relación «%s» ya tiene un valor por omisión"
 
-#: commands/tablecmds.c:6587 commands/tablecmds.c:6648
+#: commands/tablecmds.c:6991 commands/tablecmds.c:7052
 #, c-format
 msgid "column \"%s\" of relation \"%s\" is not an identity column"
 msgstr "la columna «%s» en la relación «%s» no es una columna identidad"
 
-#: commands/tablecmds.c:6653
+#: commands/tablecmds.c:7057
 #, c-format
 msgid "column \"%s\" of relation \"%s\" is not an identity column, skipping"
 msgstr "la columna «%s» de la relación «%s» no es una columna identidad, omitiendo"
 
-#: commands/tablecmds.c:6718
+#: commands/tablecmds.c:7116
+#, fuzzy, c-format
+#| msgid "cannot rename inherited column \"%s\""
+msgid "cannot drop generation expression from inherited column"
+msgstr "no se puede cambiar el nombre a la columna heredada «%s»"
+
+#: commands/tablecmds.c:7154
+#, fuzzy, c-format
+#| msgid "column \"%s\" of relation \"%s\" is a generated column"
+msgid "column \"%s\" of relation \"%s\" is not a stored generated column"
+msgstr "la columna «%s» en la relación «%s» es una columna generada"
+
+#: commands/tablecmds.c:7159
+#, fuzzy, c-format
+#| msgid "column \"%s\" of relation \"%s\" is not an identity column, skipping"
+msgid "column \"%s\" of relation \"%s\" is not a stored generated column, skipping"
+msgstr "la columna «%s» de la relación «%s» no es una columna identidad, omitiendo"
+
+#: commands/tablecmds.c:7259
 #, c-format
 msgid "cannot refer to non-index column by number"
 msgstr "no se puede referir a columnas que no son de índice por número"
 
-#: commands/tablecmds.c:6749
-#, c-format
-msgid "statistics target %d is too low"
-msgstr "el valor de estadísticas %d es demasiado bajo"
-
-#: commands/tablecmds.c:6757
-#, c-format
-msgid "lowering statistics target to %d"
-msgstr "bajando el valor de estadísticas a %d"
-
-#: commands/tablecmds.c:6780
+#: commands/tablecmds.c:7302
 #, c-format
 msgid "column number %d of relation \"%s\" does not exist"
 msgstr "no existe la columna número %d en la relación «%s»"
 
-#: commands/tablecmds.c:6799
+#: commands/tablecmds.c:7321
 #, c-format
 msgid "cannot alter statistics on included column \"%s\" of index \"%s\""
 msgstr "no se puede alterar estadísticas en la columna incluida «%s» del índice «%s»"
 
-#: commands/tablecmds.c:6804
+#: commands/tablecmds.c:7326
 #, c-format
 msgid "cannot alter statistics on non-expression column \"%s\" of index \"%s\""
 msgstr "no se puede alterar estadísticas en la columna no-de-expresión «%s» del índice «%s»"
 
-#: commands/tablecmds.c:6806
+#: commands/tablecmds.c:7328
 #, c-format
 msgid "Alter statistics on table column instead."
 msgstr "Altere las estadísticas en la columna de la tabla en su lugar."
 
-#: commands/tablecmds.c:6932
+#: commands/tablecmds.c:7455
 #, c-format
 msgid "invalid storage type \"%s\""
 msgstr "tipo de almacenamiento no válido «%s»"
 
-#: commands/tablecmds.c:6964
+#: commands/tablecmds.c:7487
 #, c-format
 msgid "column data type %s can only have storage PLAIN"
 msgstr "el tipo de datos %s de la columna sólo puede tener almacenamiento PLAIN"
 
-#: commands/tablecmds.c:6999
+#: commands/tablecmds.c:7569
 #, c-format
 msgid "cannot drop column from typed table"
 msgstr "no se pueden eliminar columnas de una tabla tipada"
 
-#: commands/tablecmds.c:7044
+#: commands/tablecmds.c:7628
 #, c-format
 msgid "column \"%s\" of relation \"%s\" does not exist, skipping"
 msgstr "no existe la columna «%s» en la relación «%s», omitiendo"
 
-#: commands/tablecmds.c:7057
+#: commands/tablecmds.c:7641
 #, c-format
 msgid "cannot drop system column \"%s\""
 msgstr "no se puede eliminar la columna de sistema «%s»"
 
-#: commands/tablecmds.c:7067
+#: commands/tablecmds.c:7651
 #, c-format
 msgid "cannot drop inherited column \"%s\""
 msgstr "no se puede eliminar la columna heredada «%s»"
 
-#: commands/tablecmds.c:7080
+#: commands/tablecmds.c:7664
 #, c-format
 msgid "cannot drop column \"%s\" because it is part of the partition key of relation \"%s\""
 msgstr "no se puede eliminar la columna «%s» porque es parte de la llave de partición de la relación «%s»"
 
-#: commands/tablecmds.c:7104
+#: commands/tablecmds.c:7688
 #, c-format
 msgid "cannot drop column from only the partitioned table when partitions exist"
 msgstr "no se pueden eliminar columnas sólo de una tabla particionada cuando existe particiones"
 
-#: commands/tablecmds.c:7276
+#: commands/tablecmds.c:7869
 #, c-format
 msgid "ALTER TABLE / ADD CONSTRAINT USING INDEX is not supported on partitioned tables"
 msgstr "ALTER TABLE / ADD CONSTRAINT USING INDEX no está soportado en tablas particionadas"
 
-#: commands/tablecmds.c:7301
+#: commands/tablecmds.c:7894
 #, c-format
 msgid "ALTER TABLE / ADD CONSTRAINT USING INDEX will rename index \"%s\" to \"%s\""
 msgstr "ALTER TABLE / ADD CONSTRAINT USING INDEX renombrará el índice «%s» a «%s»"
 
-#: commands/tablecmds.c:7635
+#: commands/tablecmds.c:8228
 #, c-format
 msgid "cannot use ONLY for foreign key on partitioned table \"%s\" referencing relation \"%s\""
 msgstr "no se puede usar ONLY para una llave foránea en la tabla particionada «%s» haciendo referencia a la relación «%s»"
 
-#: commands/tablecmds.c:7641
+#: commands/tablecmds.c:8234
 #, c-format
 msgid "cannot add NOT VALID foreign key on partitioned table \"%s\" referencing relation \"%s\""
 msgstr "no se puede agregar una llave foránea NOT VALID a la tabla particionada «%s» haciendo referencia a la relación «%s»"
 
-#: commands/tablecmds.c:7644
+#: commands/tablecmds.c:8237
 #, c-format
 msgid "This feature is not yet supported on partitioned tables."
 msgstr "Esta característica no está aún soportada en tablas particionadas."
 
-#: commands/tablecmds.c:7651 commands/tablecmds.c:8055
+#: commands/tablecmds.c:8244 commands/tablecmds.c:8649
 #, c-format
 msgid "referenced relation \"%s\" is not a table"
 msgstr "la relación referida «%s» no es una tabla"
 
-#: commands/tablecmds.c:7674
+#: commands/tablecmds.c:8267
 #, c-format
 msgid "constraints on permanent tables may reference only permanent tables"
 msgstr "las restricciones en tablas permanentes sólo pueden hacer referencia a tablas permanentes"
 
-#: commands/tablecmds.c:7681
+#: commands/tablecmds.c:8274
 #, c-format
 msgid "constraints on unlogged tables may reference only permanent or unlogged tables"
 msgstr "las restricciones en tablas «unlogged» sólo pueden hacer referencia a tablas permanentes o «unlogged»"
 
-#: commands/tablecmds.c:7687
+#: commands/tablecmds.c:8280
 #, c-format
 msgid "constraints on temporary tables may reference only temporary tables"
 msgstr "las restricciones en tablas temporales sólo pueden hacer referencia a tablas temporales"
 
-#: commands/tablecmds.c:7691
+#: commands/tablecmds.c:8284
 #, c-format
 msgid "constraints on temporary tables must involve temporary tables of this session"
 msgstr "las restricciones en tablas temporales sólo pueden hacer referencia a tablas temporales de esta sesión"
 
-#: commands/tablecmds.c:7757 commands/tablecmds.c:7763
+#: commands/tablecmds.c:8350 commands/tablecmds.c:8356
 #, c-format
 msgid "invalid %s action for foreign key constraint containing generated column"
 msgstr "acción %s no válida para restricción de llave foránea que contiene columnas generadas"
 
-#: commands/tablecmds.c:7779
+#: commands/tablecmds.c:8372
 #, c-format
 msgid "number of referencing and referenced columns for foreign key disagree"
 msgstr "el número de columnas referidas en la llave foránea no coincide con el número de columnas de referencia"
 
-#: commands/tablecmds.c:7886
+#: commands/tablecmds.c:8479
 #, c-format
 msgid "foreign key constraint \"%s\" cannot be implemented"
 msgstr "la restricción de llave foránea «%s» no puede ser implementada"
 
-#: commands/tablecmds.c:7888
+#: commands/tablecmds.c:8481
 #, c-format
 msgid "Key columns \"%s\" and \"%s\" are of incompatible types: %s and %s."
 msgstr "Las columnas llave «%s» y «%s» son de tipos incompatibles: %s y %s"
 
-#: commands/tablecmds.c:8251 commands/tablecmds.c:8639
-#: parser/parse_utilcmd.c:753 parser/parse_utilcmd.c:882
+#: commands/tablecmds.c:8844 commands/tablecmds.c:9237
+#: parser/parse_utilcmd.c:763 parser/parse_utilcmd.c:892
 #, c-format
 msgid "foreign key constraints are not supported on foreign tables"
 msgstr "las restricciones de llave foránea no están soportadas en tablas foráneas"
 
-#: commands/tablecmds.c:9006 commands/tablecmds.c:9169
-#: commands/tablecmds.c:10097 commands/tablecmds.c:10172
+#: commands/tablecmds.c:9603 commands/tablecmds.c:9766
+#: commands/tablecmds.c:10693 commands/tablecmds.c:10768
 #, c-format
 msgid "constraint \"%s\" of relation \"%s\" does not exist"
 msgstr "no existe la restricción «%s» en la relación «%s»"
 
-#: commands/tablecmds.c:9013
+#: commands/tablecmds.c:9610
 #, c-format
 msgid "constraint \"%s\" of relation \"%s\" is not a foreign key constraint"
 msgstr "la restricción «%s» de la relación «%s» no es una restriccion de llave foránea"
 
-#: commands/tablecmds.c:9177
+#: commands/tablecmds.c:9774
 #, c-format
 msgid "constraint \"%s\" of relation \"%s\" is not a foreign key or check constraint"
 msgstr "la restricción «%s» de la relación «%s» no es una llave foránea o restricción «check»"
 
-#: commands/tablecmds.c:9247
+#: commands/tablecmds.c:9844
 #, c-format
 msgid "constraint must be validated on child tables too"
 msgstr "la restricción debe ser validada en las tablas hijas también"
 
-#: commands/tablecmds.c:9313
+#: commands/tablecmds.c:9910
 #, c-format
 msgid "column \"%s\" referenced in foreign key constraint does not exist"
 msgstr "no existe la columna «%s» referida en la llave foránea"
 
-#: commands/tablecmds.c:9318
+#: commands/tablecmds.c:9915
 #, c-format
 msgid "cannot have more than %d keys in a foreign key"
 msgstr "no se puede tener más de %d columnas en una llave foránea"
 
-#: commands/tablecmds.c:9383
+#: commands/tablecmds.c:9980
 #, c-format
 msgid "cannot use a deferrable primary key for referenced table \"%s\""
 msgstr "no se puede usar una llave primaria postergable para la tabla referenciada «%s»"
 
-#: commands/tablecmds.c:9400
+#: commands/tablecmds.c:9997
 #, c-format
 msgid "there is no primary key for referenced table \"%s\""
 msgstr "no hay llave primaria para la tabla referida «%s»"
 
-#: commands/tablecmds.c:9465
+#: commands/tablecmds.c:10062
 #, c-format
 msgid "foreign key referenced-columns list must not contain duplicates"
 msgstr "la lista de columnas referidas en una llave foránea no debe contener duplicados"
 
-#: commands/tablecmds.c:9559
+#: commands/tablecmds.c:10156
 #, c-format
 msgid "cannot use a deferrable unique constraint for referenced table \"%s\""
 msgstr "no se puede usar una restricción unique postergable para la tabla referenciada «%s»"
 
-#: commands/tablecmds.c:9564
+#: commands/tablecmds.c:10161
 #, c-format
 msgid "there is no unique constraint matching given keys for referenced table \"%s\""
 msgstr "no hay restricción unique que coincida con las columnas dadas en la tabla referida «%s»"
 
-#: commands/tablecmds.c:9732
+#: commands/tablecmds.c:10330
 #, c-format
 msgid "validating foreign key constraint \"%s\""
 msgstr "validando restricción de llave foránea «%s»"
 
-#: commands/tablecmds.c:10053
+#: commands/tablecmds.c:10649
 #, c-format
 msgid "cannot drop inherited constraint \"%s\" of relation \"%s\""
 msgstr "no se puede eliminar la restricción «%s» heredada de la relación «%s»"
 
-#: commands/tablecmds.c:10103
+#: commands/tablecmds.c:10699
 #, c-format
 msgid "constraint \"%s\" of relation \"%s\" does not exist, skipping"
 msgstr "no existe la restricción «%s» en la relación «%s», omitiendo"
 
-#: commands/tablecmds.c:10264
+#: commands/tablecmds.c:10875
 #, c-format
 msgid "cannot alter column type of typed table"
 msgstr "no se puede cambiar el tipo de una columna de una tabla tipada"
 
-#: commands/tablecmds.c:10291
+#: commands/tablecmds.c:10902
 #, c-format
 msgid "cannot alter inherited column \"%s\""
 msgstr "no se puede alterar la columna heredada «%s»"
 
-#: commands/tablecmds.c:10300
+#: commands/tablecmds.c:10911
 #, c-format
-#| msgid "collation of partition bound value for column \"%s\" does not match partition key collation \"%s\""
 msgid "cannot alter column \"%s\" because it is part of the partition key of relation \"%s\""
 msgstr "no se puede alterar la columna «%s» porque es parte de la llave de partición de la relación «%s»"
 
-#: commands/tablecmds.c:10350
+#: commands/tablecmds.c:10961
 #, c-format
 msgid "result of USING clause for column \"%s\" cannot be cast automatically to type %s"
 msgstr "el resultado de la cláusula USING para la columna «%s» no puede ser convertido automáticamente al tipo %s"
 
-#: commands/tablecmds.c:10353
+#: commands/tablecmds.c:10964
 #, c-format
 msgid "You might need to add an explicit cast."
 msgstr "Puede ser necesario agregar un cast explícito."
 
-#: commands/tablecmds.c:10357
+#: commands/tablecmds.c:10968
 #, c-format
 msgid "column \"%s\" cannot be cast automatically to type %s"
 msgstr "la columna «%s» no puede convertirse automáticamente al tipo %s"
 
 #. translator: USING is SQL, don't translate it
-#: commands/tablecmds.c:10360
+#: commands/tablecmds.c:10971
 #, c-format
 msgid "You might need to specify \"USING %s::%s\"."
 msgstr "Puede ser necesario especificar «USING %s::%s»."
 
-#: commands/tablecmds.c:10459
+#: commands/tablecmds.c:11071
 #, c-format
 msgid "cannot alter inherited column \"%s\" of relation \"%s\""
 msgstr "no se puede alterar la columna heredada «%s» de la relación «%s»"
 
-#: commands/tablecmds.c:10488
+#: commands/tablecmds.c:11099
 #, c-format
 msgid "USING expression contains a whole-row table reference."
 msgstr "La expresión USING contiene una referencia a la fila completa (whole-row)."
 
-#: commands/tablecmds.c:10499
+#: commands/tablecmds.c:11110
 #, c-format
 msgid "type of inherited column \"%s\" must be changed in child tables too"
 msgstr "debe cambiar el tipo a la columna heredada «%s» en las tablas hijas también"
 
-#: commands/tablecmds.c:10624
+#: commands/tablecmds.c:11235
 #, c-format
 msgid "cannot alter type of column \"%s\" twice"
 msgstr "no se puede alterar el tipo de la columna «%s» dos veces"
 
-#: commands/tablecmds.c:10662
+#: commands/tablecmds.c:11273
 #, c-format
 msgid "generation expression for column \"%s\" cannot be cast automatically to type %s"
 msgstr "la expresión de generación para la columna «%s» no puede ser convertido automáticamente al tipo %s"
 
-#: commands/tablecmds.c:10667
+#: commands/tablecmds.c:11278
 #, c-format
 msgid "default for column \"%s\" cannot be cast automatically to type %s"
 msgstr "el valor por omisión para la columna «%s» no puede ser convertido automáticamente al tipo %s"
 
-#: commands/tablecmds.c:10745
+#: commands/tablecmds.c:11356
 #, c-format
 msgid "cannot alter type of a column used by a generated column"
 msgstr "no se puede alterar el tipo de una columna usada por una columna generada"
 
-#: commands/tablecmds.c:10746
+#: commands/tablecmds.c:11357
 #, c-format
 msgid "Column \"%s\" is used by generated column \"%s\"."
 msgstr "La columna «%s» es usada por la columna generada «%s»."
 
-#: commands/tablecmds.c:10767
+#: commands/tablecmds.c:11378
 #, c-format
 msgid "cannot alter type of a column used by a view or rule"
 msgstr "no se puede alterar el tipo de una columna usada en una regla o vista"
 
-#: commands/tablecmds.c:10768 commands/tablecmds.c:10787
-#: commands/tablecmds.c:10805
+#: commands/tablecmds.c:11379 commands/tablecmds.c:11398
+#: commands/tablecmds.c:11416
 #, c-format
 msgid "%s depends on column \"%s\""
 msgstr "%s depende de la columna «%s»"
 
-#: commands/tablecmds.c:10786
+#: commands/tablecmds.c:11397
 #, c-format
 msgid "cannot alter type of a column used in a trigger definition"
 msgstr "no se puede alterar el tipo de una columna usada en una definición de trigger"
 
-#: commands/tablecmds.c:10804
+#: commands/tablecmds.c:11415
 #, c-format
 msgid "cannot alter type of a column used in a policy definition"
 msgstr "no se puede alterar el tipo de una columna usada en una definición de política"
 
-#: commands/tablecmds.c:11715 commands/tablecmds.c:11727
+#: commands/tablecmds.c:12424 commands/tablecmds.c:12436
 #, c-format
 msgid "cannot change owner of index \"%s\""
 msgstr "no se puede cambiar el dueño del índice «%s»"
 
-#: commands/tablecmds.c:11717 commands/tablecmds.c:11729
+#: commands/tablecmds.c:12426 commands/tablecmds.c:12438
 #, c-format
 msgid "Change the ownership of the index's table, instead."
 msgstr "Considere cambiar el dueño de la tabla en vez de cambiar el dueño del índice."
 
-#: commands/tablecmds.c:11743
+#: commands/tablecmds.c:12452
 #, c-format
 msgid "cannot change owner of sequence \"%s\""
 msgstr "no se puede cambiar el dueño de la secuencia «%s»"
 
-#: commands/tablecmds.c:11757 commands/tablecmds.c:14954
+#: commands/tablecmds.c:12466 commands/tablecmds.c:15653
 #, c-format
 msgid "Use ALTER TYPE instead."
 msgstr "Considere usar ALTER TYPE."
 
-#: commands/tablecmds.c:11766
+#: commands/tablecmds.c:12475
 #, c-format
 msgid "\"%s\" is not a table, view, sequence, or foreign table"
 msgstr "«%s» no es una tabla, vista, secuencia o tabla foránea"
 
-#: commands/tablecmds.c:12106
+#: commands/tablecmds.c:12815
 #, c-format
 msgid "cannot have multiple SET TABLESPACE subcommands"
 msgstr "no se pueden tener múltiples subórdenes SET TABLESPACE"
 
-#: commands/tablecmds.c:12181
+#: commands/tablecmds.c:12892
 #, c-format
 msgid "\"%s\" is not a table, view, materialized view, index, or TOAST table"
 msgstr "«%s» no es una tabla, vista, tabla materializada, índice o tabla TOAST"
 
-#: commands/tablecmds.c:12214 commands/view.c:504
+#: commands/tablecmds.c:12925 commands/view.c:494
 #, c-format
 msgid "WITH CHECK OPTION is supported only on automatically updatable views"
 msgstr "WITH CHECK OPTION sólo puede usarse en vistas automáticamente actualizables"
 
-#: commands/tablecmds.c:12354
+#: commands/tablecmds.c:13065
 #, c-format
 msgid "cannot move system relation \"%s\""
 msgstr "no se puede mover la relación de sistema «%s»"
 
-#: commands/tablecmds.c:12370
+#: commands/tablecmds.c:13081
 #, c-format
 msgid "cannot move temporary tables of other sessions"
 msgstr "no se pueden mover tablas temporales de otras sesiones"
 
-#: commands/tablecmds.c:12538
+#: commands/tablecmds.c:13251
 #, c-format
 msgid "only tables, indexes, and materialized views exist in tablespaces"
 msgstr "solamente tablas, índices y vistas materializadas existen en tablespaces"
 
-#: commands/tablecmds.c:12550
+#: commands/tablecmds.c:13263
 #, c-format
 msgid "cannot move relations in to or out of pg_global tablespace"
 msgstr "no se puede mover objetos hacia o desde el tablespace pg_global"
 
-#: commands/tablecmds.c:12642
+#: commands/tablecmds.c:13355
 #, c-format
 msgid "aborting because lock on relation \"%s.%s\" is not available"
 msgstr "cancelando porque el lock en la relación «%s.%s» no está disponible"
 
-#: commands/tablecmds.c:12658
+#: commands/tablecmds.c:13371
 #, c-format
 msgid "no matching relations in tablespace \"%s\" found"
 msgstr "no se encontraron relaciones coincidentes en el tablespace «%s»"
 
-#: commands/tablecmds.c:12774
+#: commands/tablecmds.c:13487
 #, c-format
 msgid "cannot change inheritance of typed table"
 msgstr "no se puede cambiar la herencia de una tabla tipada"
 
-#: commands/tablecmds.c:12779 commands/tablecmds.c:13275
+#: commands/tablecmds.c:13492 commands/tablecmds.c:13988
 #, c-format
 msgid "cannot change inheritance of a partition"
 msgstr "no puede cambiar la herencia de una partición"
 
-#: commands/tablecmds.c:12784
+#: commands/tablecmds.c:13497
 #, c-format
 msgid "cannot change inheritance of partitioned table"
 msgstr "no se puede cambiar la herencia de una tabla particionada"
 
-#: commands/tablecmds.c:12830
+#: commands/tablecmds.c:13543
 #, c-format
 msgid "cannot inherit to temporary relation of another session"
 msgstr "no se puede agregar herencia a tablas temporales de otra sesión"
 
-#: commands/tablecmds.c:12843
+#: commands/tablecmds.c:13556
 #, c-format
 msgid "cannot inherit from a partition"
 msgstr "no se puede heredar de una partición"
 
-#: commands/tablecmds.c:12865 commands/tablecmds.c:15590
+#: commands/tablecmds.c:13578 commands/tablecmds.c:16293
 #, c-format
 msgid "circular inheritance not allowed"
 msgstr "la herencia circular no está permitida"
 
-#: commands/tablecmds.c:12866 commands/tablecmds.c:15591
+#: commands/tablecmds.c:13579 commands/tablecmds.c:16294
 #, c-format
 msgid "\"%s\" is already a child of \"%s\"."
 msgstr "«%s» ya es un hijo de «%s»."
 
-#: commands/tablecmds.c:12879
+#: commands/tablecmds.c:13592
 #, c-format
 msgid "trigger \"%s\" prevents table \"%s\" from becoming an inheritance child"
 msgstr "el trigger «%s» impide a la tabla «%s» convertirse en hija de herencia"
 
-#: commands/tablecmds.c:12881
+#: commands/tablecmds.c:13594
 #, c-format
 msgid "ROW triggers with transition tables are not supported in inheritance hierarchies."
 msgstr "Los triggers ROW con tablas de transición no están permitidos en jerarquías de herencia."
 
-#: commands/tablecmds.c:13084
+#: commands/tablecmds.c:13797
 #, c-format
 msgid "column \"%s\" in child table must be marked NOT NULL"
 msgstr "columna «%s» en tabla hija debe marcarse como NOT NULL"
 
-#: commands/tablecmds.c:13111
+#: commands/tablecmds.c:13824
 #, c-format
 msgid "child table is missing column \"%s\""
 msgstr "tabla hija no tiene la columna «%s»"
 
-#: commands/tablecmds.c:13199
+#: commands/tablecmds.c:13912
 #, c-format
 msgid "child table \"%s\" has different definition for check constraint \"%s\""
 msgstr "la tabla hija «%s» tiene una definición diferente para la restricción «check» «%s»"
 
-#: commands/tablecmds.c:13207
+#: commands/tablecmds.c:13920
 #, c-format
 msgid "constraint \"%s\" conflicts with non-inherited constraint on child table \"%s\""
 msgstr "la restricción «%s» está en conflicto con la restricción no heredada en la tabla hija «%s»"
 
-#: commands/tablecmds.c:13218
+#: commands/tablecmds.c:13931
 #, c-format
 msgid "constraint \"%s\" conflicts with NOT VALID constraint on child table \"%s\""
 msgstr "la restricción «%s» está en conflicto con la restricción NOT VALID en la tabla hija «%s»"
 
-#: commands/tablecmds.c:13253
+#: commands/tablecmds.c:13966
 #, c-format
 msgid "child table is missing constraint \"%s\""
 msgstr "tabla hija no tiene la restricción «%s»"
 
-#: commands/tablecmds.c:13342
+#: commands/tablecmds.c:14055
 #, c-format
 msgid "relation \"%s\" is not a partition of relation \"%s\""
 msgstr "relación «%s» no es una partición de la relación «%s»"
 
-#: commands/tablecmds.c:13348
+#: commands/tablecmds.c:14061
 #, c-format
 msgid "relation \"%s\" is not a parent of relation \"%s\""
 msgstr "relación «%s» no es un padre de la relación «%s»"
 
-#: commands/tablecmds.c:13576
+#: commands/tablecmds.c:14289
 #, c-format
 msgid "typed tables cannot inherit"
 msgstr "las tablas tipadas no pueden heredar"
 
-#: commands/tablecmds.c:13606
+#: commands/tablecmds.c:14319
 #, c-format
 msgid "table is missing column \"%s\""
 msgstr "la tabla no tiene la columna «%s»"
 
-#: commands/tablecmds.c:13617
+#: commands/tablecmds.c:14330
 #, c-format
 msgid "table has column \"%s\" where type requires \"%s\""
 msgstr "la tabla tiene columna «%s» en la posición en que el tipo requiere «%s»."
 
-#: commands/tablecmds.c:13626
+#: commands/tablecmds.c:14339
 #, c-format
 msgid "table \"%s\" has different type for column \"%s\""
 msgstr "la tabla «%s» tiene un tipo diferente para la columna «%s»"
 
-#: commands/tablecmds.c:13640
+#: commands/tablecmds.c:14353
 #, c-format
 msgid "table has extra column \"%s\""
 msgstr "tabla tiene la columna extra «%s»"
 
-#: commands/tablecmds.c:13692
+#: commands/tablecmds.c:14405
 #, c-format
 msgid "\"%s\" is not a typed table"
 msgstr "«%s» no es una tabla tipada"
 
-#: commands/tablecmds.c:13874
+#: commands/tablecmds.c:14587
 #, c-format
 msgid "cannot use non-unique index \"%s\" as replica identity"
 msgstr "no se puede usar el índice no-único «%s» como identidad de réplica"
 
-#: commands/tablecmds.c:13880
+#: commands/tablecmds.c:14593
 #, c-format
 msgid "cannot use non-immediate index \"%s\" as replica identity"
 msgstr "no puede usar el índice no-inmediato «%s» como identidad de réplica"
 
-#: commands/tablecmds.c:13886
+#: commands/tablecmds.c:14599
 #, c-format
 msgid "cannot use expression index \"%s\" as replica identity"
 msgstr "no se puede usar el índice funcional «%s» como identidad de réplica"
 
-#: commands/tablecmds.c:13892
+#: commands/tablecmds.c:14605
 #, c-format
 msgid "cannot use partial index \"%s\" as replica identity"
 msgstr "no se puede usar el índice parcial «%s» como identidad de réplica"
 
-#: commands/tablecmds.c:13898
+#: commands/tablecmds.c:14611
 #, c-format
 msgid "cannot use invalid index \"%s\" as replica identity"
 msgstr "no se puede usar el índice no válido «%s» como identidad de réplica"
 
-#: commands/tablecmds.c:13915
+#: commands/tablecmds.c:14628
 #, c-format
 msgid "index \"%s\" cannot be used as replica identity because column %d is a system column"
 msgstr "el índice «%s» no puede usarse como identidad de réplica porque la column %d es una columna de sistema"
 
-#: commands/tablecmds.c:13922
+#: commands/tablecmds.c:14635
 #, c-format
 msgid "index \"%s\" cannot be used as replica identity because column \"%s\" is nullable"
 msgstr "el índice «%s» no puede usarse como identidad de réplica porque la column «%s» acepta valores nulos"
 
-#: commands/tablecmds.c:14115
+#: commands/tablecmds.c:14828
 #, c-format
 msgid "cannot change logged status of table \"%s\" because it is temporary"
 msgstr "no se puede cambiar el estado «logged» de la tabla «%s» porque es temporal"
 
-#: commands/tablecmds.c:14139
+#: commands/tablecmds.c:14852
 #, c-format
 msgid "cannot change table \"%s\" to unlogged because it is part of a publication"
 msgstr "no se pudo cambiar la tabla «%s» a «unlogged» porque es parte de una publicación"
 
-#: commands/tablecmds.c:14141
+#: commands/tablecmds.c:14854
 #, c-format
 msgid "Unlogged relations cannot be replicated."
 msgstr "Las tablas «unlogged» no pueden replicarse."
 
-#: commands/tablecmds.c:14186
+#: commands/tablecmds.c:14899
 #, c-format
 msgid "could not change table \"%s\" to logged because it references unlogged table \"%s\""
 msgstr "no se pudo cambiar la tabla «%s» a «logged» porque hace referencia a la tabla «unlogged» «%s»"
 
-#: commands/tablecmds.c:14196
+#: commands/tablecmds.c:14909
 #, c-format
 msgid "could not change table \"%s\" to unlogged because it references logged table \"%s\""
 msgstr "no se pudo cambiar la tabla «%s» a «unlogged» porque hace referencia a la tabla «logged» «%s»"
 
-#: commands/tablecmds.c:14254
+#: commands/tablecmds.c:14967
 #, c-format
 msgid "cannot move an owned sequence into another schema"
 msgstr "no se puede mover una secuencia enlazada a una tabla hacia otro esquema"
 
-#: commands/tablecmds.c:14360
+#: commands/tablecmds.c:15073
 #, c-format
 msgid "relation \"%s\" already exists in schema \"%s\""
 msgstr "ya existe una relación llamada «%s» en el esquema «%s»"
 
-#: commands/tablecmds.c:14937
+#: commands/tablecmds.c:15636
 #, c-format
 msgid "\"%s\" is not a composite type"
 msgstr "«%s» no es un tipo compuesto"
 
-#: commands/tablecmds.c:14969
+#: commands/tablecmds.c:15668
 #, c-format
 msgid "\"%s\" is not a table, view, materialized view, sequence, or foreign table"
 msgstr "«%s» no es una tabla, vista, vista materializada, secuencia o tabla foránea"
 
-#: commands/tablecmds.c:15004
+#: commands/tablecmds.c:15703
 #, c-format
 msgid "unrecognized partitioning strategy \"%s\""
 msgstr "estrategia de particionamiento «%s» no reconocida"
 
-#: commands/tablecmds.c:15012
+#: commands/tablecmds.c:15711
 #, c-format
 msgid "cannot use \"list\" partition strategy with more than one column"
 msgstr "no se puede usar la estrategia de particionamiento «list» con más de una columna"
 
-#: commands/tablecmds.c:15078
+#: commands/tablecmds.c:15777
 #, c-format
 msgid "column \"%s\" named in partition key does not exist"
 msgstr "la columna «%s» nombrada en llave de particionamiento no existe"
 
-#: commands/tablecmds.c:15086
+#: commands/tablecmds.c:15785
 #, c-format
 msgid "cannot use system column \"%s\" in partition key"
 msgstr "no se puede usar la columna de sistema «%s» en llave de particionamiento"
 
-#: commands/tablecmds.c:15097 commands/tablecmds.c:15202
+#: commands/tablecmds.c:15796 commands/tablecmds.c:15910
 #, c-format
 msgid "cannot use generated column in partition key"
 msgstr "no se puede usar una columna generada en llave de particionamiento"
 
-#: commands/tablecmds.c:15098 commands/tablecmds.c:15203 commands/trigger.c:659
-#: rewrite/rewriteHandler.c:826 rewrite/rewriteHandler.c:843
+#: commands/tablecmds.c:15797 commands/tablecmds.c:15911 commands/trigger.c:641
+#: rewrite/rewriteHandler.c:829 rewrite/rewriteHandler.c:846
 #, c-format
 msgid "Column \"%s\" is a generated column."
 msgstr "La columna «%s» es una columna generada."
 
-#: commands/tablecmds.c:15162
+#: commands/tablecmds.c:15873
 #, c-format
 msgid "functions in partition key expression must be marked IMMUTABLE"
 msgstr "las funciones utilizadas en expresiones de la llave de particionamiento deben estar marcadas IMMUTABLE"
 
-#: commands/tablecmds.c:15179
-#, c-format
-msgid "partition key expressions cannot contain whole-row references"
-msgstr "las expresiones en la llave de particionamiento no pueden incluir referencias a la fila completa (whole-row)"
-
-#: commands/tablecmds.c:15186
+#: commands/tablecmds.c:15893
 #, c-format
 msgid "partition key expressions cannot contain system column references"
 msgstr "las expresiones en la llave de particionamiento no pueden contener referencias a columnas de sistema"
 
-#: commands/tablecmds.c:15215
+#: commands/tablecmds.c:15923
 #, c-format
 msgid "cannot use constant expression as partition key"
 msgstr "no se pueden usar expresiones constantes como llave de particionamiento"
 
-#: commands/tablecmds.c:15236
+#: commands/tablecmds.c:15944
 #, c-format
 msgid "could not determine which collation to use for partition expression"
 msgstr "no se pudo determinar qué ordenamiento (collation) usar para la expresión de particionamiento"
 
-#: commands/tablecmds.c:15271
+#: commands/tablecmds.c:15979
 #, c-format
 msgid "You must specify a hash operator class or define a default hash operator class for the data type."
 msgstr "Debe especificar una clase de operadores hash, o definir una clase de operadores por omisión para hash para el tipo de datos."
 
-#: commands/tablecmds.c:15277
+#: commands/tablecmds.c:15985
 #, c-format
 msgid "You must specify a btree operator class or define a default btree operator class for the data type."
 msgstr "Debe especificar una clase de operadores btree, o definir una clase de operadores por omisión para btree para el tipo de datos."
 
-#: commands/tablecmds.c:15422
+#: commands/tablecmds.c:16130
 #, c-format
 msgid "partition constraint for table \"%s\" is implied by existing constraints"
 msgstr "la restricción de partición para la tabla \"%s\" está implícita en las restricciones existentes"
 
-#: commands/tablecmds.c:15426 partitioning/partbounds.c:1257
-#: partitioning/partbounds.c:1308
+#: commands/tablecmds.c:16134 partitioning/partbounds.c:3131
+#: partitioning/partbounds.c:3182
 #, c-format
 msgid "updated partition constraint for default partition \"%s\" is implied by existing constraints"
 msgstr "la restricción de partición actualizada para la partición por omisión \"%s\" está implícita en las restricciones existentes"
 
-#: commands/tablecmds.c:15530
+#: commands/tablecmds.c:16233
 #, c-format
 msgid "\"%s\" is already a partition"
 msgstr "«%s» ya es una partición"
 
-#: commands/tablecmds.c:15536
+#: commands/tablecmds.c:16239
 #, c-format
 msgid "cannot attach a typed table as partition"
 msgstr "no puede adjuntar tabla tipada como partición"
 
-#: commands/tablecmds.c:15552
+#: commands/tablecmds.c:16255
 #, c-format
 msgid "cannot attach inheritance child as partition"
 msgstr "no puede adjuntar hija de herencia como partición"
 
-#: commands/tablecmds.c:15566
+#: commands/tablecmds.c:16269
 #, c-format
 msgid "cannot attach inheritance parent as partition"
 msgstr "no puede adjuntar ancestro de herencia como partición"
 
-#: commands/tablecmds.c:15600
+#: commands/tablecmds.c:16303
 #, c-format
 msgid "cannot attach a temporary relation as partition of permanent relation \"%s\""
 msgstr "no se puede adjuntar una relación temporal como partición de la relación permanente «%s»"
 
-#: commands/tablecmds.c:15608
+#: commands/tablecmds.c:16311
 #, c-format
 msgid "cannot attach a permanent relation as partition of temporary relation \"%s\""
 msgstr "no se puede adjuntar una relación permanente como partición de la relación temporal «%s»"
 
-#: commands/tablecmds.c:15616
+#: commands/tablecmds.c:16319
 #, c-format
 msgid "cannot attach as partition of temporary relation of another session"
 msgstr "no se puede adjuntar como partición de una relación temporal de otra sesión"
 
-#: commands/tablecmds.c:15623
+#: commands/tablecmds.c:16326
 #, c-format
 msgid "cannot attach temporary relation of another session as partition"
 msgstr "no se adjuntar una relación temporal de otra sesión como partición"
 
-#: commands/tablecmds.c:15643
+#: commands/tablecmds.c:16346
 #, c-format
 msgid "table \"%s\" contains column \"%s\" not found in parent \"%s\""
 msgstr "la tabla «%s» contiene la columna «%s» no encontrada en el padre «%s»"
 
-#: commands/tablecmds.c:15646
+#: commands/tablecmds.c:16349
 #, c-format
 msgid "The new partition may contain only the columns present in parent."
 msgstr "La nueva partición sólo puede contener las columnas presentes en el padre."
 
-#: commands/tablecmds.c:15658
+#: commands/tablecmds.c:16361
 #, c-format
 msgid "trigger \"%s\" prevents table \"%s\" from becoming a partition"
 msgstr "el trigger «%s» impide a la tabla «%s» devenir partición"
 
-#: commands/tablecmds.c:15660 commands/trigger.c:465
+#: commands/tablecmds.c:16363 commands/trigger.c:447
 #, c-format
 msgid "ROW triggers with transition tables are not supported on partitions"
 msgstr "los triggers ROW con tablas de transición no están soportados en particiones"
 
-#: commands/tablecmds.c:15827
+#: commands/tablecmds.c:16526
 #, c-format
 msgid "cannot attach foreign table \"%s\" as partition of partitioned table \"%s\""
 msgstr "no se puede adjuntar la tabla foránea «%s» como partición de la tabla particionada «%s»"
 
-#: commands/tablecmds.c:15830
+#: commands/tablecmds.c:16529
 #, c-format
 msgid "Table \"%s\" contains unique indexes."
 msgstr "La tabla «%s» contiene índices únicos."
 
-#: commands/tablecmds.c:16411 commands/tablecmds.c:16430
-#: commands/tablecmds.c:16452 commands/tablecmds.c:16471
-#: commands/tablecmds.c:16513
+#: commands/tablecmds.c:17175 commands/tablecmds.c:17194
+#: commands/tablecmds.c:17214 commands/tablecmds.c:17233
+#: commands/tablecmds.c:17275
 #, c-format
 msgid "cannot attach index \"%s\" as a partition of index \"%s\""
 msgstr "no se puede adjuntar el índice «%s» como partición del índice «%s»"
 
-#: commands/tablecmds.c:16414
+#: commands/tablecmds.c:17178
 #, c-format
 msgid "Index \"%s\" is already attached to another index."
 msgstr "El índice «%s» ya está adjunto a otro índice."
 
-#: commands/tablecmds.c:16433
+#: commands/tablecmds.c:17197
 #, c-format
 msgid "Index \"%s\" is not an index on any partition of table \"%s\"."
 msgstr "El índice «%s» no es un índice en una partición de la tabla «%s»."
 
-#: commands/tablecmds.c:16455
+#: commands/tablecmds.c:17217
 #, c-format
 msgid "The index definitions do not match."
 msgstr "Las definiciones de los índices no coinciden."
 
-#: commands/tablecmds.c:16474
+#: commands/tablecmds.c:17236
 #, c-format
 msgid "The index \"%s\" belongs to a constraint in table \"%s\" but no constraint exists for index \"%s\"."
 msgstr "El índice «%s» pertenece a una restricción en la tabla «%s», pero no existe una restricción para el índice «%s»."
 
-#: commands/tablecmds.c:16516
+#: commands/tablecmds.c:17278
 #, c-format
 msgid "Another index is already attached for partition \"%s\"."
 msgstr "Otro índice ya está adjunto para la partición «%s»."
 
-#: commands/tablespace.c:163 commands/tablespace.c:180
-#: commands/tablespace.c:191 commands/tablespace.c:199
-#: commands/tablespace.c:639 replication/slot.c:1198 storage/file/copydir.c:47
+#: commands/tablespace.c:162 commands/tablespace.c:179
+#: commands/tablespace.c:190 commands/tablespace.c:198
+#: commands/tablespace.c:638 replication/slot.c:1288 storage/file/copydir.c:47
 #, c-format
 msgid "could not create directory \"%s\": %m"
 msgstr "no se pudo crear el directorio «%s»: %m"
 
-#: commands/tablespace.c:210 utils/adt/genfile.c:593
+#: commands/tablespace.c:209
 #, c-format
 msgid "could not stat directory \"%s\": %m"
 msgstr "no se pudo hacer stat al directorio «%s»: %m"
 
-#: commands/tablespace.c:219
+#: commands/tablespace.c:218
 #, c-format
 msgid "\"%s\" exists but is not a directory"
 msgstr "«%s» existe pero no es un directorio"
 
-#: commands/tablespace.c:250
+#: commands/tablespace.c:249
 #, c-format
 msgid "permission denied to create tablespace \"%s\""
 msgstr "se ha denegado el permiso para crear el tablespace «%s»"
 
-#: commands/tablespace.c:252
+#: commands/tablespace.c:251
 #, c-format
 msgid "Must be superuser to create a tablespace."
 msgstr "Debe ser superusuario para crear tablespaces."
 
-#: commands/tablespace.c:268
+#: commands/tablespace.c:267
 #, c-format
 msgid "tablespace location cannot contain single quotes"
 msgstr "la ruta del tablespace no puede contener comillas simples"
 
-#: commands/tablespace.c:278
+#: commands/tablespace.c:277
 #, c-format
 msgid "tablespace location must be an absolute path"
 msgstr "la ubicación del tablespace debe ser una ruta absoluta"
 
-#: commands/tablespace.c:290
+#: commands/tablespace.c:289
 #, c-format
 msgid "tablespace location \"%s\" is too long"
 msgstr "la ruta «%s» del tablespace es demasiado larga"
 
-#: commands/tablespace.c:297
+#: commands/tablespace.c:296
 #, c-format
 msgid "tablespace location should not be inside the data directory"
 msgstr "la ubicación del tablespace no debe estar dentro del directorio de datos"
 
-#: commands/tablespace.c:306 commands/tablespace.c:966
+#: commands/tablespace.c:305 commands/tablespace.c:965
 #, c-format
 msgid "unacceptable tablespace name \"%s\""
 msgstr "el nombre de tablespace «%s» es inaceptable"
 
-#: commands/tablespace.c:308 commands/tablespace.c:967
+#: commands/tablespace.c:307 commands/tablespace.c:966
 #, c-format
 msgid "The prefix \"pg_\" is reserved for system tablespaces."
 msgstr "El prefijo «pg_» está reservado para tablespaces del sistema."
 
-#: commands/tablespace.c:327 commands/tablespace.c:988
+#: commands/tablespace.c:326 commands/tablespace.c:987
 #, c-format
 msgid "tablespace \"%s\" already exists"
 msgstr "el tablespace «%s» ya existe"
 
-#: commands/tablespace.c:443 commands/tablespace.c:949
-#: commands/tablespace.c:1038 commands/tablespace.c:1107
-#: commands/tablespace.c:1251 commands/tablespace.c:1451
+#: commands/tablespace.c:442 commands/tablespace.c:948
+#: commands/tablespace.c:1037 commands/tablespace.c:1106
+#: commands/tablespace.c:1250 commands/tablespace.c:1450
 #, c-format
 msgid "tablespace \"%s\" does not exist"
 msgstr "no existe el tablespace «%s»"
 
-#: commands/tablespace.c:449
+#: commands/tablespace.c:448
 #, c-format
 msgid "tablespace \"%s\" does not exist, skipping"
 msgstr "el tablespace «%s» no existe, omitiendo"
 
-#: commands/tablespace.c:526
+#: commands/tablespace.c:525
 #, c-format
 msgid "tablespace \"%s\" is not empty"
 msgstr "el tablespace «%s» no está vacío"
 
-#: commands/tablespace.c:598
+#: commands/tablespace.c:597
 #, c-format
 msgid "directory \"%s\" does not exist"
 msgstr "no existe el directorio «%s»"
 
-#: commands/tablespace.c:599
+#: commands/tablespace.c:598
 #, c-format
 msgid "Create this directory for the tablespace before restarting the server."
 msgstr "Cree este directorio para el tablespace antes de reiniciar el servidor."
 
-#: commands/tablespace.c:604
+#: commands/tablespace.c:603
 #, c-format
 msgid "could not set permissions on directory \"%s\": %m"
 msgstr "no se pudo definir los permisos del directorio «%s»: %m"
 
-#: commands/tablespace.c:634
+#: commands/tablespace.c:633
 #, c-format
 msgid "directory \"%s\" already in use as a tablespace"
 msgstr "el directorio «%s» ya está siendo usado como tablespace"
 
-#: commands/tablespace.c:758 commands/tablespace.c:771
-#: commands/tablespace.c:807 commands/tablespace.c:899 storage/file/fd.c:2992
-#: storage/file/fd.c:3331
+#: commands/tablespace.c:757 commands/tablespace.c:770
+#: commands/tablespace.c:806 commands/tablespace.c:898 storage/file/fd.c:3100
+#: storage/file/fd.c:3440
 #, c-format
 msgid "could not remove directory \"%s\": %m"
 msgstr "no se pudo eliminar el directorio «%s»: %m"
 
-#: commands/tablespace.c:820 commands/tablespace.c:908
+#: commands/tablespace.c:819 commands/tablespace.c:907
 #, c-format
 msgid "could not remove symbolic link \"%s\": %m"
 msgstr "no se pudo eliminar el enlace simbólico «%s»: %m"
 
-#: commands/tablespace.c:830 commands/tablespace.c:917
+#: commands/tablespace.c:829 commands/tablespace.c:916
 #, c-format
 msgid "\"%s\" is not a directory or symbolic link"
 msgstr "«%s» no es un directorio o enlace simbólico"
 
-#: commands/tablespace.c:1112
+#: commands/tablespace.c:1111
 #, c-format
 msgid "Tablespace \"%s\" does not exist."
 msgstr "No existe el tablespace «%s»."
 
-#: commands/tablespace.c:1550
+#: commands/tablespace.c:1549
 #, c-format
 msgid "directories for tablespace %u could not be removed"
 msgstr "algunos directorios para el tablespace %u no pudieron eliminarse"
 
-#: commands/tablespace.c:1552
+#: commands/tablespace.c:1551
 #, c-format
 msgid "You can remove the directories manually if necessary."
 msgstr "Puede eliminar los directorios manualmente, si es necesario."
 
-#: commands/trigger.c:210 commands/trigger.c:221
+#: commands/trigger.c:204 commands/trigger.c:215
 #, c-format
 msgid "\"%s\" is a table"
 msgstr "«%s» es una tabla"
 
-#: commands/trigger.c:212 commands/trigger.c:223
+#: commands/trigger.c:206 commands/trigger.c:217
 #, c-format
 msgid "Tables cannot have INSTEAD OF triggers."
 msgstr "Las tablas no pueden tener disparadores INSTEAD OF."
 
-#: commands/trigger.c:240
+#: commands/trigger.c:238
 #, c-format
-msgid "Partitioned tables cannot have BEFORE / FOR EACH ROW triggers."
-msgstr "Las tablas particionadas no pueden tener disparadores BEFORE / FOR EACH ROW."
+msgid "\"%s\" is a partitioned table"
+msgstr "«%s» es una tabla particionada"
 
-#: commands/trigger.c:258
+#: commands/trigger.c:240
 #, c-format
 msgid "Triggers on partitioned tables cannot have transition tables."
 msgstr "Los triggers en tablas particionadas no pueden tener tablas de transición."
 
-#: commands/trigger.c:270 commands/trigger.c:277 commands/trigger.c:447
+#: commands/trigger.c:252 commands/trigger.c:259 commands/trigger.c:429
 #, c-format
 msgid "\"%s\" is a view"
 msgstr "«%s» es una vista"
 
-#: commands/trigger.c:272
+#: commands/trigger.c:254
 #, c-format
 msgid "Views cannot have row-level BEFORE or AFTER triggers."
 msgstr "Las vistas no pueden tener disparadores BEFORE o AFTER a nivel de fila."
 
-#: commands/trigger.c:279
+#: commands/trigger.c:261
 #, c-format
 msgid "Views cannot have TRUNCATE triggers."
 msgstr "Las vistas no pueden tener disparadores TRUNCATE."
 
-#: commands/trigger.c:287 commands/trigger.c:294 commands/trigger.c:306
-#: commands/trigger.c:440
+#: commands/trigger.c:269 commands/trigger.c:276 commands/trigger.c:288
+#: commands/trigger.c:422
 #, c-format
 msgid "\"%s\" is a foreign table"
 msgstr "«%s» es una tabla foránea"
 
-#: commands/trigger.c:289
+#: commands/trigger.c:271
 #, c-format
 msgid "Foreign tables cannot have INSTEAD OF triggers."
 msgstr "Las tablas foráneas no pueden tener disparadores INSTEAD OF."
 
-#: commands/trigger.c:296
+#: commands/trigger.c:278
 #, c-format
 msgid "Foreign tables cannot have TRUNCATE triggers."
 msgstr "Las tablas foráneas no pueden tener disparadores TRUNCATE."
 
-#: commands/trigger.c:308
+#: commands/trigger.c:290
 #, c-format
 msgid "Foreign tables cannot have constraint triggers."
 msgstr "Las tablas foráneas no pueden tener disparadores de restricción."
 
-#: commands/trigger.c:383
+#: commands/trigger.c:365
 #, c-format
 msgid "TRUNCATE FOR EACH ROW triggers are not supported"
 msgstr "los disparadores TRUNCATE FOR EACH ROW no están soportados"
 
-#: commands/trigger.c:391
+#: commands/trigger.c:373
 #, c-format
 msgid "INSTEAD OF triggers must be FOR EACH ROW"
 msgstr "los disparadores INSTEAD OF deben ser FOR EACH ROW"
 
-#: commands/trigger.c:395
+#: commands/trigger.c:377
 #, c-format
 msgid "INSTEAD OF triggers cannot have WHEN conditions"
 msgstr "los disparadores INSTEAD OF no pueden tener condiciones WHEN"
 
-#: commands/trigger.c:399
+#: commands/trigger.c:381
 #, c-format
 msgid "INSTEAD OF triggers cannot have column lists"
 msgstr "los disparadores INSTEAD OF no pueden tener listas de columnas"
 
-#: commands/trigger.c:428
+#: commands/trigger.c:410
 #, c-format
 msgid "ROW variable naming in the REFERENCING clause is not supported"
 msgstr "dar nombre a una variable ROW en la cláusula REFERENCING no está soportado"
 
-#: commands/trigger.c:429
+#: commands/trigger.c:411
 #, c-format
 msgid "Use OLD TABLE or NEW TABLE for naming transition tables."
 msgstr "utilice OLD TABLE o NEW TABLE para nombrar tablas de transición."
 
-#: commands/trigger.c:442
+#: commands/trigger.c:424
 #, c-format
 msgid "Triggers on foreign tables cannot have transition tables."
 msgstr "Las tablas foráneas no pueden tener tablas de transición."
 
-#: commands/trigger.c:449
+#: commands/trigger.c:431
 #, c-format
 msgid "Triggers on views cannot have transition tables."
 msgstr "Las triggers en vistas no pueden tener tablas de transición."
 
-#: commands/trigger.c:469
+#: commands/trigger.c:451
 #, c-format
 msgid "ROW triggers with transition tables are not supported on inheritance children"
 msgstr "los triggers ROW con tablas de transición no están soportados con hijas de herencia"
 
-#: commands/trigger.c:475
+#: commands/trigger.c:457
 #, c-format
 msgid "transition table name can only be specified for an AFTER trigger"
 msgstr "el nombre de la tabla de transición solo se puede especificar para un disparador AFTER"
 
-#: commands/trigger.c:480
+#: commands/trigger.c:462
 #, c-format
 msgid "TRUNCATE triggers with transition tables are not supported"
 msgstr "los triggers TRUNCATE con tablas de transición no están soportados"
 
-#: commands/trigger.c:497
+#: commands/trigger.c:479
 #, c-format
 msgid "transition tables cannot be specified for triggers with more than one event"
 msgstr "las tablas de transición no pueden especificarse para triggers con más de un evento"
 
-#: commands/trigger.c:508
+#: commands/trigger.c:490
 #, c-format
 msgid "transition tables cannot be specified for triggers with column lists"
 msgstr "las tablas de transición no pueden especificarse para triggers con lista de columnas"
 
-#: commands/trigger.c:525
+#: commands/trigger.c:507
 #, c-format
 msgid "NEW TABLE can only be specified for an INSERT or UPDATE trigger"
 msgstr "NEW TABLE sólo se puede especificar para un disparador INSERT o UPDATE"
 
-#: commands/trigger.c:530
+#: commands/trigger.c:512
 #, c-format
 msgid "NEW TABLE cannot be specified multiple times"
 msgstr "NEW TABLE no se puede especificar varias veces"
 
-#: commands/trigger.c:540
+#: commands/trigger.c:522
 #, c-format
 msgid "OLD TABLE can only be specified for a DELETE or UPDATE trigger"
 msgstr "OLD TABLE sólo se puede especificar para un disparador DELETE o UPDATE"
 
-#: commands/trigger.c:545
+#: commands/trigger.c:527
 #, c-format
 msgid "OLD TABLE cannot be specified multiple times"
 msgstr "OLD TABLE no se puede especificar varias veces"
 
-#: commands/trigger.c:555
+#: commands/trigger.c:537
 #, c-format
 msgid "OLD TABLE name and NEW TABLE name cannot be the same"
 msgstr "el nombre de OLD TABLE y el nombre de NEW TABLE no pueden ser iguales"
 
-#: commands/trigger.c:619 commands/trigger.c:632
+#: commands/trigger.c:601 commands/trigger.c:614
 #, c-format
 msgid "statement trigger's WHEN condition cannot reference column values"
 msgstr "la condición WHEN de un disparador por sentencias no pueden referirse a los valores de las columnas"
 
-#: commands/trigger.c:624
+#: commands/trigger.c:606
 #, c-format
 msgid "INSERT trigger's WHEN condition cannot reference OLD values"
 msgstr "la condición WHEN de un disparador en INSERT no puede referirse a valores OLD"
 
-#: commands/trigger.c:637
+#: commands/trigger.c:619
 #, c-format
 msgid "DELETE trigger's WHEN condition cannot reference NEW values"
 msgstr "la condición WHEN de un disparador en DELETE no puede referirse a valores NEW"
 
-#: commands/trigger.c:642
+#: commands/trigger.c:624
 #, c-format
 msgid "BEFORE trigger's WHEN condition cannot reference NEW system columns"
 msgstr "la condición WHEN de un disparador BEFORE no puede referirse a columnas de sistema de NEW"
 
-#: commands/trigger.c:650 commands/trigger.c:658
+#: commands/trigger.c:632 commands/trigger.c:640
 #, c-format
 msgid "BEFORE trigger's WHEN condition cannot reference NEW generated columns"
 msgstr "la condición WHEN del trigger BEFORE no puede hacer referencia a columnas NEW generadas"
 
-#: commands/trigger.c:651
+#: commands/trigger.c:633
 #, c-format
 msgid "A whole-row reference is used and the table contains generated columns."
 msgstr "Se utiliza una referencia de la tupla completa, y la tabla contiene columnas generadas"
 
-#: commands/trigger.c:833 commands/trigger.c:1723
+#: commands/trigger.c:780 commands/trigger.c:1385
 #, c-format
 msgid "trigger \"%s\" for relation \"%s\" already exists"
 msgstr "ya existe un trigger «%s» para la relación «%s»"
 
-#: commands/trigger.c:1248
-msgid "Found referenced table's UPDATE trigger."
-msgstr "Se encontró el disparador UPDATE de la tabla referenciada."
-
-#: commands/trigger.c:1249
-msgid "Found referenced table's DELETE trigger."
-msgstr "Se encontró el disparador DELETE de la tabla referenciada."
-
-#: commands/trigger.c:1250
-msgid "Found referencing table's trigger."
-msgstr "Se encontró el disparador en la tabla que hace referencia."
-
-#: commands/trigger.c:1359 commands/trigger.c:1375
-#, c-format
-msgid "ignoring incomplete trigger group for constraint \"%s\" %s"
-msgstr "ignorando el grupo de disparadores incompleto para la restricción «%s» %s"
-
-#: commands/trigger.c:1388
-#, c-format
-msgid "converting trigger group into constraint \"%s\" %s"
-msgstr "convirtiendo el grupo de disparadores en la restricción «%s» %s"
-
-#: commands/trigger.c:1609 commands/trigger.c:1770 commands/trigger.c:1906
+#: commands/trigger.c:1271 commands/trigger.c:1432 commands/trigger.c:1568
 #, c-format
 msgid "trigger \"%s\" for table \"%s\" does not exist"
 msgstr "no existe el trigger «%s» para la tabla «%s»"
 
-#: commands/trigger.c:1853
+#: commands/trigger.c:1515
 #, c-format
 msgid "permission denied: \"%s\" is a system trigger"
 msgstr "permiso denegado: «%s» es un trigger de sistema"
 
-#: commands/trigger.c:2453
+#: commands/trigger.c:2116
 #, c-format
 msgid "trigger function %u returned null value"
 msgstr "la función de trigger %u ha retornado un valor null"
 
-#: commands/trigger.c:2519 commands/trigger.c:2736 commands/trigger.c:2988
-#: commands/trigger.c:3292
+#: commands/trigger.c:2176 commands/trigger.c:2390 commands/trigger.c:2625
+#: commands/trigger.c:2933
 #, c-format
 msgid "BEFORE STATEMENT trigger cannot return a value"
 msgstr "un trigger BEFORE STATEMENT no puede retornar un valor"
 
-#: commands/trigger.c:3355 executor/nodeModifyTable.c:1349
-#: executor/nodeModifyTable.c:1418
+#: commands/trigger.c:2250
+#, c-format
+msgid "moving row to another partition during a BEFORE FOR EACH ROW trigger is not supported"
+msgstr ""
+
+#: commands/trigger.c:2251 commands/trigger.c:2755
+#, c-format
+msgid "Before executing trigger \"%s\", the row was to be in partition \"%s.%s\"."
+msgstr ""
+
+#: commands/trigger.c:2754
+#, c-format
+msgid "moving row to another partition during a BEFORE trigger is not supported"
+msgstr ""
+
+#: commands/trigger.c:2996 executor/nodeModifyTable.c:1380
+#: executor/nodeModifyTable.c:1449
 #, c-format
 msgid "tuple to be updated was already modified by an operation triggered by the current command"
 msgstr "el registro a ser actualizado ya fue modificado por una operación disparada por la orden actual"
 
-#: commands/trigger.c:3356 executor/nodeModifyTable.c:809
-#: executor/nodeModifyTable.c:883 executor/nodeModifyTable.c:1350
-#: executor/nodeModifyTable.c:1419
+#: commands/trigger.c:2997 executor/nodeModifyTable.c:840
+#: executor/nodeModifyTable.c:914 executor/nodeModifyTable.c:1381
+#: executor/nodeModifyTable.c:1450
 #, c-format
 msgid "Consider using an AFTER trigger instead of a BEFORE trigger to propagate changes to other rows."
 msgstr "Considere usar un disparador AFTER en lugar de un disparador BEFORE para propagar cambios a otros registros."
 
-#: commands/trigger.c:3386 executor/nodeLockRows.c:225
+#: commands/trigger.c:3026 executor/nodeLockRows.c:225
 #: executor/nodeLockRows.c:234 executor/nodeModifyTable.c:220
-#: executor/nodeModifyTable.c:825 executor/nodeModifyTable.c:1366
-#: executor/nodeModifyTable.c:1582
+#: executor/nodeModifyTable.c:856 executor/nodeModifyTable.c:1397
+#: executor/nodeModifyTable.c:1613
 #, c-format
 msgid "could not serialize access due to concurrent update"
 msgstr "no se pudo serializar el acceso debido a un update concurrente"
 
-#: commands/trigger.c:3394 executor/nodeModifyTable.c:915
-#: executor/nodeModifyTable.c:1436 executor/nodeModifyTable.c:1606
+#: commands/trigger.c:3034 executor/nodeModifyTable.c:946
+#: executor/nodeModifyTable.c:1467 executor/nodeModifyTable.c:1637
 #, c-format
 msgid "could not serialize access due to concurrent delete"
 msgstr "no se pudo serializar el acceso debido a un delete concurrente"
 
-#: commands/trigger.c:5445
+#: commands/trigger.c:5094
 #, c-format
 msgid "constraint \"%s\" is not deferrable"
 msgstr "la restricción «%s» no es postergable"
 
-#: commands/trigger.c:5468
+#: commands/trigger.c:5117
 #, c-format
 msgid "constraint \"%s\" does not exist"
 msgstr "no existe la restricción «%s»"
 
-#: commands/tsearchcmds.c:115 commands/tsearchcmds.c:686
+#: commands/tsearchcmds.c:118 commands/tsearchcmds.c:683
 #, c-format
 msgid "function %s should return type %s"
 msgstr "la función %s debería retornar el tipo %s"
 
-#: commands/tsearchcmds.c:192
+#: commands/tsearchcmds.c:195
 #, c-format
 msgid "must be superuser to create text search parsers"
 msgstr "debe ser superusuario para crear analizadores de búsqueda en texto"
 
-#: commands/tsearchcmds.c:245
+#: commands/tsearchcmds.c:248
 #, c-format
 msgid "text search parser parameter \"%s\" not recognized"
 msgstr "el parámetro de analizador de búsqueda en texto «%s» no es reconocido"
 
-#: commands/tsearchcmds.c:255
+#: commands/tsearchcmds.c:258
 #, c-format
 msgid "text search parser start method is required"
 msgstr "el método «start» del analizador de búsqueda en texto es obligatorio"
 
-#: commands/tsearchcmds.c:260
+#: commands/tsearchcmds.c:263
 #, c-format
 msgid "text search parser gettoken method is required"
 msgstr "el método «gettoken» del analizador de búsqueda en texto es obligatorio"
 
-#: commands/tsearchcmds.c:265
+#: commands/tsearchcmds.c:268
 #, c-format
 msgid "text search parser end method is required"
 msgstr "el método «end» del analizador de búsqueda en texto es obligatorio"
 
-#: commands/tsearchcmds.c:270
+#: commands/tsearchcmds.c:273
 #, c-format
 msgid "text search parser lextypes method is required"
 msgstr "el método «lextypes» del analizador de búsqueda en texto es obligatorio"
 
-#: commands/tsearchcmds.c:387
+#: commands/tsearchcmds.c:390
 #, c-format
 msgid "text search template \"%s\" does not accept options"
 msgstr "la plantilla de búsquede en texto «%s» no acepta opciones"
 
-#: commands/tsearchcmds.c:461
+#: commands/tsearchcmds.c:464
 #, c-format
 msgid "text search template is required"
 msgstr "la plantilla de búsqueda en texto es obligatoria"
 
-#: commands/tsearchcmds.c:753
+#: commands/tsearchcmds.c:750
 #, c-format
 msgid "must be superuser to create text search templates"
 msgstr "debe ser superusuario para crear una plantilla de búsqueda en texto"
 
-#: commands/tsearchcmds.c:795
+#: commands/tsearchcmds.c:792
 #, c-format
 msgid "text search template parameter \"%s\" not recognized"
 msgstr "el parámetro de la plantilla de búsqueda en texto «%s» no es reconocido"
 
-#: commands/tsearchcmds.c:805
+#: commands/tsearchcmds.c:802
 #, c-format
 msgid "text search template lexize method is required"
 msgstr "el método «lexize» de la plantilla de búsqueda en texto es obligatorio"
 
-#: commands/tsearchcmds.c:1009
+#: commands/tsearchcmds.c:1006
 #, c-format
 msgid "text search configuration parameter \"%s\" not recognized"
 msgstr "el parámetro de configuración de búsqueda en texto «%s» no es reconocido"
 
-#: commands/tsearchcmds.c:1016
+#: commands/tsearchcmds.c:1013
 #, c-format
 msgid "cannot specify both PARSER and COPY options"
 msgstr "no se puede especificar simultáneamente las opciones PARSER y COPY"
 
-#: commands/tsearchcmds.c:1052
+#: commands/tsearchcmds.c:1049
 #, c-format
 msgid "text search parser is required"
 msgstr "el analizador de búsqueda en texto es obligatorio"
 
-#: commands/tsearchcmds.c:1276
+#: commands/tsearchcmds.c:1273
 #, c-format
 msgid "token type \"%s\" does not exist"
 msgstr "no existe el tipo de elemento «%s»"
 
-#: commands/tsearchcmds.c:1503
+#: commands/tsearchcmds.c:1500
 #, c-format
 msgid "mapping for token type \"%s\" does not exist"
 msgstr "no existe un mapeo para el tipo de elemento «%s»"
 
-#: commands/tsearchcmds.c:1509
+#: commands/tsearchcmds.c:1506
 #, c-format
 msgid "mapping for token type \"%s\" does not exist, skipping"
 msgstr "el mapeo para el tipo de elemento «%s» no existe, omitiendo"
 
-#: commands/tsearchcmds.c:1664 commands/tsearchcmds.c:1775
+#: commands/tsearchcmds.c:1669 commands/tsearchcmds.c:1784
 #, c-format
 msgid "invalid parameter list format: \"%s\""
 msgstr "el formato de la lista de parámetros no es válido: «%s»"
 
-#: commands/typecmds.c:184
+#: commands/typecmds.c:205
 #, c-format
 msgid "must be superuser to create a base type"
 msgstr "debe ser superusuario para crear un tipo base"
 
-#: commands/typecmds.c:291 commands/typecmds.c:1467
+#: commands/typecmds.c:263
+#, c-format
+msgid "Create the type as a shell type, then create its I/O functions, then do a full CREATE TYPE."
+msgstr ""
+
+#: commands/typecmds.c:313 commands/typecmds.c:1393 commands/typecmds.c:3809
 #, c-format
 msgid "type attribute \"%s\" not recognized"
 msgstr "el atributo de tipo «%s» no es reconocido"
 
-#: commands/typecmds.c:347
+#: commands/typecmds.c:369
 #, c-format
 msgid "invalid type category \"%s\": must be simple ASCII"
 msgstr "la categoría de tipo «%s» no es válida: debe ser ASCII simple"
 
-#: commands/typecmds.c:366
+#: commands/typecmds.c:388
 #, c-format
 msgid "array element type cannot be %s"
 msgstr "el tipo de elemento de array no puede ser %s"
 
-#: commands/typecmds.c:398
+#: commands/typecmds.c:420
 #, c-format
 msgid "alignment \"%s\" not recognized"
 msgstr "el alineamiento «%s» no es reconocido"
 
-#: commands/typecmds.c:415
+#: commands/typecmds.c:437 commands/typecmds.c:3695
 #, c-format
 msgid "storage \"%s\" not recognized"
 msgstr "el almacenamiento «%s» no es reconocido"
 
-#: commands/typecmds.c:426
+#: commands/typecmds.c:448
 #, c-format
 msgid "type input function must be specified"
 msgstr "debe especificarse la función de ingreso del tipo"
 
-#: commands/typecmds.c:430
+#: commands/typecmds.c:452
 #, c-format
 msgid "type output function must be specified"
 msgstr "debe especificarse la función de salida de tipo"
 
-#: commands/typecmds.c:435
+#: commands/typecmds.c:457
 #, c-format
 msgid "type modifier output function is useless without a type modifier input function"
 msgstr "la función de salida de modificadores de tipo es inútil sin una función de entrada de modificadores de tipo"
 
-#: commands/typecmds.c:465
-#, c-format
-msgid "type input function %s must return type %s"
-msgstr "la función de entrada %s del tipo debe retornar %s"
-
-#: commands/typecmds.c:482
-#, c-format
-msgid "type output function %s must return type %s"
-msgstr "la función de salida %s del tipo debe retornar %s"
-
-#: commands/typecmds.c:491
-#, c-format
-msgid "type receive function %s must return type %s"
-msgstr "la función de recepción %s del tipo debe retornar %s"
-
-#: commands/typecmds.c:500
-#, c-format
-msgid "type send function %s must return type %s"
-msgstr "la función «send» %s del tipo debe retornar %s"
-
-#: commands/typecmds.c:565
-#, c-format
-msgid "type input function %s should not be volatile"
-msgstr "la función de entrada %s no debe ser volatile"
-
-#: commands/typecmds.c:570
-#, c-format
-msgid "type output function %s should not be volatile"
-msgstr "la función de salida %s no debe ser volatile"
-
-#: commands/typecmds.c:575
-#, c-format
-msgid "type receive function %s should not be volatile"
-msgstr "la función «receive» %s del tipo no debe ser volatile"
-
-#: commands/typecmds.c:580
-#, c-format
-msgid "type send function %s should not be volatile"
-msgstr "la función «send» %s no debe ser volatile"
-
-#: commands/typecmds.c:585
-#, c-format
-msgid "type modifier input function %s should not be volatile"
-msgstr "la función de modificadores de tipo %s no debe ser volatile"
-
-#: commands/typecmds.c:590
-#, c-format
-msgid "type modifier output function %s should not be volatile"
-msgstr "la función de salida de modificadores de tipo %s no debe ser volatile"
-
-#: commands/typecmds.c:817
+#: commands/typecmds.c:744
 #, c-format
 msgid "\"%s\" is not a valid base type for a domain"
 msgstr "«%s» no es un tipo de dato base válido para un dominio"
 
-#: commands/typecmds.c:903
+#: commands/typecmds.c:836
 #, c-format
 msgid "multiple default expressions"
 msgstr "múltiples expresiones default"
 
-#: commands/typecmds.c:966 commands/typecmds.c:975
+#: commands/typecmds.c:899 commands/typecmds.c:908
 #, c-format
 msgid "conflicting NULL/NOT NULL constraints"
 msgstr "las restricciones NULL/NOT NULL no coinciden"
 
-#: commands/typecmds.c:991
+#: commands/typecmds.c:924
 #, c-format
 msgid "check constraints for domains cannot be marked NO INHERIT"
 msgstr "las restricciones «check» en dominios no pueden ser marcadas NO INHERIT"
 
-#: commands/typecmds.c:1000 commands/typecmds.c:2582
+#: commands/typecmds.c:933 commands/typecmds.c:2513
 #, c-format
 msgid "unique constraints not possible for domains"
 msgstr "no se pueden poner restricciones de unicidad a un dominio"
 
-#: commands/typecmds.c:1006 commands/typecmds.c:2588
+#: commands/typecmds.c:939 commands/typecmds.c:2519
 #, c-format
 msgid "primary key constraints not possible for domains"
 msgstr "no se pueden poner restricciones de llave primaria a un dominio"
 
-#: commands/typecmds.c:1012 commands/typecmds.c:2594
+#: commands/typecmds.c:945 commands/typecmds.c:2525
 #, c-format
 msgid "exclusion constraints not possible for domains"
 msgstr "las restricciones de exclusión no son posibles para los dominios"
 
-#: commands/typecmds.c:1018 commands/typecmds.c:2600
+#: commands/typecmds.c:951 commands/typecmds.c:2531
 #, c-format
 msgid "foreign key constraints not possible for domains"
 msgstr "no se pueden poner restricciones de llave foránea a un dominio"
 
-#: commands/typecmds.c:1027 commands/typecmds.c:2609
+#: commands/typecmds.c:960 commands/typecmds.c:2540
 #, c-format
 msgid "specifying constraint deferrability not supported for domains"
 msgstr "no se puede especificar la postergabilidad de las restricciones a un dominio"
 
-#: commands/typecmds.c:1337 utils/cache/typcache.c:2340
+#: commands/typecmds.c:1270 utils/cache/typcache.c:2430
 #, c-format
 msgid "%s is not an enum"
 msgstr "%s no es un enum"
 
-#: commands/typecmds.c:1475
+#: commands/typecmds.c:1401
 #, c-format
 msgid "type attribute \"subtype\" is required"
 msgstr "el atributo de tipo «subtype» es obligatorio"
 
-#: commands/typecmds.c:1480
+#: commands/typecmds.c:1406
 #, c-format
 msgid "range subtype cannot be %s"
 msgstr "el subtipo de rango no puede ser %s"
 
-#: commands/typecmds.c:1499
+#: commands/typecmds.c:1425
 #, c-format
 msgid "range collation specified but subtype does not support collation"
 msgstr "se especificó un ordenamiento (collation) al rango, pero el subtipo no soporta ordenamiento"
 
-#: commands/typecmds.c:1733
-#, c-format
-msgid "changing argument type of function %s from \"opaque\" to \"cstring\""
-msgstr "cambiando el tipo de argumento de la función %s de «opaque» a «cstring»"
+#: commands/typecmds.c:1435
+#, fuzzy, c-format
+#| msgid "range canonical function %s must return range type"
+msgid "cannot specify a canonical function without a pre-created shell type"
+msgstr "la función canónica %s del rango debe retornar tipo de rango"
 
-#: commands/typecmds.c:1784
+#: commands/typecmds.c:1436
 #, c-format
-msgid "changing argument type of function %s from \"opaque\" to %s"
-msgstr "cambiando el tipo de argumento de la función %s de «opaque» a %s"
+msgid "Create the type as a shell type, then create its canonicalization function, then do a full CREATE TYPE."
+msgstr ""
 
-#: commands/typecmds.c:1883
+#: commands/typecmds.c:1654
+#, c-format
+msgid "type input function %s must return type %s"
+msgstr "la función de entrada %s del tipo debe retornar %s"
+
+#: commands/typecmds.c:1670
+#, c-format
+msgid "type input function %s should not be volatile"
+msgstr "la función de entrada %s no debe ser volatile"
+
+#: commands/typecmds.c:1698
+#, c-format
+msgid "type output function %s must return type %s"
+msgstr "la función de salida %s del tipo debe retornar %s"
+
+#: commands/typecmds.c:1705
+#, c-format
+msgid "type output function %s should not be volatile"
+msgstr "la función de salida %s no debe ser volatile"
+
+#: commands/typecmds.c:1741
+#, c-format
+msgid "type receive function %s must return type %s"
+msgstr "la función de recepción %s del tipo debe retornar %s"
+
+#: commands/typecmds.c:1748
+#, c-format
+msgid "type receive function %s should not be volatile"
+msgstr "la función «receive» %s del tipo no debe ser volatile"
+
+#: commands/typecmds.c:1776
+#, c-format
+msgid "type send function %s must return type %s"
+msgstr "la función «send» %s del tipo debe retornar %s"
+
+#: commands/typecmds.c:1783
+#, c-format
+msgid "type send function %s should not be volatile"
+msgstr "la función «send» %s no debe ser volatile"
+
+#: commands/typecmds.c:1810
 #, c-format
 msgid "typmod_in function %s must return type %s"
 msgstr "la función typmod_in %s debe retornar tipo %s"
 
-#: commands/typecmds.c:1910
+#: commands/typecmds.c:1817
+#, c-format
+msgid "type modifier input function %s should not be volatile"
+msgstr "la función de modificadores de tipo %s no debe ser volatile"
+
+#: commands/typecmds.c:1844
 #, c-format
 msgid "typmod_out function %s must return type %s"
 msgstr "la función typmod_out %s debe retornar tipo %s"
 
-#: commands/typecmds.c:1937
+#: commands/typecmds.c:1851
+#, c-format
+msgid "type modifier output function %s should not be volatile"
+msgstr "la función de salida de modificadores de tipo %s no debe ser volatile"
+
+#: commands/typecmds.c:1878
 #, c-format
 msgid "type analyze function %s must return type %s"
 msgstr "la función de análisis %s del tipo debe retornar %s"
 
-#: commands/typecmds.c:1983
+#: commands/typecmds.c:1924
 #, c-format
 msgid "You must specify an operator class for the range type or define a default operator class for the subtype."
 msgstr "Debe especificar una clase de operadores para el tipo de rango, o definir una clase de operadores por omisión para el subtipo."
 
-#: commands/typecmds.c:2014
+#: commands/typecmds.c:1955
 #, c-format
 msgid "range canonical function %s must return range type"
 msgstr "la función canónica %s del rango debe retornar tipo de rango"
 
-#: commands/typecmds.c:2020
+#: commands/typecmds.c:1961
 #, c-format
 msgid "range canonical function %s must be immutable"
 msgstr "la función canónica %s del rango debe ser inmutable"
 
-#: commands/typecmds.c:2056
+#: commands/typecmds.c:1997
 #, c-format
 msgid "range subtype diff function %s must return type %s"
 msgstr "la función «diff» de subtipo, %s, debe retornar tipo %s"
 
-#: commands/typecmds.c:2063
+#: commands/typecmds.c:2004
 #, c-format
 msgid "range subtype diff function %s must be immutable"
 msgstr "la función «diff» de subtipo, %s, debe ser inmutable"
 
-#: commands/typecmds.c:2090
+#: commands/typecmds.c:2031
 #, c-format
 msgid "pg_type array OID value not set when in binary upgrade mode"
 msgstr "el valor de OID de pg_type no se definió en modo de actualización binaria"
 
-#: commands/typecmds.c:2398
+#: commands/typecmds.c:2329
 #, c-format
 msgid "column \"%s\" of table \"%s\" contains null values"
 msgstr "la columna «%s» de la tabla «%s» contiene valores null"
 
-#: commands/typecmds.c:2511 commands/typecmds.c:2713
+#: commands/typecmds.c:2442 commands/typecmds.c:2644
 #, c-format
 msgid "constraint \"%s\" of domain \"%s\" does not exist"
 msgstr "no existe la restricción «%s» en el dominio «%s»"
 
-#: commands/typecmds.c:2515
+#: commands/typecmds.c:2446
 #, c-format
 msgid "constraint \"%s\" of domain \"%s\" does not exist, skipping"
 msgstr "no existe la restricción «%s» en el dominio «%s», omitiendo"
 
-#: commands/typecmds.c:2720
+#: commands/typecmds.c:2651
 #, c-format
 msgid "constraint \"%s\" of domain \"%s\" is not a check constraint"
 msgstr "la restricción «%s» en el dominio «%s» no es una restricción «check»"
 
-#: commands/typecmds.c:2826
+#: commands/typecmds.c:2757
 #, c-format
 msgid "column \"%s\" of table \"%s\" contains values that violate the new constraint"
 msgstr "la columna «%s» de la relación «%s» contiene valores que violan la nueva restricción"
 
-#: commands/typecmds.c:3055 commands/typecmds.c:3253 commands/typecmds.c:3335
-#: commands/typecmds.c:3522
+#: commands/typecmds.c:2986 commands/typecmds.c:3184 commands/typecmds.c:3266
+#: commands/typecmds.c:3453
 #, c-format
 msgid "%s is not a domain"
 msgstr "%s no es un dominio"
 
-#: commands/typecmds.c:3087
+#: commands/typecmds.c:3018
 #, c-format
 msgid "constraint \"%s\" for domain \"%s\" already exists"
 msgstr "el dominio «%2$s» ya contiene una restricción llamada «%1$s»"
 
-#: commands/typecmds.c:3138
+#: commands/typecmds.c:3069
 #, c-format
 msgid "cannot use table references in domain check constraint"
 msgstr "no se pueden usar referencias a tablas en restricción «check» para un dominio"
 
-#: commands/typecmds.c:3265 commands/typecmds.c:3347 commands/typecmds.c:3639
+#: commands/typecmds.c:3196 commands/typecmds.c:3278 commands/typecmds.c:3570
 #, c-format
 msgid "%s is a table's row type"
 msgstr "%s es el tipo de registro de una tabla"
 
-#: commands/typecmds.c:3267 commands/typecmds.c:3349 commands/typecmds.c:3641
+#: commands/typecmds.c:3198 commands/typecmds.c:3280 commands/typecmds.c:3572
 #, c-format
 msgid "Use ALTER TABLE instead."
 msgstr "Considere usar ALTER TABLE."
 
-#: commands/typecmds.c:3274 commands/typecmds.c:3356 commands/typecmds.c:3554
+#: commands/typecmds.c:3205 commands/typecmds.c:3287 commands/typecmds.c:3485
 #, c-format
 msgid "cannot alter array type %s"
 msgstr "no se puede alterar el tipo de array «%s»"
 
-#: commands/typecmds.c:3276 commands/typecmds.c:3358 commands/typecmds.c:3556
+#: commands/typecmds.c:3207 commands/typecmds.c:3289 commands/typecmds.c:3487
 #, c-format
 msgid "You can alter type %s, which will alter the array type as well."
 msgstr "Puede alterar el tipo %s, lo cual alterará el tipo de array también."
 
-#: commands/typecmds.c:3624
+#: commands/typecmds.c:3555
 #, c-format
 msgid "type \"%s\" already exists in schema \"%s\""
 msgstr "ya existe un tipo llamado «%s» en el esquema «%s»"
 
+#: commands/typecmds.c:3723
+#, fuzzy, c-format
+#| msgid "cannot cast type %s to %s"
+msgid "cannot change type's storage to PLAIN"
+msgstr "no se puede convertir el tipo %s a %s"
+
+#: commands/typecmds.c:3804
+#, fuzzy, c-format
+#| msgid "operator attribute \"%s\" cannot be changed"
+msgid "type attribute \"%s\" cannot be changed"
+msgstr "el atributo de operador «%s» no puede ser cambiado"
+
+#: commands/typecmds.c:3822
+#, fuzzy, c-format
+#| msgid "must be superuser to create a base type"
+msgid "must be superuser to alter a type"
+msgstr "debe ser superusuario para crear un tipo base"
+
+#: commands/typecmds.c:3843 commands/typecmds.c:3853
+#, fuzzy, c-format
+#| msgid "\"%s\" is not a type"
+msgid "%s is not a base type"
+msgstr "«%s» no es un tipo"
+
 #: commands/user.c:140
 #, c-format
 msgid "SYSID can no longer be specified"
@@ -10744,7 +11112,7 @@ msgstr "debe ser superusuario para crear superusuarios"
 msgid "must be superuser to create replication users"
 msgstr "debe ser superusuario para crear usuarios de replicación"
 
-#: commands/user.c:308 commands/user.c:723
+#: commands/user.c:308 commands/user.c:734
 #, c-format
 msgid "must be superuser to change bypassrls attribute"
 msgstr "debe ser superusuario para cambiar el atributo bypassrls"
@@ -10754,23 +11122,23 @@ msgstr "debe ser superusuario para cambiar el atributo bypassrls"
 msgid "permission denied to create role"
 msgstr "se ha denegado el permiso para crear el rol"
 
-#: commands/user.c:325 commands/user.c:1213 commands/user.c:1220 gram.y:14896
-#: gram.y:14934 utils/adt/acl.c:5342 utils/adt/acl.c:5348
+#: commands/user.c:325 commands/user.c:1224 commands/user.c:1231
+#: utils/adt/acl.c:5327 utils/adt/acl.c:5333 gram.y:15143 gram.y:15181
 #, c-format
 msgid "role name \"%s\" is reserved"
 msgstr "el nombre de rol «%s» está reservado"
 
-#: commands/user.c:327 commands/user.c:1215 commands/user.c:1222
+#: commands/user.c:327 commands/user.c:1226 commands/user.c:1233
 #, c-format
 msgid "Role names starting with \"pg_\" are reserved."
 msgstr "Los nombres de rol que empiezan con «pg_» están reservados."
 
-#: commands/user.c:348 commands/user.c:1237
+#: commands/user.c:348 commands/user.c:1248
 #, c-format
 msgid "role \"%s\" already exists"
 msgstr "el rol «%s» ya existe"
 
-#: commands/user.c:414 commands/user.c:832
+#: commands/user.c:414 commands/user.c:843
 #, c-format
 msgid "empty string is not a valid password, clearing password"
 msgstr "la cadena vacía no es una contraseña válida, limpiando la contraseña"
@@ -10780,215 +11148,232 @@ msgstr "la cadena vacía no es una contraseña válida, limpiando la contraseña
 msgid "pg_authid OID value not set when in binary upgrade mode"
 msgstr "el valor de OID de pg_authid no se definió en modo de actualización binaria"
 
-#: commands/user.c:709 commands/user.c:933 commands/user.c:1476
-#: commands/user.c:1620
+#: commands/user.c:720 commands/user.c:944 commands/user.c:1485
+#: commands/user.c:1627
 #, c-format
 msgid "must be superuser to alter superusers"
 msgstr "debe ser superusuario para alterar superusuarios"
 
-#: commands/user.c:716
+#: commands/user.c:727
 #, c-format
 msgid "must be superuser to alter replication users"
 msgstr "debe ser superusuario para alterar usuarios de replicación"
 
-#: commands/user.c:739 commands/user.c:940
+#: commands/user.c:750 commands/user.c:951
 #, c-format
 msgid "permission denied"
 msgstr "permiso denegado"
 
-#: commands/user.c:970
+#: commands/user.c:981
 #, c-format
 msgid "must be superuser to alter settings globally"
 msgstr "debe ser superusuario para alterar parámetros globalmente"
 
-#: commands/user.c:992
+#: commands/user.c:1003
 #, c-format
 msgid "permission denied to drop role"
 msgstr "se ha denegado el permiso para eliminar el rol"
 
-#: commands/user.c:1017
+#: commands/user.c:1028
 #, c-format
 msgid "cannot use special role specifier in DROP ROLE"
 msgstr "no se puede usar un especificador especial de rol en DROP ROLE"
 
-#: commands/user.c:1027 commands/user.c:1184 commands/variable.c:770
-#: commands/variable.c:844 utils/adt/acl.c:5199 utils/adt/acl.c:5246
-#: utils/adt/acl.c:5274 utils/adt/acl.c:5292 utils/init/miscinit.c:607
+#: commands/user.c:1038 commands/user.c:1195 commands/variable.c:770
+#: commands/variable.c:844 utils/adt/acl.c:5184 utils/adt/acl.c:5231
+#: utils/adt/acl.c:5259 utils/adt/acl.c:5277 utils/init/miscinit.c:675
 #, c-format
 msgid "role \"%s\" does not exist"
 msgstr "no existe el rol «%s»"
 
-#: commands/user.c:1032
+#: commands/user.c:1043
 #, c-format
 msgid "role \"%s\" does not exist, skipping"
 msgstr "el rol «%s» no existe, omitiendo"
 
-#: commands/user.c:1045 commands/user.c:1049
+#: commands/user.c:1056 commands/user.c:1060
 #, c-format
 msgid "current user cannot be dropped"
 msgstr "el usuario activo no puede ser eliminado"
 
-#: commands/user.c:1053
+#: commands/user.c:1064
 #, c-format
 msgid "session user cannot be dropped"
 msgstr "no se puede eliminar un usuario de la sesión"
 
-#: commands/user.c:1063
+#: commands/user.c:1074
 #, c-format
 msgid "must be superuser to drop superusers"
 msgstr "debe ser superusuario para eliminar superusuarios"
 
-#: commands/user.c:1079
+#: commands/user.c:1090
 #, c-format
 msgid "role \"%s\" cannot be dropped because some objects depend on it"
 msgstr "no se puede eliminar el rol «%s» porque otros objetos dependen de él"
 
-#: commands/user.c:1200
+#: commands/user.c:1211
 #, c-format
 msgid "session user cannot be renamed"
 msgstr "no se puede cambiar el nombre a un usuario de la sesión"
 
-#: commands/user.c:1204
+#: commands/user.c:1215
 #, c-format
 msgid "current user cannot be renamed"
 msgstr "no se puede cambiar el nombre al usuario activo"
 
-#: commands/user.c:1247
+#: commands/user.c:1258
 #, c-format
 msgid "must be superuser to rename superusers"
 msgstr "debe ser superusuario para cambiar el nombre a superusuarios"
 
-#: commands/user.c:1254
+#: commands/user.c:1265
 #, c-format
 msgid "permission denied to rename role"
 msgstr "se ha denegado el permiso para cambiar el nombre al rol"
 
-#: commands/user.c:1275
+#: commands/user.c:1286
 #, c-format
 msgid "MD5 password cleared because of role rename"
 msgstr "la contraseña MD5 fue borrada debido al cambio de nombre del rol"
 
-#: commands/user.c:1335
+#: commands/user.c:1346
 #, c-format
 msgid "column names cannot be included in GRANT/REVOKE ROLE"
 msgstr "los nombres de columna no pueden ser incluidos en GRANT/REVOKE ROLE"
 
-#: commands/user.c:1373
+#: commands/user.c:1384
 #, c-format
 msgid "permission denied to drop objects"
 msgstr "se ha denegado el permiso para eliminar objetos"
 
-#: commands/user.c:1400 commands/user.c:1409
+#: commands/user.c:1411 commands/user.c:1420
 #, c-format
 msgid "permission denied to reassign objects"
 msgstr "se ha denegado el permiso para reasignar objetos"
 
-#: commands/user.c:1484 commands/user.c:1628
+#: commands/user.c:1493 commands/user.c:1635
 #, c-format
 msgid "must have admin option on role \"%s\""
 msgstr "debe tener opción de admin en rol «%s»"
 
-#: commands/user.c:1501
+#: commands/user.c:1510
 #, c-format
 msgid "must be superuser to set grantor"
 msgstr "debe ser superusuario para especificar el cedente (grantor)"
 
-#: commands/user.c:1526
+#: commands/user.c:1535
 #, c-format
 msgid "role \"%s\" is a member of role \"%s\""
 msgstr "el rol «%s» es un miembro del rol «%s»"
 
-#: commands/user.c:1541
+#: commands/user.c:1550
 #, c-format
 msgid "role \"%s\" is already a member of role \"%s\""
 msgstr "el rol «%s» ya es un miembro del rol «%s»"
 
-#: commands/user.c:1650
+#: commands/user.c:1657
 #, c-format
 msgid "role \"%s\" is not a member of role \"%s\""
 msgstr "el rol «%s» no es un miembro del rol «%s»"
 
-#: commands/vacuum.c:116
+#: commands/vacuum.c:129
 #, c-format
 msgid "unrecognized ANALYZE option \"%s\""
 msgstr "opción de ANALYZE «%s» no reconocida"
 
-#: commands/vacuum.c:135
+#: commands/vacuum.c:151
+#, fuzzy, c-format
+#| msgid "-X requires a power of two value between 1 MB and 1 GB"
+msgid "parallel option requires a value between 0 and %d"
+msgstr "-X require un valor potencia de dos entre 1 MB y 1 GB"
+
+#: commands/vacuum.c:163
+#, fuzzy, c-format
+#| msgid "remainder for hash partition must be a non-negative integer"
+msgid "parallel vacuum degree must be between 0 and %d"
+msgstr "remanente en partición hash debe ser un entero no negativo"
+
+#: commands/vacuum.c:180
 #, c-format
 msgid "unrecognized VACUUM option \"%s\""
 msgstr "opción de VACUUM «%s» no reconocida"
 
-#: commands/vacuum.c:169
+#: commands/vacuum.c:203
+#, c-format
+msgid "VACUUM FULL cannot be performed in parallel"
+msgstr ""
+
+#: commands/vacuum.c:219
 #, c-format
 msgid "ANALYZE option must be specified when a column list is provided"
 msgstr "la opción ANALYZE debe especificarse cuando se provee una lista de columnas"
 
-#: commands/vacuum.c:259
+#: commands/vacuum.c:309
 #, c-format
 msgid "%s cannot be executed from VACUUM or ANALYZE"
 msgstr "%s no puede ejecutarse desde VACUUM o ANALYZE"
 
-#: commands/vacuum.c:269
+#: commands/vacuum.c:319
 #, c-format
 msgid "VACUUM option DISABLE_PAGE_SKIPPING cannot be used with FULL"
 msgstr "la opción DISABLE_PAGE_SKIPPING de VACUUM no puede usarse con FULL"
 
-#: commands/vacuum.c:511
+#: commands/vacuum.c:560
 #, c-format
 msgid "skipping \"%s\" --- only superuser can vacuum it"
 msgstr "omitiendo «%s»: sólo un superusuario puede aplicarle VACUUM"
 
-#: commands/vacuum.c:515
+#: commands/vacuum.c:564
 #, c-format
 msgid "skipping \"%s\" --- only superuser or database owner can vacuum it"
 msgstr "omitiendo «%s»: sólo un superusuario o el dueño de la base de datos puede aplicarle VACUUM"
 
-#: commands/vacuum.c:519
+#: commands/vacuum.c:568
 #, c-format
 msgid "skipping \"%s\" --- only table or database owner can vacuum it"
 msgstr "omitiendo «%s»: sólo su dueño o el de la base de datos puede aplicarle VACUUM"
 
-#: commands/vacuum.c:534
+#: commands/vacuum.c:583
 #, c-format
 msgid "skipping \"%s\" --- only superuser can analyze it"
 msgstr "omitiendo «%s»: sólo un superusuario puede analizarla"
 
-#: commands/vacuum.c:538
+#: commands/vacuum.c:587
 #, c-format
 msgid "skipping \"%s\" --- only superuser or database owner can analyze it"
 msgstr "omitiendo «%s»: sólo un superusuario o el dueño de la base de datos puede analizarla"
 
-#: commands/vacuum.c:542
+#: commands/vacuum.c:591
 #, c-format
 msgid "skipping \"%s\" --- only table or database owner can analyze it"
 msgstr "omitiendo «%s»: sólo su dueño o el de la base de datos puede analizarla"
 
-#: commands/vacuum.c:621 commands/vacuum.c:717
+#: commands/vacuum.c:670 commands/vacuum.c:766
 #, c-format
 msgid "skipping vacuum of \"%s\" --- lock not available"
 msgstr "omitiendo el vacuum de «%s»: el candado no está disponible"
 
-#: commands/vacuum.c:626
+#: commands/vacuum.c:675
 #, c-format
 msgid "skipping vacuum of \"%s\" --- relation no longer exists"
 msgstr "omitiendo el vacuum de «%s» --- la relación ya no existe"
 
-#: commands/vacuum.c:642 commands/vacuum.c:722
+#: commands/vacuum.c:691 commands/vacuum.c:771
 #, c-format
 msgid "skipping analyze of \"%s\" --- lock not available"
 msgstr "omitiendo analyze de «%s»: el candado no está disponible"
 
-#: commands/vacuum.c:647
+#: commands/vacuum.c:696
 #, c-format
 msgid "skipping analyze of \"%s\" --- relation no longer exists"
 msgstr "omitiendo analyze de «%s» --- la relación ya no existe"
 
-#: commands/vacuum.c:944
+#: commands/vacuum.c:994
 #, c-format
 msgid "oldest xmin is far in the past"
 msgstr "xmin más antiguo es demasiado antiguo"
 
-#: commands/vacuum.c:945
+#: commands/vacuum.c:995
 #, c-format
 msgid ""
 "Close open transactions soon to avoid wraparound problems.\n"
@@ -10997,32 +11382,32 @@ msgstr ""
 "Cierre transaciones abiertas pronto para impedir problemas por reciclaje de contadores.\n"
 "Puede que además necesite comprometer o abortar transacciones preparadas antiguas, o eliminar slots de replicación añejos."
 
-#: commands/vacuum.c:985
+#: commands/vacuum.c:1036
 #, c-format
 msgid "oldest multixact is far in the past"
 msgstr "multixact más antiguo es demasiado antiguo"
 
-#: commands/vacuum.c:986
+#: commands/vacuum.c:1037
 #, c-format
 msgid "Close open transactions with multixacts soon to avoid wraparound problems."
 msgstr "Cierre transacciones con multixact pronto para prevenir problemas por reciclaje del contador."
 
-#: commands/vacuum.c:1557
+#: commands/vacuum.c:1612
 #, c-format
 msgid "some databases have not been vacuumed in over 2 billion transactions"
 msgstr "algunas bases de datos no han tenido VACUUM en más de 2 mil millones de transacciones"
 
-#: commands/vacuum.c:1558
+#: commands/vacuum.c:1613
 #, c-format
 msgid "You might have already suffered transaction-wraparound data loss."
 msgstr "Puede haber sufrido ya problemas de pérdida de datos por reciclaje del contador de transacciones."
 
-#: commands/vacuum.c:1716
+#: commands/vacuum.c:1771
 #, c-format
 msgid "skipping \"%s\" --- cannot vacuum non-tables or special system tables"
 msgstr "omitiendo «%s»: no se puede aplicar VACUUM a objetos que no son tablas o a tablas especiales de sistema"
 
-#: commands/variable.c:165 utils/misc/guc.c:10923 utils/misc/guc.c:10985
+#: commands/variable.c:165 utils/misc/guc.c:11166 utils/misc/guc.c:11228
 #, c-format
 msgid "Unrecognized key word: \"%s\"."
 msgstr "Palabra clave no reconocida: «%s»."
@@ -11082,7 +11467,7 @@ msgstr "SET TRANSACTION ISOLATION LEVEL debe ser llamado antes de cualquier cons
 msgid "SET TRANSACTION ISOLATION LEVEL must not be called in a subtransaction"
 msgstr "SET TRANSACTION ISOLATION LEVEL no debe ser llamado en una subtransacción"
 
-#: commands/variable.c:548 storage/lmgr/predicate.c:1626
+#: commands/variable.c:548 storage/lmgr/predicate.c:1623
 #, c-format
 msgid "cannot use serializable mode in a hot standby"
 msgstr "no se puede utilizar el modo serializable en un hot standby"
@@ -11122,57 +11507,52 @@ msgstr "no se puede cambiar «client_encoding» durante una operación paralela"
 msgid "permission denied to set role \"%s\""
 msgstr "se ha denegado el permiso para definir el rol «%s»"
 
-#: commands/view.c:54
-#, c-format
-msgid "invalid value for \"check_option\" option"
-msgstr "valor no válido para la opción «check_option»"
-
-#: commands/view.c:55
-#, c-format
-msgid "Valid values are \"local\" and \"cascaded\"."
-msgstr "Los valores aceptables son «local» y «cascaded»."
-
-#: commands/view.c:103
+#: commands/view.c:84
 #, c-format
 msgid "could not determine which collation to use for view column \"%s\""
 msgstr "no se pudo determinar el ordenamiento (collation) a usar para la columna «%s» de vista"
 
-#: commands/view.c:280 commands/view.c:291
+#: commands/view.c:265 commands/view.c:276
 #, c-format
 msgid "cannot drop columns from view"
 msgstr "no se pueden eliminar columnas de una vista"
 
-#: commands/view.c:296
+#: commands/view.c:281
 #, c-format
 msgid "cannot change name of view column \"%s\" to \"%s\""
 msgstr "no se puede cambiar el nombre de la columna «%s» de la vista a «%s»"
 
-#: commands/view.c:304
+#: commands/view.c:284
+#, c-format
+msgid "Use ALTER VIEW ... RENAME COLUMN ... to change name of view column instead."
+msgstr ""
+
+#: commands/view.c:290
 #, c-format
 msgid "cannot change data type of view column \"%s\" from %s to %s"
 msgstr "no se puede cambiar el tipo de dato de la columna «%s» de la vista de %s a %s"
 
-#: commands/view.c:451
+#: commands/view.c:441
 #, c-format
 msgid "views must not contain SELECT INTO"
 msgstr "una vista no puede tener SELECT INTO"
 
-#: commands/view.c:463
+#: commands/view.c:453
 #, c-format
 msgid "views must not contain data-modifying statements in WITH"
 msgstr "las vistas no deben contener sentencias que modifiquen datos en WITH"
 
-#: commands/view.c:533
+#: commands/view.c:523
 #, c-format
 msgid "CREATE VIEW specifies more column names than columns"
 msgstr "CREATE VIEW especifica más nombres de columna que columnas"
 
-#: commands/view.c:541
+#: commands/view.c:531
 #, c-format
 msgid "views cannot be unlogged because they do not have storage"
 msgstr "las vistas no pueden ser «unlogged» porque no tienen almacenamiento"
 
-#: commands/view.c:555
+#: commands/view.c:545
 #, c-format
 msgid "view \"%s\" will be a temporary view"
 msgstr "la vista «%s» será una vista temporal"
@@ -11208,125 +11588,125 @@ msgstr "el cursor «%s» no está posicionado en una fila"
 msgid "cursor \"%s\" is not a simply updatable scan of table \"%s\""
 msgstr "el cursor «%s» no es un recorrido simplemente actualizable de la tabla «%s»"
 
-#: executor/execCurrent.c:280 executor/execExprInterp.c:2312
+#: executor/execCurrent.c:280 executor/execExprInterp.c:2404
 #, c-format
 msgid "type of parameter %d (%s) does not match that when preparing the plan (%s)"
 msgstr "el tipo del parámetro %d (%s) no coincide aquel con que fue preparado el plan (%s)"
 
-#: executor/execCurrent.c:292 executor/execExprInterp.c:2324
+#: executor/execCurrent.c:292 executor/execExprInterp.c:2416
 #, c-format
 msgid "no value found for parameter %d"
 msgstr "no se encontró un valor para parámetro %d"
 
-#: executor/execExpr.c:857 parser/parse_agg.c:816
+#: executor/execExpr.c:859 parser/parse_agg.c:816
 #, c-format
 msgid "window function calls cannot be nested"
 msgstr "no se pueden anidar llamadas a funciones de ventana deslizante"
 
-#: executor/execExpr.c:1316
+#: executor/execExpr.c:1318
 #, c-format
 msgid "target type is not an array"
 msgstr "el tipo de destino no es un array"
 
-#: executor/execExpr.c:1649
+#: executor/execExpr.c:1651
 #, c-format
 msgid "ROW() column has type %s instead of type %s"
 msgstr "la columna de ROW() es de tipo %s en lugar de ser de tipo %s"
 
-#: executor/execExpr.c:2174 executor/execSRF.c:700 parser/parse_func.c:136
-#: parser/parse_func.c:650 parser/parse_func.c:1024
+#: executor/execExpr.c:2176 executor/execSRF.c:708 parser/parse_func.c:135
+#: parser/parse_func.c:646 parser/parse_func.c:1020
 #, c-format
 msgid "cannot pass more than %d argument to a function"
 msgid_plural "cannot pass more than %d arguments to a function"
 msgstr[0] "no se pueden pasar más de %d argumento a una función"
 msgstr[1] "no se pueden pasar más de %d argumentos a una función"
 
-#: executor/execExpr.c:2572 executor/execExpr.c:2578
-#: executor/execExprInterp.c:2641 utils/adt/arrayfuncs.c:261
-#: utils/adt/arrayfuncs.c:559 utils/adt/arrayfuncs.c:1301
-#: utils/adt/arrayfuncs.c:3347 utils/adt/arrayfuncs.c:5302
-#: utils/adt/arrayfuncs.c:5819
+#: executor/execExpr.c:2587 executor/execExpr.c:2593
+#: executor/execExprInterp.c:2730 utils/adt/arrayfuncs.c:262
+#: utils/adt/arrayfuncs.c:560 utils/adt/arrayfuncs.c:1302
+#: utils/adt/arrayfuncs.c:3348 utils/adt/arrayfuncs.c:5308
+#: utils/adt/arrayfuncs.c:5821
 #, c-format
 msgid "number of array dimensions (%d) exceeds the maximum allowed (%d)"
 msgstr "el número de dimensiones del array (%d) excede el máximo permitido (%d)"
 
-#: executor/execExprInterp.c:1862
+#: executor/execExprInterp.c:1894
 #, c-format
 msgid "attribute %d of type %s has been dropped"
 msgstr "El atributo %d de tipo %s ha sido eliminado"
 
-#: executor/execExprInterp.c:1868
+#: executor/execExprInterp.c:1900
 #, c-format
 msgid "attribute %d of type %s has wrong type"
 msgstr "el atributo %d del tipo %s tiene tipo erróneo"
 
-#: executor/execExprInterp.c:1870 executor/execExprInterp.c:2914
-#: executor/execExprInterp.c:2961
+#: executor/execExprInterp.c:1902 executor/execExprInterp.c:3002
+#: executor/execExprInterp.c:3049
 #, c-format
 msgid "Table has type %s, but query expects %s."
 msgstr "La tabla tiene tipo %s, pero la consulta esperaba %s."
 
-#: executor/execExprInterp.c:2402
+#: executor/execExprInterp.c:2494
 #, c-format
 msgid "WHERE CURRENT OF is not supported for this table type"
 msgstr "WHERE CURRENT OF no está soportado para este tipo de tabla"
 
-#: executor/execExprInterp.c:2619
+#: executor/execExprInterp.c:2708
 #, c-format
 msgid "cannot merge incompatible arrays"
 msgstr "no se puede mezclar arrays incompatibles"
 
-#: executor/execExprInterp.c:2620
+#: executor/execExprInterp.c:2709
 #, c-format
 msgid "Array with element type %s cannot be included in ARRAY construct with element type %s."
 msgstr "El array con tipo de elemento %s no puede ser incluido en una sentencia ARRAY con tipo de elemento %s."
 
-#: executor/execExprInterp.c:2661 executor/execExprInterp.c:2691
+#: executor/execExprInterp.c:2750 executor/execExprInterp.c:2780
 #, c-format
 msgid "multidimensional arrays must have array expressions with matching dimensions"
 msgstr "los arrays multidimensionales deben tener expresiones de arrays con dimensiones coincidentes"
 
-#: executor/execExprInterp.c:2913 executor/execExprInterp.c:2960
+#: executor/execExprInterp.c:3001 executor/execExprInterp.c:3048
 #, c-format
 msgid "attribute %d has wrong type"
 msgstr "el atributo %d tiene tipo erróneo"
 
-#: executor/execExprInterp.c:3070
+#: executor/execExprInterp.c:3158
 #, c-format
 msgid "array subscript in assignment must not be null"
 msgstr "subíndice de array en asignación no puede ser nulo"
 
-#: executor/execExprInterp.c:3503 utils/adt/domains.c:149
+#: executor/execExprInterp.c:3588 utils/adt/domains.c:149
 #, c-format
 msgid "domain %s does not allow null values"
 msgstr "el dominio %s no permite valores null"
 
-#: executor/execExprInterp.c:3518 utils/adt/domains.c:184
+#: executor/execExprInterp.c:3603 utils/adt/domains.c:184
 #, c-format
 msgid "value for domain %s violates check constraint \"%s\""
 msgstr "el valor para el dominio %s viola la restricción «check» «%s»"
 
-#: executor/execExprInterp.c:3889 executor/execExprInterp.c:3906
-#: executor/execExprInterp.c:4008 executor/nodeModifyTable.c:109
+#: executor/execExprInterp.c:3973 executor/execExprInterp.c:3990
+#: executor/execExprInterp.c:4091 executor/nodeModifyTable.c:109
 #: executor/nodeModifyTable.c:120 executor/nodeModifyTable.c:137
 #: executor/nodeModifyTable.c:145
 #, c-format
 msgid "table row type and query-specified row type do not match"
 msgstr "el tipo de registro de la tabla no coincide con el tipo de registro de la consulta"
 
-#: executor/execExprInterp.c:3890
+#: executor/execExprInterp.c:3974
 #, c-format
 msgid "Table row contains %d attribute, but query expects %d."
 msgid_plural "Table row contains %d attributes, but query expects %d."
 msgstr[0] "La fila de la tabla contiene %d atributo, pero la consulta esperaba %d."
 msgstr[1] "La fila de la tabla contiene %d atributos, pero la consulta esperaba %d."
 
-#: executor/execExprInterp.c:3907 executor/nodeModifyTable.c:121
+#: executor/execExprInterp.c:3991 executor/nodeModifyTable.c:121
 #, c-format
 msgid "Table has type %s at ordinal position %d, but query expects %s."
 msgstr "La tabla tiene tipo %s en posición ordinal %d, pero la consulta esperaba %s."
 
-#: executor/execExprInterp.c:4009 executor/execSRF.c:959
+#: executor/execExprInterp.c:4092 executor/execSRF.c:967
 #, c-format
 msgid "Physical storage mismatch on dropped attribute at ordinal position %d."
 msgstr "Discordancia de almacenamiento físico en atributo eliminado en la posición %d."
@@ -11376,32 +11756,38 @@ msgstr "no se puede cambiar la secuencia «%s»"
 msgid "cannot change TOAST relation \"%s\""
 msgstr "no se puede cambiar la relación TOAST «%s»"
 
-#: executor/execMain.c:1115 rewrite/rewriteHandler.c:2911
+#: executor/execMain.c:1115 rewrite/rewriteHandler.c:2934
+#: rewrite/rewriteHandler.c:3708
 #, c-format
 msgid "cannot insert into view \"%s\""
 msgstr "no se puede insertar en la vista «%s»"
 
-#: executor/execMain.c:1117 rewrite/rewriteHandler.c:2914
+#: executor/execMain.c:1117 rewrite/rewriteHandler.c:2937
+#: rewrite/rewriteHandler.c:3711
 #, c-format
 msgid "To enable inserting into the view, provide an INSTEAD OF INSERT trigger or an unconditional ON INSERT DO INSTEAD rule."
 msgstr "Para posibilitar las inserciones en la vista, provea un disparador INSTEAD OF INSERT o una regla incodicional ON INSERT DO INSTEAD."
 
-#: executor/execMain.c:1123 rewrite/rewriteHandler.c:2919
+#: executor/execMain.c:1123 rewrite/rewriteHandler.c:2942
+#: rewrite/rewriteHandler.c:3716
 #, c-format
 msgid "cannot update view \"%s\""
 msgstr "no se puede actualizar la vista «%s»"
 
-#: executor/execMain.c:1125 rewrite/rewriteHandler.c:2922
+#: executor/execMain.c:1125 rewrite/rewriteHandler.c:2945
+#: rewrite/rewriteHandler.c:3719
 #, c-format
 msgid "To enable updating the view, provide an INSTEAD OF UPDATE trigger or an unconditional ON UPDATE DO INSTEAD rule."
 msgstr "Para posibilitar las actualizaciones en la vista, provea un disparador INSTEAD OF UPDATE o una regla incondicional ON UPDATE DO INSTEAD."
 
-#: executor/execMain.c:1131 rewrite/rewriteHandler.c:2927
+#: executor/execMain.c:1131 rewrite/rewriteHandler.c:2950
+#: rewrite/rewriteHandler.c:3724
 #, c-format
 msgid "cannot delete from view \"%s\""
 msgstr "no se puede eliminar de la vista «%s»"
 
-#: executor/execMain.c:1133 rewrite/rewriteHandler.c:2930
+#: executor/execMain.c:1133 rewrite/rewriteHandler.c:2953
+#: rewrite/rewriteHandler.c:3727
 #, c-format
 msgid "To enable deleting from the view, provide an INSTEAD OF DELETE trigger or an unconditional ON DELETE DO INSTEAD rule."
 msgstr "Para posibilitar las eliminaciones en la vista, provea un disparador INSTEAD OF DELETE o una regla incondicional ON DELETE DO INSTEAD."
@@ -11466,7 +11852,7 @@ msgstr "no se puede bloquear registros en la vista «%s»"
 msgid "cannot lock rows in materialized view \"%s\""
 msgstr "no se puede bloquear registros en la vista materializada «%s»"
 
-#: executor/execMain.c:1257 executor/execMain.c:2638
+#: executor/execMain.c:1257 executor/execMain.c:2627
 #: executor/nodeLockRows.c:132
 #, c-format
 msgid "cannot lock rows in foreign table \"%s\""
@@ -11477,48 +11863,49 @@ msgstr "no se puede bloquear registros en la tabla foránea «%s»"
 msgid "cannot lock rows in relation \"%s\""
 msgstr "no se puede bloquear registros en la tabla «%s»"
 
-#: executor/execMain.c:1889
+#: executor/execMain.c:1879
 #, c-format
 msgid "new row for relation \"%s\" violates partition constraint"
 msgstr "el nuevo registro para la relación «%s» viola la restricción de partición"
 
-#: executor/execMain.c:1891 executor/execMain.c:1973 executor/execMain.c:2022
-#: executor/execMain.c:2131
+#: executor/execMain.c:1881 executor/execMain.c:1964 executor/execMain.c:2012
+#: executor/execMain.c:2120
 #, c-format
 msgid "Failing row contains %s."
 msgstr "La fila que falla contiene %s."
 
-#: executor/execMain.c:1971
-#, c-format
-msgid "null value in column \"%s\" violates not-null constraint"
+#: executor/execMain.c:1961
+#, fuzzy, c-format
+#| msgid "null value in column \"%s\" violates not-null constraint"
+msgid "null value in column \"%s\" of relation \"%s\" violates not-null constraint"
 msgstr "el valor null para la columna «%s» viola la restricción not null"
 
-#: executor/execMain.c:2020
+#: executor/execMain.c:2010
 #, c-format
 msgid "new row for relation \"%s\" violates check constraint \"%s\""
 msgstr "el nuevo registro para la relación «%s» viola la restricción «check» «%s»"
 
-#: executor/execMain.c:2129
+#: executor/execMain.c:2118
 #, c-format
 msgid "new row violates check option for view \"%s\""
 msgstr "el nuevo registro para la vista «%s» viola la opción check"
 
-#: executor/execMain.c:2139
+#: executor/execMain.c:2128
 #, c-format
 msgid "new row violates row-level security policy \"%s\" for table \"%s\""
 msgstr "el nuevo registro viola la política de seguridad de registros «%s» para la tabla «%s»"
 
-#: executor/execMain.c:2144
+#: executor/execMain.c:2133
 #, c-format
 msgid "new row violates row-level security policy for table \"%s\""
 msgstr "el nuevo registro viola la política de seguridad de registros para la tabla «%s»"
 
-#: executor/execMain.c:2151
+#: executor/execMain.c:2140
 #, c-format
 msgid "new row violates row-level security policy \"%s\" (USING expression) for table \"%s\""
 msgstr "el nuevo registro viola la política de seguridad de registros «%s» (expresión USING) para la tabla «%s»"
 
-#: executor/execMain.c:2156
+#: executor/execMain.c:2145
 #, c-format
 msgid "new row violates row-level security policy (USING expression) for table \"%s\""
 msgstr "el nuevo registro viola la política de seguridad de registros (expresión USING) para la tabla «%s»"
@@ -11533,227 +11920,221 @@ msgstr "no se encontró una partición de «%s» para el registro"
 msgid "Partition key of the failing row contains %s."
 msgstr "La llave de particionamiento de la fila que falla contiene %s."
 
-#: executor/execReplication.c:195 executor/execReplication.c:359
+#: executor/execReplication.c:196 executor/execReplication.c:373
 #, c-format
 msgid "tuple to be locked was already moved to another partition due to concurrent update, retrying"
 msgstr "el registro a ser bloqueado ya fue movido a otra partición debido a un update concurrente, reintentando"
 
-#: executor/execReplication.c:199 executor/execReplication.c:363
+#: executor/execReplication.c:200 executor/execReplication.c:377
 #, c-format
 msgid "concurrent update, retrying"
 msgstr "actualización simultánea, reintentando"
 
-#: executor/execReplication.c:205 executor/execReplication.c:369
+#: executor/execReplication.c:206 executor/execReplication.c:383
 #, c-format
 msgid "concurrent delete, retrying"
 msgstr "eliminacón concurrente, reintentando"
 
-#: executor/execReplication.c:263 parser/parse_oper.c:228
+#: executor/execReplication.c:269 parser/parse_oper.c:228
 #: utils/adt/array_userfuncs.c:719 utils/adt/array_userfuncs.c:858
-#: utils/adt/arrayfuncs.c:3625 utils/adt/arrayfuncs.c:4140
-#: utils/adt/arrayfuncs.c:6130 utils/adt/rowtypes.c:1180
+#: utils/adt/arrayfuncs.c:3626 utils/adt/arrayfuncs.c:4146
+#: utils/adt/arrayfuncs.c:6132 utils/adt/rowtypes.c:1182
 #, c-format
 msgid "could not identify an equality operator for type %s"
 msgstr "no se pudo identificar un operador de igualdad para el tipo %s"
 
-#: executor/execReplication.c:572
+#: executor/execReplication.c:586
 #, c-format
 msgid "cannot update table \"%s\" because it does not have a replica identity and publishes updates"
 msgstr "no se puede actualizar la tabla «%s» porque no tiene identidad de replicación y publica updates"
 
-#: executor/execReplication.c:574
+#: executor/execReplication.c:588
 #, c-format
 msgid "To enable updating the table, set REPLICA IDENTITY using ALTER TABLE."
 msgstr "Para habilitar la actualización de la tabla, configure REPLICA IDENTITY utilizando ALTER TABLE."
 
-#: executor/execReplication.c:578
+#: executor/execReplication.c:592
 #, c-format
 msgid "cannot delete from table \"%s\" because it does not have a replica identity and publishes deletes"
 msgstr "no se puede eliminar de la tabla «%s» porque no tiene una identidad de replicación y publica deletes"
 
-#: executor/execReplication.c:580
+#: executor/execReplication.c:594
 #, c-format
 msgid "To enable deleting from the table, set REPLICA IDENTITY using ALTER TABLE."
 msgstr "para habilitar la eliminación en la tabla, configure REPLICA IDENTITY utilizando ALTER TABLE."
 
-#: executor/execReplication.c:600 executor/execReplication.c:607
-#: executor/execReplication.c:615
+#: executor/execReplication.c:613 executor/execReplication.c:621
 #, c-format
 msgid "cannot use relation \"%s.%s\" as logical replication target"
 msgstr "no se puede usar la relación «%s.%s» como destino de replicación lógica"
 
-#: executor/execReplication.c:602
-#, c-format
-msgid "\"%s.%s\" is a partitioned table."
-msgstr "«%s.%s» es un índice particionado."
-
-#: executor/execReplication.c:609
+#: executor/execReplication.c:615
 #, c-format
 msgid "\"%s.%s\" is a foreign table."
 msgstr "«%s.%s» es una tabla foránea."
 
-#: executor/execReplication.c:617
+#: executor/execReplication.c:623
 #, c-format
 msgid "\"%s.%s\" is not a table."
 msgstr "«%s.%s» no es una tabla."
 
-#: executor/execSRF.c:310
+#: executor/execSRF.c:315
 #, c-format
 msgid "rows returned by function are not all of the same row type"
 msgstr "las filas retornadas por la función no tienen todas el mismo tipo de registro"
 
-#: executor/execSRF.c:358 executor/execSRF.c:649
+#: executor/execSRF.c:363 executor/execSRF.c:657
 #, c-format
 msgid "table-function protocol for materialize mode was not followed"
 msgstr "no se siguió el protocolo de función tabular para el modo de materialización"
 
-#: executor/execSRF.c:365 executor/execSRF.c:667
+#: executor/execSRF.c:370 executor/execSRF.c:675
 #, c-format
 msgid "unrecognized table-function returnMode: %d"
 msgstr "modo de retorno de la función tabular no es reconocido: %d"
 
-#: executor/execSRF.c:876
+#: executor/execSRF.c:884
 #, c-format
 msgid "function returning setof record called in context that cannot accept type record"
 msgstr "se llamó una función que retorna «setof record» en un contexto que no puede aceptar el tipo record"
 
-#: executor/execSRF.c:932 executor/execSRF.c:948 executor/execSRF.c:958
+#: executor/execSRF.c:940 executor/execSRF.c:956 executor/execSRF.c:966
 #, c-format
 msgid "function return row and query-specified return row do not match"
 msgstr "la fila de retorno especificada en la consulta no coincide con fila de retorno de la función"
 
-#: executor/execSRF.c:933
+#: executor/execSRF.c:941
 #, c-format
 msgid "Returned row contains %d attribute, but query expects %d."
 msgid_plural "Returned row contains %d attributes, but query expects %d."
 msgstr[0] "Fila retornada contiene %d atributo, pero la consulta esperaba %d."
 msgstr[1] "Fila retornada contiene %d atributos, pero la consulta esperaba %d."
 
-#: executor/execSRF.c:949
+#: executor/execSRF.c:957
 #, c-format
 msgid "Returned type %s at ordinal position %d, but query expects %s."
 msgstr "Tipo retornado %s en posición ordinal %d, pero la consulta esperaba %s."
 
-#: executor/execUtils.c:710
+#: executor/execUtils.c:750
 #, c-format
 msgid "materialized view \"%s\" has not been populated"
 msgstr "la vista materializada «%s» no ha sido poblada"
 
-#: executor/execUtils.c:712
+#: executor/execUtils.c:752
 #, c-format
 msgid "Use the REFRESH MATERIALIZED VIEW command."
 msgstr "Use la orden REFRESH MATERIALIZED VIEW."
 
-#: executor/functions.c:225
+#: executor/functions.c:231
 #, c-format
 msgid "could not determine actual type of argument declared %s"
 msgstr "no se pudo determinar el tipo de argumento declarado %s"
 
-#: executor/functions.c:521
+#: executor/functions.c:528
 #, c-format
 msgid "cannot COPY to/from client in a SQL function"
 msgstr "no se puede ejecutar COPY desde/a un cliente en una función SQL"
 
 #. translator: %s is a SQL statement name
-#: executor/functions.c:527
+#: executor/functions.c:534
 #, c-format
 msgid "%s is not allowed in a SQL function"
 msgstr "%s no está permitido en una función SQL"
 
 #. translator: %s is a SQL statement name
-#: executor/functions.c:535 executor/spi.c:1474 executor/spi.c:2262
+#: executor/functions.c:542 executor/spi.c:1471 executor/spi.c:2257
 #, c-format
 msgid "%s is not allowed in a non-volatile function"
 msgstr "%s no está permitido en una función no-«volatile»"
 
-#: executor/functions.c:656
-#, c-format
-msgid "could not determine actual result type for function declared to return type %s"
-msgstr "no se pudo determinar el tipo de resultado para función declarada retornando tipo %s"
-
-#: executor/functions.c:1407
+#: executor/functions.c:1430
 #, c-format
 msgid "SQL function \"%s\" statement %d"
 msgstr "función SQL «%s» en la sentencia %d"
 
-#: executor/functions.c:1433
+#: executor/functions.c:1456
 #, c-format
 msgid "SQL function \"%s\" during startup"
 msgstr "función SQL «%s» durante el inicio"
 
-#: executor/functions.c:1526
+#: executor/functions.c:1549
 #, c-format
 msgid "calling procedures with output arguments is not supported in SQL functions"
 msgstr "no está permitido invocar procedimientos con arguments de salida en funciones SQL"
 
-#: executor/functions.c:1646 executor/functions.c:1679
-#: executor/functions.c:1691 executor/functions.c:1826
-#: executor/functions.c:1859 executor/functions.c:1889
+#: executor/functions.c:1671 executor/functions.c:1708
+#: executor/functions.c:1722 executor/functions.c:1812
+#: executor/functions.c:1845 executor/functions.c:1859
 #, c-format
 msgid "return type mismatch in function declared to return %s"
 msgstr "el tipo de retorno de función declarada para retornar %s no concuerda"
 
-#: executor/functions.c:1648
+#: executor/functions.c:1673
 #, c-format
 msgid "Function's final statement must be SELECT or INSERT/UPDATE/DELETE RETURNING."
 msgstr "La sentencia final de la función debe ser un SELECT o INSERT/UPDATE/DELETE RETURNING."
 
-#: executor/functions.c:1681
+#: executor/functions.c:1710
 #, c-format
 msgid "Final statement must return exactly one column."
 msgstr "La sentencia final debe retornar exactamente una columna."
 
-#: executor/functions.c:1693
+#: executor/functions.c:1724
 #, c-format
 msgid "Actual return type is %s."
 msgstr "El verdadero tipo de retorno es %s."
 
-#: executor/functions.c:1828
+#: executor/functions.c:1814
 #, c-format
 msgid "Final statement returns too many columns."
 msgstr "La sentencia final retorna demasiadas columnas."
 
-#: executor/functions.c:1861
+#: executor/functions.c:1847
 #, c-format
 msgid "Final statement returns %s instead of %s at column %d."
 msgstr "La sentencia final retorna %s en lugar de %s en la columna %d."
 
-#: executor/functions.c:1891
+#: executor/functions.c:1861
 #, c-format
 msgid "Final statement returns too few columns."
 msgstr "La sentencia final retorna muy pocas columnas."
 
-#: executor/functions.c:1945
+#: executor/functions.c:1889
 #, c-format
 msgid "return type %s is not supported for SQL functions"
 msgstr "el tipo de retorno %s no es soportado en funciones SQL"
 
-#: executor/nodeAgg.c:2855 parser/parse_agg.c:655 parser/parse_agg.c:685
+#: executor/nodeAgg.c:3012 executor/nodeAgg.c:3021 executor/nodeAgg.c:3033
+#, c-format
+msgid "unexpected EOF for tape %d: requested %zu bytes, read %zu bytes"
+msgstr ""
+
+#: executor/nodeAgg.c:3948 parser/parse_agg.c:655 parser/parse_agg.c:685
 #, c-format
 msgid "aggregate function calls cannot be nested"
 msgstr "no se pueden anidar llamadas a funciones de agregación"
 
-#: executor/nodeAgg.c:3060 executor/nodeWindowAgg.c:2835
+#: executor/nodeAgg.c:4156 executor/nodeWindowAgg.c:2836
 #, c-format
 msgid "aggregate %u needs to have compatible input type and transition type"
 msgstr "la función de agregación %u necesita tener tipos de entrada y transición compatibles"
 
-#: executor/nodeCustom.c:146 executor/nodeCustom.c:157
+#: executor/nodeCustom.c:145 executor/nodeCustom.c:156
 #, c-format
 msgid "custom scan \"%s\" does not support MarkPos"
 msgstr "el scan personalizado «%s» no soporta MarkPos"
 
-#: executor/nodeHashjoin.c:1027 executor/nodeHashjoin.c:1057
+#: executor/nodeHashjoin.c:1046 executor/nodeHashjoin.c:1076
 #, c-format
 msgid "could not rewind hash-join temporary file: %m"
 msgstr "falló la búsqueda en el archivo temporal de hash-join: %m"
 
-#: executor/nodeHashjoin.c:1216 executor/nodeHashjoin.c:1222
+#: executor/nodeHashjoin.c:1235 executor/nodeHashjoin.c:1241
 #, c-format
 msgid "could not write to hash-join temporary file: %m"
 msgstr "no se pudo escribir al archivo temporal de hash-join: %m"
 
-#: executor/nodeHashjoin.c:1263 executor/nodeHashjoin.c:1273
+#: executor/nodeHashjoin.c:1282 executor/nodeHashjoin.c:1292
 #, c-format
 msgid "could not read from hash-join temporary file: %m"
 msgstr "no se pudo leer el archivo temporal de hash-join: %m"
@@ -11763,12 +12144,12 @@ msgstr "no se pudo leer el archivo temporal de hash-join: %m"
 msgid "lossy distance functions are not supported in index-only scans"
 msgstr "no se permiten funciones de ventana deslizante en predicados de índice"
 
-#: executor/nodeLimit.c:264
+#: executor/nodeLimit.c:374
 #, c-format
 msgid "OFFSET must not be negative"
 msgstr "OFFSET no debe ser negativo"
 
-#: executor/nodeLimit.c:290
+#: executor/nodeLimit.c:400
 #, c-format
 msgid "LIMIT must not be negative"
 msgstr "LIMIT no debe ser negativo"
@@ -11798,27 +12179,27 @@ msgstr "La consulta entrega un valor para una columna eliminada en la posición
 msgid "Query has too few columns."
 msgstr "La consulta tiene muy pocas columnas."
 
-#: executor/nodeModifyTable.c:808 executor/nodeModifyTable.c:882
+#: executor/nodeModifyTable.c:839 executor/nodeModifyTable.c:913
 #, c-format
 msgid "tuple to be deleted was already modified by an operation triggered by the current command"
 msgstr "el registro a ser eliminado ya fue modificado por una operación disparada por la orden actual"
 
-#: executor/nodeModifyTable.c:1189
+#: executor/nodeModifyTable.c:1220
 #, c-format
 msgid "invalid ON UPDATE specification"
 msgstr "especificación ON UPDATE no válida"
 
-#: executor/nodeModifyTable.c:1190
+#: executor/nodeModifyTable.c:1221
 #, c-format
 msgid "The result tuple would appear in a different partition than the original tuple."
 msgstr "La tupla de resultado aparecería en una partición diferente que la tupla original."
 
-#: executor/nodeModifyTable.c:1561
+#: executor/nodeModifyTable.c:1592
 #, c-format
 msgid "ON CONFLICT DO UPDATE command cannot affect row a second time"
 msgstr "la orden ON CONFLICT DO UPDATE no puede afectar el registro una segunda vez"
 
-#: executor/nodeModifyTable.c:1562
+#: executor/nodeModifyTable.c:1593
 #, c-format
 msgid "Ensure that no rows proposed for insertion within the same command have duplicate constrained values."
 msgstr "Asegúrese de que ningún registro propuesto para inserción dentro de la misma orden tenga valores duplicados restringidos."
@@ -11833,63 +12214,63 @@ msgstr "el parámetro TABLESAMPLE no puede ser null"
 msgid "TABLESAMPLE REPEATABLE parameter cannot be null"
 msgstr "el parámetro TABLESAMPLE REPEATABLE no puede ser null"
 
-#: executor/nodeSubplan.c:347 executor/nodeSubplan.c:386
-#: executor/nodeSubplan.c:1152
+#: executor/nodeSubplan.c:346 executor/nodeSubplan.c:385
+#: executor/nodeSubplan.c:1151
 #, c-format
 msgid "more than one row returned by a subquery used as an expression"
 msgstr "una subconsulta utilizada como expresión retornó más de un registro"
 
-#: executor/nodeTableFuncscan.c:378
+#: executor/nodeTableFuncscan.c:375
 #, c-format
 msgid "namespace URI must not be null"
 msgstr "la URI del espacio de nombres no debe ser null"
 
-#: executor/nodeTableFuncscan.c:392
+#: executor/nodeTableFuncscan.c:389
 #, c-format
 msgid "row filter expression must not be null"
 msgstr "la expresión filtro de filas no debe ser null"
 
-#: executor/nodeTableFuncscan.c:418
+#: executor/nodeTableFuncscan.c:415
 #, c-format
 msgid "column filter expression must not be null"
 msgstr "la expresión filtro de columnas no debe ser null"
 
-#: executor/nodeTableFuncscan.c:419
+#: executor/nodeTableFuncscan.c:416
 #, c-format
 msgid "Filter for column \"%s\" is null."
 msgstr "El filtro para la columna «%s» es null."
 
-#: executor/nodeTableFuncscan.c:509
+#: executor/nodeTableFuncscan.c:506
 #, c-format
 msgid "null is not allowed in column \"%s\""
 msgstr "null no está permitido en la columna «%s»"
 
-#: executor/nodeWindowAgg.c:354
+#: executor/nodeWindowAgg.c:355
 #, c-format
 msgid "moving-aggregate transition function must not return null"
 msgstr "la función de transición de moving-aggregate no debe retornar valor nulo"
 
-#: executor/nodeWindowAgg.c:2057
+#: executor/nodeWindowAgg.c:2058
 #, c-format
 msgid "frame starting offset must not be null"
 msgstr "la posición inicial del marco no debe ser null"
 
-#: executor/nodeWindowAgg.c:2070
+#: executor/nodeWindowAgg.c:2071
 #, c-format
 msgid "frame starting offset must not be negative"
 msgstr "la posición inicial del marco no debe ser negativa"
 
-#: executor/nodeWindowAgg.c:2082
+#: executor/nodeWindowAgg.c:2083
 #, c-format
 msgid "frame ending offset must not be null"
 msgstr "la posición final del marco no debe ser null"
 
-#: executor/nodeWindowAgg.c:2095
+#: executor/nodeWindowAgg.c:2096
 #, c-format
 msgid "frame ending offset must not be negative"
 msgstr "la posición final del marco no debe ser negativa"
 
-#: executor/nodeWindowAgg.c:2751
+#: executor/nodeWindowAgg.c:2752
 #, c-format
 msgid "aggregate function %s does not support use as a window function"
 msgstr "la función de agregación %s no permite ser usada como función ventana"
@@ -11940,12 +12321,12 @@ msgstr "no se puede abrir consulta %s como cursor"
 msgid "DECLARE SCROLL CURSOR ... FOR UPDATE/SHARE is not supported"
 msgstr "DECLARE SCROLL CURSOR ... FOR UPDATE/SHARE no está soportado"
 
-#: executor/spi.c:1446 parser/analyze.c:2493
+#: executor/spi.c:1446 parser/analyze.c:2508
 #, c-format
 msgid "Scrollable cursors must be READ ONLY."
 msgstr "Los cursores declarados SCROLL deben ser READ ONLY."
 
-#: executor/spi.c:2570
+#: executor/spi.c:2560
 #, c-format
 msgid "SQL statement \"%s\""
 msgstr "sentencia SQL: «%s»"
@@ -11970,541 +12351,46 @@ msgstr "el nombre de opción «%s» no es válido"
 msgid "Valid options in this context are: %s"
 msgstr "Las opciones válidas en este contexto son: %s"
 
-#: gram.y:1030
-#, c-format
-msgid "UNENCRYPTED PASSWORD is no longer supported"
-msgstr "UNENCRYPTED PASSWORD ya no está soportado"
-
-#: gram.y:1031
-#, c-format
-msgid "Remove UNENCRYPTED to store the password in encrypted form instead."
-msgstr "Quite UNENCRYPTED para almacenar la contraseña en su lugar en forma cifrada."
-
-#: gram.y:1093
-#, c-format
-msgid "unrecognized role option \"%s\""
-msgstr "opción de rol «%s» no reconocida"
-
-#: gram.y:1340 gram.y:1355
-#, c-format
-msgid "CREATE SCHEMA IF NOT EXISTS cannot include schema elements"
-msgstr "CREATE SCHEMA IF NOT EXISTS no puede incluir elementos de esquema"
-
-#: gram.y:1501
-#, c-format
-msgid "current database cannot be changed"
-msgstr "no se puede cambiar la base de datos activa"
-
-#: gram.y:1625
-#, c-format
-msgid "time zone interval must be HOUR or HOUR TO MINUTE"
-msgstr "el intervalo de huso horario debe ser HOUR o HOUR TO MINUTE"
-
-#: gram.y:2143
-#, c-format
-msgid "column number must be in range from 1 to %d"
-msgstr "el número de columna debe estar en el rango de 1 a %d"
-
-#: gram.y:2675
-#, c-format
-msgid "sequence option \"%s\" not supported here"
-msgstr "la opción de secuencia «%s» no está soportado aquí"
-
-#: gram.y:2704
-#, c-format
-msgid "modulus for hash partition provided more than once"
-msgstr "el módulo para partición de hash fue especificado más de una vez"
-
-#: gram.y:2713
-#, c-format
-msgid "remainder for hash partition provided more than once"
-msgstr "el remanentde para partición de hash fue especificado más de una vez"
-
-#: gram.y:2720
-#, c-format
-msgid "unrecognized hash partition bound specification \"%s\""
-msgstr "especificación de borde de partición hash «%s» no reconocida"
-
-#: gram.y:2728
-#, c-format
-msgid "modulus for hash partition must be specified"
-msgstr "el módulo para una partición hash debe ser especificado"
-
-#: gram.y:2732
-#, c-format
-msgid "remainder for hash partition must be specified"
-msgstr "remanente en partición hash debe ser especificado"
-
-#: gram.y:2933 gram.y:2966
-#, c-format
-msgid "STDIN/STDOUT not allowed with PROGRAM"
-msgstr "STDIN/STDOUT no están permitidos con PROGRAM"
-
-#: gram.y:2939
-#, c-format
-msgid "WHERE clause not allowed with COPY TO"
-msgstr "la cláusula WHERE no está permitida con COPY TO"
-
-#: gram.y:3271 gram.y:3278 gram.y:11480 gram.y:11488
-#, c-format
-msgid "GLOBAL is deprecated in temporary table creation"
-msgstr "GLOBAL está obsoleto para la creación de tablas temporales"
-
-#: gram.y:3518
-#, c-format
-msgid "for a generated column, GENERATED ALWAYS must be specified"
-msgstr "para una columna generada, GENERATED ALWAYS debe ser especificado"
-
-#: gram.y:3784 utils/adt/ri_triggers.c:1999
-#, c-format
-msgid "MATCH PARTIAL not yet implemented"
-msgstr "MATCH PARTIAL no está implementada"
-
-#: gram.y:5274
-#, c-format
-msgid "unrecognized row security option \"%s\""
-msgstr "opción de seguridad de registro «%s» no reconocida"
-
-#: gram.y:5275
-#, c-format
-msgid "Only PERMISSIVE or RESTRICTIVE policies are supported currently."
-msgstr "sólo se admiten actualmente políticas PERMISSIVE o RESTRICTIVE."
-
-#: gram.y:5388
-msgid "duplicate trigger events specified"
-msgstr "se han especificado eventos de disparador duplicados"
-
-#: gram.y:5529 parser/parse_utilcmd.c:3435 parser/parse_utilcmd.c:3461
-#, c-format
-msgid "constraint declared INITIALLY DEFERRED must be DEFERRABLE"
-msgstr "una restricción declarada INITIALLY DEFERRED debe ser DEFERRABLE"
-
-#: gram.y:5536
-#, c-format
-msgid "conflicting constraint properties"
-msgstr "propiedades de restricción contradictorias"
-
-#: gram.y:5632
-#, c-format
-msgid "CREATE ASSERTION is not yet implemented"
-msgstr "CREATE ASSERTION no está implementado"
-
-#: gram.y:6015
-#, c-format
-msgid "RECHECK is no longer required"
-msgstr "RECHECK ya no es requerido"
-
-#: gram.y:6016
-#, c-format
-msgid "Update your data type."
-msgstr "Actualice su tipo de datos."
-
-#: gram.y:7753
-#, c-format
-msgid "aggregates cannot have output arguments"
-msgstr "las funciones de agregación no pueden tener argumentos de salida"
-
-#: gram.y:8145 utils/adt/regproc.c:691 utils/adt/regproc.c:732
-#, c-format
-msgid "missing argument"
-msgstr "falta un argumento"
-
-#: gram.y:8146 utils/adt/regproc.c:692 utils/adt/regproc.c:733
-#, c-format
-msgid "Use NONE to denote the missing argument of a unary operator."
-msgstr "Use NONE para denotar el argumento faltante de un operador unario."
-
-#: gram.y:10025 gram.y:10043
-#, c-format
-msgid "WITH CHECK OPTION not supported on recursive views"
-msgstr "WITH CHECK OPTION no está soportado con vistas recursivas"
-
-#: gram.y:11588
-#, c-format
-msgid "LIMIT #,# syntax is not supported"
-msgstr "la sintaxis LIMIT #,# no está soportada"
-
-#: gram.y:11589
-#, c-format
-msgid "Use separate LIMIT and OFFSET clauses."
-msgstr "Use cláusulas LIMIT y OFFSET separadas."
-
-#: gram.y:11887 gram.y:11912
-#, c-format
-msgid "VALUES in FROM must have an alias"
-msgstr "VALUES en FROM debe tener un alias"
-
-#: gram.y:11888 gram.y:11913
-#, c-format
-msgid "For example, FROM (VALUES ...) [AS] foo."
-msgstr "Por ejemplo, FROM (VALUES ...) [AS] foo."
-
-#: gram.y:11893 gram.y:11918
-#, c-format
-msgid "subquery in FROM must have an alias"
-msgstr "las subconsultas en FROM deben tener un alias"
-
-#: gram.y:11894 gram.y:11919
-#, c-format
-msgid "For example, FROM (SELECT ...) [AS] foo."
-msgstr "Por ejemplo, FROM (SELECT ...) [AS] foo."
-
-#: gram.y:12372
-#, c-format
-msgid "only one DEFAULT value is allowed"
-msgstr "Sólo se permite un valor DEFAULT"
-
-#: gram.y:12381
-#, c-format
-msgid "only one PATH value per column is allowed"
-msgstr "sólo se permite un valor de PATH por columna"
-
-#: gram.y:12390
-#, c-format
-msgid "conflicting or redundant NULL / NOT NULL declarations for column \"%s\""
-msgstr "declaraciones NULL/NOT NULL en conflicto o redundantes para la columna «%s»"
-
-#: gram.y:12399
-#, c-format
-msgid "unrecognized column option \"%s\""
-msgstr "opción de columna «%s» no reconocida"
-
-#: gram.y:12653
-#, c-format
-msgid "precision for type float must be at least 1 bit"
-msgstr "la precisión para el tipo float debe ser al menos 1 bit"
-
-#: gram.y:12662
-#, c-format
-msgid "precision for type float must be less than 54 bits"
-msgstr "la precisión para el tipo float debe ser menor de 54 bits"
-
-#: gram.y:13153
-#, c-format
-msgid "wrong number of parameters on left side of OVERLAPS expression"
-msgstr "el número de parámetros es incorrecto al lado izquierdo de la expresión OVERLAPS"
-
-#: gram.y:13158
-#, c-format
-msgid "wrong number of parameters on right side of OVERLAPS expression"
-msgstr "el número de parámetros es incorrecto al lado derecho de la expresión OVERLAPS"
-
-#: gram.y:13333
-#, c-format
-msgid "UNIQUE predicate is not yet implemented"
-msgstr "el predicado UNIQUE no está implementado"
-
-#: gram.y:13680
-#, c-format
-msgid "cannot use multiple ORDER BY clauses with WITHIN GROUP"
-msgstr "no se permiten múltiples cláusulas ORDER BY con WITHIN GROUP"
-
-#: gram.y:13685
-#, c-format
-msgid "cannot use DISTINCT with WITHIN GROUP"
-msgstr "no se permite DISTINCT con WITHIN GROUP"
-
-#: gram.y:13690
-#, c-format
-msgid "cannot use VARIADIC with WITHIN GROUP"
-msgstr "no se permite VARIADIC con WITHIN GROUP"
-
-#: gram.y:14148 gram.y:14171
-#, c-format
-msgid "frame start cannot be UNBOUNDED FOLLOWING"
-msgstr "el inicio de «frame» no puede ser UNBOUNDED FOLLOWING"
-
-#: gram.y:14153
-#, c-format
-msgid "frame starting from following row cannot end with current row"
-msgstr "el «frame» que se inicia desde la siguiente fila no puede terminar en la fila actual"
-
-#: gram.y:14176
-#, c-format
-msgid "frame end cannot be UNBOUNDED PRECEDING"
-msgstr "el fin de «frame» no puede ser UNBOUNDED PRECEDING"
-
-#: gram.y:14182
-#, c-format
-msgid "frame starting from current row cannot have preceding rows"
-msgstr "el «frame» que se inicia desde la fila actual no puede tener filas precedentes"
-
-#: gram.y:14189
-#, c-format
-msgid "frame starting from following row cannot have preceding rows"
-msgstr "el «frame» que se inicia desde la fila siguiente no puede tener filas precedentes"
-
-#: gram.y:14832
-#, c-format
-msgid "type modifier cannot have parameter name"
-msgstr "el modificador de tipo no puede tener nombre de parámetro"
-
-#: gram.y:14838
-#, c-format
-msgid "type modifier cannot have ORDER BY"
-msgstr "el modificador de tipo no puede tener ORDER BY"
-
-#: gram.y:14903 gram.y:14910
-#, c-format
-msgid "%s cannot be used as a role name here"
-msgstr "%s no puede ser usado como nombre de rol aquí"
-
-#: gram.y:15583 gram.y:15772
-msgid "improper use of \"*\""
-msgstr "uso impropio de «*»"
-
-#: gram.y:15735 gram.y:15752 tsearch/spell.c:954 tsearch/spell.c:971
-#: tsearch/spell.c:988 tsearch/spell.c:1005 tsearch/spell.c:1070
-#, c-format
-msgid "syntax error"
-msgstr "error de sintaxis"
-
-#: gram.y:15836
-#, c-format
-msgid "an ordered-set aggregate with a VARIADIC direct argument must have one VARIADIC aggregated argument of the same data type"
-msgstr "una agregación de conjunto-ordenado con un argumento directo VARIADIC debe tener al menos un argumento agregado VARIADIC del mismo tipo de datos"
-
-#: gram.y:15873
-#, c-format
-msgid "multiple ORDER BY clauses not allowed"
-msgstr "no se permiten múltiples cláusulas ORDER BY"
-
-#: gram.y:15884
-#, c-format
-msgid "multiple OFFSET clauses not allowed"
-msgstr "no se permiten múltiples cláusulas OFFSET"
-
-#: gram.y:15893
-#, c-format
-msgid "multiple LIMIT clauses not allowed"
-msgstr "no se permiten múltiples cláusulas LIMIT"
-
-#: gram.y:15902
-#, c-format
-msgid "multiple WITH clauses not allowed"
-msgstr "no se permiten múltiples cláusulas WITH"
-
-#: gram.y:16106
-#, c-format
-msgid "OUT and INOUT arguments aren't allowed in TABLE functions"
-msgstr "los argumentos OUT e INOUT no están permitidos en funciones TABLE"
-
-#: gram.y:16207
-#, c-format
-msgid "multiple COLLATE clauses not allowed"
-msgstr "no se permiten múltiples cláusulas COLLATE"
-
-#. translator: %s is CHECK, UNIQUE, or similar
-#: gram.y:16245 gram.y:16258
-#, c-format
-msgid "%s constraints cannot be marked DEFERRABLE"
-msgstr "las restricciones %s no pueden ser marcadas DEFERRABLE"
-
-#. translator: %s is CHECK, UNIQUE, or similar
-#: gram.y:16271
-#, c-format
-msgid "%s constraints cannot be marked NOT VALID"
-msgstr "las restricciones %s no pueden ser marcadas NOT VALID"
-
-#. translator: %s is CHECK, UNIQUE, or similar
-#: gram.y:16284
-#, c-format
-msgid "%s constraints cannot be marked NO INHERIT"
-msgstr "las restricciones %s no pueden ser marcadas NO INHERIT"
-
-#: guc-file.l:316
-#, c-format
-msgid "unrecognized configuration parameter \"%s\" in file \"%s\" line %u"
-msgstr "parámetro de configuración «%s» no reconocido en el archivo «%s» línea %u"
-
-#: guc-file.l:353 utils/misc/guc.c:6809 utils/misc/guc.c:7003
-#: utils/misc/guc.c:7093 utils/misc/guc.c:7183 utils/misc/guc.c:7291
-#: utils/misc/guc.c:7386
-#, c-format
-msgid "parameter \"%s\" cannot be changed without restarting the server"
-msgstr "el parámetro «%s» no se puede cambiar sin reiniciar el servidor"
-
-#: guc-file.l:389
-#, c-format
-msgid "parameter \"%s\" removed from configuration file, reset to default"
-msgstr "parámetro «%s» eliminado del archivo de configuración, volviendo al valor por omisión"
-
-#: guc-file.l:455
-#, c-format
-msgid "parameter \"%s\" changed to \"%s\""
-msgstr "el parámetro «%s» fue cambiado a «%s»"
-
-#: guc-file.l:497
-#, c-format
-msgid "configuration file \"%s\" contains errors"
-msgstr "el archivo de configuración «%s» contiene errores"
-
-#: guc-file.l:502
-#, c-format
-msgid "configuration file \"%s\" contains errors; unaffected changes were applied"
-msgstr "el archivo de configuración «%s» contiene errores; los cambios no afectados fueron aplicados"
-
-#: guc-file.l:507
-#, c-format
-msgid "configuration file \"%s\" contains errors; no changes were applied"
-msgstr "el archivo de configuración «%s» contiene errores; no se aplicó ningún cambio"
-
-#: guc-file.l:579
-#, c-format
-msgid "empty configuration file name: \"%s\""
-msgstr "nombre de archivo de configuración vacío: «%s»"
-
-#: guc-file.l:596
-#, c-format
-msgid "could not open configuration file \"%s\": maximum nesting depth exceeded"
-msgstr "no se pudo abrir el archivo de configuración «%s»: nivel de anidamiento máximo excedido"
-
-#: guc-file.l:616
-#, c-format
-msgid "configuration file recursion in \"%s\""
-msgstr "recursión de archivos de configuración en «%s»"
-
-#: guc-file.l:632 libpq/hba.c:2199 libpq/hba.c:2613
-#, c-format
-msgid "could not open configuration file \"%s\": %m"
-msgstr "no se pudo abrir el archivo de configuración «%s»: %m"
-
-#: guc-file.l:643
-#, c-format
-msgid "skipping missing configuration file \"%s\""
-msgstr "omitiendo el archivo de configuración faltante «%s»"
-
-#: guc-file.l:897
-#, c-format
-msgid "syntax error in file \"%s\" line %u, near end of line"
-msgstr "error de sintaxis en el archivo «%s» línea %u, cerca del fin de línea"
-
-#: guc-file.l:907
-#, c-format
-msgid "syntax error in file \"%s\" line %u, near token \"%s\""
-msgstr "error de sintaxis en el archivo «%s» línea %u, cerca de la palabra «%s»"
-
-#: guc-file.l:927
-#, c-format
-msgid "too many syntax errors found, abandoning file \"%s\""
-msgstr "se encontraron demasiados errores de sintaxis, abandonando el archivo «%s»"
-
-#: guc-file.l:982
-#, c-format
-msgid "empty configuration directory name: \"%s\""
-msgstr "nombre de directorio de configuración vacío: «%s»"
-
-#: guc-file.l:1001
-#, c-format
-msgid "could not open configuration directory \"%s\": %m"
-msgstr "no se pudo abrir el directorio de configuración «%s»: %m"
-
-#: jit/jit.c:208 utils/fmgr/dfmgr.c:209 utils/fmgr/dfmgr.c:426
-#: utils/fmgr/dfmgr.c:474
+#: jit/jit.c:205 utils/fmgr/dfmgr.c:209 utils/fmgr/dfmgr.c:417
+#: utils/fmgr/dfmgr.c:465
 #, c-format
 msgid "could not access file \"%s\": %m"
 msgstr "no se pudo acceder al archivo «%s»: %m"
 
-#: jit/llvm/llvmjit.c:601
+#: jit/llvm/llvmjit.c:595
 #, c-format
 msgid "time to inline: %.3fs, opt: %.3fs, emit: %.3fs"
 msgstr "tiempo en «inline»: %.3fs, opt: %.3fs, emisión: %.3fs"
 
-#: jsonpath_gram.y:514 jsonpath_scan.l:526 jsonpath_scan.l:542
-#: jsonpath_scan.l:553 jsonpath_scan.l:563 jsonpath_scan.l:605
-#: utils/adt/encode.c:442 utils/adt/encode.c:507 utils/adt/json.c:786
-#: utils/adt/json.c:826 utils/adt/json.c:842 utils/adt/json.c:854
-#: utils/adt/json.c:864 utils/adt/json.c:915 utils/adt/json.c:947
-#: utils/adt/json.c:966 utils/adt/json.c:978 utils/adt/json.c:990
-#: utils/adt/json.c:1135 utils/adt/json.c:1149 utils/adt/json.c:1160
-#: utils/adt/json.c:1168 utils/adt/json.c:1176 utils/adt/json.c:1184
-#: utils/adt/json.c:1192 utils/adt/json.c:1200 utils/adt/json.c:1208
-#: utils/adt/json.c:1216 utils/adt/json.c:1246 utils/adt/varlena.c:318
-#: utils/adt/varlena.c:359
-#, c-format
-msgid "invalid input syntax for type %s"
-msgstr "sintaxis de entrada no válida para tipo %s"
-
-#: jsonpath_gram.y:515
-#, c-format
-msgid "unrecognized flag character \"%c\" in LIKE_REGEX predicate"
-msgstr "parámetro no reconocido «%c» en predicado LIKE_REGEX"
-
-#: jsonpath_gram.y:569
-#, c-format
-msgid "XQuery \"x\" flag (expanded regular expressions) is not implemented"
-msgstr "la opción «x» de XQuery (expresiones regulares expandidas) no está implementada"
-
-#. translator: %s is typically "syntax error"
-#: jsonpath_scan.l:283
-#, c-format
-msgid "%s at end of jsonpath input"
-msgstr "%s al final de la entrada jsonpath"
-
-#. translator: first %s is typically "syntax error"
-#: jsonpath_scan.l:290
-#, c-format
-msgid "%s at or near \"%s\" of jsonpath input"
-msgstr "%s en o cerca de «%s» de la entrada jsonpath"
-
-#: jsonpath_scan.l:501 utils/adt/json.c:880 utils/adt/json.c:903
-#, c-format
-msgid "unsupported Unicode escape sequence"
-msgstr "secuencia de escape Unicode no soportado"
-
-#: jsonpath_scan.l:502 utils/adt/json.c:881
-#, c-format
-msgid "\\u0000 cannot be converted to text."
-msgstr "\\u0000 no puede ser convertido a text."
-
-#: jsonpath_scan.l:527 utils/adt/json.c:904
-#, c-format
-msgid "Unicode escape values cannot be used for code point values above 007F when the server encoding is not UTF8."
-msgstr "Los valores de escape Unicode no pueden ser usados para valores de «code point» sobre 007F cuando la codificación de servidor no es UTF8."
-
-#: jsonpath_scan.l:543 utils/adt/json.c:844
-#, c-format
-msgid "Unicode high surrogate must not follow a high surrogate."
-msgstr "Un «high-surrogate» Unicode no puede venir después de un «high-surrogate»."
-
-#: jsonpath_scan.l:554 jsonpath_scan.l:564 jsonpath_scan.l:606
-#: utils/adt/json.c:855 utils/adt/json.c:865 utils/adt/json.c:917
-#: utils/adt/json.c:979 utils/adt/json.c:991
-#, c-format
-msgid "Unicode low surrogate must follow a high surrogate."
-msgstr "Un «low-surrogate» Unicode debe seguir a un «high-surrogate»."
-
 #: lib/dshash.c:247 utils/mmgr/dsa.c:702 utils/mmgr/dsa.c:724
 #: utils/mmgr/dsa.c:805
 #, c-format
 msgid "Failed on DSA request of size %zu."
 msgstr "Falla en petición DSA de tamaño %zu."
 
-#: lib/stringinfo.c:284
-#, c-format
-msgid "Cannot enlarge string buffer containing %d bytes by %d more bytes."
-msgstr "No se puede agrandar el búfer de cadena que ya tiene %d bytes en %d bytes adicionales."
-
 #: libpq/auth-scram.c:248
 #, c-format
 msgid "client selected an invalid SASL authentication mechanism"
 msgstr "cliente eligió un mecanismo de autentificación SASL no válido"
 
-#: libpq/auth-scram.c:269 libpq/auth-scram.c:509 libpq/auth-scram.c:518
-#, c-format
-msgid "invalid SCRAM verifier for user \"%s\""
+#: libpq/auth-scram.c:269 libpq/auth-scram.c:509 libpq/auth-scram.c:520
+#, fuzzy, c-format
+#| msgid "invalid SCRAM verifier for user \"%s\""
+msgid "invalid SCRAM secret for user \"%s\""
 msgstr "verificador SCRAM no válido para el usuario «%s»"
 
 #: libpq/auth-scram.c:280
-#, c-format
-msgid "User \"%s\" does not have a valid SCRAM verifier."
+#, fuzzy, c-format
+#| msgid "User \"%s\" does not have a valid SCRAM verifier."
+msgid "User \"%s\" does not have a valid SCRAM secret."
 msgstr "Usuario «%s» no tiene un verificador SCRAM válido."
 
-#: libpq/auth-scram.c:358 libpq/auth-scram.c:363 libpq/auth-scram.c:676
-#: libpq/auth-scram.c:684 libpq/auth-scram.c:795 libpq/auth-scram.c:805
-#: libpq/auth-scram.c:913 libpq/auth-scram.c:920 libpq/auth-scram.c:935
-#: libpq/auth-scram.c:950 libpq/auth-scram.c:964 libpq/auth-scram.c:982
-#: libpq/auth-scram.c:997 libpq/auth-scram.c:1283 libpq/auth-scram.c:1291
+#: libpq/auth-scram.c:358 libpq/auth-scram.c:363 libpq/auth-scram.c:693
+#: libpq/auth-scram.c:701 libpq/auth-scram.c:806 libpq/auth-scram.c:819
+#: libpq/auth-scram.c:829 libpq/auth-scram.c:937 libpq/auth-scram.c:944
+#: libpq/auth-scram.c:959 libpq/auth-scram.c:974 libpq/auth-scram.c:988
+#: libpq/auth-scram.c:1006 libpq/auth-scram.c:1021 libpq/auth-scram.c:1321
+#: libpq/auth-scram.c:1329
 #, c-format
 msgid "malformed SCRAM message"
 msgstr "mensaje SCRAM mal formado"
@@ -12534,669 +12420,676 @@ msgstr "El «nonce» no coincide."
 msgid "could not generate random salt"
 msgstr "no se pudo generar una sal aleatoria"
 
-#: libpq/auth-scram.c:677
+#: libpq/auth-scram.c:694
 #, c-format
 msgid "Expected attribute \"%c\" but found \"%s\"."
 msgstr "Se esperaba un atributo «%c» pero se encontró «%s»."
 
-#: libpq/auth-scram.c:685 libpq/auth-scram.c:806
+#: libpq/auth-scram.c:702 libpq/auth-scram.c:830
 #, c-format
 msgid "Expected character \"=\" for attribute \"%c\"."
 msgstr "Se esperaba el carácter «=» para el atributo «%c»."
 
-#: libpq/auth-scram.c:796
+#: libpq/auth-scram.c:807
+#, fuzzy, c-format
+#| msgid "Attribute expected, but found invalid character \"%s\"."
+msgid "Attribute expected, but found end of string."
+msgstr "Se esperaba un atributo, se encontró el carácter no válido «%s»."
+
+#: libpq/auth-scram.c:820
 #, c-format
 msgid "Attribute expected, but found invalid character \"%s\"."
 msgstr "Se esperaba un atributo, se encontró el carácter no válido «%s»."
 
-#: libpq/auth-scram.c:914 libpq/auth-scram.c:936
+#: libpq/auth-scram.c:938 libpq/auth-scram.c:960
 #, c-format
 msgid "The client selected SCRAM-SHA-256-PLUS, but the SCRAM message does not include channel binding data."
 msgstr "El cliente seleccionó SCRAM-SHA-256-PLUS, pero el mensaje SCRAM no incluye los datos de enlazado (binding) del canal."
 
-#: libpq/auth-scram.c:921 libpq/auth-scram.c:951
+#: libpq/auth-scram.c:945 libpq/auth-scram.c:975
 #, c-format
 msgid "Comma expected, but found character \"%s\"."
 msgstr "Se esperaba una coma, se encontró el carácter «%s»."
 
-#: libpq/auth-scram.c:942
+#: libpq/auth-scram.c:966
 #, c-format
 msgid "SCRAM channel binding negotiation error"
 msgstr "error de negociación de enlazado (binding) de canal SCRAM"
 
-#: libpq/auth-scram.c:943
+#: libpq/auth-scram.c:967
 #, c-format
 msgid "The client supports SCRAM channel binding but thinks the server does not.  However, this server does support channel binding."
 msgstr "El cliente soporta enlazado (binding) de canal SCRAM, pero piensa que el servidor no. Sin embargo, este servidor sí soporta enlazado de canal."
 
-#: libpq/auth-scram.c:965
+#: libpq/auth-scram.c:989
 #, c-format
 msgid "The client selected SCRAM-SHA-256 without channel binding, but the SCRAM message includes channel binding data."
 msgstr "El cliente seleccionó SCRAM-SHA-256 sin enlazado de canal, pero el mensaje SCRAM incluye datos de enlazado de canal."
 
-#: libpq/auth-scram.c:976
+#: libpq/auth-scram.c:1000
 #, c-format
 msgid "unsupported SCRAM channel-binding type \"%s\""
 msgstr "tipo de enlazado de canal SCRAM «%s» no soportado"
 
-#: libpq/auth-scram.c:983
+#: libpq/auth-scram.c:1007
 #, c-format
 msgid "Unexpected channel-binding flag \"%s\"."
 msgstr "Indicador de enlazado de canal «%s» inesperado."
 
-#: libpq/auth-scram.c:993
+#: libpq/auth-scram.c:1017
 #, c-format
 msgid "client uses authorization identity, but it is not supported"
 msgstr "el cliente usa identidad de autorización, pero no está soportada"
 
-#: libpq/auth-scram.c:998
+#: libpq/auth-scram.c:1022
 #, c-format
 msgid "Unexpected attribute \"%s\" in client-first-message."
 msgstr "Atributo inesperado \"%s\" en client-first-message."
 
-#: libpq/auth-scram.c:1014
+#: libpq/auth-scram.c:1038
 #, c-format
 msgid "client requires an unsupported SCRAM extension"
 msgstr "el cliente requiere una extensión SCRAM no soportada"
 
-#: libpq/auth-scram.c:1028
+#: libpq/auth-scram.c:1052
 #, c-format
 msgid "non-printable characters in SCRAM nonce"
 msgstr "caracteres no imprimibles en el «nonce» SCRAM"
 
-#: libpq/auth-scram.c:1145
+#: libpq/auth-scram.c:1169
 #, c-format
 msgid "could not generate random nonce"
 msgstr "no se pudo generar un «nonce» aleatorio"
 
-#: libpq/auth-scram.c:1249
+#: libpq/auth-scram.c:1179
+#, fuzzy, c-format
+#| msgid "could not generate random nonce"
+msgid "could not encode random nonce"
+msgstr "no se pudo generar un «nonce» aleatorio"
+
+#: libpq/auth-scram.c:1285
 #, c-format
 msgid "SCRAM channel binding check failed"
 msgstr "la verificación de enlazado (binding) de canal SCRAM falló"
 
-#: libpq/auth-scram.c:1267
+#: libpq/auth-scram.c:1303
 #, c-format
 msgid "unexpected SCRAM channel-binding attribute in client-final-message"
 msgstr "atributo de enlazado de canal SCRAM inesperado en client-final-message"
 
-#: libpq/auth-scram.c:1284
+#: libpq/auth-scram.c:1322
 #, c-format
 msgid "Malformed proof in client-final-message."
 msgstr "Prueba (proof) mal formada en client-final-message."
 
-#: libpq/auth-scram.c:1292
+#: libpq/auth-scram.c:1330
 #, c-format
 msgid "Garbage found at the end of client-final-message."
 msgstr "Basura encontrada al final de client-final-message."
 
-#: libpq/auth.c:278
+#: libpq/auth.c:280
 #, c-format
 msgid "authentication failed for user \"%s\": host rejected"
 msgstr "la autentificación falló para el usuario «%s»: anfitrión rechazado"
 
-#: libpq/auth.c:281
+#: libpq/auth.c:283
 #, c-format
 msgid "\"trust\" authentication failed for user \"%s\""
 msgstr "la autentificación «trust» falló para el usuario «%s»"
 
-#: libpq/auth.c:284
+#: libpq/auth.c:286
 #, c-format
 msgid "Ident authentication failed for user \"%s\""
 msgstr "la autentificación Ident falló para el usuario «%s»"
 
-#: libpq/auth.c:287
+#: libpq/auth.c:289
 #, c-format
 msgid "Peer authentication failed for user \"%s\""
 msgstr "la autentificación Peer falló para el usuario «%s»"
 
-#: libpq/auth.c:292
+#: libpq/auth.c:294
 #, c-format
 msgid "password authentication failed for user \"%s\""
 msgstr "la autentificación password falló para el usuario «%s»"
 
-#: libpq/auth.c:297
+#: libpq/auth.c:299
 #, c-format
 msgid "GSSAPI authentication failed for user \"%s\""
 msgstr "la autentificación GSSAPI falló para el usuario «%s»"
 
-#: libpq/auth.c:300
+#: libpq/auth.c:302
 #, c-format
 msgid "SSPI authentication failed for user \"%s\""
 msgstr "la autentificación SSPI falló para el usuario «%s»"
 
-#: libpq/auth.c:303
+#: libpq/auth.c:305
 #, c-format
 msgid "PAM authentication failed for user \"%s\""
 msgstr "la autentificación PAM falló para el usuario «%s»"
 
-#: libpq/auth.c:306
+#: libpq/auth.c:308
 #, c-format
 msgid "BSD authentication failed for user \"%s\""
 msgstr "la autentificación BSD falló para el usuario «%s»"
 
-#: libpq/auth.c:309
+#: libpq/auth.c:311
 #, c-format
 msgid "LDAP authentication failed for user \"%s\""
 msgstr "la autentificación LDAP falló para el usuario «%s»"
 
-#: libpq/auth.c:312
+#: libpq/auth.c:314
 #, c-format
 msgid "certificate authentication failed for user \"%s\""
 msgstr "la autentificación por certificado falló para el usuario «%s»"
 
-#: libpq/auth.c:315
+#: libpq/auth.c:317
 #, c-format
 msgid "RADIUS authentication failed for user \"%s\""
 msgstr "la autentificación RADIUS falló para el usuario «%s»"
 
-#: libpq/auth.c:318
+#: libpq/auth.c:320
 #, c-format
 msgid "authentication failed for user \"%s\": invalid authentication method"
 msgstr "la autentificación falló para el usuario «%s»: método de autentificación no válido"
 
-#: libpq/auth.c:322
+#: libpq/auth.c:324
 #, c-format
 msgid "Connection matched pg_hba.conf line %d: \"%s\""
 msgstr "La conexión coincidió con la línea %d de pg_hba.conf: «%s»"
 
-#: libpq/auth.c:369
+#: libpq/auth.c:371
 #, c-format
 msgid "client certificates can only be checked if a root certificate store is available"
 msgstr "los certificados de cliente sólo pueden verificarse si un almacén de certificado raíz está disponible"
 
-#: libpq/auth.c:380
+#: libpq/auth.c:382
 #, c-format
 msgid "connection requires a valid client certificate"
 msgstr "la conexión requiere un certificado de cliente válido"
 
-#: libpq/auth.c:390
+#: libpq/auth.c:392
 #, c-format
 msgid "GSSAPI encryption can only be used with gss, trust, or reject authentication methods"
 msgstr "el cifrado GSSAPI sólo puede ser usado con los métodos gss, trust o reject"
 
-#: libpq/auth.c:424
+#: libpq/auth.c:426
 #, c-format
 msgid "pg_hba.conf rejects replication connection for host \"%s\", user \"%s\", %s"
 msgstr "pg_hba.conf rechaza la conexión de replicación para el servidor «%s», usuario «%s», %s"
 
-#: libpq/auth.c:426 libpq/auth.c:442 libpq/auth.c:500 libpq/auth.c:518
+#: libpq/auth.c:428 libpq/auth.c:444 libpq/auth.c:502 libpq/auth.c:520
 msgid "SSL off"
 msgstr "SSL inactivo"
 
-#: libpq/auth.c:426 libpq/auth.c:442 libpq/auth.c:500 libpq/auth.c:518
+#: libpq/auth.c:428 libpq/auth.c:444 libpq/auth.c:502 libpq/auth.c:520
 msgid "SSL on"
 msgstr "SSL activo"
 
-#: libpq/auth.c:430
+#: libpq/auth.c:432
 #, c-format
 msgid "pg_hba.conf rejects replication connection for host \"%s\", user \"%s\""
 msgstr "pg_hba.conf rechaza la conexión de replicación para el servidor «%s», usuario «%s»"
 
-#: libpq/auth.c:439
+#: libpq/auth.c:441
 #, c-format
 msgid "pg_hba.conf rejects connection for host \"%s\", user \"%s\", database \"%s\", %s"
 msgstr "pg_hba.conf rechaza la conexión para el servidor «%s», usuario «%s», base de datos «%s», %s"
 
-#: libpq/auth.c:446
+#: libpq/auth.c:448
 #, c-format
 msgid "pg_hba.conf rejects connection for host \"%s\", user \"%s\", database \"%s\""
 msgstr "pg_hba.conf rechaza la conexión para el servidor «%s», usuario «%s», base de datos «%s»"
 
-#: libpq/auth.c:475
+#: libpq/auth.c:477
 #, c-format
 msgid "Client IP address resolved to \"%s\", forward lookup matches."
 msgstr "La dirección IP del cliente fue resuelta a «%s», este resultado es coincidente."
 
-#: libpq/auth.c:478
+#: libpq/auth.c:480
 #, c-format
 msgid "Client IP address resolved to \"%s\", forward lookup not checked."
 msgstr "La dirección IP del cliente fue resuelta a «%s», este resultado no fue verificado."
 
-#: libpq/auth.c:481
+#: libpq/auth.c:483
 #, c-format
 msgid "Client IP address resolved to \"%s\", forward lookup does not match."
 msgstr "La dirección IP del cliente fue resuelta a «%s», este resultado no es coincidente."
 
-#: libpq/auth.c:484
+#: libpq/auth.c:486
 #, c-format
 msgid "Could not translate client host name \"%s\" to IP address: %s."
 msgstr "No se pudo traducir el nombre de host del cliente «%s» a una dirección IP: %s."
 
-#: libpq/auth.c:489
+#: libpq/auth.c:491
 #, c-format
 msgid "Could not resolve client IP address to a host name: %s."
 msgstr "No se pudo obtener la dirección IP del cliente a un nombre de host: %s."
 
-#: libpq/auth.c:498
+#: libpq/auth.c:500
 #, c-format
 msgid "no pg_hba.conf entry for replication connection from host \"%s\", user \"%s\", %s"
 msgstr "no hay una línea en pg_hba.conf para la conexión de replicación desde el servidor «%s», usuario «%s», %s"
 
-#: libpq/auth.c:505
+#: libpq/auth.c:507
 #, c-format
 msgid "no pg_hba.conf entry for replication connection from host \"%s\", user \"%s\""
 msgstr "no hay una línea en pg_hba.conf para la conexión de replicación desde el servidor «%s», usuario «%s»"
 
-#: libpq/auth.c:515
+#: libpq/auth.c:517
 #, c-format
 msgid "no pg_hba.conf entry for host \"%s\", user \"%s\", database \"%s\", %s"
 msgstr "no hay una línea en pg_hba.conf para «%s», usuario «%s», base de datos «%s», %s"
 
-#: libpq/auth.c:523
+#: libpq/auth.c:525
 #, c-format
 msgid "no pg_hba.conf entry for host \"%s\", user \"%s\", database \"%s\""
 msgstr "no hay una línea en pg_hba.conf para «%s», usuario «%s», base de datos «%s»"
 
-#: libpq/auth.c:690
+#: libpq/auth.c:688
 #, c-format
 msgid "expected password response, got message type %d"
 msgstr "se esperaba una respuesta de contraseña, se obtuvo mensaje de tipo %d"
 
-#: libpq/auth.c:718
+#: libpq/auth.c:716
 #, c-format
 msgid "invalid password packet size"
 msgstr "el tamaño del paquete de contraseña no es válido"
 
-#: libpq/auth.c:736
+#: libpq/auth.c:734
 #, c-format
 msgid "empty password returned by client"
 msgstr "el cliente retornó una contraseña vacía"
 
-#: libpq/auth.c:856 libpq/hba.c:1340
+#: libpq/auth.c:854 libpq/hba.c:1340
 #, c-format
 msgid "MD5 authentication is not supported when \"db_user_namespace\" is enabled"
 msgstr "la autentificación MD5 no está soportada cuando «db_user_namespace» está activo"
 
-#: libpq/auth.c:862
+#: libpq/auth.c:860
 #, c-format
 msgid "could not generate random MD5 salt"
 msgstr "no se pudo generar una sal MD5 aleatoria"
 
-#: libpq/auth.c:908
+#: libpq/auth.c:906
 #, c-format
 msgid "SASL authentication is not supported in protocol version 2"
 msgstr "autentificación SASL no está soportada en el protocolo versión 2"
 
-#: libpq/auth.c:941
+#: libpq/auth.c:939
 #, c-format
 msgid "expected SASL response, got message type %d"
 msgstr "se esperaba una respuesta SASL, se obtuvo mensaje de tipo %d"
 
-#: libpq/auth.c:1070
+#: libpq/auth.c:1068
 #, c-format
 msgid "GSSAPI is not supported in protocol version 2"
 msgstr "GSSAPI no está soportado por el protocolo versión 2"
 
-#: libpq/auth.c:1130
+#: libpq/auth.c:1128
 #, c-format
 msgid "expected GSS response, got message type %d"
 msgstr "se esperaba una respuesta GSS, se obtuvo mensaje de tipo %d"
 
-#: libpq/auth.c:1192
+#: libpq/auth.c:1189
 msgid "accepting GSS security context failed"
 msgstr "falló la aceptación del contexto de seguridad GSS"
 
-#: libpq/auth.c:1231
+#: libpq/auth.c:1228
 msgid "retrieving GSS user name failed"
 msgstr "falló la obtención del nombre de usuario GSS"
 
-#: libpq/auth.c:1362
+#: libpq/auth.c:1359
 #, c-format
 msgid "SSPI is not supported in protocol version 2"
 msgstr "SSPI no está soportado por el protocolo versión 2"
 
-#: libpq/auth.c:1377
+#: libpq/auth.c:1374
 msgid "could not acquire SSPI credentials"
 msgstr "no se pudo obtener las credenciales SSPI"
 
-#: libpq/auth.c:1395
+#: libpq/auth.c:1399
 #, c-format
 msgid "expected SSPI response, got message type %d"
 msgstr "se esperaba una respuesta SSPI, se obtuvo mensaje de tipo %d"
 
-#: libpq/auth.c:1468
+#: libpq/auth.c:1477
 msgid "could not accept SSPI security context"
 msgstr "no se pudo aceptar un contexto SSPI"
 
-#: libpq/auth.c:1530
+#: libpq/auth.c:1539
 msgid "could not get token from SSPI security context"
 msgstr "no se pudo obtener un testigo (token) desde el contexto de seguridad SSPI"
 
-#: libpq/auth.c:1649 libpq/auth.c:1668
+#: libpq/auth.c:1658 libpq/auth.c:1677
 #, c-format
 msgid "could not translate name"
 msgstr "no se pudo traducir el nombre"
 
-#: libpq/auth.c:1681
+#: libpq/auth.c:1690
 #, c-format
 msgid "realm name too long"
 msgstr "nombre de «realm» demasiado largo"
 
-#: libpq/auth.c:1696
+#: libpq/auth.c:1705
 #, c-format
 msgid "translated account name too long"
 msgstr "nombre de cuenta traducido demasiado largo"
 
-#: libpq/auth.c:1882
+#: libpq/auth.c:1886
 #, c-format
 msgid "could not create socket for Ident connection: %m"
 msgstr "no se pudo crear un socket para conexión Ident: %m"
 
-#: libpq/auth.c:1897
+#: libpq/auth.c:1901
 #, c-format
 msgid "could not bind to local address \"%s\": %m"
 msgstr "no se pudo enlazar a la dirección local «%s»: %m"
 
-#: libpq/auth.c:1909
+#: libpq/auth.c:1913
 #, c-format
 msgid "could not connect to Ident server at address \"%s\", port %s: %m"
 msgstr "no se pudo conectar al servidor Ident en dirección «%s», port %s: %m"
 
-#: libpq/auth.c:1931
+#: libpq/auth.c:1935
 #, c-format
 msgid "could not send query to Ident server at address \"%s\", port %s: %m"
 msgstr "no se pudo enviar consulta Ident al servidor «%s», port %s: %m"
 
-#: libpq/auth.c:1948
+#: libpq/auth.c:1952
 #, c-format
 msgid "could not receive response from Ident server at address \"%s\", port %s: %m"
 msgstr "no se pudo recibir respuesta Ident desde el servidor «%s», port %s: %m"
 
-#: libpq/auth.c:1958
+#: libpq/auth.c:1962
 #, c-format
 msgid "invalidly formatted response from Ident server: \"%s\""
 msgstr "respuesta del servidor Ident en formato no válido: «%s»"
 
-#: libpq/auth.c:1998
+#: libpq/auth.c:2009
 #, c-format
 msgid "peer authentication is not supported on this platform"
 msgstr "método de autentificación peer no está soportado en esta plataforma"
 
-#: libpq/auth.c:2002
+#: libpq/auth.c:2013
 #, c-format
 msgid "could not get peer credentials: %m"
 msgstr "no se pudo recibir credenciales: %m"
 
-#: libpq/auth.c:2013
+#: libpq/auth.c:2025
 #, c-format
 msgid "could not look up local user ID %ld: %s"
 msgstr "no se pudo encontrar el ID del usuario local %ld: %s"
 
-#: libpq/auth.c:2101
+#: libpq/auth.c:2124
 #, c-format
 msgid "error from underlying PAM layer: %s"
 msgstr "se ha recibido un error de la biblioteca PAM: %s"
 
-#: libpq/auth.c:2170
+#: libpq/auth.c:2194
 #, c-format
 msgid "could not create PAM authenticator: %s"
 msgstr "no se pudo crear autenticador PAM: %s"
 
-#: libpq/auth.c:2181
+#: libpq/auth.c:2205
 #, c-format
 msgid "pam_set_item(PAM_USER) failed: %s"
 msgstr "pam_set_item(PAM_USER) falló: %s"
 
-#: libpq/auth.c:2213
+#: libpq/auth.c:2237
 #, c-format
 msgid "pam_set_item(PAM_RHOST) failed: %s"
 msgstr "pam_set_item(PAM_RHOST) falló: %s"
 
-#: libpq/auth.c:2225
+#: libpq/auth.c:2249
 #, c-format
 msgid "pam_set_item(PAM_CONV) failed: %s"
 msgstr "pam_set_item(PAM_CONV) falló: %s"
 
-#: libpq/auth.c:2236
+#: libpq/auth.c:2262
 #, c-format
 msgid "pam_authenticate failed: %s"
 msgstr "pam_authenticate falló: %s"
 
-#: libpq/auth.c:2247
+#: libpq/auth.c:2275
 #, c-format
 msgid "pam_acct_mgmt failed: %s"
 msgstr "pam_acct_mgmt falló: %s"
 
-#: libpq/auth.c:2258
+#: libpq/auth.c:2286
 #, c-format
 msgid "could not release PAM authenticator: %s"
 msgstr "no se pudo liberar autenticador PAM: %s"
 
-#: libpq/auth.c:2334
+#: libpq/auth.c:2362
 #, c-format
 msgid "could not initialize LDAP: error code %d"
 msgstr "no se pudo inicializar LDAP: código de error %d"
 
-#: libpq/auth.c:2371
+#: libpq/auth.c:2399
 #, c-format
 msgid "could not extract domain name from ldapbasedn"
 msgstr "no se pudo extraer el nombre de dominio de ldapbasedn"
 
-#: libpq/auth.c:2379
+#: libpq/auth.c:2407
 #, c-format
 msgid "LDAP authentication could not find DNS SRV records for \"%s\""
 msgstr "la autentificación LDAP no pudo encontrar registros DNS SRV para «%s»"
 
-#: libpq/auth.c:2381
+#: libpq/auth.c:2409
 #, c-format
 msgid "Set an LDAP server name explicitly."
 msgstr "Defina un nombre de servidor LDAP explícitamente."
 
-#: libpq/auth.c:2433
+#: libpq/auth.c:2461
 #, c-format
 msgid "could not initialize LDAP: %s"
 msgstr "no se pudo inicializar LDAP: %s"
 
-#: libpq/auth.c:2443
+#: libpq/auth.c:2471
 #, c-format
 msgid "ldaps not supported with this LDAP library"
 msgstr "ldaps no está soportado con esta biblioteca LDAP"
 
-#: libpq/auth.c:2451
+#: libpq/auth.c:2479
 #, c-format
 msgid "could not initialize LDAP: %m"
 msgstr "no se pudo inicializar LDAP: %m"
 
-#: libpq/auth.c:2461
+#: libpq/auth.c:2489
 #, c-format
 msgid "could not set LDAP protocol version: %s"
 msgstr "no se pudo definir la versión de protocolo LDAP: %s"
 
-#: libpq/auth.c:2492
-#, c-format
-msgid "could not load wldap32.dll"
-msgstr "no se pudo cargar wldap32.dll"
-
-#: libpq/auth.c:2500
+#: libpq/auth.c:2529
 #, c-format
 msgid "could not load function _ldap_start_tls_sA in wldap32.dll"
 msgstr "no se pudo cargar la función _ldap_start_tls_sA en wldap32.dll"
 
-#: libpq/auth.c:2501
+#: libpq/auth.c:2530
 #, c-format
 msgid "LDAP over SSL is not supported on this platform."
 msgstr "LDAP sobre SSL no está soportado en esta plataforma."
 
-#: libpq/auth.c:2516
+#: libpq/auth.c:2546
 #, c-format
 msgid "could not start LDAP TLS session: %s"
 msgstr "no se pudo iniciar sesión de LDAP TLS: %s"
 
-#: libpq/auth.c:2587
+#: libpq/auth.c:2617
 #, c-format
 msgid "LDAP server not specified, and no ldapbasedn"
 msgstr "servidor LDAP no especificado, y no hay ldapbasedn"
 
-#: libpq/auth.c:2594
+#: libpq/auth.c:2624
 #, c-format
 msgid "LDAP server not specified"
 msgstr "servidor LDAP no especificado"
 
-#: libpq/auth.c:2656
+#: libpq/auth.c:2686
 #, c-format
 msgid "invalid character in user name for LDAP authentication"
 msgstr "carácter no válido en nombre de usuario para autentificación LDAP"
 
-#: libpq/auth.c:2673
+#: libpq/auth.c:2703
 #, c-format
 msgid "could not perform initial LDAP bind for ldapbinddn \"%s\" on server \"%s\": %s"
 msgstr "no se pudo hacer el enlace LDAP inicial para el ldapbinddb «%s» en el servidor «%s»: %s"
 
-#: libpq/auth.c:2702
+#: libpq/auth.c:2732
 #, c-format
 msgid "could not search LDAP for filter \"%s\" on server \"%s\": %s"
 msgstr "no se pudo hacer la búsqueda LDAP para el filtro «%s» en el servidor «%s»: %s"
 
-#: libpq/auth.c:2716
+#: libpq/auth.c:2746
 #, c-format
 msgid "LDAP user \"%s\" does not exist"
 msgstr "no existe el usuario LDAP «%s»"
 
-#: libpq/auth.c:2717
+#: libpq/auth.c:2747
 #, c-format
 msgid "LDAP search for filter \"%s\" on server \"%s\" returned no entries."
 msgstr "La búsqueda LDAP para el filtro «%s» en el servidor «%s» no retornó elementos."
 
-#: libpq/auth.c:2721
+#: libpq/auth.c:2751
 #, c-format
 msgid "LDAP user \"%s\" is not unique"
 msgstr "el usuario LDAP «%s» no es única"
 
-#: libpq/auth.c:2722
+#: libpq/auth.c:2752
 #, c-format
 msgid "LDAP search for filter \"%s\" on server \"%s\" returned %d entry."
 msgid_plural "LDAP search for filter \"%s\" on server \"%s\" returned %d entries."
 msgstr[0] "La búsqueda LDAP para el filtro «%s» en el servidor «%s» retornó %d elemento."
 msgstr[1] "La búsqueda LDAP para el filtro «%s» en el servidor «%s» retornó %d elementos."
 
-#: libpq/auth.c:2742
+#: libpq/auth.c:2772
 #, c-format
 msgid "could not get dn for the first entry matching \"%s\" on server \"%s\": %s"
 msgstr "no se pudo obtener el dn para la primera entrada que coincide con «%s» en el servidor «%s»: %s"
 
-#: libpq/auth.c:2763
+#: libpq/auth.c:2793
 #, c-format
 msgid "could not unbind after searching for user \"%s\" on server \"%s\""
 msgstr "no se pudo desconectar (unbind) después de buscar al usuario «%s» en el servidor «%s»"
 
-#: libpq/auth.c:2794
+#: libpq/auth.c:2824
 #, c-format
 msgid "LDAP login failed for user \"%s\" on server \"%s\": %s"
 msgstr "falló el inicio de sesión LDAP para el usuario «%s» en el servidor «%s»: %s"
 
-#: libpq/auth.c:2823
+#: libpq/auth.c:2853
 #, c-format
 msgid "LDAP diagnostics: %s"
 msgstr "Diagnóstico LDAP: %s"
 
-#: libpq/auth.c:2850
+#: libpq/auth.c:2880
 #, c-format
 msgid "certificate authentication failed for user \"%s\": client certificate contains no user name"
 msgstr "la autentificación con certificado falló para el usuario «%s»: el certificado de cliente no contiene un nombre de usuario"
 
-#: libpq/auth.c:2867
+#: libpq/auth.c:2897
 #, c-format
 msgid "certificate validation (clientcert=verify-full) failed for user \"%s\": CN mismatch"
 msgstr "la validación de certificado (clientcert=verify-full) falló para el usuario «%s»: discordancia de CN"
 
-#: libpq/auth.c:2968
+#: libpq/auth.c:2998
 #, c-format
 msgid "RADIUS server not specified"
 msgstr "servidor RADIUS no especificado"
 
-#: libpq/auth.c:2975
+#: libpq/auth.c:3005
 #, c-format
 msgid "RADIUS secret not specified"
 msgstr "secreto RADIUS no especificado"
 
-#: libpq/auth.c:2989
+#: libpq/auth.c:3019
 #, c-format
 msgid "RADIUS authentication does not support passwords longer than %d characters"
 msgstr "la autentificación RADIUS no soporta contraseñas más largas de %d caracteres"
 
-#: libpq/auth.c:3094 libpq/hba.c:1954
+#: libpq/auth.c:3124 libpq/hba.c:1954
 #, c-format
 msgid "could not translate RADIUS server name \"%s\" to address: %s"
 msgstr "no se pudo traducir el nombre de servidor RADIUS «%s» a dirección: %s"
 
-#: libpq/auth.c:3108
+#: libpq/auth.c:3138
 #, c-format
 msgid "could not generate random encryption vector"
 msgstr "no se pudo generar un vector aleatorio de encriptación"
 
-#: libpq/auth.c:3142
+#: libpq/auth.c:3172
 #, c-format
 msgid "could not perform MD5 encryption of password"
 msgstr "no se pudo efectuar cifrado MD5 de la contraseña"
 
-#: libpq/auth.c:3168
+#: libpq/auth.c:3198
 #, c-format
 msgid "could not create RADIUS socket: %m"
 msgstr "no se pudo crear el socket RADIUS: %m"
 
-#: libpq/auth.c:3190
+#: libpq/auth.c:3220
 #, c-format
 msgid "could not bind local RADIUS socket: %m"
 msgstr "no se pudo enlazar el socket RADIUS local: %m"
 
-#: libpq/auth.c:3200
+#: libpq/auth.c:3230
 #, c-format
 msgid "could not send RADIUS packet: %m"
 msgstr "no se pudo enviar el paquete RADIUS: %m"
 
-#: libpq/auth.c:3233 libpq/auth.c:3259
+#: libpq/auth.c:3263 libpq/auth.c:3289
 #, c-format
 msgid "timeout waiting for RADIUS response from %s"
 msgstr "se agotó el tiempo de espera de la respuesta RADIUS desde %s"
 
-#: libpq/auth.c:3252
+#: libpq/auth.c:3282
 #, c-format
 msgid "could not check status on RADIUS socket: %m"
 msgstr "no se pudo verificar el estado en el socket %m"
 
-#: libpq/auth.c:3282
+#: libpq/auth.c:3312
 #, c-format
 msgid "could not read RADIUS response: %m"
 msgstr "no se pudo leer la respuesta RADIUS: %m"
 
-#: libpq/auth.c:3295 libpq/auth.c:3299
+#: libpq/auth.c:3325 libpq/auth.c:3329
 #, c-format
 msgid "RADIUS response from %s was sent from incorrect port: %d"
 msgstr "la respuesta RADIUS desde %s fue enviada desde el port incorrecto: %d"
 
-#: libpq/auth.c:3308
+#: libpq/auth.c:3338
 #, c-format
 msgid "RADIUS response from %s too short: %d"
 msgstr "la respuesta RADIUS desde %s es demasiado corta: %d"
 
-#: libpq/auth.c:3315
+#: libpq/auth.c:3345
 #, c-format
 msgid "RADIUS response from %s has corrupt length: %d (actual length %d)"
 msgstr "la respuesta RADIUS desde %ss tiene largo corrupto: %d (largo real %d)"
 
-#: libpq/auth.c:3323
+#: libpq/auth.c:3353
 #, c-format
 msgid "RADIUS response from %s is to a different request: %d (should be %d)"
 msgstr "la respuesta RADIUS desde %s es a una petición diferente: %d (debería ser %d)"
 
-#: libpq/auth.c:3348
+#: libpq/auth.c:3378
 #, c-format
 msgid "could not perform MD5 encryption of received packet"
 msgstr "no se pudo realizar cifrado MD5 del paquete recibido"
 
-#: libpq/auth.c:3357
+#: libpq/auth.c:3387
 #, c-format
 msgid "RADIUS response from %s has incorrect MD5 signature"
 msgstr "la respuesta RADIUS desde %s tiene firma MD5 incorrecta"
 
-#: libpq/auth.c:3375
+#: libpq/auth.c:3405
 #, c-format
 msgid "RADIUS response from %s has invalid code (%d) for user \"%s\""
 msgstr "la respuesta RADIUS desde %s tiene código no válido (%d) para el usuario «%s»"
 
 #: libpq/be-fsstubs.c:119 libpq/be-fsstubs.c:150 libpq/be-fsstubs.c:178
 #: libpq/be-fsstubs.c:204 libpq/be-fsstubs.c:229 libpq/be-fsstubs.c:277
-#: libpq/be-fsstubs.c:300 libpq/be-fsstubs.c:555
+#: libpq/be-fsstubs.c:300 libpq/be-fsstubs.c:553
 #, c-format
 msgid "invalid large-object descriptor: %d"
 msgstr "el descriptor de objeto grande no es válido: %d"
@@ -13206,7 +13099,7 @@ msgstr "el descriptor de objeto grande no es válido: %d"
 msgid "large object descriptor %d was not opened for reading"
 msgstr "el descriptor de objeto grande %d no fue abierto para lectura"
 
-#: libpq/be-fsstubs.c:185 libpq/be-fsstubs.c:562
+#: libpq/be-fsstubs.c:185 libpq/be-fsstubs.c:560
 #, c-format
 msgid "large object descriptor %d was not opened for writing"
 msgstr "el descriptor de objeto grande %d no fue abierto para escritura"
@@ -13231,107 +13124,107 @@ msgstr "no se pudo abrir el archivo de servidor «%s»: %m"
 msgid "could not read server file \"%s\": %m"
 msgstr "no se pudo leer el archivo de servidor «%s»: %m"
 
-#: libpq/be-fsstubs.c:516
+#: libpq/be-fsstubs.c:514
 #, c-format
 msgid "could not create server file \"%s\": %m"
 msgstr "no se pudo crear el archivo del servidor «%s»: %m"
 
-#: libpq/be-fsstubs.c:528
+#: libpq/be-fsstubs.c:526
 #, c-format
 msgid "could not write server file \"%s\": %m"
 msgstr "no se pudo escribir el archivo del servidor «%s»: %m"
 
-#: libpq/be-fsstubs.c:762
+#: libpq/be-fsstubs.c:760
 #, c-format
 msgid "large object read request is too large"
 msgstr "el tamaño de petición de lectura de objeto grande es muy grande"
 
-#: libpq/be-fsstubs.c:804 utils/adt/genfile.c:235 utils/adt/genfile.c:274
-#: utils/adt/genfile.c:310
+#: libpq/be-fsstubs.c:802 utils/adt/genfile.c:229 utils/adt/genfile.c:268
+#: utils/adt/genfile.c:304
 #, c-format
 msgid "requested length cannot be negative"
 msgstr "el tamaño solicitado no puede ser negativo"
 
-#: libpq/be-fsstubs.c:857 storage/large_object/inv_api.c:295
-#: storage/large_object/inv_api.c:307 storage/large_object/inv_api.c:511
-#: storage/large_object/inv_api.c:622 storage/large_object/inv_api.c:812
+#: libpq/be-fsstubs.c:855 storage/large_object/inv_api.c:297
+#: storage/large_object/inv_api.c:309 storage/large_object/inv_api.c:513
+#: storage/large_object/inv_api.c:624 storage/large_object/inv_api.c:814
 #, c-format
 msgid "permission denied for large object %u"
 msgstr "permiso denegado al objeto grande %u"
 
-#: libpq/be-secure-common.c:91
+#: libpq/be-secure-common.c:93
 #, c-format
 msgid "could not read from command \"%s\": %m"
 msgstr "no se pudo leer desde la orden «%s»: %m"
 
-#: libpq/be-secure-common.c:109
+#: libpq/be-secure-common.c:113
 #, c-format
 msgid "command \"%s\" failed"
 msgstr "la orden «%s» falló"
 
-#: libpq/be-secure-common.c:140
+#: libpq/be-secure-common.c:141
 #, c-format
 msgid "could not access private key file \"%s\": %m"
 msgstr "no se pudo acceder al archivo de la llave privada «%s»: %m"
 
-#: libpq/be-secure-common.c:149
+#: libpq/be-secure-common.c:150
 #, c-format
 msgid "private key file \"%s\" is not a regular file"
 msgstr "el archivo de llave privada «%s» no es un archivo regular"
 
-#: libpq/be-secure-common.c:164
+#: libpq/be-secure-common.c:165
 #, c-format
 msgid "private key file \"%s\" must be owned by the database user or root"
 msgstr "el archivo de llave privada «%s» debe ser de propiedad del usuario de base de datos o root"
 
-#: libpq/be-secure-common.c:187
+#: libpq/be-secure-common.c:188
 #, c-format
 msgid "private key file \"%s\" has group or world access"
 msgstr "el archivo de la llave privada «%s» tiene acceso para el grupo u otros"
 
-#: libpq/be-secure-common.c:189
+#: libpq/be-secure-common.c:190
 #, c-format
 msgid "File must have permissions u=rw (0600) or less if owned by the database user, or permissions u=rw,g=r (0640) or less if owned by root."
 msgstr "El archivo debe tener permisos u=rw (0600) o menos si es de propiedad del usuario de base deatos, o permisos u=rw,g=r (0640) o menos si es de root."
 
-#: libpq/be-secure-gssapi.c:177
+#: libpq/be-secure-gssapi.c:195
 msgid "GSSAPI wrap error"
 msgstr "error de «wrap» de GSSAPI"
 
-#: libpq/be-secure-gssapi.c:181
+#: libpq/be-secure-gssapi.c:199
 #, c-format
 msgid "outgoing GSSAPI message would not use confidentiality"
 msgstr "mensaje saliente GSSAPI no proveería confidencialidad"
 
-#: libpq/be-secure-gssapi.c:185 libpq/be-secure-gssapi.c:551
+#: libpq/be-secure-gssapi.c:203 libpq/be-secure-gssapi.c:574
 #, c-format
 msgid "server tried to send oversize GSSAPI packet (%zu > %zu)"
 msgstr "el servidor intentó enviar un paquete GSSAPI demasiado grande (%zu > %zu)"
 
-#: libpq/be-secure-gssapi.c:303
+#: libpq/be-secure-gssapi.c:330
 #, c-format
 msgid "oversize GSSAPI packet sent by the client (%zu > %zu)"
 msgstr "paquete GSSAPI demasiado grande enviado por el cliente (%zu > %zu)"
 
-#: libpq/be-secure-gssapi.c:345
+#: libpq/be-secure-gssapi.c:364
 msgid "GSSAPI unwrap error"
 msgstr "error de «unwrap» de GSSAPI"
 
-#: libpq/be-secure-gssapi.c:350
+#: libpq/be-secure-gssapi.c:369
 #, c-format
 msgid "incoming GSSAPI message did not use confidentiality"
 msgstr "mensaje GSSAPI entrante no usó confidencialidad"
 
-#: libpq/be-secure-gssapi.c:502
+#: libpq/be-secure-gssapi.c:525
 #, c-format
 msgid "oversize GSSAPI packet sent by the client (%zu > %d)"
 msgstr "paquete GSSAPI demasiado grande enviado por el cliente (%zu > %d)"
 
-#: libpq/be-secure-gssapi.c:524
+#: libpq/be-secure-gssapi.c:547
 msgid "could not accept GSSAPI security context"
 msgstr "no se pudo aceptar un contexto de seguridad GSSAPI"
 
-#: libpq/be-secure-gssapi.c:597
+#: libpq/be-secure-gssapi.c:637
 msgid "GSSAPI size check error"
 msgstr "error de verificación de tamaño GSSAPI"
 
@@ -13340,202 +13233,205 @@ msgstr "error de verificación de tamaño GSSAPI"
 msgid "could not create SSL context: %s"
 msgstr "no se pudo crear un contexto SSL: %s"
 
-#: libpq/be-secure-openssl.c:154
+#: libpq/be-secure-openssl.c:137
 #, c-format
 msgid "could not load server certificate file \"%s\": %s"
 msgstr "no se pudo cargar el archivo de certificado de servidor «%s»: %s"
 
-#: libpq/be-secure-openssl.c:174
+#: libpq/be-secure-openssl.c:157
 #, c-format
 msgid "private key file \"%s\" cannot be reloaded because it requires a passphrase"
 msgstr "el archivo de clave privada \"%s\" no se puede volver a cargar porque requiere una contraseña"
 
-#: libpq/be-secure-openssl.c:179
+#: libpq/be-secure-openssl.c:162
 #, c-format
 msgid "could not load private key file \"%s\": %s"
 msgstr "no se pudo cargar el archivo de la llave privada «%s»: %s"
 
-#: libpq/be-secure-openssl.c:188
+#: libpq/be-secure-openssl.c:171
 #, c-format
 msgid "check of private key failed: %s"
 msgstr "falló la revisión de la llave privada: %s"
 
-#: libpq/be-secure-openssl.c:204
+#: libpq/be-secure-openssl.c:183 libpq/be-secure-openssl.c:205
+#, fuzzy, c-format
+#| msgid "%s setting %s not supported by this build"
+msgid "\"%s\" setting \"%s\" not supported by this build"
+msgstr "el valor de %s %s no está soportado en esta instalación"
+
+#: libpq/be-secure-openssl.c:193
 #, c-format
 msgid "could not set minimum SSL protocol version"
 msgstr "no se pudo definir la versión mínima de protocolo SSL"
 
-#: libpq/be-secure-openssl.c:220
+#: libpq/be-secure-openssl.c:215
 #, c-format
 msgid "could not set maximum SSL protocol version"
 msgstr "no se pudo definir la versión máxima de protocolo SSL"
 
-#: libpq/be-secure-openssl.c:244
+#: libpq/be-secure-openssl.c:231
+#, fuzzy, c-format
+#| msgid "could not set LDAP protocol version: %s"
+msgid "could not set SSL protocol version range"
+msgstr "no se pudo definir la versión de protocolo LDAP: %s"
+
+#: libpq/be-secure-openssl.c:232
+#, fuzzy, c-format
+#| msgid "\"%s\" is not an index for table \"%s\""
+msgid "\"%s\" cannot be higher than \"%s\""
+msgstr "«%s» no es un índice de la tabla «%s»"
+
+#: libpq/be-secure-openssl.c:256
 #, c-format
 msgid "could not set the cipher list (no valid ciphers available)"
 msgstr "no se pudo establecer la lista de cifrado (no hay cifradores disponibles)"
 
-#: libpq/be-secure-openssl.c:262
+#: libpq/be-secure-openssl.c:274
 #, c-format
 msgid "could not load root certificate file \"%s\": %s"
 msgstr "no se pudo cargar el archivo del certificado raíz «%s»: %s"
 
-#: libpq/be-secure-openssl.c:289
-#, c-format
-msgid "SSL certificate revocation list file \"%s\" ignored"
-msgstr "ignorando lista de revocación de certificados SSL «%s»"
-
-#: libpq/be-secure-openssl.c:291
-#, c-format
-msgid "SSL library does not support certificate revocation lists."
-msgstr "La libreria SSL no soporta listas de revocación de certificados."
-
-#: libpq/be-secure-openssl.c:298
+#: libpq/be-secure-openssl.c:301
 #, c-format
 msgid "could not load SSL certificate revocation list file \"%s\": %s"
 msgstr "no se pudo cargar el archivo de lista de revocación de certificados SSL «%s»: %s"
 
-#: libpq/be-secure-openssl.c:373
+#: libpq/be-secure-openssl.c:376
 #, c-format
 msgid "could not initialize SSL connection: SSL context not set up"
 msgstr "no se pudo inicializar la conexión SSL: el contexto SSL no está instalado"
 
-#: libpq/be-secure-openssl.c:381
+#: libpq/be-secure-openssl.c:384
 #, c-format
 msgid "could not initialize SSL connection: %s"
 msgstr "no se pudo inicializar la conexión SSL: %s"
 
-#: libpq/be-secure-openssl.c:389
+#: libpq/be-secure-openssl.c:392
 #, c-format
 msgid "could not set SSL socket: %s"
 msgstr "no se definir un socket SSL: %s"
 
-#: libpq/be-secure-openssl.c:444
+#: libpq/be-secure-openssl.c:447
 #, c-format
 msgid "could not accept SSL connection: %m"
 msgstr "no se pudo aceptar una conexión SSL: %m"
 
-#: libpq/be-secure-openssl.c:448 libpq/be-secure-openssl.c:459
+#: libpq/be-secure-openssl.c:451 libpq/be-secure-openssl.c:462
 #, c-format
 msgid "could not accept SSL connection: EOF detected"
 msgstr "no se pudo aceptar una conexión SSL: se detectó EOF"
 
-#: libpq/be-secure-openssl.c:453
+#: libpq/be-secure-openssl.c:456
 #, c-format
 msgid "could not accept SSL connection: %s"
 msgstr "no se pudo aceptar una conexión SSL: %s"
 
-#: libpq/be-secure-openssl.c:464 libpq/be-secure-openssl.c:595
-#: libpq/be-secure-openssl.c:659
+#: libpq/be-secure-openssl.c:467 libpq/be-secure-openssl.c:598
+#: libpq/be-secure-openssl.c:662
 #, c-format
 msgid "unrecognized SSL error code: %d"
 msgstr "código de error SSL no reconocido: %d"
 
-#: libpq/be-secure-openssl.c:506
+#: libpq/be-secure-openssl.c:509
 #, c-format
 msgid "SSL certificate's common name contains embedded null"
 msgstr "el «common name» del certificado SSL contiene un carácter null"
 
-#: libpq/be-secure-openssl.c:584 libpq/be-secure-openssl.c:643
+#: libpq/be-secure-openssl.c:587 libpq/be-secure-openssl.c:646
 #, c-format
 msgid "SSL error: %s"
 msgstr "error de SSL: %s"
 
-#: libpq/be-secure-openssl.c:824
+#: libpq/be-secure-openssl.c:827
 #, c-format
 msgid "could not open DH parameters file \"%s\": %m"
 msgstr "no se pudo abrir el archivo de parámetros DH «%s»: %m"
 
-#: libpq/be-secure-openssl.c:836
+#: libpq/be-secure-openssl.c:839
 #, c-format
 msgid "could not load DH parameters file: %s"
 msgstr "no se pudo cargar el archivo de parámetros DH: %s"
 
-#: libpq/be-secure-openssl.c:846
+#: libpq/be-secure-openssl.c:849
 #, c-format
 msgid "invalid DH parameters: %s"
 msgstr "parámetros DH no válidos: %s"
 
-#: libpq/be-secure-openssl.c:854
+#: libpq/be-secure-openssl.c:857
 #, c-format
 msgid "invalid DH parameters: p is not prime"
 msgstr "parámetros DH no válidos: p no es primo"
 
-#: libpq/be-secure-openssl.c:862
+#: libpq/be-secure-openssl.c:865
 #, c-format
 msgid "invalid DH parameters: neither suitable generator or safe prime"
 msgstr "parámetros DH no válidos: no hay generador apropiado o primo seguro"
 
-#: libpq/be-secure-openssl.c:1017
+#: libpq/be-secure-openssl.c:1020
 #, c-format
 msgid "DH: could not load DH parameters"
 msgstr "DH: no se pudo cargar los parámetros DH"
 
-#: libpq/be-secure-openssl.c:1025
+#: libpq/be-secure-openssl.c:1028
 #, c-format
 msgid "DH: could not set DH parameters: %s"
 msgstr "DH: no se pudo definir los parámetros DH: %s"
 
-#: libpq/be-secure-openssl.c:1049
+#: libpq/be-secure-openssl.c:1055
 #, c-format
 msgid "ECDH: unrecognized curve name: %s"
 msgstr "ECDH: nombre de curva no reconocida: %s"
 
-#: libpq/be-secure-openssl.c:1058
+#: libpq/be-secure-openssl.c:1064
 #, c-format
 msgid "ECDH: could not create key"
 msgstr "ECDH: no se pudo crear la llave"
 
-#: libpq/be-secure-openssl.c:1086
+#: libpq/be-secure-openssl.c:1092
 msgid "no SSL error reported"
 msgstr "código de error SSL no reportado"
 
-#: libpq/be-secure-openssl.c:1090
+#: libpq/be-secure-openssl.c:1096
 #, c-format
 msgid "SSL error code %lu"
 msgstr "código de error SSL %lu"
 
-#: libpq/be-secure-openssl.c:1320
-#, c-format
-msgid "%s setting %s not supported by this build"
-msgstr "el valor de %s %s no está soportado en esta instalación"
-
-#: libpq/be-secure.c:123
+#: libpq/be-secure.c:122
 #, c-format
 msgid "SSL connection from \"%s\""
 msgstr "conexión SSL desde «%s»"
 
-#: libpq/be-secure.c:208 libpq/be-secure.c:304
+#: libpq/be-secure.c:207 libpq/be-secure.c:303
 #, c-format
 msgid "terminating connection due to unexpected postmaster exit"
 msgstr "terminando la conexión debido al término inesperado de postmaster"
 
-#: libpq/crypt.c:52
+#: libpq/crypt.c:49
 #, c-format
 msgid "Role \"%s\" does not exist."
 msgstr "No existe el rol «%s»."
 
-#: libpq/crypt.c:62
+#: libpq/crypt.c:59
 #, c-format
 msgid "User \"%s\" has no password assigned."
 msgstr "El usuario «%s» no tiene una contraseña asignada."
 
-#: libpq/crypt.c:80
+#: libpq/crypt.c:77
 #, c-format
 msgid "User \"%s\" has an expired password."
 msgstr "El usuario «%s» tiene contraseña expirada."
 
-#: libpq/crypt.c:182
+#: libpq/crypt.c:179
 #, c-format
 msgid "User \"%s\" has a password that cannot be used with MD5 authentication."
 msgstr "El usuario \"%s\" tiene una contraseña que no se puede usar con la autentificación MD5."
 
-#: libpq/crypt.c:206 libpq/crypt.c:247 libpq/crypt.c:271
+#: libpq/crypt.c:203 libpq/crypt.c:244 libpq/crypt.c:268
 #, c-format
 msgid "Password does not match for user \"%s\"."
 msgstr "La contraseña no coincide para el usuario «%s»."
 
-#: libpq/crypt.c:290
+#: libpq/crypt.c:287
 #, c-format
 msgid "Password of user \"%s\" is in unrecognized format."
 msgstr "La contraseña del usuario \"%s\" está en un formato no reconocido."
@@ -13870,185 +13766,190 @@ msgstr "no se pudo interpretar la lista de identificadoes RADIUS «%s»"
 msgid "unrecognized authentication option name: \"%s\""
 msgstr "nombre de opción de autentificación desconocido: «%s»"
 
+#: libpq/hba.c:2199 libpq/hba.c:2613 guc-file.l:631
+#, c-format
+msgid "could not open configuration file \"%s\": %m"
+msgstr "no se pudo abrir el archivo de configuración «%s»: %m"
+
 #: libpq/hba.c:2250
 #, c-format
 msgid "configuration file \"%s\" contains no entries"
 msgstr "el archivo de configuración «%s» no contiene líneas"
 
-#: libpq/hba.c:2769
+#: libpq/hba.c:2768
 #, c-format
 msgid "invalid regular expression \"%s\": %s"
 msgstr "la expresión regular «%s» no es válida: %s"
 
-#: libpq/hba.c:2829
+#: libpq/hba.c:2828
 #, c-format
 msgid "regular expression match for \"%s\" failed: %s"
 msgstr "la coincidencia de expresión regular para «%s» falló: %s"
 
-#: libpq/hba.c:2848
+#: libpq/hba.c:2847
 #, c-format
 msgid "regular expression \"%s\" has no subexpressions as requested by backreference in \"%s\""
 msgstr "la expresión regular «%s» no tiene subexpresiones según lo requiere la referencia hacia atrás en «%s»"
 
-#: libpq/hba.c:2945
+#: libpq/hba.c:2943
 #, c-format
 msgid "provided user name (%s) and authenticated user name (%s) do not match"
 msgstr "el nombre de usuario entregado (%s) y el nombre de usuario autentificado (%s) no coinciden"
 
-#: libpq/hba.c:2965
+#: libpq/hba.c:2963
 #, c-format
 msgid "no match in usermap \"%s\" for user \"%s\" authenticated as \"%s\""
 msgstr "no hay coincidencia en el mapa «%s» para el usuario «%s» autentificado como «%s»"
 
-#: libpq/hba.c:2998
+#: libpq/hba.c:2996
 #, c-format
 msgid "could not open usermap file \"%s\": %m"
 msgstr "no se pudo abrir el archivo de mapa de usuarios «%s»: %m"
 
-#: libpq/pqcomm.c:220
+#: libpq/pqcomm.c:218
 #, c-format
 msgid "could not set socket to nonblocking mode: %m"
 msgstr "no se pudo establecer el socket en modo no bloqueante: %m"
 
-#: libpq/pqcomm.c:374
+#: libpq/pqcomm.c:372
 #, c-format
 msgid "Unix-domain socket path \"%s\" is too long (maximum %d bytes)"
 msgstr "la ruta al socket de dominio Unix «%s» es demasiado larga (máximo %d bytes)"
 
-#: libpq/pqcomm.c:395
+#: libpq/pqcomm.c:393
 #, c-format
 msgid "could not translate host name \"%s\", service \"%s\" to address: %s"
 msgstr "no se pudo traducir el nombre de host «%s», servicio «%s» a dirección: %s"
 
-#: libpq/pqcomm.c:399
+#: libpq/pqcomm.c:397
 #, c-format
 msgid "could not translate service \"%s\" to address: %s"
 msgstr "no se pudo traducir el servicio «%s» a dirección: %s"
 
-#: libpq/pqcomm.c:426
+#: libpq/pqcomm.c:424
 #, c-format
 msgid "could not bind to all requested addresses: MAXLISTEN (%d) exceeded"
 msgstr "no se pudo enlazar a todas las direcciones pedidas: MAXLISTEN (%d) fue excedido"
 
-#: libpq/pqcomm.c:435
+#: libpq/pqcomm.c:433
 msgid "IPv4"
 msgstr "IPv4"
 
-#: libpq/pqcomm.c:439
+#: libpq/pqcomm.c:437
 msgid "IPv6"
 msgstr "IPv6"
 
-#: libpq/pqcomm.c:444
+#: libpq/pqcomm.c:442
 msgid "Unix"
 msgstr "Unix"
 
-#: libpq/pqcomm.c:449
+#: libpq/pqcomm.c:447
 #, c-format
 msgid "unrecognized address family %d"
 msgstr "la familia de direcciones %d no reconocida"
 
 #. translator: first %s is IPv4, IPv6, or Unix
-#: libpq/pqcomm.c:475
+#: libpq/pqcomm.c:473
 #, c-format
 msgid "could not create %s socket for address \"%s\": %m"
 msgstr "no se pudo crear el socket %s de escucha para la dirección «%s»: %m"
 
 #. translator: first %s is IPv4, IPv6, or Unix
-#: libpq/pqcomm.c:501
+#: libpq/pqcomm.c:499
 #, c-format
 msgid "setsockopt(SO_REUSEADDR) failed for %s address \"%s\": %m"
 msgstr "setsockopt(SO_REUSEADDR) falló para la dirección %s «%s»: %m"
 
 #. translator: first %s is IPv4, IPv6, or Unix
-#: libpq/pqcomm.c:518
+#: libpq/pqcomm.c:516
 #, c-format
 msgid "setsockopt(IPV6_V6ONLY) failed for %s address \"%s\": %m"
 msgstr "setsockopt(IPV6_V6ONLY) falló para la dirección %s «%s»: %m"
 
 #. translator: first %s is IPv4, IPv6, or Unix
-#: libpq/pqcomm.c:538
+#: libpq/pqcomm.c:536
 #, c-format
 msgid "could not bind %s address \"%s\": %m"
 msgstr "no se pudo enlazar a la dirección %s «%s»: %m"
 
-#: libpq/pqcomm.c:541
+#: libpq/pqcomm.c:539
 #, c-format
 msgid "Is another postmaster already running on port %d? If not, remove socket file \"%s\" and retry."
 msgstr "¿Hay otro postmaster corriendo en el puerto %d? Si no, elimine el socket «%s» y reintente."
 
-#: libpq/pqcomm.c:544
+#: libpq/pqcomm.c:542
 #, c-format
 msgid "Is another postmaster already running on port %d? If not, wait a few seconds and retry."
 msgstr "¿Hay otro postmaster corriendo en el puerto %d? Si no, aguarde unos segundos y reintente."
 
 #. translator: first %s is IPv4, IPv6, or Unix
-#: libpq/pqcomm.c:577
+#: libpq/pqcomm.c:575
 #, c-format
 msgid "could not listen on %s address \"%s\": %m"
 msgstr "no se pudo escuchar en la dirección %s «%s»: %m"
 
-#: libpq/pqcomm.c:586
+#: libpq/pqcomm.c:584
 #, c-format
 msgid "listening on Unix socket \"%s\""
 msgstr "escuchando en el socket Unix «%s»"
 
 #. translator: first %s is IPv4 or IPv6
-#: libpq/pqcomm.c:592
+#: libpq/pqcomm.c:590
 #, c-format
 msgid "listening on %s address \"%s\", port %d"
 msgstr "escuchando en la dirección %s «%s», port %d"
 
-#: libpq/pqcomm.c:675
+#: libpq/pqcomm.c:673
 #, c-format
 msgid "group \"%s\" does not exist"
 msgstr "no existe el grupo «%s»"
 
-#: libpq/pqcomm.c:685
+#: libpq/pqcomm.c:683
 #, c-format
 msgid "could not set group of file \"%s\": %m"
 msgstr "no se pudo definir el grupo del archivo «%s»: %m"
 
-#: libpq/pqcomm.c:696
+#: libpq/pqcomm.c:694
 #, c-format
 msgid "could not set permissions of file \"%s\": %m"
 msgstr "no se pudo definir los permisos del archivo «%s»: %m"
 
-#: libpq/pqcomm.c:726
+#: libpq/pqcomm.c:724
 #, c-format
 msgid "could not accept new connection: %m"
 msgstr "no se pudo aceptar una nueva conexión: %m"
 
-#: libpq/pqcomm.c:928
+#: libpq/pqcomm.c:914
 #, c-format
 msgid "there is no client connection"
 msgstr "no hay conexión de cliente"
 
-#: libpq/pqcomm.c:979 libpq/pqcomm.c:1075
+#: libpq/pqcomm.c:965 libpq/pqcomm.c:1061
 #, c-format
 msgid "could not receive data from client: %m"
 msgstr "no se pudo recibir datos del cliente: %m"
 
-#: libpq/pqcomm.c:1220 tcop/postgres.c:4074
+#: libpq/pqcomm.c:1206 tcop/postgres.c:4142
 #, c-format
 msgid "terminating connection because protocol synchronization was lost"
 msgstr "terminando la conexión por pérdida de sincronía del protocolo"
 
-#: libpq/pqcomm.c:1286
+#: libpq/pqcomm.c:1272
 #, c-format
 msgid "unexpected EOF within message length word"
 msgstr "EOF inesperado dentro de la palabra de tamaño del mensaje"
 
-#: libpq/pqcomm.c:1297
+#: libpq/pqcomm.c:1283
 #, c-format
 msgid "invalid message length"
 msgstr "el largo de mensaje no es válido"
 
-#: libpq/pqcomm.c:1319 libpq/pqcomm.c:1332
+#: libpq/pqcomm.c:1305 libpq/pqcomm.c:1318
 #, c-format
 msgid "incomplete message from client"
 msgstr "mensaje incompleto del cliente"
 
-#: libpq/pqcomm.c:1465
+#: libpq/pqcomm.c:1451
 #, c-format
 msgid "could not send data to client: %m"
 msgstr "no se pudo enviar datos al cliente: %m"
@@ -14059,7 +13960,7 @@ msgid "no data left in message"
 msgstr "no hay datos restantes en el mensaje"
 
 #: libpq/pqformat.c:517 libpq/pqformat.c:535 libpq/pqformat.c:556
-#: utils/adt/arrayfuncs.c:1470 utils/adt/rowtypes.c:567
+#: utils/adt/arrayfuncs.c:1471 utils/adt/rowtypes.c:567
 #, c-format
 msgid "insufficient data left in message"
 msgstr "los datos restantes del mensaje son insuficientes"
@@ -14074,12 +13975,12 @@ msgstr "cadena inválida en el mensaje"
 msgid "invalid message format"
 msgstr "formato de mensaje no válido"
 
-#: main/main.c:264
+#: main/main.c:246
 #, c-format
 msgid "%s: WSAStartup failed: %d\n"
 msgstr "%s: WSAStartup falló: %d\n"
 
-#: main/main.c:328
+#: main/main.c:310
 #, c-format
 msgid ""
 "%s is the PostgreSQL server.\n"
@@ -14088,7 +13989,7 @@ msgstr ""
 "%s es el servidor PostgreSQL.\n"
 "\n"
 
-#: main/main.c:329
+#: main/main.c:311
 #, c-format
 msgid ""
 "Usage:\n"
@@ -14099,114 +14000,114 @@ msgstr ""
 "  %s [OPCION]...\n"
 "\n"
 
-#: main/main.c:330
+#: main/main.c:312
 #, c-format
 msgid "Options:\n"
 msgstr "Opciones:\n"
 
-#: main/main.c:331
+#: main/main.c:313
 #, c-format
 msgid "  -B NBUFFERS        number of shared buffers\n"
 msgstr "  -B NBUFFERS     número de búfers de memoria compartida\n"
 
-#: main/main.c:332
+#: main/main.c:314
 #, c-format
 msgid "  -c NAME=VALUE      set run-time parameter\n"
 msgstr "  -c VAR=VALOR    definir parámetro de ejecución\n"
 
-#: main/main.c:333
+#: main/main.c:315
 #, c-format
 msgid "  -C NAME            print value of run-time parameter, then exit\n"
 msgstr "  -C NOMBRE       imprimir valor de parámetro de configuración, luego salir\n"
 
-#: main/main.c:334
+#: main/main.c:316
 #, c-format
 msgid "  -d 1-5             debugging level\n"
 msgstr "  -d 1-5          nivel de depuración\n"
 
-#: main/main.c:335
+#: main/main.c:317
 #, c-format
 msgid "  -D DATADIR         database directory\n"
 msgstr "  -D DATADIR      directorio de bases de datos\n"
 
-#: main/main.c:336
+#: main/main.c:318
 #, c-format
 msgid "  -e                 use European date input format (DMY)\n"
 msgstr "  -e              usar estilo europeo de fechas (DMY)\n"
 
-#: main/main.c:337
+#: main/main.c:319
 #, c-format
 msgid "  -F                 turn fsync off\n"
 msgstr "  -F              desactivar fsync\n"
 
-#: main/main.c:338
+#: main/main.c:320
 #, c-format
 msgid "  -h HOSTNAME        host name or IP address to listen on\n"
 msgstr "  -h NOMBRE       nombre de host o dirección IP en que escuchar\n"
 
-#: main/main.c:339
+#: main/main.c:321
 #, c-format
 msgid "  -i                 enable TCP/IP connections\n"
 msgstr "  -i              activar conexiones TCP/IP\n"
 
-#: main/main.c:340
+#: main/main.c:322
 #, c-format
 msgid "  -k DIRECTORY       Unix-domain socket location\n"
 msgstr "  -k DIRECTORIO   ubicación del socket Unix\n"
 
-#: main/main.c:342
+#: main/main.c:324
 #, c-format
 msgid "  -l                 enable SSL connections\n"
 msgstr "  -l              activar conexiones SSL\n"
 
-#: main/main.c:344
+#: main/main.c:326
 #, c-format
 msgid "  -N MAX-CONNECT     maximum number of allowed connections\n"
 msgstr "  -N MAX-CONN     número máximo de conexiones permitidas\n"
 
-#: main/main.c:345
+#: main/main.c:327
 #, c-format
 msgid "  -o OPTIONS         pass \"OPTIONS\" to each server process (obsolete)\n"
 msgstr "  -o OPCIONES     pasar «OPCIONES» a cada proceso servidor (obsoleto)\n"
 
-#: main/main.c:346
+#: main/main.c:328
 #, c-format
 msgid "  -p PORT            port number to listen on\n"
 msgstr "  -p PUERTO       número de puerto en el cual escuchar\n"
 
-#: main/main.c:347
+#: main/main.c:329
 #, c-format
 msgid "  -s                 show statistics after each query\n"
 msgstr "  -s              mostrar estadísticas después de cada consulta\n"
 
-#: main/main.c:348
+#: main/main.c:330
 #, c-format
 msgid "  -S WORK-MEM        set amount of memory for sorts (in kB)\n"
 msgstr "  -S WORK-MEM     definir cantidad de memoria para ordenamientos (en kB)\n"
 
-#: main/main.c:349
+#: main/main.c:331
 #, c-format
 msgid "  -V, --version      output version information, then exit\n"
 msgstr "  -V, --version   mostrar información de la versión, luego salir\n"
 
-#: main/main.c:350
+#: main/main.c:332
 #, c-format
 msgid "  --NAME=VALUE       set run-time parameter\n"
 msgstr "  --NOMBRE=VALOR  definir parámetro de ejecución\n"
 
-#: main/main.c:351
+#: main/main.c:333
 #, c-format
 msgid "  --describe-config  describe configuration parameters, then exit\n"
 msgstr ""
 "  --describe-config\n"
 "                  mostrar parámetros de configuración y salir\n"
 
-#: main/main.c:352
+#: main/main.c:334
 #, c-format
 msgid "  -?, --help         show this help, then exit\n"
 msgstr "  -?, --help      muestra esta ayuda, luego sale\n"
 
-#: main/main.c:354
+#: main/main.c:336
 #, c-format
 msgid ""
 "\n"
@@ -14215,44 +14116,44 @@ msgstr ""
 "\n"
 "Opciones de desarrollador:\n"
 
-#: main/main.c:355
+#: main/main.c:337
 #, c-format
 msgid "  -f s|i|n|m|h       forbid use of some plan types\n"
 msgstr "  -f s|i|n|m|h    impedir el uso de algunos tipos de planes\n"
 
-#: main/main.c:356
+#: main/main.c:338
 #, c-format
 msgid "  -n                 do not reinitialize shared memory after abnormal exit\n"
 msgstr "  -n              no reinicializar memoria compartida después de salida anormal\n"
 
-#: main/main.c:357
+#: main/main.c:339
 #, c-format
 msgid "  -O                 allow system table structure changes\n"
 msgstr "  -O              permitir cambios en estructura de tablas de sistema\n"
 
-#: main/main.c:358
+#: main/main.c:340
 #, c-format
 msgid "  -P                 disable system indexes\n"
 msgstr "  -P              desactivar índices de sistema\n"
 
-#: main/main.c:359
+#: main/main.c:341
 #, c-format
 msgid "  -t pa|pl|ex        show timings after each query\n"
 msgstr "  -t pa|pl|ex     mostrar tiempos después de cada consulta\n"
 
-#: main/main.c:360
+#: main/main.c:342
 #, c-format
 msgid "  -T                 send SIGSTOP to all backend processes if one dies\n"
 msgstr ""
 "  -T              enviar SIGSTOP a todos los procesos backend si uno de ellos\n"
 "                  muere\n"
 
-#: main/main.c:361
+#: main/main.c:343
 #, c-format
 msgid "  -W NUM             wait NUM seconds to allow attach from a debugger\n"
 msgstr "  -W NÚM          espera NÚM segundos para permitir acoplar un depurador\n"
 
-#: main/main.c:363
+#: main/main.c:345
 #, c-format
 msgid ""
 "\n"
@@ -14261,37 +14162,37 @@ msgstr ""
 "\n"
 "Opciones para modo mono-usuario:\n"
 
-#: main/main.c:364
+#: main/main.c:346
 #, c-format
 msgid "  --single           selects single-user mode (must be first argument)\n"
 msgstr "  --single        selecciona modo mono-usuario (debe ser el primer argumento)\n"
 
-#: main/main.c:365
+#: main/main.c:347
 #, c-format
 msgid "  DBNAME             database name (defaults to user name)\n"
 msgstr "  DBNAME          nombre de base de datos (el valor por omisión es el nombre de usuario)\n"
 
-#: main/main.c:366
+#: main/main.c:348
 #, c-format
 msgid "  -d 0-5             override debugging level\n"
 msgstr "  -d 0-5          nivel de depuración\n"
 
-#: main/main.c:367
+#: main/main.c:349
 #, c-format
 msgid "  -E                 echo statement before execution\n"
 msgstr "  -E              mostrar las consultas antes de su ejecución\n"
 
-#: main/main.c:368
+#: main/main.c:350
 #, c-format
 msgid "  -j                 do not use newline as interactive query delimiter\n"
 msgstr "  -j              no usar saltos de línea como delimitadores de consulta\n"
 
-#: main/main.c:369 main/main.c:374
+#: main/main.c:351 main/main.c:356
 #, c-format
 msgid "  -r FILENAME        send stdout and stderr to given file\n"
 msgstr "  -r ARCHIVO      enviar salida estándar y de error a ARCHIVO\n"
 
-#: main/main.c:371
+#: main/main.c:353
 #, c-format
 msgid ""
 "\n"
@@ -14300,30 +14201,37 @@ msgstr ""
 "\n"
 "Opciones para modo de inicio (bootstrapping):\n"
 
-#: main/main.c:372
+#: main/main.c:354
 #, c-format
 msgid "  --boot             selects bootstrapping mode (must be first argument)\n"
 msgstr "  --boot          selecciona modo de inicio (debe ser el primer argumento)\n"
 
-#: main/main.c:373
+#: main/main.c:355
 #, c-format
 msgid "  DBNAME             database name (mandatory argument in bootstrapping mode)\n"
 msgstr "  DBNAME          nombre de base de datos (argumento obligatorio en modo de inicio)\n"
 
-#: main/main.c:375
+#: main/main.c:357
 #, c-format
 msgid "  -x NUM             internal use\n"
 msgstr "  -x NUM          uso interno\n"
 
-#: main/main.c:377
-#, c-format
+#: main/main.c:359
+#, fuzzy, c-format
+#| msgid ""
+#| "\n"
+#| "Please read the documentation for the complete list of run-time\n"
+#| "configuration settings and how to set them on the command line or in\n"
+#| "the configuration file.\n"
+#| "\n"
+#| "Report bugs to <pgsql-bugs@lists.postgresql.org>.\n"
 msgid ""
 "\n"
 "Please read the documentation for the complete list of run-time\n"
 "configuration settings and how to set them on the command line or in\n"
 "the configuration file.\n"
 "\n"
-"Report bugs to <pgsql-bugs@lists.postgresql.org>.\n"
+"Report bugs to <%s>.\n"
 msgstr ""
 "\n"
 "Por favor lea la documentación para obtener la lista completa de\n"
@@ -14332,7 +14240,12 @@ msgstr ""
 "\n"
 "Reporte errores a <pgsql-bugs@lists.postgresql.org>\n"
 
-#: main/main.c:391
+#: main/main.c:363
+#, c-format
+msgid "%s home page: <%s>\n"
+msgstr ""
+
+#: main/main.c:374
 #, c-format
 msgid ""
 "\"root\" execution of the PostgreSQL server is not permitted.\n"
@@ -14346,12 +14259,12 @@ msgstr ""
 "Vea la documentación para obtener más información acerca de cómo\n"
 "iniciar correctamente el servidor.\n"
 
-#: main/main.c:408
+#: main/main.c:391
 #, c-format
 msgid "%s: real and effective user IDs must match\n"
 msgstr "%s: los IDs de usuario real y efectivo deben coincidir\n"
 
-#: main/main.c:415
+#: main/main.c:398
 #, c-format
 msgid ""
 "Execution of PostgreSQL by a user with administrative permissions is not\n"
@@ -14376,38 +14289,51 @@ msgstr "el tipo de nodo extensible «%s» ya existe"
 msgid "ExtensibleNodeMethods \"%s\" was not registered"
 msgstr "ExtensibleNodeMethods «%s» no fue registrado"
 
-#: nodes/nodeFuncs.c:123 nodes/nodeFuncs.c:154 parser/parse_coerce.c:1915
-#: parser/parse_coerce.c:1943 parser/parse_coerce.c:2019
-#: parser/parse_expr.c:2201 parser/parse_func.c:705 parser/parse_oper.c:967
+#: nodes/nodeFuncs.c:122 nodes/nodeFuncs.c:153 parser/parse_coerce.c:2208
+#: parser/parse_coerce.c:2317 parser/parse_coerce.c:2352
+#: parser/parse_expr.c:2207 parser/parse_func.c:701 parser/parse_oper.c:967
+#: utils/fmgr/funcapi.c:528
 #, c-format
 msgid "could not find array type for data type %s"
 msgstr "no se pudo encontrar un tipo de array para el tipo de dato %s"
 
-#: optimizer/path/joinrels.c:833
+#: nodes/params.c:359
+#, fuzzy, c-format
+#| msgid "invalid URI query parameter: \"%s\"\n"
+msgid "extended query \"%s\" with parameters: %s"
+msgstr "parámetro de URI no válido: «%s»\n"
+
+#: nodes/params.c:362
+#, fuzzy, c-format
+#| msgid "invalid URI query parameter: \"%s\"\n"
+msgid "extended query with parameters: %s"
+msgstr "parámetro de URI no válido: «%s»\n"
+
+#: optimizer/path/joinrels.c:855
 #, c-format
 msgid "FULL JOIN is only supported with merge-joinable or hash-joinable join conditions"
 msgstr "FULL JOIN sólo está soportado con condiciones que se pueden usar con merge join o hash join"
 
 #. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: optimizer/plan/initsplan.c:1195
+#: optimizer/plan/initsplan.c:1193
 #, c-format
 msgid "%s cannot be applied to the nullable side of an outer join"
 msgstr "%s no puede ser aplicado al lado nulable de un outer join"
 
 #. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: optimizer/plan/planner.c:1912 parser/analyze.c:1644 parser/analyze.c:1842
-#: parser/analyze.c:2700
+#: optimizer/plan/planner.c:1922 parser/analyze.c:1639 parser/analyze.c:1855
+#: parser/analyze.c:2715
 #, c-format
 msgid "%s is not allowed with UNION/INTERSECT/EXCEPT"
 msgstr "%s no está permitido con UNION/INTERSECT/EXCEPT"
 
-#: optimizer/plan/planner.c:2498 optimizer/plan/planner.c:4157
+#: optimizer/plan/planner.c:2509 optimizer/plan/planner.c:4162
 #, c-format
 msgid "could not implement GROUP BY"
 msgstr "no se pudo implementar GROUP BY"
 
-#: optimizer/plan/planner.c:2499 optimizer/plan/planner.c:4158
-#: optimizer/plan/planner.c:4896 optimizer/prep/prepunion.c:1042
+#: optimizer/plan/planner.c:2510 optimizer/plan/planner.c:4163
+#: optimizer/plan/planner.c:4896 optimizer/prep/prepunion.c:1045
 #, c-format
 msgid "Some of the datatypes only support hashing, while others only support sorting."
 msgstr "Algunos de los tipos sólo soportan hashing, mientras que otros sólo soportan ordenamiento."
@@ -14417,275 +14343,275 @@ msgstr "Algunos de los tipos sólo soportan hashing, mientras que otros sólo so
 msgid "could not implement DISTINCT"
 msgstr "no se pudo implementar DISTINCT"
 
-#: optimizer/plan/planner.c:5630
+#: optimizer/plan/planner.c:5743
 #, c-format
 msgid "could not implement window PARTITION BY"
 msgstr "No se pudo implementar PARTITION BY de ventana"
 
-#: optimizer/plan/planner.c:5631
+#: optimizer/plan/planner.c:5744
 #, c-format
 msgid "Window partitioning columns must be of sortable datatypes."
 msgstr "Las columnas de particionamiento de ventana deben de tipos que se puedan ordenar."
 
-#: optimizer/plan/planner.c:5635
+#: optimizer/plan/planner.c:5748
 #, c-format
 msgid "could not implement window ORDER BY"
 msgstr "no se pudo implementar ORDER BY de ventana"
 
-#: optimizer/plan/planner.c:5636
+#: optimizer/plan/planner.c:5749
 #, c-format
 msgid "Window ordering columns must be of sortable datatypes."
 msgstr "Las columnas de ordenamiento de ventana debe ser de tipos que se puedan ordenar."
 
-#: optimizer/plan/setrefs.c:425
+#: optimizer/plan/setrefs.c:451
 #, c-format
 msgid "too many range table entries"
 msgstr "demasiadas «range table entries»"
 
-#: optimizer/prep/prepunion.c:505
+#: optimizer/prep/prepunion.c:508
 #, c-format
 msgid "could not implement recursive UNION"
 msgstr "no se pudo implementar UNION recursivo"
 
-#: optimizer/prep/prepunion.c:506
+#: optimizer/prep/prepunion.c:509
 #, c-format
 msgid "All column datatypes must be hashable."
 msgstr "Todos los tipos de dato de las columnas deben ser tipos de los que se puedan hacer un hash."
 
 #. translator: %s is UNION, INTERSECT, or EXCEPT
-#: optimizer/prep/prepunion.c:1041
+#: optimizer/prep/prepunion.c:1044
 #, c-format
 msgid "could not implement %s"
 msgstr "no se pudo implementar %s"
 
-#: optimizer/util/clauses.c:4781
+#: optimizer/util/clauses.c:4763
 #, c-format
 msgid "SQL function \"%s\" during inlining"
 msgstr "función SQL «%s», durante expansión en línea"
 
-#: optimizer/util/plancat.c:130
+#: optimizer/util/plancat.c:132
 #, c-format
 msgid "cannot access temporary or unlogged relations during recovery"
 msgstr "no se puede acceder a tablas temporales o «unlogged» durante la recuperación"
 
-#: optimizer/util/plancat.c:650
+#: optimizer/util/plancat.c:662
 #, c-format
 msgid "whole row unique index inference specifications are not supported"
 msgstr "no están soportadas las especificaciones de inferencia de índice único de registro completo"
 
-#: optimizer/util/plancat.c:667
+#: optimizer/util/plancat.c:679
 #, c-format
 msgid "constraint in ON CONFLICT clause has no associated index"
 msgstr "la restricción en la cláusula ON CONFLICT no tiene un índice asociado"
 
-#: optimizer/util/plancat.c:717
+#: optimizer/util/plancat.c:729
 #, c-format
 msgid "ON CONFLICT DO UPDATE not supported with exclusion constraints"
 msgstr "ON CONFLICT DO UPDATE no está soportado con restricciones de exclusión"
 
-#: optimizer/util/plancat.c:822
+#: optimizer/util/plancat.c:834
 #, c-format
 msgid "there is no unique or exclusion constraint matching the ON CONFLICT specification"
 msgstr "no hay restricción única o de exclusión que coincida con la especificación ON CONFLICT"
 
-#: parser/analyze.c:711 parser/analyze.c:1407
+#: parser/analyze.c:705 parser/analyze.c:1401
 #, c-format
 msgid "VALUES lists must all be the same length"
 msgstr "las listas VALUES deben ser todas de la misma longitud"
 
-#: parser/analyze.c:914
+#: parser/analyze.c:904
 #, c-format
 msgid "INSERT has more expressions than target columns"
 msgstr "INSERT tiene más expresiones que columnas de destino"
 
-#: parser/analyze.c:932
+#: parser/analyze.c:922
 #, c-format
 msgid "INSERT has more target columns than expressions"
 msgstr "INSERT tiene más columnas de destino que expresiones"
 
-#: parser/analyze.c:936
+#: parser/analyze.c:926
 #, 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 "La fuente de inserción es una expresión de fila que contiene la misma cantidad de columnas que esperaba el INSERT. ¿Usó accidentalmente paréntesis extra?"
 
-#: parser/analyze.c:1218 parser/analyze.c:1617
+#: parser/analyze.c:1210 parser/analyze.c:1612
 #, c-format
 msgid "SELECT ... INTO is not allowed here"
 msgstr "SELECT ... INTO no está permitido aquí"
 
 #. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:1549 parser/analyze.c:2879
+#: parser/analyze.c:1542 parser/analyze.c:2894
 #, c-format
 msgid "%s cannot be applied to VALUES"
 msgstr "%s no puede ser aplicado a VALUES"
 
-#: parser/analyze.c:1767
+#: parser/analyze.c:1777
 #, c-format
 msgid "invalid UNION/INTERSECT/EXCEPT ORDER BY clause"
 msgstr "cláusula UNION/INTERSECT/EXCEPT ORDER BY no válida"
 
-#: parser/analyze.c:1768
+#: parser/analyze.c:1778
 #, c-format
 msgid "Only result column names can be used, not expressions or functions."
 msgstr "Sólo nombres de columna del resultado pueden usarse, no expresiones o funciones."
 
-#: parser/analyze.c:1769
+#: parser/analyze.c:1779
 #, c-format
 msgid "Add the expression/function to every SELECT, or move the UNION into a FROM clause."
 msgstr "Agregue la función o expresión a todos los SELECT, o mueva el UNION dentro de una cláusula FROM."
 
-#: parser/analyze.c:1832
+#: parser/analyze.c:1845
 #, c-format
 msgid "INTO is only allowed on first SELECT of UNION/INTERSECT/EXCEPT"
 msgstr "sólo se permite INTO en el primer SELECT de UNION/INTERSECT/EXCEPT"
 
-#: parser/analyze.c:1904
+#: parser/analyze.c:1917
 #, c-format
 msgid "UNION/INTERSECT/EXCEPT member statement cannot refer to other relations of same query level"
 msgstr "una sentencia miembro de UNION/INSERT/EXCEPT no puede referirse a otras relaciones del mismo nivel de la consulta"
 
-#: parser/analyze.c:1993
+#: parser/analyze.c:2004
 #, c-format
 msgid "each %s query must have the same number of columns"
 msgstr "cada consulta %s debe tener el mismo número de columnas"
 
-#: parser/analyze.c:2411
+#: parser/analyze.c:2426
 #, c-format
 msgid "RETURNING must have at least one column"
 msgstr "RETURNING debe tener al menos una columna"
 
-#: parser/analyze.c:2452
+#: parser/analyze.c:2467
 #, c-format
 msgid "cannot specify both SCROLL and NO SCROLL"
 msgstr "no se puede especificar SCROLL y NO SCROLL"
 
-#: parser/analyze.c:2471
+#: parser/analyze.c:2486
 #, c-format
 msgid "DECLARE CURSOR must not contain data-modifying statements in WITH"
 msgstr "DECLARE CURSOR no debe contener sentencias que modifiquen datos en WITH"
 
 #. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:2479
+#: parser/analyze.c:2494
 #, c-format
 msgid "DECLARE CURSOR WITH HOLD ... %s is not supported"
 msgstr "DECLARE CURSOR WITH HOLD ... %s no está soportado"
 
-#: parser/analyze.c:2482
+#: parser/analyze.c:2497
 #, c-format
 msgid "Holdable cursors must be READ ONLY."
 msgstr "Los cursores declarados HOLD deben ser READ ONLY."
 
 #. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:2490
+#: parser/analyze.c:2505
 #, c-format
 msgid "DECLARE SCROLL CURSOR ... %s is not supported"
 msgstr "DECLARE SCROLL CURSOR ... %s no está soportado"
 
 #. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:2501
+#: parser/analyze.c:2516
 #, c-format
 msgid "DECLARE INSENSITIVE CURSOR ... %s is not supported"
 msgstr "DECLARE INSENSITIVE CURSOR ... %s no está soportado"
 
-#: parser/analyze.c:2504
+#: parser/analyze.c:2519
 #, c-format
 msgid "Insensitive cursors must be READ ONLY."
 msgstr "Los cursores insensitivos deben ser READ ONLY."
 
-#: parser/analyze.c:2570
+#: parser/analyze.c:2585
 #, c-format
 msgid "materialized views must not use data-modifying statements in WITH"
 msgstr "las vistas materializadas no deben usar sentencias que modifiquen datos en WITH"
 
-#: parser/analyze.c:2580
+#: parser/analyze.c:2595
 #, c-format
 msgid "materialized views must not use temporary tables or views"
 msgstr "las vistas materializadas no deben usar tablas temporales o vistas"
 
-#: parser/analyze.c:2590
+#: parser/analyze.c:2605
 #, c-format
 msgid "materialized views may not be defined using bound parameters"
 msgstr "las vistas materializadas no pueden definirse usando parámetros enlazados"
 
-#: parser/analyze.c:2602
+#: parser/analyze.c:2617
 #, c-format
 msgid "materialized views cannot be unlogged"
 msgstr "las vistas materializadas no pueden ser «unlogged»"
 
 #. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:2707
+#: parser/analyze.c:2722
 #, c-format
 msgid "%s is not allowed with DISTINCT clause"
 msgstr "%s no está permitido con cláusulas DISTINCT"
 
 #. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:2714
+#: parser/analyze.c:2729
 #, c-format
 msgid "%s is not allowed with GROUP BY clause"
 msgstr "%s no está permitido con cláusulas GROUP BY"
 
 #. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:2721
+#: parser/analyze.c:2736
 #, c-format
 msgid "%s is not allowed with HAVING clause"
 msgstr "%s no está permitido con cláusulas HAVING"
 
 #. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:2728
+#: parser/analyze.c:2743
 #, c-format
 msgid "%s is not allowed with aggregate functions"
 msgstr "%s no está permitido con funciones de agregación"
 
 #. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:2735
+#: parser/analyze.c:2750
 #, c-format
 msgid "%s is not allowed with window functions"
 msgstr "%s no está permitido con funciones de ventana deslizante"
 
 #. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:2742
+#: parser/analyze.c:2757
 #, c-format
 msgid "%s is not allowed with set-returning functions in the target list"
 msgstr "%s no está permitido con funciones que retornan conjuntos en la lista de resultados"
 
 #. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:2821
+#: parser/analyze.c:2836
 #, c-format
 msgid "%s must specify unqualified relation names"
 msgstr "%s debe especificar nombres de relaciones sin calificar"
 
 #. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:2852
+#: parser/analyze.c:2867
 #, c-format
 msgid "%s cannot be applied to a join"
 msgstr "%s no puede ser aplicado a un join"
 
 #. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:2861
+#: parser/analyze.c:2876
 #, c-format
 msgid "%s cannot be applied to a function"
 msgstr "%s no puede ser aplicado a una función"
 
 #. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:2870
+#: parser/analyze.c:2885
 #, c-format
 msgid "%s cannot be applied to a table function"
 msgstr "%s no puede ser aplicado a una función de tabla"
 
 #. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:2888
+#: parser/analyze.c:2903
 #, c-format
 msgid "%s cannot be applied to a WITH query"
 msgstr "%s no puede ser aplicado a una consulta WITH"
 
 #. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:2897
+#: parser/analyze.c:2912
 #, c-format
 msgid "%s cannot be applied to a named tuplestore"
 msgstr "%s no puede ser aplicado a un «tuplestore» con nombre"
 
 #. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: parser/analyze.c:2917
+#: parser/analyze.c:2932
 #, c-format
 msgid "relation \"%s\" in %s clause not found in FROM clause"
 msgstr "la relación «%s» en la cláusula %s no fue encontrada en la cláusula FROM"
@@ -14858,7 +14784,7 @@ msgid "grouping operations are not allowed in COPY FROM WHERE conditions"
 msgstr "no se permiten las operaciones «grouping» en condiciones WHERE de COPY FROM"
 
 #. translator: %s is name of a SQL construct, eg GROUP BY
-#: parser/parse_agg.c:567 parser/parse_clause.c:1778
+#: parser/parse_agg.c:567 parser/parse_clause.c:1828
 #, c-format
 msgid "aggregate functions are not allowed in %s"
 msgstr "no se permiten funciones de agregación en %s"
@@ -14879,8 +14805,8 @@ msgstr "una función de agregación de nivel exterior no puede contener una vari
 msgid "aggregate function calls cannot contain set-returning function calls"
 msgstr "las llamadas a funciones de agregación no pueden contener llamadas a funciones que retornan conjuntos"
 
-#: parser/parse_agg.c:758 parser/parse_expr.c:1839 parser/parse_expr.c:2328
-#: parser/parse_func.c:876
+#: parser/parse_agg.c:758 parser/parse_expr.c:1845 parser/parse_expr.c:2332
+#: parser/parse_func.c:872
 #, c-format
 msgid "You might be able to move the set-returning function into a LATERAL FROM item."
 msgstr "Puede intentar mover la funci[on que retorna conjuntos a un elemento LATERAL FROM."
@@ -14955,12 +14881,12 @@ msgid "window functions are not allowed in column generation expressions"
 msgstr "no se permiten funciones de ventana deslizante en expresiones de generación de columna"
 
 #. translator: %s is name of a SQL construct, eg GROUP BY
-#: parser/parse_agg.c:954 parser/parse_clause.c:1787
+#: parser/parse_agg.c:954 parser/parse_clause.c:1837
 #, c-format
 msgid "window functions are not allowed in %s"
 msgstr "no se permiten funciones de ventana deslizante en %s"
 
-#: parser/parse_agg.c:988 parser/parse_clause.c:2623
+#: parser/parse_agg.c:988 parser/parse_clause.c:2671
 #, c-format
 msgid "window \"%s\" does not exist"
 msgstr "la ventana «%s» no existe"
@@ -14995,375 +14921,433 @@ msgstr "la subconsulta usa la columna «%s.%s» no agrupada de una consulta exte
 msgid "arguments to GROUPING must be grouping expressions of the associated query level"
 msgstr "los argumentos de GROUPING deben ser expresiones agrupantes del nivel de consulta asociado"
 
-#: parser/parse_clause.c:198
+#: parser/parse_clause.c:191
 #, c-format
 msgid "relation \"%s\" cannot be the target of a modifying statement"
 msgstr "relación «%s» no puede ser destino de una sentencia modificadora"
 
-#: parser/parse_clause.c:575 parser/parse_clause.c:603 parser/parse_func.c:2439
+#: parser/parse_clause.c:571 parser/parse_clause.c:599 parser/parse_func.c:2424
 #, c-format
 msgid "set-returning functions must appear at top level of FROM"
 msgstr "las funciones que retornan conjuntos deben aparecer en el nivel más externo del FROM"
 
-#: parser/parse_clause.c:615
+#: parser/parse_clause.c:611
 #, c-format
 msgid "multiple column definition lists are not allowed for the same function"
 msgstr "no se permiten múltiples definiciones de columnas para la misma función"
 
-#: parser/parse_clause.c:648
+#: parser/parse_clause.c:644
 #, c-format
 msgid "ROWS FROM() with multiple functions cannot have a column definition list"
 msgstr "ROWS FROM() con varias funciones no puede tener una lista de definición de columnas"
 
-#: parser/parse_clause.c:649
+#: parser/parse_clause.c:645
 #, c-format
 msgid "Put a separate column definition list for each function inside ROWS FROM()."
 msgstr "Ponga una lista de columnas separada para cada función dentro de ROWS FROM()."
 
-#: parser/parse_clause.c:655
+#: parser/parse_clause.c:651
 #, c-format
 msgid "UNNEST() with multiple arguments cannot have a column definition list"
 msgstr "UNNEST() con varios argumentos no puede tener una lista de definición de columnas"
 
-#: parser/parse_clause.c:656
+#: parser/parse_clause.c:652
 #, c-format
 msgid "Use separate UNNEST() calls inside ROWS FROM(), and attach a column definition list to each one."
 msgstr "Use llamadas a UNNEST() separadas dentro de ROWS FROM() y adjunte una lista de columnas a cada una."
 
-#: parser/parse_clause.c:663
+#: parser/parse_clause.c:659
 #, c-format
 msgid "WITH ORDINALITY cannot be used with a column definition list"
 msgstr "WITH ORDINALITY no puede usarse con una lista de definición de columnas"
 
-#: parser/parse_clause.c:664
+#: parser/parse_clause.c:660
 #, c-format
 msgid "Put the column definition list inside ROWS FROM()."
 msgstr "Ponga una lista de columnas dentro de ROWS FROM()."
 
-#: parser/parse_clause.c:767
+#: parser/parse_clause.c:760
 #, c-format
 msgid "only one FOR ORDINALITY column is allowed"
 msgstr "sólo se permite una columna FOR ORDINALITY"
 
-#: parser/parse_clause.c:828
+#: parser/parse_clause.c:821
 #, c-format
 msgid "column name \"%s\" is not unique"
 msgstr "el nombre de columna «%s» no es único"
 
-#: parser/parse_clause.c:870
+#: parser/parse_clause.c:863
 #, c-format
 msgid "namespace name \"%s\" is not unique"
 msgstr "el espacio de nombres «%s» no es único"
 
-#: parser/parse_clause.c:880
+#: parser/parse_clause.c:873
 #, c-format
 msgid "only one default namespace is allowed"
 msgstr "sólo se permite un espacio de nombres predeterminado"
 
-#: parser/parse_clause.c:942
+#: parser/parse_clause.c:933
 #, c-format
 msgid "tablesample method %s does not exist"
 msgstr "no existe el método de tablesample «%s»"
 
-#: parser/parse_clause.c:964
+#: parser/parse_clause.c:955
 #, c-format
 msgid "tablesample method %s requires %d argument, not %d"
 msgid_plural "tablesample method %s requires %d arguments, not %d"
 msgstr[0] "el método de tablesample «%s» requiere %d argumento, no %d"
 msgstr[1] "el método de tablesample «%s» requiere %d argumentos, no %d"
 
-#: parser/parse_clause.c:998
+#: parser/parse_clause.c:989
 #, c-format
 msgid "tablesample method %s does not support REPEATABLE"
 msgstr "el método de tablesample «%s» no soporta la opción REPEATABLE"
 
-#: parser/parse_clause.c:1168
+#: parser/parse_clause.c:1135
 #, c-format
 msgid "TABLESAMPLE clause can only be applied to tables and materialized views"
 msgstr "la cláusula TABLESAMPLE sólo puede aplicarse a tablas y vistas materializadas"
 
-#: parser/parse_clause.c:1338
+#: parser/parse_clause.c:1318
 #, c-format
 msgid "column name \"%s\" appears more than once in USING clause"
 msgstr "la columna «%s» aparece más de una vez en la cláusula USING"
 
-#: parser/parse_clause.c:1353
+#: parser/parse_clause.c:1333
 #, c-format
 msgid "common column name \"%s\" appears more than once in left table"
 msgstr "la columna común «%s» aparece más de una vez en la tabla izquierda"
 
-#: parser/parse_clause.c:1362
+#: parser/parse_clause.c:1342
 #, c-format
 msgid "column \"%s\" specified in USING clause does not exist in left table"
 msgstr "la columna «%s» especificada en la cláusula USING no existe en la tabla izquierda"
 
-#: parser/parse_clause.c:1376
+#: parser/parse_clause.c:1357
 #, c-format
 msgid "common column name \"%s\" appears more than once in right table"
 msgstr "la columna común «%s» aparece más de una vez en la tabla derecha"
 
-#: parser/parse_clause.c:1385
+#: parser/parse_clause.c:1366
 #, c-format
 msgid "column \"%s\" specified in USING clause does not exist in right table"
 msgstr "la columna «%s» especificada en la cláusula USING no existe en la tabla derecha"
 
-#: parser/parse_clause.c:1439
+#: parser/parse_clause.c:1447
 #, c-format
 msgid "column alias list for \"%s\" has too many entries"
 msgstr "la lista de alias de columnas para «%s» tiene demasiadas entradas"
 
+#: parser/parse_clause.c:1773
+#, c-format
+msgid "row count cannot be NULL in FETCH FIRST ... WITH TIES clause"
+msgstr ""
+
 #. translator: %s is name of a SQL construct, eg LIMIT
-#: parser/parse_clause.c:1748
+#: parser/parse_clause.c:1798
 #, c-format
 msgid "argument of %s must not contain variables"
 msgstr "el argumento de %s no puede contener variables"
 
 #. translator: first %s is name of a SQL construct, eg ORDER BY
-#: parser/parse_clause.c:1913
+#: parser/parse_clause.c:1963
 #, c-format
 msgid "%s \"%s\" is ambiguous"
 msgstr "%s «%s» es ambiguo"
 
 #. translator: %s is name of a SQL construct, eg ORDER BY
-#: parser/parse_clause.c:1942
+#: parser/parse_clause.c:1992
 #, c-format
 msgid "non-integer constant in %s"
 msgstr "constante no entera en %s"
 
 #. translator: %s is name of a SQL construct, eg ORDER BY
-#: parser/parse_clause.c:1964
+#: parser/parse_clause.c:2014
 #, c-format
 msgid "%s position %d is not in select list"
 msgstr "la posición %2$d de %1$s no está en la lista de resultados"
 
-#: parser/parse_clause.c:2405
+#: parser/parse_clause.c:2453
 #, c-format
 msgid "CUBE is limited to 12 elements"
 msgstr "CUBE está limitado a 12 elementos"
 
-#: parser/parse_clause.c:2611
+#: parser/parse_clause.c:2659
 #, c-format
 msgid "window \"%s\" is already defined"
 msgstr "la ventana «%s» ya está definida"
 
-#: parser/parse_clause.c:2672
+#: parser/parse_clause.c:2720
 #, c-format
 msgid "cannot override PARTITION BY clause of window \"%s\""
 msgstr "no se puede pasar a llevar la cláusula PARTITION BY de la ventana «%s»"
 
-#: parser/parse_clause.c:2684
+#: parser/parse_clause.c:2732
 #, c-format
 msgid "cannot override ORDER BY clause of window \"%s\""
 msgstr "no se puede pasar a llevar la cláusula ORDER BY de la ventana «%s»"
 
-#: parser/parse_clause.c:2714 parser/parse_clause.c:2720
+#: parser/parse_clause.c:2762 parser/parse_clause.c:2768
 #, c-format
 msgid "cannot copy window \"%s\" because it has a frame clause"
 msgstr "no se puede copiar la ventana «%s» porque tiene una cláusula «frame»"
 
-#: parser/parse_clause.c:2722
+#: parser/parse_clause.c:2770
 #, c-format
 msgid "Omit the parentheses in this OVER clause."
 msgstr "Omita el uso de paréntesis en esta cláusula OVER."
 
-#: parser/parse_clause.c:2742
+#: parser/parse_clause.c:2790
 #, c-format
 msgid "RANGE with offset PRECEDING/FOLLOWING requires exactly one ORDER BY column"
 msgstr "RANGE con desplazamiento PRECEDING/FOLLOWING requiere exactamente una columna ORDER BY"
 
-#: parser/parse_clause.c:2765
+#: parser/parse_clause.c:2813
 #, c-format
 msgid "GROUPS mode requires an ORDER BY clause"
 msgstr "el modo GROUPS requiere una cláusula ORDER BY"
 
-#: parser/parse_clause.c:2835
+#: parser/parse_clause.c:2883
 #, c-format
 msgid "in an aggregate with DISTINCT, ORDER BY expressions must appear in argument list"
 msgstr "en una agregación con DISTINCT, las expresiones en ORDER BY deben aparecer en la lista de argumentos"
 
-#: parser/parse_clause.c:2836
+#: parser/parse_clause.c:2884
 #, c-format
 msgid "for SELECT DISTINCT, ORDER BY expressions must appear in select list"
 msgstr "para SELECT DISTINCT, las expresiones en ORDER BY deben aparecer en la lista de resultados"
 
-#: parser/parse_clause.c:2868
+#: parser/parse_clause.c:2916
 #, c-format
 msgid "an aggregate with DISTINCT must have at least one argument"
 msgstr "una función de agregación con DISTINCT debe tener al menos un argumento"
 
-#: parser/parse_clause.c:2869
+#: parser/parse_clause.c:2917
 #, c-format
 msgid "SELECT DISTINCT must have at least one column"
 msgstr "SELECT DISTINCT debe tener al menos una columna"
 
-#: parser/parse_clause.c:2935 parser/parse_clause.c:2967
+#: parser/parse_clause.c:2983 parser/parse_clause.c:3015
 #, c-format
 msgid "SELECT DISTINCT ON expressions must match initial ORDER BY expressions"
 msgstr "las expresiones de SELECT DISTINCT ON deben coincidir con las expresiones iniciales de ORDER BY"
 
-#: parser/parse_clause.c:3045
+#: parser/parse_clause.c:3093
 #, c-format
 msgid "ASC/DESC is not allowed in ON CONFLICT clause"
 msgstr "ASC/DESC no están permitidos en cláusulas ON CONFLICT"
 
-#: parser/parse_clause.c:3051
+#: parser/parse_clause.c:3099
 #, c-format
 msgid "NULLS FIRST/LAST is not allowed in ON CONFLICT clause"
 msgstr "NULLS FIRST/LAST no están permitidos en cláusulas ON CONFLICT"
 
-#: parser/parse_clause.c:3130
+#: parser/parse_clause.c:3178
 #, c-format
 msgid "ON CONFLICT DO UPDATE requires inference specification or constraint name"
 msgstr "ON CONFLICT DO UPDATE requiere una especificación de inferencia o nombre de restricción"
 
-#: parser/parse_clause.c:3131
+#: parser/parse_clause.c:3179
 #, c-format
 msgid "For example, ON CONFLICT (column_name)."
 msgstr "Por ejemplo, ON CONFLICT (nombre_de_columna)."
 
-#: parser/parse_clause.c:3142
+#: parser/parse_clause.c:3190
 #, c-format
 msgid "ON CONFLICT is not supported with system catalog tables"
 msgstr "ON CONFLICT no está soportado con tablas que son catálogos de sistema"
 
-#: parser/parse_clause.c:3150
+#: parser/parse_clause.c:3198
 #, c-format
 msgid "ON CONFLICT is not supported on table \"%s\" used as a catalog table"
 msgstr "ON CONFLICT no está soportado en la tabla «%s» usada como catálogo de sistema"
 
-#: parser/parse_clause.c:3293
+#: parser/parse_clause.c:3341
 #, c-format
 msgid "operator %s is not a valid ordering operator"
 msgstr "el operador «%s» no es un operador válido de ordenamiento"
 
-#: parser/parse_clause.c:3295
+#: parser/parse_clause.c:3343
 #, c-format
 msgid "Ordering operators must be \"<\" or \">\" members of btree operator families."
 msgstr "Los operadores de ordenamiento deben ser miembros «<» o «>» de una familia de operadores btree."
 
-#: parser/parse_clause.c:3606
+#: parser/parse_clause.c:3654
 #, c-format
 msgid "RANGE with offset PRECEDING/FOLLOWING is not supported for column type %s"
 msgstr "RANGE con desplazamiento PRECEDING/FOLLOWING no está soportado para la columna de tipo %s"
 
-#: parser/parse_clause.c:3612
+#: parser/parse_clause.c:3660
 #, c-format
 msgid "RANGE with offset PRECEDING/FOLLOWING is not supported for column type %s and offset type %s"
 msgstr "RANGE con desplazamiento PRECEDING/FOLLOWING no está soportado para la columna de tipo %s y tipo de desplazamiento %s"
 
-#: parser/parse_clause.c:3615
+#: parser/parse_clause.c:3663
 #, c-format
 msgid "Cast the offset value to an appropriate type."
 msgstr "Convierta el valor de desplazamiento a un tipo apropiado."
 
-#: parser/parse_clause.c:3620
+#: parser/parse_clause.c:3668
 #, c-format
 msgid "RANGE with offset PRECEDING/FOLLOWING has multiple interpretations for column type %s and offset type %s"
 msgstr "RANGE con desplazamiento PRECEDING/FOLLOWING tiene múltiples interpretaciones para la columna de tipo %s y tipo de desplazamiento %s"
 
-#: parser/parse_clause.c:3623
+#: parser/parse_clause.c:3671
 #, c-format
 msgid "Cast the offset value to the exact intended type."
 msgstr "Convierta el valor de desplazamiento al tipo deseado exacto."
 
-#: parser/parse_coerce.c:1022 parser/parse_coerce.c:1060
-#: parser/parse_coerce.c:1078 parser/parse_coerce.c:1093
-#: parser/parse_expr.c:2235 parser/parse_expr.c:2823 parser/parse_target.c:962
+#: parser/parse_coerce.c:1024 parser/parse_coerce.c:1062
+#: parser/parse_coerce.c:1080 parser/parse_coerce.c:1095
+#: parser/parse_expr.c:2241 parser/parse_expr.c:2819 parser/parse_target.c:967
 #, c-format
 msgid "cannot cast type %s to %s"
 msgstr "no se puede convertir el tipo %s a %s"
 
-#: parser/parse_coerce.c:1063
+#: parser/parse_coerce.c:1065
 #, c-format
 msgid "Input has too few columns."
 msgstr "La entrada tiene muy pocas columnas."
 
-#: parser/parse_coerce.c:1081
+#: parser/parse_coerce.c:1083
 #, c-format
 msgid "Cannot cast type %s to %s in column %d."
 msgstr "No se puede convertir el tipo %s a %s en la columna %d."
 
-#: parser/parse_coerce.c:1096
+#: parser/parse_coerce.c:1098
 #, c-format
 msgid "Input has too many columns."
 msgstr "La entrada tiene demasiadas columnas."
 
 #. translator: first %s is name of a SQL construct, eg WHERE
 #. translator: first %s is name of a SQL construct, eg LIMIT
-#: parser/parse_coerce.c:1151 parser/parse_coerce.c:1199
+#: parser/parse_coerce.c:1153 parser/parse_coerce.c:1201
 #, c-format
 msgid "argument of %s must be type %s, not type %s"
 msgstr "el argumento de %s debe ser de tipo %s, no tipo %s"
 
 #. translator: %s is name of a SQL construct, eg WHERE
 #. translator: %s is name of a SQL construct, eg LIMIT
-#: parser/parse_coerce.c:1162 parser/parse_coerce.c:1211
+#: parser/parse_coerce.c:1164 parser/parse_coerce.c:1213
 #, c-format
 msgid "argument of %s must not return a set"
 msgstr "el argumento de %s no debe retornar un conjunto"
 
 #. translator: first %s is name of a SQL construct, eg CASE
-#: parser/parse_coerce.c:1351
+#: parser/parse_coerce.c:1353
 #, c-format
 msgid "%s types %s and %s cannot be matched"
 msgstr "los tipos %2$s y %3$s no son coincidentes en %1$s"
 
+#: parser/parse_coerce.c:1465
+#, fuzzy, c-format
+#| msgid "%s types %s and %s cannot be matched"
+msgid "argument types %s and %s cannot be matched"
+msgstr "los tipos %2$s y %3$s no son coincidentes en %1$s"
+
 #. translator: first %s is name of a SQL construct, eg CASE
-#: parser/parse_coerce.c:1418
+#: parser/parse_coerce.c:1517
 #, c-format
 msgid "%s could not convert type %s to %s"
 msgstr "%s no pudo convertir el tipo %s a %s"
 
-#: parser/parse_coerce.c:1720
+#: parser/parse_coerce.c:1934
 #, c-format
 msgid "arguments declared \"anyelement\" are not all alike"
 msgstr "los argumentos declarados «anyelement» no son de tipos compatibles"
 
-#: parser/parse_coerce.c:1740
+#: parser/parse_coerce.c:1954
 #, c-format
 msgid "arguments declared \"anyarray\" are not all alike"
 msgstr "los argumentos declarados «anyarray» no son de tipos compatibles"
 
-#: parser/parse_coerce.c:1760
+#: parser/parse_coerce.c:1974
 #, c-format
 msgid "arguments declared \"anyrange\" are not all alike"
 msgstr "los argumentos declarados «anyrange» no son de tipos compatibles"
 
-#: parser/parse_coerce.c:1789 parser/parse_coerce.c:2004
-#: parser/parse_coerce.c:2038
+#: parser/parse_coerce.c:2008 parser/parse_coerce.c:2088
+#: utils/fmgr/funcapi.c:487
 #, c-format
 msgid "argument declared %s is not an array but type %s"
 msgstr "el argumento declarado %s no es un array sino de tipo %s"
 
-#: parser/parse_coerce.c:1805 parser/parse_coerce.c:1844
-#, c-format
-msgid "argument declared %s is not consistent with argument declared %s"
-msgstr "el argumento declarado %s no es consistente con el argumento declarado %s"
+#: parser/parse_coerce.c:2029
+#, fuzzy, c-format
+#| msgid "arguments declared \"anyrange\" are not all alike"
+msgid "arguments declared \"anycompatiblerange\" are not all alike"
+msgstr "los argumentos declarados «anyrange» no son de tipos compatibles"
 
-#: parser/parse_coerce.c:1827 parser/parse_coerce.c:2051
+#: parser/parse_coerce.c:2041 parser/parse_coerce.c:2122
+#: utils/fmgr/funcapi.c:501
 #, c-format
 msgid "argument declared %s is not a range type but type %s"
 msgstr "el argumento declarado %s no es un tipo de rango sino tipo %s"
 
-#: parser/parse_coerce.c:1865
+#: parser/parse_coerce.c:2079
+#, fuzzy, c-format
+#| msgid "cannot determine type of empty array"
+msgid "cannot determine element type of \"anyarray\" argument"
+msgstr "no se puede determinar el tipo de un array vacío"
+
+#: parser/parse_coerce.c:2105 parser/parse_coerce.c:2139
+#, c-format
+msgid "argument declared %s is not consistent with argument declared %s"
+msgstr "el argumento declarado %s no es consistente con el argumento declarado %s"
+
+#: parser/parse_coerce.c:2163
 #, c-format
 msgid "could not determine polymorphic type because input has type %s"
 msgstr "no se pudo determinar el tipo polimórfico porque la entrada es de tipo %s"
 
-#: parser/parse_coerce.c:1876
+#: parser/parse_coerce.c:2177
 #, c-format
 msgid "type matched to anynonarray is an array type: %s"
 msgstr "el argumento coincidente con anynonarray es un array: %s"
 
-#: parser/parse_coerce.c:1886
+#: parser/parse_coerce.c:2187
 #, c-format
 msgid "type matched to anyenum is not an enum type: %s"
 msgstr "el tipo coincidente con anyenum no es un tipo enum: %s"
 
-#: parser/parse_coerce.c:1926 parser/parse_coerce.c:1956
+#: parser/parse_coerce.c:2218 parser/parse_coerce.c:2267
+#: parser/parse_coerce.c:2329 parser/parse_coerce.c:2365
+#, fuzzy, c-format
+#| msgid "could not determine polymorphic type because input has type %s"
+msgid "could not determine polymorphic type %s because input has type %s"
+msgstr "no se pudo determinar el tipo polimórfico porque la entrada es de tipo %s"
+
+#: parser/parse_coerce.c:2228
+#, fuzzy, c-format
+#| msgid "Attribute \"%s\" of type %s does not match corresponding attribute of type %s."
+msgid "anycompatiblerange type %s does not match anycompatible type %s"
+msgstr "El atributo «%s» de tipo %s no coincide el atributo correspondiente de tipo %s."
+
+#: parser/parse_coerce.c:2242
+#, fuzzy, c-format
+#| msgid "type matched to anynonarray is an array type: %s"
+msgid "type matched to anycompatiblenonarray is an array type: %s"
+msgstr "el argumento coincidente con anynonarray es un array: %s"
+
+#: parser/parse_coerce.c:2433
+#, fuzzy, c-format
+#| msgid "Attribute \"%s\" of type %s does not exist in type %s."
+msgid "A result of type %s requires at least one input of type %s."
+msgstr "El atributo «%s» de tipo %s no existe en el tipo %s."
+
+#: parser/parse_coerce.c:2445
 #, c-format
-msgid "could not find range type for data type %s"
-msgstr "no se pudo encontrar un tipo de rango para el tipo de dato %s"
+msgid "A result of type %s requires at least one input of type anyelement, anyarray, anynonarray, anyenum, or anyrange."
+msgstr ""
+
+#: parser/parse_coerce.c:2457
+#, c-format
+msgid "A result of type %s requires at least one input of type anycompatible, anycompatiblearray, anycompatiblenonarray, or anycompatiblerange."
+msgstr ""
+
+#: parser/parse_coerce.c:2487
+msgid "A result of type internal requires at least one input of type internal."
+msgstr ""
 
 #: parser/parse_collate.c:228 parser/parse_collate.c:475
 #: parser/parse_collate.c:981
@@ -15487,8 +15471,8 @@ msgstr "la referencia recursiva a la consulta «%s» no debe aparecer más de un
 msgid "DEFAULT is not allowed in this context"
 msgstr "DEFAULT no está permitido en este contexto"
 
-#: parser/parse_expr.c:402 parser/parse_relation.c:3352
-#: parser/parse_relation.c:3372
+#: parser/parse_expr.c:402 parser/parse_relation.c:3506
+#: parser/parse_relation.c:3526
 #, c-format
 msgid "column %s.%s does not exist"
 msgstr "no existe la columna %s.%s"
@@ -15521,537 +15505,537 @@ msgstr "no se pueden usar referencias a columnas en una cláusula DEFAULT"
 msgid "cannot use column reference in partition bound expression"
 msgstr "no se pueden usar referencias a columnas en expresión de borde de partición"
 
-#: parser/parse_expr.c:844 parser/parse_relation.c:692
-#: parser/parse_relation.c:803 parser/parse_target.c:1200
+#: parser/parse_expr.c:850 parser/parse_relation.c:799
+#: parser/parse_relation.c:881 parser/parse_target.c:1207
 #, c-format
 msgid "column reference \"%s\" is ambiguous"
 msgstr "la referencia a la columna «%s» es ambigua"
 
-#: parser/parse_expr.c:900 parser/parse_param.c:110 parser/parse_param.c:142
+#: parser/parse_expr.c:906 parser/parse_param.c:110 parser/parse_param.c:142
 #: parser/parse_param.c:199 parser/parse_param.c:298
 #, c-format
 msgid "there is no parameter $%d"
 msgstr "no hay parámetro $%d"
 
-#: parser/parse_expr.c:1143
+#: parser/parse_expr.c:1149
 #, c-format
 msgid "NULLIF requires = operator to yield boolean"
 msgstr "NULLIF requiere que el operador = retorne boolean"
 
 #. translator: %s is name of a SQL construct, eg NULLIF
-#: parser/parse_expr.c:1149 parser/parse_expr.c:3139
+#: parser/parse_expr.c:1155 parser/parse_expr.c:3135
 #, c-format
 msgid "%s must not return a set"
 msgstr "%s no debe retornar un conjunto"
 
-#: parser/parse_expr.c:1597 parser/parse_expr.c:1629
+#: parser/parse_expr.c:1603 parser/parse_expr.c:1635
 #, c-format
 msgid "number of columns does not match number of values"
 msgstr "el número de columnas no coincide con el número de valores"
 
-#: parser/parse_expr.c:1643
+#: parser/parse_expr.c:1649
 #, c-format
 msgid "source for a multiple-column UPDATE item must be a sub-SELECT or ROW() expression"
 msgstr "el origen para un UPDATE de varias columnas debe ser una expresión sub-SELECT o ROW ()"
 
 #. translator: %s is name of a SQL construct, eg GROUP BY
-#: parser/parse_expr.c:1837 parser/parse_expr.c:2326 parser/parse_func.c:2555
+#: parser/parse_expr.c:1843 parser/parse_expr.c:2330 parser/parse_func.c:2540
 #, c-format
 msgid "set-returning functions are not allowed in %s"
 msgstr "no se permiten funciones que retornan conjuntos en %s"
 
-#: parser/parse_expr.c:1898
+#: parser/parse_expr.c:1904
 msgid "cannot use subquery in check constraint"
 msgstr "no se pueden usar subconsultas en una restricción «check»"
 
-#: parser/parse_expr.c:1902
+#: parser/parse_expr.c:1908
 msgid "cannot use subquery in DEFAULT expression"
 msgstr "no se puede usar una subconsulta en una expresión DEFAULT"
 
-#: parser/parse_expr.c:1905
+#: parser/parse_expr.c:1911
 msgid "cannot use subquery in index expression"
 msgstr "no se puede usar una subconsulta en una expresión de índice"
 
-#: parser/parse_expr.c:1908
+#: parser/parse_expr.c:1914
 msgid "cannot use subquery in index predicate"
 msgstr "no se puede usar una subconsulta en un predicado de índice"
 
-#: parser/parse_expr.c:1911
+#: parser/parse_expr.c:1917
 msgid "cannot use subquery in transform expression"
 msgstr "no se puede usar una subconsulta en una expresión de transformación"
 
-#: parser/parse_expr.c:1914
+#: parser/parse_expr.c:1920
 msgid "cannot use subquery in EXECUTE parameter"
 msgstr "no se puede usar una subconsulta en un parámetro a EXECUTE"
 
-#: parser/parse_expr.c:1917
+#: parser/parse_expr.c:1923
 msgid "cannot use subquery in trigger WHEN condition"
 msgstr "no se puede usar una subconsulta en la condición WHEN de un disparador"
 
-#: parser/parse_expr.c:1920
+#: parser/parse_expr.c:1926
 msgid "cannot use subquery in partition bound"
 msgstr "no se puede usar una subconsulta en un borde de partición"
 
-#: parser/parse_expr.c:1923
+#: parser/parse_expr.c:1929
 msgid "cannot use subquery in partition key expression"
 msgstr "no se puede usar una subconsulta en una expresión de llave de partición"
 
-#: parser/parse_expr.c:1926
+#: parser/parse_expr.c:1932
 msgid "cannot use subquery in CALL argument"
 msgstr "no se puede usar una subconsulta en un argumento a CALL"
 
-#: parser/parse_expr.c:1929
+#: parser/parse_expr.c:1935
 msgid "cannot use subquery in COPY FROM WHERE condition"
 msgstr "no se puede usar una subconsulta en la condición WHERE de COPY FROM"
 
-#: parser/parse_expr.c:1932
+#: parser/parse_expr.c:1938
 msgid "cannot use subquery in column generation expression"
 msgstr "no se puede usar una subconsulta en una expresión de generación de columna"
 
-#: parser/parse_expr.c:1985
+#: parser/parse_expr.c:1991
 #, c-format
 msgid "subquery must return only one column"
 msgstr "la subconsulta debe retornar sólo una columna"
 
-#: parser/parse_expr.c:2069
+#: parser/parse_expr.c:2075
 #, c-format
 msgid "subquery has too many columns"
 msgstr "la subconsulta tiene demasiadas columnas"
 
-#: parser/parse_expr.c:2074
+#: parser/parse_expr.c:2080
 #, c-format
 msgid "subquery has too few columns"
 msgstr "la subconsulta tiene muy pocas columnas"
 
-#: parser/parse_expr.c:2175
+#: parser/parse_expr.c:2181
 #, c-format
 msgid "cannot determine type of empty array"
 msgstr "no se puede determinar el tipo de un array vacío"
 
-#: parser/parse_expr.c:2176
+#: parser/parse_expr.c:2182
 #, c-format
 msgid "Explicitly cast to the desired type, for example ARRAY[]::integer[]."
 msgstr "Agregue una conversión de tipo explícita al tipo deseado, por ejemplo ARRAY[]::integer[]."
 
-#: parser/parse_expr.c:2190
+#: parser/parse_expr.c:2196
 #, c-format
 msgid "could not find element type for data type %s"
 msgstr "no se pudo encontrar el tipo de dato de elemento para el tipo de dato %s"
 
-#: parser/parse_expr.c:2477
+#: parser/parse_expr.c:2481
 #, c-format
 msgid "unnamed XML attribute value must be a column reference"
 msgstr "el valor del atributo XML sin nombre debe ser una referencia a una columna"
 
-#: parser/parse_expr.c:2478
+#: parser/parse_expr.c:2482
 #, c-format
 msgid "unnamed XML element value must be a column reference"
 msgstr "el valor del elemento XML sin nombre debe ser una referencia a una columna"
 
-#: parser/parse_expr.c:2493
+#: parser/parse_expr.c:2497
 #, c-format
 msgid "XML attribute name \"%s\" appears more than once"
 msgstr "el nombre de atributo XML «%s» aparece más de una vez"
 
-#: parser/parse_expr.c:2600
+#: parser/parse_expr.c:2604
 #, c-format
 msgid "cannot cast XMLSERIALIZE result to %s"
 msgstr "no se puede convertir el resultado de XMLSERIALIZE a %s"
 
-#: parser/parse_expr.c:2896 parser/parse_expr.c:3092
+#: parser/parse_expr.c:2892 parser/parse_expr.c:3088
 #, c-format
 msgid "unequal number of entries in row expressions"
 msgstr "número desigual de entradas en expresiones de registro"
 
-#: parser/parse_expr.c:2906
+#: parser/parse_expr.c:2902
 #, c-format
 msgid "cannot compare rows of zero length"
 msgstr "no se pueden comparar registros de largo cero"
 
-#: parser/parse_expr.c:2931
+#: parser/parse_expr.c:2927
 #, c-format
 msgid "row comparison operator must yield type boolean, not type %s"
 msgstr "el operador de comparación de registros debe retornar tipo boolean, no tipo %s"
 
-#: parser/parse_expr.c:2938
+#: parser/parse_expr.c:2934
 #, c-format
 msgid "row comparison operator must not return a set"
 msgstr "el operador de comparación de registros no puede retornar un conjunto"
 
-#: parser/parse_expr.c:2997 parser/parse_expr.c:3038
+#: parser/parse_expr.c:2993 parser/parse_expr.c:3034
 #, c-format
 msgid "could not determine interpretation of row comparison operator %s"
 msgstr "no se pudo determinar la interpretación del operador de comparación de registros %s"
 
-#: parser/parse_expr.c:2999
+#: parser/parse_expr.c:2995
 #, c-format
 msgid "Row comparison operators must be associated with btree operator families."
 msgstr "Los operadores de comparación de registros deben estar asociados a una familia de operadores btree."
 
-#: parser/parse_expr.c:3040
+#: parser/parse_expr.c:3036
 #, c-format
 msgid "There are multiple equally-plausible candidates."
 msgstr "Hay múltiples candidatos igualmente plausibles."
 
-#: parser/parse_expr.c:3133
+#: parser/parse_expr.c:3129
 #, c-format
 msgid "IS DISTINCT FROM requires = operator to yield boolean"
 msgstr "IS DISTINCT FROM requiere que el operador = retorne boolean"
 
-#: parser/parse_expr.c:3452 parser/parse_expr.c:3470
+#: parser/parse_expr.c:3448 parser/parse_expr.c:3466
 #, c-format
 msgid "operator precedence change: %s is now lower precedence than %s"
 msgstr "cambio de precedencia de operadores: %s es ahora de menor precedencia que %s"
 
-#: parser/parse_func.c:195
+#: parser/parse_func.c:191
 #, c-format
 msgid "argument name \"%s\" used more than once"
 msgstr "nombre de argumento «%s» especificado más de una vez"
 
-#: parser/parse_func.c:206
+#: parser/parse_func.c:202
 #, c-format
 msgid "positional argument cannot follow named argument"
 msgstr "un argumento posicional no puede seguir a un argumento con nombre"
 
-#: parser/parse_func.c:288 parser/parse_func.c:2258
+#: parser/parse_func.c:284 parser/parse_func.c:2243
 #, c-format
 msgid "%s is not a procedure"
 msgstr "%s no es un procedimiento"
 
-#: parser/parse_func.c:292
+#: parser/parse_func.c:288
 #, c-format
 msgid "To call a function, use SELECT."
 msgstr "Para invocar a una función, use SELECT."
 
-#: parser/parse_func.c:298
+#: parser/parse_func.c:294
 #, c-format
 msgid "%s is a procedure"
 msgstr "%s es un procedimiento"
 
-#: parser/parse_func.c:302
+#: parser/parse_func.c:298
 #, c-format
 msgid "To call a procedure, use CALL."
 msgstr "Para invocar a un procedimiento, use CALL."
 
-#: parser/parse_func.c:316
+#: parser/parse_func.c:312
 #, c-format
 msgid "%s(*) specified, but %s is not an aggregate function"
 msgstr "se especificó %s(*), pero %s no es una función de agregación"
 
-#: parser/parse_func.c:323
+#: parser/parse_func.c:319
 #, c-format
 msgid "DISTINCT specified, but %s is not an aggregate function"
 msgstr "se especificó DISTINCT, pero %s no es una función de agregación"
 
-#: parser/parse_func.c:329
+#: parser/parse_func.c:325
 #, c-format
 msgid "WITHIN GROUP specified, but %s is not an aggregate function"
 msgstr "se especificó WITHIN GROUP, pero %s no es una función de agregación"
 
-#: parser/parse_func.c:335
+#: parser/parse_func.c:331
 #, c-format
 msgid "ORDER BY specified, but %s is not an aggregate function"
 msgstr "se especificó ORDER BY, pero %s no es una función de agregación"
 
-#: parser/parse_func.c:341
+#: parser/parse_func.c:337
 #, c-format
 msgid "FILTER specified, but %s is not an aggregate function"
 msgstr "se especificó FILTER, pero %s no es una función de agregación"
 
-#: parser/parse_func.c:347
+#: parser/parse_func.c:343
 #, c-format
 msgid "OVER specified, but %s is not a window function nor an aggregate function"
 msgstr "se especificó OVER, pero %s no es una función de ventana deslizante ni una función de agregación"
 
-#: parser/parse_func.c:385
+#: parser/parse_func.c:381
 #, c-format
 msgid "WITHIN GROUP is required for ordered-set aggregate %s"
 msgstr "WITHIN GROUP es obligatorio para la función de agregación de conjuntos ordenados %s"
 
-#: parser/parse_func.c:391
+#: parser/parse_func.c:387
 #, c-format
 msgid "OVER is not supported for ordered-set aggregate %s"
 msgstr "OVER no está soportado para la función de agregación de conjuntos ordenados %s"
 
-#: parser/parse_func.c:422 parser/parse_func.c:451
+#: parser/parse_func.c:418 parser/parse_func.c:447
 #, c-format
 msgid "There is an ordered-set aggregate %s, but it requires %d direct arguments, not %d."
 msgstr "Hay una función de agregación de conjuntos ordenados %s, pero requiere %d argumentos directos, no %d."
 
-#: parser/parse_func.c:476
+#: parser/parse_func.c:472
 #, c-format
 msgid "To use the hypothetical-set aggregate %s, the number of hypothetical direct arguments (here %d) must match the number of ordering columns (here %d)."
 msgstr "Para usar la función de agregación de conjunto hipotética %s, el número de argumentos hipotéticos directos (acá %d) debe coincidir con el número de columnas del ordenamiento (acá %d)."
 
-#: parser/parse_func.c:490
+#: parser/parse_func.c:486
 #, c-format
 msgid "There is an ordered-set aggregate %s, but it requires at least %d direct arguments."
 msgstr "Hay una función de agregación de conjuntos ordenados %s, pero requiere al menos %d argumentos directos"
 
-#: parser/parse_func.c:509
+#: parser/parse_func.c:505
 #, c-format
 msgid "%s is not an ordered-set aggregate, so it cannot have WITHIN GROUP"
 msgstr "%s no es una función de agregación de conjunto ordenado, por lo que no puede tener WITHIN GROUP"
 
-#: parser/parse_func.c:522
+#: parser/parse_func.c:518
 #, c-format
 msgid "window function %s requires an OVER clause"
 msgstr "la función de ventana deslizante %s requiere una cláusula OVER"
 
-#: parser/parse_func.c:529
+#: parser/parse_func.c:525
 #, c-format
 msgid "window function %s cannot have WITHIN GROUP"
 msgstr "la función de ventana deslizante %s no puede tener WITHIN GROUP"
 
-#: parser/parse_func.c:558
+#: parser/parse_func.c:554
 #, c-format
 msgid "procedure %s is not unique"
 msgstr "la procedimiento %s no es único"
 
-#: parser/parse_func.c:561
+#: parser/parse_func.c:557
 #, c-format
 msgid "Could not choose a best candidate procedure. You might need to add explicit type casts."
 msgstr "No se pudo escoger el procedimiento más adecuado. Puede ser necesario agregar conversiones explícitas de tipos."
 
-#: parser/parse_func.c:567
+#: parser/parse_func.c:563
 #, c-format
 msgid "function %s is not unique"
 msgstr "la función %s no es única"
 
-#: parser/parse_func.c:570
+#: parser/parse_func.c:566
 #, c-format
 msgid "Could not choose a best candidate function. You might need to add explicit type casts."
 msgstr "No se pudo escoger la función más adecuada. Puede ser necesario agregar conversiones explícitas de tipos."
 
-#: parser/parse_func.c:609
+#: parser/parse_func.c:605
 #, c-format
 msgid "No aggregate function matches the given name and argument types. Perhaps you misplaced ORDER BY; ORDER BY must appear after all regular arguments of the aggregate."
 msgstr "Ninguna función coincide en el nombre y tipos de argumentos. Quizás puso ORDER BY en una mala posición; ORDER BY debe aparecer después de todos los argumentos normales de la función de agregación."
 
-#: parser/parse_func.c:617 parser/parse_func.c:2301
+#: parser/parse_func.c:613 parser/parse_func.c:2286
 #, c-format
 msgid "procedure %s does not exist"
 msgstr "no existe el procedimiento «%s»"
 
-#: parser/parse_func.c:620
+#: parser/parse_func.c:616
 #, c-format
 msgid "No procedure matches the given name and argument types. You might need to add explicit type casts."
 msgstr "Ningún procedimiento coincide en el nombre y tipos de argumentos. Puede ser necesario agregar conversión explícita de tipos."
 
-#: parser/parse_func.c:629
+#: parser/parse_func.c:625
 #, c-format
 msgid "No function matches the given name and argument types. You might need to add explicit type casts."
 msgstr "Ninguna función coincide en el nombre y tipos de argumentos. Puede ser necesario agregar conversión explícita de tipos."
 
-#: parser/parse_func.c:731
+#: parser/parse_func.c:727
 #, c-format
 msgid "VARIADIC argument must be an array"
 msgstr "el parámetro VARIADIC debe ser un array"
 
-#: parser/parse_func.c:783 parser/parse_func.c:847
+#: parser/parse_func.c:779 parser/parse_func.c:843
 #, c-format
 msgid "%s(*) must be used to call a parameterless aggregate function"
 msgstr "%s(*) debe ser usado para invocar una función de agregación sin parámetros"
 
-#: parser/parse_func.c:790
+#: parser/parse_func.c:786
 #, c-format
 msgid "aggregates cannot return sets"
 msgstr "las funciones de agregación no pueden retornar conjuntos"
 
-#: parser/parse_func.c:805
+#: parser/parse_func.c:801
 #, c-format
 msgid "aggregates cannot use named arguments"
 msgstr "las funciones de agregación no pueden usar argumentos con nombre"
 
-#: parser/parse_func.c:837
+#: parser/parse_func.c:833
 #, c-format
 msgid "DISTINCT is not implemented for window functions"
 msgstr "DISTINCT no está implementado para funciones de ventana deslizante"
 
-#: parser/parse_func.c:857
+#: parser/parse_func.c:853
 #, c-format
 msgid "aggregate ORDER BY is not implemented for window functions"
 msgstr "el ORDER BY de funciones de agregación no está implementado para funciones de ventana deslizante"
 
-#: parser/parse_func.c:866
+#: parser/parse_func.c:862
 #, c-format
 msgid "FILTER is not implemented for non-aggregate window functions"
 msgstr "FILTER no está implementado para funciones de ventana deslizante"
 
-#: parser/parse_func.c:875
+#: parser/parse_func.c:871
 #, c-format
 msgid "window function calls cannot contain set-returning function calls"
 msgstr "las llamadas a funciones de ventana no pueden contener llamadas a funciones que retornan conjuntos"
 
-#: parser/parse_func.c:883
+#: parser/parse_func.c:879
 #, c-format
 msgid "window functions cannot return sets"
 msgstr "las funciones de ventana deslizante no pueden retornar conjuntos"
 
-#: parser/parse_func.c:2139 parser/parse_func.c:2330
+#: parser/parse_func.c:2124 parser/parse_func.c:2315
 #, c-format
 msgid "could not find a function named \"%s\""
 msgstr "no se pudo encontrar una función llamada «%s»"
 
-#: parser/parse_func.c:2153 parser/parse_func.c:2348
+#: parser/parse_func.c:2138 parser/parse_func.c:2333
 #, c-format
 msgid "function name \"%s\" is not unique"
 msgstr "el nombre de función «%s» no es único"
 
-#: parser/parse_func.c:2155 parser/parse_func.c:2350
+#: parser/parse_func.c:2140 parser/parse_func.c:2335
 #, c-format
 msgid "Specify the argument list to select the function unambiguously."
 msgstr "Especifique la lista de argumentos para seleccionar la función sin ambigüedad."
 
-#: parser/parse_func.c:2199
+#: parser/parse_func.c:2184
 #, c-format
 msgid "procedures cannot have more than %d argument"
 msgid_plural "procedures cannot have more than %d arguments"
 msgstr[0] "los procedimientos no pueden tener más de %d argumento"
 msgstr[1] "los procedimientos no pueden tener más de %d argumentos"
 
-#: parser/parse_func.c:2248
+#: parser/parse_func.c:2233
 #, c-format
 msgid "%s is not a function"
 msgstr "«%s» no es una función"
 
-#: parser/parse_func.c:2268
+#: parser/parse_func.c:2253
 #, c-format
 msgid "function %s is not an aggregate"
 msgstr "la función %s no es una función de agregación"
 
-#: parser/parse_func.c:2296
+#: parser/parse_func.c:2281
 #, c-format
 msgid "could not find a procedure named \"%s\""
 msgstr "no se pudo encontrar un procedimiento llamado «%s»"
 
-#: parser/parse_func.c:2310
+#: parser/parse_func.c:2295
 #, c-format
 msgid "could not find an aggregate named \"%s\""
 msgstr "no se pudo encontrar una función de agregación llamada «%s»"
 
-#: parser/parse_func.c:2315
+#: parser/parse_func.c:2300
 #, c-format
 msgid "aggregate %s(*) does not exist"
 msgstr "no existe la función de agregación %s(*)"
 
-#: parser/parse_func.c:2320
+#: parser/parse_func.c:2305
 #, c-format
 msgid "aggregate %s does not exist"
 msgstr "no existe la función de agregación %s"
 
-#: parser/parse_func.c:2355
+#: parser/parse_func.c:2340
 #, c-format
 msgid "procedure name \"%s\" is not unique"
 msgstr "el nombre de procedimiento «%s» no es única"
 
-#: parser/parse_func.c:2357
+#: parser/parse_func.c:2342
 #, c-format
 msgid "Specify the argument list to select the procedure unambiguously."
 msgstr "Especifique la lista de argumentos para seleccionar el procedimiento sin ambigüedad."
 
-#: parser/parse_func.c:2362
+#: parser/parse_func.c:2347
 #, c-format
 msgid "aggregate name \"%s\" is not unique"
 msgstr "el atributo de la función de agregación «%s» no es único"
 
-#: parser/parse_func.c:2364
+#: parser/parse_func.c:2349
 #, c-format
 msgid "Specify the argument list to select the aggregate unambiguously."
 msgstr "Especifique la lista de argumentos para seleccionar la función de agregación sin ambigüedad."
 
-#: parser/parse_func.c:2369
+#: parser/parse_func.c:2354
 #, c-format
 msgid "routine name \"%s\" is not unique"
 msgstr "el nombre de rutina «%s» no es único"
 
-#: parser/parse_func.c:2371
+#: parser/parse_func.c:2356
 #, c-format
 msgid "Specify the argument list to select the routine unambiguously."
 msgstr "Especifique la lista de argumentos para seleccionar la rutina sin ambigüedad."
 
-#: parser/parse_func.c:2426
+#: parser/parse_func.c:2411
 msgid "set-returning functions are not allowed in JOIN conditions"
 msgstr "no se permiten funciones que retornan conjuntos en condiciones JOIN"
 
-#: parser/parse_func.c:2447
+#: parser/parse_func.c:2432
 msgid "set-returning functions are not allowed in policy expressions"
 msgstr "no se permiten funciones que retornan conjuntos en expresiones de política"
 
-#: parser/parse_func.c:2463
+#: parser/parse_func.c:2448
 msgid "set-returning functions are not allowed in window definitions"
 msgstr "no se permiten funciones que retornan conjuntos definiciones de ventana deslizante"
 
-#: parser/parse_func.c:2501
+#: parser/parse_func.c:2486
 msgid "set-returning functions are not allowed in check constraints"
 msgstr "no se permiten funciones de que retornan conjuntos en restricciones «check»"
 
-#: parser/parse_func.c:2505
+#: parser/parse_func.c:2490
 msgid "set-returning functions are not allowed in DEFAULT expressions"
 msgstr "no se permiten funciones que retornan conjuntos en expresiones DEFAULT"
 
-#: parser/parse_func.c:2508
+#: parser/parse_func.c:2493
 msgid "set-returning functions are not allowed in index expressions"
 msgstr "no se permiten funciones que retornan conjuntos en expresiones de índice"
 
-#: parser/parse_func.c:2511
+#: parser/parse_func.c:2496
 msgid "set-returning functions are not allowed in index predicates"
 msgstr "no se permiten funciones que retornan conjuntos en predicados de índice"
 
-#: parser/parse_func.c:2514
+#: parser/parse_func.c:2499
 msgid "set-returning functions are not allowed in transform expressions"
 msgstr "no se permiten funciones que retornan conjuntos en expresiones de transformación"
 
-#: parser/parse_func.c:2517
+#: parser/parse_func.c:2502
 msgid "set-returning functions are not allowed in EXECUTE parameters"
 msgstr "no se permiten funciones que retornan conjuntos en parámetros a EXECUTE"
 
-#: parser/parse_func.c:2520
+#: parser/parse_func.c:2505
 msgid "set-returning functions are not allowed in trigger WHEN conditions"
 msgstr "no se permiten funciones que retornan conjuntos en condiciones WHEN de un disparador"
 
-#: parser/parse_func.c:2523
+#: parser/parse_func.c:2508
 msgid "set-returning functions are not allowed in partition bound"
 msgstr "no se permiten funciones que retornan conjuntos en bordes de partición"
 
-#: parser/parse_func.c:2526
+#: parser/parse_func.c:2511
 msgid "set-returning functions are not allowed in partition key expressions"
 msgstr "no se permiten funciones que retornan conjuntos en expresiones de llave de particionamiento"
 
-#: parser/parse_func.c:2529
+#: parser/parse_func.c:2514
 msgid "set-returning functions are not allowed in CALL arguments"
 msgstr "no se permiten funciones que retornan conjuntos en argumentos de CALL"
 
-#: parser/parse_func.c:2532
+#: parser/parse_func.c:2517
 msgid "set-returning functions are not allowed in COPY FROM WHERE conditions"
 msgstr "no se permiten funciones que retornan conjuntos en las condiciones WHERE de COPY FROM"
 
-#: parser/parse_func.c:2535
+#: parser/parse_func.c:2520
 msgid "set-returning functions are not allowed in column generation expressions"
 msgstr "no se permiten funciones que retornan conjuntos en expresiones de generación de columna"
 
-#: parser/parse_node.c:87
+#: parser/parse_node.c:86
 #, c-format
 msgid "target lists can have at most %d entries"
 msgstr "las listas de resultados pueden tener a lo más %d entradas"
 
-#: parser/parse_node.c:257
+#: parser/parse_node.c:235
 #, c-format
 msgid "cannot subscript type %s because it is not an array"
 msgstr "no se puede poner subíndices al tipo %s porque no es un array"
 
-#: parser/parse_node.c:362 parser/parse_node.c:399
+#: parser/parse_node.c:340 parser/parse_node.c:377
 #, c-format
 msgid "array subscript must have type integer"
 msgstr "los subíndices de arrays deben tener tipo entero"
 
-#: parser/parse_node.c:430
+#: parser/parse_node.c:408
 #, c-format
 msgid "array assignment requires type %s but expression is of type %s"
 msgstr "la asignación de array debe tener tipo %s pero la expresión es de tipo %s"
 
-#: parser/parse_oper.c:125 parser/parse_oper.c:724 utils/adt/regproc.c:520
-#: utils/adt/regproc.c:704
+#: parser/parse_oper.c:125 parser/parse_oper.c:724 utils/adt/regproc.c:521
+#: utils/adt/regproc.c:705
 #, c-format
 msgid "operator does not exist: %s"
 msgstr "el operador no existe: %s"
@@ -16111,200 +16095,199 @@ msgstr "op ANY/ALL (array) requiere un operador que no retorne un conjunto"
 msgid "inconsistent types deduced for parameter $%d"
 msgstr "para el parámetro $%d se dedujeron tipos de dato inconsistentes"
 
-#: parser/parse_relation.c:179
+#: parser/parse_relation.c:201
 #, c-format
 msgid "table reference \"%s\" is ambiguous"
 msgstr "la referencia a la tabla «%s» es ambigua"
 
-#: parser/parse_relation.c:223
+#: parser/parse_relation.c:245
 #, c-format
 msgid "table reference %u is ambiguous"
 msgstr "la referencia a la tabla %u es ambigua"
 
-#: parser/parse_relation.c:422
+#: parser/parse_relation.c:444
 #, c-format
 msgid "table name \"%s\" specified more than once"
 msgstr "el nombre de tabla «%s» fue especificado más de una vez"
 
-#: parser/parse_relation.c:449 parser/parse_relation.c:3292
+#: parser/parse_relation.c:473 parser/parse_relation.c:3446
 #, c-format
 msgid "invalid reference to FROM-clause entry for table \"%s\""
 msgstr "referencia a la entrada de la cláusula FROM para la tabla «%s» no válida"
 
-#: parser/parse_relation.c:452 parser/parse_relation.c:3297
+#: parser/parse_relation.c:477 parser/parse_relation.c:3451
 #, c-format
 msgid "There is an entry for table \"%s\", but it cannot be referenced from this part of the query."
 msgstr "Hay una entrada para la tabla «%s», pero no puede ser referenciada desde esta parte de la consulta."
 
-#: parser/parse_relation.c:454
+#: parser/parse_relation.c:479
 #, c-format
 msgid "The combining JOIN type must be INNER or LEFT for a LATERAL reference."
 msgstr "El tipo de JOIN debe ser INNER o LEFT para una referencia LATERAL."
 
-#: parser/parse_relation.c:730
+#: parser/parse_relation.c:690
 #, c-format
 msgid "system column \"%s\" reference in check constraint is invalid"
 msgstr "la referencia a columna a sistema «%s» en una restricción check no es válida"
 
-#: parser/parse_relation.c:741
+#: parser/parse_relation.c:699
 #, c-format
 msgid "cannot use system column \"%s\" in column generation expression"
 msgstr "no se puede usar la columna de sistema «%s» en una expresión de generación de columna"
 
-#: parser/parse_relation.c:1100 parser/parse_relation.c:1404
-#: parser/parse_relation.c:1985
+#: parser/parse_relation.c:1170 parser/parse_relation.c:1620
+#: parser/parse_relation.c:2262
 #, c-format
 msgid "table \"%s\" has %d columns available but %d columns specified"
 msgstr "la tabla «%s» tiene %d columnas pero se especificaron %d"
 
-#: parser/parse_relation.c:1187
+#: parser/parse_relation.c:1372
 #, c-format
 msgid "There is a WITH item named \"%s\", but it cannot be referenced from this part of the query."
 msgstr "Hay un elemento WITH llamado «%s», pero no puede ser referenciada desde esta parte de la consulta."
 
-#: parser/parse_relation.c:1189
+#: parser/parse_relation.c:1374
 #, c-format
 msgid "Use WITH RECURSIVE, or re-order the WITH items to remove forward references."
 msgstr "Use WITH RECURSIVE, o reordene los elementos de WITH para eliminar referencias hacia adelante."
 
-#: parser/parse_relation.c:1525
+#: parser/parse_relation.c:1747
 #, c-format
 msgid "a column definition list is only allowed for functions returning \"record\""
 msgstr "sólo se permite una lista de definición de columnas en funciones que retornan «record»"
 
-#: parser/parse_relation.c:1534
+#: parser/parse_relation.c:1756
 #, c-format
 msgid "a column definition list is required for functions returning \"record\""
 msgstr "la lista de definición de columnas es obligatoria para funciones que retornan «record»"
 
-#: parser/parse_relation.c:1620
+#: parser/parse_relation.c:1845
 #, c-format
 msgid "function \"%s\" in FROM has unsupported return type %s"
 msgstr "la función «%s» en FROM tiene el tipo de retorno no soportado %s"
 
-#: parser/parse_relation.c:1811
+#: parser/parse_relation.c:2054
 #, c-format
 msgid "VALUES lists \"%s\" have %d columns available but %d columns specified"
 msgstr "la lista VALUES «%s» tiene %d columnas disponibles pero se especificaron %d"
 
-#: parser/parse_relation.c:1867
+#: parser/parse_relation.c:2125
 #, c-format
 msgid "joins can have at most %d columns"
 msgstr "los joins pueden tener a lo más %d columnas"
 
-#: parser/parse_relation.c:1958
+#: parser/parse_relation.c:2235
 #, c-format
 msgid "WITH query \"%s\" does not have a RETURNING clause"
 msgstr "la consulta WITH «%s» no tiene una cláusula RETURNING"
 
-#: parser/parse_relation.c:2899 parser/parse_relation.c:2937
-#: parser/parse_relation.c:2946 parser/parse_relation.c:3072
-#: parser/parse_relation.c:3082
+#: parser/parse_relation.c:3221 parser/parse_relation.c:3231
 #, c-format
 msgid "column %d of relation \"%s\" does not exist"
 msgstr "no existe la columna %d en la relación «%s»"
 
-#: parser/parse_relation.c:3295
+#: parser/parse_relation.c:3449
 #, c-format
 msgid "Perhaps you meant to reference the table alias \"%s\"."
 msgstr "Probablemente quiera hacer referencia al alias de la tabla «%s»."
 
-#: parser/parse_relation.c:3303
+#: parser/parse_relation.c:3457
 #, c-format
 msgid "missing FROM-clause entry for table \"%s\""
 msgstr "falta una entrada para la tabla «%s» en la cláusula FROM"
 
-#: parser/parse_relation.c:3355
+#: parser/parse_relation.c:3509
 #, c-format
 msgid "Perhaps you meant to reference the column \"%s.%s\"."
 msgstr "Probablemente quiera hacer referencia a la columna «%s.%s»."
 
-#: parser/parse_relation.c:3357
+#: parser/parse_relation.c:3511
 #, c-format
 msgid "There is a column named \"%s\" in table \"%s\", but it cannot be referenced from this part of the query."
 msgstr "Hay una columna llamada «%s» en la tabla «%s», pero no puede ser referenciada desde esta parte de la consulta."
 
-#: parser/parse_relation.c:3374
+#: parser/parse_relation.c:3528
 #, c-format
 msgid "Perhaps you meant to reference the column \"%s.%s\" or the column \"%s.%s\"."
 msgstr "Probablemente quiera hacer referencia a la columna «%s.%s» o la columna «%s.%s»."
 
-#: parser/parse_target.c:484 parser/parse_target.c:791
+#: parser/parse_target.c:478 parser/parse_target.c:792
 #, c-format
 msgid "cannot assign to system column \"%s\""
 msgstr "no se puede asignar a la columna de sistema «%s»"
 
-#: parser/parse_target.c:512
+#: parser/parse_target.c:506
 #, c-format
 msgid "cannot set an array element to DEFAULT"
 msgstr "no se puede definir un elemento de array a DEFAULT"
 
-#: parser/parse_target.c:517
+#: parser/parse_target.c:511
 #, c-format
 msgid "cannot set a subfield to DEFAULT"
 msgstr "no se puede definir un subcampo a DEFAULT"
 
-#: parser/parse_target.c:586
+#: parser/parse_target.c:584
 #, c-format
 msgid "column \"%s\" is of type %s but expression is of type %s"
 msgstr "la columna «%s» es de tipo %s pero la expresión es de tipo %s"
 
-#: parser/parse_target.c:775
+#: parser/parse_target.c:776
 #, c-format
 msgid "cannot assign to field \"%s\" of column \"%s\" because its type %s is not a composite type"
 msgstr "no se puede asignar al campo «%s» de la columna «%s» porque su tipo %s no es un tipo compuesto"
 
-#: parser/parse_target.c:784
+#: parser/parse_target.c:785
 #, c-format
 msgid "cannot assign to field \"%s\" of column \"%s\" because there is no such column in data type %s"
 msgstr "no se puede asignar al campo «%s» de la columna «%s» porque no existe esa columna en el tipo de dato %s"
 
-#: parser/parse_target.c:861
+#: parser/parse_target.c:864
 #, c-format
 msgid "array assignment to \"%s\" requires type %s but expression is of type %s"
 msgstr "la asignación de array a «%s» requiere tipo %s pero la expresión es de tipo %s"
 
-#: parser/parse_target.c:871
+#: parser/parse_target.c:874
 #, c-format
 msgid "subfield \"%s\" is of type %s but expression is of type %s"
 msgstr "el subcampo «%s» es de tipo %s pero la expresión es de tipo %s"
 
-#: parser/parse_target.c:1290
+#: parser/parse_target.c:1295
 #, c-format
 msgid "SELECT * with no tables specified is not valid"
 msgstr "SELECT * sin especificar tablas no es válido"
 
-#: parser/parse_type.c:101
+#: parser/parse_type.c:100
 #, c-format
 msgid "improper %%TYPE reference (too few dotted names): %s"
 msgstr "referencia %%TYPE inapropiada (muy pocos nombres con punto): %s"
 
-#: parser/parse_type.c:123
+#: parser/parse_type.c:122
 #, c-format
 msgid "improper %%TYPE reference (too many dotted names): %s"
 msgstr "la referencia a %%TYPE es inapropiada (demasiados nombres con punto): %s"
 
-#: parser/parse_type.c:158
+#: parser/parse_type.c:157
 #, c-format
 msgid "type reference %s converted to %s"
 msgstr "la referencia al tipo %s convertida a %s"
 
-#: parser/parse_type.c:279 parser/parse_type.c:858 utils/cache/typcache.c:374
+#: parser/parse_type.c:278 parser/parse_type.c:857 utils/cache/typcache.c:383
+#: utils/cache/typcache.c:437
 #, c-format
 msgid "type \"%s\" is only a shell"
 msgstr "el tipo «%s» está inconcluso"
 
-#: parser/parse_type.c:364
+#: parser/parse_type.c:363
 #, c-format
 msgid "type modifier is not allowed for type \"%s\""
 msgstr "un modificador de tipo no está permitido para el tipo «%s»"
 
-#: parser/parse_type.c:406
+#: parser/parse_type.c:405
 #, c-format
 msgid "type modifiers must be simple constants or identifiers"
 msgstr "los modificadores de tipo deben ser constantes simples o identificadores"
 
-#: parser/parse_type.c:722 parser/parse_type.c:821
+#: parser/parse_type.c:721 parser/parse_type.c:820
 #, c-format
 msgid "invalid type name \"%s\""
 msgstr "el nombre de tipo «%s» no es válido"
@@ -16314,393 +16297,442 @@ msgstr "el nombre de tipo «%s» no es válido"
 msgid "cannot create partitioned table as inheritance child"
 msgstr "no se puede crear una tabla particionada como hija de herencia"
 
-#: parser/parse_utilcmd.c:426
+#: parser/parse_utilcmd.c:427
 #, c-format
 msgid "%s will create implicit sequence \"%s\" for serial column \"%s.%s\""
 msgstr "%s creará una secuencia implícita «%s» para la columna serial «%s.%s»"
 
-#: parser/parse_utilcmd.c:550
+#: parser/parse_utilcmd.c:558
 #, c-format
 msgid "array of serial is not implemented"
 msgstr "array de serial no está implementado"
 
-#: parser/parse_utilcmd.c:627 parser/parse_utilcmd.c:639
+#: parser/parse_utilcmd.c:636 parser/parse_utilcmd.c:648
 #, c-format
 msgid "conflicting NULL/NOT NULL declarations for column \"%s\" of table \"%s\""
 msgstr "las declaraciones NULL/NOT NULL no son coincidentes para la columna «%s» de la tabla «%s»"
 
-#: parser/parse_utilcmd.c:651
+#: parser/parse_utilcmd.c:660
 #, c-format
 msgid "multiple default values specified for column \"%s\" of table \"%s\""
 msgstr "múltiples valores default especificados para columna «%s» de tabla «%s»"
 
-#: parser/parse_utilcmd.c:668
+#: parser/parse_utilcmd.c:677
 #, c-format
 msgid "identity columns are not supported on typed tables"
 msgstr "las columnas identidad no está soportadas en tablas tipadas"
 
-#: parser/parse_utilcmd.c:672
+#: parser/parse_utilcmd.c:681
 #, c-format
 msgid "identity columns are not supported on partitions"
 msgstr "las columnas identidad no están soportadas en particiones"
 
-#: parser/parse_utilcmd.c:681
+#: parser/parse_utilcmd.c:690
 #, c-format
 msgid "multiple identity specifications for column \"%s\" of table \"%s\""
 msgstr "múltiples especificaciones de identidad para columna «%s» de tabla «%s»"
 
-#: parser/parse_utilcmd.c:700
+#: parser/parse_utilcmd.c:710
 #, c-format
 msgid "generated columns are not supported on typed tables"
 msgstr "las columnas generadas no están soportadas en tablas tipadas"
 
-#: parser/parse_utilcmd.c:704
+#: parser/parse_utilcmd.c:714
 #, c-format
 msgid "generated columns are not supported on partitions"
 msgstr "las columnas generadas no están soportadas en particiones"
 
-#: parser/parse_utilcmd.c:709
+#: parser/parse_utilcmd.c:719
 #, c-format
 msgid "multiple generation clauses specified for column \"%s\" of table \"%s\""
 msgstr "múltiples cláusulas de generación especificadas para columna «%s» de tabla «%s»"
 
-#: parser/parse_utilcmd.c:727 parser/parse_utilcmd.c:842
+#: parser/parse_utilcmd.c:737 parser/parse_utilcmd.c:852
 #, c-format
 msgid "primary key constraints are not supported on foreign tables"
 msgstr "las restricciones de llave primaria no están soportadas en tablas foráneas"
 
-#: parser/parse_utilcmd.c:736 parser/parse_utilcmd.c:852
+#: parser/parse_utilcmd.c:746 parser/parse_utilcmd.c:862
 #, c-format
 msgid "unique constraints are not supported on foreign tables"
 msgstr "las restricciones unique no están soportadas en tablas foráneas"
 
-#: parser/parse_utilcmd.c:781
+#: parser/parse_utilcmd.c:791
 #, c-format
 msgid "both default and identity specified for column \"%s\" of table \"%s\""
 msgstr "tanto el valor por omisión como identidad especificados para columna «%s» de tabla «%s»"
 
-#: parser/parse_utilcmd.c:789
+#: parser/parse_utilcmd.c:799
 #, c-format
 msgid "both default and generation expression specified for column \"%s\" of table \"%s\""
 msgstr "tanto el valor por omisión como expresión de generación especificados para columna «%s» de tabla «%s»"
 
-#: parser/parse_utilcmd.c:797
+#: parser/parse_utilcmd.c:807
 #, c-format
 msgid "both identity and generation expression specified for column \"%s\" of table \"%s\""
 msgstr "tanto identidad como expresión de generación especificados para columna «%s» de tabla «%s»"
 
-#: parser/parse_utilcmd.c:862
+#: parser/parse_utilcmd.c:872
 #, c-format
 msgid "exclusion constraints are not supported on foreign tables"
 msgstr "las restricciones de exclusión no están soportadas en tablas foráneas"
 
-#: parser/parse_utilcmd.c:868
+#: parser/parse_utilcmd.c:878
 #, c-format
 msgid "exclusion constraints are not supported on partitioned tables"
 msgstr "las restricciones de exclusión no están soportadas en tablas particionadas"
 
-#: parser/parse_utilcmd.c:932
+#: parser/parse_utilcmd.c:943
 #, c-format
 msgid "LIKE is not supported for creating foreign tables"
 msgstr "LIKE no está soportado para la creación de tablas foráneas"
 
-#: parser/parse_utilcmd.c:1066
+#: parser/parse_utilcmd.c:1095
 #, c-format
 msgid "Generation expression for column \"%s\" contains a whole-row reference to table \"%s\"."
 msgstr "La expresión de generación para la columna «%s» contiene una referencia a la fila completa (whole-row) de la tabla «%s»."
 
-#: parser/parse_utilcmd.c:1563 parser/parse_utilcmd.c:1670
+#: parser/parse_utilcmd.c:1598 parser/parse_utilcmd.c:1707
 #, c-format
 msgid "Index \"%s\" contains a whole-row table reference."
 msgstr "El índice «%s» contiene una referencia a la fila completa (whole-row)."
 
-#: parser/parse_utilcmd.c:2036
+#: parser/parse_utilcmd.c:2075
 #, c-format
 msgid "cannot use an existing index in CREATE TABLE"
 msgstr "no se puede usar un índice existente en CREATE TABLE"
 
-#: parser/parse_utilcmd.c:2056
+#: parser/parse_utilcmd.c:2095
 #, c-format
 msgid "index \"%s\" is already associated with a constraint"
 msgstr "el índice «%s» ya está asociado a una restricción"
 
-#: parser/parse_utilcmd.c:2071
+#: parser/parse_utilcmd.c:2110
 #, c-format
 msgid "index \"%s\" is not valid"
 msgstr "el índice «%s» no es válido"
 
-#: parser/parse_utilcmd.c:2077
+#: parser/parse_utilcmd.c:2116
 #, c-format
 msgid "\"%s\" is not a unique index"
 msgstr "«%s» no es un índice único"
 
-#: parser/parse_utilcmd.c:2078 parser/parse_utilcmd.c:2085
-#: parser/parse_utilcmd.c:2092 parser/parse_utilcmd.c:2163
+#: parser/parse_utilcmd.c:2117 parser/parse_utilcmd.c:2124
+#: parser/parse_utilcmd.c:2131 parser/parse_utilcmd.c:2208
 #, c-format
 msgid "Cannot create a primary key or unique constraint using such an index."
 msgstr "No se puede crear una restricción de llave primaria o única usando un índice así."
 
-#: parser/parse_utilcmd.c:2084
+#: parser/parse_utilcmd.c:2123
 #, c-format
 msgid "index \"%s\" contains expressions"
 msgstr "el índice «%s» contiene expresiones"
 
-#: parser/parse_utilcmd.c:2091
+#: parser/parse_utilcmd.c:2130
 #, c-format
 msgid "\"%s\" is a partial index"
 msgstr "«%s» es un índice parcial"
 
-#: parser/parse_utilcmd.c:2103
+#: parser/parse_utilcmd.c:2142
 #, c-format
 msgid "\"%s\" is a deferrable index"
 msgstr "«%s» no es un índice postergable (deferrable)"
 
-#: parser/parse_utilcmd.c:2104
+#: parser/parse_utilcmd.c:2143
 #, c-format
 msgid "Cannot create a non-deferrable constraint using a deferrable index."
 msgstr "No se puede crear una restricción no postergable usando un índice postergable."
 
-#: parser/parse_utilcmd.c:2162
+#: parser/parse_utilcmd.c:2207
 #, c-format
 msgid "index \"%s\" column number %d does not have default sorting behavior"
 msgstr "el índice «%s» columna número %d no tiene comportamiento de ordenamiento por omisión"
 
-#: parser/parse_utilcmd.c:2319
+#: parser/parse_utilcmd.c:2364
 #, c-format
 msgid "column \"%s\" appears twice in primary key constraint"
 msgstr "la columna «%s» aparece dos veces en llave primaria"
 
-#: parser/parse_utilcmd.c:2325
+#: parser/parse_utilcmd.c:2370
 #, c-format
 msgid "column \"%s\" appears twice in unique constraint"
 msgstr "la columna «%s» aparece dos veces en restricción unique"
 
-#: parser/parse_utilcmd.c:2676
+#: parser/parse_utilcmd.c:2723
 #, c-format
 msgid "index expressions and predicates can refer only to the table being indexed"
 msgstr "las expresiones y predicados de índice sólo pueden referirse a la tabla en indexación"
 
-#: parser/parse_utilcmd.c:2722
+#: parser/parse_utilcmd.c:2769
 #, c-format
 msgid "rules on materialized views are not supported"
 msgstr "las reglas en vistas materializadas no están soportadas"
 
-#: parser/parse_utilcmd.c:2785
+#: parser/parse_utilcmd.c:2832
 #, c-format
 msgid "rule WHERE condition cannot contain references to other relations"
 msgstr "la condición WHERE de la regla no puede contener referencias a otras relaciones"
 
-#: parser/parse_utilcmd.c:2859
+#: parser/parse_utilcmd.c:2906
 #, c-format
 msgid "rules with WHERE conditions can only have SELECT, INSERT, UPDATE, or DELETE actions"
 msgstr "las reglas con condiciones WHERE sólo pueden tener acciones SELECT, INSERT, UPDATE o DELETE"
 
-#: parser/parse_utilcmd.c:2877 parser/parse_utilcmd.c:2976
-#: rewrite/rewriteHandler.c:501 rewrite/rewriteManip.c:1015
+#: parser/parse_utilcmd.c:2924 parser/parse_utilcmd.c:3025
+#: rewrite/rewriteHandler.c:502 rewrite/rewriteManip.c:1018
 #, c-format
 msgid "conditional UNION/INTERSECT/EXCEPT statements are not implemented"
 msgstr "las sentencias UNION/INTERSECT/EXCEPT condicionales no están implementadas"
 
-#: parser/parse_utilcmd.c:2895
+#: parser/parse_utilcmd.c:2942
 #, c-format
 msgid "ON SELECT rule cannot use OLD"
 msgstr "una regla ON SELECT no puede usar OLD"
 
-#: parser/parse_utilcmd.c:2899
+#: parser/parse_utilcmd.c:2946
 #, c-format
 msgid "ON SELECT rule cannot use NEW"
 msgstr "una regla ON SELECT no puede usar NEW"
 
-#: parser/parse_utilcmd.c:2908
+#: parser/parse_utilcmd.c:2955
 #, c-format
 msgid "ON INSERT rule cannot use OLD"
 msgstr "una regla ON INSERT no puede usar OLD"
 
-#: parser/parse_utilcmd.c:2914
+#: parser/parse_utilcmd.c:2961
 #, c-format
 msgid "ON DELETE rule cannot use NEW"
 msgstr "una regla ON DELETE no puede usar NEW"
 
-#: parser/parse_utilcmd.c:2942
+#: parser/parse_utilcmd.c:2989
 #, c-format
 msgid "cannot refer to OLD within WITH query"
 msgstr "no se puede hacer referencia a OLD dentro de una consulta WITH"
 
-#: parser/parse_utilcmd.c:2949
+#: parser/parse_utilcmd.c:2996
 #, c-format
 msgid "cannot refer to NEW within WITH query"
 msgstr "no se puede hacer referencia a NEW dentro de una consulta WITH"
 
-#: parser/parse_utilcmd.c:3407
+#: parser/parse_utilcmd.c:3455
 #, c-format
 msgid "misplaced DEFERRABLE clause"
 msgstr "cláusula DEFERRABLE mal puesta"
 
-#: parser/parse_utilcmd.c:3412 parser/parse_utilcmd.c:3427
+#: parser/parse_utilcmd.c:3460 parser/parse_utilcmd.c:3475
 #, c-format
 msgid "multiple DEFERRABLE/NOT DEFERRABLE clauses not allowed"
 msgstr "no se permiten múltiples cláusulas DEFERRABLE/NOT DEFERRABLE"
 
-#: parser/parse_utilcmd.c:3422
+#: parser/parse_utilcmd.c:3470
 #, c-format
 msgid "misplaced NOT DEFERRABLE clause"
 msgstr "la cláusula NOT DEFERRABLE está mal puesta"
 
-#: parser/parse_utilcmd.c:3443
+#: parser/parse_utilcmd.c:3483 parser/parse_utilcmd.c:3509 gram.y:5598
+#, c-format
+msgid "constraint declared INITIALLY DEFERRED must be DEFERRABLE"
+msgstr "una restricción declarada INITIALLY DEFERRED debe ser DEFERRABLE"
+
+#: parser/parse_utilcmd.c:3491
 #, c-format
 msgid "misplaced INITIALLY DEFERRED clause"
 msgstr "la cláusula INITIALLY DEFERRED está mal puesta"
 
-#: parser/parse_utilcmd.c:3448 parser/parse_utilcmd.c:3474
+#: parser/parse_utilcmd.c:3496 parser/parse_utilcmd.c:3522
 #, c-format
 msgid "multiple INITIALLY IMMEDIATE/DEFERRED clauses not allowed"
 msgstr "no se permiten múltiples cláusulas INITIALLY IMMEDIATE/DEFERRED"
 
-#: parser/parse_utilcmd.c:3469
+#: parser/parse_utilcmd.c:3517
 #, c-format
 msgid "misplaced INITIALLY IMMEDIATE clause"
 msgstr "la cláusula INITIALLY IMMEDIATE está mal puesta"
 
-#: parser/parse_utilcmd.c:3660
+#: parser/parse_utilcmd.c:3708
 #, c-format
 msgid "CREATE specifies a schema (%s) different from the one being created (%s)"
 msgstr "CREATE especifica un esquema (%s) diferente del que se está creando (%s)"
 
-#: parser/parse_utilcmd.c:3694
+#: parser/parse_utilcmd.c:3743
+#, fuzzy, c-format
+#| msgid "\"%s\" is a partitioned table"
+msgid "\"%s\" is not a partitioned table"
+msgstr "«%s» es una tabla particionada"
+
+#: parser/parse_utilcmd.c:3750
 #, c-format
 msgid "table \"%s\" is not partitioned"
 msgstr "«la tabla %s» no está particionada"
 
-#: parser/parse_utilcmd.c:3701
+#: parser/parse_utilcmd.c:3757
 #, c-format
 msgid "index \"%s\" is not partitioned"
 msgstr "el índice «%s» no está particionado"
 
-#: parser/parse_utilcmd.c:3735
+#: parser/parse_utilcmd.c:3797
 #, c-format
 msgid "a hash-partitioned table may not have a default partition"
 msgstr "una tabla particionada por hash no puede tener una partición default"
 
-#: parser/parse_utilcmd.c:3752
+#: parser/parse_utilcmd.c:3814
 #, c-format
 msgid "invalid bound specification for a hash partition"
 msgstr "especificación de borde no válida para partición de hash"
 
-#: parser/parse_utilcmd.c:3758 partitioning/partbounds.c:2817
+#: parser/parse_utilcmd.c:3820 partitioning/partbounds.c:4693
 #, c-format
 msgid "modulus for hash partition must be a positive integer"
 msgstr "el módulo para una partición hash debe ser un entero positivo"
 
-#: parser/parse_utilcmd.c:3765 partitioning/partbounds.c:2825
+#: parser/parse_utilcmd.c:3827 partitioning/partbounds.c:4701
 #, c-format
 msgid "remainder for hash partition must be less than modulus"
 msgstr "remanente en partición hash debe ser menor que el módulo"
 
-#: parser/parse_utilcmd.c:3778
+#: parser/parse_utilcmd.c:3840
 #, c-format
 msgid "invalid bound specification for a list partition"
 msgstr "especificación de borde no válida para partición de lista"
 
-#: parser/parse_utilcmd.c:3831
+#: parser/parse_utilcmd.c:3893
 #, c-format
 msgid "invalid bound specification for a range partition"
 msgstr "especificación de borde no válida para partición de rango"
 
-#: parser/parse_utilcmd.c:3837
+#: parser/parse_utilcmd.c:3899
 #, c-format
 msgid "FROM must specify exactly one value per partitioning column"
 msgstr "FROM debe especificar exactamente un valor por cada columna de particionado"
 
-#: parser/parse_utilcmd.c:3841
+#: parser/parse_utilcmd.c:3903
 #, c-format
 msgid "TO must specify exactly one value per partitioning column"
 msgstr "TO debe especificar exactamente un valor por cada columna de particionado"
 
-#: parser/parse_utilcmd.c:3955
+#: parser/parse_utilcmd.c:4017
 #, c-format
 msgid "cannot specify NULL in range bound"
 msgstr "no se puede especificar NULL en borde de rango"
 
-#: parser/parse_utilcmd.c:4004
+#: parser/parse_utilcmd.c:4066
 #, c-format
 msgid "every bound following MAXVALUE must also be MAXVALUE"
 msgstr "cada borde que sigue a un MAXVALUE debe ser también MAXVALUE"
 
-#: parser/parse_utilcmd.c:4011
+#: parser/parse_utilcmd.c:4073
 #, c-format
 msgid "every bound following MINVALUE must also be MINVALUE"
 msgstr "cada borde que siga a un MINVALUE debe ser también MINVALUE"
 
-#: parser/parse_utilcmd.c:4046
+#: parser/parse_utilcmd.c:4115
+#, fuzzy, c-format
+#| msgid "could not determine which collation to use for partition expression"
+msgid "could not determine which collation to use for partition bound expression"
+msgstr "no se pudo determinar qué ordenamiento (collation) usar para la expresión de particionamiento"
+
+#: parser/parse_utilcmd.c:4132
 #, c-format
 msgid "collation of partition bound value for column \"%s\" does not match partition key collation \"%s\""
 msgstr "el ordenamiento (collation) del valor de borde de partición para la columna «%s» no coincide con el ordenamiento de la llave de particionamiento «%s»"
 
-#: parser/parse_utilcmd.c:4063
+#: parser/parse_utilcmd.c:4149
 #, c-format
 msgid "specified value cannot be cast to type %s for column \"%s\""
 msgstr "el valor especificado no puede ser convertido al tipo %s para la columna «%s»"
 
-#: parser/scansup.c:204
+#: parser/parser.c:228
+#, fuzzy
+#| msgid "\"\\u\" must be followed by four hexadecimal digits."
+msgid "UESCAPE must be followed by a simple string literal"
+msgstr "«\\u» debe ser seguido por cuatro dígitos hexadecimales."
+
+#: parser/parser.c:233
+msgid "invalid Unicode escape character"
+msgstr "carácter de escape Unicode no válido"
+
+#: parser/parser.c:302 scan.l:1329
+#, c-format
+msgid "invalid Unicode escape value"
+msgstr "valor de escape Unicode no válido"
+
+#: parser/parser.c:449 scan.l:677
+#, c-format
+msgid "invalid Unicode escape"
+msgstr "valor de escape Unicode no válido"
+
+#: parser/parser.c:450
+#, fuzzy, c-format
+#| msgid "Unicode escapes must be \\uXXXX or \\UXXXXXXXX."
+msgid "Unicode escapes must be \\XXXX or \\+XXXXXX."
+msgstr "Los escapes Unicode deben ser \\uXXXX o \\UXXXXXXXX."
+
+#: parser/parser.c:478 scan.l:638 scan.l:654 scan.l:670
+#, c-format
+msgid "invalid Unicode surrogate pair"
+msgstr "par sustituto (surrogate) Unicode no válido"
+
+#: parser/scansup.c:203
 #, c-format
 msgid "identifier \"%s\" will be truncated to \"%s\""
 msgstr "el identificador «%s» se truncará a «%s»"
 
-#: partitioning/partbounds.c:959
+#: partitioning/partbounds.c:2833
 #, c-format
 msgid "partition \"%s\" conflicts with existing default partition \"%s\""
 msgstr "la partición «%s» está en conflicto con la partición default «%s» existente"
 
-#: partitioning/partbounds.c:1018
+#: partitioning/partbounds.c:2892
 #, c-format
 msgid "every hash partition modulus must be a factor of the next larger modulus"
 msgstr "cada módulo de partición hash debe ser un factor del próximo mayor módulo"
 
-#: partitioning/partbounds.c:1114
+#: partitioning/partbounds.c:2988
 #, c-format
 msgid "empty range bound specified for partition \"%s\""
 msgstr "borde de rango vació especificado para la partición «%s»"
 
-#: partitioning/partbounds.c:1116
+#: partitioning/partbounds.c:2990
 #, c-format
 msgid "Specified lower bound %s is greater than or equal to upper bound %s."
 msgstr "El límite inferior %s especificado es mayor o igual al límite superior %s."
 
-#: partitioning/partbounds.c:1213
+#: partitioning/partbounds.c:3087
 #, c-format
 msgid "partition \"%s\" would overlap partition \"%s\""
 msgstr "la partición «%s» traslaparía con la partición «%s»"
 
-#: partitioning/partbounds.c:1330
+#: partitioning/partbounds.c:3204
 #, c-format
 msgid "skipped scanning foreign table \"%s\" which is a partition of default partition \"%s\""
 msgstr "se omitió recorrer la tabla foránea «%s» que es una partición de la partición default «%s»"
 
-#: partitioning/partbounds.c:1363
-#, c-format
-msgid "updated partition constraint for default partition \"%s\" would be violated by some row"
-msgstr "la restricción de partición actualizada para la partición default «%s» sería violada por alguna fila"
-
-#: partitioning/partbounds.c:2821
+#: partitioning/partbounds.c:4697
 #, c-format
 msgid "remainder for hash partition must be a non-negative integer"
 msgstr "remanente en partición hash debe ser un entero no negativo"
 
-#: partitioning/partbounds.c:2848
+#: partitioning/partbounds.c:4724
 #, c-format
 msgid "\"%s\" is not a hash partitioned table"
 msgstr "«%s» es una tabla particionada por hash"
 
-#: partitioning/partbounds.c:2859 partitioning/partbounds.c:2976
+#: partitioning/partbounds.c:4735 partitioning/partbounds.c:4852
 #, c-format
 msgid "number of partitioning columns (%d) does not match number of partition keys provided (%d)"
 msgstr "el número de columnas de particionamiento (%d) no coincide con el número de llaves de particionamiento provistas (%d)"
 
-#: partitioning/partbounds.c:2881 partitioning/partbounds.c:2913
+#: partitioning/partbounds.c:4757 partitioning/partbounds.c:4789
 #, c-format
 msgid "column %d of the partition key has type \"%s\", but supplied value is of type \"%s\""
 msgstr "la columna %d de la llave de particionamiento tiene tipo «%s», pero el valor dado es de tipo «%s»"
 
+#: port/pg_sema.c:209 port/pg_shmem.c:640 port/posix_sema.c:209
+#: port/sysv_sema.c:327 port/sysv_shmem.c:640
+#, c-format
+msgid "could not stat data directory \"%s\": %m"
+msgstr "no se pudo hacer stat al directorio de datos «%s»: %m"
+
 #: port/pg_shmem.c:216 port/sysv_shmem.c:216
 #, c-format
 msgid "could not create shared memory segment: %m"
@@ -16738,47 +16770,42 @@ msgstr ""
 "Este error *no* significa que se haya quedado sin espacio en disco.  Ocurre cuando se han usado todos los IDs de memoria compartida disponibles, en cuyo caso puede incrementar el parámetro SHMMNI del kernel, o bien porque se ha alcanzado el límite total de memoria compartida.\n"
 "La documentación de PostgreSQL contiene más información acerca de la configuración de memoria compartida."
 
-#: port/pg_shmem.c:577 port/sysv_shmem.c:577
+#: port/pg_shmem.c:578 port/sysv_shmem.c:578
 #, c-format
 msgid "could not map anonymous shared memory: %m"
 msgstr "no se pudo mapear memoria compartida anónima: %m"
 
-#: port/pg_shmem.c:579 port/sysv_shmem.c:579
+#: port/pg_shmem.c:580 port/sysv_shmem.c:580
 #, c-format
 msgid "This error usually means that PostgreSQL's request for a shared memory segment exceeded available memory, swap space, or huge pages. To reduce the request size (currently %zu bytes), reduce PostgreSQL's shared memory usage, perhaps by reducing shared_buffers or max_connections."
 msgstr "Este error normalmente significa que la petición de un segmento de memoria compartida de PostgreSQL excedía la memoria disponible, el espacio de intercambio (swap), o las huge pages.  Para reducir el tamaño de la petición (actualmente %zu bytes), reduzca el uso de memoria compartida de PostgreSQL, quizás reduciendo el parámetro shared_buffers o el parámetro max_connections."
 
-#: port/pg_shmem.c:639 port/sysv_shmem.c:639
+#: port/pg_shmem.c:648 port/sysv_shmem.c:648
 #, c-format
 msgid "huge pages not supported on this platform"
 msgstr "las huge pages no están soportados en esta plataforma"
 
-#: port/pg_shmem.c:700 port/sysv_shmem.c:700 utils/init/miscinit.c:1069
+#: port/pg_shmem.c:709 port/sysv_shmem.c:709 utils/init/miscinit.c:1137
 #, c-format
 msgid "pre-existing shared memory block (key %lu, ID %lu) is still in use"
 msgstr "el bloque de memoria compartida preexistente (clave %lu, ID %lu) aún está en uso"
 
-#: port/pg_shmem.c:703 port/sysv_shmem.c:703 utils/init/miscinit.c:1071
+#: port/pg_shmem.c:712 port/sysv_shmem.c:712 utils/init/miscinit.c:1139
 #, c-format
 msgid "Terminate any old server processes associated with data directory \"%s\"."
 msgstr "Termine cualquier proceso de servidor asociado al directorio de datos «%s»."
 
-#: port/pg_shmem.c:754 port/sysv_shmem.c:754
-#, c-format
-msgid "could not stat data directory \"%s\": %m"
-msgstr "no se pudo hacer stat al directorio de datos «%s»: %m"
-
-#: port/sysv_sema.c:123
+#: port/sysv_sema.c:124
 #, c-format
 msgid "could not create semaphores: %m"
 msgstr "no se pudo crear semáforos: %m"
 
-#: port/sysv_sema.c:124
+#: port/sysv_sema.c:125
 #, c-format
 msgid "Failed system call was semget(%lu, %d, 0%o)."
 msgstr "La llamada a sistema fallida fue semget(%lu, %d, 0%o)."
 
-#: port/sysv_sema.c:128
+#: port/sysv_sema.c:129
 #, c-format
 msgid ""
 "This error does *not* mean that you have run out of disk space.  It occurs when either the system limit for the maximum number of semaphore sets (SEMMNI), or the system wide maximum number of semaphores (SEMMNS), would be exceeded.  You need to raise the respective kernel parameter.  Alternatively, reduce PostgreSQL's consumption of semaphores by reducing its max_connections parameter.\n"
@@ -16788,7 +16815,7 @@ msgstr ""
 "Ocurre cuando se alcanza el límite del sistema del número de semáforos (SEMMNI), o bien cuando se excede el total de semáforos del sistema (SEMMNS).Necesita incrementar el parámetro respectivo del kernel.  Alternativamente, reduzca el consumo de semáforos de PostgreSQL reduciendo el parámetro max_connections.\n"
 "La documentación de PostgreSQL contiene más información acerca de cómo configurar su sistema para PostgreSQL."
 
-#: port/sysv_sema.c:158
+#: port/sysv_sema.c:159
 #, c-format
 msgid "You possibly need to raise your kernel's SEMVMX value to be at least %d.  Look into the PostgreSQL documentation for details."
 msgstr "Probablemente necesita incrementar el valor SEMVMX del kernel hasta al menos %d.  Examine la documentación de PostgreSQL para obtener más detalles."
@@ -16823,32 +16850,27 @@ msgstr "no se pudo escribir el volcado de caída al archivo «%s»: código de e
 msgid "could not create signal listener pipe for PID %d: error code %lu"
 msgstr "no se pudo crear tubería para escuchar señales para el PID %d: código de error %lu"
 
-#: port/win32/signal.c:277 port/win32/signal.c:309
+#: port/win32/signal.c:251
 #, c-format
 msgid "could not create signal listener pipe: error code %lu; retrying\n"
 msgstr "no se pudo crear tubería para escuchar señales: código de error %lu; reintentando\n"
 
-#: port/win32/signal.c:320
-#, c-format
-msgid "could not create signal dispatch thread: error code %lu\n"
-msgstr "no se pudo crear thread de despacho de señales: código de error %lu\n"
-
 #: port/win32_sema.c:104
 #, c-format
 msgid "could not create semaphore: error code %lu"
 msgstr "no se pudo crear semáforo: código de error %lu"
 
-#: port/win32_sema.c:181
+#: port/win32_sema.c:180
 #, c-format
 msgid "could not lock semaphore: error code %lu"
 msgstr "no se pudo bloquear semáforo: código de error %lu"
 
-#: port/win32_sema.c:201
+#: port/win32_sema.c:200
 #, c-format
 msgid "could not unlock semaphore: error code %lu"
 msgstr "no se pudo desbloquear semáforo: código de error %lu"
 
-#: port/win32_sema.c:231
+#: port/win32_sema.c:230
 #, c-format
 msgid "could not try-lock semaphore: error code %lu"
 msgstr "no se pudo intentar-bloquear (try-lock) el semáforo: código de error %lu"
@@ -16915,22 +16937,22 @@ msgstr "La llamada a sistema fallida fue DuplicateHandle."
 msgid "Failed system call was MapViewOfFileEx."
 msgstr "La llamada a sistema fallida fue MapViewOfFileEx."
 
-#: postmaster/autovacuum.c:405
+#: postmaster/autovacuum.c:406
 #, c-format
 msgid "could not fork autovacuum launcher process: %m"
 msgstr "no se pudo iniciar el lanzador autovacuum: %m"
 
-#: postmaster/autovacuum.c:441
+#: postmaster/autovacuum.c:442
 #, c-format
 msgid "autovacuum launcher started"
 msgstr "lanzador de autovacuum iniciado"
 
-#: postmaster/autovacuum.c:819
+#: postmaster/autovacuum.c:840
 #, c-format
 msgid "autovacuum launcher shutting down"
 msgstr "lanzador de autovacuum apagándose"
 
-#: postmaster/autovacuum.c:1481
+#: postmaster/autovacuum.c:1478
 #, c-format
 msgid "could not fork autovacuum worker process: %m"
 msgstr "no se pudo lanzar el proceso «autovacuum worker»: %m"
@@ -16940,87 +16962,87 @@ msgstr "no se pudo lanzar el proceso «autovacuum worker»: %m"
 msgid "autovacuum: processing database \"%s\""
 msgstr "autovacuum: procesando la base de datos «%s»"
 
-#: postmaster/autovacuum.c:2256
+#: postmaster/autovacuum.c:2257
 #, c-format
 msgid "autovacuum: dropping orphan temp table \"%s.%s.%s\""
 msgstr "autovacuum: eliminando tabla temporal huérfana «%s.%s.%s»"
 
-#: postmaster/autovacuum.c:2485
+#: postmaster/autovacuum.c:2486
 #, c-format
 msgid "automatic vacuum of table \"%s.%s.%s\""
 msgstr "vacuum automático de la tabla «%s.%s.%s»"
 
-#: postmaster/autovacuum.c:2488
+#: postmaster/autovacuum.c:2489
 #, c-format
 msgid "automatic analyze of table \"%s.%s.%s\""
 msgstr "análisis automático de la tabla «%s.%s.%s»"
 
-#: postmaster/autovacuum.c:2681
+#: postmaster/autovacuum.c:2682
 #, c-format
 msgid "processing work entry for relation \"%s.%s.%s\""
 msgstr "procesando elemento de tarea de la tabla «%s.%s.%s»"
 
-#: postmaster/autovacuum.c:3262
+#: postmaster/autovacuum.c:3286
 #, c-format
 msgid "autovacuum not started because of misconfiguration"
 msgstr "autovacuum no fue iniciado debido a un error de configuración"
 
-#: postmaster/autovacuum.c:3263
+#: postmaster/autovacuum.c:3287
 #, c-format
 msgid "Enable the \"track_counts\" option."
 msgstr "Active la opción «track_counts»."
 
-#: postmaster/bgworker.c:395 postmaster/bgworker.c:855
+#: postmaster/bgworker.c:394 postmaster/bgworker.c:834
 #, c-format
 msgid "registering background worker \"%s\""
 msgstr "registrando el proceso ayudante «%s»"
 
-#: postmaster/bgworker.c:427
+#: postmaster/bgworker.c:426
 #, c-format
 msgid "unregistering background worker \"%s\""
 msgstr "des-registrando el proceso ayudante «%s»"
 
-#: postmaster/bgworker.c:592
+#: postmaster/bgworker.c:591
 #, c-format
 msgid "background worker \"%s\": must attach to shared memory in order to request a database connection"
 msgstr "proceso ayudante «%s»: debe acoplarse a memoria compartida para poder solicitar una conexión a base de datos"
 
-#: postmaster/bgworker.c:601
+#: postmaster/bgworker.c:600
 #, c-format
 msgid "background worker \"%s\": cannot request database access if starting at postmaster start"
 msgstr "proceso ayudante «%s»: no se puede solicitar una conexión a base de datos si está iniciando en el momento de inicio de postmaster"
 
-#: postmaster/bgworker.c:615
+#: postmaster/bgworker.c:614
 #, c-format
 msgid "background worker \"%s\": invalid restart interval"
 msgstr "proceso ayudante «%s»: intervalo de reinicio no válido"
 
-#: postmaster/bgworker.c:630
+#: postmaster/bgworker.c:629
 #, c-format
 msgid "background worker \"%s\": parallel workers may not be configured for restart"
 msgstr "proceso ayudante «%s»: los ayudantes paralelos no pueden ser configurados «restart»"
 
-#: postmaster/bgworker.c:674
+#: postmaster/bgworker.c:653
 #, c-format
 msgid "terminating background worker \"%s\" due to administrator command"
 msgstr "terminando el proceso ayudante «%s» debido a una orden del administrador"
 
-#: postmaster/bgworker.c:863
+#: postmaster/bgworker.c:842
 #, c-format
 msgid "background worker \"%s\": must be registered in shared_preload_libraries"
 msgstr "proceso ayudante «%s»: debe ser registrado en shared_preload_libraries"
 
-#: postmaster/bgworker.c:875
+#: postmaster/bgworker.c:854
 #, c-format
 msgid "background worker \"%s\": only dynamic background workers can request notification"
 msgstr "proceso ayudante «%s»: sólo los ayudantes dinámicos pueden pedir notificaciones"
 
-#: postmaster/bgworker.c:890
+#: postmaster/bgworker.c:869
 #, c-format
 msgid "too many background workers"
 msgstr "demasiados procesos ayudantes"
 
-#: postmaster/bgworker.c:891
+#: postmaster/bgworker.c:870
 #, c-format
 msgid "Up to %d background worker can be registered with the current settings."
 msgid_plural "Up to %d background workers can be registered with the current settings."
@@ -17028,12 +17050,12 @@ msgstr[0] "Hasta %d proceso ayudante puede registrarse con la configuración act
 msgstr[1] "Hasta %d procesos ayudantes pueden registrarse con la configuración actual."
 
 # FIXME a %s would be nice here
-#: postmaster/bgworker.c:895
+#: postmaster/bgworker.c:874
 #, c-format
 msgid "Consider increasing the configuration parameter \"max_worker_processes\"."
 msgstr "Considere incrementar el parámetro de configuración «max_worker_processes»."
 
-#: postmaster/checkpointer.c:458
+#: postmaster/checkpointer.c:418
 #, c-format
 msgid "checkpoints are occurring too frequently (%d second apart)"
 msgid_plural "checkpoints are occurring too frequently (%d seconds apart)"
@@ -17041,334 +17063,335 @@ msgstr[0] "los puntos de control están ocurriendo con demasiada frecuencia (cad
 msgstr[1] "los puntos de control están ocurriendo con demasiada frecuencia (cada %d segundos)"
 
 # FIXME a %s would be nice here
-#: postmaster/checkpointer.c:462
+#: postmaster/checkpointer.c:422
 #, c-format
 msgid "Consider increasing the configuration parameter \"max_wal_size\"."
 msgstr "Considere incrementar el parámetro de configuración «max_wal_size»."
 
-#: postmaster/checkpointer.c:1081
+#: postmaster/checkpointer.c:1032
 #, c-format
 msgid "checkpoint request failed"
 msgstr "falló la petición de punto de control"
 
-#: postmaster/checkpointer.c:1082
+#: postmaster/checkpointer.c:1033
 #, c-format
 msgid "Consult recent messages in the server log for details."
 msgstr "Vea los mensajes recientes en el registro del servidor para obtener más detalles."
 
-#: postmaster/checkpointer.c:1266
+#: postmaster/checkpointer.c:1217
 #, c-format
 msgid "compacted fsync request queue from %d entries to %d entries"
 msgstr "la cola de peticiones de fsync fue compactada de %d a %d elementos"
 
-#: postmaster/pgarch.c:159
+#: postmaster/pgarch.c:156
 #, c-format
 msgid "could not fork archiver: %m"
 msgstr "no se pudo lanzar el proceso archivador: %m"
 
-#: postmaster/pgarch.c:470
+#: postmaster/pgarch.c:434
 #, c-format
 msgid "archive_mode enabled, yet archive_command is not set"
 msgstr "archive_mode activado, pero archive_command no está definido"
 
-#: postmaster/pgarch.c:492
+#: postmaster/pgarch.c:456
 #, c-format
 msgid "removed orphan archive status file \"%s\""
 msgstr "eliminando archivo de estado huérfano «%s»"
 
-#: postmaster/pgarch.c:502
+#: postmaster/pgarch.c:466
 #, c-format
 msgid "removal of orphan archive status file \"%s\" failed too many times, will try again later"
 msgstr "la eliminación del archivo de estado huérfano «%s» falló demasiadas veces, se tratará de nuevo después"
 
-#: postmaster/pgarch.c:538
+#: postmaster/pgarch.c:502
 #, c-format
 msgid "archiving write-ahead log file \"%s\" failed too many times, will try again later"
 msgstr "el archivado del archivo de WAL «%s» falló demasiadas veces, se tratará de nuevo más tarde"
 
-#: postmaster/pgarch.c:639
+#: postmaster/pgarch.c:603
 #, c-format
 msgid "archive command failed with exit code %d"
 msgstr "la orden de archivado falló con código de retorno %d"
 
-#: postmaster/pgarch.c:641 postmaster/pgarch.c:651 postmaster/pgarch.c:657
-#: postmaster/pgarch.c:666
+#: postmaster/pgarch.c:605 postmaster/pgarch.c:615 postmaster/pgarch.c:621
+#: postmaster/pgarch.c:630
 #, c-format
 msgid "The failed archive command was: %s"
 msgstr "La orden fallida era: «%s»"
 
-#: postmaster/pgarch.c:648
+#: postmaster/pgarch.c:612
 #, c-format
 msgid "archive command was terminated by exception 0x%X"
 msgstr "la orden de archivado fue terminada por una excepción 0x%X"
 
-#: postmaster/pgarch.c:650 postmaster/postmaster.c:3669
+#: postmaster/pgarch.c:614 postmaster/postmaster.c:3762
 #, c-format
 msgid "See C include file \"ntstatus.h\" for a description of the hexadecimal value."
 msgstr "Vea el archivo «ntstatus.h» para una descripción del valor hexadecimal."
 
-#: postmaster/pgarch.c:655
+#: postmaster/pgarch.c:619
 #, c-format
 msgid "archive command was terminated by signal %d: %s"
 msgstr "la orden de archivado fue terminada por una señal %d: %s"
 
-#: postmaster/pgarch.c:664
+#: postmaster/pgarch.c:628
 #, c-format
 msgid "archive command exited with unrecognized status %d"
 msgstr "la orden de archivado fue terminada con código %d no reconocido"
 
-#: postmaster/pgstat.c:396
+#: postmaster/pgstat.c:419
 #, c-format
 msgid "could not resolve \"localhost\": %s"
 msgstr "no se pudo resolver «localhost»: %s"
 
-#: postmaster/pgstat.c:419
+#: postmaster/pgstat.c:442
 #, c-format
 msgid "trying another address for the statistics collector"
 msgstr "intentando otra dirección para el recolector de estadísticas"
 
-#: postmaster/pgstat.c:428
+#: postmaster/pgstat.c:451
 #, c-format
 msgid "could not create socket for statistics collector: %m"
 msgstr "no se pudo crear el socket para el recolector de estadísticas: %m"
 
-#: postmaster/pgstat.c:440
+#: postmaster/pgstat.c:463
 #, c-format
 msgid "could not bind socket for statistics collector: %m"
 msgstr "no se pudo enlazar (bind) el socket para el recolector de estadísticas: %m"
 
-#: postmaster/pgstat.c:451
+#: postmaster/pgstat.c:474
 #, c-format
 msgid "could not get address of socket for statistics collector: %m"
 msgstr "no se pudo obtener la dirección del socket de estadísticas: %m"
 
-#: postmaster/pgstat.c:467
+#: postmaster/pgstat.c:490
 #, c-format
 msgid "could not connect socket for statistics collector: %m"
 msgstr "no se pudo conectar el socket para el recolector de estadísticas: %m"
 
-#: postmaster/pgstat.c:488
+#: postmaster/pgstat.c:511
 #, c-format
 msgid "could not send test message on socket for statistics collector: %m"
 msgstr "no se pudo enviar el mensaje de prueba al recolector de estadísticas: %m"
 
-#: postmaster/pgstat.c:514
+#: postmaster/pgstat.c:537
 #, c-format
 msgid "select() failed in statistics collector: %m"
 msgstr "select() falló en el recolector de estadísticas: %m"
 
-#: postmaster/pgstat.c:529
+#: postmaster/pgstat.c:552
 #, c-format
 msgid "test message did not get through on socket for statistics collector"
 msgstr "el mensaje de prueba al recolector de estadísticas no ha sido recibido en el socket"
 
-#: postmaster/pgstat.c:544
+#: postmaster/pgstat.c:567
 #, c-format
 msgid "could not receive test message on socket for statistics collector: %m"
 msgstr "no se pudo recibir el mensaje de prueba en el socket del recolector de estadísticas: %m"
 
-#: postmaster/pgstat.c:554
+#: postmaster/pgstat.c:577
 #, c-format
 msgid "incorrect test message transmission on socket for statistics collector"
 msgstr "transmisión del mensaje de prueba incorrecta en el socket del recolector de estadísticas"
 
-#: postmaster/pgstat.c:577
+#: postmaster/pgstat.c:600
 #, c-format
 msgid "could not set statistics collector socket to nonblocking mode: %m"
 msgstr "no se pudo poner el socket de estadísticas en modo no bloqueante: %m"
 
-#: postmaster/pgstat.c:616
+#: postmaster/pgstat.c:642
 #, c-format
 msgid "disabling statistics collector for lack of working socket"
 msgstr "desactivando el recolector de estadísticas por falla del socket"
 
-#: postmaster/pgstat.c:763
+#: postmaster/pgstat.c:789
 #, c-format
 msgid "could not fork statistics collector: %m"
 msgstr "no se pudo crear el proceso para el recolector de estadísticas: %m"
 
-#: postmaster/pgstat.c:1347
+#: postmaster/pgstat.c:1376
 #, c-format
 msgid "unrecognized reset target: \"%s\""
 msgstr "destino de reset no reconocido: «%s»"
 
-#: postmaster/pgstat.c:1348
+#: postmaster/pgstat.c:1377
 #, c-format
 msgid "Target must be \"archiver\" or \"bgwriter\"."
 msgstr "El destino debe ser «archiver» o «bgwriter»."
 
-#: postmaster/pgstat.c:4534
+#: postmaster/pgstat.c:4561
 #, c-format
 msgid "could not read statistics message: %m"
 msgstr "no se pudo leer un mensaje de estadísticas: %m"
 
-#: postmaster/pgstat.c:4875 postmaster/pgstat.c:5032
+#: postmaster/pgstat.c:4883 postmaster/pgstat.c:5046
 #, c-format
 msgid "could not open temporary statistics file \"%s\": %m"
 msgstr "no se pudo abrir el archivo temporal de estadísticas «%s»: %m"
 
-#: postmaster/pgstat.c:4942 postmaster/pgstat.c:5077
+#: postmaster/pgstat.c:4956 postmaster/pgstat.c:5091
 #, c-format
 msgid "could not write temporary statistics file \"%s\": %m"
 msgstr "no se pudo escribir el archivo temporal de estadísticas «%s»: %m"
 
-#: postmaster/pgstat.c:4951 postmaster/pgstat.c:5086
+#: postmaster/pgstat.c:4965 postmaster/pgstat.c:5100
 #, c-format
 msgid "could not close temporary statistics file \"%s\": %m"
 msgstr "no se pudo cerrar el archivo temporal de estadísticas «%s»: %m"
 
-#: postmaster/pgstat.c:4959 postmaster/pgstat.c:5094
+#: postmaster/pgstat.c:4973 postmaster/pgstat.c:5108
 #, c-format
 msgid "could not rename temporary statistics file \"%s\" to \"%s\": %m"
 msgstr "no se pudo cambiar el nombre al archivo temporal de estadísticas de «%s» a «%s»: %m"
 
-#: postmaster/pgstat.c:5183 postmaster/pgstat.c:5389 postmaster/pgstat.c:5542
+#: postmaster/pgstat.c:5205 postmaster/pgstat.c:5422 postmaster/pgstat.c:5576
 #, c-format
 msgid "could not open statistics file \"%s\": %m"
 msgstr "no se pudo abrir el archivo de estadísticas «%s»: %m"
 
-#: postmaster/pgstat.c:5195 postmaster/pgstat.c:5205 postmaster/pgstat.c:5226
-#: postmaster/pgstat.c:5248 postmaster/pgstat.c:5263 postmaster/pgstat.c:5326
-#: postmaster/pgstat.c:5401 postmaster/pgstat.c:5421 postmaster/pgstat.c:5439
-#: postmaster/pgstat.c:5455 postmaster/pgstat.c:5473 postmaster/pgstat.c:5489
-#: postmaster/pgstat.c:5554 postmaster/pgstat.c:5566 postmaster/pgstat.c:5578
-#: postmaster/pgstat.c:5603 postmaster/pgstat.c:5625
+#: postmaster/pgstat.c:5217 postmaster/pgstat.c:5227 postmaster/pgstat.c:5248
+#: postmaster/pgstat.c:5259 postmaster/pgstat.c:5281 postmaster/pgstat.c:5296
+#: postmaster/pgstat.c:5359 postmaster/pgstat.c:5434 postmaster/pgstat.c:5454
+#: postmaster/pgstat.c:5472 postmaster/pgstat.c:5488 postmaster/pgstat.c:5506
+#: postmaster/pgstat.c:5522 postmaster/pgstat.c:5588 postmaster/pgstat.c:5600
+#: postmaster/pgstat.c:5612 postmaster/pgstat.c:5623 postmaster/pgstat.c:5648
+#: postmaster/pgstat.c:5670
 #, c-format
 msgid "corrupted statistics file \"%s\""
 msgstr "el archivo de estadísticas «%s» está corrupto"
 
-#: postmaster/pgstat.c:5754
+#: postmaster/pgstat.c:5799
 #, c-format
 msgid "using stale statistics instead of current ones because stats collector is not responding"
 msgstr "usando estadísticas añejas en vez de actualizadas porque el recolector de estadísticas no está respondiendo"
 
-#: postmaster/pgstat.c:6081
+#: postmaster/pgstat.c:6129
 #, c-format
 msgid "database hash table corrupted during cleanup --- abort"
 msgstr "el hash de bases de datos se corrompió durante la finalización; abortando"
 
-#: postmaster/postmaster.c:712
+#: postmaster/postmaster.c:721
 #, c-format
 msgid "%s: invalid argument for option -f: \"%s\"\n"
 msgstr "%s: argumento no válido para la opción -f: «%s»\n"
 
-#: postmaster/postmaster.c:798
+#: postmaster/postmaster.c:807
 #, c-format
 msgid "%s: invalid argument for option -t: \"%s\"\n"
 msgstr "%s: argumento no válido para la opción -t: «%s»\n"
 
-#: postmaster/postmaster.c:849
+#: postmaster/postmaster.c:858
 #, c-format
 msgid "%s: invalid argument: \"%s\"\n"
 msgstr "%s: argumento no válido: «%s»\n"
 
-#: postmaster/postmaster.c:891
+#: postmaster/postmaster.c:900
 #, c-format
 msgid "%s: superuser_reserved_connections (%d) must be less than max_connections (%d)\n"
 msgstr "%s: superuser_reserved_connections (%d) debe ser menor que max_connections (%d)\n"
 
-#: postmaster/postmaster.c:898
+#: postmaster/postmaster.c:907
 #, c-format
 msgid "WAL archival cannot be enabled when wal_level is \"minimal\""
 msgstr "el archivador de WAL no puede activarse cuando wal_level es «minimal»"
 
-#: postmaster/postmaster.c:901
+#: postmaster/postmaster.c:910
 #, c-format
 msgid "WAL streaming (max_wal_senders > 0) requires wal_level \"replica\" or \"logical\""
 msgstr "el flujo de WAL (max_wal_senders > 0) requiere wal_level «replica» o «logical»"
 
-#: postmaster/postmaster.c:909
+#: postmaster/postmaster.c:918
 #, c-format
 msgid "%s: invalid datetoken tables, please fix\n"
 msgstr "%s: las tablas de palabras clave de fecha no son válidas, arréglelas\n"
 
-#: postmaster/postmaster.c:998
-#, c-format
-msgid "starting %s"
-msgstr "iniciando %s"
-
-#: postmaster/postmaster.c:1027 postmaster/postmaster.c:1125
-#: utils/init/miscinit.c:1551
-#, c-format
-msgid "invalid list syntax in parameter \"%s\""
-msgstr "la sintaxis de lista no es válida para el parámetro «%s»"
-
-#: postmaster/postmaster.c:1058
-#, c-format
-msgid "could not create listen socket for \"%s\""
-msgstr "no se pudo crear el socket de escucha para «%s»"
-
-#: postmaster/postmaster.c:1064
-#, c-format
-msgid "could not create any TCP/IP sockets"
-msgstr "no se pudo crear ningún socket TCP/IP"
-
-#: postmaster/postmaster.c:1147
-#, c-format
-msgid "could not create Unix-domain socket in directory \"%s\""
-msgstr "no se pudo crear el socket de dominio Unix en el directorio «%s»"
-
-#: postmaster/postmaster.c:1153
-#, c-format
-msgid "could not create any Unix-domain sockets"
-msgstr "no se pudo crear ningún socket de dominio Unix"
-
-#: postmaster/postmaster.c:1165
-#, c-format
-msgid "no socket created for listening"
-msgstr "no se creó el socket de atención"
-
-#: postmaster/postmaster.c:1205
+#: postmaster/postmaster.c:1035
 #, c-format
 msgid "could not create I/O completion port for child queue"
 msgstr "no se pudo crear el port E/S de reporte de completitud para la cola de procesos hijos"
 
-#: postmaster/postmaster.c:1234
-#, c-format
-msgid "%s: could not change permissions of external PID file \"%s\": %s\n"
-msgstr "%s: no se pudo cambiar los permisos del archivo de PID externo «%s»: %s\n"
-
-#: postmaster/postmaster.c:1238
-#, c-format
-msgid "%s: could not write external PID file \"%s\": %s\n"
-msgstr "%s: no pudo escribir en el archivo externo de PID «%s»: %s\n"
-
-#: postmaster/postmaster.c:1298
+#: postmaster/postmaster.c:1101
 #, c-format
 msgid "ending log output to stderr"
 msgstr "terminando la salida de registro a stderr"
 
-#: postmaster/postmaster.c:1299
+#: postmaster/postmaster.c:1102
 #, c-format
 msgid "Future log output will go to log destination \"%s\"."
 msgstr "La salida futura del registro será enviada al destino de log «%s»."
 
-#: postmaster/postmaster.c:1325 utils/init/postinit.c:216
+#: postmaster/postmaster.c:1113
+#, c-format
+msgid "starting %s"
+msgstr "iniciando %s"
+
+#: postmaster/postmaster.c:1142 postmaster/postmaster.c:1240
+#: utils/init/miscinit.c:1597
+#, c-format
+msgid "invalid list syntax in parameter \"%s\""
+msgstr "la sintaxis de lista no es válida para el parámetro «%s»"
+
+#: postmaster/postmaster.c:1173
+#, c-format
+msgid "could not create listen socket for \"%s\""
+msgstr "no se pudo crear el socket de escucha para «%s»"
+
+#: postmaster/postmaster.c:1179
+#, c-format
+msgid "could not create any TCP/IP sockets"
+msgstr "no se pudo crear ningún socket TCP/IP"
+
+#: postmaster/postmaster.c:1262
+#, c-format
+msgid "could not create Unix-domain socket in directory \"%s\""
+msgstr "no se pudo crear el socket de dominio Unix en el directorio «%s»"
+
+#: postmaster/postmaster.c:1268
+#, c-format
+msgid "could not create any Unix-domain sockets"
+msgstr "no se pudo crear ningún socket de dominio Unix"
+
+#: postmaster/postmaster.c:1280
+#, c-format
+msgid "no socket created for listening"
+msgstr "no se creó el socket de atención"
+
+#: postmaster/postmaster.c:1311
+#, c-format
+msgid "%s: could not change permissions of external PID file \"%s\": %s\n"
+msgstr "%s: no se pudo cambiar los permisos del archivo de PID externo «%s»: %s\n"
+
+#: postmaster/postmaster.c:1315
+#, c-format
+msgid "%s: could not write external PID file \"%s\": %s\n"
+msgstr "%s: no pudo escribir en el archivo externo de PID «%s»: %s\n"
+
+#: postmaster/postmaster.c:1348 utils/init/postinit.c:215
 #, c-format
 msgid "could not load pg_hba.conf"
 msgstr "no se pudo cargar pg_hba.conf"
 
-#: postmaster/postmaster.c:1351
+#: postmaster/postmaster.c:1374
 #, c-format
 msgid "postmaster became multithreaded during startup"
 msgstr "postmaster se volvió multi-hilo durante la partida"
 
-#: postmaster/postmaster.c:1352
+#: postmaster/postmaster.c:1375
 #, c-format
 msgid "Set the LC_ALL environment variable to a valid locale."
 msgstr "Defina la variable de ambiente LC_ALL a un valor válido."
 
-#: postmaster/postmaster.c:1453
+#: postmaster/postmaster.c:1476
 #, c-format
 msgid "%s: could not locate matching postgres executable"
 msgstr "%s: no se pudo localizar el ejecutable postgres correspondiente"
 
-#: postmaster/postmaster.c:1476 utils/misc/tzparser.c:341
+#: postmaster/postmaster.c:1499 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 "Esto puede indicar una instalación de PostgreSQL incompleta, o que el archivo «%s» ha sido movido de la ubicación adecuada."
 
-#: postmaster/postmaster.c:1503
+#: postmaster/postmaster.c:1526
 #, c-format
 msgid ""
 "%s: could not find the database system\n"
@@ -17379,446 +17402,453 @@ msgstr ""
 "Se esperaba encontrar en el directorio PGDATA «%s»,\n"
 "pero no se pudo abrir el archivo «%s»: %s\n"
 
-#: postmaster/postmaster.c:1680
+#: postmaster/postmaster.c:1703
 #, c-format
 msgid "select() failed in postmaster: %m"
 msgstr "select() falló en postmaster: %m"
 
-#: postmaster/postmaster.c:1835
+#: postmaster/postmaster.c:1858
 #, c-format
 msgid "performing immediate shutdown because data directory lock file is invalid"
 msgstr "ejecutando un apagado inmediato porque el archivo de bloqueo del directorio de datos no es válido"
 
-#: postmaster/postmaster.c:1934 postmaster/postmaster.c:1965
+#: postmaster/postmaster.c:1961 postmaster/postmaster.c:1992
 #, c-format
 msgid "incomplete startup packet"
 msgstr "el paquete de inicio está incompleto"
 
-#: postmaster/postmaster.c:1946
+#: postmaster/postmaster.c:1973
 #, c-format
 msgid "invalid length of startup packet"
 msgstr "el de paquete de inicio tiene largo incorrecto"
 
-#: postmaster/postmaster.c:2004
+#: postmaster/postmaster.c:2031
 #, c-format
 msgid "failed to send SSL negotiation response: %m"
 msgstr "no se pudo enviar la respuesta de negociación SSL: %m"
 
-#: postmaster/postmaster.c:2031
+#: postmaster/postmaster.c:2062
 #, c-format
 msgid "failed to send GSSAPI negotiation response: %m"
 msgstr "no se pudo enviar la respuesta de negociación GSSAPI: %m"
 
-#: postmaster/postmaster.c:2056
+#: postmaster/postmaster.c:2092
 #, c-format
 msgid "unsupported frontend protocol %u.%u: server supports %u.0 to %u.%u"
 msgstr "el protocolo %u.%u no está soportado: servidor soporta %u.0 hasta %u.%u"
 
-#: postmaster/postmaster.c:2120 utils/misc/guc.c:6560 utils/misc/guc.c:6596
-#: utils/misc/guc.c:6666 utils/misc/guc.c:7989 utils/misc/guc.c:10811
-#: utils/misc/guc.c:10845
+#: postmaster/postmaster.c:2156 utils/misc/guc.c:6779 utils/misc/guc.c:6815
+#: utils/misc/guc.c:6885 utils/misc/guc.c:8208 utils/misc/guc.c:11054
+#: utils/misc/guc.c:11088
 #, c-format
 msgid "invalid value for parameter \"%s\": \"%s\""
 msgstr "valor no válido para el parámetro «%s»: «%s»"
 
-#: postmaster/postmaster.c:2123
+#: postmaster/postmaster.c:2159
 #, c-format
 msgid "Valid values are: \"false\", 0, \"true\", 1, \"database\"."
 msgstr "Los valores válidos son: «false», 0, «true», 1, «database»."
 
-#: postmaster/postmaster.c:2168
+#: postmaster/postmaster.c:2204
 #, c-format
 msgid "invalid startup packet layout: expected terminator as last byte"
 msgstr "el paquete de inicio no es válido: se esperaba un terminador en el último byte"
 
-#: postmaster/postmaster.c:2206
+#: postmaster/postmaster.c:2242
 #, c-format
 msgid "no PostgreSQL user name specified in startup packet"
 msgstr "no se especifica un nombre de usuario en el paquete de inicio"
 
-#: postmaster/postmaster.c:2265
+#: postmaster/postmaster.c:2306
 #, c-format
 msgid "the database system is starting up"
 msgstr "el sistema de base de datos está iniciándose"
 
-#: postmaster/postmaster.c:2270
+#: postmaster/postmaster.c:2311
 #, c-format
 msgid "the database system is shutting down"
 msgstr "el sistema de base de datos está apagándose"
 
-#: postmaster/postmaster.c:2275
+#: postmaster/postmaster.c:2316
 #, c-format
 msgid "the database system is in recovery mode"
 msgstr "el sistema de base de datos está en modo de recuperación"
 
-#: postmaster/postmaster.c:2280 storage/ipc/procarray.c:293
-#: storage/ipc/sinvaladt.c:298 storage/lmgr/proc.c:363
+#: postmaster/postmaster.c:2321 storage/ipc/procarray.c:293
+#: storage/ipc/sinvaladt.c:297 storage/lmgr/proc.c:362
 #, c-format
 msgid "sorry, too many clients already"
 msgstr "lo siento, ya tenemos demasiados clientes"
 
-#: postmaster/postmaster.c:2370
+#: postmaster/postmaster.c:2411
 #, c-format
 msgid "wrong key in cancel request for process %d"
 msgstr "llave incorrecta en la petición de cancelación para el proceso %d"
 
-#: postmaster/postmaster.c:2382
+#: postmaster/postmaster.c:2423
 #, c-format
 msgid "PID %d in cancel request did not match any process"
 msgstr "el PID %d en la petición de cancelación no coincidió con ningún proceso"
 
-#: postmaster/postmaster.c:2629
+#: postmaster/postmaster.c:2689
 #, c-format
 msgid "received SIGHUP, reloading configuration files"
 msgstr "se recibió SIGHUP, volviendo a cargar archivos de configuración"
 
 #. translator: %s is a configuration file
-#: postmaster/postmaster.c:2655 postmaster/postmaster.c:2659
+#: postmaster/postmaster.c:2715 postmaster/postmaster.c:2719
 #, c-format
 msgid "%s was not reloaded"
 msgstr "%s no fue vuelto a cargar"
 
-#: postmaster/postmaster.c:2669
+#: postmaster/postmaster.c:2729
 #, c-format
 msgid "SSL configuration was not reloaded"
 msgstr "la configuración SSL no fue vuelta a cargar"
 
-#: postmaster/postmaster.c:2717
+#: postmaster/postmaster.c:2785
 #, c-format
 msgid "received smart shutdown request"
 msgstr "se recibió petición de apagado inteligente"
 
-#: postmaster/postmaster.c:2775
+#: postmaster/postmaster.c:2843
 #, c-format
 msgid "received fast shutdown request"
 msgstr "se recibió petición de apagado rápido"
 
-#: postmaster/postmaster.c:2808
+#: postmaster/postmaster.c:2876
 #, c-format
 msgid "aborting any active transactions"
 msgstr "abortando transacciones activas"
 
-#: postmaster/postmaster.c:2842
+#: postmaster/postmaster.c:2910
 #, c-format
 msgid "received immediate shutdown request"
 msgstr "se recibió petición de apagado inmediato"
 
-#: postmaster/postmaster.c:2909
+#: postmaster/postmaster.c:2985
 #, c-format
 msgid "shutdown at recovery target"
 msgstr "apagándose al alcanzar el destino de recuperación"
 
-#: postmaster/postmaster.c:2925 postmaster/postmaster.c:2948
+#: postmaster/postmaster.c:3003 postmaster/postmaster.c:3039
 msgid "startup process"
 msgstr "proceso de inicio"
 
-#: postmaster/postmaster.c:2928
+#: postmaster/postmaster.c:3006
 #, c-format
 msgid "aborting startup due to startup process failure"
 msgstr "abortando el inicio debido a una falla en el procesamiento de inicio"
 
-#: postmaster/postmaster.c:2989
+#: postmaster/postmaster.c:3080
 #, c-format
 msgid "database system is ready to accept connections"
 msgstr "el sistema de bases de datos está listo para aceptar conexiones"
 
-#: postmaster/postmaster.c:3010
+#: postmaster/postmaster.c:3101
 msgid "background writer process"
 msgstr "proceso background writer"
 
-#: postmaster/postmaster.c:3064
+#: postmaster/postmaster.c:3155
 msgid "checkpointer process"
 msgstr "proceso checkpointer"
 
-#: postmaster/postmaster.c:3080
+#: postmaster/postmaster.c:3171
 msgid "WAL writer process"
 msgstr "proceso escritor de WAL"
 
-#: postmaster/postmaster.c:3095
+#: postmaster/postmaster.c:3186
 msgid "WAL receiver process"
 msgstr "proceso receptor de WAL"
 
-#: postmaster/postmaster.c:3110
+#: postmaster/postmaster.c:3201
 msgid "autovacuum launcher process"
 msgstr "proceso lanzador de autovacuum"
 
-#: postmaster/postmaster.c:3125
+#: postmaster/postmaster.c:3216
 msgid "archiver process"
 msgstr "proceso de archivado"
 
-#: postmaster/postmaster.c:3141
+#: postmaster/postmaster.c:3232
 msgid "statistics collector process"
 msgstr "recolector de estadísticas"
 
-#: postmaster/postmaster.c:3155
+#: postmaster/postmaster.c:3246
 msgid "system logger process"
 msgstr "proceso de log"
 
-#: postmaster/postmaster.c:3217
+#: postmaster/postmaster.c:3310
 #, c-format
 msgid "background worker \"%s\""
 msgstr "proceso ayudante «%s»"
 
-#: postmaster/postmaster.c:3301 postmaster/postmaster.c:3321
-#: postmaster/postmaster.c:3328 postmaster/postmaster.c:3346
+#: postmaster/postmaster.c:3394 postmaster/postmaster.c:3414
+#: postmaster/postmaster.c:3421 postmaster/postmaster.c:3439
 msgid "server process"
 msgstr "proceso de servidor"
 
-#: postmaster/postmaster.c:3400
+#: postmaster/postmaster.c:3493
 #, c-format
 msgid "terminating any other active server processes"
 msgstr "terminando todos los otros procesos de servidor activos"
 
 #. translator: %s is a noun phrase describing a child process, such as
 #. "server process"
-#: postmaster/postmaster.c:3656
+#: postmaster/postmaster.c:3749
 #, c-format
 msgid "%s (PID %d) exited with exit code %d"
 msgstr "%s (PID %d) terminó con código de salida %d"
 
-#: postmaster/postmaster.c:3658 postmaster/postmaster.c:3670
-#: postmaster/postmaster.c:3680 postmaster/postmaster.c:3691
+#: postmaster/postmaster.c:3751 postmaster/postmaster.c:3763
+#: postmaster/postmaster.c:3773 postmaster/postmaster.c:3784
 #, c-format
 msgid "Failed process was running: %s"
 msgstr "El proceso que falló estaba ejecutando: %s"
 
 #. translator: %s is a noun phrase describing a child process, such as
 #. "server process"
-#: postmaster/postmaster.c:3667
+#: postmaster/postmaster.c:3760
 #, c-format
 msgid "%s (PID %d) was terminated by exception 0x%X"
 msgstr "%s (PID %d) fue terminado por una excepción 0x%X"
 
 #. translator: %s is a noun phrase describing a child process, such as
 #. "server process"
-#: postmaster/postmaster.c:3677
+#: postmaster/postmaster.c:3770
 #, c-format
 msgid "%s (PID %d) was terminated by signal %d: %s"
 msgstr "%s (PID %d) fue terminado por una señal %d: %s"
 
 #. translator: %s is a noun phrase describing a child process, such as
 #. "server process"
-#: postmaster/postmaster.c:3689
+#: postmaster/postmaster.c:3782
 #, c-format
 msgid "%s (PID %d) exited with unrecognized status %d"
 msgstr "%s (PID %d) terminó con código %d no reconocido"
 
-#: postmaster/postmaster.c:3872
+#: postmaster/postmaster.c:3965
 #, c-format
 msgid "abnormal database system shutdown"
 msgstr "apagado anormal del sistema de bases de datos"
 
-#: postmaster/postmaster.c:3912
+#: postmaster/postmaster.c:4005
 #, c-format
 msgid "all server processes terminated; reinitializing"
 msgstr "todos los procesos fueron terminados; reinicializando"
 
-#: postmaster/postmaster.c:4082 postmaster/postmaster.c:5473
-#: postmaster/postmaster.c:5847
+#: postmaster/postmaster.c:4175 postmaster/postmaster.c:5574
+#: postmaster/postmaster.c:5962
 #, c-format
 msgid "could not generate random cancel key"
 msgstr "no se pudo generar una llave de cancelación aleatoria"
 
-#: postmaster/postmaster.c:4136
+#: postmaster/postmaster.c:4229
 #, c-format
 msgid "could not fork new process for connection: %m"
 msgstr "no se pudo lanzar el nuevo proceso para la conexión: %m"
 
-#: postmaster/postmaster.c:4178
+#: postmaster/postmaster.c:4271
 msgid "could not fork new process for connection: "
 msgstr "no se pudo lanzar el nuevo proceso para la conexión: "
 
-#: postmaster/postmaster.c:4288
+#: postmaster/postmaster.c:4380
 #, c-format
 msgid "connection received: host=%s port=%s"
 msgstr "conexión recibida: host=%s port=%s"
 
-#: postmaster/postmaster.c:4293
+#: postmaster/postmaster.c:4385
 #, c-format
 msgid "connection received: host=%s"
 msgstr "conexión recibida: host=%s"
 
-#: postmaster/postmaster.c:4563
+#: postmaster/postmaster.c:4655
 #, c-format
 msgid "could not execute server process \"%s\": %m"
 msgstr "no se pudo lanzar el proceso servidor «%s»: %m"
 
-#: postmaster/postmaster.c:4716
+#: postmaster/postmaster.c:4814
 #, c-format
 msgid "giving up after too many tries to reserve shared memory"
 msgstr "renunciar después de demasiados intentos de reservar memoria compartida"
 
-#: postmaster/postmaster.c:4717
+#: postmaster/postmaster.c:4815
 #, c-format
 msgid "This might be caused by ASLR or antivirus software."
 msgstr "Esto podría deberse a ASLR o un software antivirus."
 
-#: postmaster/postmaster.c:4928
+#: postmaster/postmaster.c:5021
 #, c-format
 msgid "SSL configuration could not be loaded in child process"
 msgstr "No se pudo cargar la configuración SSL en proceso secundario"
 
-#: postmaster/postmaster.c:5060
-#, c-format
-msgid "Please report this to <pgsql-bugs@lists.postgresql.org>."
+#: postmaster/postmaster.c:5153
+#, fuzzy, c-format
+#| msgid "Please report this to <pgsql-bugs@lists.postgresql.org>."
+msgid "Please report this to <%s>."
 msgstr "Por favor, reporte esto a <pgsql-bugs@lists.postgresql.org>."
 
-#: postmaster/postmaster.c:5147
+#: postmaster/postmaster.c:5246
 #, c-format
 msgid "database system is ready to accept read only connections"
 msgstr "el sistema de bases de datos está listo para aceptar conexiones de sólo lectura"
 
-#: postmaster/postmaster.c:5401
+#: postmaster/postmaster.c:5502
 #, c-format
 msgid "could not fork startup process: %m"
 msgstr "no se pudo lanzar el proceso de inicio: %m"
 
-#: postmaster/postmaster.c:5405
+#: postmaster/postmaster.c:5506
 #, c-format
 msgid "could not fork background writer process: %m"
 msgstr "no se pudo lanzar el background writer: %m"
 
-#: postmaster/postmaster.c:5409
+#: postmaster/postmaster.c:5510
 #, c-format
 msgid "could not fork checkpointer process: %m"
 msgstr "no se pudo lanzar el checkpointer: %m"
 
-#: postmaster/postmaster.c:5413
+#: postmaster/postmaster.c:5514
 #, c-format
 msgid "could not fork WAL writer process: %m"
 msgstr "no se pudo lanzar el proceso escritor de WAL: %m"
 
-#: postmaster/postmaster.c:5417
+#: postmaster/postmaster.c:5518
 #, c-format
 msgid "could not fork WAL receiver process: %m"
 msgstr "no se pudo lanzar el proceso receptor de WAL: %m"
 
-#: postmaster/postmaster.c:5421
+#: postmaster/postmaster.c:5522
 #, c-format
 msgid "could not fork process: %m"
 msgstr "no se pudo lanzar el proceso: %m"
 
-#: postmaster/postmaster.c:5618 postmaster/postmaster.c:5641
+#: postmaster/postmaster.c:5719 postmaster/postmaster.c:5742
 #, c-format
 msgid "database connection requirement not indicated during registration"
 msgstr "el requerimiento de conexión a base de datos no fue indicado durante el registro"
 
-#: postmaster/postmaster.c:5625 postmaster/postmaster.c:5648
+#: postmaster/postmaster.c:5726 postmaster/postmaster.c:5749
 #, c-format
 msgid "invalid processing mode in background worker"
 msgstr "modo de procesamiento no válido en proceso ayudante"
 
-#: postmaster/postmaster.c:5720
+#: postmaster/postmaster.c:5822
 #, c-format
 msgid "starting background worker process \"%s\""
 msgstr "iniciando el proceso ayudante «%s»"
 
-#: postmaster/postmaster.c:5732
+#: postmaster/postmaster.c:5834
 #, c-format
 msgid "could not fork worker process: %m"
 msgstr "no se pudo lanzar el proceso ayudante: %m"
 
-#: postmaster/postmaster.c:6168
+#: postmaster/postmaster.c:5948
+#, fuzzy, c-format
+#| msgid "could not fork worker process: %m"
+msgid "no slot available for new worker process"
+msgstr "no se pudo lanzar el proceso ayudante: %m"
+
+#: postmaster/postmaster.c:6283
 #, c-format
 msgid "could not duplicate socket %d for use in backend: error code %d"
 msgstr "no se pudo duplicar el socket %d para su empleo en el backend: código de error %d"
 
-#: postmaster/postmaster.c:6200
+#: postmaster/postmaster.c:6315
 #, c-format
 msgid "could not create inherited socket: error code %d\n"
 msgstr "no se pudo crear el socket heradado: código de error %d\n"
 
-#: postmaster/postmaster.c:6229
+#: postmaster/postmaster.c:6344
 #, c-format
 msgid "could not open backend variables file \"%s\": %s\n"
 msgstr "no se pudo abrir el archivo de variables de servidor «%s»: %s\n"
 
-#: postmaster/postmaster.c:6236
+#: postmaster/postmaster.c:6351
 #, c-format
 msgid "could not read from backend variables file \"%s\": %s\n"
 msgstr "no se pudo leer el archivo de variables de servidor «%s»: %s\n"
 
-#: postmaster/postmaster.c:6245
+#: postmaster/postmaster.c:6360
 #, c-format
 msgid "could not remove file \"%s\": %s\n"
 msgstr "no se pudo eliminar el archivo «%s»: %s\n"
 
-#: postmaster/postmaster.c:6262
+#: postmaster/postmaster.c:6377
 #, c-format
 msgid "could not map view of backend variables: error code %lu\n"
 msgstr "no se pudo mapear la vista del archivo de variables: código de error %lu\n"
 
-#: postmaster/postmaster.c:6271
+#: postmaster/postmaster.c:6386
 #, c-format
 msgid "could not unmap view of backend variables: error code %lu\n"
 msgstr "no se pudo desmapear la vista del archivo de variables: código de error %lu\n"
 
-#: postmaster/postmaster.c:6278
+#: postmaster/postmaster.c:6393
 #, c-format
 msgid "could not close handle to backend parameter variables: error code %lu\n"
 msgstr "no se pudo cerrar el archivo de variables de servidor: código de error %lu\n"
 
-#: postmaster/postmaster.c:6442
+#: postmaster/postmaster.c:6571
 #, c-format
 msgid "could not read exit code for process\n"
 msgstr "no se pudo leer el código de salida del proceso\n"
 
-#: postmaster/postmaster.c:6447
+#: postmaster/postmaster.c:6576
 #, c-format
 msgid "could not post child completion status\n"
 msgstr "no se pudo publicar el estado de completitud del proceso hijo\n"
 
-#: postmaster/syslogger.c:480 postmaster/syslogger.c:1154
+#: postmaster/syslogger.c:474 postmaster/syslogger.c:1153
 #, c-format
 msgid "could not read from logger pipe: %m"
 msgstr "no se pudo leer desde la tubería de log: %m"
 
-#: postmaster/syslogger.c:528
+#: postmaster/syslogger.c:522
 #, c-format
 msgid "logger shutting down"
 msgstr "proceso logger apagándose"
 
-#: postmaster/syslogger.c:572 postmaster/syslogger.c:586
+#: postmaster/syslogger.c:571 postmaster/syslogger.c:585
 #, c-format
 msgid "could not create pipe for syslog: %m"
 msgstr "no se pudo crear la tubería para syslog: %m"
 
-#: postmaster/syslogger.c:637
+#: postmaster/syslogger.c:636
 #, c-format
 msgid "could not fork system logger: %m"
 msgstr "no se pudo crear el proceso de log: %m"
 
-#: postmaster/syslogger.c:673
+#: postmaster/syslogger.c:672
 #, c-format
 msgid "redirecting log output to logging collector process"
 msgstr "redirigiendo la salida del registro al proceso recolector de registro"
 
-#: postmaster/syslogger.c:674
+#: postmaster/syslogger.c:673
 #, c-format
 msgid "Future log output will appear in directory \"%s\"."
 msgstr "La salida futura del registro aparecerá en el directorio «%s»."
 
-#: postmaster/syslogger.c:682
+#: postmaster/syslogger.c:681
 #, c-format
 msgid "could not redirect stdout: %m"
 msgstr "no se pudo redirigir stdout: %m"
 
-#: postmaster/syslogger.c:687 postmaster/syslogger.c:704
+#: postmaster/syslogger.c:686 postmaster/syslogger.c:703
 #, c-format
 msgid "could not redirect stderr: %m"
 msgstr "no se pudo redirigir stderr: %m"
 
-#: postmaster/syslogger.c:1109
+#: postmaster/syslogger.c:1108
 #, c-format
 msgid "could not write to log file: %s\n"
 msgstr "no se pudo escribir al archivo de log: %s\n"
 
-#: postmaster/syslogger.c:1226
+#: postmaster/syslogger.c:1225
 #, c-format
 msgid "could not open log file \"%s\": %m"
 msgstr "no se pudo abrir el archivo de registro «%s»: %m"
 
-#: postmaster/syslogger.c:1288 postmaster/syslogger.c:1338
+#: postmaster/syslogger.c:1287 postmaster/syslogger.c:1337
 #, c-format
 msgid "disabling automatic rotation (use SIGHUP to re-enable)"
 msgstr "desactivando rotación automática (use SIGHUP para reactivarla)"
@@ -17833,294 +17863,332 @@ msgstr "no se pudo determinar qué ordenamiento usar para la expresión regular"
 msgid "nondeterministic collations are not supported for regular expressions"
 msgstr "los ordenamientos no determinísticos no están soportados para expresiones regulares"
 
-#: repl_gram.y:336 repl_gram.y:368
+#: replication/backup_manifest.c:231
+#, fuzzy, c-format
+#| msgid "server reported unexpected next timeline %u, following timeline %u"
+msgid "expected end timeline %u but found timeline %u"
+msgstr "el servidor reportó un timeline siguiente %u inesperado, a continuación del timeline %u"
+
+#: replication/backup_manifest.c:248
+#, fuzzy, c-format
+#| msgid "server reported unexpected next timeline %u, following timeline %u"
+msgid "expected start timeline %u but found timeline %u"
+msgstr "el servidor reportó un timeline siguiente %u inesperado, a continuación del timeline %u"
+
+#: replication/backup_manifest.c:275
+#, fuzzy, c-format
+#| msgid "crash recovery starts in timeline %u and has target timeline %u"
+msgid "start timeline %u not found history of timeline %u"
+msgstr "la recuperación comienza en el timeline %u y tiene un timeline de destino %u"
+
+#: replication/backup_manifest.c:322
+#, fuzzy, c-format
+#| msgid "could not rewind hash-join temporary file: %m"
+msgid "could not rewind temporary file: %m"
+msgstr "falló la búsqueda en el archivo temporal de hash-join: %m"
+
+#: replication/backup_manifest.c:349
+#, fuzzy, c-format
+#| msgid "could not read from hash-join temporary file: %m"
+msgid "could not read from temporary file: %m"
+msgstr "no se pudo leer el archivo temporal de hash-join: %m"
+
+#: replication/backup_manifest.c:377 utils/sort/sharedtuplestore.c:206
 #, c-format
-msgid "invalid timeline %u"
-msgstr "timeline %u no válido"
+msgid "could not write to temporary file: %m"
+msgstr "no se pudo escribir al archivo temporal: %m"
 
-#: repl_scanner.l:129
-msgid "invalid streaming start location"
-msgstr "posición de inicio de flujo de WAL no válida"
-
-#: repl_scanner.l:180 scan.l:703
-msgid "unterminated quoted string"
-msgstr "una cadena de caracteres entre comillas está inconclusa"
-
-#: replication/basebackup.c:102
+#: replication/basebackup.c:108
 #, c-format
-#| msgid "could not read from file \"%s\": %m"
 msgid "could not read from file \"%s\""
 msgstr "no se pudo leer del archivo «%s»"
 
-#: replication/basebackup.c:462
+#: replication/basebackup.c:551
 #, c-format
 msgid "could not find any WAL files"
 msgstr "no se pudo encontrar ningún archivo de WAL"
 
-#: replication/basebackup.c:476 replication/basebackup.c:491
-#: replication/basebackup.c:500
+#: replication/basebackup.c:566 replication/basebackup.c:582
+#: replication/basebackup.c:591
 #, c-format
 msgid "could not find WAL file \"%s\""
 msgstr "no se pudo encontrar archivo de WAL «%s»"
 
-#: replication/basebackup.c:542 replication/basebackup.c:572
+#: replication/basebackup.c:634 replication/basebackup.c:665
 #, c-format
 msgid "unexpected WAL file size \"%s\""
 msgstr "tamaño del archivo WAL «%s» inesperado"
 
-#: replication/basebackup.c:556 replication/basebackup.c:1567
+#: replication/basebackup.c:648 replication/basebackup.c:1749
 #, c-format
 msgid "base backup could not send data, aborting backup"
 msgstr "el respaldo base no pudo enviar datos, abortando el respaldo"
 
-#: replication/basebackup.c:630
-#, c-format
-msgid "%s total checksum verification failures"
+#: replication/basebackup.c:724
+#, fuzzy, c-format
+#| msgid "%s total checksum verification failures"
+msgid "%lld total checksum verification failures"
 msgstr "%s fallas de verificación de checksums en total"
 
-#: replication/basebackup.c:634
+#: replication/basebackup.c:728
 #, c-format
 msgid "checksum verification failure during base backup"
 msgstr "falla en verificación de checksums durante respaldo base"
 
-#: replication/basebackup.c:678 replication/basebackup.c:687
-#: replication/basebackup.c:696 replication/basebackup.c:705
-#: replication/basebackup.c:714 replication/basebackup.c:725
-#: replication/basebackup.c:742 replication/basebackup.c:751
+#: replication/basebackup.c:781 replication/basebackup.c:790
+#: replication/basebackup.c:799 replication/basebackup.c:808
+#: replication/basebackup.c:817 replication/basebackup.c:828
+#: replication/basebackup.c:845 replication/basebackup.c:854
+#: replication/basebackup.c:866 replication/basebackup.c:890
 #, c-format
 msgid "duplicate option \"%s\""
 msgstr "nombre de opción «%s» duplicada"
 
-#: replication/basebackup.c:731
+#: replication/basebackup.c:834
 #, c-format
 msgid "%d is outside the valid range for parameter \"%s\" (%d .. %d)"
 msgstr "%d está fuera del rango aceptable para el parámetro «%s» (%d .. %d)"
 
-#: replication/basebackup.c:1330
+#: replication/basebackup.c:879
+#, fuzzy, c-format
+#| msgid "unrecognized column option \"%s\""
+msgid "unrecognized manifest option: \"%s\""
+msgstr "opción de columna «%s» no reconocida"
+
+#: replication/basebackup.c:895
+#, c-format
+msgid "unrecognized checksum algorithm: \"%s\""
+msgstr ""
+
+#: replication/basebackup.c:910
+#, c-format
+msgid "manifest checksums require a backup manifest"
+msgstr ""
+
+#: replication/basebackup.c:1501
 #, c-format
 msgid "skipping special file \"%s\""
 msgstr "omitiendo el archivo especial «%s»"
 
-#: replication/basebackup.c:1438
+#: replication/basebackup.c:1620
 #, c-format
 msgid "invalid segment number %d in file \"%s\""
 msgstr "número de segmento %d no válido en archivo «%s»"
 
-#: replication/basebackup.c:1457
+#: replication/basebackup.c:1639
 #, c-format
 msgid "could not verify checksum in file \"%s\", block %d: read buffer size %d and page size %d differ"
 msgstr "no se pudo verificar el checksum en el archivo «%s», bloque %d: el tamaño leído %d y el tamaño de página %d difieren"
 
-#: replication/basebackup.c:1501 replication/basebackup.c:1531
+#: replication/basebackup.c:1683 replication/basebackup.c:1713
 #, c-format
 msgid "could not fseek in file \"%s\": %m"
 msgstr "no se pudo posicionar (fseek) el archivo «%s»: %m"
 
-#: replication/basebackup.c:1523
+#: replication/basebackup.c:1705
 #, c-format
 msgid "could not reread block %d of file \"%s\": %m"
 msgstr "no se pudo leer el bloque %d del archivo «%s»: %m"
 
-#: replication/basebackup.c:1547
+#: replication/basebackup.c:1729
 #, c-format
 msgid "checksum verification failed in file \"%s\", block %d: calculated %X but expected %X"
 msgstr "verificación de checksums falló en archivo «%s», bloque %d: calculado %X pero se esperaba %X"
 
-#: replication/basebackup.c:1554
+#: replication/basebackup.c:1736
 #, c-format
 msgid "further checksum verification failures in file \"%s\" will not be reported"
 msgstr "subsiguientes fallas de verificación de checksums en el archivo «%s» no se reportarán"
 
-#: replication/basebackup.c:1614
+#: replication/basebackup.c:1804
 #, c-format
-#| msgid "file \"%s\" has a total of %d checksum verification failures"
 msgid "file \"%s\" has a total of %d checksum verification failure"
 msgid_plural "file \"%s\" has a total of %d checksum verification failures"
 msgstr[0] "el archivo «%s» tiene un total de %d falla de verificación de checksum"
 msgstr[1] "el archivo «%s» tiene un total de %d fallas de verificación de checksums"
 
-#: replication/basebackup.c:1647
+#: replication/basebackup.c:1840
 #, c-format
 msgid "file name too long for tar format: \"%s\""
 msgstr "nombre de archivo demasiado largo para el formato tar: «%s»"
 
-#: replication/basebackup.c:1652
+#: replication/basebackup.c:1845
 #, c-format
 msgid "symbolic link target too long for tar format: file name \"%s\", target \"%s\""
 msgstr "destino de enlace simbólico demasiado largo para el formato tar: nombre de archivo «%s», destino «%s»"
 
-#: replication/libpqwalreceiver/libpqwalreceiver.c:232
+#: replication/libpqwalreceiver/libpqwalreceiver.c:234
 #, c-format
 msgid "invalid connection string syntax: %s"
 msgstr "sintaxis de cadena de conexión no válida: %s"
 
-#: replication/libpqwalreceiver/libpqwalreceiver.c:256
+#: replication/libpqwalreceiver/libpqwalreceiver.c:258
 #, c-format
 msgid "could not parse connection string: %s"
 msgstr "no se pudo interpretar la cadena de conexión: %s"
 
-#: replication/libpqwalreceiver/libpqwalreceiver.c:328
+#: replication/libpqwalreceiver/libpqwalreceiver.c:330
 #, c-format
 msgid "could not receive database system identifier and timeline ID from the primary server: %s"
 msgstr "no se pudo recibir el identificador de sistema y el ID de timeline del servidor primario: %s"
 
-#: replication/libpqwalreceiver/libpqwalreceiver.c:339
-#: replication/libpqwalreceiver/libpqwalreceiver.c:557
+#: replication/libpqwalreceiver/libpqwalreceiver.c:341
+#: replication/libpqwalreceiver/libpqwalreceiver.c:559
 #, c-format
 msgid "invalid response from primary server"
 msgstr "respuesta no válida del servidor primario"
 
-#: replication/libpqwalreceiver/libpqwalreceiver.c:340
+#: replication/libpqwalreceiver/libpqwalreceiver.c:342
 #, c-format
 msgid "Could not identify system: got %d rows and %d fields, expected %d rows and %d or more fields."
 msgstr "No se pudo identificar el sistema: se obtuvieron %d filas y %d campos, se esperaban %d filas y %d o más campos."
 
-#: replication/libpqwalreceiver/libpqwalreceiver.c:413
-#: replication/libpqwalreceiver/libpqwalreceiver.c:419
-#: replication/libpqwalreceiver/libpqwalreceiver.c:444
+#: replication/libpqwalreceiver/libpqwalreceiver.c:415
+#: replication/libpqwalreceiver/libpqwalreceiver.c:421
+#: replication/libpqwalreceiver/libpqwalreceiver.c:446
 #, c-format
 msgid "could not start WAL streaming: %s"
 msgstr "no se pudo iniciar el flujo de WAL: %s"
 
-#: replication/libpqwalreceiver/libpqwalreceiver.c:467
+#: replication/libpqwalreceiver/libpqwalreceiver.c:469
 #, c-format
 msgid "could not send end-of-streaming message to primary: %s"
 msgstr "no se pudo enviar el mensaje fin-de-flujo al primario: %s"
 
-#: replication/libpqwalreceiver/libpqwalreceiver.c:489
+#: replication/libpqwalreceiver/libpqwalreceiver.c:491
 #, c-format
 msgid "unexpected result set after end-of-streaming"
 msgstr "conjunto de resultados inesperado después del fin-de-flujo"
 
-#: replication/libpqwalreceiver/libpqwalreceiver.c:503
+#: replication/libpqwalreceiver/libpqwalreceiver.c:505
 #, c-format
 msgid "error while shutting down streaming COPY: %s"
 msgstr "ocurrió un error mientras se apagaba el flujo COPY: %s"
 
-#: replication/libpqwalreceiver/libpqwalreceiver.c:512
+#: replication/libpqwalreceiver/libpqwalreceiver.c:514
 #, c-format
 msgid "error reading result of streaming command: %s"
 msgstr "ocurrió un error mientras se leía la orden de flujo: %s"
 
-#: replication/libpqwalreceiver/libpqwalreceiver.c:520
-#: replication/libpqwalreceiver/libpqwalreceiver.c:754
+#: replication/libpqwalreceiver/libpqwalreceiver.c:522
+#: replication/libpqwalreceiver/libpqwalreceiver.c:756
 #, c-format
 msgid "unexpected result after CommandComplete: %s"
 msgstr "resultado inesperado después de CommandComplete: %s"
 
-#: replication/libpqwalreceiver/libpqwalreceiver.c:546
+#: replication/libpqwalreceiver/libpqwalreceiver.c:548
 #, c-format
 msgid "could not receive timeline history file from the primary server: %s"
 msgstr "no se pudo recibir el archivo de historia de timeline del servidor primario: %s"
 
-#: replication/libpqwalreceiver/libpqwalreceiver.c:558
+#: replication/libpqwalreceiver/libpqwalreceiver.c:560
 #, c-format
 msgid "Expected 1 tuple with 2 fields, got %d tuples with %d fields."
 msgstr "Se esperaba 1 tupla con 2 campos, se obtuvieron %d tuplas con %d campos."
 
-#: replication/libpqwalreceiver/libpqwalreceiver.c:718
-#: replication/libpqwalreceiver/libpqwalreceiver.c:769
-#: replication/libpqwalreceiver/libpqwalreceiver.c:775
+#: replication/libpqwalreceiver/libpqwalreceiver.c:720
+#: replication/libpqwalreceiver/libpqwalreceiver.c:771
+#: replication/libpqwalreceiver/libpqwalreceiver.c:777
 #, c-format
 msgid "could not receive data from WAL stream: %s"
 msgstr "no se pudo recibir datos desde el flujo de WAL: %s"
 
-#: replication/libpqwalreceiver/libpqwalreceiver.c:794
+#: replication/libpqwalreceiver/libpqwalreceiver.c:796
 #, c-format
 msgid "could not send data to WAL stream: %s"
 msgstr "no se pudo enviar datos al flujo de WAL: %s"
 
-#: replication/libpqwalreceiver/libpqwalreceiver.c:843
+#: replication/libpqwalreceiver/libpqwalreceiver.c:849
 #, c-format
 msgid "could not create replication slot \"%s\": %s"
 msgstr "no se pudo create el slot de replicación «%s»: %s"
 
-#: replication/libpqwalreceiver/libpqwalreceiver.c:877
+#: replication/libpqwalreceiver/libpqwalreceiver.c:894
 #, c-format
 msgid "invalid query response"
 msgstr "respuesta no válida a consulta"
 
-#: replication/libpqwalreceiver/libpqwalreceiver.c:878
+#: replication/libpqwalreceiver/libpqwalreceiver.c:895
 #, c-format
 msgid "Expected %d fields, got %d fields."
 msgstr "Se esperaban %d campos, se obtuvieron %d campos."
 
-#: replication/libpqwalreceiver/libpqwalreceiver.c:947
+#: replication/libpqwalreceiver/libpqwalreceiver.c:964
 #, c-format
 msgid "the query interface requires a database connection"
 msgstr "la interfaz de consulta requiere una conexión a base de datos"
 
-#: replication/libpqwalreceiver/libpqwalreceiver.c:978
+#: replication/libpqwalreceiver/libpqwalreceiver.c:995
 msgid "empty query"
 msgstr "consulta vacía"
 
-#: replication/logical/launcher.c:307
+#: replication/logical/launcher.c:295
 #, c-format
 msgid "starting logical replication worker for subscription \"%s\""
 msgstr "iniciando el proceso ayudante de replicación lógica para la suscripción «%s»"
 
-#: replication/logical/launcher.c:314
+#: replication/logical/launcher.c:302
 #, c-format
 msgid "cannot start logical replication workers when max_replication_slots = 0"
 msgstr "no se pueden iniciar procesos ayudantes de replicación cuando max_replication_slots = 0"
 
-#: replication/logical/launcher.c:394
+#: replication/logical/launcher.c:382
 #, c-format
 msgid "out of logical replication worker slots"
 msgstr "se agotaron los slots de procesos ayudantes de replicación"
 
-#: replication/logical/launcher.c:395
+#: replication/logical/launcher.c:383
 #, c-format
 msgid "You might need to increase max_logical_replication_workers."
 msgstr "Puede ser necesario incrementar max_logical_replication_workers."
 
-#: replication/logical/launcher.c:450
+#: replication/logical/launcher.c:438
 #, c-format
 msgid "out of background worker slots"
 msgstr "se acabaron los slots de procesos ayudante"
 
-#: replication/logical/launcher.c:451
+#: replication/logical/launcher.c:439
 #, c-format
 msgid "You might need to increase max_worker_processes."
 msgstr "Puede ser necesario incrementar max_worker_processes."
 
-#: replication/logical/launcher.c:650
+#: replication/logical/launcher.c:638
 #, c-format
 msgid "logical replication worker slot %d is empty, cannot attach"
 msgstr "el slot del worker de replicación lógica %d está vacío, no se puede adjuntar"
 
-#: replication/logical/launcher.c:659
+#: replication/logical/launcher.c:647
 #, c-format
 msgid "logical replication worker slot %d is already used by another worker, cannot attach"
 msgstr "el slot de replicación lógica %d ya está siendo utilizado por otro worker, no se puede adjuntar"
 
-#: replication/logical/launcher.c:977
+#: replication/logical/launcher.c:951
 #, c-format
 msgid "logical replication launcher started"
 msgstr "lanzador de replicación lógica iniciado"
 
 # FIXME see slot.c:779.  See also  postmaster.c:835
-#: replication/logical/logical.c:90
+#: replication/logical/logical.c:87
 #, c-format
 msgid "logical decoding requires wal_level >= logical"
 msgstr "la decodificación lógica requiere wal_level >= logical"
 
-#: replication/logical/logical.c:95
+#: replication/logical/logical.c:92
 #, c-format
 msgid "logical decoding requires a database connection"
 msgstr "decodificación lógica requiere una conexión a una base de datos"
 
-#: replication/logical/logical.c:113
+#: replication/logical/logical.c:110
 #, c-format
 msgid "logical decoding cannot be used while in recovery"
 msgstr "la decodificación lógica no puede ejecutarse durante la recuperación"
 
-#: replication/logical/logical.c:258 replication/logical/logical.c:396
+#: replication/logical/logical.c:258 replication/logical/logical.c:399
 #, c-format
 msgid "cannot use physical replication slot for logical decoding"
 msgstr "no se puede usar un slot de replicación física para decodificación lógica"
 
-#: replication/logical/logical.c:263 replication/logical/logical.c:401
+#: replication/logical/logical.c:263 replication/logical/logical.c:404
 #, c-format
 msgid "replication slot \"%s\" was not created in this database"
 msgstr "el slot de replicación «%s» no fue creado en esta base de datos"
@@ -18130,12 +18198,12 @@ msgstr "el slot de replicación «%s» no fue creado en esta base de datos"
 msgid "cannot create logical replication slot in transaction that has performed writes"
 msgstr "no se puede crear un slot de replicación lógica en una transacción que ha efectuado escrituras"
 
-#: replication/logical/logical.c:441
+#: replication/logical/logical.c:444
 #, c-format
 msgid "starting logical decoding for slot \"%s\""
 msgstr "iniciando la decodificación lógica para el slot «%s»"
 
-#: replication/logical/logical.c:443
+#: replication/logical/logical.c:446
 #, c-format
 msgid "Streaming transactions committing after %X/%X, reading WAL from %X/%X."
 msgstr "Transacciones en flujo comprometiendo después de %X/%X, leyendo WAL desde %X/%X."
@@ -18151,657 +18219,686 @@ msgstr "slot «%s», plugin de salida «%s», en el callback %s, LSN asociado %X
 msgid "slot \"%s\", output plugin \"%s\", in the %s callback"
 msgstr "slot «%s», plugin de salida «%s», en el callback %s"
 
-#: replication/logical/logicalfuncs.c:114 replication/slotfuncs.c:34
+#: replication/logical/logicalfuncs.c:104 replication/slotfuncs.c:34
 #, c-format
 msgid "must be superuser or replication role to use replication slots"
 msgstr "debe ser superusuario o rol de replicación para usar slots de replicación"
 
-#: replication/logical/logicalfuncs.c:153
+#: replication/logical/logicalfuncs.c:134
 #, c-format
 msgid "slot name must not be null"
 msgstr "el nombre de slot no debe ser null"
 
-#: replication/logical/logicalfuncs.c:169
+#: replication/logical/logicalfuncs.c:150
 #, c-format
 msgid "options array must not be null"
 msgstr "el array de opciones no debe ser null"
 
-#: replication/logical/logicalfuncs.c:200
+#: replication/logical/logicalfuncs.c:181
 #, c-format
 msgid "array must be one-dimensional"
 msgstr "el array debe ser unidimensional"
 
-#: replication/logical/logicalfuncs.c:206
+#: replication/logical/logicalfuncs.c:187
 #, c-format
 msgid "array must not contain nulls"
 msgstr "el array no debe contener nulls"
 
-#: replication/logical/logicalfuncs.c:222 utils/adt/json.c:2312
-#: utils/adt/jsonb.c:1282
+#: replication/logical/logicalfuncs.c:203 utils/adt/json.c:1128
+#: utils/adt/jsonb.c:1303
 #, c-format
 msgid "array must have even number of elements"
 msgstr "el array debe tener un número par de elementos"
 
-#: replication/logical/logicalfuncs.c:269
+#: replication/logical/logicalfuncs.c:251
+#, fuzzy, c-format
+#| msgid "cannot change relation \"%s\""
+msgid "can no longer get changes from replication slot \"%s\""
+msgstr "no se puede cambiar la relación «%s»"
+
+#: replication/logical/logicalfuncs.c:253 replication/slotfuncs.c:606
+#, c-format
+msgid "This slot has never previously reserved WAL, or has been invalidated."
+msgstr ""
+
+#: replication/logical/logicalfuncs.c:265
 #, c-format
 msgid "logical decoding output plugin \"%s\" produces binary output, but function \"%s\" expects textual data"
 msgstr "el plugin de salida de decodificación lógica «%s» produce salida binaria, pero «%s» espera datos textuales"
 
-#: replication/logical/origin.c:186
+#: replication/logical/origin.c:188
 #, c-format
 msgid "only superusers can query or manipulate replication origins"
 msgstr "debe ser superusuario para consultar o manipular orígenes de replicación"
 
-#: replication/logical/origin.c:191
+#: replication/logical/origin.c:193
 #, c-format
 msgid "cannot query or manipulate replication origin when max_replication_slots = 0"
 msgstr "no se puede consultar o manipular orígenes de replicación cuando max_replication_slots = 0"
 
-#: replication/logical/origin.c:196
+#: replication/logical/origin.c:198
 #, c-format
 msgid "cannot manipulate replication origins during recovery"
 msgstr "no se puede manipular orígenes de replicación durante la recuperación"
 
-#: replication/logical/origin.c:231
+#: replication/logical/origin.c:233
 #, c-format
 msgid "replication origin \"%s\" does not exist"
 msgstr "no existe el origen de replicación «%s»"
 
-#: replication/logical/origin.c:322
+#: replication/logical/origin.c:324
 #, c-format
 msgid "could not find free replication origin OID"
 msgstr "no se pudo encontrar un OID de origen de replicación libre"
 
-#: replication/logical/origin.c:370
+#: replication/logical/origin.c:372
 #, c-format
 msgid "could not drop replication origin with OID %d, in use by PID %d"
 msgstr "no se pudo eliminar el origen de replicación con OID %d, en uso por el PID %d"
 
-#: replication/logical/origin.c:462
+#: replication/logical/origin.c:464
 #, c-format
 msgid "replication origin with OID %u does not exist"
 msgstr "el origen de replicación con OID %u no existe"
 
-#: replication/logical/origin.c:730
+#: replication/logical/origin.c:729
 #, c-format
 msgid "replication checkpoint has wrong magic %u instead of %u"
 msgstr "el checkpoint de replicación tiene número mágico erróneo %u en lugar de %u"
 
-#: replication/logical/origin.c:771
+#: replication/logical/origin.c:770
 #, c-format
 msgid "could not find free replication state, increase max_replication_slots"
 msgstr "no se pudo encontrar una estructura de replicación libre, incremente max_replication_slots"
 
-#: replication/logical/origin.c:789
+#: replication/logical/origin.c:788
 #, c-format
 msgid "replication slot checkpoint has wrong checksum %u, expected %u"
 msgstr "el checkpoint del slot de replicación tiene suma de verificación errónea %u, se esperaba %u"
 
-#: replication/logical/origin.c:917
+#: replication/logical/origin.c:916 replication/logical/origin.c:1102
 #, c-format
 msgid "replication origin with OID %d is already active for PID %d"
 msgstr "el origen de replicación con OID %d ya está activo para el PID %d"
 
-#: replication/logical/origin.c:928 replication/logical/origin.c:1115
+#: replication/logical/origin.c:927 replication/logical/origin.c:1114
 #, c-format
 msgid "could not find free replication state slot for replication origin with OID %u"
 msgstr "no se pudo encontrar un slot libre para el estado del origen de replicación con OID %u"
 
-#: replication/logical/origin.c:930 replication/logical/origin.c:1117
-#: replication/slot.c:1566
+#: replication/logical/origin.c:929 replication/logical/origin.c:1116
+#: replication/slot.c:1677
 #, c-format
 msgid "Increase max_replication_slots and try again."
 msgstr "Aumente max_replication_slots y reintente."
 
-#: replication/logical/origin.c:1074
+#: replication/logical/origin.c:1073
 #, c-format
 msgid "cannot setup replication origin when one is already setup"
 msgstr "no se puede establecer un destino de replicación cuando ya hay uno definido"
 
-#: replication/logical/origin.c:1103
-#, c-format
-msgid "replication origin %d is already active for PID %d"
-msgstr "el origen de replicación %d ya está activo para el PID %d"
-
-#: replication/logical/origin.c:1154 replication/logical/origin.c:1370
-#: replication/logical/origin.c:1390
+#: replication/logical/origin.c:1153 replication/logical/origin.c:1369
+#: replication/logical/origin.c:1389
 #, c-format
 msgid "no replication origin is configured"
 msgstr "no hay un destino de replicación configurado"
 
-#: replication/logical/origin.c:1237
+#: replication/logical/origin.c:1236
 #, c-format
 msgid "replication origin name \"%s\" is reserved"
 msgstr "el nombre de origen de replicación «%s» está reservado"
 
-#: replication/logical/origin.c:1239
+#: replication/logical/origin.c:1238
 #, c-format
 msgid "Origin names starting with \"pg_\" are reserved."
 msgstr "Los nombres de origen que empiezan con «pg_» están reservados."
 
-#: replication/logical/relation.c:255
+#: replication/logical/relation.c:272
 #, c-format
 msgid "logical replication target relation \"%s.%s\" does not exist"
 msgstr "la relación destino de replicación lógica «%s.%s» no existe"
 
-#: replication/logical/relation.c:297
+#: replication/logical/relation.c:329
 #, c-format
 msgid "logical replication target relation \"%s.%s\" is missing some replicated columns"
 msgstr "a la relación destino de replicación lógica «%s.%s» le faltan algunas columnas replicadas"
 
-#: replication/logical/relation.c:337
+#: replication/logical/relation.c:369
 #, c-format
 msgid "logical replication target relation \"%s.%s\" uses system columns in REPLICA IDENTITY index"
 msgstr "la relación de destino de replicación lógica «%s.%s» usa columnas de sistemas en el índice REPLICA IDENTITY"
 
-#: replication/logical/reorderbuffer.c:2507
+#: replication/logical/reorderbuffer.c:2671
 #, c-format
 msgid "could not write to data file for XID %u: %m"
 msgstr "no se pudo escribir al archivo de datos para el XID %u: %m"
 
-#: replication/logical/reorderbuffer.c:2600
-#: replication/logical/reorderbuffer.c:2622
+#: replication/logical/reorderbuffer.c:2858
+#: replication/logical/reorderbuffer.c:2883
 #, c-format
 msgid "could not read from reorderbuffer spill file: %m"
 msgstr "no se pudo leer desde el archivo de desborde de reorderbuffer: %m"
 
-#: replication/logical/reorderbuffer.c:2604
-#: replication/logical/reorderbuffer.c:2626
+#: replication/logical/reorderbuffer.c:2862
+#: replication/logical/reorderbuffer.c:2887
 #, c-format
 msgid "could not read from reorderbuffer spill file: read %d instead of %u bytes"
 msgstr "no se pudo leer desde el archivo de desborde de reorderbuffer: se leyeron sólo %d en ve de %u bytes"
 
-#: replication/logical/reorderbuffer.c:2849
+#: replication/logical/reorderbuffer.c:3122
 #, c-format
 msgid "could not remove file \"%s\" during removal of pg_replslot/%s/xid*: %m"
 msgstr "no se pudo borrar el archivo «%s» durante la eliminación de pg_replslot/%s/xid*: %m"
 
 # FIXME almost duplicated again!?
-#: replication/logical/reorderbuffer.c:3319
+#: replication/logical/reorderbuffer.c:3614
 #, c-format
 msgid "could not read from file \"%s\": read %d instead of %d bytes"
 msgstr "no se pudo leer del archivo «%s»: se leyeron %d en lugar de %d bytes"
 
-#: replication/logical/snapbuild.c:611
+#: replication/logical/snapbuild.c:606
 #, c-format
 msgid "initial slot snapshot too large"
 msgstr "el snapshot inicial del slot es demasiado grande"
 
 # FIXME: snapshot? instantánea?
-#: replication/logical/snapbuild.c:665
+#: replication/logical/snapbuild.c:660
 #, c-format
 msgid "exported logical decoding snapshot: \"%s\" with %u transaction ID"
 msgid_plural "exported logical decoding snapshot: \"%s\" with %u transaction IDs"
 msgstr[0] "se exportó un snapshot de decodificación lógica: «%s» con %u ID de transacción"
 msgstr[1] "se exportó un snapshot de decodificación lógica: «%s» con %u IDs de transacción"
 
-#: replication/logical/snapbuild.c:1270 replication/logical/snapbuild.c:1363
-#: replication/logical/snapbuild.c:1917
+#: replication/logical/snapbuild.c:1265 replication/logical/snapbuild.c:1358
+#: replication/logical/snapbuild.c:1912
 #, c-format
 msgid "logical decoding found consistent point at %X/%X"
 msgstr "la decodificación lógica encontró un punto consistente en %X/%X"
 
-#: replication/logical/snapbuild.c:1272
+#: replication/logical/snapbuild.c:1267
 #, c-format
 msgid "There are no running transactions."
 msgstr "No hay transacciones en ejecución."
 
-#: replication/logical/snapbuild.c:1314
+#: replication/logical/snapbuild.c:1309
 #, c-format
 msgid "logical decoding found initial starting point at %X/%X"
 msgstr "decodificación lógica encontró punto de inicio en %X/%X"
 
-#: replication/logical/snapbuild.c:1316 replication/logical/snapbuild.c:1340
+#: replication/logical/snapbuild.c:1311 replication/logical/snapbuild.c:1335
 #, c-format
 msgid "Waiting for transactions (approximately %d) older than %u to end."
 msgstr "Esperando que las (aproximadamente %d) transacciones más antiguas que %u terminen."
 
-#: replication/logical/snapbuild.c:1338
+#: replication/logical/snapbuild.c:1333
 #, c-format
 msgid "logical decoding found initial consistent point at %X/%X"
 msgstr "la decodificación lógica encontró un punto consistente inicial en %X/%X"
 
-#: replication/logical/snapbuild.c:1365
+#: replication/logical/snapbuild.c:1360
 #, c-format
 msgid "There are no old transactions anymore."
 msgstr "Ya no hay transacciones antiguas en ejecución."
 
 # FIXME "snapbuild"?
-#: replication/logical/snapbuild.c:1759
+#: replication/logical/snapbuild.c:1754
 #, c-format
 msgid "snapbuild state file \"%s\" has wrong magic number: %u instead of %u"
 msgstr "el archivo de estado de snapbuild «%s» tiene número mágico erróneo: %u en lugar de %u"
 
-#: replication/logical/snapbuild.c:1765
+#: replication/logical/snapbuild.c:1760
 #, c-format
 msgid "snapbuild state file \"%s\" has unsupported version: %u instead of %u"
 msgstr "el archivo de estado de snapbuild «%s» tiene versión no soportada: %u en vez de %u"
 
-#: replication/logical/snapbuild.c:1864
+#: replication/logical/snapbuild.c:1859
 #, c-format
 msgid "checksum mismatch for snapbuild state file \"%s\": is %u, should be %u"
 msgstr "suma de verificación no coincidente para el archivo de estado de snapbuild «%s»: es %u, debería ser %u"
 
-#: replication/logical/snapbuild.c:1919
+#: replication/logical/snapbuild.c:1914
 #, c-format
 msgid "Logical decoding will begin using saved snapshot."
 msgstr "La decodificación lógica comenzará usando el snapshot guardado."
 
-#: replication/logical/snapbuild.c:1991
+#: replication/logical/snapbuild.c:1986
 #, c-format
 msgid "could not parse file name \"%s\""
 msgstr "no se pudo interpretar el nombre de archivo «%s»"
 
-#: replication/logical/tablesync.c:139
+#: replication/logical/tablesync.c:132
 #, c-format
 msgid "logical replication table synchronization worker for subscription \"%s\", table \"%s\" has finished"
 msgstr "el ayudante de sincronización de tabla de replicación lógica para la suscripción «%s», tabla «%s» ha terminado"
 
-#: replication/logical/tablesync.c:672
+#: replication/logical/tablesync.c:664
 #, c-format
 msgid "could not fetch table info for table \"%s.%s\" from publisher: %s"
 msgstr "no se pudo obtener información de la tabla «%s.%s» del editor (publisher): %s"
 
-#: replication/logical/tablesync.c:678
+#: replication/logical/tablesync.c:670
 #, c-format
 msgid "table \"%s.%s\" not found on publisher"
 msgstr "la tabla \"%s.%s\" no fue encontrada en el editor (publisher)"
 
-#: replication/logical/tablesync.c:710
+#: replication/logical/tablesync.c:704
 #, c-format
 msgid "could not fetch table info for table \"%s.%s\": %s"
 msgstr "no se pudo obtener información de la tabla «%s.%s»: %s"
 
-#: replication/logical/tablesync.c:780
+#: replication/logical/tablesync.c:791
 #, c-format
 msgid "could not start initial contents copy for table \"%s.%s\": %s"
 msgstr "no se pudo iniciar la copia de contenido inicial para de la tabla «%s.%s»: %s"
 
-#: replication/logical/tablesync.c:894
+#: replication/logical/tablesync.c:905
 #, c-format
 msgid "table copy could not start transaction on publisher"
 msgstr "la copia de la tabla no pudo iniciar una transacción en el editor (publisher)"
 
-#: replication/logical/tablesync.c:916
+#: replication/logical/tablesync.c:927
 #, c-format
 msgid "table copy could not finish transaction on publisher"
 msgstr "la copia de tabla no pudo terminar la transacción en el editor (publisher)"
 
-#: replication/logical/worker.c:290
+#: replication/logical/worker.c:313
 #, c-format
 msgid "processing remote data for replication target relation \"%s.%s\" column \"%s\", remote type %s, local type %s"
 msgstr "Procesamiento de datos remotos para la relación de destino de replicación \"%s.%s\" columna \"%s\", tipo remoto %s, tipo local %s"
 
-#: replication/logical/worker.c:511
+#: replication/logical/worker.c:552
 #, c-format
 msgid "ORIGIN message sent out of order"
 msgstr "mensaje ORIGIN enviado fuera de orden"
 
-#: replication/logical/worker.c:645
+#: replication/logical/worker.c:702
 #, c-format
 msgid "publisher did not send replica identity column expected by the logical replication target relation \"%s.%s\""
 msgstr "el editor (publisher) no envía la columna identidad de réplica esperada por la relación de destino de replicación lógica «%s.%s»"
 
-#: replication/logical/worker.c:652
+#: replication/logical/worker.c:709
 #, 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 "la relación destino de replicación lógica «%s.%s» no tiene índice REPLICA IDENTITY ni PRIMARY KEY y la relación publicada no tiene REPLICA IDENTITY FULL"
 
-#: replication/logical/worker.c:993
+#: replication/logical/worker.c:1387
 #, c-format
 msgid "invalid logical replication message type \"%c\""
 msgstr "tipo de mensaje de replicación lógica «%c» no válido"
 
-#: replication/logical/worker.c:1134
+#: replication/logical/worker.c:1529
 #, c-format
 msgid "data stream from publisher has ended"
 msgstr "el flujo de datos del publisher ha terminado"
 
-#: replication/logical/worker.c:1289
+#: replication/logical/worker.c:1684
 #, c-format
 msgid "terminating logical replication worker due to timeout"
 msgstr "terminando el proceso de replicación lógica debido a que se agotó el tiempo de espera"
 
-#: replication/logical/worker.c:1437
+#: replication/logical/worker.c:1832
 #, c-format
 msgid "logical replication apply worker for subscription \"%s\" will stop because the subscription was removed"
 msgstr "el ayudante «apply» de replicación lógica para la suscripción «%s» se detendrá porque la suscripción fue eliminada"
 
-#: replication/logical/worker.c:1451
+#: replication/logical/worker.c:1846
 #, c-format
 msgid "logical replication apply worker for subscription \"%s\" will stop because the subscription was disabled"
 msgstr "el ayudante «apply» de replicación lógica para la suscripción «%s» se detendrá porque la suscripción fue inhabilitada"
 
-#: replication/logical/worker.c:1465
+#: replication/logical/worker.c:1860
 #, c-format
 msgid "logical replication apply worker for subscription \"%s\" will restart because the connection information was changed"
 msgstr "el ayudante «apply» de replicación lógica para la suscripción «%s» se reiniciará porque la información de conexión fue cambiada"
 
-#: replication/logical/worker.c:1479
+#: replication/logical/worker.c:1874
 #, c-format
 msgid "logical replication apply worker for subscription \"%s\" will restart because subscription was renamed"
 msgstr "el ayudante «apply» de replicación lógica para la suscripción «%s» se reiniciará porque a la suscripción se le cambió el nombre"
 
-#: replication/logical/worker.c:1496
+#: replication/logical/worker.c:1891
 #, c-format
 msgid "logical replication apply worker for subscription \"%s\" will restart because the replication slot name was changed"
 msgstr "el ayudante «apply» de replicación lógica para la suscripción «%s» se reiniciará porque el nombre del slot de replicación fue cambiado"
 
-#: replication/logical/worker.c:1510
+#: replication/logical/worker.c:1905
 #, c-format
 msgid "logical replication apply worker for subscription \"%s\" will restart because subscription's publications were changed"
 msgstr "el ayudante «apply» de replicación lógica para la suscripción «%s» se reiniciará porque las publicaciones de la suscripción fueron cambiadas"
 
-#: replication/logical/worker.c:1614
+#: replication/logical/worker.c:1995
 #, c-format
 msgid "logical replication apply worker for subscription %u will not start because the subscription was removed during startup"
 msgstr "el ayudante «apply» de replicación lógica para la suscripción %u no se iniciará porque la suscripción fue eliminada durante el inicio"
 
-#: replication/logical/worker.c:1626
+#: replication/logical/worker.c:2007
 #, c-format
 msgid "logical replication apply worker for subscription \"%s\" will not start because the subscription was disabled during startup"
 msgstr "el ayudante «apply» de replicación lógica para la suscripción «%s» no se iniciará porque la suscripción fue inhabilitada durante el inicio"
 
-#: replication/logical/worker.c:1644
+#: replication/logical/worker.c:2025
 #, c-format
 msgid "logical replication table synchronization worker for subscription \"%s\", table \"%s\" has started"
 msgstr "el ayudante de sincronización de tabla de replicación lógica para la suscripción «%s», tabla «%s» ha iniciado"
 
-#: replication/logical/worker.c:1648
+#: replication/logical/worker.c:2029
 #, c-format
 msgid "logical replication apply worker for subscription \"%s\" has started"
 msgstr "el ayudante «apply» de replicación lógica para la suscripción «%s» ha iniciado"
 
-#: replication/logical/worker.c:1687
+#: replication/logical/worker.c:2068
 #, c-format
 msgid "subscription has no replication slot set"
 msgstr "la suscripción no tiene un slot de replicación establecido"
 
-#: replication/pgoutput/pgoutput.c:117
+#: replication/pgoutput/pgoutput.c:147
 #, c-format
 msgid "invalid proto_version"
 msgstr "proto_version no válido"
 
-#: replication/pgoutput/pgoutput.c:122
+#: replication/pgoutput/pgoutput.c:152
 #, c-format
 msgid "proto_version \"%s\" out of range"
 msgstr "proto_version «%s» está fuera de rango"
 
-#: replication/pgoutput/pgoutput.c:139
+#: replication/pgoutput/pgoutput.c:169
 #, c-format
 msgid "invalid publication_names syntax"
 msgstr "sintaxis de publication_names no válida"
 
-#: replication/pgoutput/pgoutput.c:181
+#: replication/pgoutput/pgoutput.c:211
 #, c-format
 msgid "client sent proto_version=%d but we only support protocol %d or lower"
 msgstr "el cliente envió proto_version=%d pero sólo soportamos el protocolo %d o inferior"
 
-#: replication/pgoutput/pgoutput.c:187
+#: replication/pgoutput/pgoutput.c:217
 #, c-format
 msgid "client sent proto_version=%d but we only support protocol %d or higher"
 msgstr "el cliente envió proto_version=%d pero sólo soportamos el protocolo %d o superior"
 
-#: replication/pgoutput/pgoutput.c:193
+#: replication/pgoutput/pgoutput.c:223
 #, c-format
 msgid "publication_names parameter missing"
 msgstr "parámetro publication_names faltante"
 
-#: replication/slot.c:182
+#: replication/slot.c:180
 #, c-format
 msgid "replication slot name \"%s\" is too short"
 msgstr "el nombre de slot de replicación «%s» es demasiado corto"
 
-#: replication/slot.c:191
+#: replication/slot.c:189
 #, c-format
 msgid "replication slot name \"%s\" is too long"
 msgstr "el nombre de slot de replicación «%s» es demasiado largo"
 
-#: replication/slot.c:204
+#: replication/slot.c:202
 #, c-format
 msgid "replication slot name \"%s\" contains invalid character"
 msgstr "el nombre de slot de replicación «%s» contiene caracteres no válidos"
 
-#: replication/slot.c:206
+#: replication/slot.c:204
 #, c-format
 msgid "Replication slot names may only contain lower case letters, numbers, and the underscore character."
 msgstr "Los nombres de slots de replicación sólo pueden contener letras minúsculas, números y el carácter «_»."
 
-#: replication/slot.c:253
+#: replication/slot.c:251
 #, c-format
 msgid "replication slot \"%s\" already exists"
 msgstr "el slot de replicación «%s» ya existe"
 
-#: replication/slot.c:263
+#: replication/slot.c:261
 #, c-format
 msgid "all replication slots are in use"
 msgstr "todos los slots de replicación están en uso"
 
-#: replication/slot.c:264
+#: replication/slot.c:262
 #, c-format
 msgid "Free one or increase max_replication_slots."
 msgstr "Libere uno o incremente max_replication_slots."
 
-#: replication/slot.c:387 replication/slotfuncs.c:663
+#: replication/slot.c:391 replication/slotfuncs.c:712
 #, c-format
 msgid "replication slot \"%s\" does not exist"
 msgstr "no existe el slot de replicación «%s»"
 
-#: replication/slot.c:398 replication/slot.c:947
+#: replication/slot.c:402 replication/slot.c:963
 #, c-format
 msgid "replication slot \"%s\" is active for PID %d"
 msgstr "el slot de replicación «%s» está activo para el PID %d"
 
-#: replication/slot.c:631 replication/slot.c:1139 replication/slot.c:1501
+#: replication/slot.c:640 replication/slot.c:1229 replication/slot.c:1612
 #, c-format
 msgid "could not remove directory \"%s\""
 msgstr "no se pudo eliminar el directorio «%s»"
 
-#: replication/slot.c:982
+#: replication/slot.c:998
 #, c-format
 msgid "replication slots can only be used if max_replication_slots > 0"
 msgstr "los slots de replicación sólo pueden usarse si max_replication_slots > 0"
 
 # FIXME see logical.c:81
-#: replication/slot.c:987
+#: replication/slot.c:1003
 #, c-format
 msgid "replication slots can only be used if wal_level >= replica"
 msgstr "los slots de replicación sólo pueden usarse si wal_level >= replica"
 
-#: replication/slot.c:1439
+#: replication/slot.c:1130
+#, fuzzy, c-format
+#| msgid "terminating walsender process due to replication timeout"
+msgid "terminating walsender %d because replication slot \"%s\" is too far behind"
+msgstr "terminando el proceso walsender debido a que se agotó el tiempo de espera de replicación"
+
+#: replication/slot.c:1140
+#, c-format
+msgid "invalidating slot \"%s\" because its restart_lsn %X/%X exceeds max_slot_wal_keep_size"
+msgstr ""
+
+#: replication/slot.c:1550
 #, c-format
 msgid "replication slot file \"%s\" has wrong magic number: %u instead of %u"
 msgstr "el archivo de slot de replicación «%s» tiene número mágico erróneo: %u en lugar de %u"
 
-#: replication/slot.c:1446
+#: replication/slot.c:1557
 #, c-format
 msgid "replication slot file \"%s\" has unsupported version %u"
 msgstr "el archivo de slot de replicación «%s» tiene versión no soportada %u"
 
-#: replication/slot.c:1453
+#: replication/slot.c:1564
 #, c-format
 msgid "replication slot file \"%s\" has corrupted length %u"
 msgstr "el archivo de slot de replicación «%s» tiene largo corrupto %u"
 
-#: replication/slot.c:1489
+#: replication/slot.c:1600
 #, c-format
 msgid "checksum mismatch for replication slot file \"%s\": is %u, should be %u"
 msgstr "suma de verificación no coincidenete en archivo de slot de replicación «%s»: es %u, debería ser %u"
 
 # FIXME see slot.c:779.  See also  postmaster.c:835
-#: replication/slot.c:1523
+#: replication/slot.c:1634
 #, c-format
 msgid "logical replication slot \"%s\" exists, but wal_level < logical"
 msgstr "existe el slot de replicación lógica «%s», pero wal_level < logical"
 
-#: replication/slot.c:1525
+#: replication/slot.c:1636
 #, c-format
 msgid "Change wal_level to be logical or higher."
 msgstr "Cambie wal_level a logical o superior."
 
 # FIXME see slot.c:779.  See also  postmaster.c:835
-#: replication/slot.c:1529
+#: replication/slot.c:1640
 #, c-format
 msgid "physical replication slot \"%s\" exists, but wal_level < replica"
 msgstr "existe el slot de replicación lógica «%s», pero wal_level < logical"
 
 # <> hello vim
-#: replication/slot.c:1531
+#: replication/slot.c:1642
 #, c-format
 msgid "Change wal_level to be replica or higher."
 msgstr "Cambie wal_level a replica o superior."
 
-#: replication/slot.c:1565
+#: replication/slot.c:1676
 #, c-format
 msgid "too many replication slots active before shutdown"
 msgstr "demasiados slots de replicacion activos antes del apagado"
 
-#: replication/slotfuncs.c:526
+#: replication/slotfuncs.c:582
 #, c-format
 msgid "invalid target WAL LSN"
 msgstr "el LSN de wal de destino no es válido"
 
-#: replication/slotfuncs.c:548
-#, c-format
-msgid "cannot advance replication slot that has not previously reserved WAL"
-msgstr "no puede avanzar un slot de replicación que no ha reservado WAL previamente"
+#: replication/slotfuncs.c:604
+#, fuzzy, c-format
+#| msgid "replication slot \"%s\" does not exist"
+msgid "replication slot \"%s\" cannot be advanced"
+msgstr "no existe el slot de replicación «%s»"
 
-#: replication/slotfuncs.c:564
+#: replication/slotfuncs.c:622
 #, c-format
 msgid "cannot advance replication slot to %X/%X, minimum is %X/%X"
 msgstr "no puede avanzar un slot de replicación a %X/%X, el mínimo es %X/%X"
 
-#: replication/slotfuncs.c:670
+#: replication/slotfuncs.c:719
 #, c-format
 msgid "cannot copy physical replication slot \"%s\" as a logical replication slot"
 msgstr "no se puede copiar el slot de replicación física «%s» como slot de replicación lógica"
 
-#: replication/slotfuncs.c:672
+#: replication/slotfuncs.c:721
 #, c-format
 msgid "cannot copy logical replication slot \"%s\" as a physical replication slot"
 msgstr "no se puede copiar el slot de replicación lógica «%s» como slot de replicación física"
 
-#: replication/slotfuncs.c:681
+#: replication/slotfuncs.c:730
 #, c-format
 msgid "cannot copy a replication slot that doesn't reserve WAL"
 msgstr "no puede copiar un slot de replicación que no ha reservado WAL"
 
-#: replication/slotfuncs.c:746
+#: replication/slotfuncs.c:805
 #, c-format
 msgid "could not copy replication slot \"%s\""
 msgstr "no se pudo copiar el slot de replicación «%s»"
 
-#: replication/slotfuncs.c:748
+#: replication/slotfuncs.c:807
 #, c-format
 msgid "The source replication slot was modified incompatibly during the copy operation."
 msgstr "El slot de replicación de origen fue modificado incompatiblemente durante la operación de copia."
 
-#: replication/syncrep.c:248
+#: replication/slotfuncs.c:813
+#, fuzzy, c-format
+#| msgid "could not copy replication slot \"%s\""
+msgid "cannot copy unfinished logical replication slot \"%s\""
+msgstr "no se pudo copiar el slot de replicación «%s»"
+
+#: replication/slotfuncs.c:815
+#, c-format
+msgid "Retry when the source replication slot's confirmed_flush_lsn is valid."
+msgstr ""
+
+#: replication/syncrep.c:257
 #, c-format
 msgid "canceling the wait for synchronous replication and terminating connection due to administrator command"
 msgstr "cancelando la espera para la replicación sincrónica y terminando la conexión debido a una orden del administrador"
 
-#: replication/syncrep.c:249 replication/syncrep.c:266
+#: replication/syncrep.c:258 replication/syncrep.c:275
 #, c-format
 msgid "The transaction has already committed locally, but might not have been replicated to the standby."
 msgstr "La transacción ya fue comprometida localmente, pero pudo no haber sido replicada al standby."
 
-#: replication/syncrep.c:265
+#: replication/syncrep.c:274
 #, c-format
 msgid "canceling wait for synchronous replication due to user request"
 msgstr "cancelando espera para la replicación sincrónica debido a una petición del usuario"
 
-#: replication/syncrep.c:398
+#: replication/syncrep.c:416
 #, c-format
 msgid "standby \"%s\" now has synchronous standby priority %u"
 msgstr "el standby «%s» ahora tiene prioridad sincrónica %u"
 
-#: replication/syncrep.c:461
+#: replication/syncrep.c:483
 #, c-format
 msgid "standby \"%s\" is now a synchronous standby with priority %u"
 msgstr "el standby «%s» es ahora un standby sincrónico con prioridad %u"
 
-#: replication/syncrep.c:465
+#: replication/syncrep.c:487
 #, c-format
 msgid "standby \"%s\" is now a candidate for quorum synchronous standby"
 msgstr "el standby «%s» es ahora un candidato para standby sincrónico de quórum"
 
-#: replication/syncrep.c:1165
+#: replication/syncrep.c:1034
 #, c-format
 msgid "synchronous_standby_names parser failed"
 msgstr "falló la interpretación de synchronous_standby_names"
 
-#: replication/syncrep.c:1171
+#: replication/syncrep.c:1040
 #, c-format
 msgid "number of synchronous standbys (%d) must be greater than zero"
 msgstr "el argumento de standby sincrónicos (%d) debe ser mayor que cero"
 
-#: replication/walreceiver.c:160
+#: replication/walreceiver.c:171
 #, c-format
 msgid "terminating walreceiver process due to administrator command"
 msgstr "terminando el proceso walreceiver debido a una orden del administrador"
 
-#: replication/walreceiver.c:276
+#: replication/walreceiver.c:297
 #, c-format
 msgid "could not connect to the primary server: %s"
 msgstr "no se pudo conectar al servidor primario: %s"
 
-#: replication/walreceiver.c:322
+#: replication/walreceiver.c:343
 #, c-format
 msgid "database system identifier differs between the primary and standby"
 msgstr "el identificador de sistema difiere entre el primario y el standby"
 
-#: replication/walreceiver.c:323
+#: replication/walreceiver.c:344
 #, c-format
 msgid "The primary's identifier is %s, the standby's identifier is %s."
 msgstr "El identificador del primario es %s, el identificador del standby es %s."
 
-#: replication/walreceiver.c:333
+#: replication/walreceiver.c:354
 #, c-format
 msgid "highest timeline %u of the primary is behind recovery timeline %u"
 msgstr "el timeline más alto del primario, %u, está más atrás que el timeline de recuperación %u"
 
-#: replication/walreceiver.c:369
+#: replication/walreceiver.c:408
 #, c-format
 msgid "started streaming WAL from primary at %X/%X on timeline %u"
 msgstr "iniciando el flujo de WAL desde el primario en %X/%X en el timeline %u"
 
-#: replication/walreceiver.c:374
+#: replication/walreceiver.c:413
 #, c-format
 msgid "restarted WAL streaming at %X/%X on timeline %u"
 msgstr "reiniciando el flujo de WAL en %X/%X en el timeline %u"
 
-#: replication/walreceiver.c:403
+#: replication/walreceiver.c:442
 #, c-format
 msgid "cannot continue WAL streaming, recovery has already ended"
 msgstr "no se puede continuar el flujo de WAL; la recuperación ya ha terminado"
 
-#: replication/walreceiver.c:440
+#: replication/walreceiver.c:479
 #, c-format
 msgid "replication terminated by primary server"
 msgstr "replicación terminada por el servidor primario"
 
-#: replication/walreceiver.c:441
+#: replication/walreceiver.c:480
 #, c-format
 msgid "End of WAL reached on timeline %u at %X/%X."
 msgstr "Se alcanzó el fin de WAL en el timeline %u en la posición %X/%X."
 
-#: replication/walreceiver.c:529
+#: replication/walreceiver.c:568
 #, c-format
 msgid "terminating walreceiver due to timeout"
 msgstr "terminando el proceso walreceiver debido a que se agotó el tiempo de espera"
 
-#: replication/walreceiver.c:567
+#: replication/walreceiver.c:606
 #, c-format
 msgid "primary server contains no more WAL on requested timeline %u"
 msgstr "el servidor primario no contiene más WAL en el timeline %u solicitado"
 
-#: replication/walreceiver.c:582 replication/walreceiver.c:922
+#: replication/walreceiver.c:622 replication/walreceiver.c:929
 #, c-format
 msgid "could not close log segment %s: %m"
 msgstr "no se pudo cerrar archivo de segmento %s: %m"
 
-#: replication/walreceiver.c:700
+#: replication/walreceiver.c:742
 #, c-format
 msgid "fetching timeline history file for timeline %u from primary server"
 msgstr "trayendo el archivo de historia del timeline para el timeline %u desde el servidor primario"
@@ -18811,128 +18908,139 @@ msgstr "trayendo el archivo de historia del timeline para el timeline %u desde e
 msgid "could not write to log segment %s at offset %u, length %lu: %m"
 msgstr "no se pudo escribir al segmento de log %s en la posición %u, largo %lu: %m"
 
-#: replication/walsender.c:497
+#: replication/walsender.c:540 storage/smgr/md.c:1291
+#, c-format
+msgid "could not seek to end of file \"%s\": %m"
+msgstr "no se pudo posicionar (seek) al fin del archivo «%s»: %m"
+
+#: replication/walsender.c:544
 #, c-format
 msgid "could not seek to beginning of file \"%s\": %m"
 msgstr "no se pudo posicionar (seek) al comienzo del archivo «%s»: %m"
 
-#: replication/walsender.c:548
+#: replication/walsender.c:595
 #, c-format
 msgid "IDENTIFY_SYSTEM has not been run before START_REPLICATION"
 msgstr "IDENTIFY_SYSTEM no se ha ejecutado antes de START_REPLICATION"
 
-#: replication/walsender.c:565
+#: replication/walsender.c:612
 #, c-format
 msgid "cannot use a logical replication slot for physical replication"
 msgstr "no se puede usar un slot de replicación lógica para replicación física"
 
-#: replication/walsender.c:628
+#: replication/walsender.c:681
 #, c-format
 msgid "requested starting point %X/%X on timeline %u is not in this server's history"
 msgstr "el punto de inicio solicitado %X/%X del timeline %u no está en la historia de este servidor"
 
-#: replication/walsender.c:632
+#: replication/walsender.c:685
 #, c-format
 msgid "This server's history forked from timeline %u at %X/%X."
 msgstr "La historia de este servidor bifurcó desde el timeline %u en %X/%X."
 
-#: replication/walsender.c:677
+#: replication/walsender.c:730
 #, c-format
 msgid "requested starting point %X/%X is ahead of the WAL flush position of this server %X/%X"
 msgstr "el punto de inicio solicitado %X/%X está más adelante que la posición de sincronización (flush) de WAL de este servidor %X/%X"
 
 #. translator: %s is a CREATE_REPLICATION_SLOT statement
-#: replication/walsender.c:907
+#: replication/walsender.c:981
 #, c-format
 msgid "%s must not be called inside a transaction"
 msgstr "%s no debe ser ejecutado dentro de una transacción"
 
 #. translator: %s is a CREATE_REPLICATION_SLOT statement
-#: replication/walsender.c:917
+#: replication/walsender.c:991
 #, c-format
 msgid "%s must be called inside a transaction"
 msgstr "%s no debe ser ejecutado dentro de una transacción"
 
 #. translator: %s is a CREATE_REPLICATION_SLOT statement
-#: replication/walsender.c:923
+#: replication/walsender.c:997
 #, c-format
 msgid "%s must be called in REPEATABLE READ isolation mode transaction"
 msgstr "%s debe llamarse en una transacción de modo de aislamiento REPEATABLE READ"
 
 #. translator: %s is a CREATE_REPLICATION_SLOT statement
-#: replication/walsender.c:929
+#: replication/walsender.c:1003
 #, c-format
 msgid "%s must be called before any query"
 msgstr "%s debe ser llamado antes de cualquier consulta"
 
 #. translator: %s is a CREATE_REPLICATION_SLOT statement
-#: replication/walsender.c:935
+#: replication/walsender.c:1009
 #, c-format
 msgid "%s must not be called in a subtransaction"
 msgstr "%s no está permitido en una subtransacción"
 
-#: replication/walsender.c:1082
+#: replication/walsender.c:1157
+#, fuzzy, c-format
+#| msgid "created temporary replication slot \"%s\""
+msgid "cannot read from logical replication slot \"%s\""
+msgstr "se creó slot temporal de replicación «%s»"
+
+#: replication/walsender.c:1159
+#, c-format
+msgid "This slot has been invalidated because it exceeded the maximum reserved size."
+msgstr ""
+
+#: replication/walsender.c:1169
 #, c-format
 msgid "terminating walsender process after promotion"
 msgstr "terminando el proceso walsender luego de la promoción"
 
-#: replication/walsender.c:1454
+#: replication/walsender.c:1552
 #, c-format
 msgid "cannot execute new commands while WAL sender is in stopping mode"
 msgstr "no puede ejecutar nuevas órdenes mientras el «WAL sender» está en modo de apagarse"
 
-#: replication/walsender.c:1487
+#: replication/walsender.c:1585
 #, c-format
 msgid "received replication command: %s"
 msgstr "se recibió orden de replicación: %s"
 
-#: replication/walsender.c:1503 tcop/fastpath.c:279 tcop/postgres.c:1103
-#: tcop/postgres.c:1426 tcop/postgres.c:1684 tcop/postgres.c:2077
-#: tcop/postgres.c:2450 tcop/postgres.c:2529
+#: replication/walsender.c:1601 tcop/fastpath.c:279 tcop/postgres.c:1103
+#: tcop/postgres.c:1455 tcop/postgres.c:1716 tcop/postgres.c:2174
+#: tcop/postgres.c:2535 tcop/postgres.c:2614
 #, c-format
 msgid "current transaction is aborted, commands ignored until end of transaction block"
 msgstr "transacción abortada, las órdenes serán ignoradas hasta el fin de bloque de transacción"
 
-#: replication/walsender.c:1571
+#: replication/walsender.c:1669
 #, c-format
 msgid "cannot execute SQL commands in WAL sender for physical replication"
 msgstr "no puede ejecutar órdenes SQL en el «WAL sender» para replicación física"
 
-#: replication/walsender.c:1619 replication/walsender.c:1635
+#: replication/walsender.c:1718 replication/walsender.c:1734
 #, c-format
 msgid "unexpected EOF on standby connection"
 msgstr "se encontró fin de archivo inesperado en la conexión standby"
 
-#: replication/walsender.c:1649
+#: replication/walsender.c:1748
 #, c-format
 msgid "unexpected standby message type \"%c\", after receiving CopyDone"
 msgstr "mensaje de standby de tipo «%c» inesperado, después de recibir CopyDone"
 
-#: replication/walsender.c:1687
+#: replication/walsender.c:1786
 #, c-format
 msgid "invalid standby message type \"%c\""
 msgstr "el tipo «%c» de mensaje del standby no es válido"
 
-#: replication/walsender.c:1728
+#: replication/walsender.c:1827
 #, c-format
 msgid "unexpected message type \"%c\""
 msgstr "mensaje de tipo «%c» inesperado"
 
-#: replication/walsender.c:2146
+#: replication/walsender.c:2245
 #, c-format
 msgid "terminating walsender process due to replication timeout"
 msgstr "terminando el proceso walsender debido a que se agotó el tiempo de espera de replicación"
 
-#: replication/walsender.c:2223
+#: replication/walsender.c:2322
 #, c-format
 msgid "\"%s\" has now caught up with upstream server"
 msgstr "«%s» ha alcanzado al servidor de origen"
 
-#: replication/walsender.c:2482
-#, c-format
-msgid "could not read from log segment %s, offset %u, length %zu: %m"
-msgstr "no se pudo leer desde el segmento %s, posición %u, largo %zu: %m"
-
 #: rewrite/rewriteDefine.c:112 rewrite/rewriteDefine.c:989
 #, c-format
 msgid "rule \"%s\" for relation \"%s\" already exists"
@@ -19139,407 +19247,295 @@ msgstr "no existe la regla «%s» para la relación «%s»"
 msgid "renaming an ON SELECT rule is not allowed"
 msgstr "no se permite cambiar el nombre de una regla ON SELECT"
 
-#: rewrite/rewriteHandler.c:544
+#: rewrite/rewriteHandler.c:545
 #, c-format
 msgid "WITH query name \"%s\" appears in both a rule action and the query being rewritten"
 msgstr "el nombre de consulta WITH «%s» aparece tanto en una acción de regla y en la consulta que está siendo reescrita"
 
-#: rewrite/rewriteHandler.c:604
+#: rewrite/rewriteHandler.c:605
 #, c-format
 msgid "cannot have RETURNING lists in multiple rules"
 msgstr "no se puede usar RETURNING en múltiples reglas"
 
-#: rewrite/rewriteHandler.c:813 rewrite/rewriteHandler.c:825
+#: rewrite/rewriteHandler.c:816 rewrite/rewriteHandler.c:828
 #, c-format
 msgid "cannot insert into column \"%s\""
 msgstr "no se puede insertar en la columna «%s»"
 
-#: rewrite/rewriteHandler.c:814 rewrite/rewriteHandler.c:836
+#: rewrite/rewriteHandler.c:817 rewrite/rewriteHandler.c:839
 #, c-format
 msgid "Column \"%s\" is an identity column defined as GENERATED ALWAYS."
 msgstr "La columna \"%s\" es una columna de identidad definida como GENERATED ALWAYS."
 
-#: rewrite/rewriteHandler.c:816
+#: rewrite/rewriteHandler.c:819
 #, c-format
 msgid "Use OVERRIDING SYSTEM VALUE to override."
 msgstr "Use OVERRIDING SYSTEM VALUE para controlar manualmente."
 
-#: rewrite/rewriteHandler.c:835 rewrite/rewriteHandler.c:842
+#: rewrite/rewriteHandler.c:838 rewrite/rewriteHandler.c:845
 #, c-format
 msgid "column \"%s\" can only be updated to DEFAULT"
 msgstr "la columna «%s» sólo puede actualizarse a DEFAULT"
 
-#: rewrite/rewriteHandler.c:1011 rewrite/rewriteHandler.c:1029
+#: rewrite/rewriteHandler.c:1014 rewrite/rewriteHandler.c:1032
 #, c-format
 msgid "multiple assignments to same column \"%s\""
 msgstr "hay múltiples asignaciones a la misma columna «%s»"
 
-#: rewrite/rewriteHandler.c:2059
+#: rewrite/rewriteHandler.c:2062
 #, c-format
 msgid "infinite recursion detected in policy for relation \"%s\""
 msgstr "se detectó recursión infinita en la política para la relación «%s»"
 
-#: rewrite/rewriteHandler.c:2379
+#: rewrite/rewriteHandler.c:2382
 msgid "Junk view columns are not updatable."
 msgstr "Las columnas «basura» de vistas no son actualizables."
 
-#: rewrite/rewriteHandler.c:2384
+#: rewrite/rewriteHandler.c:2387
 msgid "View columns that are not columns of their base relation are not updatable."
 msgstr "Las columnas de vistas que no son columnas de su relación base no son actualizables."
 
-#: rewrite/rewriteHandler.c:2387
+#: rewrite/rewriteHandler.c:2390
 msgid "View columns that refer to system columns are not updatable."
 msgstr "Las columnas de vistas que se refieren a columnas de sistema no son actualizables."
 
-#: rewrite/rewriteHandler.c:2390
+#: rewrite/rewriteHandler.c:2393
 msgid "View columns that return whole-row references are not updatable."
 msgstr "Las columnas de vistas que retornan referencias a la fila completa no son actualizables."
 
 # XXX a %s here would be nice ...
-#: rewrite/rewriteHandler.c:2451
+#: rewrite/rewriteHandler.c:2454
 msgid "Views containing DISTINCT are not automatically updatable."
 msgstr "Las vistas que contienen DISTINCT no son automáticamente actualizables."
 
-#: rewrite/rewriteHandler.c:2454
+#: rewrite/rewriteHandler.c:2457
 msgid "Views containing GROUP BY are not automatically updatable."
 msgstr "Las vistas que contienen GROUP BY no son automáticamente actualizables."
 
-#: rewrite/rewriteHandler.c:2457
+#: rewrite/rewriteHandler.c:2460
 msgid "Views containing HAVING are not automatically updatable."
 msgstr "Las vistas que contienen HAVING no son automáticamente actualizables."
 
-#: rewrite/rewriteHandler.c:2460
+#: rewrite/rewriteHandler.c:2463
 msgid "Views containing UNION, INTERSECT, or EXCEPT are not automatically updatable."
 msgstr "Las vistas que contienen UNION, INTERSECT o EXCEPT no son automáticamente actualizables."
 
-#: rewrite/rewriteHandler.c:2463
+#: rewrite/rewriteHandler.c:2466
 msgid "Views containing WITH are not automatically updatable."
 msgstr "Las vistas que contienen WITH no son automáticamente actualizables."
 
-#: rewrite/rewriteHandler.c:2466
+#: rewrite/rewriteHandler.c:2469
 msgid "Views containing LIMIT or OFFSET are not automatically updatable."
 msgstr "Las vistas que contienen LIMIT u OFFSET no son automáticamente actualizables."
 
-#: rewrite/rewriteHandler.c:2478
+#: rewrite/rewriteHandler.c:2481
 msgid "Views that return aggregate functions are not automatically updatable."
 msgstr "Las vistas que retornan funciones de agregación no son automáticamente actualizables."
 
-#: rewrite/rewriteHandler.c:2481
+#: rewrite/rewriteHandler.c:2484
 msgid "Views that return window functions are not automatically updatable."
 msgstr "Las vistas que retornan funciones ventana no son automáticamente actualizables."
 
-#: rewrite/rewriteHandler.c:2484
+#: rewrite/rewriteHandler.c:2487
 msgid "Views that return set-returning functions are not automatically updatable."
 msgstr "Las vistas que retornan funciones-que-retornan-conjuntos no son automáticamente actualizables."
 
-#: rewrite/rewriteHandler.c:2491 rewrite/rewriteHandler.c:2495
-#: rewrite/rewriteHandler.c:2503
+#: rewrite/rewriteHandler.c:2494 rewrite/rewriteHandler.c:2498
+#: rewrite/rewriteHandler.c:2506
 msgid "Views that do not select from a single table or view are not automatically updatable."
 msgstr "Las vistas que no extraen desde una única tabla o vista no son automáticamente actualizables."
 
-#: rewrite/rewriteHandler.c:2506
+#: rewrite/rewriteHandler.c:2509
 msgid "Views containing TABLESAMPLE are not automatically updatable."
 msgstr "Las vistas que contienen TABLESAMPLE no son automáticamente actualizables."
 
-#: rewrite/rewriteHandler.c:2530
+#: rewrite/rewriteHandler.c:2533
 msgid "Views that have no updatable columns are not automatically updatable."
 msgstr "Las vistas que no tienen columnas actualizables no son automáticamente actualizables."
 
-#: rewrite/rewriteHandler.c:2987
+#: rewrite/rewriteHandler.c:3010
 #, c-format
 msgid "cannot insert into column \"%s\" of view \"%s\""
 msgstr "no se puede insertar en la columna «%s» de la vista «%s»"
 
-#: rewrite/rewriteHandler.c:2995
+#: rewrite/rewriteHandler.c:3018
 #, c-format
 msgid "cannot update column \"%s\" of view \"%s\""
 msgstr "no se puede actualizar la columna «%s» vista «%s»"
 
-#: rewrite/rewriteHandler.c:3471
+#: rewrite/rewriteHandler.c:3496
 #, c-format
 msgid "DO INSTEAD NOTHING rules are not supported for data-modifying statements in WITH"
 msgstr "las reglas DO INSTEAD NOTHING no están soportadas para sentencias que modifiquen datos en WITH"
 
-#: rewrite/rewriteHandler.c:3485
+#: rewrite/rewriteHandler.c:3510
 #, c-format
 msgid "conditional DO INSTEAD rules are not supported for data-modifying statements in WITH"
 msgstr "las reglas DO INSTEAD condicionales no están soportadas para sentencias que modifiquen datos en WITH"
 
-#: rewrite/rewriteHandler.c:3489
+#: rewrite/rewriteHandler.c:3514
 #, c-format
 msgid "DO ALSO rules are not supported for data-modifying statements in WITH"
 msgstr "las reglas DO ALSO no están soportadas para sentencias que modifiquen datos en WITH"
 
-#: rewrite/rewriteHandler.c:3494
+#: rewrite/rewriteHandler.c:3519
 #, c-format
 msgid "multi-statement DO INSTEAD rules are not supported for data-modifying statements in WITH"
 msgstr "las reglas DO INSTEAD de múltiples sentencias no están soportadas para sentencias que modifiquen datos en WITH"
 
-#: rewrite/rewriteHandler.c:3744
+# XXX a %s here would be nice ...
+#: rewrite/rewriteHandler.c:3710 rewrite/rewriteHandler.c:3718
+#: rewrite/rewriteHandler.c:3726
+#, fuzzy, c-format
+#| msgid "Views containing DISTINCT are not automatically updatable."
+msgid "Views with conditional DO INSTEAD rules are not automatically updatable."
+msgstr "Las vistas que contienen DISTINCT no son automáticamente actualizables."
+
+#: rewrite/rewriteHandler.c:3819
 #, c-format
 msgid "cannot perform INSERT RETURNING on relation \"%s\""
 msgstr "no se puede hacer INSERT RETURNING a la relación «%s»"
 
-#: rewrite/rewriteHandler.c:3746
+#: rewrite/rewriteHandler.c:3821
 #, c-format
 msgid "You need an unconditional ON INSERT DO INSTEAD rule with a RETURNING clause."
 msgstr "Necesita un regla incondicional ON INSERT DO INSTEAD con una cláusula RETURNING."
 
-#: rewrite/rewriteHandler.c:3751
+#: rewrite/rewriteHandler.c:3826
 #, c-format
 msgid "cannot perform UPDATE RETURNING on relation \"%s\""
 msgstr "no se puede hacer UPDATE RETURNING a la relación «%s»"
 
-#: rewrite/rewriteHandler.c:3753
+#: rewrite/rewriteHandler.c:3828
 #, c-format
 msgid "You need an unconditional ON UPDATE DO INSTEAD rule with a RETURNING clause."
 msgstr "Necesita un regla incondicional ON UPDATE DO INSTEAD con una cláusula RETURNING."
 
-#: rewrite/rewriteHandler.c:3758
+#: rewrite/rewriteHandler.c:3833
 #, c-format
 msgid "cannot perform DELETE RETURNING on relation \"%s\""
 msgstr "no se puede hacer DELETE RETURNING a la relación «%s»"
 
-#: rewrite/rewriteHandler.c:3760
+#: rewrite/rewriteHandler.c:3835
 #, c-format
 msgid "You need an unconditional ON DELETE DO INSTEAD rule with a RETURNING clause."
 msgstr "Necesita un regla incondicional ON DELETE DO INSTEAD con una clásula RETURNING."
 
-#: rewrite/rewriteHandler.c:3778
+#: rewrite/rewriteHandler.c:3853
 #, c-format
 msgid "INSERT with ON CONFLICT clause cannot be used with table that has INSERT or UPDATE rules"
 msgstr "INSERT con una cláusula ON CONFLICT no puede usarse con una tabla que tiene reglas INSERT o UPDATE"
 
-#: rewrite/rewriteHandler.c:3835
+#: rewrite/rewriteHandler.c:3910
 #, c-format
 msgid "WITH cannot be used in a query that is rewritten by rules into multiple queries"
 msgstr "WITH no puede ser usado en una consulta que está siendo convertida en múltiples consultas a través de reglas"
 
-#: rewrite/rewriteManip.c:1003
+#: rewrite/rewriteManip.c:1006
 #, c-format
 msgid "conditional utility statements are not implemented"
 msgstr "las sentencias condicionales de utilidad no están implementadas"
 
-#: rewrite/rewriteManip.c:1169
+#: rewrite/rewriteManip.c:1172
 #, c-format
 msgid "WHERE CURRENT OF on a view is not implemented"
 msgstr "WHERE CURRENT OF no está implementado en una vista"
 
-#: rewrite/rewriteManip.c:1503
+#: rewrite/rewriteManip.c:1507
 #, c-format
 msgid "NEW variables in ON UPDATE rules cannot reference columns that are part of a multiple assignment in the subject UPDATE command"
 msgstr "las variables NEW en reglas ON UPDATE no pueden referenciar columnas que son parte de una asignación múltiple en la orden UPDATE"
 
-#: scan.l:463
-msgid "unterminated /* comment"
-msgstr "un comentario /* está inconcluso"
-
-#: scan.l:494
-msgid "unterminated bit string literal"
-msgstr "una cadena de bits está inconclusa"
-
-#: scan.l:515
-msgid "unterminated hexadecimal string literal"
-msgstr "una cadena hexadecimal está inconclusa"
-
-#: scan.l:565
-#, c-format
-msgid "unsafe use of string constant with Unicode escapes"
-msgstr "uso inseguro de literal de cadena con escapes Unicode"
-
-#: scan.l:566
-#, c-format
-msgid "String constants with Unicode escapes cannot be used when standard_conforming_strings is off."
-msgstr "Los literales de cadena con escapes Unicode no pueden usarse cuando standard_conforming_strings está desactivado."
-
-#: scan.l:612 scan.l:811
-msgid "invalid Unicode escape character"
-msgstr "carácter de escape Unicode no válido"
-
-#: scan.l:638 scan.l:646 scan.l:654 scan.l:655 scan.l:656 scan.l:1400
-#: scan.l:1427 scan.l:1431 scan.l:1469 scan.l:1473 scan.l:1495 scan.l:1505
-msgid "invalid Unicode surrogate pair"
-msgstr "par sustituto (surrogate) Unicode no válido"
-
-#: scan.l:660
-#, c-format
-msgid "invalid Unicode escape"
-msgstr "valor de escape Unicode no válido"
-
-#: scan.l:661
-#, c-format
-msgid "Unicode escapes must be \\uXXXX or \\UXXXXXXXX."
-msgstr "Los escapes Unicode deben ser \\uXXXX o \\UXXXXXXXX."
-
-#: scan.l:672
-#, c-format
-msgid "unsafe use of \\' in a string literal"
-msgstr "uso inseguro de \\' en un literal de cadena"
-
-#: scan.l:673
-#, c-format
-msgid "Use '' to write quotes in strings. \\' is insecure in client-only encodings."
-msgstr "Use '' para escribir comillas en cadenas. \\' es inseguro en codificaciones de sólo cliente."
-
-#: scan.l:748
-msgid "unterminated dollar-quoted string"
-msgstr "una cadena separada por $ está inconclusa"
-
-#: scan.l:765 scan.l:791 scan.l:806
-msgid "zero-length delimited identifier"
-msgstr "un identificador delimitado tiene largo cero"
-
-#: scan.l:826 syncrep_scanner.l:91
-msgid "unterminated quoted identifier"
-msgstr "un identificador entre comillas está inconcluso"
-
-#: scan.l:989
-msgid "operator too long"
-msgstr "el operador es demasiado largo"
-
-#. translator: %s is typically the translation of "syntax error"
-#: scan.l:1141
-#, c-format
-msgid "%s at end of input"
-msgstr "%s al final de la entrada"
-
-#. translator: first %s is typically the translation of "syntax error"
-#: scan.l:1149
-#, c-format
-msgid "%s at or near \"%s\""
-msgstr "%s en o cerca de «%s»"
-
-#: scan.l:1314 scan.l:1346
-msgid "Unicode escape values cannot be used for code point values above 007F when the server encoding is not UTF8"
-msgstr "Los valores de escape Unicode no puede ser usados para valores de «code point» sobre 007F cuando la codificación de servidor no es UTF8"
-
-#: scan.l:1342 scan.l:1487
-msgid "invalid Unicode escape value"
-msgstr "valor de escape Unicode no válido"
-
-#: scan.l:1551
-#, c-format
-msgid "nonstandard use of \\' in a string literal"
-msgstr "uso no estandar de \\' en un literal de cadena"
-
-#: scan.l:1552
-#, c-format
-msgid "Use '' to write quotes in strings, or use the escape string syntax (E'...')."
-msgstr "Use '' para escribir comillas en cadenas, o use la sintaxis de escape de cadenas (E'...')."
-
-#: scan.l:1561
-#, c-format
-msgid "nonstandard use of \\\\ in a string literal"
-msgstr "uso no estandar de \\\\ en un literal de cadena"
-
-#: scan.l:1562
-#, c-format
-msgid "Use the escape string syntax for backslashes, e.g., E'\\\\'."
-msgstr "Use '' para escribir comillas en cadenas, o use la sintaxis de escape de cadenas (E'\\\\')."
-
-#: scan.l:1576
-#, c-format
-msgid "nonstandard use of escape in a string literal"
-msgstr "uso no estandar de escape en un literal de cadena"
-
-#: scan.l:1577
-#, c-format
-msgid "Use the escape string syntax for escapes, e.g., E'\\r\\n'."
-msgstr "Use la sintaxis de escape para cadenas, por ej. E'\\r\\n'."
-
-#: snowball/dict_snowball.c:197
+#: snowball/dict_snowball.c:199
 #, c-format
 msgid "no Snowball stemmer available for language \"%s\" and encoding \"%s\""
 msgstr "no se encontró un analizador Snowball para el lenguaje «%s» y la codificación «%s»"
 
-#: snowball/dict_snowball.c:220 tsearch/dict_ispell.c:74
+#: snowball/dict_snowball.c:222 tsearch/dict_ispell.c:74
 #: tsearch/dict_simple.c:49
 #, c-format
 msgid "multiple StopWords parameters"
 msgstr "parámetro StopWords duplicado"
 
-#: snowball/dict_snowball.c:229
+#: snowball/dict_snowball.c:231
 #, c-format
 msgid "multiple Language parameters"
 msgstr "parámetro Language duplicado"
 
-#: snowball/dict_snowball.c:236
+#: snowball/dict_snowball.c:238
 #, c-format
 msgid "unrecognized Snowball parameter: \"%s\""
 msgstr "parámetro Snowball no reconocido: «%s»"
 
-#: snowball/dict_snowball.c:244
+#: snowball/dict_snowball.c:246
 #, c-format
 msgid "missing Language parameter"
 msgstr "falta un parámetro Language"
 
-#: statistics/dependencies.c:674 statistics/dependencies.c:727
-#: statistics/mcv.c:1477 statistics/mcv.c:1508 statistics/mvdistinct.c:349
-#: statistics/mvdistinct.c:402 utils/adt/pseudotypes.c:94
-#: utils/adt/pseudotypes.c:122 utils/adt/pseudotypes.c:147
-#: utils/adt/pseudotypes.c:171 utils/adt/pseudotypes.c:282
-#: utils/adt/pseudotypes.c:307 utils/adt/pseudotypes.c:335
-#: utils/adt/pseudotypes.c:363 utils/adt/pseudotypes.c:393
+#: statistics/dependencies.c:667 statistics/dependencies.c:720
+#: statistics/mcv.c:1477 statistics/mcv.c:1508 statistics/mvdistinct.c:348
+#: statistics/mvdistinct.c:401 utils/adt/pseudotypes.c:42
+#: utils/adt/pseudotypes.c:76
 #, c-format
 msgid "cannot accept a value of type %s"
 msgstr "no se puede aceptar un valor de tipo %s"
 
-#: statistics/extended_stats.c:121
+#: statistics/extended_stats.c:145
 #, c-format
 msgid "statistics object \"%s.%s\" could not be computed for relation \"%s.%s\""
 msgstr "el objeto de estadísticas «%s.%s» no pudo ser calculado para la relación «%s.%s»"
 
-#: statistics/mcv.c:1366 utils/adt/jsonfuncs.c:1708
+#: statistics/mcv.c:1365 utils/adt/jsonfuncs.c:1800
 #, c-format
 msgid "function returning record called in context that cannot accept type record"
 msgstr "se llamó una función que retorna un registro en un contexto que no puede aceptarlo"
 
-#: storage/buffer/bufmgr.c:545 storage/buffer/bufmgr.c:658
+#: storage/buffer/bufmgr.c:588 storage/buffer/bufmgr.c:669
 #, c-format
 msgid "cannot access temporary tables of other sessions"
 msgstr "no se pueden acceder tablas temporales de otras sesiones"
 
-#: storage/buffer/bufmgr.c:814
+#: storage/buffer/bufmgr.c:825
 #, c-format
 msgid "unexpected data beyond EOF in block %u of relation %s"
 msgstr "datos inesperados más allá del EOF en el bloque %u de relación %s"
 
-#: storage/buffer/bufmgr.c:816
+#: storage/buffer/bufmgr.c:827
 #, c-format
 msgid "This has been seen to occur with buggy kernels; consider updating your system."
 msgstr "Esto parece ocurrir sólo con kernels defectuosos; considere actualizar su sistema."
 
-#: storage/buffer/bufmgr.c:914
+#: storage/buffer/bufmgr.c:925
 #, c-format
 msgid "invalid page in block %u of relation %s; zeroing out page"
 msgstr "la página no es válida en el bloque %u de la relación «%s»; reinicializando la página"
 
-#: storage/buffer/bufmgr.c:4056
+#: storage/buffer/bufmgr.c:4211
 #, c-format
 msgid "could not write block %u of %s"
 msgstr "no se pudo escribir el bloque %u de %s"
 
-#: storage/buffer/bufmgr.c:4058
+#: storage/buffer/bufmgr.c:4213
 #, c-format
 msgid "Multiple failures --- write error might be permanent."
 msgstr "Múltiples fallas --- el error de escritura puede ser permanente."
 
-#: storage/buffer/bufmgr.c:4079 storage/buffer/bufmgr.c:4098
+#: storage/buffer/bufmgr.c:4234 storage/buffer/bufmgr.c:4253
 #, c-format
 msgid "writing block %u of relation %s"
 msgstr "escribiendo el bloque %u de la relación %s"
 
-#: storage/buffer/bufmgr.c:4401
+#: storage/buffer/bufmgr.c:4556
 #, c-format
 msgid "snapshot too old"
 msgstr "snapshot demasiado antiguo"
 
-#: storage/buffer/localbuf.c:199
+#: storage/buffer/localbuf.c:205
 #, c-format
 msgid "no empty local buffer available"
 msgstr "no hay ningún búfer local disponible"
 
-#: storage/buffer/localbuf.c:427
+#: storage/buffer/localbuf.c:433
 #, c-format
 msgid "cannot access temporary tables during a parallel operation"
 msgstr "no se pueden acceder tablas temporales durante una operación paralela"
@@ -19554,99 +19550,98 @@ msgstr "no se pudo abrir archivo temporal «%s» del BufFile «%s»: %m"
 msgid "could not determine size of temporary file \"%s\" from BufFile \"%s\": %m"
 msgstr "no se pudo determinar el tamaño del archivo temporal «%s» del BufFile «%s»: %m"
 
-#: storage/file/fd.c:458 storage/file/fd.c:530 storage/file/fd.c:566
+#: storage/file/fd.c:506 storage/file/fd.c:578 storage/file/fd.c:614
 #, c-format
 msgid "could not flush dirty data: %m"
 msgstr "no se pudo sincronizar (flush) datos «sucios»: %m"
 
-#: storage/file/fd.c:488
+#: storage/file/fd.c:536
 #, c-format
 msgid "could not determine dirty data size: %m"
 msgstr "no se pudo determinar el tamaño de los datos «sucios»: %m"
 
-#: storage/file/fd.c:540
+#: storage/file/fd.c:588
 #, c-format
 msgid "could not munmap() while flushing data: %m"
 msgstr "no se pudo ejecutar munmap() mientras se sincronizaban (flush) datos: %m"
 
-#: storage/file/fd.c:748
+#: storage/file/fd.c:796
 #, c-format
 msgid "could not link file \"%s\" to \"%s\": %m"
 msgstr "no se pudo enlazar (link) el archivo «%s» a «%s»: %m"
 
-#: storage/file/fd.c:842
+#: storage/file/fd.c:879
 #, c-format
 msgid "getrlimit failed: %m"
 msgstr "getrlimit falló: %m"
 
-#: storage/file/fd.c:932
+#: storage/file/fd.c:969
 #, c-format
 msgid "insufficient file descriptors available to start server process"
 msgstr "los descriptores de archivo disponibles son insuficientes para iniciar un proceso servidor"
 
-#: storage/file/fd.c:933
+#: storage/file/fd.c:970
 #, c-format
 msgid "System allows %d, we need at least %d."
 msgstr "El sistema permite %d, se requieren al menos %d."
 
-#: storage/file/fd.c:984 storage/file/fd.c:2246 storage/file/fd.c:2356
-#: storage/file/fd.c:2507
+#: storage/file/fd.c:1021 storage/file/fd.c:2355 storage/file/fd.c:2465
+#: storage/file/fd.c:2616
 #, c-format
 msgid "out of file descriptors: %m; release and retry"
 msgstr "se agotaron los descriptores de archivo: %m; libere e intente nuevamente"
 
-#: storage/file/fd.c:1284
+#: storage/file/fd.c:1395
 #, c-format
 msgid "temporary file: path \"%s\", size %lu"
 msgstr "archivo temporal: ruta «%s», tamaño %lu"
 
-#: storage/file/fd.c:1415
+#: storage/file/fd.c:1526
 #, c-format
 msgid "cannot create temporary directory \"%s\": %m"
 msgstr "no se pudo crear el directorio temporal «%s»: %m"
 
-#: storage/file/fd.c:1422
+#: storage/file/fd.c:1533
 #, c-format
 msgid "cannot create temporary subdirectory \"%s\": %m"
 msgstr "no se pudo crear el subdirectorio temporal «%s»: %m"
 
-#: storage/file/fd.c:1615
+#: storage/file/fd.c:1726
 #, c-format
 msgid "could not create temporary file \"%s\": %m"
 msgstr "no se pudo crear el archivo temporal «%s»: %m"
 
-#: storage/file/fd.c:1650
+#: storage/file/fd.c:1761
 #, c-format
 msgid "could not open temporary file \"%s\": %m"
 msgstr "no se pudo abrir el archivo temporal «%s»: %m"
 
-#: storage/file/fd.c:1691
+#: storage/file/fd.c:1802
 #, c-format
-#| msgid "cannot unlink temporary file \"%s\": %m"
 msgid "could not unlink temporary file \"%s\": %m"
 msgstr "no se pudo eliminar (unlink) el archivo temporal «%s»: %m"
 
-#: storage/file/fd.c:1955
+#: storage/file/fd.c:2066
 #, c-format
 msgid "temporary file size exceeds temp_file_limit (%dkB)"
 msgstr "el tamaño del archivo temporal excede temp_file_limit permitido (%dkB)"
 
-#: storage/file/fd.c:2222 storage/file/fd.c:2281
+#: storage/file/fd.c:2331 storage/file/fd.c:2390
 #, c-format
 msgid "exceeded maxAllocatedDescs (%d) while trying to open file \"%s\""
 msgstr "se excedió maxAllocatedDescs (%d) mientras se trataba de abrir el archivo «%s»"
 
-#: storage/file/fd.c:2326
+#: storage/file/fd.c:2435
 #, c-format
 msgid "exceeded maxAllocatedDescs (%d) while trying to execute command \"%s\""
 msgstr "se excedió maxAllocatedDescs (%d) mientras se trataba de ejecutar la orden «%s»"
 
-#: storage/file/fd.c:2483
+#: storage/file/fd.c:2592
 #, c-format
 msgid "exceeded maxAllocatedDescs (%d) while trying to open directory \"%s\""
 msgstr "se excedió maxAllocatedDescs (%d) mientras se trataba de abrir el directorio «%s»"
 
-#: storage/file/fd.c:3006
+#: storage/file/fd.c:3114
 #, c-format
 msgid "unexpected file found in temporary-files directory: \"%s\""
 msgstr "archivo inesperado en directorio de archivos temporales: «%s»"
@@ -19656,113 +19651,130 @@ msgstr "archivo inesperado en directorio de archivos temporales: «%s»"
 msgid "could not attach to a SharedFileSet that is already destroyed"
 msgstr "no se puede adjuntar a un SharedFileSet que ya está destruido"
 
-#: storage/ipc/dsm.c:343
+#: storage/ipc/dsm.c:338
 #, c-format
 msgid "dynamic shared memory control segment is corrupt"
 msgstr "el segmento de control de memoria compartida dinámica está corrupto"
 
-#: storage/ipc/dsm.c:404
+#: storage/ipc/dsm.c:399
 #, c-format
 msgid "dynamic shared memory control segment is not valid"
 msgstr "el segmento de control de memoria compartida dinámica no es válido"
 
-#: storage/ipc/dsm.c:500
+#: storage/ipc/dsm.c:494
 #, c-format
 msgid "too many dynamic shared memory segments"
 msgstr "demasiados segmentos de memoria compartida dinámica"
 
-#: storage/ipc/dsm_impl.c:230 storage/ipc/dsm_impl.c:517
-#: storage/ipc/dsm_impl.c:621 storage/ipc/dsm_impl.c:792
+#: storage/ipc/dsm_impl.c:230 storage/ipc/dsm_impl.c:526
+#: storage/ipc/dsm_impl.c:630 storage/ipc/dsm_impl.c:801
 #, c-format
 msgid "could not unmap shared memory segment \"%s\": %m"
 msgstr "no se pudo desmapear el segmento de memoria compartida «%s»: %m"
 
-#: storage/ipc/dsm_impl.c:240 storage/ipc/dsm_impl.c:527
-#: storage/ipc/dsm_impl.c:631 storage/ipc/dsm_impl.c:802
+#: storage/ipc/dsm_impl.c:240 storage/ipc/dsm_impl.c:536
+#: storage/ipc/dsm_impl.c:640 storage/ipc/dsm_impl.c:811
 #, c-format
 msgid "could not remove shared memory segment \"%s\": %m"
 msgstr "no se pudo eliminar el segmento de memoria compartida «%s»: %m"
 
-#: storage/ipc/dsm_impl.c:261 storage/ipc/dsm_impl.c:702
-#: storage/ipc/dsm_impl.c:816
+#: storage/ipc/dsm_impl.c:264 storage/ipc/dsm_impl.c:711
+#: storage/ipc/dsm_impl.c:825
 #, c-format
 msgid "could not open shared memory segment \"%s\": %m"
 msgstr "no se pudo abrir el segmento de memoria compartida «%s»: %m"
 
-#: storage/ipc/dsm_impl.c:285 storage/ipc/dsm_impl.c:543
-#: storage/ipc/dsm_impl.c:747 storage/ipc/dsm_impl.c:840
+#: storage/ipc/dsm_impl.c:289 storage/ipc/dsm_impl.c:552
+#: storage/ipc/dsm_impl.c:756 storage/ipc/dsm_impl.c:849
 #, c-format
 msgid "could not stat shared memory segment \"%s\": %m"
 msgstr "no se pudo hacer stat del segmento de memoria compartida «%s»: %m"
 
-#: storage/ipc/dsm_impl.c:311 storage/ipc/dsm_impl.c:891
+#: storage/ipc/dsm_impl.c:316 storage/ipc/dsm_impl.c:900
 #, c-format
 msgid "could not resize shared memory segment \"%s\" to %zu bytes: %m"
 msgstr "no se pudo redimensionar el segmento de memoria compartida «%s» a %zu bytes: %m"
 
-#: storage/ipc/dsm_impl.c:332 storage/ipc/dsm_impl.c:564
-#: storage/ipc/dsm_impl.c:723 storage/ipc/dsm_impl.c:913
+#: storage/ipc/dsm_impl.c:338 storage/ipc/dsm_impl.c:573
+#: storage/ipc/dsm_impl.c:732 storage/ipc/dsm_impl.c:922
 #, c-format
 msgid "could not map shared memory segment \"%s\": %m"
 msgstr "no se pudo mapear el segmento de memoria compartida «%s»: %m"
 
-#: storage/ipc/dsm_impl.c:499
+#: storage/ipc/dsm_impl.c:508
 #, c-format
 msgid "could not get shared memory segment: %m"
 msgstr "no se pudo obtener el segmento de memoria compartida: %m"
 
-#: storage/ipc/dsm_impl.c:687
+#: storage/ipc/dsm_impl.c:696
 #, c-format
 msgid "could not create shared memory segment \"%s\": %m"
 msgstr "no se pudo crear el segmento de memoria compartida «%s»: %m"
 
-#: storage/ipc/dsm_impl.c:924
+#: storage/ipc/dsm_impl.c:933
 #, c-format
 msgid "could not close shared memory segment \"%s\": %m"
 msgstr "no se pudo cerrar el segmento de memoria compartida «%s»: %m"
 
-#: storage/ipc/dsm_impl.c:963 storage/ipc/dsm_impl.c:1011
+#: storage/ipc/dsm_impl.c:972 storage/ipc/dsm_impl.c:1020
 #, c-format
 msgid "could not duplicate handle for \"%s\": %m"
 msgstr "no se pudo duplicar el «handle» para «%s»: %m"
 
 #. translator: %s is a syscall name, such as "poll()"
-#: storage/ipc/latch.c:860 storage/ipc/latch.c:1093 storage/ipc/latch.c:1219
+#: storage/ipc/latch.c:940 storage/ipc/latch.c:1094 storage/ipc/latch.c:1307
+#: storage/ipc/latch.c:1457 storage/ipc/latch.c:1570
 #, c-format
 msgid "%s failed: %m"
 msgstr "%s falló: %m"
 
-#: storage/ipc/shm_toc.c:118 storage/ipc/shm_toc.c:200 storage/lmgr/lock.c:929
-#: storage/lmgr/lock.c:967 storage/lmgr/lock.c:2754 storage/lmgr/lock.c:4084
-#: storage/lmgr/lock.c:4149 storage/lmgr/lock.c:4441
-#: storage/lmgr/predicate.c:2404 storage/lmgr/predicate.c:2419
-#: storage/lmgr/predicate.c:3918 storage/lmgr/predicate.c:5075
-#: utils/hash/dynahash.c:1065
+#: storage/ipc/procarray.c:3014
+#, fuzzy, c-format
+#| msgid "database \"%s\" is being used by logical replication subscription"
+msgid "database \"%s\" is being used by prepared transaction"
+msgstr "la base de datos «%s» está siendo utilizada por suscripciones de replicación lógica"
+
+#: storage/ipc/procarray.c:3046 storage/ipc/signalfuncs.c:142
+#, c-format
+msgid "must be a superuser to terminate superuser process"
+msgstr "debe ser superusuario para terminar proceso de superusuario"
+
+#: storage/ipc/procarray.c:3053 storage/ipc/signalfuncs.c:147
+#, c-format
+msgid "must be a member of the role whose process is being terminated or member of pg_signal_backend"
+msgstr "debe ser miembro del rol cuyo proceso se está terminando o ser miembro de pg_signal_backend"
+
+#: storage/ipc/shm_toc.c:118 storage/ipc/shm_toc.c:200 storage/lmgr/lock.c:982
+#: storage/lmgr/lock.c:1020 storage/lmgr/lock.c:2845 storage/lmgr/lock.c:4175
+#: storage/lmgr/lock.c:4240 storage/lmgr/lock.c:4532
+#: storage/lmgr/predicate.c:2401 storage/lmgr/predicate.c:2416
+#: storage/lmgr/predicate.c:3898 storage/lmgr/predicate.c:5006
+#: utils/hash/dynahash.c:1067
 #, c-format
 msgid "out of shared memory"
 msgstr "memoria compartida agotada"
 
-#: storage/ipc/shmem.c:165 storage/ipc/shmem.c:246
+#: storage/ipc/shmem.c:170 storage/ipc/shmem.c:266
 #, c-format
 msgid "out of shared memory (%zu bytes requested)"
 msgstr "memoria compartida agotada (%zu bytes solicitados)"
 
-#: storage/ipc/shmem.c:421
+#: storage/ipc/shmem.c:441
 #, c-format
 msgid "could not create ShmemIndex entry for data structure \"%s\""
 msgstr "no se pudo crear la entrada en ShmemIndex para la estructura «%s»"
 
-#: storage/ipc/shmem.c:436
+#: storage/ipc/shmem.c:456
 #, c-format
 msgid "ShmemIndex entry size is wrong for data structure \"%s\": expected %zu, actual %zu"
 msgstr "el tamaño de la entrada ShmemIndex es incorrecto para la estructura «%s»: se esperaba %zu, real %zu"
 
-#: storage/ipc/shmem.c:453
+#: storage/ipc/shmem.c:475
 #, c-format
 msgid "not enough shared memory for data structure \"%s\" (%zu bytes requested)"
 msgstr "el espacio de memoria compartida es insuficiente para la estructura «%s» (%zu bytes solicitados)"
 
-#: storage/ipc/shmem.c:484 storage/ipc/shmem.c:503
+#: storage/ipc/shmem.c:507 storage/ipc/shmem.c:526
 #, c-format
 msgid "requested shared memory size overflows size_t"
 msgstr "la petición de tamaño de memoria compartida desborda size_t"
@@ -19772,7 +19784,7 @@ msgstr "la petición de tamaño de memoria compartida desborda size_t"
 msgid "PID %d is not a PostgreSQL server process"
 msgstr "PID %d no es un proceso servidor de PostgreSQL"
 
-#: storage/ipc/signalfuncs.c:98 storage/lmgr/proc.c:1363
+#: storage/ipc/signalfuncs.c:98 storage/lmgr/proc.c:1366
 #, c-format
 msgid "could not send signal to process %d: %m"
 msgstr "no se pudo enviar la señal al proceso %d: %m"
@@ -19787,23 +19799,13 @@ msgstr "debe ser superusuario para cancelar una consulta de superusuario"
 msgid "must be a member of the role whose query is being canceled or member of pg_signal_backend"
 msgstr "debe ser miembro del rol cuya consulta se está cancelando o ser miembro de pg_signal_backend"
 
-#: storage/ipc/signalfuncs.c:142
-#, c-format
-msgid "must be a superuser to terminate superuser process"
-msgstr "debe ser superusuario para terminar proceso de superusuario"
-
-#: storage/ipc/signalfuncs.c:147
-#, c-format
-msgid "must be a member of the role whose process is being terminated or member of pg_signal_backend"
-msgstr "debe ser miembro del rol cuyo proceso se está terminando o ser miembro de pg_signal_backend"
-
 #: storage/ipc/signalfuncs.c:183
 #, c-format
 msgid "must be superuser to rotate log files with adminpack 1.0"
 msgstr "bebe ser superusuario para rotar archivos de log con adminpack 1.0"
 
 #. translator: %s is a SQL function name
-#: storage/ipc/signalfuncs.c:185 utils/adt/genfile.c:223
+#: storage/ipc/signalfuncs.c:185 utils/adt/genfile.c:217
 #, c-format
 msgid "Consider using %s, which is part of core, instead."
 msgstr "Considere usar %s, que es parte del servidor, en su lugar."
@@ -19813,52 +19815,52 @@ msgstr "Considere usar %s, que es parte del servidor, en su lugar."
 msgid "rotation not possible because log collection not active"
 msgstr "la rotación no es posible porque la recoleccion de log no está activa"
 
-#: storage/ipc/standby.c:558 tcop/postgres.c:3110
+#: storage/ipc/standby.c:580 tcop/postgres.c:3177
 #, c-format
 msgid "canceling statement due to conflict with recovery"
 msgstr "cancelando la sentencia debido a un conflicto con la recuperación"
 
-#: storage/ipc/standby.c:559 tcop/postgres.c:2384
+#: storage/ipc/standby.c:581 tcop/postgres.c:2469
 #, c-format
 msgid "User transaction caused buffer deadlock with recovery."
 msgstr "La transacción del usuario causó un «deadlock» con la recuperación."
 
-#: storage/large_object/inv_api.c:189
+#: storage/large_object/inv_api.c:191
 #, c-format
 msgid "pg_largeobject entry for OID %u, page %d has invalid data field size %d"
 msgstr "la entrada pg_largeobject para el OID %u, página %d tiene tamaño de campo %d no válido"
 
-#: storage/large_object/inv_api.c:270
+#: storage/large_object/inv_api.c:272
 #, c-format
 msgid "invalid flags for opening a large object: %d"
 msgstr "opciones no válidas para abrir un objeto grande: %d"
 
-#: storage/large_object/inv_api.c:460
+#: storage/large_object/inv_api.c:462
 #, c-format
 msgid "invalid whence setting: %d"
 msgstr "parámetro «whence» no válido: %d"
 
-#: storage/large_object/inv_api.c:632
+#: storage/large_object/inv_api.c:634
 #, c-format
 msgid "invalid large object write request size: %d"
 msgstr "tamaño de petición de escritura de objeto grande no válido: %d"
 
-#: storage/lmgr/deadlock.c:1115
+#: storage/lmgr/deadlock.c:1124
 #, c-format
 msgid "Process %d waits for %s on %s; blocked by process %d."
 msgstr "El proceso %d espera %s en %s; bloqueado por proceso %d."
 
-#: storage/lmgr/deadlock.c:1134
+#: storage/lmgr/deadlock.c:1143
 #, c-format
 msgid "Process %d: %s"
 msgstr "Proceso %d: %s"
 
-#: storage/lmgr/deadlock.c:1143
+#: storage/lmgr/deadlock.c:1152
 #, c-format
 msgid "deadlock detected"
 msgstr "se ha detectado un deadlock"
 
-#: storage/lmgr/deadlock.c:1146
+#: storage/lmgr/deadlock.c:1155
 #, c-format
 msgid "See server log for query details."
 msgstr "Vea el registro del servidor para obtener detalles de las consultas."
@@ -19903,292 +19905,292 @@ msgstr "mientras se verificaba la tupla actualizada (%u,%u) en la relación «%s
 msgid "while checking exclusion constraint on tuple (%u,%u) in relation \"%s\""
 msgstr "mientras se verificaba una restricción de exclusión en la tupla (%u,%u) en la relación «%s»"
 
-#: storage/lmgr/lmgr.c:1093
+#: storage/lmgr/lmgr.c:1091
 #, c-format
 msgid "relation %u of database %u"
 msgstr "relación %u de la base de datos %u"
 
-#: storage/lmgr/lmgr.c:1099
+#: storage/lmgr/lmgr.c:1097
 #, c-format
 msgid "extension of relation %u of database %u"
 msgstr "extensión de la relación %u de la base de datos %u"
 
-#: storage/lmgr/lmgr.c:1105
+#: storage/lmgr/lmgr.c:1103
 #, c-format
 msgid "page %u of relation %u of database %u"
 msgstr "página %u de la relación %u de la base de datos %u"
 
-#: storage/lmgr/lmgr.c:1112
+#: storage/lmgr/lmgr.c:1110
 #, c-format
 msgid "tuple (%u,%u) of relation %u of database %u"
 msgstr "tupla (%u,%u) de la relación %u de la base de datos %u"
 
-#: storage/lmgr/lmgr.c:1120
+#: storage/lmgr/lmgr.c:1118
 #, c-format
 msgid "transaction %u"
 msgstr "transacción %u"
 
-#: storage/lmgr/lmgr.c:1125
+#: storage/lmgr/lmgr.c:1123
 #, c-format
 msgid "virtual transaction %d/%u"
 msgstr "transacción virtual %d/%u"
 
-#: storage/lmgr/lmgr.c:1131
+#: storage/lmgr/lmgr.c:1129
 #, c-format
 msgid "speculative token %u of transaction %u"
 msgstr "token especulativo %u de la transacción %u"
 
-#: storage/lmgr/lmgr.c:1137
+#: storage/lmgr/lmgr.c:1135
 #, c-format
 msgid "object %u of class %u of database %u"
 msgstr "objeto %u de clase %u de la base de datos %u"
 
-#: storage/lmgr/lmgr.c:1145
+#: storage/lmgr/lmgr.c:1143
 #, c-format
 msgid "user lock [%u,%u,%u]"
 msgstr "candado de usuario [%u,%u,%u]"
 
 # XXX is this a good translation?
-#: storage/lmgr/lmgr.c:1152
+#: storage/lmgr/lmgr.c:1150
 #, c-format
 msgid "advisory lock [%u,%u,%u,%u]"
 msgstr "candado consultivo [%u,%u,%u,%u]"
 
-#: storage/lmgr/lmgr.c:1160
+#: storage/lmgr/lmgr.c:1158
 #, c-format
 msgid "unrecognized locktag type %d"
 msgstr "tipo de locktag %d no reconocido"
 
-#: storage/lmgr/lock.c:764
+#: storage/lmgr/lock.c:803
 #, c-format
 msgid "cannot acquire lock mode %s on database objects while recovery is in progress"
 msgstr "no se puede adquirir candado en modo %s en objetos de la base de datos mientras la recuperación está en proceso"
 
-#: storage/lmgr/lock.c:766
+#: storage/lmgr/lock.c:805
 #, c-format
 msgid "Only RowExclusiveLock or less can be acquired on database objects during recovery."
 msgstr "Sólo candados RowExclusiveLock o menor pueden ser adquiridos en objetos de la base de datos durante la recuperación."
 
-#: storage/lmgr/lock.c:930 storage/lmgr/lock.c:968 storage/lmgr/lock.c:2755
-#: storage/lmgr/lock.c:4085 storage/lmgr/lock.c:4150 storage/lmgr/lock.c:4442
+#: storage/lmgr/lock.c:983 storage/lmgr/lock.c:1021 storage/lmgr/lock.c:2846
+#: storage/lmgr/lock.c:4176 storage/lmgr/lock.c:4241 storage/lmgr/lock.c:4533
 #, c-format
 msgid "You might need to increase max_locks_per_transaction."
 msgstr "Puede ser necesario incrementar max_locks_per_transaction."
 
-#: storage/lmgr/lock.c:3201 storage/lmgr/lock.c:3317
+#: storage/lmgr/lock.c:3292 storage/lmgr/lock.c:3408
 #, c-format
 msgid "cannot PREPARE while holding both session-level and transaction-level locks on the same object"
 msgstr "no se puede hacer PREPARE mientras se mantienen candados a nivel de sesión y transacción simultáneamente sobre el mismo objeto"
 
-#: storage/lmgr/predicate.c:703
+#: storage/lmgr/predicate.c:700
 #, c-format
 msgid "not enough elements in RWConflictPool to record a read/write conflict"
 msgstr "no hay suficientes elementos en RWConflictPool para registrar un conflicto read/write"
 
-#: storage/lmgr/predicate.c:704 storage/lmgr/predicate.c:732
+#: storage/lmgr/predicate.c:701 storage/lmgr/predicate.c:729
 #, c-format
 msgid "You might need to run fewer transactions at a time or increase max_connections."
 msgstr "Puede ser necesario ejecutar menos transacciones al mismo tiempo, o incrementar max_connections."
 
-#: storage/lmgr/predicate.c:731
+#: storage/lmgr/predicate.c:728
 #, c-format
 msgid "not enough elements in RWConflictPool to record a potential read/write conflict"
 msgstr "no hay suficientes elementos en RWConflictPool para registrar un potencial conflicto read/write"
 
-#: storage/lmgr/predicate.c:1538
+#: storage/lmgr/predicate.c:1535
 #, c-format
 msgid "deferrable snapshot was unsafe; trying a new one"
 msgstr "la instantánea postergada era insegura; intentando con una nueva"
 
-#: storage/lmgr/predicate.c:1627
+#: storage/lmgr/predicate.c:1624
 #, c-format
 msgid "\"default_transaction_isolation\" is set to \"serializable\"."
 msgstr "«default_transaction_isolation» está definido a «serializable»."
 
-#: storage/lmgr/predicate.c:1628
+#: storage/lmgr/predicate.c:1625
 #, c-format
 msgid "You can use \"SET default_transaction_isolation = 'repeatable read'\" to change the default."
 msgstr "Puede usar «SET default_transaction_isolation = 'repeatable read'» para cambiar el valor por omisión."
 
-#: storage/lmgr/predicate.c:1679
+#: storage/lmgr/predicate.c:1676
 #, c-format
 msgid "a snapshot-importing transaction must not be READ ONLY DEFERRABLE"
 msgstr "una transacción que importa un snapshot no debe ser READ ONLY DEFERRABLE"
 
-#: storage/lmgr/predicate.c:1758 utils/time/snapmgr.c:623
+#: storage/lmgr/predicate.c:1755 utils/time/snapmgr.c:623
 #: utils/time/snapmgr.c:629
 #, c-format
 msgid "could not import the requested snapshot"
 msgstr "no se pudo importar el snapshot solicitado"
 
-#: storage/lmgr/predicate.c:1759 utils/time/snapmgr.c:630
+#: storage/lmgr/predicate.c:1756 utils/time/snapmgr.c:630
 #, c-format
 msgid "The source process with PID %d is not running anymore."
 msgstr "El proceso de origen con PID %d ya no está en ejecución."
 
-#: storage/lmgr/predicate.c:2405 storage/lmgr/predicate.c:2420
-#: storage/lmgr/predicate.c:3919
+#: storage/lmgr/predicate.c:2402 storage/lmgr/predicate.c:2417
+#: storage/lmgr/predicate.c:3899
 #, c-format
 msgid "You might need to increase max_pred_locks_per_transaction."
 msgstr "Puede ser necesario incrementar max_pred_locks_per_transaction."
 
-#: storage/lmgr/predicate.c:4075 storage/lmgr/predicate.c:4164
-#: storage/lmgr/predicate.c:4172 storage/lmgr/predicate.c:4211
-#: storage/lmgr/predicate.c:4454 storage/lmgr/predicate.c:4791
-#: storage/lmgr/predicate.c:4803 storage/lmgr/predicate.c:4846
-#: storage/lmgr/predicate.c:4884
+#: storage/lmgr/predicate.c:4030 storage/lmgr/predicate.c:4063
+#: storage/lmgr/predicate.c:4096 storage/lmgr/predicate.c:4104
+#: storage/lmgr/predicate.c:4143 storage/lmgr/predicate.c:4385
+#: storage/lmgr/predicate.c:4722 storage/lmgr/predicate.c:4734
+#: storage/lmgr/predicate.c:4777 storage/lmgr/predicate.c:4815
 #, c-format
 msgid "could not serialize access due to read/write dependencies among transactions"
 msgstr "no se pudo serializar el acceso debido a dependencias read/write entre transacciones"
 
-#: storage/lmgr/predicate.c:4077 storage/lmgr/predicate.c:4166
-#: storage/lmgr/predicate.c:4174 storage/lmgr/predicate.c:4213
-#: storage/lmgr/predicate.c:4456 storage/lmgr/predicate.c:4793
-#: storage/lmgr/predicate.c:4805 storage/lmgr/predicate.c:4848
-#: storage/lmgr/predicate.c:4886
+#: storage/lmgr/predicate.c:4032 storage/lmgr/predicate.c:4065
+#: storage/lmgr/predicate.c:4098 storage/lmgr/predicate.c:4106
+#: storage/lmgr/predicate.c:4145 storage/lmgr/predicate.c:4387
+#: storage/lmgr/predicate.c:4724 storage/lmgr/predicate.c:4736
+#: storage/lmgr/predicate.c:4779 storage/lmgr/predicate.c:4817
 #, c-format
 msgid "The transaction might succeed if retried."
 msgstr "La transacción podría tener éxito si es reintentada."
 
-#: storage/lmgr/proc.c:359
+#: storage/lmgr/proc.c:358
 #, c-format
 msgid "number of requested standby connections exceeds max_wal_senders (currently %d)"
 msgstr "la cantidad de conexiones standby pedidas excede max_wal_senders (actualmente %d)"
 
-#: storage/lmgr/proc.c:1334
+#: storage/lmgr/proc.c:1337
 #, c-format
 msgid "Process %d waits for %s on %s."
 msgstr "El proceso %d espera %s en %s."
 
-#: storage/lmgr/proc.c:1345
+#: storage/lmgr/proc.c:1348
 #, c-format
 msgid "sending cancel to blocking autovacuum PID %d"
 msgstr "enviando señal de cancelación a la tarea autovacuum bloqueante con PID %d"
 
-#: storage/lmgr/proc.c:1465
+#: storage/lmgr/proc.c:1468
 #, c-format
 msgid "process %d avoided deadlock for %s on %s by rearranging queue order after %ld.%03d ms"
 msgstr "el proceso %d evitó un deadlock para %s en %s reordenando la cola después de %ld.%03d ms"
 
-#: storage/lmgr/proc.c:1480
+#: storage/lmgr/proc.c:1483
 #, c-format
 msgid "process %d detected deadlock while waiting for %s on %s after %ld.%03d ms"
 msgstr "el proceso %d detectó un deadlock mientras esperaba %s en %s después de %ld.%03d ms"
 
-#: storage/lmgr/proc.c:1489
+#: storage/lmgr/proc.c:1492
 #, c-format
 msgid "process %d still waiting for %s on %s after %ld.%03d ms"
 msgstr "el proceso %d aún espera %s en %s después de %ld.%03d ms"
 
-#: storage/lmgr/proc.c:1496
+#: storage/lmgr/proc.c:1499
 #, c-format
 msgid "process %d acquired %s on %s after %ld.%03d ms"
 msgstr "el proceso %d adquirió %s en %s después de %ld.%03d ms"
 
-#: storage/lmgr/proc.c:1512
+#: storage/lmgr/proc.c:1515
 #, c-format
 msgid "process %d failed to acquire %s on %s after %ld.%03d ms"
 msgstr "el proceso %d no pudo adquirir %s en %s después de %ld.%03d ms"
 
-#: storage/page/bufpage.c:152
+#: storage/page/bufpage.c:145
 #, c-format
 msgid "page verification failed, calculated checksum %u but expected %u"
 msgstr "la suma de verificación falló, se calculó %u pero se esperaba %u"
 
-#: storage/page/bufpage.c:216 storage/page/bufpage.c:510
-#: storage/page/bufpage.c:747 storage/page/bufpage.c:880
-#: storage/page/bufpage.c:976 storage/page/bufpage.c:1086
+#: storage/page/bufpage.c:209 storage/page/bufpage.c:503
+#: storage/page/bufpage.c:740 storage/page/bufpage.c:873
+#: storage/page/bufpage.c:969 storage/page/bufpage.c:1081
 #, c-format
 msgid "corrupted page pointers: lower = %u, upper = %u, special = %u"
 msgstr "los punteros de página están corruptos: inferior = %u, superior = %u, especial = %u"
 
-#: storage/page/bufpage.c:532
+#: storage/page/bufpage.c:525
 #, c-format
 msgid "corrupted line pointer: %u"
 msgstr "puntero de ítem corrupto: %u"
 
-#: storage/page/bufpage.c:559 storage/page/bufpage.c:931
+#: storage/page/bufpage.c:552 storage/page/bufpage.c:924
 #, c-format
 msgid "corrupted item lengths: total %u, available space %u"
 msgstr "los largos de ítem están corruptos: total %u, espacio disponible %u"
 
-#: storage/page/bufpage.c:766 storage/page/bufpage.c:904
-#: storage/page/bufpage.c:992 storage/page/bufpage.c:1102
+#: storage/page/bufpage.c:759 storage/page/bufpage.c:897
+#: storage/page/bufpage.c:985 storage/page/bufpage.c:1097
 #, c-format
 msgid "corrupted line pointer: offset = %u, size = %u"
 msgstr "puntero de ítem corrupto: desplazamiento = %u, tamaño = %u"
 
-#: storage/smgr/md.c:320 storage/smgr/md.c:815
+#: storage/smgr/md.c:333 storage/smgr/md.c:836
 #, c-format
 msgid "could not truncate file \"%s\": %m"
 msgstr "no se pudo truncar el archivo «%s»: %m"
 
-#: storage/smgr/md.c:394
+#: storage/smgr/md.c:407
 #, c-format
 msgid "cannot extend file \"%s\" beyond %u blocks"
 msgstr "no se pudo extender el archivo «%s» más allá de %u bloques"
 
-#: storage/smgr/md.c:409
+#: storage/smgr/md.c:422
 #, c-format
 msgid "could not extend file \"%s\": %m"
 msgstr "no se pudo extender el archivo «%s»: %m"
 
-#: storage/smgr/md.c:411 storage/smgr/md.c:418 storage/smgr/md.c:698
+#: storage/smgr/md.c:424 storage/smgr/md.c:431 storage/smgr/md.c:719
 #, c-format
 msgid "Check free disk space."
 msgstr "Verifique el espacio libre en disco."
 
-#: storage/smgr/md.c:415
+#: storage/smgr/md.c:428
 #, c-format
 msgid "could not extend file \"%s\": wrote only %d of %d bytes at block %u"
 msgstr "no se pudo extender el archivo «%s»: sólo se escribieron %d de %d bytes en el bloque %u"
 
-#: storage/smgr/md.c:619
+#: storage/smgr/md.c:640
 #, c-format
 msgid "could not read block %u in file \"%s\": %m"
 msgstr "no se pudo leer el bloque %u del archivo «%s»: %m"
 
-#: storage/smgr/md.c:635
+#: storage/smgr/md.c:656
 #, c-format
 msgid "could not read block %u in file \"%s\": read only %d of %d bytes"
 msgstr "no se pudo leer el bloque %u del archivo «%s»: se leyeron sólo %d de %d bytes"
 
-#: storage/smgr/md.c:689
+#: storage/smgr/md.c:710
 #, c-format
 msgid "could not write block %u in file \"%s\": %m"
 msgstr "no se pudo escribir el bloque %u en el archivo «%s»: %m"
 
-#: storage/smgr/md.c:694
+#: storage/smgr/md.c:715
 #, c-format
 msgid "could not write block %u in file \"%s\": wrote only %d of %d bytes"
 msgstr "no se pudo escribir el bloque %u en el archivo «%s»: se escribieron sólo %d de %d bytes"
 
-#: storage/smgr/md.c:786
+#: storage/smgr/md.c:807
 #, c-format
 msgid "could not truncate file \"%s\" to %u blocks: it's only %u blocks now"
 msgstr "no se pudo truncar el archivo «%s» a %u bloques: es de sólo %u bloques ahora"
 
-#: storage/smgr/md.c:841
+#: storage/smgr/md.c:862
 #, c-format
 msgid "could not truncate file \"%s\" to %u blocks: %m"
 msgstr "no se pudo truncar el archivo «%s» a %u bloques: %m"
 
-#: storage/smgr/md.c:913
+#: storage/smgr/md.c:957
 #, c-format
 msgid "could not forward fsync request because request queue is full"
 msgstr "no se pudo enviar una petición fsync porque la cola de peticiones está llena"
 
-#: storage/smgr/md.c:1210
+#: storage/smgr/md.c:1256
 #, c-format
 msgid "could not open file \"%s\" (target block %u): previous segment is only %u blocks"
 msgstr "no se pudo abrir el archivo «%s» (bloque buscado %u): el segmento previo sólo tiene %u bloques"
 
-#: storage/smgr/md.c:1224
+#: storage/smgr/md.c:1270
 #, c-format
 msgid "could not open file \"%s\" (target block %u): %m"
 msgstr "no se pudo abrir el archivo «%s» (bloque buscado %u): %m"
 
-#: storage/sync/sync.c:400
+#: storage/sync/sync.c:401
 #, c-format
 msgid "could not fsync file \"%s\" but retrying: %m"
 msgstr "no se pudo sincronizar (fsync) archivo «%s» pero reintentando: %m"
@@ -20203,8 +20205,8 @@ msgstr "el tamaño de argumento %d no es válido en el mensaje de llamada a func
 msgid "fastpath function call: \"%s\" (OID %u)"
 msgstr "llamada a función fastpath: «%s» (OID %u)"
 
-#: tcop/fastpath.c:389 tcop/postgres.c:1288 tcop/postgres.c:1551
-#: tcop/postgres.c:1918 tcop/postgres.c:2139
+#: tcop/fastpath.c:389 tcop/postgres.c:1323 tcop/postgres.c:1581
+#: tcop/postgres.c:2013 tcop/postgres.c:2250
 #, c-format
 msgid "duration: %s ms"
 msgstr "duración: %s ms"
@@ -20229,330 +20231,330 @@ msgstr "el mensaje de llamada a función contiene %d formatos de argumento pero
 msgid "incorrect binary data format in function argument %d"
 msgstr "el formato de datos binarios es incorrecto en argumento %d a función"
 
-#: tcop/postgres.c:359 tcop/postgres.c:395 tcop/postgres.c:422
+#: tcop/postgres.c:355 tcop/postgres.c:391 tcop/postgres.c:418
 #, c-format
 msgid "unexpected EOF on client connection"
 msgstr "se encontró fin de archivo inesperado en la conexión del cliente"
 
-#: tcop/postgres.c:445 tcop/postgres.c:457 tcop/postgres.c:468
-#: tcop/postgres.c:480 tcop/postgres.c:4460
+#: tcop/postgres.c:441 tcop/postgres.c:453 tcop/postgres.c:464
+#: tcop/postgres.c:476 tcop/postgres.c:4539
 #, c-format
 msgid "invalid frontend message type %d"
 msgstr "el tipo de mensaje de frontend %d no es válido"
 
-#: tcop/postgres.c:1043
+#: tcop/postgres.c:1042
 #, c-format
 msgid "statement: %s"
 msgstr "sentencia: %s"
 
-#: tcop/postgres.c:1293
+#: tcop/postgres.c:1328
 #, c-format
 msgid "duration: %s ms  statement: %s"
 msgstr "duración: %s ms  sentencia: %s"
 
-#: tcop/postgres.c:1343
+#: tcop/postgres.c:1377
 #, c-format
 msgid "parse %s: %s"
 msgstr "parse %s: %s"
 
-#: tcop/postgres.c:1400
+#: tcop/postgres.c:1434
 #, c-format
 msgid "cannot insert multiple commands into a prepared statement"
 msgstr "no se pueden insertar múltiples órdenes en una sentencia preparada"
 
-#: tcop/postgres.c:1556
+#: tcop/postgres.c:1586
 #, c-format
 msgid "duration: %s ms  parse %s: %s"
 msgstr "duración: %s ms  parse: %s: %s"
 
-#: tcop/postgres.c:1601
+#: tcop/postgres.c:1633
 #, c-format
 msgid "bind %s to %s"
 msgstr "bind %s a %s"
 
-#: tcop/postgres.c:1620 tcop/postgres.c:2431
+#: tcop/postgres.c:1652 tcop/postgres.c:2516
 #, c-format
 msgid "unnamed prepared statement does not exist"
 msgstr "no existe una sentencia preparada sin nombre"
 
-#: tcop/postgres.c:1661
+#: tcop/postgres.c:1693
 #, c-format
 msgid "bind message has %d parameter formats but %d parameters"
 msgstr "el mensaje de enlace (bind) tiene %d formatos de parámetro pero %d parámetros"
 
-#: tcop/postgres.c:1667
+#: tcop/postgres.c:1699
 #, c-format
 msgid "bind message supplies %d parameters, but prepared statement \"%s\" requires %d"
 msgstr "el mensaje de enlace (bind) entrega %d parámetros, pero la sentencia preparada «%s» requiere %d"
 
-#: tcop/postgres.c:1827
+#: tcop/postgres.c:1897
 #, c-format
 msgid "incorrect binary data format in bind parameter %d"
 msgstr "el formato de datos binarios es incorrecto en el parámetro de enlace %d"
 
-#: tcop/postgres.c:1923
+#: tcop/postgres.c:2018
 #, c-format
 msgid "duration: %s ms  bind %s%s%s: %s"
 msgstr "duración: %s ms  bind %s%s%s: %s"
 
-#: tcop/postgres.c:1971 tcop/postgres.c:2515
+#: tcop/postgres.c:2068 tcop/postgres.c:2600
 #, c-format
 msgid "portal \"%s\" does not exist"
 msgstr "no existe el portal «%s»"
 
-#: tcop/postgres.c:2056
+#: tcop/postgres.c:2153
 #, c-format
 msgid "%s %s%s%s: %s"
 msgstr "%s %s%s%s: %s"
 
-#: tcop/postgres.c:2058 tcop/postgres.c:2147
+#: tcop/postgres.c:2155 tcop/postgres.c:2258
 msgid "execute fetch from"
 msgstr "ejecutar fetch desde"
 
-#: tcop/postgres.c:2059 tcop/postgres.c:2148
+#: tcop/postgres.c:2156 tcop/postgres.c:2259
 msgid "execute"
 msgstr "ejecutar"
 
-#: tcop/postgres.c:2144
+#: tcop/postgres.c:2255
 #, c-format
 msgid "duration: %s ms  %s %s%s%s: %s"
 msgstr "duración: %s ms  %s %s%s%s: %s"
 
-#: tcop/postgres.c:2272
+#: tcop/postgres.c:2401
 #, c-format
 msgid "prepare: %s"
 msgstr "prepare: %s"
 
-#: tcop/postgres.c:2337
+#: tcop/postgres.c:2426
 #, c-format
 msgid "parameters: %s"
 msgstr "parámetros: %s"
 
-#: tcop/postgres.c:2356
+#: tcop/postgres.c:2441
 #, c-format
 msgid "abort reason: recovery conflict"
 msgstr "razón para abortar: conflicto en la recuperación"
 
-#: tcop/postgres.c:2372
+#: tcop/postgres.c:2457
 #, c-format
 msgid "User was holding shared buffer pin for too long."
 msgstr "El usuario mantuvo el búfer compartido «clavado» por demasiado tiempo."
 
-#: tcop/postgres.c:2375
+#: tcop/postgres.c:2460
 #, c-format
 msgid "User was holding a relation lock for too long."
 msgstr "El usuario mantuvo una relación bloqueada por demasiado tiempo."
 
-#: tcop/postgres.c:2378
+#: tcop/postgres.c:2463
 #, c-format
 msgid "User was or might have been using tablespace that must be dropped."
 msgstr "El usuario estaba o pudo haber estado usando un tablespace que debía ser eliminado."
 
-#: tcop/postgres.c:2381
+#: tcop/postgres.c:2466
 #, c-format
 msgid "User query might have needed to see row versions that must be removed."
 msgstr "La consulta del usuario pudo haber necesitado examinar versiones de tuplas que debían eliminarse."
 
-#: tcop/postgres.c:2387
+#: tcop/postgres.c:2472
 #, c-format
 msgid "User was connected to a database that must be dropped."
 msgstr "El usuario estaba conectado a una base de datos que debía ser eliminada."
 
-#: tcop/postgres.c:2711
+#: tcop/postgres.c:2796
 #, c-format
 msgid "terminating connection because of crash of another server process"
 msgstr "terminando la conexión debido a una falla en otro proceso servidor"
 
-#: tcop/postgres.c:2712
+#: tcop/postgres.c:2797
 #, c-format
 msgid "The postmaster has commanded this server process to roll back the current transaction and exit, because another server process exited abnormally and possibly corrupted shared memory."
 msgstr "Postmaster ha ordenado que este proceso servidor cancele la transacción en curso y finalice la conexión, porque otro proceso servidor ha terminado anormalmente y podría haber corrompido la memoria compartida."
 
-#: tcop/postgres.c:2716 tcop/postgres.c:3040
+#: tcop/postgres.c:2801 tcop/postgres.c:3107
 #, c-format
 msgid "In a moment you should be able to reconnect to the database and repeat your command."
 msgstr "Dentro de un momento debería poder reconectarse y repetir la consulta."
 
-#: tcop/postgres.c:2798
+#: tcop/postgres.c:2883
 #, c-format
 msgid "floating-point exception"
 msgstr "excepción de coma flotante"
 
-#: tcop/postgres.c:2799
+#: tcop/postgres.c:2884
 #, c-format
 msgid "An invalid floating-point operation was signaled. This probably means an out-of-range result or an invalid operation, such as division by zero."
 msgstr "Se ha recibido una señal de una operación de coma flotante no válida.  Esto puede significar un resultado fuera de rango o una operación no válida, como una división por cero."
 
-#: tcop/postgres.c:2970
+#: tcop/postgres.c:3037
 #, c-format
 msgid "canceling authentication due to timeout"
 msgstr "cancelando la autentificación debido a que se agotó el tiempo de espera"
 
-#: tcop/postgres.c:2974
+#: tcop/postgres.c:3041
 #, c-format
 msgid "terminating autovacuum process due to administrator command"
 msgstr "terminando el proceso autovacuum debido a una orden del administrador"
 
-#: tcop/postgres.c:2978
+#: tcop/postgres.c:3045
 #, c-format
 msgid "terminating logical replication worker due to administrator command"
 msgstr "terminando el proceso de replicación lógica debido a una orden del administrador"
 
-#: tcop/postgres.c:2982
+#: tcop/postgres.c:3049
 #, c-format
 msgid "logical replication launcher shutting down"
 msgstr "lanzador de replicación lógica apagándose"
 
-#: tcop/postgres.c:2995 tcop/postgres.c:3005 tcop/postgres.c:3038
+#: tcop/postgres.c:3062 tcop/postgres.c:3072 tcop/postgres.c:3105
 #, c-format
 msgid "terminating connection due to conflict with recovery"
 msgstr "terminando la conexión debido a un conflicto con la recuperación"
 
-#: tcop/postgres.c:3011
+#: tcop/postgres.c:3078
 #, c-format
 msgid "terminating connection due to administrator command"
 msgstr "terminando la conexión debido a una orden del administrador"
 
-#: tcop/postgres.c:3021
+#: tcop/postgres.c:3088
 #, c-format
 msgid "connection to client lost"
 msgstr "se ha perdido la conexión al cliente"
 
-#: tcop/postgres.c:3087
+#: tcop/postgres.c:3154
 #, c-format
 msgid "canceling statement due to lock timeout"
 msgstr "cancelando la sentencia debido a que se agotó el tiempo de espera de candados (locks)"
 
-#: tcop/postgres.c:3094
+#: tcop/postgres.c:3161
 #, c-format
 msgid "canceling statement due to statement timeout"
 msgstr "cancelando la sentencia debido a que se agotó el tiempo de espera de sentencias"
 
-#: tcop/postgres.c:3101
+#: tcop/postgres.c:3168
 #, c-format
 msgid "canceling autovacuum task"
 msgstr "cancelando tarea de autovacuum"
 
-#: tcop/postgres.c:3124
+#: tcop/postgres.c:3191
 #, c-format
 msgid "canceling statement due to user request"
 msgstr "cancelando la sentencia debido a una petición del usuario"
 
-#: tcop/postgres.c:3134
+#: tcop/postgres.c:3201
 #, c-format
 msgid "terminating connection due to idle-in-transaction timeout"
 msgstr "terminando la conexión debido a que se agotó el tiempo de espera para transacciones abiertas inactivas"
 
-#: tcop/postgres.c:3248
+#: tcop/postgres.c:3318
 #, c-format
 msgid "stack depth limit exceeded"
 msgstr "límite de profundidad de stack alcanzado"
 
-#: tcop/postgres.c:3249
+#: tcop/postgres.c:3319
 #, c-format
 msgid "Increase the configuration parameter \"max_stack_depth\" (currently %dkB), after ensuring the platform's stack depth limit is adequate."
 msgstr "Incremente el parámetro de configuración «max_stack_depth» (actualmente %dkB), después de asegurarse que el límite de profundidad de stack de la plataforma es adecuado."
 
-#: tcop/postgres.c:3312
+#: tcop/postgres.c:3382
 #, c-format
 msgid "\"max_stack_depth\" must not exceed %ldkB."
 msgstr "«max_stack_depth» no debe exceder %ldkB."
 
-#: tcop/postgres.c:3314
+#: tcop/postgres.c:3384
 #, c-format
 msgid "Increase the platform's stack depth limit via \"ulimit -s\" or local equivalent."
 msgstr "Incremente el límite de profundidad del stack del sistema usando «ulimit -s» o el equivalente de su sistema."
 
-#: tcop/postgres.c:3674
+#: tcop/postgres.c:3744
 #, c-format
 msgid "invalid command-line argument for server process: %s"
 msgstr "argumentos de línea de órdenes no válidos para proceso servidor: %s"
 
-#: tcop/postgres.c:3675 tcop/postgres.c:3681
+#: tcop/postgres.c:3745 tcop/postgres.c:3751
 #, c-format
 msgid "Try \"%s --help\" for more information."
 msgstr "Pruebe «%s --help» para mayor información."
 
-#: tcop/postgres.c:3679
+#: tcop/postgres.c:3749
 #, c-format
 msgid "%s: invalid command-line argument: %s"
 msgstr "%s: argumento de línea de órdenes no válido: %s"
 
-#: tcop/postgres.c:3741
+#: tcop/postgres.c:3811
 #, c-format
 msgid "%s: no database nor user name specified"
 msgstr "%s: no se ha especificado base de datos ni usuario"
 
-#: tcop/postgres.c:4368
+#: tcop/postgres.c:4447
 #, c-format
 msgid "invalid CLOSE message subtype %d"
 msgstr "subtipo %d de mensaje CLOSE no válido"
 
-#: tcop/postgres.c:4403
+#: tcop/postgres.c:4482
 #, c-format
 msgid "invalid DESCRIBE message subtype %d"
 msgstr "subtipo %d de mensaje DESCRIBE no válido"
 
-#: tcop/postgres.c:4481
+#: tcop/postgres.c:4560
 #, c-format
 msgid "fastpath function calls not supported in a replication connection"
 msgstr "la invocación «fastpath» de funciones no está soportada en conexiones de replicación"
 
-#: tcop/postgres.c:4485
+#: tcop/postgres.c:4564
 #, c-format
 msgid "extended query protocol not supported in a replication connection"
 msgstr "el protocolo extendido de consultas no está soportado en conexiones de replicación"
 
-#: tcop/postgres.c:4662
+#: tcop/postgres.c:4741
 #, c-format
 msgid "disconnection: session time: %d:%02d:%02d.%03d user=%s database=%s host=%s%s%s"
 msgstr "desconexión: duración de sesión: %d:%02d:%02d.%03d usuario=%s base=%s host=%s%s%s"
 
-#: tcop/pquery.c:642
+#: tcop/pquery.c:629
 #, c-format
 msgid "bind message has %d result formats but query has %d columns"
 msgstr "el mensaje de enlace (bind) tiene %d formatos de resultado pero la consulta tiene %d columnas"
 
-#: tcop/pquery.c:949
+#: tcop/pquery.c:932
 #, c-format
 msgid "cursor can only scan forward"
 msgstr "el cursor sólo se puede desplazar hacia adelante"
 
-#: tcop/pquery.c:950
+#: tcop/pquery.c:933
 #, c-format
 msgid "Declare it with SCROLL option to enable backward scan."
 msgstr "Declárelo con SCROLL para permitirle desplazar hacia atrás."
 
 #. translator: %s is name of a SQL command, eg CREATE
-#: tcop/utility.c:245
+#: tcop/utility.c:413
 #, c-format
 msgid "cannot execute %s in a read-only transaction"
 msgstr "no se puede ejecutar %s en una transacción de sólo lectura"
 
 #. translator: %s is name of a SQL command, eg CREATE
-#: tcop/utility.c:263
+#: tcop/utility.c:431
 #, c-format
 msgid "cannot execute %s during a parallel operation"
 msgstr "no se puede ejecutar %s durante una operación paralela"
 
 #. translator: %s is name of a SQL command, eg CREATE
-#: tcop/utility.c:282
+#: tcop/utility.c:450
 #, c-format
 msgid "cannot execute %s during recovery"
 msgstr "no se puede ejecutar %s durante la recuperación"
 
 #. translator: %s is name of a SQL command, eg PREPARE
-#: tcop/utility.c:300
+#: tcop/utility.c:468
 #, c-format
 msgid "cannot execute %s within security-restricted operation"
 msgstr "no se puede ejecutar %s durante una operación restringida por seguridad"
 
-#: tcop/utility.c:760
+#: tcop/utility.c:912
 #, c-format
 msgid "must be superuser to do CHECKPOINT"
 msgstr "debe ser superusuario para ejecutar CHECKPOINT"
 
-#: tsearch/dict_ispell.c:52 tsearch/dict_thesaurus.c:624
+#: tsearch/dict_ispell.c:52 tsearch/dict_thesaurus.c:620
 #, c-format
 msgid "multiple DictFile parameters"
 msgstr "parámetro DictFile duplicado"
@@ -20572,7 +20574,7 @@ msgstr "parámetro Ispell no reconocido: «%s»"
 msgid "missing AffFile parameter"
 msgstr "falta un parámetro AffFile"
 
-#: tsearch/dict_ispell.c:102 tsearch/dict_thesaurus.c:648
+#: tsearch/dict_ispell.c:102 tsearch/dict_thesaurus.c:644
 #, c-format
 msgid "missing DictFile parameter"
 msgstr "falta un parámetro DictFile"
@@ -20645,43 +20647,43 @@ msgid "Use \"?\" to represent a stop word within a sample phrase."
 msgstr "Use «?» para representar una stopword en una frase muestra."
 
 # XXX -- stopword?
-#: tsearch/dict_thesaurus.c:576
+#: tsearch/dict_thesaurus.c:572
 #, c-format
 msgid "thesaurus substitute word \"%s\" is a stop word (rule %d)"
 msgstr "la palabra sustituta «%s» del tesauro es una stopword (regla %d)"
 
-#: tsearch/dict_thesaurus.c:583
+#: tsearch/dict_thesaurus.c:579
 #, c-format
 msgid "thesaurus substitute word \"%s\" isn't recognized by subdictionary (rule %d)"
 msgstr "la palabra sustituta «%s» del tesauro no es reconocida por el subdiccionario (regla %d)"
 
-#: tsearch/dict_thesaurus.c:595
+#: tsearch/dict_thesaurus.c:591
 #, c-format
 msgid "thesaurus substitute phrase is empty (rule %d)"
 msgstr "la frase sustituta del tesauro está vacía (regla %d)"
 
-#: tsearch/dict_thesaurus.c:633
+#: tsearch/dict_thesaurus.c:629
 #, c-format
 msgid "multiple Dictionary parameters"
 msgstr "parámetro Dictionary duplicado"
 
-#: tsearch/dict_thesaurus.c:640
+#: tsearch/dict_thesaurus.c:636
 #, c-format
 msgid "unrecognized Thesaurus parameter: \"%s\""
 msgstr "parámetro no reconocido de tesauro: «%s»"
 
-#: tsearch/dict_thesaurus.c:652
+#: tsearch/dict_thesaurus.c:648
 #, c-format
 msgid "missing Dictionary parameter"
 msgstr "falta un paramétro Dictionary"
 
 #: tsearch/spell.c:380 tsearch/spell.c:397 tsearch/spell.c:406
-#: tsearch/spell.c:1034
+#: tsearch/spell.c:1036
 #, c-format
 msgid "invalid affix flag \"%s\""
 msgstr "marca de afijo «%s» no válida"
 
-#: tsearch/spell.c:384 tsearch/spell.c:1038
+#: tsearch/spell.c:384 tsearch/spell.c:1040
 #, c-format
 msgid "affix flag \"%s\" is out of range"
 msgstr "la marca de afijo «%s» está fuera de rango"
@@ -20696,47 +20698,54 @@ msgstr "caracteres no válidos en la marca de afijo «%s»"
 msgid "invalid affix flag \"%s\" with \"long\" flag value"
 msgstr "marca de afijo «%s» no válida con el valor de marca «long»"
 
-#: tsearch/spell.c:522
+#: tsearch/spell.c:524
 #, c-format
 msgid "could not open dictionary file \"%s\": %m"
 msgstr "no se pudo abrir el archivo de diccionario «%s»: %m"
 
-#: tsearch/spell.c:740 utils/adt/regexp.c:208
+#: tsearch/spell.c:742 utils/adt/regexp.c:208
 #, c-format
 msgid "invalid regular expression: %s"
 msgstr "la expresión regular no es válida: %s"
 
-#: tsearch/spell.c:1161 tsearch/spell.c:1726
+#: tsearch/spell.c:956 tsearch/spell.c:973 tsearch/spell.c:990
+#: tsearch/spell.c:1007 tsearch/spell.c:1072 gram.y:15990 gram.y:16007
+#, c-format
+msgid "syntax error"
+msgstr "error de sintaxis"
+
+#: tsearch/spell.c:1163 tsearch/spell.c:1175 tsearch/spell.c:1734
+#: tsearch/spell.c:1739 tsearch/spell.c:1744
 #, c-format
 msgid "invalid affix alias \"%s\""
 msgstr "alias de afijo «%s» no válido"
 
-#: tsearch/spell.c:1211 tsearch/spell.c:1282 tsearch/spell.c:1431
+#: tsearch/spell.c:1216 tsearch/spell.c:1287 tsearch/spell.c:1436
 #, c-format
 msgid "could not open affix file \"%s\": %m"
 msgstr "no se pudo abrir el archivo de afijos «%s»: %m"
 
-#: tsearch/spell.c:1265
+#: tsearch/spell.c:1270
 #, c-format
 msgid "Ispell dictionary supports only \"default\", \"long\", and \"num\" flag values"
 msgstr "el diccionario Ispell sólo permite los valores «default», «long» y «num»"
 
-#: tsearch/spell.c:1309
+#: tsearch/spell.c:1314
 #, c-format
 msgid "invalid number of flag vector aliases"
 msgstr "número no válido de alias de opciones"
 
-#: tsearch/spell.c:1332
+#: tsearch/spell.c:1337
 #, c-format
 msgid "number of aliases exceeds specified number %d"
 msgstr "el número de aliases excede el número especificado %d"
 
-#: tsearch/spell.c:1547
+#: tsearch/spell.c:1552
 #, c-format
 msgid "affix file contains both old-style and new-style commands"
 msgstr "el archivo de «affix» contiene órdenes en estilos antiguo y nuevo"
 
-#: tsearch/to_tsany.c:185 utils/adt/tsvector.c:271 utils/adt/tsvector_op.c:1132
+#: tsearch/to_tsany.c:185 utils/adt/tsvector.c:272 utils/adt/tsvector_op.c:1129
 #, c-format
 msgid "string is too long for tsvector (%d bytes, max %d bytes)"
 msgstr "la cadena es demasiado larga para tsvector (%d bytes, máximo %d bytes)"
@@ -20751,14 +20760,14 @@ msgstr "línea %d del archivo de configuración «%s»: «%s»"
 msgid "conversion from wchar_t to server encoding failed: %m"
 msgstr "conversión desde un wchar_t a la codificación del servidor falló: %m"
 
-#: tsearch/ts_parse.c:390 tsearch/ts_parse.c:397 tsearch/ts_parse.c:566
-#: tsearch/ts_parse.c:573
+#: tsearch/ts_parse.c:386 tsearch/ts_parse.c:393 tsearch/ts_parse.c:562
+#: tsearch/ts_parse.c:569
 #, c-format
 msgid "word is too long to be indexed"
 msgstr "la palabra es demasiado larga para ser indexada"
 
-#: tsearch/ts_parse.c:391 tsearch/ts_parse.c:398 tsearch/ts_parse.c:567
-#: tsearch/ts_parse.c:574
+#: tsearch/ts_parse.c:387 tsearch/ts_parse.c:394 tsearch/ts_parse.c:563
+#: tsearch/ts_parse.c:570
 #, c-format
 msgid "Words longer than %d characters are ignored."
 msgstr "Las palabras más largas que %d caracteres son ignoradas."
@@ -20773,159 +20782,159 @@ msgstr "nombre de configuración de búsqueda en texto «%s» no válido"
 msgid "could not open stop-word file \"%s\": %m"
 msgstr "no se pudo abrir el archivo de stopwords «%s»: %m"
 
-#: tsearch/wparser.c:322 tsearch/wparser.c:410 tsearch/wparser.c:487
+#: tsearch/wparser.c:313 tsearch/wparser.c:401 tsearch/wparser.c:478
 #, c-format
 msgid "text search parser does not support headline creation"
 msgstr "el analizador de búsqueda en texto no soporta creación de encabezados (headline)"
 
-#: tsearch/wparser_def.c:2486
+#: tsearch/wparser_def.c:2587
 #, c-format
 msgid "unrecognized headline parameter: \"%s\""
 msgstr "parámetro de encabezado (headline) no reconocido: «%s»"
 
-#: tsearch/wparser_def.c:2495
+#: tsearch/wparser_def.c:2597
 #, c-format
 msgid "MinWords should be less than MaxWords"
 msgstr "MinWords debería ser menor que MaxWords"
 
-#: tsearch/wparser_def.c:2499
+#: tsearch/wparser_def.c:2601
 #, c-format
 msgid "MinWords should be positive"
 msgstr "MinWords debería ser positivo"
 
-#: tsearch/wparser_def.c:2503
+#: tsearch/wparser_def.c:2605
 #, c-format
 msgid "ShortWord should be >= 0"
 msgstr "ShortWord debería ser >= 0"
 
-#: tsearch/wparser_def.c:2507
+#: tsearch/wparser_def.c:2609
 #, c-format
 msgid "MaxFragments should be >= 0"
 msgstr "MaxFragments debería ser >= 0"
 
-#: utils/adt/acl.c:171 utils/adt/name.c:93
+#: utils/adt/acl.c:172 utils/adt/name.c:93
 #, c-format
 msgid "identifier too long"
 msgstr "el identificador es demasiado largo"
 
-#: utils/adt/acl.c:172 utils/adt/name.c:94
+#: utils/adt/acl.c:173 utils/adt/name.c:94
 #, c-format
 msgid "Identifier must be less than %d characters."
 msgstr "El identificador debe ser menor a %d caracteres."
 
-#: utils/adt/acl.c:258
+#: utils/adt/acl.c:256
 #, c-format
 msgid "unrecognized key word: \"%s\""
 msgstr "palabra clave no reconocida: «%s»"
 
-#: utils/adt/acl.c:259
+#: utils/adt/acl.c:257
 #, c-format
 msgid "ACL key word must be \"group\" or \"user\"."
 msgstr "Palabra clave de ACL debe ser «group» o «user»."
 
-#: utils/adt/acl.c:264
+#: utils/adt/acl.c:262
 #, c-format
 msgid "missing name"
 msgstr "falta un nombre"
 
-#: utils/adt/acl.c:265
+#: utils/adt/acl.c:263
 #, c-format
 msgid "A name must follow the \"group\" or \"user\" key word."
 msgstr "Debe venir un nombre después de una palabra clave «group» o «user»."
 
-#: utils/adt/acl.c:271
+#: utils/adt/acl.c:269
 #, c-format
 msgid "missing \"=\" sign"
 msgstr "falta un signo «=»"
 
-#: utils/adt/acl.c:324
+#: utils/adt/acl.c:322
 #, c-format
 msgid "invalid mode character: must be one of \"%s\""
 msgstr "carácter de modo no válido: debe ser uno de «%s»"
 
-#: utils/adt/acl.c:346
+#: utils/adt/acl.c:344
 #, c-format
 msgid "a name must follow the \"/\" sign"
 msgstr "debe venir un nombre después del signo «/»"
 
-#: utils/adt/acl.c:354
+#: utils/adt/acl.c:352
 #, c-format
 msgid "defaulting grantor to user ID %u"
 msgstr "usando el cedente por omisión con ID %u"
 
-#: utils/adt/acl.c:545
+#: utils/adt/acl.c:538
 #, c-format
 msgid "ACL array contains wrong data type"
 msgstr "el array ACL contiene tipo de datos incorrecto"
 
-#: utils/adt/acl.c:549
+#: utils/adt/acl.c:542
 #, c-format
 msgid "ACL arrays must be one-dimensional"
 msgstr "los array de ACL debe ser unidimensional"
 
-#: utils/adt/acl.c:553
+#: utils/adt/acl.c:546
 #, c-format
 msgid "ACL arrays must not contain null values"
 msgstr "los arrays de ACL no pueden contener valores nulos"
 
-#: utils/adt/acl.c:577
+#: utils/adt/acl.c:570
 #, c-format
 msgid "extra garbage at the end of the ACL specification"
 msgstr "basura extra al final de la especificación de la ACL"
 
-#: utils/adt/acl.c:1212
+#: utils/adt/acl.c:1205
 #, c-format
 msgid "grant options cannot be granted back to your own grantor"
 msgstr "la opción de grant no puede ser otorgada de vuelta a quien la otorgó"
 
-#: utils/adt/acl.c:1273
+#: utils/adt/acl.c:1266
 #, c-format
 msgid "dependent privileges exist"
 msgstr "existen privilegios dependientes"
 
-#: utils/adt/acl.c:1274
+#: utils/adt/acl.c:1267
 #, c-format
 msgid "Use CASCADE to revoke them too."
 msgstr "Use CASCADE para revocarlos también."
 
-#: utils/adt/acl.c:1536
+#: utils/adt/acl.c:1521
 #, c-format
 msgid "aclinsert is no longer supported"
 msgstr "aclinsert ya no está soportado"
 
-#: utils/adt/acl.c:1546
+#: utils/adt/acl.c:1531
 #, c-format
 msgid "aclremove is no longer supported"
 msgstr "aclremove ya no está soportado"
 
-#: utils/adt/acl.c:1632 utils/adt/acl.c:1686
+#: utils/adt/acl.c:1617 utils/adt/acl.c:1671
 #, c-format
 msgid "unrecognized privilege type: \"%s\""
 msgstr "tipo de privilegio no reconocido: «%s»"
 
-#: utils/adt/acl.c:3486 utils/adt/regproc.c:102 utils/adt/regproc.c:277
+#: utils/adt/acl.c:3471 utils/adt/regproc.c:103 utils/adt/regproc.c:278
 #, c-format
 msgid "function \"%s\" does not exist"
 msgstr "no existe la función «%s»"
 
-#: utils/adt/acl.c:4958
+#: utils/adt/acl.c:4943
 #, c-format
 msgid "must be member of role \"%s\""
 msgstr "debe ser miembro del rol «%s»"
 
-#: utils/adt/array_expanded.c:274 utils/adt/arrayfuncs.c:932
-#: utils/adt/arrayfuncs.c:1532 utils/adt/arrayfuncs.c:3235
-#: utils/adt/arrayfuncs.c:3375 utils/adt/arrayfuncs.c:5909
-#: utils/adt/arrayfuncs.c:6250 utils/adt/arrayutils.c:93
+#: utils/adt/array_expanded.c:274 utils/adt/arrayfuncs.c:933
+#: utils/adt/arrayfuncs.c:1533 utils/adt/arrayfuncs.c:3236
+#: utils/adt/arrayfuncs.c:3376 utils/adt/arrayfuncs.c:5911
+#: utils/adt/arrayfuncs.c:6252 utils/adt/arrayutils.c:93
 #: utils/adt/arrayutils.c:102 utils/adt/arrayutils.c:109
 #, c-format
 msgid "array size exceeds the maximum allowed (%d)"
 msgstr "el tamaño del array excede el máximo permitido (%d)"
 
 #: utils/adt/array_userfuncs.c:80 utils/adt/array_userfuncs.c:466
-#: utils/adt/array_userfuncs.c:546 utils/adt/json.c:1829 utils/adt/json.c:1924
-#: utils/adt/json.c:1962 utils/adt/jsonb.c:1094 utils/adt/jsonb.c:1123
-#: utils/adt/jsonb.c:1517 utils/adt/jsonb.c:1681 utils/adt/jsonb.c:1691
+#: utils/adt/array_userfuncs.c:546 utils/adt/json.c:645 utils/adt/json.c:740
+#: utils/adt/json.c:778 utils/adt/jsonb.c:1115 utils/adt/jsonb.c:1144
+#: utils/adt/jsonb.c:1538 utils/adt/jsonb.c:1702 utils/adt/jsonb.c:1712
 #, c-format
 msgid "could not determine input data type"
 msgstr "no se pudo determinar el tipo de dato de entrada"
@@ -20936,15 +20945,16 @@ msgid "input data type is not an array"
 msgstr "el tipo de entrada no es un array"
 
 #: utils/adt/array_userfuncs.c:129 utils/adt/array_userfuncs.c:181
-#: utils/adt/arrayfuncs.c:1335 utils/adt/float.c:1220 utils/adt/float.c:1308
-#: utils/adt/float.c:3883 utils/adt/float.c:3897 utils/adt/int.c:759
+#: utils/adt/arrayfuncs.c:1336 utils/adt/float.c:1243 utils/adt/float.c:1317
+#: utils/adt/float.c:3925 utils/adt/float.c:3939 utils/adt/int.c:759
 #: utils/adt/int.c:781 utils/adt/int.c:795 utils/adt/int.c:809
 #: utils/adt/int.c:840 utils/adt/int.c:861 utils/adt/int.c:978
 #: utils/adt/int.c:992 utils/adt/int.c:1006 utils/adt/int.c:1039
 #: utils/adt/int.c:1053 utils/adt/int.c:1067 utils/adt/int.c:1098
-#: utils/adt/int.c:1180 utils/adt/int8.c:1167 utils/adt/numeric.c:1565
-#: utils/adt/numeric.c:3240 utils/adt/varbit.c:1188 utils/adt/varbit.c:1574
-#: utils/adt/varlena.c:1075 utils/adt/varlena.c:3337
+#: utils/adt/int.c:1180 utils/adt/int.c:1244 utils/adt/int.c:1312
+#: utils/adt/int.c:1318 utils/adt/int8.c:1292 utils/adt/numeric.c:1559
+#: utils/adt/numeric.c:3435 utils/adt/varbit.c:1188 utils/adt/varbit.c:1576
+#: utils/adt/varlena.c:1087 utils/adt/varlena.c:3377
 #, c-format
 msgid "integer out of range"
 msgstr "el entero está fuera de rango"
@@ -20991,244 +21001,244 @@ msgstr "no está soportada la búsqueda de elementos en arrays multidimensionale
 msgid "initial position must not be null"
 msgstr "la posición inicial no debe ser null"
 
-#: utils/adt/arrayfuncs.c:269 utils/adt/arrayfuncs.c:283
-#: utils/adt/arrayfuncs.c:294 utils/adt/arrayfuncs.c:316
-#: utils/adt/arrayfuncs.c:331 utils/adt/arrayfuncs.c:345
-#: utils/adt/arrayfuncs.c:351 utils/adt/arrayfuncs.c:358
-#: utils/adt/arrayfuncs.c:489 utils/adt/arrayfuncs.c:505
-#: utils/adt/arrayfuncs.c:516 utils/adt/arrayfuncs.c:531
-#: utils/adt/arrayfuncs.c:552 utils/adt/arrayfuncs.c:582
-#: utils/adt/arrayfuncs.c:589 utils/adt/arrayfuncs.c:597
-#: utils/adt/arrayfuncs.c:631 utils/adt/arrayfuncs.c:654
-#: utils/adt/arrayfuncs.c:674 utils/adt/arrayfuncs.c:786
-#: utils/adt/arrayfuncs.c:795 utils/adt/arrayfuncs.c:825
-#: utils/adt/arrayfuncs.c:840 utils/adt/arrayfuncs.c:893
+#: utils/adt/arrayfuncs.c:270 utils/adt/arrayfuncs.c:284
+#: utils/adt/arrayfuncs.c:295 utils/adt/arrayfuncs.c:317
+#: utils/adt/arrayfuncs.c:332 utils/adt/arrayfuncs.c:346
+#: utils/adt/arrayfuncs.c:352 utils/adt/arrayfuncs.c:359
+#: utils/adt/arrayfuncs.c:490 utils/adt/arrayfuncs.c:506
+#: utils/adt/arrayfuncs.c:517 utils/adt/arrayfuncs.c:532
+#: utils/adt/arrayfuncs.c:553 utils/adt/arrayfuncs.c:583
+#: utils/adt/arrayfuncs.c:590 utils/adt/arrayfuncs.c:598
+#: utils/adt/arrayfuncs.c:632 utils/adt/arrayfuncs.c:655
+#: utils/adt/arrayfuncs.c:675 utils/adt/arrayfuncs.c:787
+#: utils/adt/arrayfuncs.c:796 utils/adt/arrayfuncs.c:826
+#: utils/adt/arrayfuncs.c:841 utils/adt/arrayfuncs.c:894
 #, c-format
 msgid "malformed array literal: \"%s\""
 msgstr "literal de array mal formado: «%s»"
 
-#: utils/adt/arrayfuncs.c:270
+#: utils/adt/arrayfuncs.c:271
 #, c-format
 msgid "\"[\" must introduce explicitly-specified array dimensions."
 msgstr "Un «[» debe introducir dimensiones de array especificadas explícitamente."
 
-#: utils/adt/arrayfuncs.c:284
+#: utils/adt/arrayfuncs.c:285
 #, c-format
 msgid "Missing array dimension value."
 msgstr "Falta un valor de dimensión de array."
 
-#: utils/adt/arrayfuncs.c:295 utils/adt/arrayfuncs.c:332
+#: utils/adt/arrayfuncs.c:296 utils/adt/arrayfuncs.c:333
 #, c-format
 msgid "Missing \"%s\" after array dimensions."
 msgstr "Falta «%s» luego de las dimensiones de array."
 
-#: utils/adt/arrayfuncs.c:304 utils/adt/arrayfuncs.c:2883
-#: utils/adt/arrayfuncs.c:2915 utils/adt/arrayfuncs.c:2930
+#: utils/adt/arrayfuncs.c:305 utils/adt/arrayfuncs.c:2884
+#: utils/adt/arrayfuncs.c:2916 utils/adt/arrayfuncs.c:2931
 #, c-format
 msgid "upper bound cannot be less than lower bound"
 msgstr "el límite superior no puede ser menor que el límite inferior"
 
-#: utils/adt/arrayfuncs.c:317
+#: utils/adt/arrayfuncs.c:318
 #, c-format
 msgid "Array value must start with \"{\" or dimension information."
 msgstr "El valor de array debe comenzar con «{» o información de dimensión."
 
-#: utils/adt/arrayfuncs.c:346
+#: utils/adt/arrayfuncs.c:347
 #, c-format
 msgid "Array contents must start with \"{\"."
 msgstr "El contenido del array debe empezar con «{»."
 
-#: utils/adt/arrayfuncs.c:352 utils/adt/arrayfuncs.c:359
+#: utils/adt/arrayfuncs.c:353 utils/adt/arrayfuncs.c:360
 #, c-format
 msgid "Specified array dimensions do not match array contents."
 msgstr "Las dimensiones del array especificadas no coinciden con el contenido del array."
 
-#: utils/adt/arrayfuncs.c:490 utils/adt/arrayfuncs.c:517
+#: utils/adt/arrayfuncs.c:491 utils/adt/arrayfuncs.c:518
 #: utils/adt/rangetypes.c:2181 utils/adt/rangetypes.c:2189
 #: utils/adt/rowtypes.c:210 utils/adt/rowtypes.c:218
 #, c-format
 msgid "Unexpected end of input."
 msgstr "Fin inesperado de la entrada."
 
-#: utils/adt/arrayfuncs.c:506 utils/adt/arrayfuncs.c:553
-#: utils/adt/arrayfuncs.c:583 utils/adt/arrayfuncs.c:632
+#: utils/adt/arrayfuncs.c:507 utils/adt/arrayfuncs.c:554
+#: utils/adt/arrayfuncs.c:584 utils/adt/arrayfuncs.c:633
 #, c-format
 msgid "Unexpected \"%c\" character."
 msgstr "Carácter «%c» inesperado."
 
-#: utils/adt/arrayfuncs.c:532 utils/adt/arrayfuncs.c:655
+#: utils/adt/arrayfuncs.c:533 utils/adt/arrayfuncs.c:656
 #, c-format
 msgid "Unexpected array element."
 msgstr "Elemento de array inesperado."
 
-#: utils/adt/arrayfuncs.c:590
+#: utils/adt/arrayfuncs.c:591
 #, c-format
 msgid "Unmatched \"%c\" character."
 msgstr "Carácter «%c» sin pareja"
 
-#: utils/adt/arrayfuncs.c:598 utils/adt/jsonfuncs.c:2397
+#: utils/adt/arrayfuncs.c:599 utils/adt/jsonfuncs.c:2452
 #, c-format
 msgid "Multidimensional arrays must have sub-arrays with matching dimensions."
 msgstr "Los arrays multidimensionales deben tener sub-arrays con dimensiones coincidentes."
 
-#: utils/adt/arrayfuncs.c:675
+#: utils/adt/arrayfuncs.c:676
 #, c-format
 msgid "Junk after closing right brace."
 msgstr "Basura después de la llave derecha de cierre."
 
-#: utils/adt/arrayfuncs.c:1297 utils/adt/arrayfuncs.c:3343
-#: utils/adt/arrayfuncs.c:5815
+#: utils/adt/arrayfuncs.c:1298 utils/adt/arrayfuncs.c:3344
+#: utils/adt/arrayfuncs.c:5817
 #, c-format
 msgid "invalid number of dimensions: %d"
 msgstr "número incorrecto de dimensiones: %d"
 
-#: utils/adt/arrayfuncs.c:1308
+#: utils/adt/arrayfuncs.c:1309
 #, c-format
 msgid "invalid array flags"
 msgstr "opciones de array no válidas"
 
-#: utils/adt/arrayfuncs.c:1316
+#: utils/adt/arrayfuncs.c:1317
 #, c-format
 msgid "wrong element type"
 msgstr "el tipo de elemento es erróneo"
 
-#: utils/adt/arrayfuncs.c:1366 utils/adt/rangetypes.c:335
-#: utils/cache/lsyscache.c:2725
+#: utils/adt/arrayfuncs.c:1367 utils/adt/rangetypes.c:335
+#: utils/cache/lsyscache.c:2786
 #, c-format
 msgid "no binary input function available for type %s"
 msgstr "no hay una función binaria de entrada para el tipo %s"
 
-#: utils/adt/arrayfuncs.c:1506
+#: utils/adt/arrayfuncs.c:1507
 #, c-format
 msgid "improper binary format in array element %d"
 msgstr "el formato binario no es válido en elemento %d de array"
 
-#: utils/adt/arrayfuncs.c:1587 utils/adt/rangetypes.c:340
-#: utils/cache/lsyscache.c:2758
+#: utils/adt/arrayfuncs.c:1588 utils/adt/rangetypes.c:340
+#: utils/cache/lsyscache.c:2819
 #, c-format
 msgid "no binary output function available for type %s"
 msgstr "no hay una función binaria de salida para el tipo %s"
 
-#: utils/adt/arrayfuncs.c:2065
+#: utils/adt/arrayfuncs.c:2066
 #, c-format
 msgid "slices of fixed-length arrays not implemented"
 msgstr "no está implementada la obtención de segmentos de arrays de largo fijo"
 
-#: utils/adt/arrayfuncs.c:2243 utils/adt/arrayfuncs.c:2265
-#: utils/adt/arrayfuncs.c:2314 utils/adt/arrayfuncs.c:2550
-#: utils/adt/arrayfuncs.c:2861 utils/adt/arrayfuncs.c:5801
-#: utils/adt/arrayfuncs.c:5827 utils/adt/arrayfuncs.c:5838
-#: utils/adt/json.c:2325 utils/adt/json.c:2400 utils/adt/jsonb.c:1295
-#: utils/adt/jsonb.c:1381 utils/adt/jsonfuncs.c:4301 utils/adt/jsonfuncs.c:4452
-#: utils/adt/jsonfuncs.c:4497 utils/adt/jsonfuncs.c:4544
+#: utils/adt/arrayfuncs.c:2244 utils/adt/arrayfuncs.c:2266
+#: utils/adt/arrayfuncs.c:2315 utils/adt/arrayfuncs.c:2551
+#: utils/adt/arrayfuncs.c:2862 utils/adt/arrayfuncs.c:5803
+#: utils/adt/arrayfuncs.c:5829 utils/adt/arrayfuncs.c:5840
+#: utils/adt/json.c:1141 utils/adt/json.c:1216 utils/adt/jsonb.c:1316
+#: utils/adt/jsonb.c:1402 utils/adt/jsonfuncs.c:4340 utils/adt/jsonfuncs.c:4490
+#: utils/adt/jsonfuncs.c:4602 utils/adt/jsonfuncs.c:4648
 #, c-format
 msgid "wrong number of array subscripts"
 msgstr "número incorrecto de subíndices del array"
 
-#: utils/adt/arrayfuncs.c:2248 utils/adt/arrayfuncs.c:2356
-#: utils/adt/arrayfuncs.c:2614 utils/adt/arrayfuncs.c:2920
+#: utils/adt/arrayfuncs.c:2249 utils/adt/arrayfuncs.c:2357
+#: utils/adt/arrayfuncs.c:2615 utils/adt/arrayfuncs.c:2921
 #, c-format
 msgid "array subscript out of range"
 msgstr "subíndice de array fuera de rango"
 
-#: utils/adt/arrayfuncs.c:2253
+#: utils/adt/arrayfuncs.c:2254
 #, c-format
 msgid "cannot assign null value to an element of a fixed-length array"
 msgstr "no se puede asignar un valor nulo a un elemento de un array de longitud fija"
 
-#: utils/adt/arrayfuncs.c:2808
+#: utils/adt/arrayfuncs.c:2809
 #, c-format
 msgid "updates on slices of fixed-length arrays not implemented"
 msgstr "no están implementadas las actualizaciones en segmentos de arrays de largo fija"
 
-#: utils/adt/arrayfuncs.c:2839
+#: utils/adt/arrayfuncs.c:2840
 #, c-format
 msgid "array slice subscript must provide both boundaries"
 msgstr "los subíndices del segmento de array deben especificar ambos bordes"
 
-#: utils/adt/arrayfuncs.c:2840
+#: utils/adt/arrayfuncs.c:2841
 #, c-format
 msgid "When assigning to a slice of an empty array value, slice boundaries must be fully specified."
 msgstr "Cuando se asigna a un segmento de un array vacío, los bordes del segmento deben ser especificados completamente."
 
-#: utils/adt/arrayfuncs.c:2851 utils/adt/arrayfuncs.c:2946
+#: utils/adt/arrayfuncs.c:2852 utils/adt/arrayfuncs.c:2947
 #, c-format
 msgid "source array too small"
 msgstr "el array de origen es demasiado pequeño"
 
-#: utils/adt/arrayfuncs.c:3499
+#: utils/adt/arrayfuncs.c:3500
 #, c-format
 msgid "null array element not allowed in this context"
 msgstr "los arrays con elementos null no son permitidos en este contexto"
 
-#: utils/adt/arrayfuncs.c:3601 utils/adt/arrayfuncs.c:3772
-#: utils/adt/arrayfuncs.c:4123
+#: utils/adt/arrayfuncs.c:3602 utils/adt/arrayfuncs.c:3773
+#: utils/adt/arrayfuncs.c:4129
 #, c-format
 msgid "cannot compare arrays of different element types"
 msgstr "no se pueden comparar arrays con elementos de distintos tipos"
 
-#: utils/adt/arrayfuncs.c:3948 utils/adt/rangetypes.c:1254
+#: utils/adt/arrayfuncs.c:3951 utils/adt/rangetypes.c:1254
 #: utils/adt/rangetypes.c:1318
 #, c-format
 msgid "could not identify a hash function for type %s"
 msgstr "no se pudo identificar una función de hash para el tipo %s"
 
-#: utils/adt/arrayfuncs.c:4040
+#: utils/adt/arrayfuncs.c:4044
 #, c-format
 msgid "could not identify an extended hash function for type %s"
 msgstr "no se pudo identificar una función de hash extendida para el tipo %s"
 
-#: utils/adt/arrayfuncs.c:5215
+#: utils/adt/arrayfuncs.c:5221
 #, c-format
 msgid "data type %s is not an array type"
 msgstr "el tipo %s no es un array"
 
-#: utils/adt/arrayfuncs.c:5270
+#: utils/adt/arrayfuncs.c:5276
 #, c-format
 msgid "cannot accumulate null arrays"
 msgstr "no se pueden acumular arrays nulos"
 
-#: utils/adt/arrayfuncs.c:5298
+#: utils/adt/arrayfuncs.c:5304
 #, c-format
 msgid "cannot accumulate empty arrays"
 msgstr "no se pueden acumular arrays vacíos"
 
-#: utils/adt/arrayfuncs.c:5327 utils/adt/arrayfuncs.c:5333
+#: utils/adt/arrayfuncs.c:5331 utils/adt/arrayfuncs.c:5337
 #, c-format
 msgid "cannot accumulate arrays of different dimensionality"
 msgstr "no se pueden acumular arrays de distinta dimensionalidad"
 
-#: utils/adt/arrayfuncs.c:5699 utils/adt/arrayfuncs.c:5739
+#: utils/adt/arrayfuncs.c:5701 utils/adt/arrayfuncs.c:5741
 #, c-format
 msgid "dimension array or low bound array cannot be null"
 msgstr "el array de dimensiones o el array de límites inferiores debe ser no nulo"
 
-#: utils/adt/arrayfuncs.c:5802 utils/adt/arrayfuncs.c:5828
+#: utils/adt/arrayfuncs.c:5804 utils/adt/arrayfuncs.c:5830
 #, c-format
 msgid "Dimension array must be one dimensional."
 msgstr "El array de dimensiones debe ser unidimensional."
 
-#: utils/adt/arrayfuncs.c:5807 utils/adt/arrayfuncs.c:5833
+#: utils/adt/arrayfuncs.c:5809 utils/adt/arrayfuncs.c:5835
 #, c-format
 msgid "dimension values cannot be null"
 msgstr "los valores de dimensión no pueden ser null"
 
-#: utils/adt/arrayfuncs.c:5839
+#: utils/adt/arrayfuncs.c:5841
 #, c-format
 msgid "Low bound array has different size than dimensions array."
 msgstr "El array de límites inferiores tiene tamaño diferente que el array de dimensiones."
 
-#: utils/adt/arrayfuncs.c:6115
+#: utils/adt/arrayfuncs.c:6117
 #, c-format
 msgid "removing elements from multidimensional arrays is not supported"
 msgstr "la eliminación de elementos desde arrays multidimensionales no está soportada"
 
-#: utils/adt/arrayfuncs.c:6392
+#: utils/adt/arrayfuncs.c:6394
 #, c-format
 msgid "thresholds must be one-dimensional array"
 msgstr "los umbrales deben ser un array unidimensional"
 
-#: utils/adt/arrayfuncs.c:6397
+#: utils/adt/arrayfuncs.c:6399
 #, c-format
 msgid "thresholds array must not contain NULLs"
 msgstr "el array de umbrales no debe contener nulos"
@@ -21254,32 +21264,32 @@ msgid "encoding conversion from %s to ASCII not supported"
 msgstr "la conversión de codificación de %s a ASCII no está soportada"
 
 #. translator: first %s is inet or cidr
-#: utils/adt/bool.c:153 utils/adt/cash.c:277 utils/adt/datetime.c:3773
-#: utils/adt/float.c:168 utils/adt/float.c:252 utils/adt/float.c:276
-#: utils/adt/float.c:390 utils/adt/float.c:474 utils/adt/float.c:501
+#: utils/adt/bool.c:153 utils/adt/cash.c:277 utils/adt/datetime.c:3770
+#: utils/adt/float.c:187 utils/adt/float.c:271 utils/adt/float.c:295
+#: utils/adt/float.c:412 utils/adt/float.c:497 utils/adt/float.c:525
 #: utils/adt/geo_ops.c:220 utils/adt/geo_ops.c:230 utils/adt/geo_ops.c:242
 #: utils/adt/geo_ops.c:274 utils/adt/geo_ops.c:316 utils/adt/geo_ops.c:326
 #: utils/adt/geo_ops.c:974 utils/adt/geo_ops.c:1378 utils/adt/geo_ops.c:1413
-#: utils/adt/geo_ops.c:1421 utils/adt/geo_ops.c:3360 utils/adt/geo_ops.c:4526
-#: utils/adt/geo_ops.c:4541 utils/adt/geo_ops.c:4548 utils/adt/int8.c:128
+#: utils/adt/geo_ops.c:1421 utils/adt/geo_ops.c:3476 utils/adt/geo_ops.c:4645
+#: utils/adt/geo_ops.c:4660 utils/adt/geo_ops.c:4667 utils/adt/int8.c:126
 #: utils/adt/jsonpath.c:182 utils/adt/mac.c:94 utils/adt/mac8.c:93
 #: utils/adt/mac8.c:166 utils/adt/mac8.c:184 utils/adt/mac8.c:202
-#: utils/adt/mac8.c:221 utils/adt/network.c:74 utils/adt/numeric.c:607
-#: utils/adt/numeric.c:634 utils/adt/numeric.c:5806 utils/adt/numeric.c:5830
-#: utils/adt/numeric.c:5854 utils/adt/numeric.c:6684 utils/adt/numeric.c:6710
-#: utils/adt/numutils.c:52 utils/adt/numutils.c:62 utils/adt/numutils.c:106
-#: utils/adt/numutils.c:182 utils/adt/numutils.c:258 utils/adt/oid.c:44
+#: utils/adt/mac8.c:221 utils/adt/network.c:100 utils/adt/numeric.c:601
+#: utils/adt/numeric.c:628 utils/adt/numeric.c:6001 utils/adt/numeric.c:6025
+#: utils/adt/numeric.c:6049 utils/adt/numeric.c:6882 utils/adt/numeric.c:6908
+#: utils/adt/numutils.c:116 utils/adt/numutils.c:126 utils/adt/numutils.c:170
+#: utils/adt/numutils.c:246 utils/adt/numutils.c:322 utils/adt/oid.c:44
 #: utils/adt/oid.c:58 utils/adt/oid.c:64 utils/adt/oid.c:86
-#: utils/adt/pg_lsn.c:70 utils/adt/tid.c:73 utils/adt/tid.c:81
-#: utils/adt/tid.c:89 utils/adt/timestamp.c:479 utils/adt/txid.c:410
-#: utils/adt/uuid.c:136
+#: utils/adt/pg_lsn.c:73 utils/adt/tid.c:73 utils/adt/tid.c:81
+#: utils/adt/tid.c:89 utils/adt/timestamp.c:493 utils/adt/uuid.c:136
+#: utils/adt/xid8funcs.c:346
 #, c-format
 msgid "invalid input syntax for type %s: \"%s\""
 msgstr "la sintaxis de entrada no es válida para tipo %s: «%s»"
 
 #: utils/adt/cash.c:215 utils/adt/cash.c:240 utils/adt/cash.c:250
-#: utils/adt/cash.c:290 utils/adt/int8.c:120 utils/adt/numutils.c:76
-#: utils/adt/numutils.c:83 utils/adt/numutils.c:176 utils/adt/numutils.c:252
+#: utils/adt/cash.c:290 utils/adt/int8.c:118 utils/adt/numutils.c:140
+#: utils/adt/numutils.c:147 utils/adt/numutils.c:240 utils/adt/numutils.c:316
 #: utils/adt/oid.c:70 utils/adt/oid.c:109
 #, c-format
 msgid "value \"%s\" is out of range for type %s"
@@ -21287,12 +21297,12 @@ msgstr "el valor «%s» está fuera de rango para el tipo %s"
 
 #: utils/adt/cash.c:652 utils/adt/cash.c:702 utils/adt/cash.c:753
 #: utils/adt/cash.c:802 utils/adt/cash.c:854 utils/adt/cash.c:904
-#: utils/adt/int.c:824 utils/adt/int.c:940 utils/adt/int.c:1020
-#: utils/adt/int.c:1082 utils/adt/int.c:1120 utils/adt/int.c:1148
-#: utils/adt/int8.c:595 utils/adt/int8.c:653 utils/adt/int8.c:853
-#: utils/adt/int8.c:933 utils/adt/int8.c:995 utils/adt/int8.c:1075
-#: utils/adt/numeric.c:7248 utils/adt/numeric.c:7537 utils/adt/numeric.c:8549
-#: utils/adt/timestamp.c:3257
+#: utils/adt/float.c:104 utils/adt/int.c:824 utils/adt/int.c:940
+#: utils/adt/int.c:1020 utils/adt/int.c:1082 utils/adt/int.c:1120
+#: utils/adt/int.c:1148 utils/adt/int8.c:593 utils/adt/int8.c:651
+#: utils/adt/int8.c:978 utils/adt/int8.c:1058 utils/adt/int8.c:1120
+#: utils/adt/int8.c:1200 utils/adt/numeric.c:7446 utils/adt/numeric.c:7736
+#: utils/adt/numeric.c:9318 utils/adt/timestamp.c:3273
 #, c-format
 msgid "division by zero"
 msgstr "división por cero"
@@ -21302,159 +21312,158 @@ msgstr "división por cero"
 msgid "\"char\" out of range"
 msgstr "«char» está fuera de rango"
 
-#: utils/adt/date.c:65 utils/adt/timestamp.c:95 utils/adt/varbit.c:104
-#: utils/adt/varchar.c:49
+#: utils/adt/date.c:60 utils/adt/timestamp.c:94 utils/adt/varbit.c:104
+#: utils/adt/varchar.c:48
 #, c-format
 msgid "invalid type modifier"
 msgstr "el modificador de tipo no es válido"
 
-#: utils/adt/date.c:77
+#: utils/adt/date.c:72
 #, c-format
 msgid "TIME(%d)%s precision must not be negative"
 msgstr "la precisión de TIME(%d)%s no debe ser negativa"
 
-#: utils/adt/date.c:83
+#: utils/adt/date.c:78
 #, c-format
 msgid "TIME(%d)%s precision reduced to maximum allowed, %d"
 msgstr "la precisión de TIME(%d)%s fue reducida al máximo permitido, %d"
 
-#: utils/adt/date.c:162 utils/adt/date.c:170 utils/adt/formatting.c:3736
-#: utils/adt/formatting.c:3745
+#: utils/adt/date.c:157 utils/adt/date.c:165 utils/adt/formatting.c:4196
+#: utils/adt/formatting.c:4205 utils/adt/formatting.c:4311
+#: utils/adt/formatting.c:4321
 #, c-format
 msgid "date out of range: \"%s\""
 msgstr "fecha fuera de rango: «%s»"
 
-#: utils/adt/date.c:217 utils/adt/date.c:529 utils/adt/date.c:553
-#: utils/adt/xml.c:2228
+#: utils/adt/date.c:212 utils/adt/date.c:524 utils/adt/date.c:548
+#: utils/adt/xml.c:2210
 #, c-format
 msgid "date out of range"
 msgstr "la fecha fuera de rango"
 
-#: utils/adt/date.c:263 utils/adt/timestamp.c:559
+#: utils/adt/date.c:258 utils/adt/timestamp.c:573
 #, c-format
 msgid "date field value out of range: %d-%02d-%02d"
 msgstr "un valor en el campo de fecha está fuera de rango: %d-%02d-%02d"
 
-#: utils/adt/date.c:270 utils/adt/date.c:279 utils/adt/timestamp.c:565
+#: utils/adt/date.c:265 utils/adt/date.c:274 utils/adt/timestamp.c:579
 #, c-format
 msgid "date out of range: %d-%02d-%02d"
 msgstr "fecha fuera de rango: %d-%02d-%02d"
 
-#: utils/adt/date.c:317 utils/adt/date.c:340 utils/adt/date.c:366
-#: utils/adt/date.c:1110 utils/adt/date.c:1156 utils/adt/date.c:1657
-#: utils/adt/date.c:1688 utils/adt/date.c:1717 utils/adt/date.c:2549
-#: utils/adt/datetime.c:1663 utils/adt/formatting.c:3602
-#: utils/adt/formatting.c:3634 utils/adt/formatting.c:3711
-#: utils/adt/json.c:1621 utils/adt/json.c:1641 utils/adt/timestamp.c:222
-#: utils/adt/timestamp.c:254 utils/adt/timestamp.c:687
-#: utils/adt/timestamp.c:696 utils/adt/timestamp.c:774
-#: utils/adt/timestamp.c:807 utils/adt/timestamp.c:2836
-#: utils/adt/timestamp.c:2857 utils/adt/timestamp.c:2870
-#: utils/adt/timestamp.c:2879 utils/adt/timestamp.c:2887
-#: utils/adt/timestamp.c:2942 utils/adt/timestamp.c:2965
-#: utils/adt/timestamp.c:2978 utils/adt/timestamp.c:2989
-#: utils/adt/timestamp.c:2997 utils/adt/timestamp.c:3657
-#: utils/adt/timestamp.c:3782 utils/adt/timestamp.c:3823
-#: utils/adt/timestamp.c:3913 utils/adt/timestamp.c:3957
-#: utils/adt/timestamp.c:4060 utils/adt/timestamp.c:4544
-#: utils/adt/timestamp.c:4643 utils/adt/timestamp.c:4653
-#: utils/adt/timestamp.c:4745 utils/adt/timestamp.c:4847
-#: utils/adt/timestamp.c:4857 utils/adt/timestamp.c:5077
-#: utils/adt/timestamp.c:5091 utils/adt/timestamp.c:5096
-#: utils/adt/timestamp.c:5110 utils/adt/timestamp.c:5143
-#: utils/adt/timestamp.c:5192 utils/adt/timestamp.c:5199
-#: utils/adt/timestamp.c:5232 utils/adt/timestamp.c:5236
-#: utils/adt/timestamp.c:5305 utils/adt/timestamp.c:5309
-#: utils/adt/timestamp.c:5323 utils/adt/timestamp.c:5357 utils/adt/xml.c:2250
-#: utils/adt/xml.c:2257 utils/adt/xml.c:2277 utils/adt/xml.c:2284
+#: utils/adt/date.c:312 utils/adt/date.c:335 utils/adt/date.c:361
+#: utils/adt/date.c:1169 utils/adt/date.c:1215 utils/adt/date.c:1716
+#: utils/adt/date.c:1747 utils/adt/date.c:1776 utils/adt/date.c:2608
+#: utils/adt/datetime.c:1660 utils/adt/formatting.c:4053
+#: utils/adt/formatting.c:4085 utils/adt/formatting.c:4165
+#: utils/adt/formatting.c:4287 utils/adt/json.c:418 utils/adt/json.c:457
+#: utils/adt/timestamp.c:221 utils/adt/timestamp.c:253
+#: utils/adt/timestamp.c:701 utils/adt/timestamp.c:710
+#: utils/adt/timestamp.c:788 utils/adt/timestamp.c:821
+#: utils/adt/timestamp.c:2852 utils/adt/timestamp.c:2873
+#: utils/adt/timestamp.c:2886 utils/adt/timestamp.c:2895
+#: utils/adt/timestamp.c:2903 utils/adt/timestamp.c:2958
+#: utils/adt/timestamp.c:2981 utils/adt/timestamp.c:2994
+#: utils/adt/timestamp.c:3005 utils/adt/timestamp.c:3013
+#: utils/adt/timestamp.c:3673 utils/adt/timestamp.c:3798
+#: utils/adt/timestamp.c:3839 utils/adt/timestamp.c:3929
+#: utils/adt/timestamp.c:3973 utils/adt/timestamp.c:4076
+#: utils/adt/timestamp.c:4561 utils/adt/timestamp.c:4757
+#: utils/adt/timestamp.c:5084 utils/adt/timestamp.c:5098
+#: utils/adt/timestamp.c:5103 utils/adt/timestamp.c:5117
+#: utils/adt/timestamp.c:5150 utils/adt/timestamp.c:5227
+#: utils/adt/timestamp.c:5268 utils/adt/timestamp.c:5272
+#: utils/adt/timestamp.c:5341 utils/adt/timestamp.c:5345
+#: utils/adt/timestamp.c:5359 utils/adt/timestamp.c:5393 utils/adt/xml.c:2232
+#: utils/adt/xml.c:2239 utils/adt/xml.c:2259 utils/adt/xml.c:2266
 #, c-format
 msgid "timestamp out of range"
 msgstr "el timestamp está fuera de rango"
 
-#: utils/adt/date.c:504
+#: utils/adt/date.c:499
 #, c-format
 msgid "cannot subtract infinite dates"
 msgstr "no se pueden restar fechas infinitas"
 
-#: utils/adt/date.c:582 utils/adt/date.c:613 utils/adt/date.c:631
-#: utils/adt/date.c:2586 utils/adt/date.c:2596
+#: utils/adt/date.c:588 utils/adt/date.c:645 utils/adt/date.c:679
+#: utils/adt/date.c:2645 utils/adt/date.c:2655
 #, c-format
 msgid "date out of range for timestamp"
 msgstr "fecha fuera de rango para timestamp"
 
-#: utils/adt/date.c:1270 utils/adt/date.c:2044
+#: utils/adt/date.c:1329 utils/adt/date.c:2103 utils/adt/formatting.c:4373
 #, c-format
 msgid "time out of range"
 msgstr "hora fuera de rango"
 
-#: utils/adt/date.c:1326 utils/adt/timestamp.c:584
+#: utils/adt/date.c:1385 utils/adt/timestamp.c:598
 #, c-format
 msgid "time field value out of range: %d:%02d:%02g"
 msgstr "un valor en el campo de hora está fuera de rango: %d:%02d:%02g"
 
-#: utils/adt/date.c:1846 utils/adt/date.c:2348 utils/adt/float.c:1046
-#: utils/adt/float.c:1115 utils/adt/int.c:616 utils/adt/int.c:663
-#: utils/adt/int.c:698 utils/adt/int8.c:494 utils/adt/numeric.c:2203
-#: utils/adt/timestamp.c:3306 utils/adt/timestamp.c:3337
-#: utils/adt/timestamp.c:3368
+#: utils/adt/date.c:1905 utils/adt/date.c:2407 utils/adt/float.c:1071
+#: utils/adt/float.c:1140 utils/adt/int.c:616 utils/adt/int.c:663
+#: utils/adt/int.c:698 utils/adt/int8.c:492 utils/adt/numeric.c:2197
+#: utils/adt/timestamp.c:3322 utils/adt/timestamp.c:3353
+#: utils/adt/timestamp.c:3384
 #, c-format
 msgid "invalid preceding or following size in window function"
 msgstr "tamaño «preceding» o «following» no válido en ventana deslizante"
 
-#: utils/adt/date.c:1931 utils/adt/date.c:1944
+#: utils/adt/date.c:1990 utils/adt/date.c:2003
 #, c-format
 msgid "\"time\" units \"%s\" not recognized"
 msgstr "las unidades de «time» «%s» no son reconocidas"
 
-#: utils/adt/date.c:2052
+#: utils/adt/date.c:2111
 #, c-format
 msgid "time zone displacement out of range"
 msgstr "desplazamiento de huso horario fuera de rango"
 
-#: utils/adt/date.c:2681 utils/adt/date.c:2694
+#: utils/adt/date.c:2740 utils/adt/date.c:2753
 #, c-format
 msgid "\"time with time zone\" units \"%s\" not recognized"
 msgstr "las unidades de «timestamp with time zone» «%s» no son reconocidas"
 
-#: utils/adt/date.c:2767 utils/adt/datetime.c:909 utils/adt/datetime.c:1821
-#: utils/adt/datetime.c:4617 utils/adt/timestamp.c:498
-#: utils/adt/timestamp.c:525 utils/adt/timestamp.c:4143
-#: utils/adt/timestamp.c:5102 utils/adt/timestamp.c:5315
+#: utils/adt/date.c:2826 utils/adt/datetime.c:906 utils/adt/datetime.c:1818
+#: utils/adt/datetime.c:4614 utils/adt/timestamp.c:512
+#: utils/adt/timestamp.c:539 utils/adt/timestamp.c:4159
+#: utils/adt/timestamp.c:5109 utils/adt/timestamp.c:5351
 #, c-format
 msgid "time zone \"%s\" not recognized"
 msgstr "el huso horario «%s» no es reconocido"
 
-#: utils/adt/date.c:2799 utils/adt/timestamp.c:5132 utils/adt/timestamp.c:5346
+#: utils/adt/date.c:2858 utils/adt/timestamp.c:5139 utils/adt/timestamp.c:5382
 #, c-format
 msgid "interval time zone \"%s\" must not include months or days"
 msgstr "el intervalo de huso horario «%s» no debe especificar meses o días"
 
-#: utils/adt/datetime.c:3746 utils/adt/datetime.c:3753
+#: utils/adt/datetime.c:3743 utils/adt/datetime.c:3750
 #, c-format
 msgid "date/time field value out of range: \"%s\""
 msgstr "el valor de hora/fecha está fuera de rango: «%s»"
 
-#: utils/adt/datetime.c:3755
+#: utils/adt/datetime.c:3752
 #, c-format
 msgid "Perhaps you need a different \"datestyle\" setting."
 msgstr "Quizás necesite una configuración diferente de «datestyle»."
 
-#: utils/adt/datetime.c:3760
+#: utils/adt/datetime.c:3757
 #, c-format
 msgid "interval field value out of range: \"%s\""
 msgstr "el valor de interval está fuera de rango: «%s»"
 
-#: utils/adt/datetime.c:3766
+#: utils/adt/datetime.c:3763
 #, c-format
 msgid "time zone displacement out of range: \"%s\""
 msgstr "el desplazamiento de huso horario está fuera de rango: «%s»"
 
-#: utils/adt/datetime.c:4619
+#: utils/adt/datetime.c:4616
 #, c-format
 msgid "This time zone name appears in the configuration file for time zone abbreviation \"%s\"."
 msgstr "Este nombre de huso horario aparece en el archivo de configuración para abreviaciones de husos horarios «%s»."
 
-#: utils/adt/datum.c:88 utils/adt/datum.c:100
+#: utils/adt/datum.c:89 utils/adt/datum.c:101
 #, c-format
 msgid "invalid Datum pointer"
 msgstr "puntero a Datum no válido"
@@ -21479,41 +21488,60 @@ msgstr "Unidades válidas son «bytes«, «kB», «MB», «GB» y «TB»."
 msgid "type %s is not a domain"
 msgstr "tipo «%s» no es un dominio"
 
-#: utils/adt/encode.c:55 utils/adt/encode.c:91
+#: utils/adt/encode.c:64 utils/adt/encode.c:112
 #, c-format
 msgid "unrecognized encoding: \"%s\""
 msgstr "no se reconoce la codificación: «%s»"
 
-#: utils/adt/encode.c:150
+#: utils/adt/encode.c:78
+#, fuzzy, c-format
+#| msgid "encoding conversion from %s to ASCII not supported"
+msgid "result of encoding conversion is too large"
+msgstr "la conversión de codificación de %s a ASCII no está soportada"
+
+#: utils/adt/encode.c:126
+#, c-format
+msgid "result of decoding conversion is too large"
+msgstr ""
+
+#: utils/adt/encode.c:184
 #, c-format
 msgid "invalid hexadecimal digit: \"%c\""
 msgstr "el dígito hexadecimal no es válido: «%c»"
 
-#: utils/adt/encode.c:178
+#: utils/adt/encode.c:212
 #, c-format
 msgid "invalid hexadecimal data: odd number of digits"
 msgstr "el dato hexadecimal no es válido: tiene un número impar de dígitos"
 
-#: utils/adt/encode.c:295
+#: utils/adt/encode.c:329
 #, c-format
 msgid "unexpected \"=\" while decoding base64 sequence"
 msgstr "«=» inesperado mientras se decodificaba la secuencia base64"
 
-#: utils/adt/encode.c:307
+#: utils/adt/encode.c:341
 #, c-format
 msgid "invalid symbol \"%c\" while decoding base64 sequence"
 msgstr "símbolo «%c» no válido al decodificar secuencia base64"
 
-#: utils/adt/encode.c:327
+#: utils/adt/encode.c:361
 #, c-format
 msgid "invalid base64 end sequence"
 msgstr "secuencia de término base64 no válida"
 
-#: utils/adt/encode.c:328
+#: utils/adt/encode.c:362
 #, c-format
 msgid "Input data is missing padding, is truncated, or is otherwise corrupted."
 msgstr "A los datos de entrada les falta relleno, o están truncados, o están corruptos de alguna otra forma."
 
+#: utils/adt/encode.c:476 utils/adt/encode.c:541 utils/adt/jsonfuncs.c:619
+#: utils/adt/varlena.c:319 utils/adt/varlena.c:360 jsonpath_gram.y:528
+#: jsonpath_scan.l:515 jsonpath_scan.l:526 jsonpath_scan.l:536
+#: jsonpath_scan.l:578
+#, c-format
+msgid "invalid input syntax for type %s"
+msgstr "sintaxis de entrada no válida para tipo %s"
+
 #: utils/adt/enum.c:100
 #, c-format
 msgid "unsafe use of new value \"%s\" of enum type %s"
@@ -21546,330 +21574,390 @@ msgstr "no se pudo determinar el tipo enum efectivo"
 msgid "enum %s contains no values"
 msgstr "el enum %s no contiene valores"
 
-#: utils/adt/expandedrecord.c:98 utils/adt/expandedrecord.c:230
-#: utils/cache/typcache.c:1574 utils/cache/typcache.c:1730
-#: utils/cache/typcache.c:1860 utils/fmgr/funcapi.c:415
+#: utils/adt/expandedrecord.c:99 utils/adt/expandedrecord.c:231
+#: utils/cache/typcache.c:1632 utils/cache/typcache.c:1788
+#: utils/cache/typcache.c:1918 utils/fmgr/funcapi.c:456
 #, c-format
 msgid "type %s is not composite"
 msgstr "el tipo %s no es compuesto"
 
-#: utils/adt/float.c:246
-#, c-format
-msgid "\"%s\" is out of range for type real"
-msgstr "«%s» está fuera de rango para el tipo real"
-
-#: utils/adt/float.c:466
-#, c-format
-msgid "\"%s\" is out of range for type double precision"
-msgstr "«%s» está fuera de rango para el tipo double precision"
-
-#: utils/adt/float.c:1252 utils/adt/float.c:1340 utils/adt/int.c:336
-#: utils/adt/int.c:874 utils/adt/int.c:896 utils/adt/int.c:910
-#: utils/adt/int.c:924 utils/adt/int.c:956 utils/adt/int.c:1194
-#: utils/adt/int8.c:1188 utils/adt/numeric.c:3358 utils/adt/numeric.c:3367
-#, c-format
-msgid "smallint out of range"
-msgstr "smallint está fuera de rango"
-
-#: utils/adt/float.c:1466 utils/adt/numeric.c:7970
-#, c-format
-msgid "cannot take square root of a negative number"
-msgstr "no se puede calcular la raíz cuadrada un de número negativo"
-
-#: utils/adt/float.c:1527 utils/adt/numeric.c:3138
-#, c-format
-msgid "zero raised to a negative power is undefined"
-msgstr "cero elevado a una potencia negativa es indefinido"
-
-#: utils/adt/float.c:1531 utils/adt/numeric.c:3144
-#, c-format
-msgid "a negative number raised to a non-integer power yields a complex result"
-msgstr "un número negativo elevado a una potencia no positiva entrega un resultado complejo"
-
-#: utils/adt/float.c:1597 utils/adt/float.c:1627 utils/adt/numeric.c:8236
-#, c-format
-msgid "cannot take logarithm of zero"
-msgstr "no se puede calcular logaritmo de cero"
-
-#: utils/adt/float.c:1601 utils/adt/float.c:1631 utils/adt/numeric.c:8240
-#, c-format
-msgid "cannot take logarithm of a negative number"
-msgstr "no se puede calcular logaritmo de un número negativo"
-
-#: utils/adt/float.c:1661 utils/adt/float.c:1691 utils/adt/float.c:1783
-#: utils/adt/float.c:1809 utils/adt/float.c:1836 utils/adt/float.c:1862
-#: utils/adt/float.c:2009 utils/adt/float.c:2044 utils/adt/float.c:2208
-#: utils/adt/float.c:2262 utils/adt/float.c:2326 utils/adt/float.c:2381
-#: utils/adt/float.c:2569 utils/adt/float.c:2594
-#, c-format
-msgid "input is out of range"
-msgstr "la entrada está fuera de rango"
-
-#: utils/adt/float.c:2662
-#, c-format
-msgid "setseed parameter %g is out of allowed range [-1,1]"
-msgstr "parámetro setseed %g fuera del rango permitido [-1,1]"
-
-#: utils/adt/float.c:2880 utils/adt/float.c:2956 utils/adt/float.c:3179
+#: utils/adt/float.c:88
 #, c-format
 msgid "value out of range: overflow"
 msgstr "valor fuera de rango: desbordamiento"
 
-#: utils/adt/float.c:3861 utils/adt/numeric.c:1515
+#: utils/adt/float.c:96
+#, fuzzy, c-format
+#| msgid "value out of range: overflow"
+msgid "value out of range: underflow"
+msgstr "valor fuera de rango: desbordamiento"
+
+#: utils/adt/float.c:265
+#, c-format
+msgid "\"%s\" is out of range for type real"
+msgstr "«%s» está fuera de rango para el tipo real"
+
+#: utils/adt/float.c:489
+#, c-format
+msgid "\"%s\" is out of range for type double precision"
+msgstr "«%s» está fuera de rango para el tipo double precision"
+
+#: utils/adt/float.c:1268 utils/adt/float.c:1342 utils/adt/int.c:336
+#: utils/adt/int.c:874 utils/adt/int.c:896 utils/adt/int.c:910
+#: utils/adt/int.c:924 utils/adt/int.c:956 utils/adt/int.c:1194
+#: utils/adt/int8.c:1313 utils/adt/numeric.c:3553 utils/adt/numeric.c:3562
+#, c-format
+msgid "smallint out of range"
+msgstr "smallint está fuera de rango"
+
+#: utils/adt/float.c:1468 utils/adt/numeric.c:8329
+#, c-format
+msgid "cannot take square root of a negative number"
+msgstr "no se puede calcular la raíz cuadrada un de número negativo"
+
+#: utils/adt/float.c:1536 utils/adt/numeric.c:3239
+#, c-format
+msgid "zero raised to a negative power is undefined"
+msgstr "cero elevado a una potencia negativa es indefinido"
+
+#: utils/adt/float.c:1540 utils/adt/numeric.c:3245
+#, c-format
+msgid "a negative number raised to a non-integer power yields a complex result"
+msgstr "un número negativo elevado a una potencia no positiva entrega un resultado complejo"
+
+#: utils/adt/float.c:1614 utils/adt/float.c:1647 utils/adt/numeric.c:8993
+#, c-format
+msgid "cannot take logarithm of zero"
+msgstr "no se puede calcular logaritmo de cero"
+
+#: utils/adt/float.c:1618 utils/adt/float.c:1651 utils/adt/numeric.c:8997
+#, c-format
+msgid "cannot take logarithm of a negative number"
+msgstr "no se puede calcular logaritmo de un número negativo"
+
+#: utils/adt/float.c:1684 utils/adt/float.c:1715 utils/adt/float.c:1810
+#: utils/adt/float.c:1837 utils/adt/float.c:1865 utils/adt/float.c:1892
+#: utils/adt/float.c:2039 utils/adt/float.c:2076 utils/adt/float.c:2246
+#: utils/adt/float.c:2302 utils/adt/float.c:2367 utils/adt/float.c:2424
+#: utils/adt/float.c:2615 utils/adt/float.c:2639
+#, c-format
+msgid "input is out of range"
+msgstr "la entrada está fuera de rango"
+
+#: utils/adt/float.c:2706
+#, c-format
+msgid "setseed parameter %g is out of allowed range [-1,1]"
+msgstr "parámetro setseed %g fuera del rango permitido [-1,1]"
+
+#: utils/adt/float.c:3903 utils/adt/numeric.c:1509
 #, c-format
 msgid "count must be greater than zero"
 msgstr "count debe ser mayor que cero"
 
-#: utils/adt/float.c:3866 utils/adt/numeric.c:1522
+#: utils/adt/float.c:3908 utils/adt/numeric.c:1516
 #, c-format
 msgid "operand, lower bound, and upper bound cannot be NaN"
 msgstr "el operando, límite inferior y límite superior no pueden ser NaN"
 
-#: utils/adt/float.c:3872
+#: utils/adt/float.c:3914
 #, c-format
 msgid "lower and upper bounds must be finite"
 msgstr "los límites inferior y superior deben ser finitos"
 
-#: utils/adt/float.c:3906 utils/adt/numeric.c:1535
+#: utils/adt/float.c:3948 utils/adt/numeric.c:1529
 #, c-format
 msgid "lower bound cannot equal upper bound"
 msgstr "el límite superior no puede ser igual al límite inferior"
 
-#: utils/adt/formatting.c:504
+#: utils/adt/formatting.c:532
 #, c-format
 msgid "invalid format specification for an interval value"
 msgstr "especificación de formato no válida para un valor de interval"
 
-#: utils/adt/formatting.c:505
+#: utils/adt/formatting.c:533
 #, c-format
 msgid "Intervals are not tied to specific calendar dates."
 msgstr "Los Interval no están ... a valores determinados de fechas de calendario."
 
-#: utils/adt/formatting.c:1086
+#: utils/adt/formatting.c:1157
 #, c-format
 msgid "\"EEEE\" must be the last pattern used"
 msgstr "«EEEE» debe ser el último patrón usado"
 
-#: utils/adt/formatting.c:1094
+#: utils/adt/formatting.c:1165
 #, c-format
 msgid "\"9\" must be ahead of \"PR\""
 msgstr "«9» debe ir antes de «PR»"
 
-#: utils/adt/formatting.c:1110
+#: utils/adt/formatting.c:1181
 #, c-format
 msgid "\"0\" must be ahead of \"PR\""
 msgstr "«0» debe ir antes de «PR»"
 
-#: utils/adt/formatting.c:1137
+#: utils/adt/formatting.c:1208
 #, c-format
 msgid "multiple decimal points"
 msgstr "hay múltiples puntos decimales"
 
-#: utils/adt/formatting.c:1141 utils/adt/formatting.c:1224
+#: utils/adt/formatting.c:1212 utils/adt/formatting.c:1295
 #, c-format
 msgid "cannot use \"V\" and decimal point together"
 msgstr "no se puede usar «V» y un punto decimal simultáneamente"
 
-#: utils/adt/formatting.c:1153
+#: utils/adt/formatting.c:1224
 #, c-format
 msgid "cannot use \"S\" twice"
 msgstr "no se puede usar «S» dos veces"
 
-#: utils/adt/formatting.c:1157
+#: utils/adt/formatting.c:1228
 #, c-format
 msgid "cannot use \"S\" and \"PL\"/\"MI\"/\"SG\"/\"PR\" together"
 msgstr "no se puede usar «S» y «PL»/«MI»/«SG»/«PR» simultáneamente"
 
-#: utils/adt/formatting.c:1177
+#: utils/adt/formatting.c:1248
 #, c-format
 msgid "cannot use \"S\" and \"MI\" together"
 msgstr "no se puede usar «S» y «MI» simultáneamente"
 
-#: utils/adt/formatting.c:1187
+#: utils/adt/formatting.c:1258
 #, c-format
 msgid "cannot use \"S\" and \"PL\" together"
 msgstr "no se puede usar «S» y «PL» simultáneamente"
 
-#: utils/adt/formatting.c:1197
+#: utils/adt/formatting.c:1268
 #, c-format
 msgid "cannot use \"S\" and \"SG\" together"
 msgstr "no se puede usar «S» y «SG» simultáneamente"
 
-#: utils/adt/formatting.c:1206
+#: utils/adt/formatting.c:1277
 #, c-format
 msgid "cannot use \"PR\" and \"S\"/\"PL\"/\"MI\"/\"SG\" together"
 msgstr "no se puede usar «PR» y «S»/«PL»/«MI»/«SG» simultáneamente"
 
-#: utils/adt/formatting.c:1232
+#: utils/adt/formatting.c:1303
 #, c-format
 msgid "cannot use \"EEEE\" twice"
 msgstr "no se puede usar «EEEE» dos veces"
 
-#: utils/adt/formatting.c:1238
+#: utils/adt/formatting.c:1309
 #, c-format
 msgid "\"EEEE\" is incompatible with other formats"
 msgstr "«EEEE» es incompatible con otros formatos"
 
-#: utils/adt/formatting.c:1239
+#: utils/adt/formatting.c:1310
 #, c-format
 msgid "\"EEEE\" may only be used together with digit and decimal point patterns."
 msgstr "«EEEE» sólo puede ser usado en conjunción con patrones de dígitos y puntos decimales."
 
-#: utils/adt/formatting.c:1426
+#: utils/adt/formatting.c:1392
+#, fuzzy, c-format
+#| msgid "invalid value for parameter \"%s\": \"%s\""
+msgid "invalid datetime format separator: \"%s\""
+msgstr "valor no válido para el parámetro «%s»: «%s»"
+
+#: utils/adt/formatting.c:1520
 #, c-format
 msgid "\"%s\" is not a number"
 msgstr "«%s» no es un número"
 
-#: utils/adt/formatting.c:1504
+#: utils/adt/formatting.c:1598
 #, c-format
 msgid "case conversion failed: %s"
 msgstr "falló la conversión de mayúsculas: %s"
 
-#: utils/adt/formatting.c:1569 utils/adt/formatting.c:1693
-#: utils/adt/formatting.c:1818
+#: utils/adt/formatting.c:1663 utils/adt/formatting.c:1787
+#: utils/adt/formatting.c:1912
 #, c-format
 msgid "could not determine which collation to use for %s function"
 msgstr "no se pudo determinar qué ordenamiento usar para la función %s"
 
-#: utils/adt/formatting.c:2188
+#: utils/adt/formatting.c:2284
 #, c-format
 msgid "invalid combination of date conventions"
 msgstr "combinacion invalida de convenciones de fecha"
 
-#: utils/adt/formatting.c:2189
+#: utils/adt/formatting.c:2285
 #, c-format
 msgid "Do not mix Gregorian and ISO week date conventions in a formatting template."
 msgstr " No mezclar convenciones de semana Gregorianas e ISO en una plantilla formateada"
 
-#: utils/adt/formatting.c:2206
+#: utils/adt/formatting.c:2308
 #, c-format
 msgid "conflicting values for \"%s\" field in formatting string"
 msgstr "valores en conflicto para le campo \"%s\" en cadena de formato"
 
-#: utils/adt/formatting.c:2208
+#: utils/adt/formatting.c:2311
 #, c-format
 msgid "This value contradicts a previous setting for the same field type."
 msgstr "Este valor se contradice con un seteo previo para el mismo tipo de campo"
 
-#: utils/adt/formatting.c:2269
+#: utils/adt/formatting.c:2382
 #, c-format
 msgid "source string too short for \"%s\" formatting field"
 msgstr "cadena de texto fuente muy corta para campo formateado \"%s\" "
 
-#: utils/adt/formatting.c:2271
+#: utils/adt/formatting.c:2385
 #, c-format
 msgid "Field requires %d characters, but only %d remain."
 msgstr "El campo requiere %d caractéres, pero solo quedan %d."
 
-#: utils/adt/formatting.c:2274 utils/adt/formatting.c:2288
+#: utils/adt/formatting.c:2388 utils/adt/formatting.c:2403
 #, c-format
 msgid "If your source string is not fixed-width, try using the \"FM\" modifier."
 msgstr "Si su cadena de texto no es de ancho modificado, trate de usar el modificador \"FM\" "
 
-#: utils/adt/formatting.c:2284 utils/adt/formatting.c:2297
-#: utils/adt/formatting.c:2427
+#: utils/adt/formatting.c:2398 utils/adt/formatting.c:2412
+#: utils/adt/formatting.c:2635
 #, c-format
 msgid "invalid value \"%s\" for \"%s\""
 msgstr "el valor «%s» no es válido para «%s»"
 
-#: utils/adt/formatting.c:2286
+#: utils/adt/formatting.c:2400
 #, c-format
 msgid "Field requires %d characters, but only %d could be parsed."
 msgstr "El campo requiere %d caracteres, pero sólo %d pudieron ser analizados."
 
-#: utils/adt/formatting.c:2299
+#: utils/adt/formatting.c:2414
 #, c-format
 msgid "Value must be an integer."
 msgstr "El valor debe ser un entero."
 
-#: utils/adt/formatting.c:2304
+#: utils/adt/formatting.c:2419
 #, c-format
 msgid "value for \"%s\" in source string is out of range"
 msgstr "el valor para «%s» en la cadena de origen está fuera de rango"
 
-#: utils/adt/formatting.c:2306
+#: utils/adt/formatting.c:2421
 #, c-format
 msgid "Value must be in the range %d to %d."
 msgstr "El valor debe estar en el rango de %d a %d."
 
-#: utils/adt/formatting.c:2429
+#: utils/adt/formatting.c:2637
 #, c-format
 msgid "The given value did not match any of the allowed values for this field."
 msgstr "El valor dado no concuerda con ninguno de los valores permitidos para este campo."
 
-#: utils/adt/formatting.c:2627 utils/adt/formatting.c:2647
-#: utils/adt/formatting.c:2667 utils/adt/formatting.c:2687
-#: utils/adt/formatting.c:2706 utils/adt/formatting.c:2725
-#: utils/adt/formatting.c:2749 utils/adt/formatting.c:2767
-#: utils/adt/formatting.c:2785 utils/adt/formatting.c:2803
-#: utils/adt/formatting.c:2820 utils/adt/formatting.c:2837
+#: utils/adt/formatting.c:2854 utils/adt/formatting.c:2874
+#: utils/adt/formatting.c:2894 utils/adt/formatting.c:2914
+#: utils/adt/formatting.c:2933 utils/adt/formatting.c:2952
+#: utils/adt/formatting.c:2976 utils/adt/formatting.c:2994
+#: utils/adt/formatting.c:3012 utils/adt/formatting.c:3030
+#: utils/adt/formatting.c:3047 utils/adt/formatting.c:3064
 #, c-format
 msgid "localized string format value too long"
 msgstr "cadena traducida en cadena de formato es demasiado larga"
 
-#: utils/adt/formatting.c:3179
+#: utils/adt/formatting.c:3298
+#, c-format
+msgid "unmatched format separator \"%c\""
+msgstr ""
+
+#: utils/adt/formatting.c:3453 utils/adt/formatting.c:3797
 #, c-format
 msgid "formatting field \"%s\" is only supported in to_char"
 msgstr "el campo de formato «%s» sólo está soportado en to_char"
 
-#: utils/adt/formatting.c:3320
+#: utils/adt/formatting.c:3628
 #, c-format
 msgid "invalid input string for \"Y,YYY\""
 msgstr "cadena de entrada no válida para «Y,YYY»"
 
-#: utils/adt/formatting.c:3854
+#: utils/adt/formatting.c:3714
+#, fuzzy, c-format
+#| msgid "source string too short for \"%s\" formatting field"
+msgid "input string is too short for datetime format"
+msgstr "cadena de texto fuente muy corta para campo formateado \"%s\" "
+
+#: utils/adt/formatting.c:3722
+#, c-format
+msgid "trailing characters remain in input string after datetime format"
+msgstr ""
+
+#: utils/adt/formatting.c:4267
+#, c-format
+msgid "missing time zone in input string for type timestamptz"
+msgstr ""
+
+#: utils/adt/formatting.c:4273
+#, fuzzy, c-format
+#| msgid "timestamp out of range"
+msgid "timestamptz out of range"
+msgstr "el timestamp está fuera de rango"
+
+#: utils/adt/formatting.c:4301
+#, c-format
+msgid "datetime format is zoned but not timed"
+msgstr ""
+
+#: utils/adt/formatting.c:4353
+#, c-format
+msgid "missing time zone in input string for type timetz"
+msgstr ""
+
+#: utils/adt/formatting.c:4359
+#, fuzzy, c-format
+#| msgid "time out of range"
+msgid "timetz out of range"
+msgstr "hora fuera de rango"
+
+#: utils/adt/formatting.c:4385
+#, c-format
+msgid "datetime format is not dated and not timed"
+msgstr ""
+
+#: utils/adt/formatting.c:4518
 #, c-format
 msgid "hour \"%d\" is invalid for the 12-hour clock"
 msgstr "la hora «%d» no es válida para el reloj de 12 horas"
 
-#: utils/adt/formatting.c:3856
+#: utils/adt/formatting.c:4520
 #, c-format
 msgid "Use the 24-hour clock, or give an hour between 1 and 12."
 msgstr "Use el reloj de 24 horas, o entregue una hora entre 1 y 12."
 
-#: utils/adt/formatting.c:3962
+#: utils/adt/formatting.c:4628
 #, c-format
 msgid "cannot calculate day of year without year information"
 msgstr "no se puede calcular el día del año sin conocer el año"
 
-#: utils/adt/formatting.c:4869
+#: utils/adt/formatting.c:5547
 #, c-format
 msgid "\"EEEE\" not supported for input"
 msgstr "«EEEE» no está soportado en la entrada"
 
-#: utils/adt/formatting.c:4881
+#: utils/adt/formatting.c:5559
 #, c-format
 msgid "\"RN\" not supported for input"
 msgstr "«RN» no está soportado en la entrada"
 
-#: utils/adt/genfile.c:81
+#: utils/adt/genfile.c:75
 #, c-format
 msgid "reference to parent directory (\"..\") not allowed"
 msgstr "no se permiten referencias a directorios padre («..»)"
 
-#: utils/adt/genfile.c:92
+#: utils/adt/genfile.c:86
 #, c-format
 msgid "absolute path not allowed"
 msgstr "no se permiten rutas absolutas"
 
-#: utils/adt/genfile.c:97
+#: utils/adt/genfile.c:91
 #, c-format
 msgid "path must be in or below the current directory"
 msgstr "la ruta debe estar en o debajo del directorio actual"
 
-#: utils/adt/genfile.c:144 utils/adt/oracle_compat.c:185
-#: utils/adt/oracle_compat.c:283 utils/adt/oracle_compat.c:759
-#: utils/adt/oracle_compat.c:1054
+#: utils/adt/genfile.c:138 utils/adt/oracle_compat.c:184
+#: utils/adt/oracle_compat.c:282 utils/adt/oracle_compat.c:758
+#: utils/adt/oracle_compat.c:1053
 #, c-format
 msgid "requested length too large"
 msgstr "el tamaño solicitado es demasiado grande"
 
-#: utils/adt/genfile.c:161
+#: utils/adt/genfile.c:155
 #, c-format
 msgid "could not seek in file \"%s\": %m"
 msgstr "no se pudo posicionar (seek) el archivo «%s»: %m"
 
-#: utils/adt/genfile.c:221
+#: utils/adt/genfile.c:215
 #, c-format
 msgid "must be superuser to read files with adminpack 1.0"
 msgstr "Debe ser superusuario leer archivos con adminpack 1.0."
@@ -21884,8 +21972,8 @@ msgstr "especificación de línea no válida: A y B no pueden ser ambos cero"
 msgid "invalid line specification: must be two distinct points"
 msgstr "especificación de línea no válida: deben ser dos puntos distintos"
 
-#: utils/adt/geo_ops.c:1399 utils/adt/geo_ops.c:3370 utils/adt/geo_ops.c:4238
-#: utils/adt/geo_ops.c:5129
+#: utils/adt/geo_ops.c:1399 utils/adt/geo_ops.c:3486 utils/adt/geo_ops.c:4354
+#: utils/adt/geo_ops.c:5248
 #, c-format
 msgid "too many points requested"
 msgstr "se pidieron demasiados puntos"
@@ -21895,52 +21983,58 @@ msgstr "se pidieron demasiados puntos"
 msgid "invalid number of points in external \"path\" value"
 msgstr "el número de puntos no es válido en el valor «path» externo"
 
-#: utils/adt/geo_ops.c:2459
+#: utils/adt/geo_ops.c:2537
 #, c-format
 msgid "function \"dist_lb\" not implemented"
 msgstr "la función «dist_lb» no está implementada"
 
-#: utils/adt/geo_ops.c:2859
+#: utils/adt/geo_ops.c:2556
+#, fuzzy, c-format
+#| msgid "function \"dist_lb\" not implemented"
+msgid "function \"dist_bl\" not implemented"
+msgstr "la función «dist_lb» no está implementada"
+
+#: utils/adt/geo_ops.c:2975
 #, c-format
 msgid "function \"close_sl\" not implemented"
 msgstr "la función «close_sl» no está implementada"
 
-#: utils/adt/geo_ops.c:3006
+#: utils/adt/geo_ops.c:3122
 #, c-format
 msgid "function \"close_lb\" not implemented"
 msgstr "la función «close_lb» no está implementada"
 
-#: utils/adt/geo_ops.c:3417
+#: utils/adt/geo_ops.c:3533
 #, c-format
 msgid "invalid number of points in external \"polygon\" value"
 msgstr "el número de puntos no es válido en «polygon» externo"
 
-#: utils/adt/geo_ops.c:3953
+#: utils/adt/geo_ops.c:4069
 #, c-format
 msgid "function \"poly_distance\" not implemented"
 msgstr "la función «poly_distance» no está implementada"
 
-#: utils/adt/geo_ops.c:4330
+#: utils/adt/geo_ops.c:4446
 #, c-format
 msgid "function \"path_center\" not implemented"
 msgstr "la función «path_center» no está implementada"
 
-#: utils/adt/geo_ops.c:4347
+#: utils/adt/geo_ops.c:4463
 #, c-format
 msgid "open path cannot be converted to polygon"
 msgstr "no se puede convertir un camino abierto en polygon"
 
-#: utils/adt/geo_ops.c:4594
+#: utils/adt/geo_ops.c:4713
 #, c-format
 msgid "invalid radius in external \"circle\" value"
 msgstr "el radio no es válido en el valor «circle» externo"
 
-#: utils/adt/geo_ops.c:5115
+#: utils/adt/geo_ops.c:5234
 #, c-format
 msgid "cannot convert circle with radius zero to polygon"
 msgstr "no se puede convertir un círculo de radio cero a polygon"
 
-#: utils/adt/geo_ops.c:5120
+#: utils/adt/geo_ops.c:5239
 #, c-format
 msgid "must request at least 2 points"
 msgstr "debe pedir al menos 2 puntos"
@@ -21960,509 +22054,496 @@ msgstr "datos de int2vector no válidos"
 msgid "oidvector has too many elements"
 msgstr "el oidvector tiene demasiados elementos"
 
-#: utils/adt/int.c:1383 utils/adt/int8.c:1328 utils/adt/numeric.c:1423
-#: utils/adt/timestamp.c:5408 utils/adt/timestamp.c:5489
+#: utils/adt/int.c:1510 utils/adt/int8.c:1439 utils/adt/numeric.c:1417
+#: utils/adt/timestamp.c:5444 utils/adt/timestamp.c:5524
 #, c-format
 msgid "step size cannot equal zero"
 msgstr "el tamaño de paso no puede ser cero"
 
-#: utils/adt/int8.c:529 utils/adt/int8.c:552 utils/adt/int8.c:566
-#: utils/adt/int8.c:580 utils/adt/int8.c:611 utils/adt/int8.c:635
-#: utils/adt/int8.c:690 utils/adt/int8.c:704 utils/adt/int8.c:728
-#: utils/adt/int8.c:741 utils/adt/int8.c:810 utils/adt/int8.c:824
-#: utils/adt/int8.c:838 utils/adt/int8.c:869 utils/adt/int8.c:891
-#: utils/adt/int8.c:905 utils/adt/int8.c:919 utils/adt/int8.c:952
-#: utils/adt/int8.c:966 utils/adt/int8.c:980 utils/adt/int8.c:1011
-#: utils/adt/int8.c:1033 utils/adt/int8.c:1047 utils/adt/int8.c:1061
-#: utils/adt/int8.c:1230 utils/adt/int8.c:1272 utils/adt/numeric.c:3313
-#: utils/adt/varbit.c:1654
+#: utils/adt/int8.c:527 utils/adt/int8.c:550 utils/adt/int8.c:564
+#: utils/adt/int8.c:578 utils/adt/int8.c:609 utils/adt/int8.c:633
+#: utils/adt/int8.c:715 utils/adt/int8.c:783 utils/adt/int8.c:789
+#: utils/adt/int8.c:815 utils/adt/int8.c:829 utils/adt/int8.c:853
+#: utils/adt/int8.c:866 utils/adt/int8.c:935 utils/adt/int8.c:949
+#: utils/adt/int8.c:963 utils/adt/int8.c:994 utils/adt/int8.c:1016
+#: utils/adt/int8.c:1030 utils/adt/int8.c:1044 utils/adt/int8.c:1077
+#: utils/adt/int8.c:1091 utils/adt/int8.c:1105 utils/adt/int8.c:1136
+#: utils/adt/int8.c:1158 utils/adt/int8.c:1172 utils/adt/int8.c:1186
+#: utils/adt/int8.c:1348 utils/adt/int8.c:1383 utils/adt/numeric.c:3508
+#: utils/adt/varbit.c:1656
 #, c-format
 msgid "bigint out of range"
 msgstr "bigint está fuera de rango"
 
-#: utils/adt/int8.c:1285
+#: utils/adt/int8.c:1396
 #, c-format
 msgid "OID out of range"
 msgstr "OID está fuera de rango"
 
-#: utils/adt/json.c:787
-#, c-format
-msgid "Character with value 0x%02x must be escaped."
-msgstr "Los caracteres con valor 0x%02x deben ser escapados"
-
-#: utils/adt/json.c:828
-#, c-format
-msgid "\"\\u\" must be followed by four hexadecimal digits."
-msgstr "«\\u» debe ser seguido por cuatro dígitos hexadecimales."
-
-#: utils/adt/json.c:949 utils/adt/json.c:967
-#, c-format
-msgid "Escape sequence \"\\%s\" is invalid."
-msgstr "La secuencia de escape «%s» no es válida."
-
-#: utils/adt/json.c:1136
-#, c-format
-msgid "The input string ended unexpectedly."
-msgstr "La cadena de entrada terminó inesperadamente."
-
-#: utils/adt/json.c:1150
-#, c-format
-msgid "Expected end of input, but found \"%s\"."
-msgstr "Se esperaba el fin de la entrada, se encontró «%s»."
-
-#: utils/adt/json.c:1161
-#, c-format
-msgid "Expected JSON value, but found \"%s\"."
-msgstr "Se esperaba un valor JSON, se encontró «%s»."
-
-#: utils/adt/json.c:1169 utils/adt/json.c:1217
-#, c-format
-msgid "Expected string, but found \"%s\"."
-msgstr "Se esperaba una cadena, se encontró «%s»."
-
-#: utils/adt/json.c:1177
-#, c-format
-msgid "Expected array element or \"]\", but found \"%s\"."
-msgstr "Se esperaba un elemento de array o «]», se encontró «%s»."
-
-#: utils/adt/json.c:1185
-#, c-format
-msgid "Expected \",\" or \"]\", but found \"%s\"."
-msgstr "Se esperaba «,» o «]», se encontró «%s»."
-
-#: utils/adt/json.c:1193
-#, c-format
-msgid "Expected string or \"}\", but found \"%s\"."
-msgstr "Se esperaba una cadena o «}», se encontró «%s»."
-
-#: utils/adt/json.c:1201
-#, c-format
-msgid "Expected \":\", but found \"%s\"."
-msgstr "Se esperaba «:», se encontró «%s»."
-
-#: utils/adt/json.c:1209
-#, c-format
-msgid "Expected \",\" or \"}\", but found \"%s\"."
-msgstr "Se esperaba «,» o «}», se encontró «%s»."
-
-#: utils/adt/json.c:1247
-#, c-format
-msgid "Token \"%s\" is invalid."
-msgstr "El elemento «%s» no es válido."
-
-#: utils/adt/json.c:1319
-#, c-format
-msgid "JSON data, line %d: %s%s%s"
-msgstr "Datos JSON, línea %d: %s%s%s"
-
-#: utils/adt/json.c:1475 utils/adt/jsonb.c:739
+#: utils/adt/json.c:271 utils/adt/jsonb.c:757
 #, c-format
 msgid "key value must be scalar, not array, composite, or json"
 msgstr "el valor de llave debe ser escalar, no array, composite o json"
 
-#: utils/adt/json.c:2076 utils/adt/json.c:2086 utils/fmgr/funcapi.c:1549
+#: utils/adt/json.c:892 utils/adt/json.c:902 utils/fmgr/funcapi.c:1812
 #, c-format
 msgid "could not determine data type for argument %d"
 msgstr "no se pudo determinar el tipo de dato para el argumento %d"
 
-#: utils/adt/json.c:2110 utils/adt/jsonb.c:1707
+#: utils/adt/json.c:926 utils/adt/jsonb.c:1728
 #, c-format
 msgid "field name must not be null"
 msgstr "el nombre de campo no debe ser null"
 
-#: utils/adt/json.c:2194 utils/adt/jsonb.c:1157
+#: utils/adt/json.c:1010 utils/adt/jsonb.c:1178
 #, c-format
 msgid "argument list must have even number of elements"
 msgstr "la lista de argumentos debe tener un número par de elementos"
 
 #. translator: %s is a SQL function name
-#: utils/adt/json.c:2196 utils/adt/jsonb.c:1159
+#: utils/adt/json.c:1012 utils/adt/jsonb.c:1180
 #, c-format
 msgid "The arguments of %s must consist of alternating keys and values."
 msgstr "El argumento de %s debe consistir de llaves y valores alternados."
 
-#: utils/adt/json.c:2212
+#: utils/adt/json.c:1028
 #, c-format
 msgid "argument %d cannot be null"
 msgstr "el argumento %d no puede ser null"
 
-#: utils/adt/json.c:2213
+#: utils/adt/json.c:1029
 #, c-format
 msgid "Object keys should be text."
 msgstr "Las llaves de un objeto deben ser de texto."
 
-#: utils/adt/json.c:2319 utils/adt/jsonb.c:1289
+#: utils/adt/json.c:1135 utils/adt/jsonb.c:1310
 #, c-format
 msgid "array must have two columns"
 msgstr "un array debe tener dos columnas"
 
-#: utils/adt/json.c:2343 utils/adt/json.c:2427 utils/adt/jsonb.c:1313
-#: utils/adt/jsonb.c:1408
+#: utils/adt/json.c:1159 utils/adt/json.c:1243 utils/adt/jsonb.c:1334
+#: utils/adt/jsonb.c:1429
 #, c-format
 msgid "null value not allowed for object key"
 msgstr "no se permite el valor nulo como llave en un objeto"
 
-#: utils/adt/json.c:2416 utils/adt/jsonb.c:1397
+#: utils/adt/json.c:1232 utils/adt/jsonb.c:1418
 #, c-format
 msgid "mismatched array dimensions"
 msgstr "las dimensiones de array no coinciden"
 
-#: utils/adt/jsonb.c:269
+#: utils/adt/jsonb.c:287
 #, c-format
 msgid "string too long to represent as jsonb string"
 msgstr "la cadena es demasiado larga para representarla como cadena jsonb."
 
-#: utils/adt/jsonb.c:270
+#: utils/adt/jsonb.c:288
 #, c-format
 msgid "Due to an implementation restriction, jsonb strings cannot exceed %d bytes."
 msgstr "Debido a una restricción de la implementación, las cadenas en jsonb no pueden exceder los %d bytes."
 
-#: utils/adt/jsonb.c:1172
+#: utils/adt/jsonb.c:1193
 #, c-format
 msgid "argument %d: key must not be null"
 msgstr "argumento %d: la llave no puede ser null"
 
-#: utils/adt/jsonb.c:1760
+#: utils/adt/jsonb.c:1781
 #, c-format
 msgid "object keys must be strings"
 msgstr "las llaves de un objeto deben ser cadenas"
 
-#: utils/adt/jsonb.c:1923
+#: utils/adt/jsonb.c:1944
 #, c-format
 msgid "cannot cast jsonb null to type %s"
 msgstr "no se puede convertir un null jsonb a tipo %s"
 
-#: utils/adt/jsonb.c:1924
+#: utils/adt/jsonb.c:1945
 #, c-format
 msgid "cannot cast jsonb string to type %s"
 msgstr "no se puede convertir un string jsonb a tipo %s"
 
-#: utils/adt/jsonb.c:1925
+#: utils/adt/jsonb.c:1946
 #, c-format
 msgid "cannot cast jsonb numeric to type %s"
 msgstr "no se puede convertir un numérico jsonb a tipo %s"
 
-#: utils/adt/jsonb.c:1926
+#: utils/adt/jsonb.c:1947
 #, c-format
 msgid "cannot cast jsonb boolean to type %s"
 msgstr "no se puede convertir un booleano jsonb a tipo %s"
 
-#: utils/adt/jsonb.c:1927
+#: utils/adt/jsonb.c:1948
 #, c-format
 msgid "cannot cast jsonb array to type %s"
 msgstr "no se puede convertir un array jsonb a tipo %s"
 
-#: utils/adt/jsonb.c:1928
+#: utils/adt/jsonb.c:1949
 #, c-format
 msgid "cannot cast jsonb object to type %s"
 msgstr "no se puede convertir un objeto jsonb a tipo %s"
 
-#: utils/adt/jsonb.c:1929
+#: utils/adt/jsonb.c:1950
 #, c-format
 msgid "cannot cast jsonb array or object to type %s"
 msgstr "no se puede convertir un array u objeto jsonb a tipo %s"
 
-#: utils/adt/jsonb_util.c:657
+#: utils/adt/jsonb_util.c:699
 #, c-format
 msgid "number of jsonb object pairs exceeds the maximum allowed (%zu)"
 msgstr "el número de pares en objeto jsonb excede el máximo permitido (%zu)"
 
-#: utils/adt/jsonb_util.c:698
+#: utils/adt/jsonb_util.c:740
 #, c-format
 msgid "number of jsonb array elements exceeds the maximum allowed (%zu)"
 msgstr "el número de elementos del array jsonb excede el máximo permitido (%zu)"
 
-#: utils/adt/jsonb_util.c:1569 utils/adt/jsonb_util.c:1589
+#: utils/adt/jsonb_util.c:1614 utils/adt/jsonb_util.c:1634
 #, c-format
 msgid "total size of jsonb array elements exceeds the maximum of %u bytes"
 msgstr "el tamaño total de los elementos del array jsonb excede el máximo de %u bytes"
 
-#: utils/adt/jsonb_util.c:1650 utils/adt/jsonb_util.c:1685
-#: utils/adt/jsonb_util.c:1705
+#: utils/adt/jsonb_util.c:1695 utils/adt/jsonb_util.c:1730
+#: utils/adt/jsonb_util.c:1750
 #, c-format
 msgid "total size of jsonb object elements exceeds the maximum of %u bytes"
 msgstr "el tamaño total de los elementos del objeto jsonb excede el máximo de %u bytes"
 
-#: utils/adt/jsonfuncs.c:522 utils/adt/jsonfuncs.c:687
-#: utils/adt/jsonfuncs.c:2275 utils/adt/jsonfuncs.c:2715
-#: utils/adt/jsonfuncs.c:3505 utils/adt/jsonfuncs.c:3836
+#: utils/adt/jsonfuncs.c:551 utils/adt/jsonfuncs.c:796
+#: utils/adt/jsonfuncs.c:2330 utils/adt/jsonfuncs.c:2770
+#: utils/adt/jsonfuncs.c:3560 utils/adt/jsonfuncs.c:3891
 #, c-format
 msgid "cannot call %s on a scalar"
 msgstr "no se puede invocar %s en un escalar"
 
-#: utils/adt/jsonfuncs.c:527 utils/adt/jsonfuncs.c:674
-#: utils/adt/jsonfuncs.c:2717 utils/adt/jsonfuncs.c:3494
+#: utils/adt/jsonfuncs.c:556 utils/adt/jsonfuncs.c:783
+#: utils/adt/jsonfuncs.c:2772 utils/adt/jsonfuncs.c:3549
 #, c-format
 msgid "cannot call %s on an array"
 msgstr "no se puede invocar %s en un array"
 
-#: utils/adt/jsonfuncs.c:1590 utils/adt/jsonfuncs.c:1625
+#: utils/adt/jsonfuncs.c:613 jsonpath_scan.l:494
+#, c-format
+msgid "unsupported Unicode escape sequence"
+msgstr "secuencia de escape Unicode no soportado"
+
+#: utils/adt/jsonfuncs.c:692
+#, c-format
+msgid "JSON data, line %d: %s%s%s"
+msgstr "Datos JSON, línea %d: %s%s%s"
+
+#: utils/adt/jsonfuncs.c:1682 utils/adt/jsonfuncs.c:1717
 #, c-format
 msgid "cannot get array length of a scalar"
 msgstr "no se puede obtener el largo de array de un escalar"
 
-#: utils/adt/jsonfuncs.c:1594 utils/adt/jsonfuncs.c:1613
+#: utils/adt/jsonfuncs.c:1686 utils/adt/jsonfuncs.c:1705
 #, c-format
 msgid "cannot get array length of a non-array"
 msgstr "no se puede obtener el largo de array de un no-array"
 
-#: utils/adt/jsonfuncs.c:1690
+#: utils/adt/jsonfuncs.c:1782
 #, c-format
 msgid "cannot call %s on a non-object"
 msgstr "no se puede invocar %s en un no-objeto"
 
-#: utils/adt/jsonfuncs.c:1948
+#: utils/adt/jsonfuncs.c:2021
 #, c-format
 msgid "cannot deconstruct an array as an object"
 msgstr "no se puede desconstruir un array como un objeto"
 
-#: utils/adt/jsonfuncs.c:1960
+#: utils/adt/jsonfuncs.c:2033
 #, c-format
 msgid "cannot deconstruct a scalar"
 msgstr "no se puede desconstruir un escalar"
 
-#: utils/adt/jsonfuncs.c:2006
+#: utils/adt/jsonfuncs.c:2079
 #, c-format
 msgid "cannot extract elements from a scalar"
 msgstr "no se pueden extraer elementos de un escalar"
 
-#: utils/adt/jsonfuncs.c:2010
+#: utils/adt/jsonfuncs.c:2083
 #, c-format
 msgid "cannot extract elements from an object"
 msgstr "no se pudo extraer elementos de un objeto"
 
-#: utils/adt/jsonfuncs.c:2262 utils/adt/jsonfuncs.c:3720
+#: utils/adt/jsonfuncs.c:2317 utils/adt/jsonfuncs.c:3775
 #, c-format
 msgid "cannot call %s on a non-array"
 msgstr "no se puede invocar %s en un no-array"
 
-#: utils/adt/jsonfuncs.c:2332 utils/adt/jsonfuncs.c:2337
-#: utils/adt/jsonfuncs.c:2354 utils/adt/jsonfuncs.c:2360
+#: utils/adt/jsonfuncs.c:2387 utils/adt/jsonfuncs.c:2392
+#: utils/adt/jsonfuncs.c:2409 utils/adt/jsonfuncs.c:2415
 #, c-format
 msgid "expected JSON array"
 msgstr "se esperaba un array JSON"
 
-#: utils/adt/jsonfuncs.c:2333
+#: utils/adt/jsonfuncs.c:2388
 #, c-format
 msgid "See the value of key \"%s\"."
 msgstr "Vea el valor de la llave «%s»."
 
-#: utils/adt/jsonfuncs.c:2355
+#: utils/adt/jsonfuncs.c:2410
 #, c-format
 msgid "See the array element %s of key \"%s\"."
 msgstr "Vea el elemento %s de la llave «%s»."
 
-#: utils/adt/jsonfuncs.c:2361
+#: utils/adt/jsonfuncs.c:2416
 #, c-format
 msgid "See the array element %s."
 msgstr "Veo el elemento de array %s."
 
-#: utils/adt/jsonfuncs.c:2396
+#: utils/adt/jsonfuncs.c:2451
 #, c-format
 msgid "malformed JSON array"
 msgstr "array JSON mal formado"
 
 #. translator: %s is a function name, eg json_to_record
-#: utils/adt/jsonfuncs.c:3223
+#: utils/adt/jsonfuncs.c:3278
 #, c-format
 msgid "first argument of %s must be a row type"
 msgstr "el primer argumento de %s debe ser un tipo de registro"
 
 #. translator: %s is a function name, eg json_to_record
-#: utils/adt/jsonfuncs.c:3247
+#: utils/adt/jsonfuncs.c:3302
 #, c-format
-#| msgid "could not determine data type for argument %d"
 msgid "could not determine row type for result of %s"
 msgstr "no se pudo determinar el tipo de dato para el resultado de %s"
 
-#: utils/adt/jsonfuncs.c:3249
+#: utils/adt/jsonfuncs.c:3304
 #, c-format
-#| msgid "Try calling the function in the FROM clause using a column definition list."
 msgid "Provide a non-null record argument, or call the function in the FROM clause using a column definition list."
 msgstr "Provea un argumento de registro no-nulo, o invoque la función en la cláusula FROM usando una lista de definición de columnas."
 
-#: utils/adt/jsonfuncs.c:3737 utils/adt/jsonfuncs.c:3818
+#: utils/adt/jsonfuncs.c:3792 utils/adt/jsonfuncs.c:3873
 #, c-format
 msgid "argument of %s must be an array of objects"
 msgstr "el argumento de %s debe ser un array de objetos"
 
-#: utils/adt/jsonfuncs.c:3770
+#: utils/adt/jsonfuncs.c:3825
 #, c-format
 msgid "cannot call %s on an object"
 msgstr "no se puede invocar %s en un objeto"
 
-#: utils/adt/jsonfuncs.c:4247 utils/adt/jsonfuncs.c:4306
-#: utils/adt/jsonfuncs.c:4386
+#: utils/adt/jsonfuncs.c:4286 utils/adt/jsonfuncs.c:4345
+#: utils/adt/jsonfuncs.c:4425
 #, c-format
 msgid "cannot delete from scalar"
 msgstr "no se puede eliminar de un escalar"
 
-#: utils/adt/jsonfuncs.c:4391
+#: utils/adt/jsonfuncs.c:4430
 #, c-format
 msgid "cannot delete from object using integer index"
 msgstr "no se puede eliminar de un objeto usando un índice numérico"
 
-#: utils/adt/jsonfuncs.c:4457 utils/adt/jsonfuncs.c:4549
+#: utils/adt/jsonfuncs.c:4495 utils/adt/jsonfuncs.c:4653
 #, c-format
 msgid "cannot set path in scalar"
 msgstr "no se puede definir una ruta en un escalar"
 
-#: utils/adt/jsonfuncs.c:4502
+#: utils/adt/jsonfuncs.c:4537 utils/adt/jsonfuncs.c:4579
+#, c-format
+msgid "null_value_treatment must be \"delete_key\", \"return_target\", \"use_json_null\", or \"raise_exception\""
+msgstr ""
+
+#: utils/adt/jsonfuncs.c:4550
+#, fuzzy, c-format
+#| msgid "slot name must not be null"
+msgid "JSON value must not be null"
+msgstr "el nombre de slot no debe ser null"
+
+#: utils/adt/jsonfuncs.c:4551
+#, c-format
+msgid "Exception was raised because null_value_treatment is \"raise_exception\"."
+msgstr ""
+
+#: utils/adt/jsonfuncs.c:4552
+#, c-format
+msgid "To avoid, either change the null_value_treatment argument or ensure that an SQL NULL is not passed."
+msgstr ""
+
+#: utils/adt/jsonfuncs.c:4607
 #, c-format
 msgid "cannot delete path in scalar"
 msgstr "no se puede eliminar una ruta en un escalar"
 
-#: utils/adt/jsonfuncs.c:4672
+#: utils/adt/jsonfuncs.c:4776
 #, c-format
 msgid "invalid concatenation of jsonb objects"
 msgstr "concatenación no válida de objetos jsonb"
 
-#: utils/adt/jsonfuncs.c:4706
+#: utils/adt/jsonfuncs.c:4810
 #, c-format
 msgid "path element at position %d is null"
 msgstr "el elemento en la posición %d de la ruta es null"
 
-#: utils/adt/jsonfuncs.c:4792
+#: utils/adt/jsonfuncs.c:4896
 #, c-format
 msgid "cannot replace existing key"
 msgstr "no se puede reemplazar una llave existente"
 
-#: utils/adt/jsonfuncs.c:4793
+#: utils/adt/jsonfuncs.c:4897
 #, c-format
 msgid "Try using the function jsonb_set to replace key value."
 msgstr "Intente usar la función jsonb_set para reemplazar el valor de la llave."
 
-#: utils/adt/jsonfuncs.c:4875
+#: utils/adt/jsonfuncs.c:4979
 #, c-format
 msgid "path element at position %d is not an integer: \"%s\""
 msgstr "el elemento de ruta en la posición %d no es un entero: «%s»"
 
-#: utils/adt/jsonfuncs.c:4994
+#: utils/adt/jsonfuncs.c:5098
 #, c-format
 msgid "wrong flag type, only arrays and scalars are allowed"
 msgstr "indicador de tipo errónea, sólo se permiten arrays y tipos escalares"
 
-#: utils/adt/jsonfuncs.c:5001
+#: utils/adt/jsonfuncs.c:5105
 #, c-format
 msgid "flag array element is not a string"
 msgstr "elemento del array de opciones no es un string"
 
-#: utils/adt/jsonfuncs.c:5002 utils/adt/jsonfuncs.c:5024
+#: utils/adt/jsonfuncs.c:5106 utils/adt/jsonfuncs.c:5128
 #, c-format
 msgid "Possible values are: \"string\", \"numeric\", \"boolean\", \"key\", and \"all\"."
 msgstr "Los valores posibles son: «string», «numeric», «boolean», «key» y «all»."
 
-#: utils/adt/jsonfuncs.c:5022
+#: utils/adt/jsonfuncs.c:5126
 #, c-format
 msgid "wrong flag in flag array: \"%s\""
 msgstr "indicador erróneo en array de indicadores: «%s»"
 
-#: utils/adt/jsonpath.c:360
+#: utils/adt/jsonpath.c:362
 #, c-format
 msgid "@ is not allowed in root expressions"
 msgstr "@ no es permitido en expresiones raíz"
 
-#: utils/adt/jsonpath.c:366
+#: utils/adt/jsonpath.c:368
 #, c-format
 msgid "LAST is allowed only in array subscripts"
 msgstr "LAST sólo está permitido en subíndices de array"
 
-#: utils/adt/jsonpath_exec.c:340
+#: utils/adt/jsonpath_exec.c:360
 #, c-format
 msgid "single boolean result is expected"
 msgstr "se esperaba un único resultado booleano"
 
-#: utils/adt/jsonpath_exec.c:488
+#: utils/adt/jsonpath_exec.c:556
 #, c-format
 msgid "\"vars\" argument is not an object"
 msgstr "el argumento «vars» no es un objeto"
 
-#: utils/adt/jsonpath_exec.c:489
+#: utils/adt/jsonpath_exec.c:557
 #, c-format
 msgid "Jsonpath parameters should be encoded as key-value pairs of \"vars\" object."
 msgstr "Los parámetros jsonpath deben codificarse como pares llave-valor del objeto «vars»."
 
-#: utils/adt/jsonpath_exec.c:605
+#: utils/adt/jsonpath_exec.c:674
 #, c-format
 msgid "JSON object does not contain key \"%s\""
 msgstr "el objeto JSON no contiene la llave «%s»"
 
-#: utils/adt/jsonpath_exec.c:617
+#: utils/adt/jsonpath_exec.c:686
 #, c-format
 msgid "jsonpath member accessor can only be applied to an object"
 msgstr "el método de acceso a un miembro jsonpath sólo puede aplicarse a un objeto"
 
-#: utils/adt/jsonpath_exec.c:646
+#: utils/adt/jsonpath_exec.c:715
 #, c-format
 msgid "jsonpath wildcard array accessor can only be applied to an array"
 msgstr "el método de acceso comodín de array jsonpath sólo puede aplicarse a un array"
 
-#: utils/adt/jsonpath_exec.c:694
+#: utils/adt/jsonpath_exec.c:763
 #, c-format
 msgid "jsonpath array subscript is out of bounds"
 msgstr "subíndice de array jsonpath fuera de los bordes"
 
-#: utils/adt/jsonpath_exec.c:751
+#: utils/adt/jsonpath_exec.c:820
 #, c-format
 msgid "jsonpath array accessor can only be applied to an array"
 msgstr "el método de acceso de array jsonpath sólo puede aplicarse a un array"
 
-#: utils/adt/jsonpath_exec.c:805
+#: utils/adt/jsonpath_exec.c:874
 #, c-format
 msgid "jsonpath wildcard member accessor can only be applied to an object"
 msgstr "el método de acesso comodín de objeto jsonpath sólo puede aplicarse a un objeto"
 
-#: utils/adt/jsonpath_exec.c:935
+#: utils/adt/jsonpath_exec.c:1004
 #, c-format
 msgid "jsonpath item method .%s() can only be applied to an array"
 msgstr "el método de ítem jsonpath .%s() sólo puede aplicase a un array"
 
-#: utils/adt/jsonpath_exec.c:989 utils/adt/jsonpath_exec.c:1010
-#: utils/adt/jsonpath_exec.c:1680
+#: utils/adt/jsonpath_exec.c:1058 utils/adt/jsonpath_exec.c:1079
+#: utils/adt/jsonpath_exec.c:1755
 #, c-format
 msgid "jsonpath item method .%s() can only be applied to a numeric value"
 msgstr "el método de ítem jsonpath .%s() sólo puede aplicarse a un valor numérico"
 
-#: utils/adt/jsonpath_exec.c:1023
+#: utils/adt/jsonpath_exec.c:1092
 #, c-format
 msgid "jsonpath item method .%s() can only be applied to a string or numeric value"
 msgstr "el método de ítem jsonpath .%s() sólo puede aplicarse a un valor numérico o de cadena"
 
-#: utils/adt/jsonpath_exec.c:1507
+#: utils/adt/jsonpath_exec.c:1582
 #, c-format
 msgid "left operand of jsonpath operator %s is not a single numeric value"
 msgstr "el operando izquiero del operador jsonpath %s no es un valor numérico escalar"
 
-#: utils/adt/jsonpath_exec.c:1514
+#: utils/adt/jsonpath_exec.c:1589
 #, c-format
 msgid "right operand of jsonpath operator %s is not a single numeric value"
 msgstr "el operando derecho del operador jsonpath %s no es un valor numérico escalar"
 
-#: utils/adt/jsonpath_exec.c:1582
+#: utils/adt/jsonpath_exec.c:1657
 #, c-format
 msgid "operand of unary jsonpath operator %s is not a numeric value"
 msgstr "el operando del operador jsonpath unario %s no es un valor numérico"
 
-#: utils/adt/jsonpath_exec.c:1739
+#: utils/adt/jsonpath_exec.c:1795
+#, fuzzy, c-format
+#| msgid "jsonpath item method .%s() can only be applied to an array"
+msgid "jsonpath item method .%s() can only be applied to a string"
+msgstr "el método de ítem jsonpath .%s() sólo puede aplicase a un array"
+
+#: utils/adt/jsonpath_exec.c:1883
+#, fuzzy, c-format
+#| msgid "COPY format \"%s\" not recognized"
+msgid "datetime format is not recognized: \"%s\""
+msgstr "el formato de COPY «%s» no es reconocido"
+
+#: utils/adt/jsonpath_exec.c:1885
+#, c-format
+msgid "Use a datetime template argument to specify the input data format."
+msgstr ""
+
+#: utils/adt/jsonpath_exec.c:1953
 #, c-format
 msgid "jsonpath item method .%s() can only be applied to an object"
 msgstr "el método de ítem jsonpath .%s() sólo puede ser aplicado a un objeto"
 
-#: utils/adt/jsonpath_exec.c:1922
+#: utils/adt/jsonpath_exec.c:2136
 #, c-format
 msgid "could not find jsonpath variable \"%s\""
 msgstr "no se pudo encontrar la variable jsonpath «%s»"
 
-#: utils/adt/jsonpath_exec.c:2169
+#: utils/adt/jsonpath_exec.c:2400
 #, c-format
 msgid "jsonpath array subscript is not a single numeric value"
 msgstr "el subíndice de array jsonpath no es un único valor numérico"
 
-#: utils/adt/jsonpath_exec.c:2181
+#: utils/adt/jsonpath_exec.c:2412
 #, c-format
 msgid "jsonpath array subscript is out of integer range"
 msgstr "subíndice de array jsonpath fuera del rango entero"
 
+#: utils/adt/jsonpath_exec.c:2589
+#, c-format
+msgid "cannot convert value from %s to %s without timezone usage"
+msgstr ""
+
+#: utils/adt/jsonpath_exec.c:2591
+#, c-format
+msgid "Use *_tz() function for timezone support."
+msgstr ""
+
 #: utils/adt/levenshtein.c:133
 #, c-format
 msgid "levenshtein argument exceeds maximum length of %d characters"
@@ -22473,7 +22554,7 @@ msgstr "el argumento levenshtein excede el largo máximo de %d caracteres"
 msgid "nondeterministic collations are not supported for LIKE"
 msgstr "los ordenamientos no determinísticos no están soportados para LIKE"
 
-#: utils/adt/like.c:193 utils/adt/like_support.c:964
+#: utils/adt/like.c:193 utils/adt/like_support.c:1004
 #, c-format
 msgid "could not determine which collation to use for ILIKE"
 msgstr "no se pudo determinar qué ordenamiento (collation) usar para ILIKE"
@@ -22483,36 +22564,31 @@ msgstr "no se pudo determinar qué ordenamiento (collation) usar para ILIKE"
 msgid "nondeterministic collations are not supported for ILIKE"
 msgstr "los ordenamientos no determinísticos no están soportados para ILIKE"
 
-#: utils/adt/like_match.c:107 utils/adt/like_match.c:167
+#: utils/adt/like_match.c:108 utils/adt/like_match.c:168
 #, c-format
 msgid "LIKE pattern must not end with escape character"
 msgstr "el patrón de LIKE debe no terminar con un carácter de escape"
 
-#: utils/adt/like_match.c:292 utils/adt/regexp.c:702
+#: utils/adt/like_match.c:293 utils/adt/regexp.c:700
 #, c-format
 msgid "invalid escape string"
 msgstr "cadena de escape no válida"
 
-#: utils/adt/like_match.c:293 utils/adt/regexp.c:703
+#: utils/adt/like_match.c:294 utils/adt/regexp.c:701
 #, c-format
 msgid "Escape string must be empty or one character."
 msgstr "La cadena de escape debe ser vacía o un carácter."
 
-#: utils/adt/like_support.c:949
+#: utils/adt/like_support.c:989
 #, c-format
 msgid "case insensitive matching not supported on type bytea"
 msgstr "no está soportada la comparación insensible a mayúsculas en bytea"
 
-#: utils/adt/like_support.c:1051
+#: utils/adt/like_support.c:1091
 #, c-format
 msgid "regular-expression matching not supported on type bytea"
 msgstr "no está soportada la comparación con expresiones regulares en bytea"
 
-#: utils/adt/lockfuncs.c:664
-#, c-format
-msgid "cannot use advisory locks during a parallel operation"
-msgstr "no se pueden usar locks consultivos durante una operación paralela"
-
 #: utils/adt/mac.c:102
 #, c-format
 msgid "invalid octet value in \"macaddr\" value: \"%s\""
@@ -22528,225 +22604,225 @@ msgstr "datos macaddr8 fuera de rango para convertir a macaddr"
 msgid "Only addresses that have FF and FE as values in the 4th and 5th bytes from the left, for example xx:xx:xx:ff:fe:xx:xx:xx, are eligible to be converted from macaddr8 to macaddr."
 msgstr "Sólo las direcciones que tienen FF y FF como valores en el cuarto y quinto bytes desde la izquierda, por ejemplo xx:xx:xx:ff:fe:xx:xx:xx se pueden convertir de macaddr8 a macaddr."
 
-#: utils/adt/misc.c:225
+#: utils/adt/misc.c:239
 #, c-format
 msgid "global tablespace never has databases"
 msgstr "el tablespace global nunca tiene bases de datos"
 
-#: utils/adt/misc.c:246
+#: utils/adt/misc.c:261
 #, c-format
 msgid "%u is not a tablespace OID"
 msgstr "%u no es un OID de tablespace"
 
-#: utils/adt/misc.c:435
+#: utils/adt/misc.c:447
 msgid "unreserved"
 msgstr "no reservado"
 
-#: utils/adt/misc.c:439
+#: utils/adt/misc.c:451
 msgid "unreserved (cannot be function or type name)"
 msgstr "no reservado (no puede ser nombre de función o de tipo)"
 
-#: utils/adt/misc.c:443
+#: utils/adt/misc.c:455
 msgid "reserved (can be function or type name)"
 msgstr "reservado (puede ser nombre de función o de tipo)"
 
-#: utils/adt/misc.c:447
+#: utils/adt/misc.c:459
 msgid "reserved"
 msgstr "reservado"
 
-#: utils/adt/misc.c:621 utils/adt/misc.c:635 utils/adt/misc.c:674
-#: utils/adt/misc.c:680 utils/adt/misc.c:686 utils/adt/misc.c:709
+#: utils/adt/misc.c:633 utils/adt/misc.c:647 utils/adt/misc.c:686
+#: utils/adt/misc.c:692 utils/adt/misc.c:698 utils/adt/misc.c:721
 #, c-format
 msgid "string is not a valid identifier: \"%s\""
 msgstr "la cadena no es un identificador válido: «%s»"
 
-#: utils/adt/misc.c:623
+#: utils/adt/misc.c:635
 #, c-format
 msgid "String has unclosed double quotes."
 msgstr "La cadena tiene comillas dobles sin cerrar."
 
-#: utils/adt/misc.c:637
+#: utils/adt/misc.c:649
 #, c-format
 msgid "Quoted identifier must not be empty."
 msgstr "El identificador en comillas no debe ser vacío."
 
-#: utils/adt/misc.c:676
+#: utils/adt/misc.c:688
 #, c-format
 msgid "No valid identifier before \".\"."
 msgstr "No hay un identificador válido antes de «.»."
 
-#: utils/adt/misc.c:682
+#: utils/adt/misc.c:694
 #, c-format
 msgid "No valid identifier after \".\"."
 msgstr "No hay un identificador válido después de «.»."
 
-#: utils/adt/misc.c:743
+#: utils/adt/misc.c:755
 #, c-format
 msgid "log format \"%s\" is not supported"
 msgstr "el formato de log «%s» no está soportado"
 
-#: utils/adt/misc.c:744
+#: utils/adt/misc.c:756
 #, c-format
 msgid "The supported log formats are \"stderr\" and \"csvlog\"."
 msgstr "Los formatos de registro admitidos son \"stderr\" y \"csvlog\"."
 
-#: utils/adt/network.c:85
+#: utils/adt/network.c:111
 #, c-format
 msgid "invalid cidr value: \"%s\""
 msgstr "valor cidr no válido: «%s»"
 
-#: utils/adt/network.c:86 utils/adt/network.c:216
+#: utils/adt/network.c:112 utils/adt/network.c:242
 #, c-format
 msgid "Value has bits set to right of mask."
 msgstr "El valor tiene bits definidos a la derecha de la máscara"
 
-#: utils/adt/network.c:127 utils/adt/network.c:800 utils/adt/network.c:825
-#: utils/adt/network.c:850
+#: utils/adt/network.c:153 utils/adt/network.c:1199 utils/adt/network.c:1224
+#: utils/adt/network.c:1249
 #, c-format
 msgid "could not format inet value: %m"
 msgstr "no se pudo dar formato al valor inet: %m"
 
 #. translator: %s is inet or cidr
-#: utils/adt/network.c:184
+#: utils/adt/network.c:210
 #, c-format
 msgid "invalid address family in external \"%s\" value"
 msgstr "familia de dirección no válida en valor «%s» externo"
 
 #. translator: %s is inet or cidr
-#: utils/adt/network.c:191
+#: utils/adt/network.c:217
 #, c-format
 msgid "invalid bits in external \"%s\" value"
 msgstr "bits no válidos en valor «%s» externo"
 
 #. translator: %s is inet or cidr
-#: utils/adt/network.c:200
+#: utils/adt/network.c:226
 #, c-format
 msgid "invalid length in external \"%s\" value"
 msgstr "largo no válido en valor «%s» externo"
 
-#: utils/adt/network.c:215
+#: utils/adt/network.c:241
 #, c-format
 msgid "invalid external \"cidr\" value"
 msgstr "valor externo «cidr» no válido"
 
-#: utils/adt/network.c:311 utils/adt/network.c:334
+#: utils/adt/network.c:337 utils/adt/network.c:360
 #, c-format
 msgid "invalid mask length: %d"
 msgstr "largo de máscara no válido: %d"
 
-#: utils/adt/network.c:868
+#: utils/adt/network.c:1267
 #, c-format
 msgid "could not format cidr value: %m"
 msgstr "no se pudo dar formato al valor cidr: %m"
 
-#: utils/adt/network.c:1101
+#: utils/adt/network.c:1500
 #, c-format
 msgid "cannot merge addresses from different families"
 msgstr "no se pueden mezclar direcciones de familias diferentes"
 
-#: utils/adt/network.c:1517
+#: utils/adt/network.c:1916
 #, c-format
 msgid "cannot AND inet values of different sizes"
 msgstr "no se puede hacer AND entre valores inet de distintos tamaños"
 
-#: utils/adt/network.c:1549
+#: utils/adt/network.c:1948
 #, c-format
 msgid "cannot OR inet values of different sizes"
 msgstr "no se puede hacer OR entre valores inet de distintos tamaños"
 
-#: utils/adt/network.c:1610 utils/adt/network.c:1686
+#: utils/adt/network.c:2009 utils/adt/network.c:2085
 #, c-format
 msgid "result is out of range"
 msgstr "resultado fuera de rango"
 
-#: utils/adt/network.c:1651
+#: utils/adt/network.c:2050
 #, c-format
 msgid "cannot subtract inet values of different sizes"
 msgstr "no se puede sustraer valores inet de distintos tamaños"
 
-#: utils/adt/numeric.c:833
+#: utils/adt/numeric.c:827
 #, c-format
 msgid "invalid sign in external \"numeric\" value"
 msgstr "el signo no es válido en el valor «numeric» externo"
 
-#: utils/adt/numeric.c:839
+#: utils/adt/numeric.c:833
 #, c-format
 msgid "invalid scale in external \"numeric\" value"
 msgstr "la escala no es válida en el valor «numeric» externo"
 
-#: utils/adt/numeric.c:848
+#: utils/adt/numeric.c:842
 #, c-format
 msgid "invalid digit in external \"numeric\" value"
 msgstr "hay un dígito no válido en el valor «numeric» externo"
 
-#: utils/adt/numeric.c:1046 utils/adt/numeric.c:1060
+#: utils/adt/numeric.c:1040 utils/adt/numeric.c:1054
 #, c-format
 msgid "NUMERIC precision %d must be between 1 and %d"
 msgstr "la precisión %d de NUMERIC debe estar entre 1 y %d"
 
-#: utils/adt/numeric.c:1051
+#: utils/adt/numeric.c:1045
 #, c-format
 msgid "NUMERIC scale %d must be between 0 and precision %d"
 msgstr "la escala de NUMERIC, %d, debe estar entre 0 y la precisión %d"
 
-#: utils/adt/numeric.c:1069
+#: utils/adt/numeric.c:1063
 #, c-format
 msgid "invalid NUMERIC type modifier"
 msgstr "modificador de tipo NUMERIC no es válido"
 
-#: utils/adt/numeric.c:1401
+#: utils/adt/numeric.c:1395
 #, c-format
 msgid "start value cannot be NaN"
 msgstr "el valor de inicio no puede ser NaN"
 
-#: utils/adt/numeric.c:1406
+#: utils/adt/numeric.c:1400
 #, c-format
 msgid "stop value cannot be NaN"
 msgstr "el valor de término no puede ser NaN"
 
-#: utils/adt/numeric.c:1416
+#: utils/adt/numeric.c:1410
 #, c-format
 msgid "step size cannot be NaN"
 msgstr "el tamaño de paso no puede ser NaN"
 
-#: utils/adt/numeric.c:2857 utils/adt/numeric.c:5869 utils/adt/numeric.c:6324
-#: utils/adt/numeric.c:8046 utils/adt/numeric.c:8471 utils/adt/numeric.c:8585
-#: utils/adt/numeric.c:8658
+#: utils/adt/numeric.c:2958 utils/adt/numeric.c:6064 utils/adt/numeric.c:6522
+#: utils/adt/numeric.c:8802 utils/adt/numeric.c:9240 utils/adt/numeric.c:9354
+#: utils/adt/numeric.c:9427
 #, c-format
 msgid "value overflows numeric format"
 msgstr "el valor excede el formato numeric"
 
-#: utils/adt/numeric.c:3222
+#: utils/adt/numeric.c:3417
 #, c-format
 msgid "cannot convert NaN to integer"
 msgstr "no se puede convertir NaN a entero"
 
-#: utils/adt/numeric.c:3305
+#: utils/adt/numeric.c:3500
 #, c-format
 msgid "cannot convert NaN to bigint"
 msgstr "no se puede convertir NaN a bigint"
 
-#: utils/adt/numeric.c:3350
+#: utils/adt/numeric.c:3545
 #, c-format
 msgid "cannot convert NaN to smallint"
 msgstr "no se puede convertir NaN a smallint"
 
-#: utils/adt/numeric.c:3387 utils/adt/numeric.c:3458
+#: utils/adt/numeric.c:3582 utils/adt/numeric.c:3653
 #, c-format
 msgid "cannot convert infinity to numeric"
 msgstr "no se puede convertir infinito a numeric"
 
-#: utils/adt/numeric.c:6408
+#: utils/adt/numeric.c:6606
 #, c-format
 msgid "numeric field overflow"
 msgstr "desbordamiento de campo numeric"
 
-#: utils/adt/numeric.c:6409
+#: utils/adt/numeric.c:6607
 #, c-format
 msgid "A field with precision %d, scale %d must round to an absolute value less than %s%d."
 msgstr "Un campo con precisión %d, escala %d debe redondear a un valor absoluto menor que %s%d."
 
-#: utils/adt/numutils.c:90
+#: utils/adt/numutils.c:154
 #, c-format
 msgid "value \"%s\" is out of range for 8-bit integer"
 msgstr "el valor «%s» está fuera de rango para un entero de 8 bits"
@@ -22756,22 +22832,22 @@ msgstr "el valor «%s» está fuera de rango para un entero de 8 bits"
 msgid "invalid oidvector data"
 msgstr "datos de oidvector no válidos"
 
-#: utils/adt/oracle_compat.c:896
+#: utils/adt/oracle_compat.c:895
 #, c-format
 msgid "requested character too large"
 msgstr "el carácter solicitado es demasiado grande"
 
-#: utils/adt/oracle_compat.c:946 utils/adt/oracle_compat.c:1008
+#: utils/adt/oracle_compat.c:945 utils/adt/oracle_compat.c:1007
 #, c-format
 msgid "requested character too large for encoding: %d"
 msgstr "el carácter pedido es demasiado largo para el encoding: %d"
 
-#: utils/adt/oracle_compat.c:987
+#: utils/adt/oracle_compat.c:986
 #, c-format
 msgid "requested character not valid for encoding: %d"
 msgstr "el carácter pedido no es válido para el encoding: %d"
 
-#: utils/adt/oracle_compat.c:1001
+#: utils/adt/oracle_compat.c:1000
 #, c-format
 msgid "null character not permitted"
 msgstr "el carácter nulo no está permitido"
@@ -22782,89 +22858,100 @@ msgstr "el carácter nulo no está permitido"
 msgid "percentile value %g is not between 0 and 1"
 msgstr "el valor de percentil %g no está entre 0 y 1"
 
-#: utils/adt/pg_locale.c:1097
+#: utils/adt/pg_locale.c:1262
 #, c-format
 msgid "Apply system library package updates."
 msgstr "Aplique actualizaciones de paquetes de bibliotecas del sistema."
 
-#: utils/adt/pg_locale.c:1312
+#: utils/adt/pg_locale.c:1477
 #, c-format
 msgid "could not create locale \"%s\": %m"
 msgstr "no se pudo crear la configuración regional «%s»: %m"
 
-#: utils/adt/pg_locale.c:1315
+#: utils/adt/pg_locale.c:1480
 #, c-format
 msgid "The operating system could not find any locale data for the locale name \"%s\"."
 msgstr "El sistema operativo no pudo encontrar datos de configuración regional para la configuración «%s»."
 
-#: utils/adt/pg_locale.c:1417
+#: utils/adt/pg_locale.c:1582
 #, c-format
 msgid "collations with different collate and ctype values are not supported on this platform"
 msgstr "los ordenamientos (collation) con valores collate y ctype diferentes no están soportados en esta plataforma"
 
-#: utils/adt/pg_locale.c:1426
+#: utils/adt/pg_locale.c:1591
 #, c-format
 msgid "collation provider LIBC is not supported on this platform"
 msgstr "el proveedor de ordenamientos LIBC no está soportado en esta plataforma"
 
-#: utils/adt/pg_locale.c:1438
+#: utils/adt/pg_locale.c:1603
 #, c-format
 msgid "collations with different collate and ctype values are not supported by ICU"
 msgstr "los ordenamientos (collation) con valores collate y ctype diferentes no están soportados por ICU"
 
-#: utils/adt/pg_locale.c:1444 utils/adt/pg_locale.c:1535
-#: utils/adt/pg_locale.c:1753
+#: utils/adt/pg_locale.c:1609 utils/adt/pg_locale.c:1696
+#: utils/adt/pg_locale.c:1969
 #, c-format
 msgid "could not open collator for locale \"%s\": %s"
 msgstr "no se pudo abrir el «collator» para la configuración regional «%s»: %s"
 
-#: utils/adt/pg_locale.c:1458
+#: utils/adt/pg_locale.c:1623
 #, c-format
 msgid "ICU is not supported in this build"
 msgstr "ICU no está soportado en este servidor"
 
-#: utils/adt/pg_locale.c:1459
+#: utils/adt/pg_locale.c:1624
 #, c-format
 msgid "You need to rebuild PostgreSQL using --with-icu."
 msgstr "Necesita reconstruir PostgreSQL usando --with-icu."
 
-#: utils/adt/pg_locale.c:1479
+#: utils/adt/pg_locale.c:1644
 #, c-format
 msgid "collation \"%s\" has no actual version, but a version was specified"
 msgstr "la extensión «%s» no tiene versión actual, pero se especificó una versión"
 
-#: utils/adt/pg_locale.c:1486
+#: utils/adt/pg_locale.c:1651
 #, c-format
 msgid "collation \"%s\" has version mismatch"
 msgstr "el ordenamiento (collation) «%s» tiene una discordancia de versión"
 
-#: utils/adt/pg_locale.c:1488
+#: utils/adt/pg_locale.c:1653
 #, c-format
 msgid "The collation in the database was created using version %s, but the operating system provides version %s."
 msgstr "El ordenamiento en la base de datos fue creado usando la versión %s, pero el sistema operativo provee la versión %s."
 
-#: utils/adt/pg_locale.c:1491
+#: utils/adt/pg_locale.c:1656
 #, c-format
 msgid "Rebuild all objects affected by this collation and run ALTER COLLATION %s REFRESH VERSION, or build PostgreSQL with the right library version."
 msgstr "Reconstruya todos los objetos afectados por este ordenamiento y ejecute ALTER COLLATION %s REFRESH VERSION, o construya PostgreSQL con la versión correcta de la biblioteca."
 
-#: utils/adt/pg_locale.c:1575
+#: utils/adt/pg_locale.c:1747
+#, fuzzy, c-format
+#| msgid "could not start process for command \"%s\": error code %lu"
+msgid "could not get collation version for locale \"%s\": error code %lu"
+msgstr "no se pudo iniciar el proceso para la orden «%s»: código de error %lu"
+
+#: utils/adt/pg_locale.c:1784
+#, c-format
+msgid "encoding \"%s\" not supported by ICU"
+msgstr "la codificación «%s» no estæ soportada por ICU"
+
+#: utils/adt/pg_locale.c:1791
 #, c-format
 msgid "could not open ICU converter for encoding \"%s\": %s"
 msgstr "no se pudo abrir el conversor ICU para la codificación «%s»: %s"
 
-#: utils/adt/pg_locale.c:1606 utils/adt/pg_locale.c:1615
-#: utils/adt/pg_locale.c:1644 utils/adt/pg_locale.c:1654
+#: utils/adt/pg_locale.c:1822 utils/adt/pg_locale.c:1831
+#: utils/adt/pg_locale.c:1860 utils/adt/pg_locale.c:1870
 #, c-format
 msgid "%s failed: %s"
 msgstr "%s falló: %s"
 
-#: utils/adt/pg_locale.c:1926
+#: utils/adt/pg_locale.c:2142
 #, c-format
 msgid "invalid multibyte character for locale"
 msgstr "el carácter multibyte no es válido para esta configuración regional"
 
-#: utils/adt/pg_locale.c:1927
+#: utils/adt/pg_locale.c:2143
 #, c-format
 msgid "The server's LC_CTYPE locale is probably incompatible with the database encoding."
 msgstr "La configuración regional LC_CTYPE del servidor es probablemente incompatible con la codificación de la base de datos."
@@ -22874,31 +22961,26 @@ msgstr "La configuración regional LC_CTYPE del servidor es probablemente incomp
 msgid "function can only be called when server is in binary upgrade mode"
 msgstr "la función sólo puede invocarse cuando el servidor está en modo de actualización binaria"
 
-#: utils/adt/pgstatfuncs.c:479
+#: utils/adt/pgstatfuncs.c:500
 #, c-format
 msgid "invalid command name: \"%s\""
 msgstr "nombre de orden no válido: «%s»"
 
-#: utils/adt/pseudotypes.c:247
+#: utils/adt/pseudotypes.c:57 utils/adt/pseudotypes.c:91
+#, c-format
+msgid "cannot display a value of type %s"
+msgstr "no se puede desplegar un valor de tipo %s"
+
+#: utils/adt/pseudotypes.c:283
 #, c-format
 msgid "cannot accept a value of a shell type"
 msgstr "no se puede aceptar un valor de un tipo inconcluso"
 
-#: utils/adt/pseudotypes.c:260
+#: utils/adt/pseudotypes.c:293
 #, c-format
 msgid "cannot display a value of a shell type"
 msgstr "no se puede desplegar un valor de un tipo inconcluso"
 
-#: utils/adt/pseudotypes.c:350 utils/adt/pseudotypes.c:376
-#, c-format
-msgid "cannot output a value of type %s"
-msgstr "no se puede desplegar un valor de tipo %s"
-
-#: utils/adt/pseudotypes.c:403
-#, c-format
-msgid "cannot display a value of type %s"
-msgstr "no se puede desplegar un valor de tipo %s"
-
 #: utils/adt/rangetypes.c:406
 #, c-format
 msgid "range constructor flags argument must not be null"
@@ -22964,7 +23046,7 @@ msgstr "Demasiadas comas."
 msgid "Junk after right parenthesis or bracket."
 msgstr "Basura después del paréntesis o corchete derecho."
 
-#: utils/adt/regexp.c:289 utils/adt/regexp.c:1490 utils/adt/varlena.c:4451
+#: utils/adt/regexp.c:289 utils/adt/regexp.c:1543 utils/adt/varlena.c:4493
 #, c-format
 msgid "regular expression failed: %s"
 msgstr "la expresión regular falló: %s"
@@ -22974,147 +23056,162 @@ msgstr "la expresión regular falló: %s"
 msgid "invalid regular expression option: \"%c\""
 msgstr "opción de expresión regular no válida: «%c»"
 
-#: utils/adt/regexp.c:838
+#: utils/adt/regexp.c:836
 #, c-format
 msgid "SQL regular expression may not contain more than two escape-double-quote separators"
 msgstr "la expresión regular SQL no puede contener más de dos separadores escape-comilla doble"
 
 #. translator: %s is a SQL function name
-#: utils/adt/regexp.c:924 utils/adt/regexp.c:1307 utils/adt/regexp.c:1362
+#: utils/adt/regexp.c:981 utils/adt/regexp.c:1363 utils/adt/regexp.c:1418
 #, c-format
 msgid "%s does not support the \"global\" option"
 msgstr "%s no soporta la opción «global»"
 
-#: utils/adt/regexp.c:926
+#: utils/adt/regexp.c:983
 #, c-format
 msgid "Use the regexp_matches function instead."
 msgstr "En su lugar, utilice la función regexp_matches."
 
-#: utils/adt/regexp.c:1108
+#: utils/adt/regexp.c:1165
 #, c-format
 msgid "too many regular expression matches"
 msgstr "demasiadas coincidencias de la expresión regular"
 
-#: utils/adt/regproc.c:106
+#: utils/adt/regproc.c:107
 #, c-format
 msgid "more than one function named \"%s\""
 msgstr "existe más de una función llamada «%s»"
 
-#: utils/adt/regproc.c:524
+#: utils/adt/regproc.c:525
 #, c-format
 msgid "more than one operator named %s"
 msgstr "existe más de un operador llamado %s"
 
-#: utils/adt/regproc.c:696 utils/adt/regproc.c:737 utils/adt/regproc.c:1865
-#: utils/adt/ruleutils.c:9210 utils/adt/ruleutils.c:9378
+#: utils/adt/regproc.c:692 utils/adt/regproc.c:733 gram.y:8228
+#, c-format
+msgid "missing argument"
+msgstr "falta un argumento"
+
+#: utils/adt/regproc.c:693 utils/adt/regproc.c:734 gram.y:8229
+#, c-format
+msgid "Use NONE to denote the missing argument of a unary operator."
+msgstr "Use NONE para denotar el argumento faltante de un operador unario."
+
+#: utils/adt/regproc.c:697 utils/adt/regproc.c:738 utils/adt/regproc.c:2018
+#: utils/adt/ruleutils.c:9299 utils/adt/ruleutils.c:9468
 #, c-format
 msgid "too many arguments"
 msgstr "demasiados argumentos"
 
-#: utils/adt/regproc.c:697 utils/adt/regproc.c:738
+#: utils/adt/regproc.c:698 utils/adt/regproc.c:739
 #, c-format
 msgid "Provide two argument types for operator."
 msgstr "Provea dos tipos de argumento para un operador."
 
-#: utils/adt/regproc.c:1449 utils/adt/regproc.c:1473 utils/adt/regproc.c:1574
-#: utils/adt/regproc.c:1598 utils/adt/regproc.c:1700 utils/adt/regproc.c:1705
-#: utils/adt/varlena.c:3600 utils/adt/varlena.c:3605
+#: utils/adt/regproc.c:1602 utils/adt/regproc.c:1626 utils/adt/regproc.c:1727
+#: utils/adt/regproc.c:1751 utils/adt/regproc.c:1853 utils/adt/regproc.c:1858
+#: utils/adt/varlena.c:3642 utils/adt/varlena.c:3647
 #, c-format
 msgid "invalid name syntax"
 msgstr "la sintaxis de nombre no es válida"
 
-#: utils/adt/regproc.c:1763
+#: utils/adt/regproc.c:1916
 #, c-format
 msgid "expected a left parenthesis"
 msgstr "se esperaba un paréntesis izquierdo"
 
-#: utils/adt/regproc.c:1779
+#: utils/adt/regproc.c:1932
 #, c-format
 msgid "expected a right parenthesis"
 msgstr "se esperaba un paréntesis derecho"
 
-#: utils/adt/regproc.c:1798
+#: utils/adt/regproc.c:1951
 #, c-format
 msgid "expected a type name"
 msgstr "se esperaba un nombre de tipo"
 
-#: utils/adt/regproc.c:1830
+#: utils/adt/regproc.c:1983
 #, c-format
 msgid "improper type name"
 msgstr "el nombre de tipo no es válido"
 
-#: utils/adt/ri_triggers.c:298 utils/adt/ri_triggers.c:1534
-#: utils/adt/ri_triggers.c:2465
+#: utils/adt/ri_triggers.c:296 utils/adt/ri_triggers.c:1532
+#: utils/adt/ri_triggers.c:2460
 #, c-format
 msgid "insert or update on table \"%s\" violates foreign key constraint \"%s\""
 msgstr "inserción o actualización en la tabla «%s» viola la llave foránea «%s»"
 
-#: utils/adt/ri_triggers.c:301 utils/adt/ri_triggers.c:1537
+#: utils/adt/ri_triggers.c:299 utils/adt/ri_triggers.c:1535
 #, c-format
 msgid "MATCH FULL does not allow mixing of null and nonnull key values."
 msgstr "MATCH FULL no permite la mezcla de valores de clave nulos y no nulos."
 
-#: utils/adt/ri_triggers.c:1932
+#: utils/adt/ri_triggers.c:1930
 #, c-format
 msgid "function \"%s\" must be fired for INSERT"
 msgstr "la función «%s» debe ser ejecutada en INSERT"
 
-#: utils/adt/ri_triggers.c:1938
+#: utils/adt/ri_triggers.c:1936
 #, c-format
 msgid "function \"%s\" must be fired for UPDATE"
 msgstr "la función «%s» debe ser ejecutada en UPDATE"
 
-#: utils/adt/ri_triggers.c:1944
+#: utils/adt/ri_triggers.c:1942
 #, c-format
 msgid "function \"%s\" must be fired for DELETE"
 msgstr "la función «%s» debe ser ejecutada en DELETE"
 
-#: utils/adt/ri_triggers.c:1967
+#: utils/adt/ri_triggers.c:1965
 #, c-format
 msgid "no pg_constraint entry for trigger \"%s\" on table \"%s\""
 msgstr "no hay una entrada en pg_constraint para el trigger «%s» en tabla «%s»"
 
-#: utils/adt/ri_triggers.c:1969
+#: utils/adt/ri_triggers.c:1967
 #, c-format
 msgid "Remove this referential integrity trigger and its mates, then do ALTER TABLE ADD CONSTRAINT."
 msgstr "Elimine este trigger de integridad referencial y sus pares, y utilice ALTER TABLE ADD CONSTRAINT."
 
-#: utils/adt/ri_triggers.c:2291
+#: utils/adt/ri_triggers.c:1997 gram.y:3819
+#, c-format
+msgid "MATCH PARTIAL not yet implemented"
+msgstr "MATCH PARTIAL no está implementada"
+
+#: utils/adt/ri_triggers.c:2285
 #, c-format
 msgid "referential integrity query on \"%s\" from constraint \"%s\" on \"%s\" gave unexpected result"
 msgstr "la consulta de integridad referencial en «%s» de la restricción «%s» en «%s» entregó un resultado inesperado"
 
-#: utils/adt/ri_triggers.c:2295
+#: utils/adt/ri_triggers.c:2289
 #, c-format
 msgid "This is most likely due to a rule having rewritten the query."
 msgstr "Esto probablemente es causado por una regla que reescribió la consulta."
 
-#: utils/adt/ri_triggers.c:2456
+#: utils/adt/ri_triggers.c:2450
 #, c-format
 msgid "removing partition \"%s\" violates foreign key constraint \"%s\""
 msgstr "eliminar la partición «%s» viola la llave foránea «%s»"
 
-#: utils/adt/ri_triggers.c:2459 utils/adt/ri_triggers.c:2483
+#: utils/adt/ri_triggers.c:2453 utils/adt/ri_triggers.c:2478
 #, c-format
 msgid "Key (%s)=(%s) is still referenced from table \"%s\"."
 msgstr "La llave (%s)=(%s) todavía es referida desde la tabla «%s»."
 
-#: utils/adt/ri_triggers.c:2469
+#: utils/adt/ri_triggers.c:2464
 #, c-format
 msgid "Key (%s)=(%s) is not present in table \"%s\"."
 msgstr "La llave (%s)=(%s) no está presente en la tabla «%s»."
 
-#: utils/adt/ri_triggers.c:2472
+#: utils/adt/ri_triggers.c:2467
 #, c-format
 msgid "Key is not present in table \"%s\"."
 msgstr "La llave no está presente en la tabla «%s»."
 
-#: utils/adt/ri_triggers.c:2478
+#: utils/adt/ri_triggers.c:2473
 #, c-format
 msgid "update or delete on table \"%s\" violates foreign key constraint \"%s\" on table \"%s\""
 msgstr "update o delete en «%s» viola la llave foránea «%s» en la tabla «%s»"
 
-#: utils/adt/ri_triggers.c:2486
+#: utils/adt/ri_triggers.c:2481
 #, c-format
 msgid "Key is still referenced from table \"%s\"."
 msgstr "La llave todavía es referida desde la tabla «%s»."
@@ -23165,142 +23262,142 @@ msgstr "tipo de dato erróneo: %u, se esperaba %u"
 msgid "improper binary format in record column %d"
 msgstr "formato binario incorrecto en la columna record %d"
 
-#: utils/adt/rowtypes.c:911 utils/adt/rowtypes.c:1155 utils/adt/rowtypes.c:1414
-#: utils/adt/rowtypes.c:1658
+#: utils/adt/rowtypes.c:911 utils/adt/rowtypes.c:1157 utils/adt/rowtypes.c:1415
+#: utils/adt/rowtypes.c:1661
 #, c-format
 msgid "cannot compare dissimilar column types %s and %s at record column %d"
 msgstr "no se pueden comparar los tipos de columnas disímiles %s y %s en la columna %d"
 
-#: utils/adt/rowtypes.c:1000 utils/adt/rowtypes.c:1226
-#: utils/adt/rowtypes.c:1509 utils/adt/rowtypes.c:1694
+#: utils/adt/rowtypes.c:1002 utils/adt/rowtypes.c:1227
+#: utils/adt/rowtypes.c:1512 utils/adt/rowtypes.c:1697
 #, c-format
 msgid "cannot compare record types with different numbers of columns"
 msgstr "no se pueden comparar registros con cantidad distinta de columnas"
 
-#: utils/adt/ruleutils.c:4885
+#: utils/adt/ruleutils.c:4821
 #, c-format
 msgid "rule \"%s\" has unsupported event type %d"
 msgstr "la regla «%s» tiene el tipo de evento no soportado %d"
 
-#: utils/adt/timestamp.c:107
+#: utils/adt/timestamp.c:106
 #, c-format
 msgid "TIMESTAMP(%d)%s precision must not be negative"
 msgstr "la precisión de TIMESTAMP(%d)%s no debe ser negativa"
 
-#: utils/adt/timestamp.c:113
+#: utils/adt/timestamp.c:112
 #, c-format
 msgid "TIMESTAMP(%d)%s precision reduced to maximum allowed, %d"
 msgstr "la precisión de TIMESTAMP(%d)%s fue reducida al máximo permitido, %d"
 
-#: utils/adt/timestamp.c:176 utils/adt/timestamp.c:419 utils/misc/guc.c:11607
+#: utils/adt/timestamp.c:175 utils/adt/timestamp.c:433 utils/misc/guc.c:11911
 #, c-format
 msgid "timestamp out of range: \"%s\""
 msgstr "timestamp fuera de rango: «%s»"
 
-#: utils/adt/timestamp.c:365
+#: utils/adt/timestamp.c:371
 #, c-format
 msgid "timestamp(%d) precision must be between %d and %d"
 msgstr "la precisión de timestamp(%d) debe estar entre %d y %d"
 
-#: utils/adt/timestamp.c:481
+#: utils/adt/timestamp.c:495
 #, c-format
 msgid "Numeric time zones must have \"-\" or \"+\" as first character."
 msgstr "Los husos horarios numéricos deben tener «-» o «+» como su primer carácter."
 
-#: utils/adt/timestamp.c:494
+#: utils/adt/timestamp.c:508
 #, c-format
 msgid "numeric time zone \"%s\" out of range"
 msgstr "el huso horario numérico «%s» está fuera de rango"
 
-#: utils/adt/timestamp.c:596 utils/adt/timestamp.c:606
-#: utils/adt/timestamp.c:614
+#: utils/adt/timestamp.c:610 utils/adt/timestamp.c:620
+#: utils/adt/timestamp.c:628
 #, c-format
 msgid "timestamp out of range: %d-%02d-%02d %d:%02d:%02g"
 msgstr "timestamp fuera de rango: %d-%02d-%02d %d:%02d:%02g"
 
-#: utils/adt/timestamp.c:715
+#: utils/adt/timestamp.c:729
 #, c-format
 msgid "timestamp cannot be NaN"
 msgstr "el timestamp no puede ser NaN"
 
-#: utils/adt/timestamp.c:733 utils/adt/timestamp.c:745
+#: utils/adt/timestamp.c:747 utils/adt/timestamp.c:759
 #, c-format
 msgid "timestamp out of range: \"%g\""
 msgstr "timestamp fuera de rango: «%g»"
 
-#: utils/adt/timestamp.c:930 utils/adt/timestamp.c:1504
-#: utils/adt/timestamp.c:1937 utils/adt/timestamp.c:3035
-#: utils/adt/timestamp.c:3040 utils/adt/timestamp.c:3045
-#: utils/adt/timestamp.c:3095 utils/adt/timestamp.c:3102
-#: utils/adt/timestamp.c:3109 utils/adt/timestamp.c:3129
-#: utils/adt/timestamp.c:3136 utils/adt/timestamp.c:3143
-#: utils/adt/timestamp.c:3173 utils/adt/timestamp.c:3181
-#: utils/adt/timestamp.c:3225 utils/adt/timestamp.c:3652
-#: utils/adt/timestamp.c:3777 utils/adt/timestamp.c:4237
+#: utils/adt/timestamp.c:944 utils/adt/timestamp.c:1518
+#: utils/adt/timestamp.c:1953 utils/adt/timestamp.c:3051
+#: utils/adt/timestamp.c:3056 utils/adt/timestamp.c:3061
+#: utils/adt/timestamp.c:3111 utils/adt/timestamp.c:3118
+#: utils/adt/timestamp.c:3125 utils/adt/timestamp.c:3145
+#: utils/adt/timestamp.c:3152 utils/adt/timestamp.c:3159
+#: utils/adt/timestamp.c:3189 utils/adt/timestamp.c:3197
+#: utils/adt/timestamp.c:3241 utils/adt/timestamp.c:3668
+#: utils/adt/timestamp.c:3793 utils/adt/timestamp.c:4253
 #, c-format
 msgid "interval out of range"
 msgstr "interval fuera de rango"
 
-#: utils/adt/timestamp.c:1057 utils/adt/timestamp.c:1090
+#: utils/adt/timestamp.c:1071 utils/adt/timestamp.c:1104
 #, c-format
 msgid "invalid INTERVAL type modifier"
 msgstr "modificador de tipo INTERVAL no válido"
 
-#: utils/adt/timestamp.c:1073
+#: utils/adt/timestamp.c:1087
 #, c-format
 msgid "INTERVAL(%d) precision must not be negative"
 msgstr "la precisión de INTERVAL(%d) no debe ser negativa"
 
-#: utils/adt/timestamp.c:1079
+#: utils/adt/timestamp.c:1093
 #, c-format
 msgid "INTERVAL(%d) precision reduced to maximum allowed, %d"
 msgstr "la precisión de INTERVAL(%d) fue reducida al máximo permitido, %d"
 
-#: utils/adt/timestamp.c:1461
+#: utils/adt/timestamp.c:1475
 #, c-format
 msgid "interval(%d) precision must be between %d and %d"
 msgstr "la precisión de interval(%d) debe estar entre %d y %d"
 
-#: utils/adt/timestamp.c:2636
+#: utils/adt/timestamp.c:2652
 #, c-format
 msgid "cannot subtract infinite timestamps"
 msgstr "no se pueden restar timestamps infinitos"
 
-#: utils/adt/timestamp.c:3905 utils/adt/timestamp.c:4497
-#: utils/adt/timestamp.c:4664 utils/adt/timestamp.c:4685
+#: utils/adt/timestamp.c:3921 utils/adt/timestamp.c:4514
+#: utils/adt/timestamp.c:4676 utils/adt/timestamp.c:4697
 #, c-format
 msgid "timestamp units \"%s\" not supported"
 msgstr "las unidades de timestamp «%s» no están soportadas"
 
-#: utils/adt/timestamp.c:3919 utils/adt/timestamp.c:4451
-#: utils/adt/timestamp.c:4695
+#: utils/adt/timestamp.c:3935 utils/adt/timestamp.c:4468
+#: utils/adt/timestamp.c:4707
 #, c-format
 msgid "timestamp units \"%s\" not recognized"
 msgstr "las unidades de timestamp «%s» no son reconocidas"
 
-#: utils/adt/timestamp.c:4049 utils/adt/timestamp.c:4492
-#: utils/adt/timestamp.c:4865 utils/adt/timestamp.c:4887
+#: utils/adt/timestamp.c:4065 utils/adt/timestamp.c:4509
+#: utils/adt/timestamp.c:4872 utils/adt/timestamp.c:4894
 #, c-format
 msgid "timestamp with time zone units \"%s\" not supported"
 msgstr "las unidades de timestamp with time zone «%s» no están soportadas"
 
-#: utils/adt/timestamp.c:4066 utils/adt/timestamp.c:4446
-#: utils/adt/timestamp.c:4896
+#: utils/adt/timestamp.c:4082 utils/adt/timestamp.c:4463
+#: utils/adt/timestamp.c:4903
 #, c-format
 msgid "timestamp with time zone units \"%s\" not recognized"
 msgstr "las unidades de timestamp with time zone «%s» no son reconocidas"
 
-#: utils/adt/timestamp.c:4224
+#: utils/adt/timestamp.c:4240
 #, c-format
 msgid "interval units \"%s\" not supported because months usually have fractional weeks"
 msgstr "las unidades de intervalo «%s» no están soportadas porque los meses normalmente tienen semanas fraccionales"
 
-#: utils/adt/timestamp.c:4230 utils/adt/timestamp.c:4990
+#: utils/adt/timestamp.c:4246 utils/adt/timestamp.c:4997
 #, c-format
 msgid "interval units \"%s\" not supported"
 msgstr "las unidades de interval «%s» no están soportadas"
 
-#: utils/adt/timestamp.c:4246 utils/adt/timestamp.c:5013
+#: utils/adt/timestamp.c:4262 utils/adt/timestamp.c:5020
 #, c-format
 msgid "interval units \"%s\" not recognized"
 msgstr "las unidades de interval «%s» no son reconocidas"
@@ -23325,7 +23422,7 @@ msgstr "suppress_redundant_updates_trigger: debe ser invocado «BEFORE UPDATE»"
 msgid "suppress_redundant_updates_trigger: must be called for each row"
 msgstr "suppress_redundant_updates_trigger: debe ser invocado «FOR EACH ROW»"
 
-#: utils/adt/tsgistidx.c:81
+#: utils/adt/tsgistidx.c:92
 #, c-format
 msgid "gtsvector_in not implemented"
 msgstr "gtsvector_in no está implementado"
@@ -23376,7 +23473,7 @@ msgstr "el tsquery es demasiado grande"
 msgid "text-search query contains only stop words or doesn't contain lexemes, ignored"
 msgstr "la consulta de búsqueda en texto contiene sólo stopwords o no contiene lexemas; ignorada"
 
-#: utils/adt/tsquery_op.c:123
+#: utils/adt/tsquery_op.c:124
 #, c-format
 msgid "distance in phrase operator should be non-negative and less than %d"
 msgstr "la distancia en el operador de frases debe ser no negativa y menor que %d"
@@ -23386,88 +23483,88 @@ msgstr "la distancia en el operador de frases debe ser no negativa y menor que %
 msgid "ts_rewrite query must return two tsquery columns"
 msgstr "consulta ts_rewrite debe retornar dos columnas tsquery"
 
-#: utils/adt/tsrank.c:413
+#: utils/adt/tsrank.c:412
 #, c-format
 msgid "array of weight must be one-dimensional"
 msgstr "el array de pesos debe ser unidimensional"
 
-#: utils/adt/tsrank.c:418
+#: utils/adt/tsrank.c:417
 #, c-format
 msgid "array of weight is too short"
 msgstr "el array de pesos es muy corto"
 
-#: utils/adt/tsrank.c:423
+#: utils/adt/tsrank.c:422
 #, c-format
 msgid "array of weight must not contain nulls"
 msgstr "los arrays de pesos no deben contener valores nulos"
 
-#: utils/adt/tsrank.c:432 utils/adt/tsrank.c:869
+#: utils/adt/tsrank.c:431 utils/adt/tsrank.c:868
 #, c-format
 msgid "weight out of range"
 msgstr "el peso está fuera de rango"
 
-#: utils/adt/tsvector.c:214
+#: utils/adt/tsvector.c:215
 #, c-format
 msgid "word is too long (%ld bytes, max %ld bytes)"
 msgstr "la palabra es demasiado larga (%ld, máximo %ld bytes)"
 
-#: utils/adt/tsvector.c:221
+#: utils/adt/tsvector.c:222
 #, c-format
 msgid "string is too long for tsvector (%ld bytes, max %ld bytes)"
 msgstr "la cadena es demasiado larga para tsvector (%ld bytes, máximo %ld bytes)"
 
-#: utils/adt/tsvector_op.c:321 utils/adt/tsvector_op.c:608
-#: utils/adt/tsvector_op.c:776
+#: utils/adt/tsvector_op.c:336 utils/adt/tsvector_op.c:616
+#: utils/adt/tsvector_op.c:778
 #, c-format
 msgid "lexeme array may not contain nulls"
 msgstr "el array de lexemas no debe contener nulls"
 
-#: utils/adt/tsvector_op.c:851
+#: utils/adt/tsvector_op.c:848
 #, c-format
 msgid "weight array may not contain nulls"
 msgstr "el array de pesos no debe contener nulls"
 
-#: utils/adt/tsvector_op.c:875
+#: utils/adt/tsvector_op.c:872
 #, c-format
 msgid "unrecognized weight: \"%c\""
 msgstr "no se reconoce el peso: «%c»"
 
-#: utils/adt/tsvector_op.c:2312
+#: utils/adt/tsvector_op.c:2362
 #, c-format
 msgid "ts_stat query must return one tsvector column"
 msgstr "la consulta ts_stat debe retornar una columna tsvector"
 
-#: utils/adt/tsvector_op.c:2494
+#: utils/adt/tsvector_op.c:2551
 #, c-format
 msgid "tsvector column \"%s\" does not exist"
 msgstr "la columna tsvector «%s» no existe"
 
-#: utils/adt/tsvector_op.c:2501
+#: utils/adt/tsvector_op.c:2558
 #, c-format
 msgid "column \"%s\" is not of tsvector type"
 msgstr "la columna «%s» no es de tipo tsvector"
 
-#: utils/adt/tsvector_op.c:2513
+#: utils/adt/tsvector_op.c:2570
 #, c-format
 msgid "configuration column \"%s\" does not exist"
 msgstr "la columna de configuración «%s» no existe"
 
-#: utils/adt/tsvector_op.c:2519
+#: utils/adt/tsvector_op.c:2576
 #, c-format
 msgid "column \"%s\" is not of regconfig type"
 msgstr "la columna «%s» no es de tipo regconfig"
 
-#: utils/adt/tsvector_op.c:2526
+#: utils/adt/tsvector_op.c:2583
 #, c-format
 msgid "configuration column \"%s\" must not be null"
 msgstr "la columna de configuración «%s» no debe ser nula"
 
-#: utils/adt/tsvector_op.c:2539
+#: utils/adt/tsvector_op.c:2596
 #, c-format
 msgid "text search configuration name \"%s\" must be schema-qualified"
 msgstr "el nombre de la configuración de búsqueda «%s» debe ser calificada con esquema"
 
-#: utils/adt/tsvector_op.c:2564
+#: utils/adt/tsvector_op.c:2621
 #, c-format
 msgid "column \"%s\" is not of a character type"
 msgstr "la columna «%s» no es de un tipo textual"
@@ -23487,22 +23584,18 @@ msgstr "no hay carácter escapado: «%s»"
 msgid "wrong position info in tsvector: \"%s\""
 msgstr "información posicional incorrecta en tsvector: «%s»"
 
-#: utils/adt/txid.c:140
-#, c-format
-msgid "transaction ID %s is in the future"
-msgstr "el ID de transacción %s está en el futuro"
+#: utils/adt/uuid.c:428
+#, fuzzy, c-format
+#| msgid "could not generate random salt"
+msgid "could not generate random values"
+msgstr "no se pudo generar una sal aleatoria"
 
-#: utils/adt/txid.c:629
-#, c-format
-msgid "invalid external txid_snapshot data"
-msgstr "valor externo txid_snapshot no válido"
-
-#: utils/adt/varbit.c:109 utils/adt/varchar.c:54
+#: utils/adt/varbit.c:109 utils/adt/varchar.c:53
 #, c-format
 msgid "length for type %s must be at least 1"
 msgstr "el largo para el tipo %s debe ser al menos 1"
 
-#: utils/adt/varbit.c:114 utils/adt/varchar.c:58
+#: utils/adt/varbit.c:114 utils/adt/varchar.c:57
 #, c-format
 msgid "length for type %s cannot exceed %d"
 msgstr "el largo del tipo %s no puede exceder %d"
@@ -23537,9 +23630,9 @@ msgstr "el largo no es válido en cadena de bits externa"
 msgid "bit string too long for type bit varying(%d)"
 msgstr "la cadena de bits es demasiado larga para el tipo bit varying(%d)"
 
-#: utils/adt/varbit.c:1086 utils/adt/varbit.c:1184 utils/adt/varlena.c:863
-#: utils/adt/varlena.c:927 utils/adt/varlena.c:1071 utils/adt/varlena.c:3266
-#: utils/adt/varlena.c:3333
+#: utils/adt/varbit.c:1086 utils/adt/varbit.c:1184 utils/adt/varlena.c:875
+#: utils/adt/varlena.c:939 utils/adt/varlena.c:1083 utils/adt/varlena.c:3306
+#: utils/adt/varlena.c:3373
 #, c-format
 msgid "negative substring length not allowed"
 msgstr "no se permite un largo negativo de subcadena"
@@ -23559,107 +23652,123 @@ msgstr "no se puede hacer OR entre cadenas de bits de distintos tamaños"
 msgid "cannot XOR bit strings of different sizes"
 msgstr "no se puede hacer XOR entre cadenas de bits de distintos tamaños"
 
-#: utils/adt/varbit.c:1802 utils/adt/varbit.c:1860
+#: utils/adt/varbit.c:1804 utils/adt/varbit.c:1862
 #, c-format
 msgid "bit index %d out of valid range (0..%d)"
 msgstr "el índice de bit %d está fuera del rango válido (0..%d)"
 
-#: utils/adt/varbit.c:1811 utils/adt/varlena.c:3524
+#: utils/adt/varbit.c:1813 utils/adt/varlena.c:3566
 #, c-format
 msgid "new bit must be 0 or 1"
 msgstr "el nuevo bit debe ser 0 o 1"
 
-#: utils/adt/varchar.c:158 utils/adt/varchar.c:311
+#: utils/adt/varchar.c:157 utils/adt/varchar.c:310
 #, c-format
 msgid "value too long for type character(%d)"
 msgstr "el valor es demasiado largo para el tipo character(%d)"
 
-#: utils/adt/varchar.c:473 utils/adt/varchar.c:635
+#: utils/adt/varchar.c:472 utils/adt/varchar.c:634
 #, c-format
 msgid "value too long for type character varying(%d)"
 msgstr "el valor es demasiado largo para el tipo character varying(%d)"
 
-#: utils/adt/varchar.c:733 utils/adt/varlena.c:1455
+#: utils/adt/varchar.c:732 utils/adt/varlena.c:1475
 #, c-format
 msgid "could not determine which collation to use for string comparison"
 msgstr "no se pudo determinar qué ordenamiento usar para la comparación de cadenas"
 
-#: utils/adt/varlena.c:1165 utils/adt/varlena.c:1895
+#: utils/adt/varlena.c:1182 utils/adt/varlena.c:1915
 #, c-format
 msgid "nondeterministic collations are not supported for substring searches"
 msgstr "los ordenamientos no determinísticos no están soportados para búsquedas de sub-cadenas"
 
-#: utils/adt/varlena.c:1554 utils/adt/varlena.c:1567
+#: utils/adt/varlena.c:1574 utils/adt/varlena.c:1587
 #, c-format
 msgid "could not convert string to UTF-16: error code %lu"
 msgstr "no se pudo convertir la cadena a UTF-16: código de error %lu"
 
-#: utils/adt/varlena.c:1582
+#: utils/adt/varlena.c:1602
 #, c-format
 msgid "could not compare Unicode strings: %m"
 msgstr "no se pudieron comparar las cadenas Unicode: %m"
 
-#: utils/adt/varlena.c:1633 utils/adt/varlena.c:2347
+#: utils/adt/varlena.c:1653 utils/adt/varlena.c:2367
 #, c-format
 msgid "collation failed: %s"
 msgstr "el ordenamiento falló: %s"
 
-#: utils/adt/varlena.c:2555
+#: utils/adt/varlena.c:2575
 #, c-format
 msgid "sort key generation failed: %s"
 msgstr "la generación de la llave de ordenamiento falló: %s"
 
-#: utils/adt/varlena.c:3410 utils/adt/varlena.c:3441 utils/adt/varlena.c:3476
-#: utils/adt/varlena.c:3512
+#: utils/adt/varlena.c:3450 utils/adt/varlena.c:3517
 #, c-format
 msgid "index %d out of valid range, 0..%d"
 msgstr "el índice %d está fuera de rango [0..%d]"
 
-#: utils/adt/varlena.c:4548
+#: utils/adt/varlena.c:3481 utils/adt/varlena.c:3553
+#, fuzzy, c-format
+#| msgid "index %d out of valid range, 0..%d"
+msgid "index %lld out of valid range, 0..%lld"
+msgstr "el índice %d está fuera de rango [0..%d]"
+
+#: utils/adt/varlena.c:4590
 #, c-format
 msgid "field position must be greater than zero"
 msgstr "la posición del campo debe ser mayor que cero"
 
-#: utils/adt/varlena.c:5414
+#: utils/adt/varlena.c:5456
 #, c-format
 msgid "unterminated format() type specifier"
 msgstr "especificador de tipo inconcluso en format()"
 
-#: utils/adt/varlena.c:5415 utils/adt/varlena.c:5549 utils/adt/varlena.c:5670
+#: utils/adt/varlena.c:5457 utils/adt/varlena.c:5591 utils/adt/varlena.c:5712
 #, c-format
 msgid "For a single \"%%\" use \"%%%%\"."
 msgstr "Para un «%%» solo, use «%%%%»."
 
-#: utils/adt/varlena.c:5547 utils/adt/varlena.c:5668
+#: utils/adt/varlena.c:5589 utils/adt/varlena.c:5710
 #, c-format
 msgid "unrecognized format() type specifier \"%c\""
 msgstr "especificador de tipo no reconocido «%c» en format()"
 
-#: utils/adt/varlena.c:5560 utils/adt/varlena.c:5617
+#: utils/adt/varlena.c:5602 utils/adt/varlena.c:5659
 #, c-format
 msgid "too few arguments for format()"
 msgstr "muy pocos argumentos para format()"
 
-#: utils/adt/varlena.c:5713 utils/adt/varlena.c:5895
+#: utils/adt/varlena.c:5755 utils/adt/varlena.c:5937
 #, c-format
 msgid "number is out of range"
 msgstr "el número está fuera de rango"
 
-#: utils/adt/varlena.c:5776 utils/adt/varlena.c:5804
+#: utils/adt/varlena.c:5818 utils/adt/varlena.c:5846
 #, c-format
 msgid "format specifies argument 0, but arguments are numbered from 1"
 msgstr "la conversión especifica el argumento 0, pero los argumentos se numeran desde 1"
 
-#: utils/adt/varlena.c:5797
+#: utils/adt/varlena.c:5839
 #, c-format
 msgid "width argument position must be ended by \"$\""
 msgstr "la posición del argumento de anchura debe terminar con «$»"
 
-#: utils/adt/varlena.c:5842
+#: utils/adt/varlena.c:5884
 #, c-format
 msgid "null values cannot be formatted as an SQL identifier"
 msgstr "los valores nulos no pueden ser formateados como un identificador SQL"
 
+#: utils/adt/varlena.c:6010
+#, c-format
+msgid "Unicode normalization can only be performed if server encoding is UTF8"
+msgstr ""
+
+#: utils/adt/varlena.c:6023
+#, fuzzy, c-format
+#| msgid "invalid parameter list format: \"%s\""
+msgid "invalid normalization form: %s"
+msgstr "el formato de la lista de parámetros no es válido: «%s»"
+
 #: utils/adt/windowfuncs.c:243
 #, c-format
 msgid "argument of ntile must be greater than zero"
@@ -23670,6 +23779,17 @@ msgstr "el argumento de ntile debe ser mayor que cero"
 msgid "argument of nth_value must be greater than zero"
 msgstr "el argumento de nth_value debe ser mayor que cero"
 
+#: utils/adt/xid8funcs.c:116
+#, c-format
+msgid "transaction ID %s is in the future"
+msgstr "el ID de transacción %s está en el futuro"
+
+#: utils/adt/xid8funcs.c:547
+#, fuzzy, c-format
+#| msgid "invalid external txid_snapshot data"
+msgid "invalid external pg_snapshot data"
+msgstr "valor externo txid_snapshot no válido"
+
 #: utils/adt/xml.c:222
 #, c-format
 msgid "unsupported XML feature"
@@ -23685,7 +23805,7 @@ msgstr "Esta funcionalidad requiere que el servidor haya sido construido con sop
 msgid "You need to rebuild PostgreSQL using --with-libxml."
 msgstr "Necesita reconstruir PostgreSQL usando --with-libxml."
 
-#: utils/adt/xml.c:243 utils/mb/mbutils.c:512
+#: utils/adt/xml.c:243 utils/mb/mbutils.c:570
 #, c-format
 msgid "invalid encoding name \"%s\""
 msgstr "nombre de codificación «%s» no válido"
@@ -23769,83 +23889,88 @@ msgstr "Procesando declaración XML: se esperaba '?>'."
 msgid "Unrecognized libxml error code: %d."
 msgstr "Código de error libxml no reconocido: %d."
 
-#: utils/adt/xml.c:2229
+#: utils/adt/xml.c:2211
 #, c-format
 msgid "XML does not support infinite date values."
 msgstr "XML no soporta valores infinitos de fecha."
 
-#: utils/adt/xml.c:2251 utils/adt/xml.c:2278
+#: utils/adt/xml.c:2233 utils/adt/xml.c:2260
 #, c-format
 msgid "XML does not support infinite timestamp values."
 msgstr "XML no soporta valores infinitos de timestamp."
 
-#: utils/adt/xml.c:2690
+#: utils/adt/xml.c:2676
 #, c-format
 msgid "invalid query"
 msgstr "consulta no válido"
 
-#: utils/adt/xml.c:4037
+#: utils/adt/xml.c:4016
 #, c-format
 msgid "invalid array for XML namespace mapping"
 msgstr "array no válido para mapeo de espacio de nombres XML"
 
-#: utils/adt/xml.c:4038
+#: utils/adt/xml.c:4017
 #, c-format
 msgid "The array must be two-dimensional with length of the second axis equal to 2."
 msgstr "El array debe ser bidimensional y el largo del segundo eje igual a 2."
 
-#: utils/adt/xml.c:4062
+#: utils/adt/xml.c:4041
 #, c-format
 msgid "empty XPath expression"
 msgstr "expresion XPath vacía"
 
-#: utils/adt/xml.c:4114
+#: utils/adt/xml.c:4093
 #, c-format
 msgid "neither namespace name nor URI may be null"
 msgstr "ni el espacio de nombres ni la URI pueden ser vacíos"
 
-#: utils/adt/xml.c:4121
+#: utils/adt/xml.c:4100
 #, c-format
 msgid "could not register XML namespace with name \"%s\" and URI \"%s\""
 msgstr "no se pudo registrar un espacio de nombres XML llamado «%s» con URI «%s»"
 
-#: utils/adt/xml.c:4472
+#: utils/adt/xml.c:4451
 #, c-format
 msgid "DEFAULT namespace is not supported"
 msgstr "el espacio de nombres DEFAULT no está soportado"
 
-#: utils/adt/xml.c:4501
+#: utils/adt/xml.c:4480
 #, c-format
 msgid "row path filter must not be empty string"
 msgstr "el «path» de filtro de registros no debe ser la cadena vacía"
 
-#: utils/adt/xml.c:4532
+#: utils/adt/xml.c:4511
 #, c-format
 msgid "column path filter must not be empty string"
 msgstr "el «path» de filtro de columna no debe ser la cadena vacía"
 
-#: utils/adt/xml.c:4682
+#: utils/adt/xml.c:4661
 #, c-format
 msgid "more than one value returned by column XPath expression"
 msgstr "la expresión XPath de columna retornó más de un valor"
 
-#: utils/cache/lsyscache.c:2654 utils/cache/lsyscache.c:2687
-#: utils/cache/lsyscache.c:2720 utils/cache/lsyscache.c:2753
+#: utils/cache/lsyscache.c:966
+#, c-format
+msgid "cast from type %s to type %s does not exist"
+msgstr "no existe la conversión del tipo %s al tipo %s"
+
+#: utils/cache/lsyscache.c:2715 utils/cache/lsyscache.c:2748
+#: utils/cache/lsyscache.c:2781 utils/cache/lsyscache.c:2814
 #, c-format
 msgid "type %s is only a shell"
 msgstr "el tipo %s está inconcluso"
 
-#: utils/cache/lsyscache.c:2659
+#: utils/cache/lsyscache.c:2720
 #, c-format
 msgid "no input function available for type %s"
 msgstr "no hay una función de entrada para el tipo %s"
 
-#: utils/cache/lsyscache.c:2692
+#: utils/cache/lsyscache.c:2753
 #, c-format
 msgid "no output function available for type %s"
 msgstr "no hay una función de salida para el tipo %s"
 
-#: utils/cache/partcache.c:195
+#: utils/cache/partcache.c:215
 #, c-format
 msgid "operator class \"%s\" of access method %s is missing support function %d for type %s"
 msgstr "falta la función de soporte %3$d para el tipo %4$s de la clase de operadores «%1$s» del método de acceso %2$s"
@@ -23855,17 +23980,17 @@ msgstr "falta la función de soporte %3$d para el tipo %4$s de la clase de opera
 msgid "cached plan must not change result type"
 msgstr "el plan almacenado no debe cambiar el tipo de resultado"
 
-#: utils/cache/relcache.c:5758
+#: utils/cache/relcache.c:6071
 #, c-format
 msgid "could not create relation-cache initialization file \"%s\": %m"
 msgstr "no se pudo crear el archivo de cache de catálogos de sistema «%s»: %m"
 
-#: utils/cache/relcache.c:5760
+#: utils/cache/relcache.c:6073
 #, c-format
 msgid "Continuing anyway, but there's something wrong."
 msgstr "Prosiguiendo de todas maneras, pero hay algo mal."
 
-#: utils/cache/relcache.c:6072
+#: utils/cache/relcache.c:6395
 #, c-format
 msgid "could not remove cache file \"%s\": %m"
 msgstr "no se pudo eliminar el archivo de cache «%s»: %m"
@@ -23885,109 +24010,114 @@ msgstr "el archivo de mapeo de relaciones «%s» contiene datos no válidos"
 msgid "relation mapping file \"%s\" contains incorrect checksum"
 msgstr "el archivo de mapeo de relaciones «%s» tiene una suma de verificación incorrecta"
 
-#: utils/cache/typcache.c:1634 utils/fmgr/funcapi.c:420
+#: utils/cache/typcache.c:1692 utils/fmgr/funcapi.c:461
 #, c-format
 msgid "record type has not been registered"
 msgstr "el tipo record no ha sido registrado"
 
-#: utils/error/assert.c:34
+#: utils/error/assert.c:37
 #, c-format
 msgid "TRAP: ExceptionalCondition: bad arguments\n"
 msgstr "TRAP: ExceptionalConditions: argumentos erróneos\n"
 
-#: utils/error/assert.c:37
+#: utils/error/assert.c:40
 #, c-format
 msgid "TRAP: %s(\"%s\", File: \"%s\", Line: %d)\n"
 msgstr "TRAP: %s(«%s», Archivo: «%s», Línea: %d)\n"
 
-#: utils/error/elog.c:319 utils/error/elog.c:1293
-#, c-format
-msgid "error occurred at %s:%d before error message processing is available\n"
+#: utils/error/elog.c:322
+#, fuzzy, c-format
+#| msgid "error occurred at %s:%d before error message processing is available\n"
+msgid "error occurred before error message processing is available\n"
 msgstr "ocurrió un error en %s:%d antes de que el procesamiento de mensajes de error esté disponible\n"
 
-#: utils/error/elog.c:1871
+#: utils/error/elog.c:1868
 #, c-format
 msgid "could not reopen file \"%s\" as stderr: %m"
 msgstr "no se pudo reabrir «%s» para error estándar: %m"
 
-#: utils/error/elog.c:1884
+#: utils/error/elog.c:1881
 #, c-format
 msgid "could not reopen file \"%s\" as stdout: %m"
 msgstr "no se pudo reabrir «%s» para usar como salida estándar: %m"
 
-#: utils/error/elog.c:2376 utils/error/elog.c:2393 utils/error/elog.c:2409
+#: utils/error/elog.c:2373 utils/error/elog.c:2407 utils/error/elog.c:2423
 msgid "[unknown]"
 msgstr "[desconocido]"
 
-#: utils/error/elog.c:2869 utils/error/elog.c:3172 utils/error/elog.c:3280
+#: utils/error/elog.c:2893 utils/error/elog.c:3203 utils/error/elog.c:3311
 msgid "missing error text"
 msgstr "falta un texto de mensaje de error"
 
-#: utils/error/elog.c:2872 utils/error/elog.c:2875 utils/error/elog.c:3283
-#: utils/error/elog.c:3286
+#: utils/error/elog.c:2896 utils/error/elog.c:2899 utils/error/elog.c:3314
+#: utils/error/elog.c:3317
 #, c-format
 msgid " at character %d"
 msgstr " en carácter %d"
 
-#: utils/error/elog.c:2885 utils/error/elog.c:2892
+#: utils/error/elog.c:2909 utils/error/elog.c:2916
 msgid "DETAIL:  "
 msgstr "DETALLE:  "
 
-#: utils/error/elog.c:2899
+#: utils/error/elog.c:2923
 msgid "HINT:  "
 msgstr "HINT:  "
 
-#: utils/error/elog.c:2906
+#: utils/error/elog.c:2930
 msgid "QUERY:  "
 msgstr "CONSULTA:  "
 
-#: utils/error/elog.c:2913
+#: utils/error/elog.c:2937
 msgid "CONTEXT:  "
 msgstr "CONTEXTO:  "
 
-#: utils/error/elog.c:2923
+#: utils/error/elog.c:2944
+msgid "BACKTRACE:  "
+msgstr ""
+
+#: utils/error/elog.c:2954
 #, c-format
 msgid "LOCATION:  %s, %s:%d\n"
 msgstr "UBICACIÓN:  %s, %s:%d\n"
 
-#: utils/error/elog.c:2930
+#: utils/error/elog.c:2961
 #, c-format
 msgid "LOCATION:  %s:%d\n"
 msgstr "UBICACIÓN:  %s:%d\n"
 
-#: utils/error/elog.c:2944
+#: utils/error/elog.c:2975
 msgid "STATEMENT:  "
 msgstr "SENTENCIA:  "
 
-#: utils/error/elog.c:3333
+#: utils/error/elog.c:3364
 msgid "DEBUG"
 msgstr "DEBUG"
 
-#: utils/error/elog.c:3337
+#: utils/error/elog.c:3368
 msgid "LOG"
 msgstr "LOG"
 
-#: utils/error/elog.c:3340
+#: utils/error/elog.c:3371
 msgid "INFO"
 msgstr "INFO"
 
-#: utils/error/elog.c:3343
+#: utils/error/elog.c:3374
 msgid "NOTICE"
 msgstr "NOTICE"
 
-#: utils/error/elog.c:3346
+#: utils/error/elog.c:3377
 msgid "WARNING"
 msgstr "WARNING"
 
-#: utils/error/elog.c:3349
+#: utils/error/elog.c:3380
 msgid "ERROR"
 msgstr "ERROR"
 
-#: utils/error/elog.c:3352
+#: utils/error/elog.c:3383
 msgid "FATAL"
 msgstr "FATAL"
 
-#: utils/error/elog.c:3355
+#: utils/error/elog.c:3386
 msgid "PANIC"
 msgstr "PANIC"
 
@@ -24038,265 +24168,265 @@ msgstr "El servidor tiene NAMEDATALEN = %d, la librería tiene %d"
 
 #: utils/fmgr/dfmgr.c:373
 #, c-format
-msgid "Server has FLOAT4PASSBYVAL = %s, library has %s."
-msgstr "El servidor tiene FLOAT4PASSBYVAL = %s, la librería tiene %s"
-
-#: utils/fmgr/dfmgr.c:382
-#, c-format
 msgid "Server has FLOAT8PASSBYVAL = %s, library has %s."
 msgstr "El servidor tiene FLOAT8PASSBYVAL = %s, la librería tiene %s"
 
-#: utils/fmgr/dfmgr.c:389
+#: utils/fmgr/dfmgr.c:380
 msgid "Magic block has unexpected length or padding difference."
 msgstr "El bloque mágico tiene un largo inesperado, o una diferencia de relleno."
 
-#: utils/fmgr/dfmgr.c:392
+#: utils/fmgr/dfmgr.c:383
 #, c-format
 msgid "incompatible library \"%s\": magic block mismatch"
 msgstr "biblioteca «%s» incompatible: bloque mágico no coincide"
 
-#: utils/fmgr/dfmgr.c:556
+#: utils/fmgr/dfmgr.c:547
 #, c-format
 msgid "access to library \"%s\" is not allowed"
 msgstr "no está permitido el acceso a la biblioteca «%s»"
 
-#: utils/fmgr/dfmgr.c:582
+#: utils/fmgr/dfmgr.c:573
 #, c-format
 msgid "invalid macro name in dynamic library path: %s"
 msgstr "el nombre de macro no es válido en la ruta a biblioteca dinámica: %s"
 
-#: utils/fmgr/dfmgr.c:622
+#: utils/fmgr/dfmgr.c:613
 #, c-format
 msgid "zero-length component in parameter \"dynamic_library_path\""
 msgstr "se encontró componente de largo cero en el parámetro «dynamic_library_path»"
 
-#: utils/fmgr/dfmgr.c:641
+#: utils/fmgr/dfmgr.c:632
 #, c-format
 msgid "component in parameter \"dynamic_library_path\" is not an absolute path"
 msgstr "un componente en el parámetro «dynamic_library_path» no es una ruta absoluta"
 
-#: utils/fmgr/fmgr.c:236
+#: utils/fmgr/fmgr.c:238
 #, c-format
 msgid "internal function \"%s\" is not in internal lookup table"
 msgstr "la función interna «%s» no está en la tabla interna de búsqueda"
 
-#: utils/fmgr/fmgr.c:485
+#: utils/fmgr/fmgr.c:487
 #, c-format
 msgid "could not find function information for function \"%s\""
 msgstr "no se pudo encontrar información de función para la función «%s»"
 
-#: utils/fmgr/fmgr.c:487
+#: utils/fmgr/fmgr.c:489
 #, c-format
 msgid "SQL-callable functions need an accompanying PG_FUNCTION_INFO_V1(funcname)."
 msgstr "Funciones invocables desde SQL necesitan PG_FUNCTION_INFO_V1(función) que los acompañe."
 
-#: utils/fmgr/fmgr.c:505
+#: utils/fmgr/fmgr.c:507
 #, c-format
 msgid "unrecognized API version %d reported by info function \"%s\""
 msgstr "la versión de API %d no reconocida fue reportada por la función «%s»"
 
-#: utils/fmgr/fmgr.c:2032
+#: utils/fmgr/fmgr.c:2003
+#, c-format
+msgid "opclass options info is absent in function call context"
+msgstr ""
+
+#: utils/fmgr/fmgr.c:2070
 #, c-format
 msgid "language validation function %u called for language %u instead of %u"
 msgstr "función de validación de lenguaje %u invocada para el lenguaje %u en lugar de %u"
 
-#: utils/fmgr/funcapi.c:343
+#: utils/fmgr/funcapi.c:384
 #, c-format
 msgid "could not determine actual result type for function \"%s\" declared to return type %s"
 msgstr "no se pudo determinar el tipo verdadero de resultado para la función «%s»  declarada retornando tipo %s"
 
-#: utils/fmgr/funcapi.c:1388 utils/fmgr/funcapi.c:1420
+#: utils/fmgr/funcapi.c:1651 utils/fmgr/funcapi.c:1683
 #, c-format
 msgid "number of aliases does not match number of columns"
 msgstr "el número de aliases no coincide con el número de columnas"
 
-#: utils/fmgr/funcapi.c:1414
+#: utils/fmgr/funcapi.c:1677
 #, c-format
 msgid "no column alias was provided"
 msgstr "no se entregó alias de columna"
 
-#: utils/fmgr/funcapi.c:1438
+#: utils/fmgr/funcapi.c:1701
 #, c-format
 msgid "could not determine row description for function returning record"
 msgstr "no se pudo encontrar descripción de registro de función que retorna record"
 
-#: utils/init/miscinit.c:110
+#: utils/init/miscinit.c:285
 #, c-format
 msgid "data directory \"%s\" does not exist"
 msgstr "no existe el directorio de datos «%s»"
 
-#: utils/init/miscinit.c:115
+#: utils/init/miscinit.c:290
 #, c-format
 msgid "could not read permissions of directory \"%s\": %m"
 msgstr "no se pudo obtener los permisos del directorio «%s»: %m"
 
-#: utils/init/miscinit.c:123
+#: utils/init/miscinit.c:298
 #, c-format
 msgid "specified data directory \"%s\" is not a directory"
 msgstr "el directorio de datos especificado «%s» no es un directorio"
 
-#: utils/init/miscinit.c:139
+#: utils/init/miscinit.c:314
 #, c-format
 msgid "data directory \"%s\" has wrong ownership"
 msgstr "el directorio de datos «%s» tiene dueño equivocado"
 
-#: utils/init/miscinit.c:141
+#: utils/init/miscinit.c:316
 #, c-format
 msgid "The server must be started by the user that owns the data directory."
 msgstr "El servidor debe ser iniciado por el usuario dueño del directorio de datos."
 
-#: utils/init/miscinit.c:159
+#: utils/init/miscinit.c:334
 #, c-format
 msgid "data directory \"%s\" has invalid permissions"
 msgstr "el directorio de datos «%s» tiene permisos no válidos"
 
-#: utils/init/miscinit.c:161
+#: utils/init/miscinit.c:336
 #, c-format
 msgid "Permissions should be u=rwx (0700) or u=rwx,g=rx (0750)."
 msgstr "Los permisos deberían ser u=rwx (0700) o u=rwx,g=rx (0750)."
 
-#: utils/init/miscinit.c:547 utils/misc/guc.c:6930
+#: utils/init/miscinit.c:615 utils/misc/guc.c:7149
 #, c-format
 msgid "cannot set parameter \"%s\" within security-restricted operation"
 msgstr "no se puede definir el parámetro «%s» dentro de una operación restringida por seguridad"
 
-#: utils/init/miscinit.c:615
+#: utils/init/miscinit.c:683
 #, c-format
 msgid "role with OID %u does not exist"
 msgstr "no existe el rol con OID %u"
 
-#: utils/init/miscinit.c:645
+#: utils/init/miscinit.c:713
 #, c-format
 msgid "role \"%s\" is not permitted to log in"
 msgstr "al rol «%s» no se le permite conectarse"
 
-#: utils/init/miscinit.c:663
+#: utils/init/miscinit.c:731
 #, c-format
 msgid "too many connections for role \"%s\""
 msgstr "demasiadas conexiones para el rol «%s»"
 
-#: utils/init/miscinit.c:723
+#: utils/init/miscinit.c:791
 #, c-format
 msgid "permission denied to set session authorization"
 msgstr "se ha denegado el permiso para cambiar el usuario actual"
 
-#: utils/init/miscinit.c:806
+#: utils/init/miscinit.c:874
 #, c-format
 msgid "invalid role OID: %u"
 msgstr "el OID de rol no es válido: %u"
 
-#: utils/init/miscinit.c:860
+#: utils/init/miscinit.c:928
 #, c-format
 msgid "database system is shut down"
 msgstr "el sistema de bases de datos está apagado"
 
-#: utils/init/miscinit.c:947
+#: utils/init/miscinit.c:1015
 #, c-format
 msgid "could not create lock file \"%s\": %m"
 msgstr "no se pudo crear el archivo de bloqueo «%s»: %m"
 
-#: utils/init/miscinit.c:961
+#: utils/init/miscinit.c:1029
 #, c-format
 msgid "could not open lock file \"%s\": %m"
 msgstr "no se pudo abrir el archivo de bloqueo «%s»: %m"
 
-#: utils/init/miscinit.c:968
+#: utils/init/miscinit.c:1036
 #, c-format
 msgid "could not read lock file \"%s\": %m"
 msgstr "no se pudo leer el archivo de bloqueo «%s»: %m"
 
-#: utils/init/miscinit.c:977
+#: utils/init/miscinit.c:1045
 #, c-format
 msgid "lock file \"%s\" is empty"
 msgstr "el archivo de bloqueo «%s» está vacío"
 
-#: utils/init/miscinit.c:978
+#: utils/init/miscinit.c:1046
 #, c-format
 msgid "Either another server is starting, or the lock file is the remnant of a previous server startup crash."
 msgstr "Otro proceso servidor está iniciándose, o el archivo de bloqueo es remanente de una caída durante un inicio anterior."
 
-#: utils/init/miscinit.c:1022
+#: utils/init/miscinit.c:1090
 #, c-format
 msgid "lock file \"%s\" already exists"
 msgstr "el archivo de bloqueo «%s» ya existe"
 
-#: utils/init/miscinit.c:1026
+#: utils/init/miscinit.c:1094
 #, c-format
 msgid "Is another postgres (PID %d) running in data directory \"%s\"?"
 msgstr "¿Hay otro postgres (PID %d) corriendo en el directorio de datos «%s»?"
 
-#: utils/init/miscinit.c:1028
+#: utils/init/miscinit.c:1096
 #, c-format
 msgid "Is another postmaster (PID %d) running in data directory \"%s\"?"
 msgstr "¿Hay otro postmaster (PID %d) corriendo en el directorio de datos «%s»?"
 
-#: utils/init/miscinit.c:1031
+#: utils/init/miscinit.c:1099
 #, c-format
 msgid "Is another postgres (PID %d) using socket file \"%s\"?"
 msgstr "¿Hay otro postgres (PID %d) usando el socket «%s»?"
 
-#: utils/init/miscinit.c:1033
+#: utils/init/miscinit.c:1101
 #, c-format
 msgid "Is another postmaster (PID %d) using socket file \"%s\"?"
 msgstr "¿Hay otro postmaster (PID %d) usando el socket «%s»?"
 
-#: utils/init/miscinit.c:1084
+#: utils/init/miscinit.c:1152
 #, c-format
 msgid "could not remove old lock file \"%s\": %m"
 msgstr "no se pudo eliminar el archivo de bloqueo antiguo «%s»: %m"
 
-#: utils/init/miscinit.c:1086
+#: utils/init/miscinit.c:1154
 #, c-format
 msgid "The file seems accidentally left over, but it could not be removed. Please remove the file by hand and try again."
 msgstr "El archivo parece accidentalmente abandonado, pero no pudo ser eliminado. Por favor elimine el archivo manualmente e intente nuevamente."
 
-#: utils/init/miscinit.c:1123 utils/init/miscinit.c:1137
-#: utils/init/miscinit.c:1148
+#: utils/init/miscinit.c:1191 utils/init/miscinit.c:1205
+#: utils/init/miscinit.c:1216
 #, c-format
 msgid "could not write lock file \"%s\": %m"
 msgstr "no se pudo escribir el archivo de bloqueo «%s»: %m"
 
-#: utils/init/miscinit.c:1280 utils/init/miscinit.c:1423 utils/misc/guc.c:9834
+#: utils/init/miscinit.c:1327 utils/init/miscinit.c:1469 utils/misc/guc.c:10048
 #, c-format
 msgid "could not read from file \"%s\": %m"
 msgstr "no se pudo leer el archivo «%s»: %m"
 
-#: utils/init/miscinit.c:1411
+#: utils/init/miscinit.c:1457
 #, c-format
 msgid "could not open file \"%s\": %m; continuing anyway"
 msgstr "no se pudo abrir el archivo «%s»: %m; continuando de todas formas"
 
-#: utils/init/miscinit.c:1436
+#: utils/init/miscinit.c:1482
 #, c-format
 msgid "lock file \"%s\" contains wrong PID: %ld instead of %ld"
 msgstr "el archivo de bloqueo «%s» tiene un PID erróneo: %ld en lugar de %ld"
 
-#: utils/init/miscinit.c:1475 utils/init/miscinit.c:1491
+#: utils/init/miscinit.c:1521 utils/init/miscinit.c:1537
 #, c-format
 msgid "\"%s\" is not a valid data directory"
 msgstr "«%s» no es un directorio de datos válido"
 
-#: utils/init/miscinit.c:1477
+#: utils/init/miscinit.c:1523
 #, c-format
 msgid "File \"%s\" is missing."
 msgstr "Falta el archivo «%s»."
 
-#: utils/init/miscinit.c:1493
+#: utils/init/miscinit.c:1539
 #, c-format
 msgid "File \"%s\" does not contain valid data."
 msgstr "El archivo «%s» no contiene datos válidos."
 
-#: utils/init/miscinit.c:1495
+#: utils/init/miscinit.c:1541
 #, c-format
 msgid "You might need to initdb."
 msgstr "Puede ser necesario ejecutar initdb."
 
-#: utils/init/miscinit.c:1503
+#: utils/init/miscinit.c:1549
 #, c-format
 msgid "The data directory was initialized by PostgreSQL version %s, which is not compatible with this version %s."
 msgstr "El directorio de datos fue inicializado por PostgreSQL versión %s, que no es compatible con esta versión %s."
 
-#: utils/init/miscinit.c:1570
+#: utils/init/miscinit.c:1616
 #, c-format
 msgid "loaded library \"%s\""
 msgstr "biblioteca «%s» cargada"
@@ -24401,62 +24531,62 @@ msgstr "Recree la base de datos con otra configuración regional, o instale la c
 msgid "The database was initialized with LC_CTYPE \"%s\",  which is not recognized by setlocale()."
 msgstr "La base de datos fueron inicializada con LC_CTYPE «%s», el cual no es reconocido por setlocale()."
 
-#: utils/init/postinit.c:764
+#: utils/init/postinit.c:762
 #, c-format
 msgid "no roles are defined in this database system"
 msgstr "no hay roles definidos en esta base de datos"
 
-#: utils/init/postinit.c:765
+#: utils/init/postinit.c:763
 #, c-format
 msgid "You should immediately run CREATE USER \"%s\" SUPERUSER;."
 msgstr "Debería ejecutar imediatamente CREATE USER \"%s\" SUPERUSER;."
 
-#: utils/init/postinit.c:801
+#: utils/init/postinit.c:799
 #, c-format
 msgid "new replication connections are not allowed during database shutdown"
 msgstr "nuevas conexiones de replicación no son permitidas durante el apagado de la base de datos"
 
-#: utils/init/postinit.c:805
+#: utils/init/postinit.c:803
 #, c-format
 msgid "must be superuser to connect during database shutdown"
 msgstr "debe ser superusuario para conectarse durante el apagado de la base de datos"
 
-#: utils/init/postinit.c:815
+#: utils/init/postinit.c:813
 #, c-format
 msgid "must be superuser to connect in binary upgrade mode"
 msgstr "debe ser superusuario para conectarse en modo de actualización binaria"
 
-#: utils/init/postinit.c:828
+#: utils/init/postinit.c:826
 #, c-format
 msgid "remaining connection slots are reserved for non-replication superuser connections"
 msgstr "las conexiones restantes están reservadas a superusuarios y no de replicación"
 
-#: utils/init/postinit.c:838
+#: utils/init/postinit.c:836
 #, c-format
 msgid "must be superuser or replication role to start walsender"
 msgstr "debe ser superusuario o rol de replicación para iniciar el walsender"
 
-#: utils/init/postinit.c:907
+#: utils/init/postinit.c:905
 #, c-format
 msgid "database %u does not exist"
 msgstr "no existe la base de datos %u"
 
-#: utils/init/postinit.c:996
+#: utils/init/postinit.c:994
 #, c-format
 msgid "It seems to have just been dropped or renamed."
 msgstr "Parece haber sido eliminada o renombrada."
 
-#: utils/init/postinit.c:1014
+#: utils/init/postinit.c:1012
 #, c-format
 msgid "The database subdirectory \"%s\" is missing."
 msgstr "Falta el subdirectorio de base de datos «%s»."
 
-#: utils/init/postinit.c:1019
+#: utils/init/postinit.c:1017
 #, c-format
 msgid "could not access directory \"%s\": %m"
 msgstr "no se pudo acceder al directorio «%s»: %m"
 
-#: utils/mb/conv.c:488 utils/mb/conv.c:680
+#: utils/mb/conv.c:443 utils/mb/conv.c:635
 #, c-format
 msgid "invalid encoding number: %d"
 msgstr "el número de codificación no es válido: %d"
@@ -24473,1841 +24603,1952 @@ msgstr "ID de codificación %d inesperado para juegos de caracteres ISO 8859"
 msgid "unexpected encoding ID %d for WIN character sets"
 msgstr "ID de codificación %d inesperado para juegos de caracteres WIN"
 
-#: utils/mb/encnames.c:473
-#, c-format
-msgid "encoding \"%s\" not supported by ICU"
-msgstr "la codificación «%s» no estæ soportada por ICU"
-
-#: utils/mb/encnames.c:572
-#, c-format
-msgid "encoding name too long"
-msgstr "el nombre de codificación es demasiado largo"
-
-#: utils/mb/mbutils.c:296
+#: utils/mb/mbutils.c:297 utils/mb/mbutils.c:842
 #, c-format
 msgid "conversion between %s and %s is not supported"
 msgstr "la conversión entre %s y %s no está soportada"
 
-#: utils/mb/mbutils.c:355
+#: utils/mb/mbutils.c:385
 #, c-format
 msgid "default conversion function for encoding \"%s\" to \"%s\" does not exist"
 msgstr "no existe el procedimiento por omisión de conversión desde la codificación «%s» a «%s»"
 
-#: utils/mb/mbutils.c:366 utils/mb/mbutils.c:699
+#: utils/mb/mbutils.c:402 utils/mb/mbutils.c:429 utils/mb/mbutils.c:758
+#: utils/mb/mbutils.c:784
 #, c-format
 msgid "String of %d bytes is too long for encoding conversion."
 msgstr "La cadena de %d bytes es demasiado larga para la recodificación."
 
-#: utils/mb/mbutils.c:453
+#: utils/mb/mbutils.c:511
 #, c-format
 msgid "invalid source encoding name \"%s\""
 msgstr "la codificación de origen «%s» no es válida"
 
-#: utils/mb/mbutils.c:458
+#: utils/mb/mbutils.c:516
 #, c-format
 msgid "invalid destination encoding name \"%s\""
 msgstr "la codificación de destino «%s» no es válida"
 
-#: utils/mb/mbutils.c:598
+#: utils/mb/mbutils.c:656
 #, c-format
 msgid "invalid byte value for encoding \"%s\": 0x%02x"
 msgstr "byte no válido para codificación «%s»: 0x%02x"
 
-#: utils/mb/mbutils.c:940
+#: utils/mb/mbutils.c:819
+#, fuzzy, c-format
+#| msgid "invalid Unicode surrogate pair"
+msgid "invalid Unicode code point"
+msgstr "par sustituto (surrogate) Unicode no válido"
+
+#: utils/mb/mbutils.c:1087
 #, c-format
 msgid "bind_textdomain_codeset failed"
 msgstr "bind_textdomain_codeset falló"
 
-#: utils/mb/wchar.c:2063
+#: utils/mb/mbutils.c:1595
 #, c-format
 msgid "invalid byte sequence for encoding \"%s\": %s"
 msgstr "secuencia de bytes no válida para codificación «%s»: %s"
 
-#: utils/mb/wchar.c:2096
+#: utils/mb/mbutils.c:1628
 #, c-format
 msgid "character with byte sequence %s in encoding \"%s\" has no equivalent in encoding \"%s\""
 msgstr "carácter con secuencia de bytes %s en codificación «%s» no tiene equivalente en la codificación «%s»"
 
-#: utils/misc/guc.c:634
+#: utils/misc/guc.c:679
 msgid "Ungrouped"
 msgstr "Sin Grupo"
 
-#: utils/misc/guc.c:636
+#: utils/misc/guc.c:681
 msgid "File Locations"
 msgstr "Ubicaciones de Archivos"
 
-#: utils/misc/guc.c:638
+#: utils/misc/guc.c:683
 msgid "Connections and Authentication"
 msgstr "Conexiones y Autentificación"
 
-#: utils/misc/guc.c:640
+#: utils/misc/guc.c:685
 msgid "Connections and Authentication / Connection Settings"
 msgstr "Conexiones y Autentificación / Parámetros de Conexión"
 
-#: utils/misc/guc.c:642
+#: utils/misc/guc.c:687
 msgid "Connections and Authentication / Authentication"
 msgstr "Conexiones y Autentificación / Autentificación"
 
-#: utils/misc/guc.c:644
+#: utils/misc/guc.c:689
 msgid "Connections and Authentication / SSL"
 msgstr "Conexiones y Autentificación / SSL"
 
-#: utils/misc/guc.c:646
+#: utils/misc/guc.c:691
 msgid "Resource Usage"
 msgstr "Uso de Recursos"
 
-#: utils/misc/guc.c:648
+#: utils/misc/guc.c:693
 msgid "Resource Usage / Memory"
 msgstr "Uso de Recursos / Memoria"
 
-#: utils/misc/guc.c:650
+#: utils/misc/guc.c:695
 msgid "Resource Usage / Disk"
 msgstr "Uso de Recursos / Disco"
 
-#: utils/misc/guc.c:652
+#: utils/misc/guc.c:697
 msgid "Resource Usage / Kernel Resources"
 msgstr "Uso de Recursos / Recursos del Kernel"
 
-#: utils/misc/guc.c:654
+#: utils/misc/guc.c:699
 msgid "Resource Usage / Cost-Based Vacuum Delay"
 msgstr "Uso de Recursos / Retardo de Vacuum por Costos"
 
-#: utils/misc/guc.c:656
+#: utils/misc/guc.c:701
 msgid "Resource Usage / Background Writer"
 msgstr "Uso de Recursos / Escritor en Segundo Plano"
 
-#: utils/misc/guc.c:658
+#: utils/misc/guc.c:703
 msgid "Resource Usage / Asynchronous Behavior"
 msgstr "Uso de Recursos / Comportamiento Asíncrono"
 
-#: utils/misc/guc.c:660
+#: utils/misc/guc.c:705
 msgid "Write-Ahead Log"
 msgstr "Write-Ahead Log"
 
-#: utils/misc/guc.c:662
+#: utils/misc/guc.c:707
 msgid "Write-Ahead Log / Settings"
 msgstr "Write-Ahead Log / Configuraciones"
 
-#: utils/misc/guc.c:664
+#: utils/misc/guc.c:709
 msgid "Write-Ahead Log / Checkpoints"
 msgstr "Write-Ahead Log / Puntos de Control (Checkpoints)"
 
-#: utils/misc/guc.c:666
+#: utils/misc/guc.c:711
 msgid "Write-Ahead Log / Archiving"
 msgstr "Write-Ahead Log / Archivado"
 
-#: utils/misc/guc.c:668
+#: utils/misc/guc.c:713
 msgid "Write-Ahead Log / Archive Recovery"
 msgstr "Write-Ahead Log / Recuperación desde Archivo"
 
-#: utils/misc/guc.c:670
+#: utils/misc/guc.c:715
 msgid "Write-Ahead Log / Recovery Target"
 msgstr "Write-Ahead Log / Destino de Recuperación"
 
-#: utils/misc/guc.c:672
+#: utils/misc/guc.c:717
 msgid "Replication"
 msgstr "Replicación"
 
-#: utils/misc/guc.c:674
+#: utils/misc/guc.c:719
 msgid "Replication / Sending Servers"
 msgstr "Replicación / Servidores de Envío"
 
-#: utils/misc/guc.c:676
+#: utils/misc/guc.c:721
 msgid "Replication / Master Server"
 msgstr "Replicación / Servidor Maestro"
 
-#: utils/misc/guc.c:678
+#: utils/misc/guc.c:723
 msgid "Replication / Standby Servers"
 msgstr "Replicación / Servidores Standby"
 
-#: utils/misc/guc.c:680
+#: utils/misc/guc.c:725
 msgid "Replication / Subscribers"
 msgstr "Replicación / Suscriptores"
 
-#: utils/misc/guc.c:682
+#: utils/misc/guc.c:727
 msgid "Query Tuning"
 msgstr "Afinamiento de Consultas"
 
-#: utils/misc/guc.c:684
+#: utils/misc/guc.c:729
 msgid "Query Tuning / Planner Method Configuration"
 msgstr "Afinamiento de Consultas / Configuración de Métodos del Planner"
 
-#: utils/misc/guc.c:686
+#: utils/misc/guc.c:731
 msgid "Query Tuning / Planner Cost Constants"
 msgstr "Afinamiento de Consultas / Constantes de Costo del Planner"
 
-#: utils/misc/guc.c:688
+#: utils/misc/guc.c:733
 msgid "Query Tuning / Genetic Query Optimizer"
 msgstr "Afinamiento de Consultas / Optimizador Genético de Consultas"
 
-#: utils/misc/guc.c:690
+#: utils/misc/guc.c:735
 msgid "Query Tuning / Other Planner Options"
 msgstr "Afinamiento de Consultas / Otras Opciones del Planner"
 
-#: utils/misc/guc.c:692
+#: utils/misc/guc.c:737
 msgid "Reporting and Logging"
 msgstr "Reporte y Registro"
 
-#: utils/misc/guc.c:694
+#: utils/misc/guc.c:739
 msgid "Reporting and Logging / Where to Log"
 msgstr "Reporte y Registro / Cuándo Registrar"
 
-#: utils/misc/guc.c:696
+#: utils/misc/guc.c:741
 msgid "Reporting and Logging / When to Log"
 msgstr "Reporte y Registro / Cuándo Registrar"
 
-#: utils/misc/guc.c:698
+#: utils/misc/guc.c:743
 msgid "Reporting and Logging / What to Log"
 msgstr "Reporte y Registro / Qué Registrar"
 
-#: utils/misc/guc.c:700
+#: utils/misc/guc.c:745
 msgid "Process Title"
 msgstr "Título de Proceso"
 
-#: utils/misc/guc.c:702
+#: utils/misc/guc.c:747
 msgid "Statistics"
 msgstr "Estadísticas"
 
-#: utils/misc/guc.c:704
+#: utils/misc/guc.c:749
 msgid "Statistics / Monitoring"
 msgstr "Estadísticas / Monitoreo"
 
-#: utils/misc/guc.c:706
+#: utils/misc/guc.c:751
 msgid "Statistics / Query and Index Statistics Collector"
 msgstr "Estadísticas / Recolector de Estadísticas de Consultas e Índices"
 
-#: utils/misc/guc.c:708
+#: utils/misc/guc.c:753
 msgid "Autovacuum"
 msgstr "Autovacuum"
 
-#: utils/misc/guc.c:710
+#: utils/misc/guc.c:755
 msgid "Client Connection Defaults"
 msgstr "Valores por Omisión de Conexiones"
 
-#: utils/misc/guc.c:712
+#: utils/misc/guc.c:757
 msgid "Client Connection Defaults / Statement Behavior"
 msgstr "Valores por Omisión de Conexiones / Comportamiento de Sentencias"
 
-#: utils/misc/guc.c:714
+#: utils/misc/guc.c:759
 msgid "Client Connection Defaults / Locale and Formatting"
 msgstr "Valores por Omisión de Conexiones / Configuraciones Regionales y Formateo"
 
-#: utils/misc/guc.c:716
+#: utils/misc/guc.c:761
 msgid "Client Connection Defaults / Shared Library Preloading"
 msgstr "Valores por Omisión de Conexiones / Precargado de Bibliotecas Compartidas"
 
-#: utils/misc/guc.c:718
+#: utils/misc/guc.c:763
 msgid "Client Connection Defaults / Other Defaults"
 msgstr "Valores por Omisión de Conexiones / Otros Valores"
 
-#: utils/misc/guc.c:720
+#: utils/misc/guc.c:765
 msgid "Lock Management"
 msgstr "Manejo de Bloqueos"
 
-#: utils/misc/guc.c:722
+#: utils/misc/guc.c:767
 msgid "Version and Platform Compatibility"
 msgstr "Compatibilidad de Versión y Plataforma"
 
-#: utils/misc/guc.c:724
+#: utils/misc/guc.c:769
 msgid "Version and Platform Compatibility / Previous PostgreSQL Versions"
 msgstr "Compatibilidad de Versión y Plataforma / Versiones Anteriores de PostgreSQL"
 
-#: utils/misc/guc.c:726
+#: utils/misc/guc.c:771
 msgid "Version and Platform Compatibility / Other Platforms and Clients"
 msgstr "Compatibilidad de Versión y Plataforma / Otras Plataformas y Clientes"
 
-#: utils/misc/guc.c:728
+#: utils/misc/guc.c:773
 msgid "Error Handling"
 msgstr "Gestión de Errores"
 
-#: utils/misc/guc.c:730
+#: utils/misc/guc.c:775
 msgid "Preset Options"
 msgstr "Opciones Predefinidas"
 
-#: utils/misc/guc.c:732
+#: utils/misc/guc.c:777
 msgid "Customized Options"
 msgstr "Opciones Personalizadas"
 
-#: utils/misc/guc.c:734
+#: utils/misc/guc.c:779
 msgid "Developer Options"
 msgstr "Opciones de Desarrollador"
 
-#: utils/misc/guc.c:786
+#: utils/misc/guc.c:837
 msgid "Valid units for this parameter are \"B\", \"kB\", \"MB\", \"GB\", and \"TB\"."
 msgstr "Unidades válidas para este parámetro son «B», «kB», «MB», «GB» y «TB»."
 
-#: utils/misc/guc.c:823
+#: utils/misc/guc.c:874
 msgid "Valid units for this parameter are \"us\", \"ms\", \"s\", \"min\", \"h\", and \"d\"."
 msgstr "Unidades válidas son para este parámetro son «us», «ms», «s», «min», «h» y «d»."
 
-#: utils/misc/guc.c:885
+#: utils/misc/guc.c:936
 msgid "Enables the planner's use of sequential-scan plans."
 msgstr "Permitir el uso de planes de recorrido secuencial."
 
-#: utils/misc/guc.c:895
+#: utils/misc/guc.c:946
 msgid "Enables the planner's use of index-scan plans."
 msgstr "Permitir el uso de planes de recorrido de índice."
 
-#: utils/misc/guc.c:905
+#: utils/misc/guc.c:956
 msgid "Enables the planner's use of index-only-scan plans."
 msgstr "Permitir el uso de planes de recorrido de sólo-índice."
 
-#: utils/misc/guc.c:915
+#: utils/misc/guc.c:966
 msgid "Enables the planner's use of bitmap-scan plans."
 msgstr "Permitir el uso de planes de recorrido de índice por mapas de bits."
 
-#: utils/misc/guc.c:925
+#: utils/misc/guc.c:976
 msgid "Enables the planner's use of TID scan plans."
 msgstr "Permitir el uso de planes de recorrido por TID."
 
-#: utils/misc/guc.c:935
+#: utils/misc/guc.c:986
 msgid "Enables the planner's use of explicit sort steps."
 msgstr "Permitir el uso de pasos explícitos de ordenamiento."
 
-#: utils/misc/guc.c:945
+#: utils/misc/guc.c:996
+#, fuzzy
+#| msgid "Enables the planner's use of explicit sort steps."
+msgid "Enables the planner's use of incremental sort steps."
+msgstr "Permitir el uso de pasos explícitos de ordenamiento."
+
+#: utils/misc/guc.c:1005
 msgid "Enables the planner's use of hashed aggregation plans."
 msgstr "Permitir el uso de planes de agregación a través de hash."
 
-#: utils/misc/guc.c:955
+#: utils/misc/guc.c:1015
+#, fuzzy
+#| msgid "Enables the planner's use of hashed aggregation plans."
+msgid "Enables the planner's use of hashed aggregation plans that are expected to exceed work_mem."
+msgstr "Permitir el uso de planes de agregación a través de hash."
+
+#: utils/misc/guc.c:1025
+msgid "Enables the planner's use of hashed aggregation plans for groupingsets when the total size of the hash tables is expected to exceed work_mem."
+msgstr ""
+
+#: utils/misc/guc.c:1035
 msgid "Enables the planner's use of materialization."
 msgstr "Permitir el uso de materialización de planes."
 
-#: utils/misc/guc.c:965
+#: utils/misc/guc.c:1045
 msgid "Enables the planner's use of nested-loop join plans."
 msgstr "Permitir el uso de planes «nested-loop join»."
 
-#: utils/misc/guc.c:975
+#: utils/misc/guc.c:1055
 msgid "Enables the planner's use of merge join plans."
 msgstr "Permitir el uso de planes «merge join»."
 
-#: utils/misc/guc.c:985
+#: utils/misc/guc.c:1065
 msgid "Enables the planner's use of hash join plans."
 msgstr "Permitir el uso de planes «hash join»."
 
-#: utils/misc/guc.c:995
+#: utils/misc/guc.c:1075
 msgid "Enables the planner's use of gather merge plans."
 msgstr "Permitir el uso de planes «gather merge»."
 
-#: utils/misc/guc.c:1005
+#: utils/misc/guc.c:1085
 msgid "Enables partitionwise join."
 msgstr "Permitir el uso de joins por particiones."
 
-#: utils/misc/guc.c:1015
+#: utils/misc/guc.c:1095
 msgid "Enables partitionwise aggregation and grouping."
 msgstr "Permitir el uso de agregación y agrupamiento por particiones."
 
-#: utils/misc/guc.c:1025
+#: utils/misc/guc.c:1105
 msgid "Enables the planner's use of parallel append plans."
 msgstr "Permitir el uso de planes «append» paralelos."
 
-#: utils/misc/guc.c:1035
+#: utils/misc/guc.c:1115
 msgid "Enables the planner's use of parallel hash plans."
 msgstr "Permitir el uso de planes «hash join» paralelos."
 
-#: utils/misc/guc.c:1045
+#: utils/misc/guc.c:1125
 msgid "Enables plan-time and run-time partition pruning."
 msgstr "Permitir el uso de poda de particiones en tiempo de plan y ejecución."
 
-#: utils/misc/guc.c:1046
+#: utils/misc/guc.c:1126
 msgid "Allows the query planner and executor to compare partition bounds to conditions in the query to determine which partitions must be scanned."
 msgstr "Permite al optimizador de consultas y al ejecutor a comparar bordes de particiones a condiciones en las consultas para determinar qué particiones deben recorrerse."
 
-#: utils/misc/guc.c:1057
+#: utils/misc/guc.c:1137
 msgid "Enables genetic query optimization."
 msgstr "Permitir el uso del optimizador genético de consultas."
 
-#: utils/misc/guc.c:1058
+#: utils/misc/guc.c:1138
 msgid "This algorithm attempts to do planning without exhaustive searching."
 msgstr "Este algoritmo intenta planear las consultas sin hacer búsqueda exhaustiva."
 
-#: utils/misc/guc.c:1069
+#: utils/misc/guc.c:1149
 msgid "Shows whether the current user is a superuser."
 msgstr "Indica si el usuario actual es superusuario."
 
-#: utils/misc/guc.c:1079
+#: utils/misc/guc.c:1159
 msgid "Enables advertising the server via Bonjour."
 msgstr "Permitir la publicación del servidor vía Bonjour."
 
-#: utils/misc/guc.c:1088
+#: utils/misc/guc.c:1168
 msgid "Collects transaction commit time."
 msgstr "Recolectar tiempo de compromiso de transacciones."
 
-#: utils/misc/guc.c:1097
+#: utils/misc/guc.c:1177
 msgid "Enables SSL connections."
 msgstr "Permitir conexiones SSL."
 
-#: utils/misc/guc.c:1106
+#: utils/misc/guc.c:1186
 msgid "Also use ssl_passphrase_command during server reload."
 msgstr "También usar ssl_passphrase_command durante la recarga del servidor."
 
-#: utils/misc/guc.c:1115
+#: utils/misc/guc.c:1195
 msgid "Give priority to server ciphersuite order."
 msgstr "Da prioridad al orden de algoritmos de cifrado especificado por el servidor."
 
-#: utils/misc/guc.c:1124
+#: utils/misc/guc.c:1204
 msgid "Forces synchronization of updates to disk."
 msgstr "Forzar la sincronización de escrituras a disco."
 
-#: utils/misc/guc.c:1125
+#: utils/misc/guc.c:1205
 msgid "The server will use the fsync() system call in several places to make sure that updates are physically written to disk. This insures that a database cluster will recover to a consistent state after an operating system or hardware crash."
 msgstr "El servidor usará la llamada a sistema fsync() en varios lugares para asegurarse que las actualizaciones son escritas físicamente a disco. Esto asegura que las bases de datos se recuperarán a un estado consistente después de una caída de hardware o sistema operativo."
 
-#: utils/misc/guc.c:1136
+#: utils/misc/guc.c:1216
 msgid "Continues processing after a checksum failure."
 msgstr "Continuar procesando después de una falla de suma de verificación."
 
-#: utils/misc/guc.c:1137
+#: utils/misc/guc.c:1217
 msgid "Detection of a checksum failure normally causes PostgreSQL to report an error, aborting the current transaction. Setting ignore_checksum_failure to true causes the system to ignore the failure (but still report a warning), and continue processing. This behavior could cause crashes or other serious problems. Only has an effect if checksums are enabled."
 msgstr "La detección de una suma de verificación que no coincide normalmente hace que PostgreSQL reporte un error, abortando la transacción en curso. Definiendo ignore_checksum_failure a true hace que el sistema ignore la falla (pero aún así reporta un mensaje de warning), y continúe el procesamiento. Este comportamiento podría causar caídas del sistema u otros problemas serios. Sólo tiene efecto si las sumas de verificación están activadas."
 
-#: utils/misc/guc.c:1151
+#: utils/misc/guc.c:1231
 msgid "Continues processing past damaged page headers."
 msgstr "Continuar procesando después de detectar encabezados de página dañados."
 
-#: utils/misc/guc.c:1152
+#: utils/misc/guc.c:1232
 msgid "Detection of a damaged page header normally causes PostgreSQL to report an error, aborting the current transaction. Setting zero_damaged_pages to true causes the system to instead report a warning, zero out the damaged page, and continue processing. This behavior will destroy data, namely all the rows on the damaged page."
 msgstr "La detección de un encabezado de página dañado normalmente hace que PostgreSQL reporte un error, abortando la transacción en curso. Definiendo zero_damaged_pages a true hace que el sistema reporte un mensaje de warning, escriba ceros en toda la página, y continúe el procesamiento. Este comportamiento destruirá datos; en particular, todas las tuplas en la página dañada."
 
-#: utils/misc/guc.c:1165
+#: utils/misc/guc.c:1245
+#, fuzzy
+#| msgid "Continues processing after a checksum failure."
+msgid "Continues recovery after an invalid pages failure."
+msgstr "Continuar procesando después de una falla de suma de verificación."
+
+#: utils/misc/guc.c:1246
+#, fuzzy
+#| msgid "Detection of a checksum failure normally causes PostgreSQL to report an error, aborting the current transaction. Setting ignore_checksum_failure to true causes the system to ignore the failure (but still report a warning), and continue processing. This behavior could cause crashes or other serious problems. Only has an effect if checksums are enabled."
+msgid "Detection of WAL records having references to invalid pages during recovery causes PostgreSQL to raise a PANIC-level error, aborting the recovery. Setting ignore_invalid_pages to true causes the system to ignore invalid page references in WAL records (but still report a warning), and continue recovery. This behavior may cause crashes, data loss, propagate or hide corruption, or other serious problems. Only has an effect during recovery or in standby mode."
+msgstr "La detección de una suma de verificación que no coincide normalmente hace que PostgreSQL reporte un error, abortando la transacción en curso. Definiendo ignore_checksum_failure a true hace que el sistema ignore la falla (pero aún así reporta un mensaje de warning), y continúe el procesamiento. Este comportamiento podría causar caídas del sistema u otros problemas serios. Sólo tiene efecto si las sumas de verificación están activadas."
+
+#: utils/misc/guc.c:1264
 msgid "Writes full pages to WAL when first modified after a checkpoint."
 msgstr "Escribe páginas completas a WAL cuando son modificadas después de un punto de control."
 
-#: utils/misc/guc.c:1166
+#: utils/misc/guc.c:1265
 msgid "A page write in process during an operating system crash might be only partially written to disk.  During recovery, the row changes stored in WAL are not enough to recover.  This option writes pages when first modified after a checkpoint to WAL so full recovery is possible."
 msgstr "Una escritura de página que está siendo procesada durante una caída del sistema operativo puede ser completada sólo parcialmente.  Durante la recuperación, los cambios de registros (tuplas) almacenados en WAL no son suficientes para la recuperación. Esta opción activa la escritura de las páginas a WAL cuando son modificadas por primera vez después de un punto de control, de manera que una recuperación total es posible."
 
-#: utils/misc/guc.c:1179
+#: utils/misc/guc.c:1278
 msgid "Writes full pages to WAL when first modified after a checkpoint, even for a non-critical modifications."
 msgstr "Escribir páginas completas a WAL cuando son modificadas después de un punto de control, incluso para modificaciones no críticas."
 
-#: utils/misc/guc.c:1189
+#: utils/misc/guc.c:1288
 msgid "Compresses full-page writes written in WAL file."
 msgstr "Comprimir las imágenes de páginas completas al escribirlas a WAL."
 
-#: utils/misc/guc.c:1199
+#: utils/misc/guc.c:1298
 msgid "Writes zeroes to new WAL files before first use."
 msgstr "Escribir ceros a nuevos archivos WAL antes del primer uso."
 
-#: utils/misc/guc.c:1209
+#: utils/misc/guc.c:1308
 msgid "Recycles WAL files by renaming them."
 msgstr "Reciclar archivos de WAL cambiándoles de nombre."
 
-#: utils/misc/guc.c:1219
+#: utils/misc/guc.c:1318
 msgid "Logs each checkpoint."
 msgstr "Registrar cada punto de control."
 
-#: utils/misc/guc.c:1228
+#: utils/misc/guc.c:1327
 msgid "Logs each successful connection."
 msgstr "Registrar cada conexión exitosa."
 
-#: utils/misc/guc.c:1237
+#: utils/misc/guc.c:1336
 msgid "Logs end of a session, including duration."
 msgstr "Registrar el fin de una sesión, incluyendo su duración."
 
-#: utils/misc/guc.c:1246
+#: utils/misc/guc.c:1345
 msgid "Logs each replication command."
 msgstr "Registrar cada orden de replicación."
 
-#: utils/misc/guc.c:1255
+#: utils/misc/guc.c:1354
 msgid "Shows whether the running server has assertion checks enabled."
 msgstr "Indica si el servidor actual tiene activas las aseveraciones (asserts) activas."
 
-#: utils/misc/guc.c:1270
+#: utils/misc/guc.c:1369
 msgid "Terminate session on any error."
 msgstr "Terminar sesión ante cualquier error."
 
-#: utils/misc/guc.c:1279
+#: utils/misc/guc.c:1378
 msgid "Reinitialize server after backend crash."
 msgstr "Reinicializar el servidor después de una caída de un proceso servidor."
 
-#: utils/misc/guc.c:1289
+#: utils/misc/guc.c:1388
 msgid "Logs the duration of each completed SQL statement."
 msgstr "Registrar la duración de cada sentencia SQL ejecutada."
 
-#: utils/misc/guc.c:1298
+#: utils/misc/guc.c:1397
 msgid "Logs each query's parse tree."
 msgstr "Registrar cada arbol analizado de consulta "
 
-#: utils/misc/guc.c:1307
+#: utils/misc/guc.c:1406
 msgid "Logs each query's rewritten parse tree."
 msgstr "Registrar cada reescritura del arból analizado de consulta"
 
-#: utils/misc/guc.c:1316
+#: utils/misc/guc.c:1415
 msgid "Logs each query's execution plan."
 msgstr "Registrar el plan de ejecución de cada consulta."
 
-#: utils/misc/guc.c:1325
+#: utils/misc/guc.c:1424
 msgid "Indents parse and plan tree displays."
 msgstr "Indentar los árboles de parse y plan."
 
-#: utils/misc/guc.c:1334
+#: utils/misc/guc.c:1433
 msgid "Writes parser performance statistics to the server log."
 msgstr "Escribir estadísticas de parser al registro del servidor."
 
-#: utils/misc/guc.c:1343
+#: utils/misc/guc.c:1442
 msgid "Writes planner performance statistics to the server log."
 msgstr "Escribir estadísticas de planner al registro del servidor."
 
-#: utils/misc/guc.c:1352
+#: utils/misc/guc.c:1451
 msgid "Writes executor performance statistics to the server log."
 msgstr "Escribir estadísticas del executor al registro del servidor."
 
-#: utils/misc/guc.c:1361
+#: utils/misc/guc.c:1460
 msgid "Writes cumulative performance statistics to the server log."
 msgstr "Escribir estadísticas acumulativas al registro del servidor."
 
-#: utils/misc/guc.c:1371
+#: utils/misc/guc.c:1470
 msgid "Logs system resource usage statistics (memory and CPU) on various B-tree operations."
 msgstr "Registrar uso de recursos de sistema (memoria y CPU) en varias operaciones B-tree."
 
-#: utils/misc/guc.c:1383
+#: utils/misc/guc.c:1482
 msgid "Collects information about executing commands."
 msgstr "Recolectar estadísticas sobre órdenes en ejecución."
 
-#: utils/misc/guc.c:1384
+#: utils/misc/guc.c:1483
 msgid "Enables the collection of information on the currently executing command of each session, along with the time at which that command began execution."
 msgstr "Activa la recolección de información sobre la orden actualmente en ejecución en cada sesión, junto con el momento en el cual esa orden comenzó la ejecución."
 
-#: utils/misc/guc.c:1394
+#: utils/misc/guc.c:1493
 msgid "Collects statistics on database activity."
 msgstr "Recolectar estadísticas de actividad de la base de datos."
 
-#: utils/misc/guc.c:1403
+#: utils/misc/guc.c:1502
 msgid "Collects timing statistics for database I/O activity."
 msgstr "Recolectar estadísticas de tiempos en las operaciones de I/O de la base de datos."
 
-#: utils/misc/guc.c:1413
+#: utils/misc/guc.c:1512
 msgid "Updates the process title to show the active SQL command."
 msgstr "Actualiza el título del proceso para mostrar la orden SQL activo."
 
-#: utils/misc/guc.c:1414
+#: utils/misc/guc.c:1513
 msgid "Enables updating of the process title every time a new SQL command is received by the server."
 msgstr "Habilita que se actualice el título del proceso cada vez que una orden SQL es recibido por el servidor."
 
-#: utils/misc/guc.c:1427
+#: utils/misc/guc.c:1526
 msgid "Starts the autovacuum subprocess."
 msgstr "Iniciar el subproceso de autovacuum."
 
-#: utils/misc/guc.c:1437
+#: utils/misc/guc.c:1536
 msgid "Generates debugging output for LISTEN and NOTIFY."
 msgstr "Generar salida de depuración para LISTEN y NOTIFY."
 
-#: utils/misc/guc.c:1449
+#: utils/misc/guc.c:1548
 msgid "Emits information about lock usage."
 msgstr "Emitir información acerca del uso de locks."
 
-#: utils/misc/guc.c:1459
+#: utils/misc/guc.c:1558
 msgid "Emits information about user lock usage."
 msgstr "Emitir información acerca del uso de locks de usuario."
 
-#: utils/misc/guc.c:1469
+#: utils/misc/guc.c:1568
 msgid "Emits information about lightweight lock usage."
 msgstr "Emitir información acerca del uso de «lightweight locks»."
 
-#: utils/misc/guc.c:1479
+#: utils/misc/guc.c:1578
 msgid "Dumps information about all current locks when a deadlock timeout occurs."
 msgstr "Volcar información acerca de los locks existentes cuando se agota el tiempo de deadlock."
 
-#: utils/misc/guc.c:1491
+#: utils/misc/guc.c:1590
 msgid "Logs long lock waits."
 msgstr "Registrar esperas largas de bloqueos."
 
-#: utils/misc/guc.c:1501
+#: utils/misc/guc.c:1600
 msgid "Logs the host name in the connection logs."
 msgstr "Registrar el nombre del host en la conexión."
 
-#: utils/misc/guc.c:1502
+#: utils/misc/guc.c:1601
 msgid "By default, connection logs only show the IP address of the connecting host. If you want them to show the host name you can turn this on, but depending on your host name resolution setup it might impose a non-negligible performance penalty."
 msgstr "Por omisión, los registros de conexión sólo muestran la dirección IP del host que establece la conexión. Si desea que se despliegue el nombre del host puede activar esta opción, pero dependiendo de su configuración de resolución de nombres esto puede imponer una penalización de rendimiento no despreciable."
 
-#: utils/misc/guc.c:1513
+#: utils/misc/guc.c:1612
 msgid "Treats \"expr=NULL\" as \"expr IS NULL\"."
 msgstr "Tratar expr=NULL como expr IS NULL."
 
-#: utils/misc/guc.c:1514
+#: utils/misc/guc.c:1613
 msgid "When turned on, expressions of the form expr = NULL (or NULL = expr) are treated as expr IS NULL, that is, they return true if expr evaluates to the null value, and false otherwise. The correct behavior of expr = NULL is to always return null (unknown)."
 msgstr "Cuando está activado, expresiones de la forma expr = NULL (o NULL = expr) son tratadas como expr IS NULL, esto es, retornarán verdadero si expr es evaluada al valor nulo, y falso en caso contrario. El comportamiento correcto de expr = NULL es retornar siempre null (desconocido)."
 
-#: utils/misc/guc.c:1526
+#: utils/misc/guc.c:1625
 msgid "Enables per-database user names."
 msgstr "Activar el uso de nombre de usuario locales a cada base de datos."
 
-#: utils/misc/guc.c:1535
+#: utils/misc/guc.c:1634
 msgid "Sets the default read-only status of new transactions."
 msgstr "Estado por omisión de sólo lectura de nuevas transacciones."
 
-#: utils/misc/guc.c:1544
+#: utils/misc/guc.c:1643
 msgid "Sets the current transaction's read-only status."
 msgstr "Activa el estado de sólo lectura de la transacción en curso."
 
-#: utils/misc/guc.c:1554
+#: utils/misc/guc.c:1653
 msgid "Sets the default deferrable status of new transactions."
 msgstr "Estado por omisión de postergable de nuevas transacciones."
 
-#: utils/misc/guc.c:1563
+#: utils/misc/guc.c:1662
 msgid "Whether to defer a read-only serializable transaction until it can be executed with no possible serialization failures."
 msgstr "Si está activo, las transacciones serializables de sólo lectura serán pausadas hasta que puedan ejecutarse sin posibles fallas de serialización."
 
-#: utils/misc/guc.c:1573
+#: utils/misc/guc.c:1672
 msgid "Enable row security."
 msgstr "Activar seguridad de registros."
 
-#: utils/misc/guc.c:1574
+#: utils/misc/guc.c:1673
 msgid "When enabled, row security will be applied to all users."
 msgstr "Cuando está activada, la seguridad de registros se aplicará a todos los usuarios."
 
-#: utils/misc/guc.c:1582
+#: utils/misc/guc.c:1681
 msgid "Check function bodies during CREATE FUNCTION."
 msgstr "Verificar definición de funciones durante CREATE FUNCTION."
 
-#: utils/misc/guc.c:1591
+#: utils/misc/guc.c:1690
 msgid "Enable input of NULL elements in arrays."
 msgstr "Habilita el ingreso de elementos nulos en arrays."
 
-#: utils/misc/guc.c:1592
+#: utils/misc/guc.c:1691
 msgid "When turned on, unquoted NULL in an array input value means a null value; otherwise it is taken literally."
 msgstr "Cuando está activo, un valor NULL sin comillas en la entrada de un array significa un valor nulo; en caso contrario es tomado literalmente."
 
-#: utils/misc/guc.c:1608
+#: utils/misc/guc.c:1707
 msgid "WITH OIDS is no longer supported; this can only be false."
 msgstr "WITH OIDS ya no está soportado; esto sólo puede ser false."
 
-#: utils/misc/guc.c:1618
+#: utils/misc/guc.c:1717
 msgid "Start a subprocess to capture stderr output and/or csvlogs into log files."
 msgstr "Lanzar un subproceso para capturar stderr y/o logs CSV en archivos de log."
 
-#: utils/misc/guc.c:1627
+#: utils/misc/guc.c:1726
 msgid "Truncate existing log files of same name during log rotation."
 msgstr "Truncar archivos de log del mismo nombre durante la rotación."
 
-#: utils/misc/guc.c:1638
+#: utils/misc/guc.c:1737
 msgid "Emit information about resource usage in sorting."
 msgstr "Emitir información acerca de uso de recursos durante los ordenamientos."
 
-#: utils/misc/guc.c:1652
+#: utils/misc/guc.c:1751
 msgid "Generate debugging output for synchronized scanning."
 msgstr "Generar salida de depuración para recorrido sincronizado."
 
-#: utils/misc/guc.c:1667
+#: utils/misc/guc.c:1766
 msgid "Enable bounded sorting using heap sort."
 msgstr "Activar ordenamiento acotado usando «heap sort»."
 
-#: utils/misc/guc.c:1680
+#: utils/misc/guc.c:1779
 msgid "Emit WAL-related debugging output."
 msgstr "Activar salida de depuración de WAL."
 
-#: utils/misc/guc.c:1692
+#: utils/misc/guc.c:1791
 msgid "Datetimes are integer based."
 msgstr "Las fechas y horas se basan en tipos enteros."
 
-#: utils/misc/guc.c:1703
+#: utils/misc/guc.c:1802
 msgid "Sets whether Kerberos and GSSAPI user names should be treated as case-insensitive."
 msgstr "Define que los nombres de usuario Kerberos y GSSAPI deberían ser tratados sin distinción de mayúsculas."
 
-#: utils/misc/guc.c:1713
+#: utils/misc/guc.c:1812
 msgid "Warn about backslash escapes in ordinary string literals."
 msgstr "Avisa acerca de escapes de backslash en literales de cadena corrientes."
 
-#: utils/misc/guc.c:1723
+#: utils/misc/guc.c:1822
 msgid "Causes '...' strings to treat backslashes literally."
 msgstr "Provoca que las cadenas '...' traten las barras inclinadas inversas (\\) en forma literal."
 
-#: utils/misc/guc.c:1734
+#: utils/misc/guc.c:1833
 msgid "Enable synchronized sequential scans."
 msgstr "Permitir la sincronización de recorridos secuenciales."
 
-#: utils/misc/guc.c:1744
+#: utils/misc/guc.c:1843
 msgid "Sets whether to include or exclude transaction with recovery target."
 msgstr "Define si incluir o excluir la transacción con el destino de recuperación."
 
-#: utils/misc/guc.c:1754
+#: utils/misc/guc.c:1853
 msgid "Allows connections and queries during recovery."
 msgstr "Permite conexiones y consultas durante la recuperación."
 
-#: utils/misc/guc.c:1764
+#: utils/misc/guc.c:1863
 msgid "Allows feedback from a hot standby to the primary that will avoid query conflicts."
 msgstr "Permite retroalimentación desde un hot standby hacia el primario que evitará conflictos en consultas."
 
-#: utils/misc/guc.c:1774
+#: utils/misc/guc.c:1873
 msgid "Allows modifications of the structure of system tables."
 msgstr "Permite modificaciones de la estructura de las tablas del sistema."
 
-#: utils/misc/guc.c:1785
+#: utils/misc/guc.c:1884
 msgid "Disables reading from system indexes."
 msgstr "Deshabilita lectura de índices del sistema."
 
-#: utils/misc/guc.c:1786
+#: utils/misc/guc.c:1885
 msgid "It does not prevent updating the indexes, so it is safe to use.  The worst consequence is slowness."
 msgstr "No evita la actualización de índices, así que es seguro. Lo peor que puede ocurrir es lentitud del sistema."
 
-#: utils/misc/guc.c:1797
+#: utils/misc/guc.c:1896
 msgid "Enables backward compatibility mode for privilege checks on large objects."
 msgstr "Activa el modo de compatibilidad con versiones anteriores de las comprobaciones de privilegios de objetos grandes."
 
-#: utils/misc/guc.c:1798
+#: utils/misc/guc.c:1897
 msgid "Skips privilege checks when reading or modifying large objects, for compatibility with PostgreSQL releases prior to 9.0."
 msgstr "Omite las comprobaciones de privilegios cuando se leen o modifican los objetos grandes, para compatibilidad con versiones de PostgreSQL anteriores a 9.0."
 
-#: utils/misc/guc.c:1808
+#: utils/misc/guc.c:1907
 msgid "Emit a warning for constructs that changed meaning since PostgreSQL 9.4."
 msgstr "Emitir una advertencia en constructos que cambiaron significado desde PostgreSQL 9.4."
 
-#: utils/misc/guc.c:1818
+#: utils/misc/guc.c:1917
 msgid "When generating SQL fragments, quote all identifiers."
 msgstr "Al generar fragmentos SQL, entrecomillar todos los identificadores."
 
-#: utils/misc/guc.c:1828
+#: utils/misc/guc.c:1927
 msgid "Shows whether data checksums are turned on for this cluster."
 msgstr "Indica si las sumas de verificación están activas en este cluster."
 
-#: utils/misc/guc.c:1839
+#: utils/misc/guc.c:1938
 msgid "Add sequence number to syslog messages to avoid duplicate suppression."
 msgstr "Agregar número de secuencia a mensajes syslog para evitar supresión de duplicados."
 
-#: utils/misc/guc.c:1849
+#: utils/misc/guc.c:1948
 msgid "Split messages sent to syslog by lines and to fit into 1024 bytes."
 msgstr "Dividir mensajes enviados a syslog en líneas y que quepan en 1024 bytes."
 
-#: utils/misc/guc.c:1859
+#: utils/misc/guc.c:1958
 msgid "Controls whether Gather and Gather Merge also run subplans."
 msgstr "Controla si los Gather y Gather Merge también ejecutan subplanes."
 
-#: utils/misc/guc.c:1860
+#: utils/misc/guc.c:1959
 msgid "Should gather nodes also run subplans, or just gather tuples?"
 msgstr "¿Deben los nodos de recolección ejecutar subplanes, o sólo recolectar tuplas?"
 
-#: utils/misc/guc.c:1870
+#: utils/misc/guc.c:1969
 msgid "Allow JIT compilation."
 msgstr "Permitir compilación JIT."
 
-#: utils/misc/guc.c:1881
+#: utils/misc/guc.c:1980
 msgid "Register JIT compiled function with debugger."
 msgstr "Registra la función JIT compilada con el depurador."
 
-#: utils/misc/guc.c:1898
+#: utils/misc/guc.c:1997
 msgid "Write out LLVM bitcode to facilitate JIT debugging."
 msgstr "Escribe el bitcode LLVM para facilitar depuración de JIT."
 
-#: utils/misc/guc.c:1909
+#: utils/misc/guc.c:2008
 msgid "Allow JIT compilation of expressions."
 msgstr "Permitir compilación JIT de expresiones."
 
-#: utils/misc/guc.c:1920
+#: utils/misc/guc.c:2019
 msgid "Register JIT compiled function with perf profiler."
 msgstr "Registrar funciones JIT-compiladas con el analizador «perf»."
 
-#: utils/misc/guc.c:1937
+#: utils/misc/guc.c:2036
 msgid "Allow JIT compilation of tuple deforming."
 msgstr "Permitir compilación JIT de deformación de tuplas."
 
-#: utils/misc/guc.c:1948
+#: utils/misc/guc.c:2047
 msgid "Whether to continue running after a failure to sync data files."
 msgstr "Si continuar ejecutando después de una falla al sincronizar archivos de datos."
 
-#: utils/misc/guc.c:1966
+#: utils/misc/guc.c:2056
+msgid "Sets whether a WAL receiver should create a temporary replication slot if no permanent slot is configured."
+msgstr ""
+
+#: utils/misc/guc.c:2074
 msgid "Forces a switch to the next WAL file if a new file has not been started within N seconds."
 msgstr "Fuerza a que utilizar el siguiente archivo de WAL si no se ha comenzado un nuevo archivo de WAL dentro de N segundos."
 
-#: utils/misc/guc.c:1977
+#: utils/misc/guc.c:2085
 msgid "Waits N seconds on connection startup after authentication."
 msgstr "Espera N segundos al inicio de la conexión después de la autentificación."
 
-#: utils/misc/guc.c:1978 utils/misc/guc.c:2524
+#: utils/misc/guc.c:2086 utils/misc/guc.c:2644
 msgid "This allows attaching a debugger to the process."
 msgstr "Esto permite adjuntar un depurador al proceso."
 
-#: utils/misc/guc.c:1987
+#: utils/misc/guc.c:2095
 msgid "Sets the default statistics target."
 msgstr "Definir el valor por omisión de toma de estadísticas."
 
-#: utils/misc/guc.c:1988
+#: utils/misc/guc.c:2096
 msgid "This applies to table columns that have not had a column-specific target set via ALTER TABLE SET STATISTICS."
 msgstr "Esto se aplica a columnas de tablas que no tienen un valor definido a través de ALTER TABLE SET STATISTICS."
 
-#: utils/misc/guc.c:1997
+#: utils/misc/guc.c:2105
 msgid "Sets the FROM-list size beyond which subqueries are not collapsed."
 msgstr "Tamaño de lista de FROM a partir del cual subconsultas no serán colapsadas."
 
-#: utils/misc/guc.c:1999
+#: utils/misc/guc.c:2107
 msgid "The planner will merge subqueries into upper queries if the resulting FROM list would have no more than this many items."
 msgstr "El planner mezclará subconsultas en consultas de nivel superior si la lista FROM resultante es menor que esta cantidad de ítems."
 
-#: utils/misc/guc.c:2010
+#: utils/misc/guc.c:2118
 msgid "Sets the FROM-list size beyond which JOIN constructs are not flattened."
 msgstr "Tamaño de lista de FROM a partir del cual constructos JOIN no serán aplanados."
 
-#: utils/misc/guc.c:2012
+#: utils/misc/guc.c:2120
 msgid "The planner will flatten explicit JOIN constructs into lists of FROM items whenever a list of no more than this many items would result."
 msgstr "El planner aplanará constructos JOIN explícitos en listas de ítems FROM siempre que la lista resultante no tenga más que esta cantidad de ítems."
 
-#: utils/misc/guc.c:2023
+#: utils/misc/guc.c:2131
 msgid "Sets the threshold of FROM items beyond which GEQO is used."
 msgstr "Umbral de ítems en FROM a partir del cual se usará GEQO."
 
-#: utils/misc/guc.c:2033
+#: utils/misc/guc.c:2141
 msgid "GEQO: effort is used to set the default for other GEQO parameters."
 msgstr "GEQO: effort se usa para determinar los valores por defecto para otros parámetros."
 
-#: utils/misc/guc.c:2043
+#: utils/misc/guc.c:2151
 msgid "GEQO: number of individuals in the population."
 msgstr "GEQO: número de individuos en una población."
 
-#: utils/misc/guc.c:2044 utils/misc/guc.c:2054
+#: utils/misc/guc.c:2152 utils/misc/guc.c:2162
 msgid "Zero selects a suitable default value."
 msgstr "Cero selecciona un valor por omisión razonable."
 
-#: utils/misc/guc.c:2053
+#: utils/misc/guc.c:2161
 msgid "GEQO: number of iterations of the algorithm."
 msgstr "GEQO: número de iteraciones del algoritmo."
 
-#: utils/misc/guc.c:2065
+#: utils/misc/guc.c:2173
 msgid "Sets the time to wait on a lock before checking for deadlock."
 msgstr "Define el tiempo a esperar un lock antes de buscar un deadlock."
 
-#: utils/misc/guc.c:2076
+#: utils/misc/guc.c:2184
 msgid "Sets the maximum delay before canceling queries when a hot standby server is processing archived WAL data."
 msgstr "Define el máximo retardo antes de cancelar consultas cuando un servidor hot standby está procesando datos de WAL archivado."
 
-#: utils/misc/guc.c:2087
+#: utils/misc/guc.c:2195
 msgid "Sets the maximum delay before canceling queries when a hot standby server is processing streamed WAL data."
 msgstr "Define el máximo retardo antes de cancelar consultas cuando un servidor hot standby está procesando datos de WAL en flujo."
 
-#: utils/misc/guc.c:2098
+#: utils/misc/guc.c:2206
 msgid "Sets the minimum delay for applying changes during recovery."
 msgstr "Define el retraso mínimo para aplicar cambios durante la recuperación."
 
-#: utils/misc/guc.c:2109
+#: utils/misc/guc.c:2217
 msgid "Sets the maximum interval between WAL receiver status reports to the sending server."
 msgstr "Define el intervalo máximo entre reportes de estado que el receptor WAL envía al servidor origen."
 
-#: utils/misc/guc.c:2120
+#: utils/misc/guc.c:2228
 msgid "Sets the maximum wait time to receive data from the sending server."
 msgstr "Define el máximo tiempo de espera para recibir datos desde el servidor origen."
 
-#: utils/misc/guc.c:2131
+#: utils/misc/guc.c:2239
 msgid "Sets the maximum number of concurrent connections."
 msgstr "Número máximo de conexiones concurrentes."
 
-#: utils/misc/guc.c:2142
+#: utils/misc/guc.c:2250
 msgid "Sets the number of connection slots reserved for superusers."
 msgstr "Número de conexiones reservadas para superusuarios."
 
-#: utils/misc/guc.c:2156
+#: utils/misc/guc.c:2264
 msgid "Sets the number of shared memory buffers used by the server."
 msgstr "Número de búfers de memoria compartida usados por el servidor."
 
-#: utils/misc/guc.c:2167
+#: utils/misc/guc.c:2275
 msgid "Sets the maximum number of temporary buffers used by each session."
 msgstr "Número de búfers de memoria temporal usados por cada sesión."
 
-#: utils/misc/guc.c:2178
+#: utils/misc/guc.c:2286
 msgid "Sets the TCP port the server listens on."
 msgstr "Puerto TCP en el cual escuchará el servidor."
 
-#: utils/misc/guc.c:2188
+#: utils/misc/guc.c:2296
 msgid "Sets the access permissions of the Unix-domain socket."
 msgstr "Privilegios de acceso al socket Unix."
 
-#: utils/misc/guc.c:2189
+#: utils/misc/guc.c:2297
 msgid "Unix-domain sockets use the usual Unix file system permission set. The parameter value is expected to be a numeric mode specification in the form accepted by the chmod and umask system calls. (To use the customary octal format the number must start with a 0 (zero).)"
 msgstr "Los sockets de dominio Unix usan la funcionalidad de permisos de archivos estándar de Unix. Se espera que el valor de esta opción sea una especificación numérica de modo, en la forma aceptada por las llamadas a sistema chmod y umask. Para usar el modo octal acostumbrado, comience el número con un 0 (cero)."
 
-#: utils/misc/guc.c:2203
+#: utils/misc/guc.c:2311
 msgid "Sets the file permissions for log files."
 msgstr "Define los privilegios para los archivos del registro del servidor."
 
-#: utils/misc/guc.c:2204
+#: utils/misc/guc.c:2312
 msgid "The parameter value is expected to be a numeric mode specification in the form accepted by the chmod and umask system calls. (To use the customary octal format the number must start with a 0 (zero).)"
 msgstr "Se espera que el valor de esta opción sea una especificación numérica de modo, en la forma aceptada por las llamadas a sistema chmod y umask. Para usar el modo octal acostumbrado, comience el número con un 0 (cero)."
 
-#: utils/misc/guc.c:2218
+#: utils/misc/guc.c:2326
 msgid "Mode of the data directory."
 msgstr "Modo del directorio de datos."
 
-#: utils/misc/guc.c:2219
+#: utils/misc/guc.c:2327
 msgid "The parameter value is a numeric mode specification in the form accepted by the chmod and umask system calls. (To use the customary octal format the number must start with a 0 (zero).)"
 msgstr "El valor del parámetro es una especificación numérica de modo, en la forma aceptada por las llamadas a sistema chmod y umask. (Para usar el modo octal acostumbrado, comience el número con un 0 (cero).)"
 
-#: utils/misc/guc.c:2232
+#: utils/misc/guc.c:2340
 msgid "Sets the maximum memory to be used for query workspaces."
 msgstr "Establece el límite de memoria que se usará para espacios de trabajo de consultas."
 
-#: utils/misc/guc.c:2233
+#: utils/misc/guc.c:2341
 msgid "This much memory can be used by each internal sort operation and hash table before switching to temporary disk files."
 msgstr "Esta es la cantidad máxima de memoria que se usará para operaciones internas de ordenamiento y tablas de hashing, antes de comenzar a usar archivos temporales en disco."
 
-#: utils/misc/guc.c:2245
+#: utils/misc/guc.c:2353
 msgid "Sets the maximum memory to be used for maintenance operations."
 msgstr "Establece el límite de memoria que se usará para operaciones de mantención."
 
-#: utils/misc/guc.c:2246
+#: utils/misc/guc.c:2354
 msgid "This includes operations such as VACUUM and CREATE INDEX."
 msgstr "Esto incluye operaciones como VACUUM y CREATE INDEX."
 
-#: utils/misc/guc.c:2261
+#: utils/misc/guc.c:2364
+#, fuzzy
+#| msgid "Sets the maximum memory to be used for maintenance operations."
+msgid "Sets the maximum memory to be used for logical decoding."
+msgstr "Establece el límite de memoria que se usará para operaciones de mantención."
+
+#: utils/misc/guc.c:2365
+#, fuzzy
+#| msgid "This much memory can be used by each internal sort operation and hash table before switching to temporary disk files."
+msgid "This much memory can be used by each internal reorder buffer before spilling to disk."
+msgstr "Esta es la cantidad máxima de memoria que se usará para operaciones internas de ordenamiento y tablas de hashing, antes de comenzar a usar archivos temporales en disco."
+
+#: utils/misc/guc.c:2381
 msgid "Sets the maximum stack depth, in kilobytes."
 msgstr "Establece el tamaño máximo del stack, en kilobytes."
 
-#: utils/misc/guc.c:2272
+#: utils/misc/guc.c:2392
 msgid "Limits the total size of all temporary files used by each process."
 msgstr "Limita el tamaño total de todos los archivos temporales usados en cada proceso."
 
-#: utils/misc/guc.c:2273
+#: utils/misc/guc.c:2393
 msgid "-1 means no limit."
 msgstr "-1 significa sin límite."
 
-#: utils/misc/guc.c:2283
+#: utils/misc/guc.c:2403
 msgid "Vacuum cost for a page found in the buffer cache."
 msgstr "Costo de Vacuum de una página encontrada en el buffer."
 
-#: utils/misc/guc.c:2293
+#: utils/misc/guc.c:2413
 msgid "Vacuum cost for a page not found in the buffer cache."
 msgstr "Costo de Vacuum de una página no encontrada en el cache."
 
-#: utils/misc/guc.c:2303
+#: utils/misc/guc.c:2423
 msgid "Vacuum cost for a page dirtied by vacuum."
 msgstr "Costo de Vacuum de una página ensuciada por vacuum."
 
-#: utils/misc/guc.c:2313
+#: utils/misc/guc.c:2433
 msgid "Vacuum cost amount available before napping."
 msgstr "Costo de Vacuum disponible antes de descansar."
 
-#: utils/misc/guc.c:2323
+#: utils/misc/guc.c:2443
 msgid "Vacuum cost amount available before napping, for autovacuum."
 msgstr "Costo de Vacuum disponible antes de descansar, para autovacuum."
 
-#: utils/misc/guc.c:2333
+#: utils/misc/guc.c:2453
 msgid "Sets the maximum number of simultaneously open files for each server process."
 msgstr "Define la cantidad máxima de archivos abiertos por cada subproceso."
 
-#: utils/misc/guc.c:2346
+#: utils/misc/guc.c:2466
 msgid "Sets the maximum number of simultaneously prepared transactions."
 msgstr "Define la cantidad máxima de transacciones preparadas simultáneas."
 
-#: utils/misc/guc.c:2357
+#: utils/misc/guc.c:2477
 msgid "Sets the minimum OID of tables for tracking locks."
 msgstr "Define el OID mínimo para hacer seguimiento de locks."
 
-#: utils/misc/guc.c:2358
+#: utils/misc/guc.c:2478
 msgid "Is used to avoid output on system tables."
 msgstr "Se usa para evitar salida excesiva por tablas de sistema."
 
-#: utils/misc/guc.c:2367
+#: utils/misc/guc.c:2487
 msgid "Sets the OID of the table with unconditionally lock tracing."
 msgstr "Define el OID de una tabla con trazado incondicional de locks."
 
-#: utils/misc/guc.c:2379
+#: utils/misc/guc.c:2499
 msgid "Sets the maximum allowed duration of any statement."
 msgstr "Define la duración máxima permitida de sentencias."
 
-#: utils/misc/guc.c:2380 utils/misc/guc.c:2391 utils/misc/guc.c:2402
+#: utils/misc/guc.c:2500 utils/misc/guc.c:2511 utils/misc/guc.c:2522
 msgid "A value of 0 turns off the timeout."
 msgstr "Un valor de 0 desactiva el máximo."
 
-#: utils/misc/guc.c:2390
+#: utils/misc/guc.c:2510
 msgid "Sets the maximum allowed duration of any wait for a lock."
 msgstr "Define la duración máxima permitida de cualquier espera por un lock."
 
-#: utils/misc/guc.c:2401
+#: utils/misc/guc.c:2521
 msgid "Sets the maximum allowed duration of any idling transaction."
 msgstr "Define la duración máxima permitida de transacciones inactivas."
 
-#: utils/misc/guc.c:2412
+#: utils/misc/guc.c:2532
 msgid "Minimum age at which VACUUM should freeze a table row."
 msgstr "Mínima edad a la cual VACUUM debería congelar (freeze) una fila de una tabla."
 
-#: utils/misc/guc.c:2422
+#: utils/misc/guc.c:2542
 msgid "Age at which VACUUM should scan whole table to freeze tuples."
 msgstr "Edad a la cual VACUUM debería recorrer una tabla completa para congelar (freeze) las filas."
 
-#: utils/misc/guc.c:2432
+#: utils/misc/guc.c:2552
 msgid "Minimum age at which VACUUM should freeze a MultiXactId in a table row."
 msgstr "Mínima edad a la cual VACUUM debería congelar (freeze) el multixact en una fila."
 
-#: utils/misc/guc.c:2442
+#: utils/misc/guc.c:2562
 msgid "Multixact age at which VACUUM should scan whole table to freeze tuples."
 msgstr "Edad de multixact a la cual VACUUM debería recorrer una tabla completa para congelar (freeze) las filas."
 
-#: utils/misc/guc.c:2452
+#: utils/misc/guc.c:2572
 msgid "Number of transactions by which VACUUM and HOT cleanup should be deferred, if any."
 msgstr "Número de transacciones por las cuales VACUUM y la limpieza HOT deberían postergarse."
 
-#: utils/misc/guc.c:2465
+#: utils/misc/guc.c:2585
 msgid "Sets the maximum number of locks per transaction."
 msgstr "Cantidad máxima de candados (locks) por transacción."
 
-#: utils/misc/guc.c:2466
+#: utils/misc/guc.c:2586
 msgid "The shared lock table is sized on the assumption that at most max_locks_per_transaction * max_connections distinct objects will need to be locked at any one time."
 msgstr "El tamaño de la tabla compartida de candados se calcula usando la suposición de que a lo más max_locks_per_transaction * max_connections objetos necesitarán ser bloqueados simultáneamente."
 
-#: utils/misc/guc.c:2477
+#: utils/misc/guc.c:2597
 msgid "Sets the maximum number of predicate locks per transaction."
 msgstr "Cantidad máxima de candados (locks) de predicado por transacción."
 
-#: utils/misc/guc.c:2478
+#: utils/misc/guc.c:2598
 msgid "The shared predicate lock table is sized on the assumption that at most max_pred_locks_per_transaction * max_connections distinct objects will need to be locked at any one time."
 msgstr "El tamaño de la tabla compartida de candados se calcula usando la suposición de que a lo más max_pred_locks_per_transaction * max_connections objetos necesitarán ser bloqueados simultáneamente."
 
-#: utils/misc/guc.c:2489
+#: utils/misc/guc.c:2609
 msgid "Sets the maximum number of predicate-locked pages and tuples per relation."
 msgstr "Cantidad máxima de páginas y tuplas bloqueadas por predicado."
 
-#: utils/misc/guc.c:2490
+#: utils/misc/guc.c:2610
 msgid "If more than this total of pages and tuples in the same relation are locked by a connection, those locks are replaced by a relation-level lock."
 msgstr "Si más que este total de páginas y tuplas en la misma relación están bloqueadas por una conexión, esos locks son reemplazados por un lock a nivel de relación."
 
-#: utils/misc/guc.c:2500
+#: utils/misc/guc.c:2620
 msgid "Sets the maximum number of predicate-locked tuples per page."
 msgstr "Cantidad máxima de locks de predicado por página."
 
-#: utils/misc/guc.c:2501
+#: utils/misc/guc.c:2621
 msgid "If more than this number of tuples on the same page are locked by a connection, those locks are replaced by a page-level lock."
 msgstr "Si más que este número de tuplas de la misma página están bloqueadas por una conexión, esos locks son reemplazados por un lock a nivel de página."
 
-#: utils/misc/guc.c:2511
+#: utils/misc/guc.c:2631
 msgid "Sets the maximum allowed time to complete client authentication."
 msgstr "Define el tiempo máximo para completar proceso de autentificación."
 
-#: utils/misc/guc.c:2523
+#: utils/misc/guc.c:2643
 msgid "Waits N seconds on connection startup before authentication."
 msgstr "Espera N segundos al inicio de la conexión antes de la autentificación."
 
-#: utils/misc/guc.c:2534
+#: utils/misc/guc.c:2654
 msgid "Sets the number of WAL files held for standby servers."
 msgstr "Número de archivos WAL conservados para servidores standby."
 
-#: utils/misc/guc.c:2544
+#: utils/misc/guc.c:2664
 msgid "Sets the minimum size to shrink the WAL to."
 msgstr "Define el tamaño mínimo al cual reducir el WAL."
 
-#: utils/misc/guc.c:2556
+#: utils/misc/guc.c:2676
 msgid "Sets the WAL size that triggers a checkpoint."
 msgstr "Define el tamaño de WAL que desencadena un checkpoint."
 
-#: utils/misc/guc.c:2568
+#: utils/misc/guc.c:2688
 msgid "Sets the maximum time between automatic WAL checkpoints."
 msgstr "Define el tiempo máximo entre puntos de control de WAL automáticos."
 
-#: utils/misc/guc.c:2579
+#: utils/misc/guc.c:2699
 msgid "Enables warnings if checkpoint segments are filled more frequently than this."
 msgstr "Registrar si el llenado de segmentos de WAL es más frecuente que esto."
 
-#: utils/misc/guc.c:2581
+#: utils/misc/guc.c:2701
 msgid "Write a message to the server log if checkpoints caused by the filling of checkpoint segment files happens more frequently than this number of seconds. Zero turns off the warning."
 msgstr "Envía un mensaje a los registros del servidor si los punto de control causados por el llenado de archivos de segmento sucede con más frecuencia que este número de segundos. Un valor de 0 (cero) desactiva la opción."
 
-#: utils/misc/guc.c:2593 utils/misc/guc.c:2750 utils/misc/guc.c:2779
+#: utils/misc/guc.c:2713 utils/misc/guc.c:2929 utils/misc/guc.c:2976
 msgid "Number of pages after which previously performed writes are flushed to disk."
 msgstr "Número de páginas después del cual las escrituras previamente ejecutadas se sincronizan a disco."
 
-#: utils/misc/guc.c:2604
+#: utils/misc/guc.c:2724
 msgid "Sets the number of disk-page buffers in shared memory for WAL."
 msgstr "Búfers en memoria compartida para páginas de WAL."
 
-#: utils/misc/guc.c:2615
+#: utils/misc/guc.c:2735
 msgid "Time between WAL flushes performed in the WAL writer."
 msgstr "Tiempo entre sincronizaciones de WAL ejecutadas por el proceso escritor de WAL."
 
-#: utils/misc/guc.c:2626
+#: utils/misc/guc.c:2746
 msgid "Amount of WAL written out by WAL writer that triggers a flush."
 msgstr "Cantidad de WAL escrito por el proceso escritor de WAL que desencadena una sincronización (flush)."
 
-#: utils/misc/guc.c:2637
+#: utils/misc/guc.c:2757
+msgid "Size of new file to fsync instead of writing WAL."
+msgstr ""
+
+#: utils/misc/guc.c:2768
 msgid "Sets the maximum number of simultaneously running WAL sender processes."
 msgstr "Define la cantidad máxima de procesos «WAL sender» simultáneos."
 
-#: utils/misc/guc.c:2648
+#: utils/misc/guc.c:2779
 msgid "Sets the maximum number of simultaneously defined replication slots."
 msgstr "Define la cantidad máxima de slots de replicación definidos simultáneamente."
 
-#: utils/misc/guc.c:2658
+#: utils/misc/guc.c:2789
+#, fuzzy
+#| msgid "Sets the maximum number of simultaneously defined replication slots."
+msgid "Sets the maximum WAL size that can be reserved by replication slots."
+msgstr "Define la cantidad máxima de slots de replicación definidos simultáneamente."
+
+#: utils/misc/guc.c:2790
+msgid "Replication slots will be marked as failed, and segments released for deletion or recycling, if this much space is occupied by WAL on disk."
+msgstr ""
+
+#: utils/misc/guc.c:2802
 msgid "Sets the maximum time to wait for WAL replication."
 msgstr "Define el tiempo máximo a esperar la replicación de WAL."
 
-#: utils/misc/guc.c:2669
+#: utils/misc/guc.c:2813
 msgid "Sets the delay in microseconds between transaction commit and flushing WAL to disk."
 msgstr "Retardo en microsegundos entre completar una transacción y escribir WAL a disco."
 
-#: utils/misc/guc.c:2681
+#: utils/misc/guc.c:2825
 msgid "Sets the minimum concurrent open transactions before performing commit_delay."
 msgstr "Mínimo de transacciones concurrentes para esperar commit_delay."
 
-#: utils/misc/guc.c:2692
+#: utils/misc/guc.c:2836
 msgid "Sets the number of digits displayed for floating-point values."
 msgstr "Ajustar el número de dígitos mostrados para valores de coma flotante."
 
-#: utils/misc/guc.c:2693
+#: utils/misc/guc.c:2837
 msgid "This affects real, double precision, and geometric data types. A zero or negative parameter value is added to the standard number of digits (FLT_DIG or DBL_DIG as appropriate). Any value greater than zero selects precise output mode."
 msgstr "Esto afecta los tipos real, de doble precisión, y geométricos. Un valor del parámetro cero o negativo se agrega a la cantidad estándar de dígitos (FLT_DIG o DBL_DIG, según sea apropiado). Cualquier valor mayor que cero selecciona el modo de salida preciso."
 
-#: utils/misc/guc.c:2705
-msgid "Sets the minimum execution time above which statements will be logged."
+#: utils/misc/guc.c:2849
+#, fuzzy
+#| msgid "Sets the minimum execution time above which statements will be logged."
+msgid "Sets the minimum execution time above which a sample of statements will be logged. Sampling is determined by log_statement_sample_rate."
 msgstr "Tiempo mínimo de ejecución a partir del cual se registran las consultas."
 
-#: utils/misc/guc.c:2707
+#: utils/misc/guc.c:2852
+#, fuzzy
+#| msgid "Zero prints all queries. -1 turns this feature off."
+msgid "Zero log a sample of all queries. -1 turns this feature off."
+msgstr "Cero imprime todas las consultas. -1 desactiva esta funcionalidad."
+
+#: utils/misc/guc.c:2862
+#, fuzzy
+#| msgid "Sets the minimum execution time above which statements will be logged."
+msgid "Sets the minimum execution time above which all statements will be logged."
+msgstr "Tiempo mínimo de ejecución a partir del cual se registran las consultas."
+
+#: utils/misc/guc.c:2864
 msgid "Zero prints all queries. -1 turns this feature off."
 msgstr "Cero imprime todas las consultas. -1 desactiva esta funcionalidad."
 
-#: utils/misc/guc.c:2717
+#: utils/misc/guc.c:2874
 msgid "Sets the minimum execution time above which autovacuum actions will be logged."
 msgstr "Tiempo mínimo de ejecución a partir del cual se registran las acciones de autovacuum."
 
-#: utils/misc/guc.c:2719
+#: utils/misc/guc.c:2876
 msgid "Zero prints all actions. -1 turns autovacuum logging off."
 msgstr "Cero registra todas las acciones. -1 desactiva el registro de autovacuum."
 
-#: utils/misc/guc.c:2729
+#: utils/misc/guc.c:2886
+msgid "When logging statements, limit logged parameter values to first N bytes."
+msgstr ""
+
+#: utils/misc/guc.c:2887 utils/misc/guc.c:2898
+msgid "-1 to print values in full."
+msgstr ""
+
+#: utils/misc/guc.c:2897
+msgid "When reporting an error, limit logged parameter values to first N bytes."
+msgstr ""
+
+#: utils/misc/guc.c:2908
 msgid "Background writer sleep time between rounds."
 msgstr "Tiempo de descanso entre rondas del background writer"
 
-#: utils/misc/guc.c:2740
+#: utils/misc/guc.c:2919
 msgid "Background writer maximum number of LRU pages to flush per round."
 msgstr "Número máximo de páginas LRU a escribir en cada ronda del background writer"
 
-#: utils/misc/guc.c:2763
+#: utils/misc/guc.c:2942
 msgid "Number of simultaneous requests that can be handled efficiently by the disk subsystem."
 msgstr "Cantidad máxima de peticiones simultáneas que pueden ser manejadas eficientemente por el sistema de disco."
 
-#: utils/misc/guc.c:2764
+#: utils/misc/guc.c:2943
 msgid "For RAID arrays, this should be approximately the number of drive spindles in the array."
 msgstr "Para arrays RAID, esto debería ser aproximadamente la cantidad de discos en el array."
 
-#: utils/misc/guc.c:2792
+#: utils/misc/guc.c:2960
+msgid "A variant of effective_io_concurrency that is used for maintenance work."
+msgstr ""
+
+#: utils/misc/guc.c:2989
 msgid "Maximum number of concurrent worker processes."
 msgstr "Número máximo de procesos ayudantes concurrentes."
 
-#: utils/misc/guc.c:2804
+#: utils/misc/guc.c:3001
 msgid "Maximum number of logical replication worker processes."
 msgstr "Número máximo de procesos ayudantes de replicación lógica."
 
-#: utils/misc/guc.c:2816
+#: utils/misc/guc.c:3013
 msgid "Maximum number of table synchronization workers per subscription."
 msgstr "Número máximo de procesos ayudantes de sincronización por suscripción."
 
-#: utils/misc/guc.c:2826
+#: utils/misc/guc.c:3023
 msgid "Automatic log file rotation will occur after N minutes."
 msgstr "La rotación automática de archivos de log se efectuará después de N minutos."
 
-#: utils/misc/guc.c:2837
+#: utils/misc/guc.c:3034
 msgid "Automatic log file rotation will occur after N kilobytes."
 msgstr "La rotación automática de archivos de log se efectuará después de N kilobytes."
 
-#: utils/misc/guc.c:2848
+#: utils/misc/guc.c:3045
 msgid "Shows the maximum number of function arguments."
 msgstr "Muestra la cantidad máxima de argumentos de funciones."
 
-#: utils/misc/guc.c:2859
+#: utils/misc/guc.c:3056
 msgid "Shows the maximum number of index keys."
 msgstr "Muestra la cantidad máxima de claves de índices."
 
-#: utils/misc/guc.c:2870
+#: utils/misc/guc.c:3067
 msgid "Shows the maximum identifier length."
 msgstr "Muestra el largo máximo de identificadores."
 
-#: utils/misc/guc.c:2881
+#: utils/misc/guc.c:3078
 msgid "Shows the size of a disk block."
 msgstr "Muestra el tamaño de un bloque de disco."
 
-#: utils/misc/guc.c:2892
+#: utils/misc/guc.c:3089
 msgid "Shows the number of pages per disk file."
 msgstr "Muestra el número de páginas por archivo en disco."
 
-#: utils/misc/guc.c:2903
+#: utils/misc/guc.c:3100
 msgid "Shows the block size in the write ahead log."
 msgstr "Muestra el tamaño de bloque en el write-ahead log."
 
-#: utils/misc/guc.c:2914
+#: utils/misc/guc.c:3111
 msgid "Sets the time to wait before retrying to retrieve WAL after a failed attempt."
 msgstr "Define el tiempo a esperar antes de reintentar obtener WAL después de un intento fallido."
 
-#: utils/misc/guc.c:2926
+#: utils/misc/guc.c:3123
 msgid "Shows the size of write ahead log segments."
 msgstr "Muestra el tamaño de los segmentos de WAL."
 
-#: utils/misc/guc.c:2939
+#: utils/misc/guc.c:3136
 msgid "Time to sleep between autovacuum runs."
 msgstr "Tiempo de descanso entre ejecuciones de autovacuum."
 
-#: utils/misc/guc.c:2949
+#: utils/misc/guc.c:3146
 msgid "Minimum number of tuple updates or deletes prior to vacuum."
 msgstr "Número mínimo de updates o deletes antes de ejecutar vacuum."
 
-#: utils/misc/guc.c:2958
+#: utils/misc/guc.c:3155
+#, fuzzy
+#| msgid "Minimum number of tuple inserts, updates, or deletes prior to analyze."
+msgid "Minimum number of tuple inserts prior to vacuum, or -1 to disable insert vacuums"
+msgstr "Número mínimo de inserciones, actualizaciones y eliminaciones de tuplas antes de ejecutar analyze."
+
+#: utils/misc/guc.c:3164
 msgid "Minimum number of tuple inserts, updates, or deletes prior to analyze."
 msgstr "Número mínimo de inserciones, actualizaciones y eliminaciones de tuplas antes de ejecutar analyze."
 
-#: utils/misc/guc.c:2968
+#: utils/misc/guc.c:3174
 msgid "Age at which to autovacuum a table to prevent transaction ID wraparound."
 msgstr "Edad a la cual aplicar VACUUM automáticamente a una tabla para prevenir problemas por reciclaje de ID de transacción."
 
-#: utils/misc/guc.c:2979
+#: utils/misc/guc.c:3185
 msgid "Multixact age at which to autovacuum a table to prevent multixact wraparound."
 msgstr "Edad de multixact a la cual aplicar VACUUM automáticamente a una tabla para prevenir problemas por reciclaje de ID de multixacts."
 
-#: utils/misc/guc.c:2989
+#: utils/misc/guc.c:3195
 msgid "Sets the maximum number of simultaneously running autovacuum worker processes."
 msgstr "Define la cantidad máxima de procesos «autovacuum worker» simultáneos."
 
-#: utils/misc/guc.c:2999
+#: utils/misc/guc.c:3205
 msgid "Sets the maximum number of parallel processes per maintenance operation."
 msgstr "Cantidad máxima de procesos ayudantes paralelos por operación de mantención."
 
-#: utils/misc/guc.c:3009
+#: utils/misc/guc.c:3215
 msgid "Sets the maximum number of parallel processes per executor node."
 msgstr "Cantidad máxima de locks de predicado por nodo de ejecución."
 
-#: utils/misc/guc.c:3020
+#: utils/misc/guc.c:3226
 msgid "Sets the maximum number of parallel workers that can be active at one time."
 msgstr "Define la cantidad máxima de procesos ayudantes que pueden estar activos en un momento dado."
 
-#: utils/misc/guc.c:3031
+#: utils/misc/guc.c:3237
 msgid "Sets the maximum memory to be used by each autovacuum worker process."
 msgstr "Establece el límite de memoria que cada proceso «autovacuum worker» usará."
 
-#: utils/misc/guc.c:3042
+#: utils/misc/guc.c:3248
 msgid "Time before a snapshot is too old to read pages changed after the snapshot was taken."
 msgstr "Tiempo antes de que un snapshot sea demasiado antiguo para leer páginas después de que el snapshot fue tomado."
 
-#: utils/misc/guc.c:3043
+#: utils/misc/guc.c:3249
 msgid "A value of -1 disables this feature."
 msgstr "El valor -1 desactiva esta característica."
 
-#: utils/misc/guc.c:3053
+#: utils/misc/guc.c:3259
 msgid "Time between issuing TCP keepalives."
 msgstr "Tiempo entre cada emisión de TCP keepalive."
 
-#: utils/misc/guc.c:3054 utils/misc/guc.c:3065 utils/misc/guc.c:3189
+#: utils/misc/guc.c:3260 utils/misc/guc.c:3271 utils/misc/guc.c:3395
 msgid "A value of 0 uses the system default."
 msgstr "Un valor 0 usa el valor por omisión del sistema."
 
-#: utils/misc/guc.c:3064
+#: utils/misc/guc.c:3270
 msgid "Time between TCP keepalive retransmits."
 msgstr "Tiempo entre retransmisiones TCP keepalive."
 
-#: utils/misc/guc.c:3075
+#: utils/misc/guc.c:3281
 msgid "SSL renegotiation is no longer supported; this can only be 0."
 msgstr "La renegociación SSL ya no está soportada; esto sólo puede ser 0."
 
-#: utils/misc/guc.c:3086
+#: utils/misc/guc.c:3292
 msgid "Maximum number of TCP keepalive retransmits."
 msgstr "Cantidad máxima de retransmisiones TCP keepalive."
 
-#: utils/misc/guc.c:3087
+#: utils/misc/guc.c:3293
 msgid "This controls the number of consecutive keepalive retransmits that can be lost before a connection is considered dead. A value of 0 uses the system default."
 msgstr "Esto controla el número de retransmisiones consecutivas de keepalive que pueden ser perdidas antes que la conexión sea considerada muerta.  Un valor 0 usa el valor por omisión del sistema."
 
-#: utils/misc/guc.c:3098
+#: utils/misc/guc.c:3304
 msgid "Sets the maximum allowed result for exact search by GIN."
 msgstr "Define el máximo de resultados permitidos por búsquedas exactas con GIN."
 
-#: utils/misc/guc.c:3109
+#: utils/misc/guc.c:3315
 msgid "Sets the planner's assumption about the total size of the data caches."
 msgstr "Define la suposición del optimizador sobre el tamaño total de los caches de datos."
 
-#: utils/misc/guc.c:3110
+#: utils/misc/guc.c:3316
 msgid "That is, the total size of the caches (kernel cache and shared buffers) used for PostgreSQL data files. This is measured in disk pages, which are normally 8 kB each."
 msgstr "Esto es, el tamaño total de caches (cache del kernel y búfers compartidos) usados por archivos de datos de PostgreSQL. Esto se mide en páginas de disco, que normalmente son de 8 kB cada una."
 
-#: utils/misc/guc.c:3121
+#: utils/misc/guc.c:3327
 msgid "Sets the minimum amount of table data for a parallel scan."
 msgstr "Define la cantidad mínima de datos en una tabla para un recorrido paralelo."
 
-#: utils/misc/guc.c:3122
+#: utils/misc/guc.c:3328
 msgid "If the planner estimates that it will read a number of table pages too small to reach this limit, a parallel scan will not be considered."
 msgstr "Si el planificador estima que leerá un número de páginas de tabla demasiado pequeñas para alcanzar este límite, no se considerará una búsqueda paralela."
 
-#: utils/misc/guc.c:3132
+#: utils/misc/guc.c:3338
 msgid "Sets the minimum amount of index data for a parallel scan."
 msgstr "Define la cantidad mínima de datos en un índice para un recorrido paralelo."
 
-#: utils/misc/guc.c:3133
+#: utils/misc/guc.c:3339
 msgid "If the planner estimates that it will read a number of index pages too small to reach this limit, a parallel scan will not be considered."
 msgstr "Si el planificador estima que leerá un número de páginas de índice demasiado pequeñas para alcanzar este límite, no se considerará una búsqueda paralela."
 
-#: utils/misc/guc.c:3144
+#: utils/misc/guc.c:3350
 msgid "Shows the server version as an integer."
 msgstr "Muestra la versión del servidor como un número entero."
 
-#: utils/misc/guc.c:3155
+#: utils/misc/guc.c:3361
 msgid "Log the use of temporary files larger than this number of kilobytes."
 msgstr "Registra el uso de archivos temporales que crezcan más allá de este número de kilobytes."
 
-#: utils/misc/guc.c:3156
+#: utils/misc/guc.c:3362
 msgid "Zero logs all files. The default is -1 (turning this feature off)."
 msgstr "Cero registra todos los archivos. El valor por omisión es -1 (lo cual desactiva el registro)."
 
-#: utils/misc/guc.c:3166
+#: utils/misc/guc.c:3372
 msgid "Sets the size reserved for pg_stat_activity.query, in bytes."
 msgstr "Tamaño reservado para pg_stat_activity.query, en bytes."
 
-#: utils/misc/guc.c:3177
+#: utils/misc/guc.c:3383
 msgid "Sets the maximum size of the pending list for GIN index."
 msgstr "Define el tamaño máximo de la lista de pendientes de un índice GIN."
 
-#: utils/misc/guc.c:3188
+#: utils/misc/guc.c:3394
 msgid "TCP user timeout."
 msgstr "Tiempo de expiración de TCP."
 
-#: utils/misc/guc.c:3208
+#: utils/misc/guc.c:3414
 msgid "Sets the planner's estimate of the cost of a sequentially fetched disk page."
 msgstr "Estimación del costo de una página leída secuencialmente."
 
-#: utils/misc/guc.c:3219
+#: utils/misc/guc.c:3425
 msgid "Sets the planner's estimate of the cost of a nonsequentially fetched disk page."
 msgstr "Estimación del costo de una página leída no secuencialmente."
 
-#: utils/misc/guc.c:3230
+#: utils/misc/guc.c:3436
 msgid "Sets the planner's estimate of the cost of processing each tuple (row)."
 msgstr "Estimación del costo de procesar cada tupla (fila)."
 
-#: utils/misc/guc.c:3241
+#: utils/misc/guc.c:3447
 msgid "Sets the planner's estimate of the cost of processing each index entry during an index scan."
 msgstr "Estimación del costo de procesar cada fila de índice durante un recorrido de índice."
 
-#: utils/misc/guc.c:3252
+#: utils/misc/guc.c:3458
 msgid "Sets the planner's estimate of the cost of processing each operator or function call."
 msgstr "Estimación del costo de procesar cada operador o llamada a función."
 
-#: utils/misc/guc.c:3263
+#: utils/misc/guc.c:3469
 msgid "Sets the planner's estimate of the cost of passing each tuple (row) from worker to master backend."
 msgstr "Estimación del costo de pasar cada tupla (fila) desde un proceso ayudante al proceso servidor principal."
 
-#: utils/misc/guc.c:3274
+#: utils/misc/guc.c:3480
 msgid "Sets the planner's estimate of the cost of starting up worker processes for parallel query."
 msgstr "Estimación del costo de lanzar procesos ayudantes para consultas en paralelo."
 
-#: utils/misc/guc.c:3286
+#: utils/misc/guc.c:3492
 msgid "Perform JIT compilation if query is more expensive."
 msgstr "Ejecutar compilación JIT si la consulta es más cara."
 
-#: utils/misc/guc.c:3287
+#: utils/misc/guc.c:3493
 msgid "-1 disables JIT compilation."
 msgstr "-1 inhabilita compilación JIT."
 
-#: utils/misc/guc.c:3297
+#: utils/misc/guc.c:3503
 msgid "Optimize JITed functions if query is more expensive."
 msgstr "Optimizar funciones JIT-compiladas si la consulta es más cara."
 
-#: utils/misc/guc.c:3298
+#: utils/misc/guc.c:3504
 msgid "-1 disables optimization."
 msgstr "-1 inhabilita la optimización."
 
-#: utils/misc/guc.c:3308
+#: utils/misc/guc.c:3514
 msgid "Perform JIT inlining if query is more expensive."
 msgstr "Ejecutar «inlining» JIT si la consulta es más cara."
 
-#: utils/misc/guc.c:3309
+#: utils/misc/guc.c:3515
 msgid "-1 disables inlining."
 msgstr "-1 inhabilita el «inlining»."
 
-#: utils/misc/guc.c:3319
+#: utils/misc/guc.c:3525
 msgid "Sets the planner's estimate of the fraction of a cursor's rows that will be retrieved."
 msgstr "Estimación de la fracción de filas de un cursor que serán extraídas."
 
-#: utils/misc/guc.c:3331
+#: utils/misc/guc.c:3537
 msgid "GEQO: selective pressure within the population."
 msgstr "GEQO: presión selectiva dentro de la población."
 
-#: utils/misc/guc.c:3342
+#: utils/misc/guc.c:3548
 msgid "GEQO: seed for random path selection."
 msgstr "GEQO: semilla para la selección aleatoria de caminos."
 
-#: utils/misc/guc.c:3353
+#: utils/misc/guc.c:3559
 msgid "Multiple of the average buffer usage to free per round."
 msgstr "Múltiplo del uso promedio de búfers que liberar en cada ronda."
 
-#: utils/misc/guc.c:3363
+#: utils/misc/guc.c:3569
 msgid "Sets the seed for random-number generation."
 msgstr "Semilla para la generación de números aleatorios."
 
-#: utils/misc/guc.c:3374
+#: utils/misc/guc.c:3580
 msgid "Vacuum cost delay in milliseconds."
 msgstr "Tiempo de descanso de vacuum en milisegundos."
 
-#: utils/misc/guc.c:3385
+#: utils/misc/guc.c:3591
 msgid "Vacuum cost delay in milliseconds, for autovacuum."
 msgstr "Tiempo de descanso de vacuum en milisegundos, para autovacuum."
 
-#: utils/misc/guc.c:3396
+#: utils/misc/guc.c:3602
 msgid "Number of tuple updates or deletes prior to vacuum as a fraction of reltuples."
 msgstr "Número de updates o deletes de tuplas antes de ejecutar un vacuum, como fracción de reltuples."
 
-#: utils/misc/guc.c:3405
+#: utils/misc/guc.c:3612
+#, fuzzy
+#| msgid "Number of tuple inserts prior to index cleanup as a fraction of reltuples."
+msgid "Number of tuple inserts prior to vacuum as a fraction of reltuples."
+msgstr "Número de inserts de tuplas antes de ejecutar una limpieza de índice, como fracción de reltuples."
+
+#: utils/misc/guc.c:3622
 msgid "Number of tuple inserts, updates, or deletes prior to analyze as a fraction of reltuples."
 msgstr "Número mínimo de inserciones, actualizaciones y eliminaciones de tuplas antes de ejecutar analyze, como fracción de reltuples."
 
-#: utils/misc/guc.c:3415
+#: utils/misc/guc.c:3632
 msgid "Time spent flushing dirty buffers during checkpoint, as fraction of checkpoint interval."
 msgstr "Tiempo utilizado en escribir páginas «sucias» durante los puntos de control, medido como fracción del intervalo del punto de control."
 
-#: utils/misc/guc.c:3425
+#: utils/misc/guc.c:3642
 msgid "Number of tuple inserts prior to index cleanup as a fraction of reltuples."
 msgstr "Número de inserts de tuplas antes de ejecutar una limpieza de índice, como fracción de reltuples."
 
-#: utils/misc/guc.c:3435
+#: utils/misc/guc.c:3652
+msgid "Fraction of statements exceeding log_min_duration_sample to be logged."
+msgstr ""
+
+#: utils/misc/guc.c:3653
+msgid "Use a value between 0.0 (never log) and 1.0 (always log)."
+msgstr ""
+
+#: utils/misc/guc.c:3662
 msgid "Set the fraction of transactions to log for new transactions."
 msgstr "Define la fracción de transacciones que registrar en el log, para nuevas transacciones."
 
-#: utils/misc/guc.c:3436
+#: utils/misc/guc.c:3663
 msgid "Logs all statements from a fraction of transactions. Use a value between 0.0 (never log) and 1.0 (log all statements for all transactions)."
 msgstr "Registra todas las sentencias de una fracción de transacciones. Use un valor entre 0.0 (nunca registrar) y 1.0 (registrar todas las sentencias de todas las transacciones)."
 
-#: utils/misc/guc.c:3456
+#: utils/misc/guc.c:3683
 msgid "Sets the shell command that will be called to archive a WAL file."
 msgstr "Orden de shell que se invocará para archivar un archivo WAL."
 
-#: utils/misc/guc.c:3466
+#: utils/misc/guc.c:3693
 msgid "Sets the shell command that will retrieve an archived WAL file."
 msgstr "Orden de shell que se invocará para obtener un archivo WAL archivado."
 
-#: utils/misc/guc.c:3476
+#: utils/misc/guc.c:3703
 msgid "Sets the shell command that will be executed at every restart point."
 msgstr "Orden de shell que se invocará en cada «restart point»."
 
-#: utils/misc/guc.c:3486
+#: utils/misc/guc.c:3713
 msgid "Sets the shell command that will be executed once at the end of recovery."
 msgstr "Orden de shell que se invocará una vez al terminar la recuperación."
 
-#: utils/misc/guc.c:3496
+#: utils/misc/guc.c:3723
 msgid "Specifies the timeline to recover into."
 msgstr "Especifica la línea de tiempo a la cual recuperar."
 
-#: utils/misc/guc.c:3506
+#: utils/misc/guc.c:3733
 msgid "Set to \"immediate\" to end recovery as soon as a consistent state is reached."
 msgstr "Defina a «immediate» para terminar la recuperación en cuando se alcance el estado consistente."
 
-#: utils/misc/guc.c:3515
+#: utils/misc/guc.c:3742
 msgid "Sets the transaction ID up to which recovery will proceed."
 msgstr "Define el ID de transacción hasta el cual se ejecutará la recuperación."
 
-#: utils/misc/guc.c:3524
+#: utils/misc/guc.c:3751
 msgid "Sets the time stamp up to which recovery will proceed."
 msgstr "Define la marca de tiempo hasta la cual se ejecutará la recuperación."
 
-#: utils/misc/guc.c:3533
+#: utils/misc/guc.c:3760
 msgid "Sets the named restore point up to which recovery will proceed."
 msgstr "Define el nombre del punto de restauración hasta el cual se ejecutará la recuperación."
 
-#: utils/misc/guc.c:3542
+#: utils/misc/guc.c:3769
 msgid "Sets the LSN of the write-ahead log location up to which recovery will proceed."
 msgstr "Define el LSN de la ubicación de WAL hasta la cual se ejecutará la recuperación."
 
-#: utils/misc/guc.c:3552
+#: utils/misc/guc.c:3779
 msgid "Specifies a file name whose presence ends recovery in the standby."
 msgstr "Especifica un nombre de archivo cuya presencia termina la recuperación en el standby."
 
-#: utils/misc/guc.c:3562
+#: utils/misc/guc.c:3789
 msgid "Sets the connection string to be used to connect to the sending server."
 msgstr "Define la cadena de conexión que se usará para conectarse al servidor de origen."
 
-#: utils/misc/guc.c:3573
+#: utils/misc/guc.c:3800
 msgid "Sets the name of the replication slot to use on the sending server."
 msgstr "Define el nombre del slot de replicación a utilizar en el servidor de origen."
 
-#: utils/misc/guc.c:3583
+#: utils/misc/guc.c:3810
 msgid "Sets the client's character set encoding."
 msgstr "Codificación del juego de caracteres del cliente."
 
-#: utils/misc/guc.c:3594
+#: utils/misc/guc.c:3821
 msgid "Controls information prefixed to each log line."
 msgstr "Controla el prefijo que antecede cada línea registrada."
 
-#: utils/misc/guc.c:3595
+#: utils/misc/guc.c:3822
 msgid "If blank, no prefix is used."
 msgstr "si está en blanco, no se usa prefijo."
 
-#: utils/misc/guc.c:3604
+#: utils/misc/guc.c:3831
 msgid "Sets the time zone to use in log messages."
 msgstr "Define el huso horario usando en los mensajes registrados."
 
-#: utils/misc/guc.c:3614
+#: utils/misc/guc.c:3841
 msgid "Sets the display format for date and time values."
 msgstr "Formato de salida para valores de horas y fechas."
 
-#: utils/misc/guc.c:3615
+#: utils/misc/guc.c:3842
 msgid "Also controls interpretation of ambiguous date inputs."
 msgstr "También controla la interpretación de entradas ambiguas de fechas"
 
-#: utils/misc/guc.c:3626
+#: utils/misc/guc.c:3853
 msgid "Sets the default table access method for new tables."
 msgstr "Define el método de acceso a tablas por omisión para nuevas tablas."
 
-#: utils/misc/guc.c:3637
+#: utils/misc/guc.c:3864
 msgid "Sets the default tablespace to create tables and indexes in."
 msgstr "Define el tablespace en el cual crear tablas e índices."
 
-#: utils/misc/guc.c:3638
+#: utils/misc/guc.c:3865
 msgid "An empty string selects the database's default tablespace."
 msgstr "Una cadena vacía especifica el tablespace por omisión de la base de datos."
 
-#: utils/misc/guc.c:3648
+#: utils/misc/guc.c:3875
 msgid "Sets the tablespace(s) to use for temporary tables and sort files."
 msgstr "Define el/los tablespace/s en el cual crear tablas temporales y archivos de ordenamiento."
 
-#: utils/misc/guc.c:3659
+#: utils/misc/guc.c:3886
 msgid "Sets the path for dynamically loadable modules."
 msgstr "Ruta para módulos dinámicos."
 
-#: utils/misc/guc.c:3660
+#: utils/misc/guc.c:3887
 msgid "If a dynamically loadable module needs to be opened and the specified name does not have a directory component (i.e., the name does not contain a slash), the system will search this path for the specified file."
 msgstr "Si se necesita abrir un módulo dinámico y el nombre especificado no tiene un componente de directorio (es decir, no contiene un slash), el sistema buscará el archivo especificado en esta ruta."
 
-#: utils/misc/guc.c:3673
+#: utils/misc/guc.c:3900
 msgid "Sets the location of the Kerberos server key file."
 msgstr "Ubicación del archivo de llave del servidor Kerberos."
 
-#: utils/misc/guc.c:3684
+#: utils/misc/guc.c:3911
 msgid "Sets the Bonjour service name."
 msgstr "Nombre del servicio Bonjour."
 
-#: utils/misc/guc.c:3696
+#: utils/misc/guc.c:3923
 msgid "Shows the collation order locale."
 msgstr "Configuración regional de ordenamiento de cadenas (collation)."
 
-#: utils/misc/guc.c:3707
+#: utils/misc/guc.c:3934
 msgid "Shows the character classification and case conversion locale."
 msgstr "Configuración regional de clasificación de caracteres y conversión de mayúsculas."
 
-#: utils/misc/guc.c:3718
+#: utils/misc/guc.c:3945
 msgid "Sets the language in which messages are displayed."
 msgstr "Idioma en el que se despliegan los mensajes."
 
-#: utils/misc/guc.c:3728
+#: utils/misc/guc.c:3955
 msgid "Sets the locale for formatting monetary amounts."
 msgstr "Configuración regional para formatos de moneda."
 
-#: utils/misc/guc.c:3738
+#: utils/misc/guc.c:3965
 msgid "Sets the locale for formatting numbers."
 msgstr "Configuración regional para formatos de números."
 
-#: utils/misc/guc.c:3748
+#: utils/misc/guc.c:3975
 msgid "Sets the locale for formatting date and time values."
 msgstr "Configuración regional para formatos de horas y fechas."
 
-#: utils/misc/guc.c:3758
+#: utils/misc/guc.c:3985
 msgid "Lists shared libraries to preload into each backend."
 msgstr "Bibliotecas compartidas a precargar en cada proceso."
 
-#: utils/misc/guc.c:3769
+#: utils/misc/guc.c:3996
 msgid "Lists shared libraries to preload into server."
 msgstr "Bibliotecas compartidas a precargar en el servidor."
 
-#: utils/misc/guc.c:3780
+#: utils/misc/guc.c:4007
 msgid "Lists unprivileged shared libraries to preload into each backend."
 msgstr "Bibliotecas compartidas no privilegiadas a precargar en cada proceso."
 
-#: utils/misc/guc.c:3791
+#: utils/misc/guc.c:4018
 msgid "Sets the schema search order for names that are not schema-qualified."
 msgstr "Orden de búsqueda en schemas para nombres que no especifican schema."
 
-#: utils/misc/guc.c:3803
+#: utils/misc/guc.c:4030
 msgid "Sets the server (database) character set encoding."
 msgstr "Codificación de caracteres del servidor (bases de datos)."
 
-#: utils/misc/guc.c:3815
+#: utils/misc/guc.c:4042
 msgid "Shows the server version."
 msgstr "Versión del servidor."
 
-#: utils/misc/guc.c:3827
+#: utils/misc/guc.c:4054
 msgid "Sets the current role."
 msgstr "Define el rol actual."
 
-#: utils/misc/guc.c:3839
+#: utils/misc/guc.c:4066
 msgid "Sets the session user name."
 msgstr "Define el nombre del usuario de sesión."
 
-#: utils/misc/guc.c:3850
+#: utils/misc/guc.c:4077
 msgid "Sets the destination for server log output."
 msgstr "Define el destino de la salida del registro del servidor."
 
-#: utils/misc/guc.c:3851
+#: utils/misc/guc.c:4078
 msgid "Valid values are combinations of \"stderr\", \"syslog\", \"csvlog\", and \"eventlog\", depending on the platform."
 msgstr "Los valores aceptables son combinaciones de «stderr», «syslog», «csvlog» y «eventlog», dependiendo de la plataforma."
 
-#: utils/misc/guc.c:3862
+#: utils/misc/guc.c:4089
 msgid "Sets the destination directory for log files."
 msgstr "Define el directorio de destino de los archivos del registro del servidor."
 
-#: utils/misc/guc.c:3863
+#: utils/misc/guc.c:4090
 msgid "Can be specified as relative to the data directory or as absolute path."
 msgstr "Puede ser una ruta relativa al directorio de datos o una ruta absoluta."
 
-#: utils/misc/guc.c:3873
+#: utils/misc/guc.c:4100
 msgid "Sets the file name pattern for log files."
 msgstr "Define el patrón para los nombres de archivo del registro del servidor."
 
-#: utils/misc/guc.c:3884
+#: utils/misc/guc.c:4111
 msgid "Sets the program name used to identify PostgreSQL messages in syslog."
 msgstr "Nombre de programa para identificar PostgreSQL en mensajes de syslog."
 
-#: utils/misc/guc.c:3895
+#: utils/misc/guc.c:4122
 msgid "Sets the application name used to identify PostgreSQL messages in the event log."
 msgstr "Nombre de programa para identificar PostgreSQL en mensajes del log de eventos."
 
-#: utils/misc/guc.c:3906
+#: utils/misc/guc.c:4133
 msgid "Sets the time zone for displaying and interpreting time stamps."
 msgstr "Huso horario para desplegar e interpretar valores de tiempo."
 
-#: utils/misc/guc.c:3916
+#: utils/misc/guc.c:4143
 msgid "Selects a file of time zone abbreviations."
 msgstr "Selecciona un archivo de abreviaciones de huso horario."
 
-#: utils/misc/guc.c:3926
+#: utils/misc/guc.c:4153
 msgid "Sets the owning group of the Unix-domain socket."
 msgstr "Grupo dueño del socket de dominio Unix."
 
-#: utils/misc/guc.c:3927
+#: utils/misc/guc.c:4154
 msgid "The owning user of the socket is always the user that starts the server."
 msgstr "El usuario dueño del socket siempre es el usuario que inicia el servidor."
 
-#: utils/misc/guc.c:3937
+#: utils/misc/guc.c:4164
 msgid "Sets the directories where Unix-domain sockets will be created."
 msgstr "Directorios donde se crearán los sockets de dominio Unix."
 
-#: utils/misc/guc.c:3952
+#: utils/misc/guc.c:4179
 msgid "Sets the host name or IP address(es) to listen to."
 msgstr "Define el nombre de anfitrión o dirección IP en la cual escuchar."
 
-#: utils/misc/guc.c:3967
+#: utils/misc/guc.c:4194
 msgid "Sets the server's data directory."
 msgstr "Define la ubicación del directorio de datos."
 
-#: utils/misc/guc.c:3978
+#: utils/misc/guc.c:4205
 msgid "Sets the server's main configuration file."
 msgstr "Define la ubicación del archivo principal de configuración del servidor."
 
-#: utils/misc/guc.c:3989
+#: utils/misc/guc.c:4216
 msgid "Sets the server's \"hba\" configuration file."
 msgstr "Define la ubicación del archivo de configuración «hba» del servidor."
 
-#: utils/misc/guc.c:4000
+#: utils/misc/guc.c:4227
 msgid "Sets the server's \"ident\" configuration file."
 msgstr "Define la ubicación del archivo de configuración «ident» del servidor."
 
-#: utils/misc/guc.c:4011
+#: utils/misc/guc.c:4238
 msgid "Writes the postmaster PID to the specified file."
 msgstr "Registra el PID de postmaster en el archivo especificado."
 
-#: utils/misc/guc.c:4022
+#: utils/misc/guc.c:4249
 msgid "Name of the SSL library."
 msgstr "Nombre de la biblioteca SSL."
 
-#: utils/misc/guc.c:4037
+#: utils/misc/guc.c:4264
 msgid "Location of the SSL server certificate file."
 msgstr "Ubicación del archivo de certificado SSL del servidor."
 
-#: utils/misc/guc.c:4047
+#: utils/misc/guc.c:4274
 msgid "Location of the SSL server private key file."
 msgstr "Ubicación del archivo de la llave SSL privada del servidor."
 
-#: utils/misc/guc.c:4057
+#: utils/misc/guc.c:4284
 msgid "Location of the SSL certificate authority file."
 msgstr "Ubicación del archivo de autoridad certificadora SSL."
 
-#: utils/misc/guc.c:4067
+#: utils/misc/guc.c:4294
 msgid "Location of the SSL certificate revocation list file."
 msgstr "Ubicación del archivo de lista de revocación de certificados SSL"
 
-#: utils/misc/guc.c:4077
+#: utils/misc/guc.c:4304
 msgid "Writes temporary statistics files to the specified directory."
 msgstr "Escribe los archivos temporales de estadísticas al directorio especificado."
 
-#: utils/misc/guc.c:4088
+#: utils/misc/guc.c:4315
 msgid "Number of synchronous standbys and list of names of potential synchronous ones."
 msgstr "Número de standbys sincrónicos y lista de nombres de los potenciales sincrónicos."
 
-#: utils/misc/guc.c:4099
+#: utils/misc/guc.c:4326
 msgid "Sets default text search configuration."
 msgstr "Define la configuración de búsqueda en texto por omisión."
 
-#: utils/misc/guc.c:4109
+#: utils/misc/guc.c:4336
 msgid "Sets the list of allowed SSL ciphers."
 msgstr "Define la lista de cifrados SSL permitidos."
 
-#: utils/misc/guc.c:4124
+#: utils/misc/guc.c:4351
 msgid "Sets the curve to use for ECDH."
 msgstr "Define la curva a usar para ECDH."
 
-#: utils/misc/guc.c:4139
+#: utils/misc/guc.c:4366
 msgid "Location of the SSL DH parameters file."
 msgstr "Ubicación del archivo de parámetros DH para SSL."
 
-#: utils/misc/guc.c:4150
+#: utils/misc/guc.c:4377
 msgid "Command to obtain passphrases for SSL."
 msgstr "Orden para obtener frases clave para SSL."
 
-#: utils/misc/guc.c:4160
+#: utils/misc/guc.c:4388
 msgid "Sets the application name to be reported in statistics and logs."
 msgstr "Define el nombre de aplicación a reportarse en estadísticas y logs."
 
-#: utils/misc/guc.c:4171
+#: utils/misc/guc.c:4399
 msgid "Sets the name of the cluster, which is included in the process title."
 msgstr "Define el nombre del clúster, el cual se incluye en el título de proceso."
 
-#: utils/misc/guc.c:4182
+#: utils/misc/guc.c:4410
 msgid "Sets the WAL resource managers for which WAL consistency checks are done."
 msgstr "Define los gestores de recursos WAL para los cuales hacer verificaciones de consistencia WAL."
 
-#: utils/misc/guc.c:4183
+#: utils/misc/guc.c:4411
 msgid "Full-page images will be logged for all data blocks and cross-checked against the results of WAL replay."
 msgstr "Se registrarán imágenes de página completa para todos los bloques de datos, y comparados con los resultados de la aplicación de WAL."
 
-#: utils/misc/guc.c:4193
+#: utils/misc/guc.c:4421
 msgid "JIT provider to use."
 msgstr "Proveedor JIT a usar."
 
-#: utils/misc/guc.c:4213
+#: utils/misc/guc.c:4432
+#, fuzzy
+#| msgid "Logs the host name in the connection logs."
+msgid "Log backtrace for errors in these functions."
+msgstr "Registrar el nombre del host en la conexión."
+
+#: utils/misc/guc.c:4452
 msgid "Sets whether \"\\'\" is allowed in string literals."
 msgstr "Define si «\\'» está permitido en literales de cadena."
 
-#: utils/misc/guc.c:4223
+#: utils/misc/guc.c:4462
 msgid "Sets the output format for bytea."
 msgstr "Formato de salida para bytea."
 
-#: utils/misc/guc.c:4233
+#: utils/misc/guc.c:4472
 msgid "Sets the message levels that are sent to the client."
 msgstr "Nivel de mensajes enviados al cliente."
 
-#: utils/misc/guc.c:4234 utils/misc/guc.c:4299 utils/misc/guc.c:4310
-#: utils/misc/guc.c:4386
+#: utils/misc/guc.c:4473 utils/misc/guc.c:4538 utils/misc/guc.c:4549
+#: utils/misc/guc.c:4625
 msgid "Each level includes all the levels that follow it. The later the level, the fewer messages are sent."
 msgstr "Cada nivel incluye todos los niveles que lo siguen.  Mientras más posterior el nivel, menos mensajes se enviarán."
 
-#: utils/misc/guc.c:4244
+#: utils/misc/guc.c:4483
 msgid "Enables the planner to use constraints to optimize queries."
 msgstr "Permitir el uso de restricciones para limitar los accesos a tablas."
 
-#: utils/misc/guc.c:4245
+#: utils/misc/guc.c:4484
 msgid "Table scans will be skipped if their constraints guarantee that no rows match the query."
 msgstr "Las tablas no serán recorridas si sus restricciones garantizan que ninguna fila coincidirá con la consulta."
 
-#: utils/misc/guc.c:4256
+#: utils/misc/guc.c:4495
 msgid "Sets the transaction isolation level of each new transaction."
 msgstr "Nivel de aislación (isolation level) de transacciones nuevas."
 
-#: utils/misc/guc.c:4266
+#: utils/misc/guc.c:4505
 msgid "Sets the current transaction's isolation level."
 msgstr "Define el nivel de aislación de la transacción en curso."
 
-#: utils/misc/guc.c:4277
+#: utils/misc/guc.c:4516
 msgid "Sets the display format for interval values."
 msgstr "Formato de salida para valores de intervalos."
 
-#: utils/misc/guc.c:4288
+#: utils/misc/guc.c:4527
 msgid "Sets the verbosity of logged messages."
 msgstr "Verbosidad de los mensajes registrados."
 
-#: utils/misc/guc.c:4298
+#: utils/misc/guc.c:4537
 msgid "Sets the message levels that are logged."
 msgstr "Nivel de mensajes registrados."
 
-#: utils/misc/guc.c:4309
+#: utils/misc/guc.c:4548
 msgid "Causes all statements generating error at or above this level to be logged."
 msgstr "Registrar sentencias que generan error de nivel superior o igual a éste."
 
-#: utils/misc/guc.c:4320
+#: utils/misc/guc.c:4559
 msgid "Sets the type of statements logged."
 msgstr "Define el tipo de sentencias que se registran."
 
-#: utils/misc/guc.c:4330
+#: utils/misc/guc.c:4569
 msgid "Sets the syslog \"facility\" to be used when syslog enabled."
 msgstr "«Facility» de syslog que se usará cuando syslog esté habilitado."
 
-#: utils/misc/guc.c:4345
+#: utils/misc/guc.c:4584
 msgid "Sets the session's behavior for triggers and rewrite rules."
 msgstr "Define el comportamiento de la sesión con respecto a disparadores y reglas de reescritura."
 
-#: utils/misc/guc.c:4355
+#: utils/misc/guc.c:4594
 msgid "Sets the current transaction's synchronization level."
 msgstr "Define el nivel de sincronización de la transacción en curso."
 
-#: utils/misc/guc.c:4365
+#: utils/misc/guc.c:4604
 msgid "Allows archiving of WAL files using archive_command."
 msgstr "Permite el archivado de WAL usando archive_command."
 
-#: utils/misc/guc.c:4375
+#: utils/misc/guc.c:4614
 msgid "Sets the action to perform upon reaching the recovery target."
 msgstr "Acción a ejecutar al alcanzar el destino de recuperación."
 
-#: utils/misc/guc.c:4385
+#: utils/misc/guc.c:4624
 msgid "Enables logging of recovery-related debugging information."
 msgstr "Recolectar información de depuración relacionada con la recuperación."
 
-#: utils/misc/guc.c:4401
+#: utils/misc/guc.c:4640
 msgid "Collects function-level statistics on database activity."
 msgstr "Recolectar estadísticas de actividad de funciones en la base de datos."
 
-#: utils/misc/guc.c:4411
+#: utils/misc/guc.c:4650
 msgid "Set the level of information written to the WAL."
 msgstr "Nivel de información escrita a WAL."
 
-#: utils/misc/guc.c:4421
+#: utils/misc/guc.c:4660
 msgid "Selects the dynamic shared memory implementation used."
 msgstr "Escoge la implementación de memoria compartida dinámica que se usará."
 
-#: utils/misc/guc.c:4431
+#: utils/misc/guc.c:4670
 msgid "Selects the shared memory implementation used for the main shared memory region."
 msgstr "Escoge la implementación de memoria compartida dinámica que se usará para la región principal de memoria compartida."
 
-#: utils/misc/guc.c:4441
+#: utils/misc/guc.c:4680
 msgid "Selects the method used for forcing WAL updates to disk."
 msgstr "Selecciona el método usado para forzar escritura de WAL a disco."
 
-#: utils/misc/guc.c:4451
+#: utils/misc/guc.c:4690
 msgid "Sets how binary values are to be encoded in XML."
 msgstr "Define cómo se codificarán los valores binarios en XML."
 
-#: utils/misc/guc.c:4461
+#: utils/misc/guc.c:4700
 msgid "Sets whether XML data in implicit parsing and serialization operations is to be considered as documents or content fragments."
 msgstr "Define si los datos XML implícitos en operaciones de análisis y serialización serán considerados documentos o fragmentos de contenido."
 
-#: utils/misc/guc.c:4472
+#: utils/misc/guc.c:4711
 msgid "Use of huge pages on Linux or Windows."
 msgstr "Usar páginas grandes (huge) en Linux o Windows."
 
-#: utils/misc/guc.c:4482
+#: utils/misc/guc.c:4721
 msgid "Forces use of parallel query facilities."
 msgstr "Obliga al uso de la funcionalidad de consultas paralelas."
 
-#: utils/misc/guc.c:4483
+#: utils/misc/guc.c:4722
 msgid "If possible, run query using a parallel worker and with parallel restrictions."
 msgstr "Si es posible, ejecuta cada consulta en un ayudante paralelo y con restricciones de paralelismo."
 
-#: utils/misc/guc.c:4493
+#: utils/misc/guc.c:4732
 msgid "Encrypt passwords."
 msgstr "Cifrar contraseñas."
 
-#: utils/misc/guc.c:4494
+#: utils/misc/guc.c:4733
 msgid "When a password is specified in CREATE USER or ALTER USER without writing either ENCRYPTED or UNENCRYPTED, this parameter determines whether the password is to be encrypted."
 msgstr "Cuando se entrega una contraseña en CREATE USER o ALTER USER sin especificar ENCRYPTED ni UNENCRYPTED, esta opción determina si la password deberá ser encriptada."
 
-#: utils/misc/guc.c:4505
+#: utils/misc/guc.c:4744
 msgid "Controls the planner's selection of custom or generic plan."
 msgstr "Controla la selección del optimizador de planes genéricos o «custom»."
 
-#: utils/misc/guc.c:4506
+#: utils/misc/guc.c:4745
 msgid "Prepared statements can have custom and generic plans, and the planner will attempt to choose which is better.  This can be set to override the default behavior."
 msgstr "Las sentencias preparadas pueden tener planes genéricos y «custom», y el optimizador intentará escoger cuál es mejor. Esto puede usarse para controlar manualmente el comportamiento."
 
-#: utils/misc/guc.c:4518
+#: utils/misc/guc.c:4757
 msgid "Sets the minimum SSL/TLS protocol version to use."
 msgstr "Define la versión mínima del protocolo SSL/TLS a usar."
 
-#: utils/misc/guc.c:4530
+#: utils/misc/guc.c:4769
 msgid "Sets the maximum SSL/TLS protocol version to use."
 msgstr "Define la versión máxima del protocolo SSL/TLS a usar."
 
-#: utils/misc/guc.c:5353
+#: utils/misc/guc.c:5572
 #, c-format
 msgid "%s: could not access directory \"%s\": %s\n"
 msgstr "%s: no se pudo acceder al directorio «%s»: %s\n"
 
-#: utils/misc/guc.c:5358
+#: utils/misc/guc.c:5577
 #, c-format
 msgid "Run initdb or pg_basebackup to initialize a PostgreSQL data directory.\n"
 msgstr "Ejecute initdb o pg_basebackup para inicializar un directorio de datos de PostgreSQL.\n"
 
-#: utils/misc/guc.c:5378
+#: utils/misc/guc.c:5597
 #, c-format
 msgid ""
 "%s does not know where to find the server configuration file.\n"
@@ -26316,12 +26557,12 @@ msgstr ""
 "%s no sabe dónde encontrar el archivo de configuración del servidor.\n"
 "Debe especificar la opción --config-file o -D o definir la variable de ambiente PGDATA.\n"
 
-#: utils/misc/guc.c:5397
+#: utils/misc/guc.c:5616
 #, c-format
 msgid "%s: could not access the server configuration file \"%s\": %s\n"
 msgstr "%s: no se pudo acceder al archivo de configuración «%s»: %s\n"
 
-#: utils/misc/guc.c:5423
+#: utils/misc/guc.c:5642
 #, c-format
 msgid ""
 "%s does not know where to find the database system data.\n"
@@ -26330,7 +26571,7 @@ msgstr ""
 "%s no sabe dónde encontrar los archivos de sistema de la base de datos.\n"
 "Esto puede especificarse como «data_directory» en «%s», o usando la opción -D, o a través de la variable de ambiente PGDATA.\n"
 
-#: utils/misc/guc.c:5471
+#: utils/misc/guc.c:5690
 #, c-format
 msgid ""
 "%s does not know where to find the \"hba\" configuration file.\n"
@@ -26339,7 +26580,7 @@ msgstr ""
 "%s no sabe dónde encontrar el archivo de configuración «hba».\n"
 "Esto puede especificarse como «hba_file» en «%s», o usando la opción -D, o a través de la variable de ambiente PGDATA.\n"
 
-#: utils/misc/guc.c:5494
+#: utils/misc/guc.c:5713
 #, c-format
 msgid ""
 "%s does not know where to find the \"ident\" configuration file.\n"
@@ -26348,163 +26589,188 @@ msgstr ""
 "%s no sabe dónde encontrar el archivo de configuración «ident».\n"
 "Esto puede especificarse como «ident_file» en «%s», o usando la opción -D, o a través de la variable de ambiente PGDATA.\n"
 
-#: utils/misc/guc.c:6336
+#: utils/misc/guc.c:6555
 msgid "Value exceeds integer range."
 msgstr "El valor excede el rango para enteros."
 
-#: utils/misc/guc.c:6572
+#: utils/misc/guc.c:6791
 #, c-format
 msgid "%d%s%s is outside the valid range for parameter \"%s\" (%d .. %d)"
 msgstr "%d%s%s está fuera del rango aceptable para el parámetro «%s» (%d .. %d)"
 
-#: utils/misc/guc.c:6608
+#: utils/misc/guc.c:6827
 #, c-format
 msgid "%g%s%s is outside the valid range for parameter \"%s\" (%g .. %g)"
 msgstr "%g%s%s está fuera del rango aceptable para el parámetro «%s» (%g .. %g)"
 
-#: utils/misc/guc.c:6764 utils/misc/guc.c:8131
+#: utils/misc/guc.c:6983 utils/misc/guc.c:8350
 #, c-format
 msgid "cannot set parameters during a parallel operation"
 msgstr "no se puede definir parámetros durante una operación paralela"
 
-#: utils/misc/guc.c:6771 utils/misc/guc.c:7523 utils/misc/guc.c:7576
-#: utils/misc/guc.c:7627 utils/misc/guc.c:7960 utils/misc/guc.c:8727
-#: utils/misc/guc.c:8993 utils/misc/guc.c:10631
+#: utils/misc/guc.c:6990 utils/misc/guc.c:7742 utils/misc/guc.c:7795
+#: utils/misc/guc.c:7846 utils/misc/guc.c:8179 utils/misc/guc.c:8946
+#: utils/misc/guc.c:9208 utils/misc/guc.c:10874
 #, c-format
 msgid "unrecognized configuration parameter \"%s\""
 msgstr "parámetro de configuración «%s» no reconocido"
 
-#: utils/misc/guc.c:6786 utils/misc/guc.c:7972
+#: utils/misc/guc.c:7005 utils/misc/guc.c:8191
 #, c-format
 msgid "parameter \"%s\" cannot be changed"
 msgstr "no se puede cambiar el parámetro «%s»"
 
-#: utils/misc/guc.c:6819
+#: utils/misc/guc.c:7028 utils/misc/guc.c:7222 utils/misc/guc.c:7312
+#: utils/misc/guc.c:7402 utils/misc/guc.c:7510 utils/misc/guc.c:7605
+#: guc-file.l:352
+#, c-format
+msgid "parameter \"%s\" cannot be changed without restarting the server"
+msgstr "el parámetro «%s» no se puede cambiar sin reiniciar el servidor"
+
+#: utils/misc/guc.c:7038
 #, c-format
 msgid "parameter \"%s\" cannot be changed now"
 msgstr "el parámetro «%s» no se puede cambiar en este momento"
 
-#: utils/misc/guc.c:6837 utils/misc/guc.c:6884 utils/misc/guc.c:10647
+#: utils/misc/guc.c:7056 utils/misc/guc.c:7103 utils/misc/guc.c:10890
 #, c-format
 msgid "permission denied to set parameter \"%s\""
 msgstr "se ha denegado el permiso para cambiar la opción «%s»"
 
-#: utils/misc/guc.c:6874
+#: utils/misc/guc.c:7093
 #, c-format
 msgid "parameter \"%s\" cannot be set after connection start"
 msgstr "el parámetro «%s» no se puede cambiar después de efectuar la conexión"
 
-#: utils/misc/guc.c:6922
+#: utils/misc/guc.c:7141
 #, c-format
 msgid "cannot set parameter \"%s\" within security-definer function"
 msgstr "no se puede definir el parámetro «%s» dentro una función security-definer"
 
-#: utils/misc/guc.c:7531 utils/misc/guc.c:7581 utils/misc/guc.c:9000
+#: utils/misc/guc.c:7750 utils/misc/guc.c:7800 utils/misc/guc.c:9215
 #, c-format
 msgid "must be superuser or a member of pg_read_all_settings to examine \"%s\""
 msgstr "debe ser superusuario o miembro del rol pg_read_all settings para examinar «%s»"
 
-#: utils/misc/guc.c:7672
+#: utils/misc/guc.c:7891
 #, c-format
 msgid "SET %s takes only one argument"
 msgstr "SET %s lleva sólo un argumento"
 
-#: utils/misc/guc.c:7920
+#: utils/misc/guc.c:8139
 #, c-format
 msgid "must be superuser to execute ALTER SYSTEM command"
 msgstr "debe ser superusuario para ejecutar la orden ALTER SYSTEM"
 
-#: utils/misc/guc.c:8005
+#: utils/misc/guc.c:8224
 #, c-format
 msgid "parameter value for ALTER SYSTEM must not contain a newline"
 msgstr "los valores de parámetros para ALTER SYSTEM no deben contener saltos de línea"
 
-#: utils/misc/guc.c:8050
+#: utils/misc/guc.c:8269
 #, c-format
 msgid "could not parse contents of file \"%s\""
 msgstr "no se pudo interpretar el contenido del archivo «%s»"
 
-#: utils/misc/guc.c:8207
+#: utils/misc/guc.c:8426
 #, c-format
 msgid "SET LOCAL TRANSACTION SNAPSHOT is not implemented"
 msgstr "SET LOCAL TRANSACTION SNAPSHOT no está implementado"
 
-#: utils/misc/guc.c:8291
+#: utils/misc/guc.c:8510
 #, c-format
 msgid "SET requires parameter name"
 msgstr "SET requiere el nombre de un parámetro"
 
-#: utils/misc/guc.c:8424
+#: utils/misc/guc.c:8643
 #, c-format
 msgid "attempt to redefine parameter \"%s\""
 msgstr "intento de cambiar la opción «%s»"
 
-#: utils/misc/guc.c:10264
+#: utils/misc/guc.c:10436
+#, fuzzy, c-format
+#| msgid "parameter \"%s\" changed to \"%s\""
+msgid "while setting parameter \"%s\" to \"%s\""
+msgstr "el parámetro «%s» fue cambiado a «%s»"
+
+#: utils/misc/guc.c:10504
 #, c-format
 msgid "parameter \"%s\" could not be set"
 msgstr "no se pudo cambiar el parámetro «%s»"
 
-#: utils/misc/guc.c:10351
+#: utils/misc/guc.c:10594
 #, c-format
 msgid "could not parse setting for parameter \"%s\""
 msgstr "no se pudo interpretar el valor de para el parámetro «%s»"
 
-#: utils/misc/guc.c:10709 utils/misc/guc.c:10743
+#: utils/misc/guc.c:10952 utils/misc/guc.c:10986
 #, c-format
 msgid "invalid value for parameter \"%s\": %d"
 msgstr "valor no válido para el parámetro «%s»: %d"
 
-#: utils/misc/guc.c:10777
+#: utils/misc/guc.c:11020
 #, c-format
 msgid "invalid value for parameter \"%s\": %g"
 msgstr "valor no válido para el parámetro «%s»: %g"
 
-#: utils/misc/guc.c:11047
+#: utils/misc/guc.c:11290
 #, c-format
 msgid "\"temp_buffers\" cannot be changed after any temporary tables have been accessed in the session."
 msgstr "«temp_buffers» no puede ser cambiado después de que cualquier tabla temporal haya sido accedida en la sesión."
 
-#: utils/misc/guc.c:11059
+#: utils/misc/guc.c:11302
 #, c-format
 msgid "Bonjour is not supported by this build"
 msgstr "Bonjour no está soportado en este servidor"
 
-#: utils/misc/guc.c:11072
+#: utils/misc/guc.c:11315
 #, c-format
 msgid "SSL is not supported by this build"
 msgstr "SSL no está soportado en este servidor"
 
-#: utils/misc/guc.c:11084
+#: utils/misc/guc.c:11327
 #, c-format
 msgid "Cannot enable parameter when \"log_statement_stats\" is true."
 msgstr "No se puede activar el parámetro cuando «log_statement_stats» está activo."
 
-#: utils/misc/guc.c:11096
+#: utils/misc/guc.c:11339
 #, c-format
 msgid "Cannot enable \"log_statement_stats\" when \"log_parser_stats\", \"log_planner_stats\", or \"log_executor_stats\" is true."
 msgstr "No se puede activar «log_statement_stats» cuando «log_parser_stats», «log_planner_stats» o «log_executor_stats» están activos."
 
-#: utils/misc/guc.c:11340
+#: utils/misc/guc.c:11569
 #, c-format
 msgid "effective_io_concurrency must be set to 0 on platforms that lack posix_fadvise()."
 msgstr "effective_io_concurrency debe ser 0 en plataformas que no tienen posix_fadvise()."
 
-#: utils/misc/guc.c:11454
+#: utils/misc/guc.c:11582
+#, fuzzy, c-format
+#| msgid "effective_io_concurrency must be set to 0 on platforms that lack posix_fadvise()."
+msgid "maintenance_io_concurrency must be set to 0 on platforms that lack posix_fadvise()."
+msgstr "effective_io_concurrency debe ser 0 en plataformas que no tienen posix_fadvise()."
+
+#: utils/misc/guc.c:11698
+#, fuzzy, c-format
+#| msgid "Invalid character value."
+msgid "invalid character"
+msgstr "Valor de carácter no válido."
+
+#: utils/misc/guc.c:11758
 #, c-format
 msgid "recovery_target_timeline is not a valid number."
 msgstr "recovery_target_timeline no es un número válido."
 
-#: utils/misc/guc.c:11494
+#: utils/misc/guc.c:11798
 #, c-format
 msgid "multiple recovery targets specified"
 msgstr "múltiples valores de destino de recuperación especificados"
 
-#: utils/misc/guc.c:11495
+#: utils/misc/guc.c:11799
 #, 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 "A lo más uno de recovery_target, recovery_target_lsn, recovery_target_name, recovery_target_time, recovery_target_xid puede estar definido."
 
-#: utils/misc/guc.c:11503
+#: utils/misc/guc.c:11807
 #, c-format
 msgid "The only allowed value is \"immediate\"."
 msgstr "El único valor permitido es «immediate»."
@@ -26520,7 +26786,7 @@ msgid "query-specified return tuple and function return type are not compatible"
 msgstr "tupla de retorno especificada por la consulta y el tipo retornado por la función no son compatibles"
 
 #: utils/misc/pg_controldata.c:60 utils/misc/pg_controldata.c:138
-#: utils/misc/pg_controldata.c:242 utils/misc/pg_controldata.c:309
+#: utils/misc/pg_controldata.c:241 utils/misc/pg_controldata.c:306
 #, c-format
 msgid "calculated CRC checksum does not match value stored in file"
 msgstr "la suma de verificación calculada no coincide con el valor almacenado en el archivo"
@@ -26540,77 +26806,77 @@ msgstr "la consulta sería afectada por la política de seguridad de registros p
 msgid "To disable the policy for the table's owner, use ALTER TABLE NO FORCE ROW LEVEL SECURITY."
 msgstr "Para desactivar la política para el dueño de la tabla, use ALTER TABLE NO FORCE ROW LEVEL SECURITY."
 
-#: utils/misc/timeout.c:388
+#: utils/misc/timeout.c:395
 #, c-format
 msgid "cannot add more timeout reasons"
 msgstr "no se pueden agregar más razones de timeout"
 
-#: utils/misc/tzparser.c:61
+#: utils/misc/tzparser.c:60
 #, c-format
 msgid "time zone abbreviation \"%s\" is too long (maximum %d characters) in time zone file \"%s\", line %d"
 msgstr "la abreviación del huso horario «%s» es demasiado larga (máximo %d caracteres) en archivo de huso horario «%s», línea %d"
 
-#: utils/misc/tzparser.c:73
+#: utils/misc/tzparser.c:72
 #, c-format
 msgid "time zone offset %d is out of range in time zone file \"%s\", line %d"
 msgstr "desplazamiento de huso horario %d está fuera de rango en el archivo de huso horario «%s», línea %d"
 
-#: utils/misc/tzparser.c:112
+#: utils/misc/tzparser.c:111
 #, c-format
 msgid "missing time zone abbreviation in time zone file \"%s\", line %d"
 msgstr "falta una abreviación de huso horario en el archivo de huso horario «%s», línea %d"
 
-#: utils/misc/tzparser.c:121
+#: utils/misc/tzparser.c:120
 #, c-format
 msgid "missing time zone offset in time zone file \"%s\", line %d"
 msgstr "falta un desplazamiento de huso horario en el archivo de huso horario «%s», línea %d"
 
-#: utils/misc/tzparser.c:133
+#: utils/misc/tzparser.c:132
 #, c-format
 msgid "invalid number for time zone offset in time zone file \"%s\", line %d"
 msgstr "número no válido para desplazamiento de huso horario en archivo de huso horario «%s», línea %d"
 
-#: utils/misc/tzparser.c:169
+#: utils/misc/tzparser.c:168
 #, c-format
 msgid "invalid syntax in time zone file \"%s\", line %d"
 msgstr "sintaxis no válida en archivo de huso horario «%s», línea %d"
 
-#: utils/misc/tzparser.c:237
+#: utils/misc/tzparser.c:236
 #, c-format
 msgid "time zone abbreviation \"%s\" is multiply defined"
 msgstr "abreviación de huso horario «%s» está definida múltiples veces"
 
-#: utils/misc/tzparser.c:239
+#: utils/misc/tzparser.c:238
 #, c-format
 msgid "Entry in time zone file \"%s\", line %d, conflicts with entry in file \"%s\", line %d."
 msgstr "Entrada en archivo de huso horario «%s», línea %d, causa conflictos con entrada en archivo «%s», línea %d."
 
-#: utils/misc/tzparser.c:301
+#: utils/misc/tzparser.c:300
 #, c-format
 msgid "invalid time zone file name \"%s\""
 msgstr "nombre de huso horario «%s» no válido"
 
-#: utils/misc/tzparser.c:314
+#: utils/misc/tzparser.c:313
 #, c-format
 msgid "time zone file recursion limit exceeded in file \"%s\""
 msgstr "límite de recursión excedido en el archivo «%s»"
 
-#: utils/misc/tzparser.c:353 utils/misc/tzparser.c:366
+#: utils/misc/tzparser.c:352 utils/misc/tzparser.c:365
 #, c-format
 msgid "could not read time zone file \"%s\": %m"
 msgstr "no se pudo leer archivo de huso horario «%s»: %m"
 
-#: utils/misc/tzparser.c:376
+#: utils/misc/tzparser.c:375
 #, c-format
 msgid "line is too long in time zone file \"%s\", line %d"
 msgstr "línea demasiado larga en archivo de huso horario «%s», línea %d"
 
-#: utils/misc/tzparser.c:399
+#: utils/misc/tzparser.c:398
 #, c-format
 msgid "@INCLUDE without file name in time zone file \"%s\", line %d"
 msgstr "@INCLUDE sin nombre de archivo en archivo de huso horario «%s», línea %d"
 
-#: utils/mmgr/aset.c:485 utils/mmgr/generation.c:250 utils/mmgr/slab.c:240
+#: utils/mmgr/aset.c:476 utils/mmgr/generation.c:234 utils/mmgr/slab.c:236
 #, c-format
 msgid "Failed while creating memory context \"%s\"."
 msgstr "Falla al crear el contexto de memoria «%s»."
@@ -26620,10 +26886,10 @@ msgstr "Falla al crear el contexto de memoria «%s»."
 msgid "could not attach to dynamic shared area"
 msgstr "no se pudo adjuntar al segmento de memoria compartida dinámica"
 
-#: utils/mmgr/mcxt.c:797 utils/mmgr/mcxt.c:833 utils/mmgr/mcxt.c:871
-#: utils/mmgr/mcxt.c:909 utils/mmgr/mcxt.c:945 utils/mmgr/mcxt.c:976
-#: utils/mmgr/mcxt.c:1012 utils/mmgr/mcxt.c:1064 utils/mmgr/mcxt.c:1099
-#: utils/mmgr/mcxt.c:1134
+#: utils/mmgr/mcxt.c:822 utils/mmgr/mcxt.c:858 utils/mmgr/mcxt.c:896
+#: utils/mmgr/mcxt.c:934 utils/mmgr/mcxt.c:970 utils/mmgr/mcxt.c:1001
+#: utils/mmgr/mcxt.c:1037 utils/mmgr/mcxt.c:1089 utils/mmgr/mcxt.c:1124
+#: utils/mmgr/mcxt.c:1159
 #, c-format
 msgid "Failed on request of size %zu in memory context \"%s\"."
 msgstr "Falló una petición de tamaño %zu en el contexto de memoria «%s»."
@@ -26638,70 +26904,65 @@ msgstr "el cursor «%s» ya existe"
 msgid "closing existing cursor \"%s\""
 msgstr "cerrando el cursor «%s» preexistente"
 
-#: utils/mmgr/portalmem.c:398
+#: utils/mmgr/portalmem.c:400
 #, c-format
 msgid "portal \"%s\" cannot be run"
 msgstr "el portal «%s» no puede ser ejecutado"
 
-#: utils/mmgr/portalmem.c:476
+#: utils/mmgr/portalmem.c:478
 #, c-format
 msgid "cannot drop pinned portal \"%s\""
 msgstr "no se puede eliminar el portal «pinned» «%s»"
 
-#: utils/mmgr/portalmem.c:484
+#: utils/mmgr/portalmem.c:486
 #, c-format
 msgid "cannot drop active portal \"%s\""
 msgstr "no se puede eliminar el portal activo «%s»"
 
-#: utils/mmgr/portalmem.c:729
+#: utils/mmgr/portalmem.c:731
 #, c-format
 msgid "cannot PREPARE a transaction that has created a cursor WITH HOLD"
 msgstr "no se puede hacer PREPARE de una transacción que ha creado un cursor WITH HOLD"
 
-#: utils/mmgr/portalmem.c:1269
+#: utils/mmgr/portalmem.c:1270
 #, c-format
 msgid "cannot perform transaction commands inside a cursor loop that is not read-only"
 msgstr "no se pueden ejecutar órdenes de transacción dentro de un bucle de cursor que no es de sólo lectura"
 
-#: utils/sort/logtape.c:276
+#: utils/sort/logtape.c:268
 #, c-format
 msgid "could not read block %ld of temporary file: %m"
 msgstr "no se pudo leer el bloque %ld del archivo temporal: %m"
 
-#: utils/sort/sharedtuplestore.c:208
-#, c-format
-msgid "could not write to temporary file: %m"
-msgstr "no se pudo escribir al archivo temporal: %m"
-
-#: utils/sort/sharedtuplestore.c:437 utils/sort/sharedtuplestore.c:446
-#: utils/sort/sharedtuplestore.c:469 utils/sort/sharedtuplestore.c:486
-#: utils/sort/sharedtuplestore.c:503 utils/sort/sharedtuplestore.c:575
-#: utils/sort/sharedtuplestore.c:581
+#: utils/sort/sharedtuplestore.c:435 utils/sort/sharedtuplestore.c:444
+#: utils/sort/sharedtuplestore.c:467 utils/sort/sharedtuplestore.c:484
+#: utils/sort/sharedtuplestore.c:501 utils/sort/sharedtuplestore.c:573
+#: utils/sort/sharedtuplestore.c:579
 #, c-format
 msgid "could not read from shared tuplestore temporary file"
 msgstr "no se pudo leer desde el archivo temporal del tuplestore compartido"
 
-#: utils/sort/sharedtuplestore.c:492
+#: utils/sort/sharedtuplestore.c:490
 #, c-format
 msgid "unexpected chunk in shared tuplestore temporary file"
 msgstr "trozo inesperado en archivo temporal del tuplestore compartido"
 
-#: utils/sort/tuplesort.c:2967
+#: utils/sort/tuplesort.c:3140
 #, c-format
 msgid "cannot have more than %d runs for an external sort"
 msgstr "no se pueden tener más de %d pasadas para un ordenamiento externo"
 
-#: utils/sort/tuplesort.c:4051
+#: utils/sort/tuplesort.c:4221
 #, c-format
 msgid "could not create unique index \"%s\""
 msgstr "no se pudo crear el índice único «%s»"
 
-#: utils/sort/tuplesort.c:4053
+#: utils/sort/tuplesort.c:4223
 #, c-format
 msgid "Key %s is duplicated."
 msgstr "La llave %s está duplicada."
 
-#: utils/sort/tuplesort.c:4054
+#: utils/sort/tuplesort.c:4224
 #, c-format
 msgid "Duplicate keys exist."
 msgstr "Existe una llave duplicada."
@@ -26776,3 +27037,694 @@ msgstr "una transacción serializable que no es de sólo lectura no puede import
 #, c-format
 msgid "cannot import a snapshot from a different database"
 msgstr "no se puede importar un snapshot desde una base de datos diferente"
+
+#: gram.y:1048
+#, c-format
+msgid "UNENCRYPTED PASSWORD is no longer supported"
+msgstr "UNENCRYPTED PASSWORD ya no está soportado"
+
+#: gram.y:1049
+#, c-format
+msgid "Remove UNENCRYPTED to store the password in encrypted form instead."
+msgstr "Quite UNENCRYPTED para almacenar la contraseña en su lugar en forma cifrada."
+
+#: gram.y:1111
+#, c-format
+msgid "unrecognized role option \"%s\""
+msgstr "opción de rol «%s» no reconocida"
+
+#: gram.y:1358 gram.y:1373
+#, c-format
+msgid "CREATE SCHEMA IF NOT EXISTS cannot include schema elements"
+msgstr "CREATE SCHEMA IF NOT EXISTS no puede incluir elementos de esquema"
+
+#: gram.y:1519
+#, c-format
+msgid "current database cannot be changed"
+msgstr "no se puede cambiar la base de datos activa"
+
+#: gram.y:1643
+#, c-format
+msgid "time zone interval must be HOUR or HOUR TO MINUTE"
+msgstr "el intervalo de huso horario debe ser HOUR o HOUR TO MINUTE"
+
+#: gram.y:2178
+#, c-format
+msgid "column number must be in range from 1 to %d"
+msgstr "el número de columna debe estar en el rango de 1 a %d"
+
+#: gram.y:2710
+#, c-format
+msgid "sequence option \"%s\" not supported here"
+msgstr "la opción de secuencia «%s» no está soportado aquí"
+
+#: gram.y:2739
+#, c-format
+msgid "modulus for hash partition provided more than once"
+msgstr "el módulo para partición de hash fue especificado más de una vez"
+
+#: gram.y:2748
+#, c-format
+msgid "remainder for hash partition provided more than once"
+msgstr "el remanentde para partición de hash fue especificado más de una vez"
+
+#: gram.y:2755
+#, c-format
+msgid "unrecognized hash partition bound specification \"%s\""
+msgstr "especificación de borde de partición hash «%s» no reconocida"
+
+#: gram.y:2763
+#, c-format
+msgid "modulus for hash partition must be specified"
+msgstr "el módulo para una partición hash debe ser especificado"
+
+#: gram.y:2767
+#, c-format
+msgid "remainder for hash partition must be specified"
+msgstr "remanente en partición hash debe ser especificado"
+
+#: gram.y:2968 gram.y:3001
+#, c-format
+msgid "STDIN/STDOUT not allowed with PROGRAM"
+msgstr "STDIN/STDOUT no están permitidos con PROGRAM"
+
+#: gram.y:2974
+#, c-format
+msgid "WHERE clause not allowed with COPY TO"
+msgstr "la cláusula WHERE no está permitida con COPY TO"
+
+#: gram.y:3306 gram.y:3313 gram.y:11652 gram.y:11660
+#, c-format
+msgid "GLOBAL is deprecated in temporary table creation"
+msgstr "GLOBAL está obsoleto para la creación de tablas temporales"
+
+#: gram.y:3553
+#, c-format
+msgid "for a generated column, GENERATED ALWAYS must be specified"
+msgstr "para una columna generada, GENERATED ALWAYS debe ser especificado"
+
+#: gram.y:4517
+#, fuzzy, c-format
+#| msgid "nested CREATE EXTENSION is not supported"
+msgid "CREATE EXTENSION ... FROM is no longer supported"
+msgstr "los CREATE EXTENSION anidados no están soportados"
+
+#: gram.y:5343
+#, c-format
+msgid "unrecognized row security option \"%s\""
+msgstr "opción de seguridad de registro «%s» no reconocida"
+
+#: gram.y:5344
+#, c-format
+msgid "Only PERMISSIVE or RESTRICTIVE policies are supported currently."
+msgstr "sólo se admiten actualmente políticas PERMISSIVE o RESTRICTIVE."
+
+#: gram.y:5457
+msgid "duplicate trigger events specified"
+msgstr "se han especificado eventos de disparador duplicados"
+
+#: gram.y:5605
+#, c-format
+msgid "conflicting constraint properties"
+msgstr "propiedades de restricción contradictorias"
+
+#: gram.y:5701
+#, c-format
+msgid "CREATE ASSERTION is not yet implemented"
+msgstr "CREATE ASSERTION no está implementado"
+
+#: gram.y:6084
+#, c-format
+msgid "RECHECK is no longer required"
+msgstr "RECHECK ya no es requerido"
+
+#: gram.y:6085
+#, c-format
+msgid "Update your data type."
+msgstr "Actualice su tipo de datos."
+
+#: gram.y:7836
+#, c-format
+msgid "aggregates cannot have output arguments"
+msgstr "las funciones de agregación no pueden tener argumentos de salida"
+
+#: gram.y:10158 gram.y:10176
+#, c-format
+msgid "WITH CHECK OPTION not supported on recursive views"
+msgstr "WITH CHECK OPTION no está soportado con vistas recursivas"
+
+#: gram.y:11784
+#, c-format
+msgid "LIMIT #,# syntax is not supported"
+msgstr "la sintaxis LIMIT #,# no está soportada"
+
+#: gram.y:11785
+#, c-format
+msgid "Use separate LIMIT and OFFSET clauses."
+msgstr "Use cláusulas LIMIT y OFFSET separadas."
+
+#: gram.y:12103 gram.y:12128
+#, c-format
+msgid "VALUES in FROM must have an alias"
+msgstr "VALUES en FROM debe tener un alias"
+
+#: gram.y:12104 gram.y:12129
+#, c-format
+msgid "For example, FROM (VALUES ...) [AS] foo."
+msgstr "Por ejemplo, FROM (VALUES ...) [AS] foo."
+
+#: gram.y:12109 gram.y:12134
+#, c-format
+msgid "subquery in FROM must have an alias"
+msgstr "las subconsultas en FROM deben tener un alias"
+
+#: gram.y:12110 gram.y:12135
+#, c-format
+msgid "For example, FROM (SELECT ...) [AS] foo."
+msgstr "Por ejemplo, FROM (SELECT ...) [AS] foo."
+
+#: gram.y:12588
+#, c-format
+msgid "only one DEFAULT value is allowed"
+msgstr "Sólo se permite un valor DEFAULT"
+
+#: gram.y:12597
+#, c-format
+msgid "only one PATH value per column is allowed"
+msgstr "sólo se permite un valor de PATH por columna"
+
+#: gram.y:12606
+#, c-format
+msgid "conflicting or redundant NULL / NOT NULL declarations for column \"%s\""
+msgstr "declaraciones NULL/NOT NULL en conflicto o redundantes para la columna «%s»"
+
+#: gram.y:12615
+#, c-format
+msgid "unrecognized column option \"%s\""
+msgstr "opción de columna «%s» no reconocida"
+
+#: gram.y:12869
+#, c-format
+msgid "precision for type float must be at least 1 bit"
+msgstr "la precisión para el tipo float debe ser al menos 1 bit"
+
+#: gram.y:12878
+#, c-format
+msgid "precision for type float must be less than 54 bits"
+msgstr "la precisión para el tipo float debe ser menor de 54 bits"
+
+#: gram.y:13369
+#, c-format
+msgid "wrong number of parameters on left side of OVERLAPS expression"
+msgstr "el número de parámetros es incorrecto al lado izquierdo de la expresión OVERLAPS"
+
+#: gram.y:13374
+#, c-format
+msgid "wrong number of parameters on right side of OVERLAPS expression"
+msgstr "el número de parámetros es incorrecto al lado derecho de la expresión OVERLAPS"
+
+#: gram.y:13549
+#, c-format
+msgid "UNIQUE predicate is not yet implemented"
+msgstr "el predicado UNIQUE no está implementado"
+
+#: gram.y:13912
+#, c-format
+msgid "cannot use multiple ORDER BY clauses with WITHIN GROUP"
+msgstr "no se permiten múltiples cláusulas ORDER BY con WITHIN GROUP"
+
+#: gram.y:13917
+#, c-format
+msgid "cannot use DISTINCT with WITHIN GROUP"
+msgstr "no se permite DISTINCT con WITHIN GROUP"
+
+#: gram.y:13922
+#, c-format
+msgid "cannot use VARIADIC with WITHIN GROUP"
+msgstr "no se permite VARIADIC con WITHIN GROUP"
+
+#: gram.y:14388 gram.y:14411
+#, c-format
+msgid "frame start cannot be UNBOUNDED FOLLOWING"
+msgstr "el inicio de «frame» no puede ser UNBOUNDED FOLLOWING"
+
+#: gram.y:14393
+#, c-format
+msgid "frame starting from following row cannot end with current row"
+msgstr "el «frame» que se inicia desde la siguiente fila no puede terminar en la fila actual"
+
+#: gram.y:14416
+#, c-format
+msgid "frame end cannot be UNBOUNDED PRECEDING"
+msgstr "el fin de «frame» no puede ser UNBOUNDED PRECEDING"
+
+#: gram.y:14422
+#, c-format
+msgid "frame starting from current row cannot have preceding rows"
+msgstr "el «frame» que se inicia desde la fila actual no puede tener filas precedentes"
+
+#: gram.y:14429
+#, c-format
+msgid "frame starting from following row cannot have preceding rows"
+msgstr "el «frame» que se inicia desde la fila siguiente no puede tener filas precedentes"
+
+#: gram.y:15079
+#, c-format
+msgid "type modifier cannot have parameter name"
+msgstr "el modificador de tipo no puede tener nombre de parámetro"
+
+#: gram.y:15085
+#, c-format
+msgid "type modifier cannot have ORDER BY"
+msgstr "el modificador de tipo no puede tener ORDER BY"
+
+#: gram.y:15150 gram.y:15157
+#, c-format
+msgid "%s cannot be used as a role name here"
+msgstr "%s no puede ser usado como nombre de rol aquí"
+
+#: gram.y:15838 gram.y:16027
+msgid "improper use of \"*\""
+msgstr "uso impropio de «*»"
+
+#: gram.y:16091
+#, c-format
+msgid "an ordered-set aggregate with a VARIADIC direct argument must have one VARIADIC aggregated argument of the same data type"
+msgstr "una agregación de conjunto-ordenado con un argumento directo VARIADIC debe tener al menos un argumento agregado VARIADIC del mismo tipo de datos"
+
+#: gram.y:16128
+#, c-format
+msgid "multiple ORDER BY clauses not allowed"
+msgstr "no se permiten múltiples cláusulas ORDER BY"
+
+#: gram.y:16139
+#, c-format
+msgid "multiple OFFSET clauses not allowed"
+msgstr "no se permiten múltiples cláusulas OFFSET"
+
+#: gram.y:16148
+#, c-format
+msgid "multiple LIMIT clauses not allowed"
+msgstr "no se permiten múltiples cláusulas LIMIT"
+
+#: gram.y:16157
+#, fuzzy, c-format
+#| msgid "multiple WITH clauses not allowed"
+msgid "multiple limit options not allowed"
+msgstr "no se permiten múltiples cláusulas WITH"
+
+#: gram.y:16161
+#, fuzzy, c-format
+#| msgid "option \"%s\" cannot be specified with other options"
+msgid "WITH TIES options can not be specified without ORDER BY clause"
+msgstr "la opción «%s» no puede ser especificada con otras opciones"
+
+#: gram.y:16169
+#, c-format
+msgid "multiple WITH clauses not allowed"
+msgstr "no se permiten múltiples cláusulas WITH"
+
+#: gram.y:16373
+#, c-format
+msgid "OUT and INOUT arguments aren't allowed in TABLE functions"
+msgstr "los argumentos OUT e INOUT no están permitidos en funciones TABLE"
+
+#: gram.y:16469
+#, c-format
+msgid "multiple COLLATE clauses not allowed"
+msgstr "no se permiten múltiples cláusulas COLLATE"
+
+#. translator: %s is CHECK, UNIQUE, or similar
+#: gram.y:16507 gram.y:16520
+#, c-format
+msgid "%s constraints cannot be marked DEFERRABLE"
+msgstr "las restricciones %s no pueden ser marcadas DEFERRABLE"
+
+#. translator: %s is CHECK, UNIQUE, or similar
+#: gram.y:16533
+#, c-format
+msgid "%s constraints cannot be marked NOT VALID"
+msgstr "las restricciones %s no pueden ser marcadas NOT VALID"
+
+#. translator: %s is CHECK, UNIQUE, or similar
+#: gram.y:16546
+#, c-format
+msgid "%s constraints cannot be marked NO INHERIT"
+msgstr "las restricciones %s no pueden ser marcadas NO INHERIT"
+
+#: guc-file.l:315
+#, c-format
+msgid "unrecognized configuration parameter \"%s\" in file \"%s\" line %u"
+msgstr "parámetro de configuración «%s» no reconocido en el archivo «%s» línea %u"
+
+#: guc-file.l:388
+#, c-format
+msgid "parameter \"%s\" removed from configuration file, reset to default"
+msgstr "parámetro «%s» eliminado del archivo de configuración, volviendo al valor por omisión"
+
+#: guc-file.l:454
+#, c-format
+msgid "parameter \"%s\" changed to \"%s\""
+msgstr "el parámetro «%s» fue cambiado a «%s»"
+
+#: guc-file.l:496
+#, c-format
+msgid "configuration file \"%s\" contains errors"
+msgstr "el archivo de configuración «%s» contiene errores"
+
+#: guc-file.l:501
+#, c-format
+msgid "configuration file \"%s\" contains errors; unaffected changes were applied"
+msgstr "el archivo de configuración «%s» contiene errores; los cambios no afectados fueron aplicados"
+
+#: guc-file.l:506
+#, c-format
+msgid "configuration file \"%s\" contains errors; no changes were applied"
+msgstr "el archivo de configuración «%s» contiene errores; no se aplicó ningún cambio"
+
+#: guc-file.l:578
+#, c-format
+msgid "empty configuration file name: \"%s\""
+msgstr "nombre de archivo de configuración vacío: «%s»"
+
+#: guc-file.l:595
+#, c-format
+msgid "could not open configuration file \"%s\": maximum nesting depth exceeded"
+msgstr "no se pudo abrir el archivo de configuración «%s»: nivel de anidamiento máximo excedido"
+
+#: guc-file.l:615
+#, c-format
+msgid "configuration file recursion in \"%s\""
+msgstr "recursión de archivos de configuración en «%s»"
+
+#: guc-file.l:642
+#, c-format
+msgid "skipping missing configuration file \"%s\""
+msgstr "omitiendo el archivo de configuración faltante «%s»"
+
+#: guc-file.l:896
+#, c-format
+msgid "syntax error in file \"%s\" line %u, near end of line"
+msgstr "error de sintaxis en el archivo «%s» línea %u, cerca del fin de línea"
+
+#: guc-file.l:906
+#, c-format
+msgid "syntax error in file \"%s\" line %u, near token \"%s\""
+msgstr "error de sintaxis en el archivo «%s» línea %u, cerca de la palabra «%s»"
+
+#: guc-file.l:926
+#, c-format
+msgid "too many syntax errors found, abandoning file \"%s\""
+msgstr "se encontraron demasiados errores de sintaxis, abandonando el archivo «%s»"
+
+#: guc-file.l:981
+#, c-format
+msgid "empty configuration directory name: \"%s\""
+msgstr "nombre de directorio de configuración vacío: «%s»"
+
+#: guc-file.l:1000
+#, c-format
+msgid "could not open configuration directory \"%s\": %m"
+msgstr "no se pudo abrir el directorio de configuración «%s»: %m"
+
+#: jsonpath_gram.y:529
+#, c-format
+msgid "unrecognized flag character \"%c\" in LIKE_REGEX predicate"
+msgstr "parámetro no reconocido «%c» en predicado LIKE_REGEX"
+
+#: jsonpath_gram.y:583
+#, c-format
+msgid "XQuery \"x\" flag (expanded regular expressions) is not implemented"
+msgstr "la opción «x» de XQuery (expresiones regulares expandidas) no está implementada"
+
+#. translator: %s is typically "syntax error"
+#: jsonpath_scan.l:282
+#, c-format
+msgid "%s at end of jsonpath input"
+msgstr "%s al final de la entrada jsonpath"
+
+#. translator: first %s is typically "syntax error"
+#: jsonpath_scan.l:289
+#, c-format
+msgid "%s at or near \"%s\" of jsonpath input"
+msgstr "%s en o cerca de «%s» de la entrada jsonpath"
+
+#: repl_gram.y:349 repl_gram.y:381
+#, c-format
+msgid "invalid timeline %u"
+msgstr "timeline %u no válido"
+
+#: repl_scanner.l:131
+msgid "invalid streaming start location"
+msgstr "posición de inicio de flujo de WAL no válida"
+
+#: repl_scanner.l:182 scan.l:717
+msgid "unterminated quoted string"
+msgstr "una cadena de caracteres entre comillas está inconclusa"
+
+#: scan.l:458
+msgid "unterminated /* comment"
+msgstr "un comentario /* está inconcluso"
+
+#: scan.l:478
+msgid "unterminated bit string literal"
+msgstr "una cadena de bits está inconclusa"
+
+#: scan.l:492
+msgid "unterminated hexadecimal string literal"
+msgstr "una cadena hexadecimal está inconclusa"
+
+#: scan.l:542
+#, c-format
+msgid "unsafe use of string constant with Unicode escapes"
+msgstr "uso inseguro de literal de cadena con escapes Unicode"
+
+#: scan.l:543
+#, c-format
+msgid "String constants with Unicode escapes cannot be used when standard_conforming_strings is off."
+msgstr "Los literales de cadena con escapes Unicode no pueden usarse cuando standard_conforming_strings está desactivado."
+
+#: scan.l:604
+msgid "unhandled previous state in xqs"
+msgstr ""
+
+#: scan.l:678
+#, c-format
+msgid "Unicode escapes must be \\uXXXX or \\UXXXXXXXX."
+msgstr "Los escapes Unicode deben ser \\uXXXX o \\UXXXXXXXX."
+
+#: scan.l:689
+#, c-format
+msgid "unsafe use of \\' in a string literal"
+msgstr "uso inseguro de \\' en un literal de cadena"
+
+#: scan.l:690
+#, c-format
+msgid "Use '' to write quotes in strings. \\' is insecure in client-only encodings."
+msgstr "Use '' para escribir comillas en cadenas. \\' es inseguro en codificaciones de sólo cliente."
+
+#: scan.l:762
+msgid "unterminated dollar-quoted string"
+msgstr "una cadena separada por $ está inconclusa"
+
+#: scan.l:779 scan.l:789
+msgid "zero-length delimited identifier"
+msgstr "un identificador delimitado tiene largo cero"
+
+#: scan.l:800 syncrep_scanner.l:91
+msgid "unterminated quoted identifier"
+msgstr "un identificador entre comillas está inconcluso"
+
+#: scan.l:963
+msgid "operator too long"
+msgstr "el operador es demasiado largo"
+
+#. translator: %s is typically the translation of "syntax error"
+#: scan.l:1171
+#, c-format
+msgid "%s at end of input"
+msgstr "%s al final de la entrada"
+
+#. translator: first %s is typically the translation of "syntax error"
+#: scan.l:1179
+#, c-format
+msgid "%s at or near \"%s\""
+msgstr "%s en o cerca de «%s»"
+
+#: scan.l:1373
+#, c-format
+msgid "nonstandard use of \\' in a string literal"
+msgstr "uso no estandar de \\' en un literal de cadena"
+
+#: scan.l:1374
+#, c-format
+msgid "Use '' to write quotes in strings, or use the escape string syntax (E'...')."
+msgstr "Use '' para escribir comillas en cadenas, o use la sintaxis de escape de cadenas (E'...')."
+
+#: scan.l:1383
+#, c-format
+msgid "nonstandard use of \\\\ in a string literal"
+msgstr "uso no estandar de \\\\ en un literal de cadena"
+
+#: scan.l:1384
+#, c-format
+msgid "Use the escape string syntax for backslashes, e.g., E'\\\\'."
+msgstr "Use '' para escribir comillas en cadenas, o use la sintaxis de escape de cadenas (E'\\\\')."
+
+#: scan.l:1398
+#, c-format
+msgid "nonstandard use of escape in a string literal"
+msgstr "uso no estandar de escape en un literal de cadena"
+
+#: scan.l:1399
+#, c-format
+msgid "Use the escape string syntax for escapes, e.g., E'\\r\\n'."
+msgstr "Use la sintaxis de escape para cadenas, por ej. E'\\r\\n'."
+
+#~ msgid "cannot create restricted tokens on this platform"
+#~ msgstr "no se pueden crear tokens restrigidos en esta plataforma"
+
+#~ msgid "invalid value for \"buffering\" option"
+#~ msgstr "valor no válido para la opción «buffering»"
+
+#~ msgid "skipping redundant vacuum to prevent wraparound of table \"%s.%s.%s\""
+#~ msgstr "omitiendo vacuum redundante para prevenir wraparound de la tabla «%s.%s.%s»"
+
+#~ msgid "The database cluster was initialized without USE_FLOAT4_BYVAL but the server was compiled with USE_FLOAT4_BYVAL."
+#~ msgstr "Los archivos de base de datos fueron inicializados sin USE_FLOAT4_BYVAL, pero el servidor fue compilado con USE_FLOAT4_BYVAL."
+
+#~ msgid "The database cluster was initialized with USE_FLOAT4_BYVAL but the server was compiled without USE_FLOAT4_BYVAL."
+#~ msgstr "Los archivos de base de datos fueron inicializados con USE_FLOAT4_BYVAL, pero el servidor fue compilado sin USE_FLOAT4_BYVAL."
+
+#~ msgid "WAL file is from different database system: WAL file database system identifier is %s, pg_control database system identifier is %s"
+#~ msgstr "archivo WAL es de un sistema de bases de datos distinto: identificador de sistema en archivo WAL es %s, identificador en pg_control es %s"
+
+# XXX why talk about "log segment" instead of "file"?
+#~ msgid "could not seek in log segment %s to offset %u: %m"
+#~ msgstr "no se pudo posicionar (seek) en segmento %s a la posición %u: %m"
+
+#~ msgid "could not read from log segment %s, offset %u, length %lu: %m"
+#~ msgstr "no se pudo leer desde el segmento %s, posición %u, largo %lu: %m"
+
+#~ msgid "An aggregate using a polymorphic transition type must have at least one polymorphic argument."
+#~ msgstr "Una función de agregación que use un tipo de dato de transición polimórfico debe tener al menos un argumento de tipo polimórfico."
+
+#~ msgid "An aggregate returning a polymorphic type must have at least one polymorphic argument."
+#~ msgstr "Una función de agregación que retorne un tipo de datos polimórfico debe tener al menos un argumento de tipo polimórfico."
+
+#~ msgid "A function returning \"internal\" must have at least one \"internal\" argument."
+#~ msgstr "Una función que retorne «internal» debe tener al menos un argumento de tipo «internal»."
+
+#~ msgid "A function returning a polymorphic type must have at least one polymorphic argument."
+#~ msgstr "Una función que retorne un tipo polimórfico debe tener al menos un argumento de tipo polimórfico."
+
+#~ msgid "A function returning \"anyrange\" must have at least one \"anyrange\" argument."
+#~ msgstr "Una función que retorne «anyrange» debe tener al menos un argumento de tipo «anyrange»."
+
+#~ msgid "Adding partitioned tables to publications is not supported."
+#~ msgstr "Agregar tablas particionadas a publicaciones no está soportado."
+
+#~ msgid "You can add the table partitions individually."
+#~ msgstr "Puede agregar las particiones de tabla de forma individual."
+
+#~ msgid "FROM version must be different from installation target version \"%s\""
+#~ msgstr "la versión FROM debe ser diferente de la versión destino de instalación «%s»"
+
+#~ msgid "using pg_pltemplate information instead of CREATE LANGUAGE parameters"
+#~ msgstr "usando información de pg_pltemplate en vez de los parámetros de CREATE LANGUAGE"
+
+#~ msgid "must be superuser to create procedural language \"%s\""
+#~ msgstr "debe ser superusuario para crear el lenguaje procedural «%s»"
+
+#~ msgid "unsupported language \"%s\""
+#~ msgstr "lenguaje no soportado: «%s»"
+
+#~ msgid "The supported languages are listed in the pg_pltemplate system catalog."
+#~ msgstr "Los lenguajes soportados están listados en el catálogo del sistema pg_pltemplate."
+
+#~ msgid "changing return type of function %s from %s to %s"
+#~ msgstr "cambiando el tipo de retorno de la función %s de %s a %s"
+
+#~ msgid "column \"%s\" contains null values"
+#~ msgstr "la columna «%s» contiene valores nulos"
+
+#~ msgid "updated partition constraint for default partition would be violated by some row"
+#~ msgstr "la restricción de partición actualizada para la partición «default» sería violada por alguna fila"
+
+#~ msgid "partition key expressions cannot contain whole-row references"
+#~ msgstr "las expresiones en la llave de particionamiento no pueden incluir referencias a la fila completa (whole-row)"
+
+#~ msgid "Partitioned tables cannot have BEFORE / FOR EACH ROW triggers."
+#~ msgstr "Las tablas particionadas no pueden tener disparadores BEFORE / FOR EACH ROW."
+
+#~ msgid "Found referenced table's UPDATE trigger."
+#~ msgstr "Se encontró el disparador UPDATE de la tabla referenciada."
+
+#~ msgid "Found referenced table's DELETE trigger."
+#~ msgstr "Se encontró el disparador DELETE de la tabla referenciada."
+
+#~ msgid "Found referencing table's trigger."
+#~ msgstr "Se encontró el disparador en la tabla que hace referencia."
+
+#~ msgid "ignoring incomplete trigger group for constraint \"%s\" %s"
+#~ msgstr "ignorando el grupo de disparadores incompleto para la restricción «%s» %s"
+
+#~ msgid "converting trigger group into constraint \"%s\" %s"
+#~ msgstr "convirtiendo el grupo de disparadores en la restricción «%s» %s"
+
+#~ msgid "changing argument type of function %s from \"opaque\" to \"cstring\""
+#~ msgstr "cambiando el tipo de argumento de la función %s de «opaque» a «cstring»"
+
+#~ msgid "changing argument type of function %s from \"opaque\" to %s"
+#~ msgstr "cambiando el tipo de argumento de la función %s de «opaque» a %s"
+
+#~ msgid "invalid value for \"check_option\" option"
+#~ msgstr "valor no válido para la opción «check_option»"
+
+#~ msgid "\"%s.%s\" is a partitioned table."
+#~ msgstr "«%s.%s» es un índice particionado."
+
+#~ msgid "could not determine actual result type for function declared to return type %s"
+#~ msgstr "no se pudo determinar el tipo de resultado para función declarada retornando tipo %s"
+
+#~ msgid "Unicode escape values cannot be used for code point values above 007F when the server encoding is not UTF8."
+#~ msgstr "Los valores de escape Unicode no pueden ser usados para valores de «code point» sobre 007F cuando la codificación de servidor no es UTF8."
+
+#~ msgid "could not load wldap32.dll"
+#~ msgstr "no se pudo cargar wldap32.dll"
+
+#~ msgid "SSL certificate revocation list file \"%s\" ignored"
+#~ msgstr "ignorando lista de revocación de certificados SSL «%s»"
+
+#~ msgid "SSL library does not support certificate revocation lists."
+#~ msgstr "La libreria SSL no soporta listas de revocación de certificados."
+
+#~ msgid "could not find range type for data type %s"
+#~ msgstr "no se pudo encontrar un tipo de rango para el tipo de dato %s"
+
+#~ msgid "could not create signal dispatch thread: error code %lu\n"
+#~ msgstr "no se pudo crear thread de despacho de señales: código de error %lu\n"
+
+#~ msgid "replication origin %d is already active for PID %d"
+#~ msgstr "el origen de replicación %d ya está activo para el PID %d"
+
+#~ msgid "cannot advance replication slot that has not previously reserved WAL"
+#~ msgstr "no puede avanzar un slot de replicación que no ha reservado WAL previamente"
+
+#~ msgid "could not read from log segment %s, offset %u, length %zu: %m"
+#~ msgstr "no se pudo leer desde el segmento %s, posición %u, largo %zu: %m"
+
+#~ msgid "Unicode escape values cannot be used for code point values above 007F when the server encoding is not UTF8"
+#~ msgstr "Los valores de escape Unicode no puede ser usados para valores de «code point» sobre 007F cuando la codificación de servidor no es UTF8"
+
+#~ msgid "cannot use advisory locks during a parallel operation"
+#~ msgstr "no se pueden usar locks consultivos durante una operación paralela"
+
+#~ msgid "cannot output a value of type %s"
+#~ msgstr "no se puede desplegar un valor de tipo %s"
+
+#~ msgid "Server has FLOAT4PASSBYVAL = %s, library has %s."
+#~ msgstr "El servidor tiene FLOAT4PASSBYVAL = %s, la librería tiene %s"
+
+#~ msgid "encoding name too long"
+#~ msgstr "el nombre de codificación es demasiado largo"
diff --git a/src/bin/initdb/po/es.po b/src/bin/initdb/po/es.po
index 167bf168773..e3e0b1bc024 100644
--- a/src/bin/initdb/po/es.po
+++ b/src/bin/initdb/po/es.po
@@ -10,7 +10,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: initdb (PostgreSQL) 12\n"
 "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n"
-"POT-Creation-Date: 2019-09-29 23:44+0000\n"
+"POT-Creation-Date: 2020-05-17 02:46+0000\n"
 "PO-Revision-Date: 2019-09-29 22:06-0300\n"
 "Last-Translator: Carlos Chapi <carloswaldo@babelruins.org>\n"
 "Language-Team: PgSQL-es-Ayuda <pgsql-es-ayuda@lists.postgresql.org>\n"
@@ -20,100 +20,100 @@ msgstr ""
 "Content-Transfer-Encoding: 8bit\n"
 "X-Generator: BlackCAT 1.0\n"
 
-#: ../../../src/common/logging.c:188
+#: ../../../src/common/logging.c:236
 #, c-format
 msgid "fatal: "
 msgstr "fatal: "
 
-#: ../../../src/common/logging.c:195
+#: ../../../src/common/logging.c:243
 #, c-format
 msgid "error: "
 msgstr "error: "
 
-#: ../../../src/common/logging.c:202
+#: ../../../src/common/logging.c:250
 #, c-format
 msgid "warning: "
 msgstr "precaución: "
 
-#: ../../common/exec.c:138 ../../common/exec.c:255 ../../common/exec.c:301
+#: ../../common/exec.c:137 ../../common/exec.c:254 ../../common/exec.c:300
 #, c-format
 msgid "could not identify current directory: %m"
 msgstr "no se pudo identificar el directorio actual: %m"
 
-#: ../../common/exec.c:157
+#: ../../common/exec.c:156
 #, c-format
 msgid "invalid binary \"%s\""
 msgstr "el binario «%s» no es válido"
 
-#: ../../common/exec.c:207
+#: ../../common/exec.c:206
 #, c-format
 msgid "could not read binary \"%s\""
 msgstr "no se pudo leer el binario «%s»"
 
-#: ../../common/exec.c:215
+#: ../../common/exec.c:214
 #, c-format
 msgid "could not find a \"%s\" to execute"
 msgstr "no se pudo encontrar un «%s» para ejecutar"
 
-#: ../../common/exec.c:271 ../../common/exec.c:310
+#: ../../common/exec.c:270 ../../common/exec.c:309
 #, c-format
 msgid "could not change directory to \"%s\": %m"
 msgstr "no se pudo cambiar al directorio «%s»: %m"
 
-#: ../../common/exec.c:288
+#: ../../common/exec.c:287
 #, c-format
 msgid "could not read symbolic link \"%s\": %m"
 msgstr "no se pudo leer el enlace simbólico «%s»: %m"
 
-#: ../../common/exec.c:541
+#: ../../common/exec.c:410
 #, c-format
 msgid "pclose failed: %m"
 msgstr "pclose falló: %m"
 
-#: ../../common/exec.c:670 ../../common/exec.c:715 ../../common/exec.c:807
-#: initdb.c:339
+#: ../../common/exec.c:539 ../../common/exec.c:584 ../../common/exec.c:676
+#: initdb.c:325
 #, c-format
 msgid "out of memory"
 msgstr "memoria agotada"
 
 #: ../../common/fe_memutils.c:35 ../../common/fe_memutils.c:75
-#: ../../common/fe_memutils.c:98
+#: ../../common/fe_memutils.c:98 ../../common/fe_memutils.c:162
 #, c-format
 msgid "out of memory\n"
 msgstr "memoria agotada\n"
 
-#: ../../common/fe_memutils.c:92
+#: ../../common/fe_memutils.c:92 ../../common/fe_memutils.c:154
 #, c-format
 msgid "cannot duplicate null pointer (internal error)\n"
 msgstr "no se puede duplicar un puntero nulo (error interno)\n"
 
-#: ../../common/file_utils.c:81 ../../common/file_utils.c:183
+#: ../../common/file_utils.c:79 ../../common/file_utils.c:181
 #, c-format
 msgid "could not stat file \"%s\": %m"
 msgstr "no se pudo hacer stat al archivo «%s»: %m"
 
-#: ../../common/file_utils.c:160 ../../common/pgfnames.c:48
+#: ../../common/file_utils.c:158 ../../common/pgfnames.c:48
 #, c-format
 msgid "could not open directory \"%s\": %m"
 msgstr "no se pudo abrir el directorio «%s»: %m"
 
-#: ../../common/file_utils.c:194 ../../common/pgfnames.c:69
+#: ../../common/file_utils.c:192 ../../common/pgfnames.c:69
 #, c-format
 msgid "could not read directory \"%s\": %m"
 msgstr "no se pudo leer el directorio «%s»: %m"
 
-#: ../../common/file_utils.c:226 ../../common/file_utils.c:285
-#: ../../common/file_utils.c:359
+#: ../../common/file_utils.c:224 ../../common/file_utils.c:283
+#: ../../common/file_utils.c:357
 #, c-format
 msgid "could not open file \"%s\": %m"
 msgstr "no se pudo abrir el archivo «%s»: %m"
 
-#: ../../common/file_utils.c:297 ../../common/file_utils.c:367
+#: ../../common/file_utils.c:295 ../../common/file_utils.c:365
 #, c-format
 msgid "could not fsync file \"%s\": %m"
 msgstr "no se pudo sincronizar (fsync) archivo «%s»: %m"
 
-#: ../../common/file_utils.c:377
+#: ../../common/file_utils.c:375
 #, c-format
 msgid "could not rename file \"%s\" to \"%s\": %m"
 msgstr "no se pudo renombrar el archivo de «%s» a «%s»: %m"
@@ -123,37 +123,44 @@ msgstr "no se pudo renombrar el archivo de «%s» a «%s»: %m"
 msgid "could not close directory \"%s\": %m"
 msgstr "no se pudo abrir el directorio «%s»: %m"
 
-#: ../../common/restricted_token.c:69
-#, c-format
-msgid "cannot create restricted tokens on this platform"
+#: ../../common/restricted_token.c:64
+#, fuzzy, c-format
+#| msgid "could not load library \"%s\": %s"
+msgid "could not load library \"%s\": error code %lu"
+msgstr "no se pudo cargar la biblioteca «%s»: %s"
+
+#: ../../common/restricted_token.c:73
+#, fuzzy, c-format
+#| msgid "cannot create restricted tokens on this platform"
+msgid "cannot create restricted tokens on this platform: error code %lu"
 msgstr "no se pueden crear tokens restrigidos en esta plataforma"
 
-#: ../../common/restricted_token.c:78
+#: ../../common/restricted_token.c:82
 #, c-format
 msgid "could not open process token: error code %lu"
 msgstr "no se pudo abrir el token de proceso: código de error %lu"
 
-#: ../../common/restricted_token.c:91
+#: ../../common/restricted_token.c:97
 #, c-format
 msgid "could not allocate SIDs: error code %lu"
 msgstr "no se pudo emplazar los SIDs: código de error %lu"
 
-#: ../../common/restricted_token.c:110
+#: ../../common/restricted_token.c:119
 #, c-format
 msgid "could not create restricted token: error code %lu"
 msgstr "no se pudo crear el token restringido: código de error %lu"
 
-#: ../../common/restricted_token.c:131
+#: ../../common/restricted_token.c:140
 #, c-format
 msgid "could not start process for command \"%s\": error code %lu"
 msgstr "no se pudo iniciar el proceso para la orden «%s»: código de error %lu"
 
-#: ../../common/restricted_token.c:169
+#: ../../common/restricted_token.c:178
 #, c-format
 msgid "could not re-execute with restricted token: error code %lu"
 msgstr "no se pudo re-ejecutar con el token restringido: código de error %lu"
 
-#: ../../common/restricted_token.c:185
+#: ../../common/restricted_token.c:194
 #, c-format
 msgid "could not get exit code from subprocess: error code %lu"
 msgstr "no se pudo obtener el código de salida del subproceso»: código de error %lu"
@@ -222,82 +229,82 @@ msgstr "no se pudo definir un junction para «%s»: %s\n"
 msgid "could not get junction for \"%s\": %s\n"
 msgstr "no se pudo obtener junction para «%s»: %s\n"
 
-#: initdb.c:495 initdb.c:1534
+#: initdb.c:481 initdb.c:1505
 #, c-format
 msgid "could not open file \"%s\" for reading: %m"
 msgstr "no se pudo abrir archivo «%s» para lectura: %m"
 
-#: initdb.c:550 initdb.c:858 initdb.c:884
+#: initdb.c:536 initdb.c:846 initdb.c:872
 #, c-format
 msgid "could not open file \"%s\" for writing: %m"
 msgstr "no se pudo abrir el archivo «%s» para escritura: %m"
 
-#: initdb.c:557 initdb.c:564 initdb.c:864 initdb.c:889
+#: initdb.c:543 initdb.c:550 initdb.c:852 initdb.c:877
 #, c-format
 msgid "could not write file \"%s\": %m"
 msgstr "no se pudo escribir el archivo «%s»: %m"
 
-#: initdb.c:582
+#: initdb.c:568
 #, c-format
 msgid "could not execute command \"%s\": %m"
 msgstr "no se pudo ejecutar la orden «%s»: %m"
 
-#: initdb.c:600
+#: initdb.c:586
 #, c-format
 msgid "removing data directory \"%s\""
 msgstr "eliminando el directorio de datos «%s»"
 
-#: initdb.c:602
+#: initdb.c:588
 #, c-format
 msgid "failed to remove data directory"
 msgstr "no se pudo eliminar el directorio de datos"
 
-#: initdb.c:606
+#: initdb.c:592
 #, c-format
 msgid "removing contents of data directory \"%s\""
 msgstr "eliminando el contenido del directorio «%s»"
 
-#: initdb.c:609
+#: initdb.c:595
 #, c-format
 msgid "failed to remove contents of data directory"
 msgstr "no se pudo eliminar el contenido del directorio de datos"
 
-#: initdb.c:614
+#: initdb.c:600
 #, c-format
 msgid "removing WAL directory \"%s\""
 msgstr "eliminando el directorio de WAL «%s»"
 
-#: initdb.c:616
+#: initdb.c:602
 #, c-format
 msgid "failed to remove WAL directory"
 msgstr "no se pudo eliminar el directorio de WAL"
 
-#: initdb.c:620
+#: initdb.c:606
 #, c-format
 msgid "removing contents of WAL directory \"%s\""
 msgstr "eliminando el contenido del directorio de WAL «%s»"
 
-#: initdb.c:622
+#: initdb.c:608
 #, c-format
 msgid "failed to remove contents of WAL directory"
 msgstr "no se pudo eliminar el contenido del directorio de WAL"
 
-#: initdb.c:629
+#: initdb.c:615
 #, c-format
 msgid "data directory \"%s\" not removed at user's request"
 msgstr "directorio de datos «%s» no eliminado a petición del usuario"
 
-#: initdb.c:633
+#: initdb.c:619
 #, c-format
 msgid "WAL directory \"%s\" not removed at user's request"
 msgstr "directorio de WAL «%s» no eliminado a petición del usuario"
 
-#: initdb.c:651
+#: initdb.c:637
 #, c-format
 msgid "cannot be run as root"
 msgstr "no se puede ejecutar como «root»"
 
-#: initdb.c:653
+#: initdb.c:639
 #, c-format
 msgid ""
 "Please log in (using, e.g., \"su\") as the (unprivileged) user that will\n"
@@ -306,17 +313,17 @@ msgstr ""
 "Por favor conéctese (usando, por ejemplo, «su») con un usuario no privilegiado,\n"
 "quien ejecutará el proceso servidor.\n"
 
-#: initdb.c:686
+#: initdb.c:672
 #, c-format
 msgid "\"%s\" is not a valid server encoding name"
 msgstr "«%s» no es un nombre válido de codificación"
 
-#: initdb.c:817
+#: initdb.c:805
 #, c-format
 msgid "file \"%s\" does not exist"
 msgstr "el archivo «%s» no existe"
 
-#: initdb.c:819 initdb.c:826 initdb.c:835
+#: initdb.c:807 initdb.c:814 initdb.c:823
 #, c-format
 msgid ""
 "This might mean you have a corrupted installation or identified\n"
@@ -325,125 +332,124 @@ msgstr ""
 "Esto puede significar que tiene una instalación corrupta o ha\n"
 "identificado el directorio equivocado con la opción -L.\n"
 
-#: initdb.c:824
+#: initdb.c:812
 #, c-format
 msgid "could not access file \"%s\": %m"
 msgstr "no se pudo acceder al archivo «%s»: %m"
 
-#: initdb.c:833
+#: initdb.c:821
 #, c-format
 msgid "file \"%s\" is not a regular file"
 msgstr "el archivo «%s» no es un archivo regular"
 
-#: initdb.c:978
+#: initdb.c:966
 #, c-format
 msgid "selecting dynamic shared memory implementation ... "
 msgstr "seleccionando implementación de memoria compartida dinámica ..."
 
-#: initdb.c:987
+#: initdb.c:975
 #, c-format
 msgid "selecting default max_connections ... "
 msgstr "seleccionando el valor para max_connections ... "
 
-#: initdb.c:1018
+#: initdb.c:1006
 #, c-format
 msgid "selecting default shared_buffers ... "
 msgstr "seleccionando el valor para shared_buffers ... "
 
-#: initdb.c:1052
+#: initdb.c:1040
 #, c-format
-#| msgid "selecting default timezone ... "
 msgid "selecting default time zone ... "
 msgstr "seleccionando el huso horario por omisión ... "
 
-#: initdb.c:1086
+#: initdb.c:1074
 msgid "creating configuration files ... "
 msgstr "creando archivos de configuración ... "
 
-#: initdb.c:1239 initdb.c:1258 initdb.c:1344 initdb.c:1359
+#: initdb.c:1227 initdb.c:1246 initdb.c:1332 initdb.c:1347
 #, c-format
 msgid "could not change permissions of \"%s\": %m"
 msgstr "no se pudo cambiar los permisos de «%s»: %m"
 
-#: initdb.c:1381
+#: initdb.c:1369
 #, c-format
 msgid "running bootstrap script ... "
 msgstr "ejecutando script de inicio (bootstrap) ... "
 
-#: initdb.c:1393
+#: initdb.c:1381
 #, c-format
 msgid "input file \"%s\" does not belong to PostgreSQL %s"
 msgstr "el archivo de entrada «%s» no pertenece a PostgreSQL %s"
 
-#: initdb.c:1396
+#: initdb.c:1384
 #, c-format
 msgid "Check your installation or specify the correct path using the option -L.\n"
 msgstr "Verifique su instalación o especifique la ruta correcta usando la opción -L.\n"
 
-#: initdb.c:1511
+#: initdb.c:1482
 msgid "Enter new superuser password: "
 msgstr "Ingrese la nueva contraseña del superusuario: "
 
-#: initdb.c:1512
+#: initdb.c:1483
 msgid "Enter it again: "
 msgstr "Ingrésela nuevamente: "
 
-#: initdb.c:1515
+#: initdb.c:1486
 #, c-format
 msgid "Passwords didn't match.\n"
 msgstr "Las constraseñas no coinciden.\n"
 
-#: initdb.c:1541
+#: initdb.c:1512
 #, c-format
 msgid "could not read password from file \"%s\": %m"
 msgstr "no se pudo leer la contraseña desde el archivo «%s»: %m"
 
-#: initdb.c:1544
+#: initdb.c:1515
 #, c-format
 msgid "password file \"%s\" is empty"
 msgstr "el archivo de contraseña «%s» está vacío"
 
-#: initdb.c:2107
+#: initdb.c:2043
 #, c-format
 msgid "caught signal\n"
 msgstr "se ha capturado una señal\n"
 
-#: initdb.c:2113
+#: initdb.c:2049
 #, c-format
 msgid "could not write to child process: %s\n"
 msgstr "no se pudo escribir al proceso hijo: %s\n"
 
-#: initdb.c:2121
+#: initdb.c:2057
 #, c-format
 msgid "ok\n"
 msgstr "hecho\n"
 
-#: initdb.c:2211
+#: initdb.c:2147
 #, c-format
 msgid "setlocale() failed"
 msgstr "setlocale() falló"
 
-#: initdb.c:2232
+#: initdb.c:2168
 #, c-format
 msgid "failed to restore old locale \"%s\""
 msgstr "no se pudo restaurar la configuración regional anterior «%s»"
 
-#: initdb.c:2241
+#: initdb.c:2177
 #, c-format
 msgid "invalid locale name \"%s\""
 msgstr "nombre de configuración regional «%s» no es válido"
 
-#: initdb.c:2252
+#: initdb.c:2188
 #, c-format
 msgid "invalid locale settings; check LANG and LC_* environment variables"
 msgstr "configuración regional inválida; revise las variables de entorno LANG y LC_*"
 
-#: initdb.c:2279
+#: initdb.c:2215
 #, c-format
 msgid "encoding mismatch"
 msgstr "codificaciones no coinciden"
 
-#: initdb.c:2281
+#: initdb.c:2217
 #, c-format
 msgid ""
 "The encoding you selected (%s) and the encoding that the\n"
@@ -458,7 +464,7 @@ msgstr ""
 "Ejecute %s nuevamente y no especifique una codificación, o bien especifique\n"
 "una combinación adecuada.\n"
 
-#: initdb.c:2353
+#: initdb.c:2289
 #, c-format
 msgid ""
 "%s initializes a PostgreSQL database cluster.\n"
@@ -467,17 +473,17 @@ msgstr ""
 "%s inicializa un cluster de base de datos PostgreSQL.\n"
 "\n"
 
-#: initdb.c:2354
+#: initdb.c:2290
 #, c-format
 msgid "Usage:\n"
 msgstr "Empleo:\n"
 
-#: initdb.c:2355
+#: initdb.c:2291
 #, c-format
 msgid "  %s [OPTION]... [DATADIR]\n"
 msgstr "  %s [OPCIÓN]... [DATADIR]\n"
 
-#: initdb.c:2356
+#: initdb.c:2292
 #, c-format
 msgid ""
 "\n"
@@ -486,52 +492,52 @@ msgstr ""
 "\n"
 "Opciones:\n"
 
-#: initdb.c:2357
+#: initdb.c:2293
 #, c-format
 msgid "  -A, --auth=METHOD         default authentication method for local connections\n"
 msgstr ""
 "  -A, --auth=MÉTODO         método de autentificación por omisión para\n"
 "                            conexiones locales\n"
 
-#: initdb.c:2358
+#: initdb.c:2294
 #, c-format
 msgid "      --auth-host=METHOD    default authentication method for local TCP/IP connections\n"
 msgstr ""
 "  --auth-host=MÉTODO        método de autentificación por omisión para\n"
 "                            conexiones locales TCP/IP\n"
 
-#: initdb.c:2359
+#: initdb.c:2295
 #, c-format
 msgid "      --auth-local=METHOD   default authentication method for local-socket connections\n"
 msgstr ""
 "  --auth-local=MÉTODO       método de autentificación por omisión para\n"
 "                            conexiones de socket local\n"
 
-#: initdb.c:2360
+#: initdb.c:2296
 #, c-format
 msgid " [-D, --pgdata=]DATADIR     location for this database cluster\n"
 msgstr " [-D, --pgdata=]DATADIR     ubicación para este cluster de bases de datos\n"
 
-#: initdb.c:2361
+#: initdb.c:2297
 #, c-format
 msgid "  -E, --encoding=ENCODING   set default encoding for new databases\n"
 msgstr "  -E, --encoding=CODIF      codificación por omisión para nuevas bases de datos\n"
 
-#: initdb.c:2362
+#: initdb.c:2298
 #, c-format
 msgid "  -g, --allow-group-access  allow group read/execute on data directory\n"
 msgstr ""
 "  -g, --allow-group-access  dar al grupo permisos de lectura/ejecución sobre\n"
 "                            el directorio de datos\n"
 
-#: initdb.c:2363
+#: initdb.c:2299
 #, c-format
 msgid "      --locale=LOCALE       set default locale for new databases\n"
 msgstr ""
 "      --locale=LOCALE       configuración regional por omisión para \n"
 "                            nuevas bases de datos\n"
 
-#: initdb.c:2364
+#: initdb.c:2300
 #, c-format
 msgid ""
 "      --lc-collate=, --lc-ctype=, --lc-messages=LOCALE\n"
@@ -545,17 +551,17 @@ msgstr ""
 "                            en la categoría respectiva (el valor por omisión\n"
 "                            es tomado de variables de ambiente)\n"
 
-#: initdb.c:2368
+#: initdb.c:2304
 #, c-format
 msgid "      --no-locale           equivalent to --locale=C\n"
 msgstr "      --no-locale           equivalente a --locale=C\n"
 
-#: initdb.c:2369
+#: initdb.c:2305
 #, c-format
 msgid "      --pwfile=FILE         read password for the new superuser from file\n"
 msgstr "      --pwfile=ARCHIVO      leer contraseña del nuevo superusuario del archivo\n"
 
-#: initdb.c:2370
+#: initdb.c:2306
 #, c-format
 msgid ""
 "  -T, --text-search-config=CFG\n"
@@ -564,27 +570,27 @@ msgstr ""
 "  -T, --text-search-config=CONF\n"
 "                            configuración de búsqueda en texto por omisión\n"
 
-#: initdb.c:2372
+#: initdb.c:2308
 #, c-format
 msgid "  -U, --username=NAME       database superuser name\n"
 msgstr "  -U, --username=USUARIO    nombre del superusuario del cluster\n"
 
-#: initdb.c:2373
+#: initdb.c:2309
 #, c-format
 msgid "  -W, --pwprompt            prompt for a password for the new superuser\n"
 msgstr "  -W, --pwprompt            pedir una contraseña para el nuevo superusuario\n"
 
-#: initdb.c:2374
+#: initdb.c:2310
 #, c-format
 msgid "  -X, --waldir=WALDIR       location for the write-ahead log directory\n"
 msgstr "  -X, --waldir=WALDIR       ubicación del directorio WAL\n"
 
-#: initdb.c:2375
+#: initdb.c:2311
 #, c-format
 msgid "      --wal-segsize=SIZE    size of WAL segments, in megabytes\n"
 msgstr "      --wal-segsize=TAMAÑO  tamaño de los segmentos de WAL, en megabytes\n"
 
-#: initdb.c:2376
+#: initdb.c:2312
 #, c-format
 msgid ""
 "\n"
@@ -593,42 +599,42 @@ msgstr ""
 "\n"
 "Opciones menos usadas:\n"
 
-#: initdb.c:2377
+#: initdb.c:2313
 #, c-format
 msgid "  -d, --debug               generate lots of debugging output\n"
 msgstr "  -d, --debug               genera mucha salida de depuración\n"
 
-#: initdb.c:2378
+#: initdb.c:2314
 #, c-format
 msgid "  -k, --data-checksums      use data page checksums\n"
 msgstr "  -k, --data-checksums      activar sumas de verificación en páginas de datos\n"
 
-#: initdb.c:2379
+#: initdb.c:2315
 #, c-format
 msgid "  -L DIRECTORY              where to find the input files\n"
 msgstr "  -L DIRECTORIO             donde encontrar los archivos de entrada\n"
 
-#: initdb.c:2380
+#: initdb.c:2316
 #, c-format
 msgid "  -n, --no-clean            do not clean up after errors\n"
 msgstr "  -n, --no-clean            no limpiar después de errores\n"
 
-#: initdb.c:2381
+#: initdb.c:2317
 #, c-format
 msgid "  -N, --no-sync             do not wait for changes to be written safely to disk\n"
 msgstr "  -N, --no-sync             no esperar que los cambios se sincronicen a disco\n"
 
-#: initdb.c:2382
+#: initdb.c:2318
 #, c-format
 msgid "  -s, --show                show internal settings\n"
 msgstr "  -s, --show                muestra variables internas\n"
 
-#: initdb.c:2383
+#: initdb.c:2319
 #, c-format
 msgid "  -S, --sync-only           only sync data directory\n"
 msgstr "  -S, --sync-only           sólo sincronizar el directorio de datos\n"
 
-#: initdb.c:2384
+#: initdb.c:2320
 #, c-format
 msgid ""
 "\n"
@@ -637,17 +643,17 @@ msgstr ""
 "\n"
 "Otras opciones:\n"
 
-#: initdb.c:2385
+#: initdb.c:2321
 #, c-format
 msgid "  -V, --version             output version information, then exit\n"
 msgstr "  -V, --version             mostrar información de version y salir\n"
 
-#: initdb.c:2386
+#: initdb.c:2322
 #, c-format
 msgid "  -?, --help                show this help, then exit\n"
 msgstr "  -?, --help                mostrar esta ayuda y salir\n"
 
-#: initdb.c:2387
+#: initdb.c:2323
 #, c-format
 msgid ""
 "\n"
@@ -658,33 +664,36 @@ msgstr ""
 "Si el directorio de datos no es especificado, se usa la variable de\n"
 "ambiente PGDATA.\n"
 
-#: initdb.c:2389
+#: initdb.c:2325
 #, c-format
 msgid ""
 "\n"
-"Report bugs to <pgsql-bugs@lists.postgresql.org>.\n"
+"Report bugs to <%s>.\n"
 msgstr ""
-"\n"
-"Reporte errores a <pgsql-bugs@lists.postgresql.org>.\n"
 
-#: initdb.c:2417
+#: initdb.c:2326
+#, c-format
+msgid "%s home page: <%s>\n"
+msgstr ""
+
+#: initdb.c:2354
 #, c-format
 msgid "invalid authentication method \"%s\" for \"%s\" connections"
 msgstr "método de autentificación «%s» no válido para conexiones «%s»"
 
-#: initdb.c:2433
+#: initdb.c:2370
 #, c-format
 msgid "must specify a password for the superuser to enable %s authentication"
 msgstr ""
 "debe especificar una contraseña al superusuario para activar\n"
 "autentificación %s"
 
-#: initdb.c:2460
+#: initdb.c:2397
 #, c-format
 msgid "no data directory specified"
 msgstr "no se especificó un directorio de datos"
 
-#: initdb.c:2462
+#: initdb.c:2399
 #, c-format
 msgid ""
 "You must identify the directory where the data for this database system\n"
@@ -694,39 +703,33 @@ msgstr ""
 "Debe especificar el directorio donde residirán los datos para este clúster.\n"
 "Hágalo usando la opción -D o la variable de ambiente PGDATA.\n"
 
-#: initdb.c:2497
+#: initdb.c:2434
 #, c-format
 msgid ""
-"The program \"postgres\" is needed by %s but was not found in the\n"
+"The program \"%s\" is needed by %s but was not found in the\n"
 "same directory as \"%s\".\n"
 "Check your installation."
 msgstr ""
-"%s necesita el programa «postgres», pero no pudo encontrarlo en el mismo\n"
-"directorio que «%s».\n"
-"Verifique su instalación."
 
-#: initdb.c:2502
+#: initdb.c:2439
 #, c-format
 msgid ""
-"The program \"postgres\" was found by \"%s\"\n"
+"The program \"%s\" was found by \"%s\"\n"
 "but was not the same version as %s.\n"
 "Check your installation."
 msgstr ""
-"El programa «postgres» fue encontrado por %s, pero no es\n"
-"de la misma versión que «%s».\n"
-"Verifique su instalación."
 
-#: initdb.c:2521
+#: initdb.c:2458
 #, c-format
 msgid "input file location must be an absolute path"
 msgstr "la ubicación de archivos de entrada debe ser una ruta absoluta"
 
-#: initdb.c:2538
+#: initdb.c:2475
 #, c-format
 msgid "The database cluster will be initialized with locale \"%s\".\n"
 msgstr "El cluster será inicializado con configuración regional «%s».\n"
 
-#: initdb.c:2541
+#: initdb.c:2478
 #, c-format
 msgid ""
 "The database cluster will be initialized with locales\n"
@@ -745,24 +748,24 @@ msgstr ""
 "  NUMERIC:  %s\n"
 "  TIME:     %s\n"
 
-#: initdb.c:2565
+#: initdb.c:2502
 #, c-format
 msgid "could not find suitable encoding for locale \"%s\""
 msgstr ""
 "no se pudo encontrar una codificación apropiada para\n"
 "la configuración regional «%s»"
 
-#: initdb.c:2567
+#: initdb.c:2504
 #, c-format
 msgid "Rerun %s with the -E option.\n"
 msgstr "Ejecute %s con la opción -E.\n"
 
-#: initdb.c:2568 initdb.c:3196 initdb.c:3217
+#: initdb.c:2505 initdb.c:3127 initdb.c:3148
 #, c-format
 msgid "Try \"%s --help\" for more information.\n"
 msgstr "Use «%s --help» para obtener mayor información.\n"
 
-#: initdb.c:2581
+#: initdb.c:2518
 #, c-format
 msgid ""
 "Encoding \"%s\" implied by locale is not allowed as a server-side encoding.\n"
@@ -772,12 +775,12 @@ msgstr ""
 "no puede ser usada como codificación del lado del servidor.\n"
 "La codificación por omisión será «%s».\n"
 
-#: initdb.c:2586
+#: initdb.c:2523
 #, c-format
 msgid "locale \"%s\" requires unsupported encoding \"%s\""
 msgstr "la configuración regional «%s» requiere la codificación no soportada «%s»"
 
-#: initdb.c:2589
+#: initdb.c:2526
 #, c-format
 msgid ""
 "Encoding \"%s\" is not allowed as a server-side encoding.\n"
@@ -787,64 +790,59 @@ msgstr ""
 "del servidor.\n"
 "Ejecute %s nuevamente con una selección de configuración regional diferente.\n"
 
-#: initdb.c:2598
+#: initdb.c:2535
 #, c-format
 msgid "The default database encoding has accordingly been set to \"%s\".\n"
 msgstr "La codificación por omisión ha sido por lo tanto definida a «%s».\n"
 
-#: initdb.c:2666
+#: initdb.c:2597
 #, c-format
-#| msgid "%s: could not find suitable text search configuration for locale \"%s\"\n"
 msgid "could not find suitable text search configuration for locale \"%s\""
 msgstr ""
 "no se pudo encontrar una configuración para búsqueda en texto apropiada\n"
 "para la configuración regional «%s»"
 
-#: initdb.c:2677
+#: initdb.c:2608
 #, c-format
-#| msgid "%s: warning: suitable text search configuration for locale \"%s\" is unknown\n"
 msgid "suitable text search configuration for locale \"%s\" is unknown"
-msgstr ""
-"la configuración de búsqueda en texto apropiada para la configuración regional «%s» es desconocida"
+msgstr "la configuración de búsqueda en texto apropiada para la configuración regional «%s» es desconocida"
 
-#: initdb.c:2682
+#: initdb.c:2613
 #, c-format
-#| msgid "%s: warning: specified text search configuration \"%s\" might not match locale \"%s\"\n"
 msgid "specified text search configuration \"%s\" might not match locale \"%s\""
-msgstr ""
-"la configuración de búsqueda en texto «%s» especificada podría no coincidir con la configuración regional «%s»"
+msgstr "la configuración de búsqueda en texto «%s» especificada podría no coincidir con la configuración regional «%s»"
 
-#: initdb.c:2687
+#: initdb.c:2618
 #, c-format
 msgid "The default text search configuration will be set to \"%s\".\n"
 msgstr "La configuración de búsqueda en texto ha sido definida a «%s».\n"
 
-#: initdb.c:2731 initdb.c:2813
+#: initdb.c:2662 initdb.c:2744
 #, c-format
 msgid "creating directory %s ... "
 msgstr "creando el directorio %s ... "
 
-#: initdb.c:2737 initdb.c:2819 initdb.c:2884 initdb.c:2946
+#: initdb.c:2668 initdb.c:2750 initdb.c:2815 initdb.c:2877
 #, c-format
 msgid "could not create directory \"%s\": %m"
 msgstr "no se pudo crear el directorio «%s»: %m"
 
-#: initdb.c:2748 initdb.c:2831
+#: initdb.c:2679 initdb.c:2762
 #, c-format
 msgid "fixing permissions on existing directory %s ... "
 msgstr "corrigiendo permisos en el directorio existente %s ... "
 
-#: initdb.c:2754 initdb.c:2837
+#: initdb.c:2685 initdb.c:2768
 #, c-format
 msgid "could not change permissions of directory \"%s\": %m"
 msgstr "no se pudo cambiar los permisos del directorio «%s»: %m"
 
-#: initdb.c:2768 initdb.c:2851
+#: initdb.c:2699 initdb.c:2782
 #, c-format
 msgid "directory \"%s\" exists but is not empty"
 msgstr "el directorio «%s» existe pero no está vacío"
 
-#: initdb.c:2773
+#: initdb.c:2704
 #, c-format
 msgid ""
 "If you want to create a new database system, either remove or empty\n"
@@ -855,17 +853,17 @@ msgstr ""
 "el directorio «%s», o ejecute %s\n"
 "con un argumento distinto de «%s».\n"
 
-#: initdb.c:2781 initdb.c:2863 initdb.c:3232
+#: initdb.c:2712 initdb.c:2794 initdb.c:3163
 #, c-format
 msgid "could not access directory \"%s\": %m"
 msgstr "no se pudo acceder al directorio «%s»: %m"
 
-#: initdb.c:2804
+#: initdb.c:2735
 #, c-format
 msgid "WAL directory location must be an absolute path"
 msgstr "la ubicación del directorio de WAL debe ser una ruta absoluta"
 
-#: initdb.c:2856
+#: initdb.c:2787
 #, c-format
 msgid ""
 "If you want to store the WAL there, either remove or empty the directory\n"
@@ -874,27 +872,27 @@ msgstr ""
 "Si quiere almacenar el WAL ahí, elimine o vacíe el directorio\n"
 "«%s».\n"
 
-#: initdb.c:2870
+#: initdb.c:2801
 #, c-format
 msgid "could not create symbolic link \"%s\": %m"
 msgstr "no se pudo crear el enlace simbólico «%s»: %m"
 
-#: initdb.c:2875
+#: initdb.c:2806
 #, c-format
 msgid "symlinks are not supported on this platform"
 msgstr "los enlaces simbólicos no están soportados en esta plataforma"
 
-#: initdb.c:2899
+#: initdb.c:2830
 #, c-format
 msgid "It contains a dot-prefixed/invisible file, perhaps due to it being a mount point.\n"
 msgstr "Contiene un archivo invisible, quizás por ser un punto de montaje.\n"
 
-#: initdb.c:2902
+#: initdb.c:2833
 #, c-format
 msgid "It contains a lost+found directory, perhaps due to it being a mount point.\n"
 msgstr "Contiene un directorio lost+found, quizás por ser un punto de montaje.\n"
 
-#: initdb.c:2905
+#: initdb.c:2836
 #, c-format
 msgid ""
 "Using a mount point directly as the data directory is not recommended.\n"
@@ -903,57 +901,57 @@ msgstr ""
 "Usar un punto de montaje directamente como directorio de datos no es\n"
 "recomendado.  Cree un subdirectorio bajo el punto de montaje.\n"
 
-#: initdb.c:2931
+#: initdb.c:2862
 #, c-format
 msgid "creating subdirectories ... "
 msgstr "creando subdirectorios ... "
 
-#: initdb.c:2977
+#: initdb.c:2908
 msgid "performing post-bootstrap initialization ... "
 msgstr "realizando inicialización post-bootstrap ... "
 
-#: initdb.c:3134
+#: initdb.c:3065
 #, c-format
 msgid "Running in debug mode.\n"
 msgstr "Ejecutando en modo de depuración.\n"
 
-#: initdb.c:3138
+#: initdb.c:3069
 #, c-format
 msgid "Running in no-clean mode.  Mistakes will not be cleaned up.\n"
 msgstr "Ejecutando en modo no-clean.  Los errores no serán limpiados.\n"
 
-#: initdb.c:3215
+#: initdb.c:3146
 #, c-format
 msgid "too many command-line arguments (first is \"%s\")"
 msgstr "demasiados argumentos en la línea de órdenes (el primero es «%s»)"
 
-#: initdb.c:3236 initdb.c:3325
+#: initdb.c:3167 initdb.c:3256
 msgid "syncing data to disk ... "
 msgstr "sincronizando los datos a disco ... "
 
-#: initdb.c:3245
+#: initdb.c:3176
 #, c-format
 msgid "password prompt and password file cannot be specified together"
 msgstr ""
 "la petición de contraseña y el archivo de contraseña no pueden\n"
 "ser especificados simultáneamente"
 
-#: initdb.c:3270
+#: initdb.c:3201
 #, c-format
 msgid "argument of --wal-segsize must be a number"
 msgstr "el argumento de --wal-segsize debe ser un número"
 
-#: initdb.c:3275
+#: initdb.c:3206
 #, c-format
 msgid "argument of --wal-segsize must be a power of 2 between 1 and 1024"
 msgstr "el argumento de --wal-segsize debe ser una potencia de 2 entre 1 y 1024"
 
-#: initdb.c:3292
+#: initdb.c:3223
 #, c-format
 msgid "superuser name \"%s\" is disallowed; role names cannot begin with \"pg_\""
 msgstr "nombre de superusuario «%s» no permitido; los nombres de rol no pueden comenzar con «pg_»"
 
-#: initdb.c:3296
+#: initdb.c:3227
 #, c-format
 msgid ""
 "The files belonging to this database system will be owned by user \"%s\".\n"
@@ -964,17 +962,17 @@ msgstr ""
 "Este usuario también debe ser quien ejecute el proceso servidor.\n"
 "\n"
 
-#: initdb.c:3312
+#: initdb.c:3243
 #, c-format
 msgid "Data page checksums are enabled.\n"
 msgstr "Las sumas de verificación en páginas de datos han sido activadas.\n"
 
-#: initdb.c:3314
+#: initdb.c:3245
 #, c-format
 msgid "Data page checksums are disabled.\n"
 msgstr "Las sumas de verificación en páginas de datos han sido desactivadas.\n"
 
-#: initdb.c:3331
+#: initdb.c:3262
 #, c-format
 msgid ""
 "\n"
@@ -986,12 +984,12 @@ msgstr ""
 "El directorio de datos podría corromperse si el sistema operativo sufre\n"
 "una caída.\n"
 
-#: initdb.c:3336
+#: initdb.c:3267
 #, c-format
 msgid "enabling \"trust\" authentication for local connections"
 msgstr "activando el método de autentificación «trust» para conexiones locales"
 
-#: initdb.c:3337
+#: initdb.c:3268
 #, c-format
 msgid ""
 "You can change this by editing pg_hba.conf or using the option -A, or\n"
@@ -1001,11 +999,11 @@ msgstr ""
 "o --auth-local y --auth-host la próxima vez que ejecute initdb.\n"
 
 #. translator: This is a placeholder in a shell command.
-#: initdb.c:3362
+#: initdb.c:3293
 msgid "logfile"
 msgstr "archivo_de_registro"
 
-#: initdb.c:3364
+#: initdb.c:3295
 #, c-format
 msgid ""
 "\n"
@@ -1019,3 +1017,28 @@ msgstr ""
 "\n"
 "    %s\n"
 "\n"
+
+#~ msgid ""
+#~ "\n"
+#~ "Report bugs to <pgsql-bugs@lists.postgresql.org>.\n"
+#~ msgstr ""
+#~ "\n"
+#~ "Reporte errores a <pgsql-bugs@lists.postgresql.org>.\n"
+
+#~ msgid ""
+#~ "The program \"postgres\" is needed by %s but was not found in the\n"
+#~ "same directory as \"%s\".\n"
+#~ "Check your installation."
+#~ msgstr ""
+#~ "%s necesita el programa «postgres», pero no pudo encontrarlo en el mismo\n"
+#~ "directorio que «%s».\n"
+#~ "Verifique su instalación."
+
+#~ msgid ""
+#~ "The program \"postgres\" was found by \"%s\"\n"
+#~ "but was not the same version as %s.\n"
+#~ "Check your installation."
+#~ msgstr ""
+#~ "El programa «postgres» fue encontrado por %s, pero no es\n"
+#~ "de la misma versión que «%s».\n"
+#~ "Verifique su instalación."
diff --git a/src/bin/pg_archivecleanup/po/es.po b/src/bin/pg_archivecleanup/po/es.po
index 024bee3bd4f..f0350a1385d 100644
--- a/src/bin/pg_archivecleanup/po/es.po
+++ b/src/bin/pg_archivecleanup/po/es.po
@@ -8,7 +8,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: pg_archivecleanup (PostgreSQL) 12\n"
 "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n"
-"POT-Creation-Date: 2019-09-29 23:45+0000\n"
+"POT-Creation-Date: 2020-05-17 02:47+0000\n"
 "PO-Revision-Date: 2019-06-06 17:21-0400\n"
 "Last-Translator: Carlos Chapi <carlos.chapi@2ndquadrant.com>\n"
 "Language-Team: PgSQL-es-Ayuda <pgsql-es-ayuda@lists.postgresql.org>\n"
@@ -18,58 +18,58 @@ msgstr ""
 "Content-Transfer-Encoding: 8bit\n"
 "X-Generator: BlackCAT 1.0\n"
 
-#: ../../../src/common/logging.c:188
+#: ../../../src/common/logging.c:236
 #, c-format
 msgid "fatal: "
 msgstr "fatal: "
 
-#: ../../../src/common/logging.c:195
+#: ../../../src/common/logging.c:243
 #, c-format
 msgid "error: "
 msgstr "error: "
 
-#: ../../../src/common/logging.c:202
+#: ../../../src/common/logging.c:250
 #, c-format
 msgid "warning: "
 msgstr "precaución: "
 
-#: pg_archivecleanup.c:68
+#: pg_archivecleanup.c:66
 #, c-format
 msgid "archive location \"%s\" does not exist"
 msgstr "ubicación de archivador «%s» no existe"
 
-#: pg_archivecleanup.c:154
+#: pg_archivecleanup.c:152
 #, c-format
 msgid "could not remove file \"%s\": %m"
 msgstr "no se pudo eliminar el archivo «%s»: %m"
 
-#: pg_archivecleanup.c:162
+#: pg_archivecleanup.c:160
 #, c-format
 msgid "could not read archive location \"%s\": %m"
 msgstr "no se pudo leer la ubicación del archivador «%s»: %m"
 
-#: pg_archivecleanup.c:165
+#: pg_archivecleanup.c:163
 #, c-format
 msgid "could not close archive location \"%s\": %m"
 msgstr "no se pudo cerrar la ubicación del archivador «%s»: %m"
 
-#: pg_archivecleanup.c:169
+#: pg_archivecleanup.c:167
 #, c-format
 msgid "could not open archive location \"%s\": %m"
 msgstr "no se pudo abrir la ubicación del archivador «%s»: %m"
 
-#: pg_archivecleanup.c:242
+#: pg_archivecleanup.c:240
 #, c-format
 msgid "invalid file name argument"
 msgstr "el nombre de archivo usado como argumento no es válido"
 
-#: pg_archivecleanup.c:243 pg_archivecleanup.c:316 pg_archivecleanup.c:337
-#: pg_archivecleanup.c:349 pg_archivecleanup.c:356
+#: pg_archivecleanup.c:241 pg_archivecleanup.c:315 pg_archivecleanup.c:336
+#: pg_archivecleanup.c:348 pg_archivecleanup.c:355
 #, c-format
 msgid "Try \"%s --help\" for more information.\n"
 msgstr "Pruebe «%s --help» para mayor información.\n"
 
-#: pg_archivecleanup.c:256
+#: pg_archivecleanup.c:254
 #, c-format
 msgid ""
 "%s removes older WAL files from PostgreSQL archives.\n"
@@ -78,17 +78,17 @@ msgstr ""
 "%s elimina archivos de WAL antiguos del archivador de PostgreSQL.\n"
 "\n"
 
-#: pg_archivecleanup.c:257
+#: pg_archivecleanup.c:255
 #, c-format
 msgid "Usage:\n"
 msgstr "Empleo:\n"
 
-#: pg_archivecleanup.c:258
+#: pg_archivecleanup.c:256
 #, c-format
 msgid "  %s [OPTION]... ARCHIVELOCATION OLDESTKEPTWALFILE\n"
 msgstr "  %s [OPCIÓN].... UBICACIÓNARCHIVADOR WALMÁSANTIGUOAMANTENER\n"
 
-#: pg_archivecleanup.c:259
+#: pg_archivecleanup.c:257
 #, c-format
 msgid ""
 "\n"
@@ -97,32 +97,32 @@ msgstr ""
 "\n"
 "Opciones:\n"
 
-#: pg_archivecleanup.c:260
+#: pg_archivecleanup.c:258
 #, c-format
 msgid "  -d             generate debug output (verbose mode)\n"
 msgstr "  -d             genera salida de depuración (modo verboso)\n"
 
-#: pg_archivecleanup.c:261
+#: pg_archivecleanup.c:259
 #, c-format
 msgid "  -n             dry run, show the names of the files that would be removed\n"
 msgstr "  -n             simulacro, muestra el nombre de los archivos que se eliminarían\n"
 
-#: pg_archivecleanup.c:262
+#: pg_archivecleanup.c:260
 #, c-format
 msgid "  -V, --version  output version information, then exit\n"
 msgstr "  -V, --version  muestra información de la versión, luego sale\n"
 
-#: pg_archivecleanup.c:263
+#: pg_archivecleanup.c:261
 #, c-format
 msgid "  -x EXT         clean up files if they have this extension\n"
 msgstr "  -x EXT         hace limpieza de archivos que tengan esta extensión\n"
 
-#: pg_archivecleanup.c:264
+#: pg_archivecleanup.c:262
 #, c-format
 msgid "  -?, --help     show this help, then exit\n"
 msgstr "  -?, --help     muestra esta ayuda, luego sale\n"
 
-#: pg_archivecleanup.c:265
+#: pg_archivecleanup.c:263
 #, c-format
 msgid ""
 "\n"
@@ -137,7 +137,7 @@ msgstr ""
 "por ej.\n"
 "  archive_cleanup_command = 'pg_archivecleanup /mnt/servidor/directorioarchivador %%r'\n"
 
-#: pg_archivecleanup.c:270
+#: pg_archivecleanup.c:268
 #, c-format
 msgid ""
 "\n"
@@ -150,26 +150,36 @@ msgstr ""
 "por ej.\n"
 "  pg_archivecleanup /mnt/servidor/directorioarchivador 000000010000000000000010.00000020.backup\n"
 
-#: pg_archivecleanup.c:274
+#: pg_archivecleanup.c:272
 #, c-format
 msgid ""
 "\n"
-"Report bugs to <pgsql-bugs@lists.postgresql.org>.\n"
+"Report bugs to <%s>.\n"
 msgstr ""
-"\n"
-"Reporte errores a <pgsql-bugs@lists.postgresql.org>.\n"
 
-#: pg_archivecleanup.c:336
+#: pg_archivecleanup.c:273
+#, c-format
+msgid "%s home page: <%s>\n"
+msgstr ""
+
+#: pg_archivecleanup.c:335
 #, c-format
 msgid "must specify archive location"
 msgstr "debe especificar la ubicación del archivador"
 
-#: pg_archivecleanup.c:348
+#: pg_archivecleanup.c:347
 #, c-format
 msgid "must specify oldest kept WAL file"
 msgstr "debe especificar el fichero WAL más antiguo a mantener"
 
-#: pg_archivecleanup.c:355
+#: pg_archivecleanup.c:354
 #, c-format
 msgid "too many command-line arguments"
 msgstr "demasiados argumentos de línea de órdenes"
+
+#~ msgid ""
+#~ "\n"
+#~ "Report bugs to <pgsql-bugs@lists.postgresql.org>.\n"
+#~ msgstr ""
+#~ "\n"
+#~ "Reporte errores a <pgsql-bugs@lists.postgresql.org>.\n"
diff --git a/src/bin/pg_basebackup/po/de.po b/src/bin/pg_basebackup/po/de.po
index e5a1770a66c..15df9e69af4 100644
--- a/src/bin/pg_basebackup/po/de.po
+++ b/src/bin/pg_basebackup/po/de.po
@@ -9,8 +9,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: PostgreSQL 13\n"
 "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n"
-"POT-Creation-Date: 2020-04-22 10:45+0000\n"
-"PO-Revision-Date: 2020-04-22 15:32+0200\n"
+"POT-Creation-Date: 2020-05-18 03:45+0000\n"
+"PO-Revision-Date: 2020-05-18 09:00+0200\n"
 "Last-Translator: Peter Eisentraut <peter@eisentraut.org>\n"
 "Language-Team: German <pgsql-translators@postgresql.org>\n"
 "Language: de\n"
@@ -309,10 +309,38 @@ msgstr "  -V, --version          Versionsinformationen anzeigen, dann beenden\n"
 
 #: pg_basebackup.c:407
 #, c-format
+msgid ""
+"      --manifest-checksums=SHA{224,256,384,512}|CRC32C|NONE\n"
+"                         use algorithm for manifest checksums\n"
+msgstr ""
+"      --manifest-checksums=SHA{224,256,384,512}|CRC32C|NONE\n"
+"                         Algorithmus für Manifest-Prüfsummen\n"
+
+#: pg_basebackup.c:409
+#, c-format
+msgid ""
+"      --manifest-force-encode\n"
+"                         hex encode all file names in manifest\n"
+msgstr ""
+"      --manifest-force-encode\n"
+"                         alle Dateinamen im Manifest hex-kodieren\n"
+
+#: pg_basebackup.c:411
+#, c-format
+msgid "      --no-estimate-size do not estimate backup size in server side\n"
+msgstr "      --no-estimate-size nicht die Backup-Größe auf dem Server schätzen\n"
+
+#: pg_basebackup.c:412
+#, c-format
+msgid "      --no-manifest      suppress generation of backup manifest\n"
+msgstr "      --no-manifest      kein Backup-Manifest erzeugen\n"
+
+#: pg_basebackup.c:413
+#, c-format
 msgid "      --no-slot          prevent creation of temporary replication slot\n"
 msgstr "      --no-slot          keinen temporären Replikations-Slot erzeugen\n"
 
-#: pg_basebackup.c:408
+#: pg_basebackup.c:414
 #, c-format
 msgid ""
 "      --no-verify-checksums\n"
@@ -321,34 +349,6 @@ msgstr ""
 "      --no-verify-checksums\n"
 "                         Prüfsummen nicht überprüfen\n"
 
-#: pg_basebackup.c:410
-#, c-format
-msgid "      --no-estimate-size do not estimate backup size in server side\n"
-msgstr "      --no-estimate-size nicht die Backup-Größe auf dem Server schätzen\n"
-
-#: pg_basebackup.c:411
-#, c-format
-msgid "      --no-manifest      suppress generation of backup manifest\n"
-msgstr "      --no-manifest      kein Backup-Manifest erzeugen\n"
-
-#: pg_basebackup.c:412
-#, c-format
-msgid ""
-"      --manifest-force-encode\n"
-"                         hex encode all filenames in manifest\n"
-msgstr ""
-"      --manifest-force-encode\n"
-"                         alle Dateinamen im Manifest hex-kodieren\n"
-
-#: pg_basebackup.c:414
-#, c-format
-msgid ""
-"      --manifest-checksums=SHA{224,256,384,512}|CRC32C|NONE\n"
-"                         use algorithm for manifest checksums\n"
-msgstr ""
-"      --manifest-checksums=SHA{224,256,384,512}|CRC32C|NONE\n"
-"                         Algorithmus für Manifest-Prüfsummen\n"
-
 #: pg_basebackup.c:416 pg_receivewal.c:94 pg_recvlogical.c:98
 #, c-format
 msgid "  -?, --help             show this help, then exit\n"
@@ -421,7 +421,7 @@ msgstr "%s Homepage: <%s>\n"
 msgid "could not read from ready pipe: %m"
 msgstr "konnte nicht aus bereiter Pipe lesen: %m"
 
-#: pg_basebackup.c:476 pg_basebackup.c:607 pg_basebackup.c:2109
+#: pg_basebackup.c:476 pg_basebackup.c:607 pg_basebackup.c:2115
 #: streamutil.c:450
 #, c-format
 msgid "could not parse write-ahead log location \"%s\""
@@ -447,7 +447,7 @@ msgstr "temporärer Replikations-Slot »%s« wurde erzeugt"
 msgid "created replication slot \"%s\""
 msgstr "Replikations-Slot »%s« wurde erzeugt"
 
-#: pg_basebackup.c:677 pg_basebackup.c:730 pg_basebackup.c:1600
+#: pg_basebackup.c:677 pg_basebackup.c:730 pg_basebackup.c:1606
 #, c-format
 msgid "could not create directory \"%s\": %m"
 msgstr "konnte Verzeichnis »%s« nicht erzeugen: %m"
@@ -528,7 +528,8 @@ msgstr "Transferrate »%s« ist außerhalb des gültigen Bereichs"
 msgid "could not get COPY data stream: %s"
 msgstr "konnte COPY-Datenstrom nicht empfangen: %s"
 
-#: pg_basebackup.c:975 pg_recvlogical.c:435 receivelog.c:965
+#: pg_basebackup.c:975 pg_recvlogical.c:435 pg_recvlogical.c:607
+#: receivelog.c:965
 #, c-format
 msgid "could not read COPY data: %s"
 msgstr "konnte COPY-Daten nicht lesen: %s"
@@ -538,342 +539,339 @@ msgstr "konnte COPY-Daten nicht lesen: %s"
 msgid "could not write to compressed file \"%s\": %s"
 msgstr "konnte nicht in komprimierte Datei »%s« schreiben: %s"
 
-#: pg_basebackup.c:1007 pg_basebackup.c:1690 pg_basebackup.c:1742
+#: pg_basebackup.c:1007 pg_basebackup.c:1696 pg_basebackup.c:1748
 #, c-format
 msgid "could not write to file \"%s\": %m"
 msgstr "konnte nicht in Datei »%s« schreiben: %m"
 
-#: pg_basebackup.c:1056
+#: pg_basebackup.c:1057
 #, c-format
 msgid "could not duplicate stdout: %m"
 msgstr "konnte Standardausgabe nicht duplizieren: %m"
 
-#: pg_basebackup.c:1063
+#: pg_basebackup.c:1064
 #, c-format
 msgid "could not open output file: %m"
 msgstr "konnte Ausgabedatei nicht öffnen: %m"
 
-#: pg_basebackup.c:1070 pg_basebackup.c:1091 pg_basebackup.c:1120
+#: pg_basebackup.c:1071 pg_basebackup.c:1092 pg_basebackup.c:1121
 #, c-format
 msgid "could not set compression level %d: %s"
 msgstr "konnte Komprimierungsniveau %d nicht setzen: %s"
 
-#: pg_basebackup.c:1140
+#: pg_basebackup.c:1141
 #, c-format
 msgid "could not create compressed file \"%s\": %s"
 msgstr "konnte komprimierte Datei »%s« nicht erzeugen: %s"
 
-#: pg_basebackup.c:1151 pg_basebackup.c:1651 pg_basebackup.c:1723
+#: pg_basebackup.c:1152 pg_basebackup.c:1657 pg_basebackup.c:1729
 #, c-format
 msgid "could not create file \"%s\": %m"
 msgstr "konnte Datei »%s« nicht erstellen: %m"
 
-#: pg_basebackup.c:1228
+#: pg_basebackup.c:1234
 #, c-format
 msgid "out of memory"
 msgstr "Speicher aufgebraucht"
 
-#: pg_basebackup.c:1247
+#: pg_basebackup.c:1253
 #, c-format
 msgid "could not close compressed file \"%s\": %s"
 msgstr "konnte komprimierte Datei »%s« nicht schließen: %s"
 
-#: pg_basebackup.c:1259 pg_recvlogical.c:606
+#: pg_basebackup.c:1265 pg_recvlogical.c:632
 #, c-format
 msgid "could not close file \"%s\": %m"
 msgstr "konnte Datei »%s« nicht schließen: %m"
 
-#: pg_basebackup.c:1521
+#: pg_basebackup.c:1527
 #, c-format
 msgid "COPY stream ended before last file was finished"
 msgstr "COPY-Strom endete vor dem Ende der letzten Datei"
 
-#: pg_basebackup.c:1550
+#: pg_basebackup.c:1556
 #, c-format
 msgid "invalid tar block header size: %zu"
 msgstr "ungültige Tar-Block-Kopf-Größe: %zu"
 
-#: pg_basebackup.c:1607
+#: pg_basebackup.c:1613
 #, c-format
 msgid "could not set permissions on directory \"%s\": %m"
 msgstr "konnte Zugriffsrechte für Verzeichnis »%s« nicht setzen: %m"
 
-#: pg_basebackup.c:1631
+#: pg_basebackup.c:1637
 #, c-format
 msgid "could not create symbolic link from \"%s\" to \"%s\": %m"
 msgstr "konnte symbolische Verknüpfung von »%s« nach »%s« nicht erzeugen: %m"
 
-#: pg_basebackup.c:1638
+#: pg_basebackup.c:1644
 #, c-format
 msgid "unrecognized link indicator \"%c\""
 msgstr "unbekannter Verknüpfungsindikator »%c«"
 
-#: pg_basebackup.c:1657
+#: pg_basebackup.c:1663
 #, c-format
 msgid "could not set permissions on file \"%s\": %m"
 msgstr "konnte Zugriffsrechte von Datei »%s« nicht setzen: %m"
 
-#: pg_basebackup.c:1803
+#: pg_basebackup.c:1809
 #, c-format
 msgid "incompatible server version %s"
 msgstr "inkompatible Serverversion %s"
 
-#: pg_basebackup.c:1818
+#: pg_basebackup.c:1824
 #, c-format
 msgid "HINT: use -X none or -X fetch to disable log streaming"
 msgstr "TIPP: -X none oder -X fetch verwenden um Log-Streaming abzuschalten"
 
-#: pg_basebackup.c:1854
+#: pg_basebackup.c:1860
 #, c-format
 msgid "initiating base backup, waiting for checkpoint to complete"
 msgstr "Basissicherung eingeleitet, warte auf Abschluss des Checkpoints"
 
-#: pg_basebackup.c:1880 pg_recvlogical.c:262 receivelog.c:481 receivelog.c:530
+#: pg_basebackup.c:1886 pg_recvlogical.c:262 receivelog.c:481 receivelog.c:530
 #: receivelog.c:569 streamutil.c:297 streamutil.c:370 streamutil.c:422
 #: streamutil.c:533 streamutil.c:578
 #, c-format
 msgid "could not send replication command \"%s\": %s"
 msgstr "konnte Replikationsbefehl »%s« nicht senden: %s"
 
-#: pg_basebackup.c:1891
+#: pg_basebackup.c:1897
 #, c-format
 msgid "could not initiate base backup: %s"
 msgstr "konnte Basissicherung nicht starten: %s"
 
-#: pg_basebackup.c:1897
+#: pg_basebackup.c:1903
 #, c-format
 msgid "server returned unexpected response to BASE_BACKUP command; got %d rows and %d fields, expected %d rows and %d fields"
 msgstr "unerwartete Antwort auf Befehl BASE_BACKUP: %d Zeilen und %d Felder erhalten, %d Zeilen und %d Felder erwartet"
 
-#: pg_basebackup.c:1905
+#: pg_basebackup.c:1911
 #, c-format
 msgid "checkpoint completed"
 msgstr "Checkpoint abgeschlossen"
 
-#: pg_basebackup.c:1920
+#: pg_basebackup.c:1926
 #, c-format
 msgid "write-ahead log start point: %s on timeline %u"
 msgstr "Write-Ahead-Log-Startpunkt: %s auf Zeitleiste %u"
 
-#: pg_basebackup.c:1929
+#: pg_basebackup.c:1935
 #, c-format
 msgid "could not get backup header: %s"
 msgstr "konnte Kopf der Sicherung nicht empfangen: %s"
 
-#: pg_basebackup.c:1935
+#: pg_basebackup.c:1941
 #, c-format
 msgid "no data returned from server"
 msgstr "keine Daten vom Server zurückgegeben"
 
-#: pg_basebackup.c:1967
+#: pg_basebackup.c:1973
 #, c-format
 msgid "can only write single tablespace to stdout, database has %d"
 msgstr "kann nur einen einzelnen Tablespace auf die Standardausgabe schreiben, Datenbank hat %d"
 
-#: pg_basebackup.c:1979
+#: pg_basebackup.c:1985
 #, c-format
 msgid "starting background WAL receiver"
 msgstr "Hintergrund-WAL-Receiver wird gestartet"
 
-#: pg_basebackup.c:2022
+#: pg_basebackup.c:2028
 #, c-format
 msgid "could not get write-ahead log end position from server: %s"
 msgstr "konnte Write-Ahead-Log-Endposition nicht vom Server empfangen: %s"
 
-#: pg_basebackup.c:2028
+#: pg_basebackup.c:2034
 #, c-format
 msgid "no write-ahead log end position returned from server"
 msgstr "keine Write-Ahead-Log-Endposition vom Server zurückgegeben"
 
-#: pg_basebackup.c:2033
+#: pg_basebackup.c:2039
 #, c-format
 msgid "write-ahead log end point: %s"
 msgstr "Write-Ahead-Log-Endposition: %s"
 
-#: pg_basebackup.c:2044
+#: pg_basebackup.c:2050
 #, c-format
 msgid "checksum error occurred"
 msgstr "ein Prüfsummenfehler ist aufgetreten"
 
-#: pg_basebackup.c:2049
+#: pg_basebackup.c:2055
 #, c-format
 msgid "final receive failed: %s"
 msgstr "letztes Empfangen fehlgeschlagen: %s"
 
-#: pg_basebackup.c:2073
+#: pg_basebackup.c:2079
 #, c-format
 msgid "waiting for background process to finish streaming ..."
 msgstr "warte bis Hintergrundprozess Streaming beendet hat ..."
 
-#: pg_basebackup.c:2078
+#: pg_basebackup.c:2084
 #, c-format
 msgid "could not send command to background pipe: %m"
 msgstr "konnte Befehl nicht an Hintergrund-Pipe senden: %m"
 
-#: pg_basebackup.c:2086
+#: pg_basebackup.c:2092
 #, c-format
 msgid "could not wait for child process: %m"
 msgstr "konnte nicht auf Kindprozess warten: %m"
 
-#: pg_basebackup.c:2091
+#: pg_basebackup.c:2097
 #, c-format
 msgid "child %d died, expected %d"
 msgstr "Kindprozess %d endete, aber %d wurde erwartet"
 
-#: pg_basebackup.c:2096 streamutil.c:92
+#: pg_basebackup.c:2102 streamutil.c:92
 #, c-format
 msgid "%s"
 msgstr "%s"
 
-#: pg_basebackup.c:2121
+#: pg_basebackup.c:2127
 #, c-format
 msgid "could not wait for child thread: %m"
 msgstr "konnte nicht auf Kind-Thread warten: %m"
 
-#: pg_basebackup.c:2127
+#: pg_basebackup.c:2133
 #, c-format
 msgid "could not get child thread exit status: %m"
 msgstr "konnte Statuscode des Kind-Threads nicht ermitteln: %m"
 
-#: pg_basebackup.c:2132
+#: pg_basebackup.c:2138
 #, c-format
 msgid "child thread exited with error %u"
 msgstr "Kind-Thread hat mit Fehler %u beendet"
 
-#: pg_basebackup.c:2160
+#: pg_basebackup.c:2166
 #, c-format
 msgid "syncing data to disk ..."
 msgstr "synchronisiere Daten auf Festplatte ..."
 
-#: pg_basebackup.c:2185
+#: pg_basebackup.c:2191
 #, c-format
 msgid "renaming backup_manifest.tmp to backup_manifest"
 msgstr "umbenennen von backup_manifest.tmp nach backup_manifest"
 
-#: pg_basebackup.c:2196
+#: pg_basebackup.c:2202
 #, c-format
 msgid "base backup completed"
 msgstr "Basissicherung abgeschlossen"
 
-#: pg_basebackup.c:2281
+#: pg_basebackup.c:2287
 #, c-format
 msgid "invalid output format \"%s\", must be \"plain\" or \"tar\""
 msgstr "ungültiges Ausgabeformat »%s«, muss »plain« oder »tar« sein"
 
-#: pg_basebackup.c:2325
+#: pg_basebackup.c:2331
 #, c-format
 msgid "invalid wal-method option \"%s\", must be \"fetch\", \"stream\", or \"none\""
 msgstr "ungültige Option »%s« für --wal-method, muss »fetch«, »stream« oder »none« sein"
 
-#: pg_basebackup.c:2353 pg_receivewal.c:580
+#: pg_basebackup.c:2359 pg_receivewal.c:580
 #, c-format
 msgid "invalid compression level \"%s\""
 msgstr "ungültiges Komprimierungsniveau »%s«"
 
-#: pg_basebackup.c:2364
+#: pg_basebackup.c:2370
 #, c-format
 msgid "invalid checkpoint argument \"%s\", must be \"fast\" or \"spread\""
 msgstr "ungültiges Checkpoint-Argument »%s«, muss »fast« oder »spread« sein"
 
-#: pg_basebackup.c:2391 pg_receivewal.c:555 pg_recvlogical.c:794
+#: pg_basebackup.c:2397 pg_receivewal.c:555 pg_recvlogical.c:820
 #, c-format
 msgid "invalid status interval \"%s\""
 msgstr "ungültiges Statusintervall »%s«"
 
-#: pg_basebackup.c:2421 pg_basebackup.c:2434 pg_basebackup.c:2445
-#: pg_basebackup.c:2456 pg_basebackup.c:2464 pg_basebackup.c:2472
-#: pg_basebackup.c:2482 pg_basebackup.c:2495 pg_basebackup.c:2503
-#: pg_basebackup.c:2514 pg_basebackup.c:2524 pg_basebackup.c:2541
-#: pg_basebackup.c:2549 pg_basebackup.c:2557 pg_receivewal.c:605
+#: pg_basebackup.c:2427 pg_basebackup.c:2440 pg_basebackup.c:2451
+#: pg_basebackup.c:2462 pg_basebackup.c:2470 pg_basebackup.c:2478
+#: pg_basebackup.c:2488 pg_basebackup.c:2501 pg_basebackup.c:2509
+#: pg_basebackup.c:2520 pg_basebackup.c:2530 pg_basebackup.c:2547
+#: pg_basebackup.c:2555 pg_basebackup.c:2563 pg_receivewal.c:605
 #: pg_receivewal.c:618 pg_receivewal.c:626 pg_receivewal.c:636
-#: pg_receivewal.c:644 pg_receivewal.c:655 pg_recvlogical.c:820
-#: pg_recvlogical.c:833 pg_recvlogical.c:844 pg_recvlogical.c:852
-#: pg_recvlogical.c:860 pg_recvlogical.c:868 pg_recvlogical.c:876
-#: pg_recvlogical.c:884 pg_recvlogical.c:892
+#: pg_receivewal.c:644 pg_receivewal.c:655 pg_recvlogical.c:846
+#: pg_recvlogical.c:859 pg_recvlogical.c:870 pg_recvlogical.c:878
+#: pg_recvlogical.c:886 pg_recvlogical.c:894 pg_recvlogical.c:902
+#: pg_recvlogical.c:910 pg_recvlogical.c:918
 #, c-format
 msgid "Try \"%s --help\" for more information.\n"
 msgstr "Versuchen Sie »%s --help« für weitere Informationen.\n"
 
-#: pg_basebackup.c:2432 pg_receivewal.c:616 pg_recvlogical.c:831
+#: pg_basebackup.c:2438 pg_receivewal.c:616 pg_recvlogical.c:857
 #, c-format
 msgid "too many command-line arguments (first is \"%s\")"
 msgstr "zu viele Kommandozeilenargumente (das erste ist »%s«)"
 
-#: pg_basebackup.c:2444 pg_receivewal.c:654
+#: pg_basebackup.c:2450 pg_receivewal.c:654
 #, c-format
 msgid "no target directory specified"
 msgstr "kein Zielverzeichnis angegeben"
 
-#: pg_basebackup.c:2455
+#: pg_basebackup.c:2461
 #, c-format
 msgid "only tar mode backups can be compressed"
 msgstr "nur Sicherungen im Tar-Modus können komprimiert werden"
 
-#: pg_basebackup.c:2463
+#: pg_basebackup.c:2469
 #, c-format
 msgid "cannot stream write-ahead logs in tar mode to stdout"
 msgstr "im Tar-Modus können Write-Ahead-Logs nicht auf Standardausgabe geschrieben werden"
 
-#: pg_basebackup.c:2471
+#: pg_basebackup.c:2477
 #, c-format
 msgid "replication slots can only be used with WAL streaming"
 msgstr "Replikations-Slots können nur mit WAL-Streaming verwendet werden"
 
-#: pg_basebackup.c:2481
+#: pg_basebackup.c:2487
 #, c-format
 msgid "--no-slot cannot be used with slot name"
 msgstr "--no-slot kann nicht zusammen mit einem Slot-Namen verwendet werden"
 
 #. translator: second %s is an option name
-#: pg_basebackup.c:2493 pg_receivewal.c:634
+#: pg_basebackup.c:2499 pg_receivewal.c:634
 #, c-format
 msgid "%s needs a slot to be specified using --slot"
 msgstr "für %s muss ein Slot mit --slot angegeben werden"
 
-#: pg_basebackup.c:2502
+#: pg_basebackup.c:2508
 #, c-format
 msgid "--create-slot and --no-slot are incompatible options"
 msgstr "--create-slot und --no-slot sind inkompatible Optionen"
 
-#: pg_basebackup.c:2513
+#: pg_basebackup.c:2519
 #, c-format
 msgid "WAL directory location can only be specified in plain mode"
 msgstr "WAL-Verzeichnis kann nur im »plain«-Modus angegeben werden"
 
-#: pg_basebackup.c:2523
+#: pg_basebackup.c:2529
 #, c-format
 msgid "WAL directory location must be an absolute path"
 msgstr "WAL-Verzeichnis muss absoluten Pfad haben"
 
-#: pg_basebackup.c:2533 pg_receivewal.c:663
+#: pg_basebackup.c:2539 pg_receivewal.c:663
 #, c-format
 msgid "this build does not support compression"
 msgstr "diese Installation unterstützt keine Komprimierung"
 
-#: pg_basebackup.c:2540
-#, fuzzy, c-format
-#| msgid "--create-slot and --no-slot are incompatible options"
+#: pg_basebackup.c:2546
+#, c-format
 msgid "--progress and --no-estimate-size are incompatible options"
-msgstr "--create-slot und --no-slot sind inkompatible Optionen"
+msgstr "--progress und --no-estimate-size sind inkompatible Optionen"
 
-#: pg_basebackup.c:2548
-#, fuzzy, c-format
-#| msgid "--create-slot and --no-slot are incompatible options"
+#: pg_basebackup.c:2554
+#, c-format
 msgid "--no-manifest and --manifest-checksums are incompatible options"
-msgstr "--create-slot und --no-slot sind inkompatible Optionen"
+msgstr "--no-manifest und --manifest-checksums sind inkompatible Optionen"
 
-#: pg_basebackup.c:2556
-#, fuzzy, c-format
-#| msgid "--create-slot and --no-slot are incompatible options"
+#: pg_basebackup.c:2562
+#, c-format
 msgid "--no-manifest and --manifest-force-encode are incompatible options"
-msgstr "--create-slot und --no-slot sind inkompatible Optionen"
+msgstr "--no-manifest und --manifest-force-encode sind inkompatible Optionen"
 
-#: pg_basebackup.c:2615
+#: pg_basebackup.c:2621
 #, c-format
 msgid "could not create symbolic link \"%s\": %m"
 msgstr "konnte symbolische Verknüpfung »%s« nicht erstellen: %m"
 
-#: pg_basebackup.c:2619
+#: pg_basebackup.c:2625
 #, c-format
 msgid "symlinks are not supported on this platform"
 msgstr "symbolische Verknüpfungen werden auf dieser Plattform nicht unterstützt"
@@ -1021,12 +1019,12 @@ msgstr "komprimierte Segmentdatei »%s« hat falsche unkomprimierte Größe %d,
 msgid "starting log streaming at %X/%X (timeline %u)"
 msgstr "starte Log-Streaming bei %X/%X (Zeitleiste %u)"
 
-#: pg_receivewal.c:537 pg_recvlogical.c:736
+#: pg_receivewal.c:537 pg_recvlogical.c:762
 #, c-format
 msgid "invalid port number \"%s\""
 msgstr "ungültige Portnummer »%s«"
 
-#: pg_receivewal.c:565 pg_recvlogical.c:762
+#: pg_receivewal.c:565 pg_recvlogical.c:788
 #, c-format
 msgid "could not parse end position \"%s\""
 msgstr "konnte Endposition »%s« nicht parsen"
@@ -1046,23 +1044,23 @@ msgstr "--synchronous kann nicht zusammen mit --no-sync verwendet werden"
 msgid "replication connection using slot \"%s\" is unexpectedly database specific"
 msgstr "Replikationsverbindung, die Slot »%s« verwendet, ist unerwarteterweise datenbankspezifisch"
 
-#: pg_receivewal.c:730 pg_recvlogical.c:940
+#: pg_receivewal.c:730 pg_recvlogical.c:966
 #, c-format
 msgid "dropping replication slot \"%s\""
 msgstr "lösche Replikations-Slot »%s«"
 
-#: pg_receivewal.c:741 pg_recvlogical.c:950
+#: pg_receivewal.c:741 pg_recvlogical.c:976
 #, c-format
 msgid "creating replication slot \"%s\""
 msgstr "erzeuge Replikations-Slot »%s«"
 
-#: pg_receivewal.c:767 pg_recvlogical.c:975
+#: pg_receivewal.c:767 pg_recvlogical.c:1001
 #, c-format
 msgid "disconnected"
 msgstr "Verbindung beendet"
 
 #. translator: check source for value for %d
-#: pg_receivewal.c:773 pg_recvlogical.c:981
+#: pg_receivewal.c:773 pg_recvlogical.c:1007
 #, c-format
 msgid "disconnected; waiting %d seconds to try again"
 msgstr "Verbindung beendet; erneuter Versuch in %d Sekunden"
@@ -1190,67 +1188,67 @@ msgstr "unbekannter Streaming-Header: »%c«"
 msgid "could not write %u bytes to log file \"%s\": %m"
 msgstr "konnte %u Bytes nicht in Logdatei »%s« schreiben: %m"
 
-#: pg_recvlogical.c:592 receivelog.c:629 receivelog.c:666
+#: pg_recvlogical.c:618 receivelog.c:629 receivelog.c:666
 #, c-format
 msgid "unexpected termination of replication stream: %s"
 msgstr "unerwarteter Abbruch des Replikations-Streams: %s"
 
-#: pg_recvlogical.c:716
+#: pg_recvlogical.c:742
 #, c-format
 msgid "invalid fsync interval \"%s\""
 msgstr "ungültiges Fsync-Intervall »%s«"
 
-#: pg_recvlogical.c:754
+#: pg_recvlogical.c:780
 #, c-format
 msgid "could not parse start position \"%s\""
 msgstr "konnte Startposition »%s« nicht parsen"
 
-#: pg_recvlogical.c:843
+#: pg_recvlogical.c:869
 #, c-format
 msgid "no slot specified"
 msgstr "kein Slot angegeben"
 
-#: pg_recvlogical.c:851
+#: pg_recvlogical.c:877
 #, c-format
 msgid "no target file specified"
 msgstr "keine Zieldatei angegeben"
 
-#: pg_recvlogical.c:859
+#: pg_recvlogical.c:885
 #, c-format
 msgid "no database specified"
 msgstr "keine Datenbank angegeben"
 
-#: pg_recvlogical.c:867
+#: pg_recvlogical.c:893
 #, c-format
 msgid "at least one action needs to be specified"
 msgstr "mindestens eine Aktion muss angegeben werden"
 
-#: pg_recvlogical.c:875
+#: pg_recvlogical.c:901
 #, c-format
 msgid "cannot use --create-slot or --start together with --drop-slot"
 msgstr "--create-slot oder --start kann nicht zusammen mit --drop-slot verwendet werden"
 
-#: pg_recvlogical.c:883
+#: pg_recvlogical.c:909
 #, c-format
 msgid "cannot use --create-slot or --drop-slot together with --startpos"
 msgstr "--create-slot oder --drop-slot kann nicht zusammen mit --startpos verwendet werden"
 
-#: pg_recvlogical.c:891
+#: pg_recvlogical.c:917
 #, c-format
 msgid "--endpos may only be specified with --start"
 msgstr "--endpos kann nur zusammen mit --start angegeben werden"
 
-#: pg_recvlogical.c:922
+#: pg_recvlogical.c:948
 #, c-format
 msgid "could not establish database-specific replication connection"
 msgstr "konnte keine datenbankspezifische Replikationsverbindung herstellen"
 
-#: pg_recvlogical.c:1021
+#: pg_recvlogical.c:1047
 #, c-format
 msgid "end position %X/%X reached by keepalive"
 msgstr "Endposition %X/%X durch Keepalive erreicht"
 
-#: pg_recvlogical.c:1024
+#: pg_recvlogical.c:1050
 #, c-format
 msgid "end position %X/%X reached by WAL record at %X/%X"
 msgstr "Endposition %X/%X erreicht durch WAL-Eintrag bei %X/%X"
diff --git a/src/bin/pg_basebackup/po/es.po b/src/bin/pg_basebackup/po/es.po
index 7cbd019c283..569cd7e7a8a 100644
--- a/src/bin/pg_basebackup/po/es.po
+++ b/src/bin/pg_basebackup/po/es.po
@@ -10,7 +10,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: pg_basebackup (PostgreSQL) 12\n"
 "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n"
-"POT-Creation-Date: 2019-09-29 23:43+0000\n"
+"POT-Creation-Date: 2020-05-17 02:45+0000\n"
 "PO-Revision-Date: 2019-09-29 22:12-0300\n"
 "Last-Translator: Carlos Chapi <carlos.chapi@2ndquadrant.com>\n"
 "Language-Team: PgSQL-es-Ayuda <pgsql-es-ayuda@lists.postgresql.org>\n"
@@ -21,146 +21,146 @@ msgstr ""
 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
 "X-Generator: BlackCAT 1.0\n"
 
-#: ../../../src/common/logging.c:188
+#: ../../../src/common/logging.c:236
 #, c-format
 msgid "fatal: "
 msgstr "fatal: "
 
-#: ../../../src/common/logging.c:195
+#: ../../../src/common/logging.c:243
 #, c-format
 msgid "error: "
 msgstr "error: "
 
-#: ../../../src/common/logging.c:202
+#: ../../../src/common/logging.c:250
 #, c-format
 msgid "warning: "
 msgstr "precaución: "
 
 #: ../../common/fe_memutils.c:35 ../../common/fe_memutils.c:75
-#: ../../common/fe_memutils.c:98
+#: ../../common/fe_memutils.c:98 ../../common/fe_memutils.c:162
 #, c-format
 msgid "out of memory\n"
 msgstr "memoria agotada\n"
 
-#: ../../common/fe_memutils.c:92
+#: ../../common/fe_memutils.c:92 ../../common/fe_memutils.c:154
 #, c-format
 msgid "cannot duplicate null pointer (internal error)\n"
 msgstr "no se puede duplicar un puntero nulo (error interno)\n"
 
-#: ../../common/file_utils.c:81 ../../common/file_utils.c:183
-#: pg_receivewal.c:267 pg_recvlogical.c:342
+#: ../../common/file_utils.c:79 ../../common/file_utils.c:181
+#: pg_receivewal.c:266 pg_recvlogical.c:340
 #, c-format
 msgid "could not stat file \"%s\": %m"
 msgstr "no se pudo hacer stat al archivo «%s»: %m"
 
-#: ../../common/file_utils.c:160 pg_receivewal.c:170
+#: ../../common/file_utils.c:158 pg_receivewal.c:169
 #, c-format
 msgid "could not open directory \"%s\": %m"
 msgstr "no se pudo abrir el directorio «%s»: %m"
 
-#: ../../common/file_utils.c:194 pg_receivewal.c:338
+#: ../../common/file_utils.c:192 pg_receivewal.c:337
 #, c-format
 msgid "could not read directory \"%s\": %m"
 msgstr "no se pudo leer el directorio «%s»: %m"
 
-#: ../../common/file_utils.c:226 ../../common/file_utils.c:285
-#: ../../common/file_utils.c:359 pg_basebackup.c:1760
+#: ../../common/file_utils.c:224 ../../common/file_utils.c:283
+#: ../../common/file_utils.c:357
 #, c-format
 msgid "could not open file \"%s\": %m"
 msgstr "no se pudo abrir el archivo «%s»: %m"
 
-#: ../../common/file_utils.c:297 ../../common/file_utils.c:367
-#: pg_recvlogical.c:195
+#: ../../common/file_utils.c:295 ../../common/file_utils.c:365
+#: pg_recvlogical.c:193
 #, c-format
 msgid "could not fsync file \"%s\": %m"
 msgstr "no se pudo sincronizar (fsync) archivo «%s»: %m"
 
-#: ../../common/file_utils.c:377
+#: ../../common/file_utils.c:375
 #, c-format
 msgid "could not rename file \"%s\" to \"%s\": %m"
 msgstr "no se pudo renombrar el archivo de «%s» a «%s»: %m"
 
-#: pg_basebackup.c:171
+#: pg_basebackup.c:223
 #, c-format
 msgid "removing data directory \"%s\""
 msgstr "eliminando el directorio de datos «%s»"
 
-#: pg_basebackup.c:173
+#: pg_basebackup.c:225
 #, c-format
 msgid "failed to remove data directory"
 msgstr "no se pudo eliminar el directorio de datos"
 
-#: pg_basebackup.c:177
+#: pg_basebackup.c:229
 #, c-format
 msgid "removing contents of data directory \"%s\""
 msgstr "eliminando el contenido del directorio «%s»"
 
-#: pg_basebackup.c:179
+#: pg_basebackup.c:231
 #, c-format
 msgid "failed to remove contents of data directory"
 msgstr "no se pudo eliminar el contenido del directorio de datos"
 
-#: pg_basebackup.c:184
+#: pg_basebackup.c:236
 #, c-format
 msgid "removing WAL directory \"%s\""
 msgstr "eliminando el directorio de WAL «%s»"
 
-#: pg_basebackup.c:186
+#: pg_basebackup.c:238
 #, c-format
 msgid "failed to remove WAL directory"
 msgstr "no se pudo eliminar el directorio de WAL"
 
-#: pg_basebackup.c:190
+#: pg_basebackup.c:242
 #, c-format
 msgid "removing contents of WAL directory \"%s\""
 msgstr "eliminando el contenido del directorio de WAL «%s»"
 
-#: pg_basebackup.c:192
+#: pg_basebackup.c:244
 #, c-format
 msgid "failed to remove contents of WAL directory"
 msgstr "no se pudo eliminar el contenido del directorio de WAL"
 
-#: pg_basebackup.c:198
+#: pg_basebackup.c:250
 #, c-format
 msgid "data directory \"%s\" not removed at user's request"
 msgstr "directorio de datos «%s» no eliminado a petición del usuario"
 
-#: pg_basebackup.c:201
+#: pg_basebackup.c:253
 #, c-format
 msgid "WAL directory \"%s\" not removed at user's request"
 msgstr "directorio de WAL «%s» no eliminado a petición del usuario"
 
-#: pg_basebackup.c:205
+#: pg_basebackup.c:257
 #, c-format
 msgid "changes to tablespace directories will not be undone"
 msgstr "los cambios a los directorios de tablespaces no se desharán"
 
-#: pg_basebackup.c:246
+#: pg_basebackup.c:298
 #, c-format
 msgid "directory name too long"
 msgstr "nombre de directorio demasiado largo"
 
-#: pg_basebackup.c:256
+#: pg_basebackup.c:308
 #, c-format
 msgid "multiple \"=\" signs in tablespace mapping"
 msgstr "múltiples signos «=» en mapeo de tablespace"
 
-#: pg_basebackup.c:268
+#: pg_basebackup.c:320
 #, c-format
 msgid "invalid tablespace mapping format \"%s\", must be \"OLDDIR=NEWDIR\""
 msgstr "formato de mapeo de tablespace «%s» no válido, debe ser «ANTIGUO=NUEVO»"
 
-#: pg_basebackup.c:280
+#: pg_basebackup.c:332
 #, c-format
 msgid "old directory is not an absolute path in tablespace mapping: %s"
 msgstr "directorio antiguo no es una ruta absoluta en mapeo de tablespace: %s"
 
-#: pg_basebackup.c:287
+#: pg_basebackup.c:339
 #, c-format
 msgid "new directory is not an absolute path in tablespace mapping: %s"
 msgstr "directorio nuevo no es una ruta absoluta en mapeo de tablespace: %s"
 
-#: pg_basebackup.c:326
+#: pg_basebackup.c:378
 #, c-format
 msgid ""
 "%s takes a base backup of a running PostgreSQL server.\n"
@@ -169,17 +169,17 @@ msgstr ""
 "%s obtiene un respaldo base a partir de un servidor PostgreSQL en ejecución.\n"
 "\n"
 
-#: pg_basebackup.c:328 pg_receivewal.c:81 pg_recvlogical.c:78
+#: pg_basebackup.c:380 pg_receivewal.c:79 pg_recvlogical.c:75
 #, c-format
 msgid "Usage:\n"
 msgstr "Empleo:\n"
 
-#: pg_basebackup.c:329 pg_receivewal.c:82 pg_recvlogical.c:79
+#: pg_basebackup.c:381 pg_receivewal.c:80 pg_recvlogical.c:76
 #, c-format
 msgid "  %s [OPTION]...\n"
 msgstr "  %s [OPCIÓN]...\n"
 
-#: pg_basebackup.c:330
+#: pg_basebackup.c:382
 #, c-format
 msgid ""
 "\n"
@@ -188,17 +188,17 @@ msgstr ""
 "\n"
 "Opciones que controlan la salida:\n"
 
-#: pg_basebackup.c:331
+#: pg_basebackup.c:383
 #, c-format
 msgid "  -D, --pgdata=DIRECTORY receive base backup into directory\n"
 msgstr "  -D, --pgdata=DIR       directorio en el cual recibir el respaldo base\n"
 
-#: pg_basebackup.c:332
+#: pg_basebackup.c:384
 #, c-format
 msgid "  -F, --format=p|t       output format (plain (default), tar)\n"
 msgstr "  -F, --format=p|t       formato de salida (plano (por omisión), tar)\n"
 
-#: pg_basebackup.c:333
+#: pg_basebackup.c:385
 #, c-format
 msgid ""
 "  -r, --max-rate=RATE    maximum transfer rate to transfer data directory\n"
@@ -207,7 +207,7 @@ msgstr ""
 "  -r, --max-rate=TASA    máxima tasa a la que transferir el directorio de datos\n"
 "                         (en kB/s, o use sufijos «k» o «M»)\n"
 
-#: pg_basebackup.c:335
+#: pg_basebackup.c:387
 #, c-format
 msgid ""
 "  -R, --write-recovery-conf\n"
@@ -216,7 +216,7 @@ msgstr ""
 "  -R, --write-recovery-conf\n"
 "                         escribe configuración para replicación\n"
 
-#: pg_basebackup.c:337
+#: pg_basebackup.c:389
 #, c-format
 msgid ""
 "  -T, --tablespace-mapping=OLDDIR=NEWDIR\n"
@@ -225,12 +225,12 @@ msgstr ""
 "  -T, --tablespace-mapping=ANTIGUO=NUEVO\n"
 "                         reubicar el directorio de tablespace de ANTIGUO a NUEVO\n"
 
-#: pg_basebackup.c:339
+#: pg_basebackup.c:391
 #, c-format
 msgid "      --waldir=WALDIR    location for the write-ahead log directory\n"
 msgstr "      --waldir=DIRWAL    ubicación para el directorio WAL\n"
 
-#: pg_basebackup.c:340
+#: pg_basebackup.c:392
 #, c-format
 msgid ""
 "  -X, --wal-method=none|fetch|stream\n"
@@ -240,17 +240,17 @@ msgstr ""
 "                         incluye los archivos WAL necesarios,\n"
 "                         en el modo especificado\n"
 
-#: pg_basebackup.c:342
+#: pg_basebackup.c:394
 #, c-format
 msgid "  -z, --gzip             compress tar output\n"
 msgstr "  -z, --gzip             comprimir la salida de tar\n"
 
-#: pg_basebackup.c:343
+#: pg_basebackup.c:395
 #, c-format
 msgid "  -Z, --compress=0-9     compress tar output with given compression level\n"
 msgstr "  -Z, --compress=0-9     comprimir salida tar con el nivel de compresión dado\n"
 
-#: pg_basebackup.c:344
+#: pg_basebackup.c:396
 #, c-format
 msgid ""
 "\n"
@@ -259,7 +259,7 @@ msgstr ""
 "\n"
 "Opciones generales:\n"
 
-#: pg_basebackup.c:345
+#: pg_basebackup.c:397
 #, c-format
 msgid ""
 "  -c, --checkpoint=fast|spread\n"
@@ -268,52 +268,87 @@ msgstr ""
 "  -c, --checkpoint=fast|spread\n"
 "                         utilizar checkpoint rápido o extendido\n"
 
-#: pg_basebackup.c:347
+#: pg_basebackup.c:399
 #, c-format
 msgid "  -C, --create-slot      create replication slot\n"
 msgstr "  -C, --create-slot      crear un slot de replicación\n"
 
-#: pg_basebackup.c:348
+#: pg_basebackup.c:400
 #, c-format
 msgid "  -l, --label=LABEL      set backup label\n"
 msgstr "  -l, --label=ETIQUETA   establecer etiqueta del respaldo\n"
 
-#: pg_basebackup.c:349
+#: pg_basebackup.c:401
 #, c-format
 msgid "  -n, --no-clean         do not clean up after errors\n"
 msgstr "  -n, --no-clean         no hacer limpieza tras errores\n"
 
-#: pg_basebackup.c:350
+#: pg_basebackup.c:402
 #, c-format
 msgid "  -N, --no-sync          do not wait for changes to be written safely to disk\n"
 msgstr "  -N, --no-sync          no esperar que los cambios se sincronicen a disco\n"
 
-#: pg_basebackup.c:351
+#: pg_basebackup.c:403
 #, c-format
 msgid "  -P, --progress         show progress information\n"
 msgstr "  -P, --progress         mostrar información de progreso\n"
 
-#: pg_basebackup.c:352 pg_receivewal.c:91
+#: pg_basebackup.c:404 pg_receivewal.c:89
 #, c-format
 msgid "  -S, --slot=SLOTNAME    replication slot to use\n"
 msgstr "  -S, --slot=NOMBRE      slot de replicación a usar\n"
 
-#: pg_basebackup.c:353 pg_receivewal.c:93 pg_recvlogical.c:99
+#: pg_basebackup.c:405 pg_receivewal.c:91 pg_recvlogical.c:96
 #, c-format
 msgid "  -v, --verbose          output verbose messages\n"
 msgstr "  -v, --verbose          desplegar mensajes verbosos\n"
 
-#: pg_basebackup.c:354 pg_receivewal.c:94 pg_recvlogical.c:100
+#: pg_basebackup.c:406 pg_receivewal.c:92 pg_recvlogical.c:97
 #, c-format
 msgid "  -V, --version          output version information, then exit\n"
 msgstr "  -V, --version          mostrar información de versión, luego salir\n"
 
-#: pg_basebackup.c:355
+#: pg_basebackup.c:407
+#, fuzzy, c-format
+#| msgid ""
+#| "      --no-verify-checksums\n"
+#| "                         do not verify checksums\n"
+msgid ""
+"      --manifest-checksums=SHA{224,256,384,512}|CRC32C|NONE\n"
+"                         use algorithm for manifest checksums\n"
+msgstr ""
+"      --no-verify-checksums\n"
+"                         no verificar checksums\n"
+
+#: pg_basebackup.c:409
+#, fuzzy, c-format
+#| msgid ""
+#| "      --no-verify-checksums\n"
+#| "                         do not verify checksums\n"
+msgid ""
+"      --manifest-force-encode\n"
+"                         hex encode all file names in manifest\n"
+msgstr ""
+"      --no-verify-checksums\n"
+"                         no verificar checksums\n"
+
+#: pg_basebackup.c:411
+#, c-format
+msgid "      --no-estimate-size do not estimate backup size in server side\n"
+msgstr ""
+
+#: pg_basebackup.c:412
+#, fuzzy, c-format
+#| msgid "      --no-slot          prevent creation of temporary replication slot\n"
+msgid "      --no-manifest      suppress generation of backup manifest\n"
+msgstr "      --no-slot          evitar la creación de un slot de replicación temporal\n"
+
+#: pg_basebackup.c:413
 #, c-format
 msgid "      --no-slot          prevent creation of temporary replication slot\n"
 msgstr "      --no-slot          evitar la creación de un slot de replicación temporal\n"
 
-#: pg_basebackup.c:356
+#: pg_basebackup.c:414
 #, c-format
 msgid ""
 "      --no-verify-checksums\n"
@@ -322,12 +357,12 @@ msgstr ""
 "      --no-verify-checksums\n"
 "                         no verificar checksums\n"
 
-#: pg_basebackup.c:358 pg_receivewal.c:96 pg_recvlogical.c:101
+#: pg_basebackup.c:416 pg_receivewal.c:94 pg_recvlogical.c:98
 #, c-format
 msgid "  -?, --help             show this help, then exit\n"
 msgstr "  -?, --help             mostrar esta ayuda, luego salir\n"
 
-#: pg_basebackup.c:359 pg_receivewal.c:97 pg_recvlogical.c:102
+#: pg_basebackup.c:417 pg_receivewal.c:95 pg_recvlogical.c:99
 #, c-format
 msgid ""
 "\n"
@@ -336,22 +371,22 @@ msgstr ""
 "\n"
 "Opciones de conexión:\n"
 
-#: pg_basebackup.c:360 pg_receivewal.c:98
+#: pg_basebackup.c:418 pg_receivewal.c:96
 #, c-format
 msgid "  -d, --dbname=CONNSTR   connection string\n"
 msgstr "  -s, --dbname=CONSTR    cadena de conexión\n"
 
-#: pg_basebackup.c:361 pg_receivewal.c:99 pg_recvlogical.c:104
+#: pg_basebackup.c:419 pg_receivewal.c:97 pg_recvlogical.c:101
 #, c-format
 msgid "  -h, --host=HOSTNAME    database server host or socket directory\n"
 msgstr "  -h, --host=ANFITRIÓN   dirección del servidor o directorio del socket\n"
 
-#: pg_basebackup.c:362 pg_receivewal.c:100 pg_recvlogical.c:105
+#: pg_basebackup.c:420 pg_receivewal.c:98 pg_recvlogical.c:102
 #, c-format
 msgid "  -p, --port=PORT        database server port number\n"
 msgstr "  -p, --port=PORT        número de port del servidor\n"
 
-#: pg_basebackup.c:363
+#: pg_basebackup.c:421
 #, c-format
 msgid ""
 "  -s, --status-interval=INTERVAL\n"
@@ -360,464 +395,501 @@ msgstr ""
 "  -s, --status-interval=INTERVALO (segundos)\n"
 "                         tiempo entre envíos de paquetes de estado al servidor\n"
 
-#: pg_basebackup.c:365 pg_receivewal.c:101 pg_recvlogical.c:106
+#: pg_basebackup.c:423 pg_receivewal.c:99 pg_recvlogical.c:103
 #, c-format
 msgid "  -U, --username=NAME    connect as specified database user\n"
 msgstr "  -U, --username=NOMBRE  conectarse con el usuario especificado\n"
 
-#: pg_basebackup.c:366 pg_receivewal.c:102 pg_recvlogical.c:107
+#: pg_basebackup.c:424 pg_receivewal.c:100 pg_recvlogical.c:104
 #, c-format
 msgid "  -w, --no-password      never prompt for password\n"
 msgstr "  -w, --no-password      nunca pedir contraseña\n"
 
-#: pg_basebackup.c:367 pg_receivewal.c:103 pg_recvlogical.c:108
+#: pg_basebackup.c:425 pg_receivewal.c:101 pg_recvlogical.c:105
 #, c-format
 msgid "  -W, --password         force password prompt (should happen automatically)\n"
 msgstr ""
 "  -W, --password         forzar un prompt para la contraseña\n"
 "                         (debería ser automático)\n"
 
-#: pg_basebackup.c:368 pg_receivewal.c:107 pg_recvlogical.c:109
+#: pg_basebackup.c:426 pg_receivewal.c:105 pg_recvlogical.c:106
 #, c-format
 msgid ""
 "\n"
-"Report bugs to <pgsql-bugs@lists.postgresql.org>.\n"
+"Report bugs to <%s>.\n"
 msgstr ""
-"\n"
-"Reporte errores a <pgsql-bugs@lists.postgresql.org>.\n"
 
-#: pg_basebackup.c:411
+#: pg_basebackup.c:427 pg_receivewal.c:106 pg_recvlogical.c:107
+#, c-format
+msgid "%s home page: <%s>\n"
+msgstr ""
+
+#: pg_basebackup.c:470
 #, c-format
 msgid "could not read from ready pipe: %m"
 msgstr "no se pudo leer desde la tubería: %m"
 
-#: pg_basebackup.c:417 pg_basebackup.c:548 pg_basebackup.c:2098
+#: pg_basebackup.c:476 pg_basebackup.c:607 pg_basebackup.c:2115
 #: streamutil.c:450
 #, c-format
 msgid "could not parse write-ahead log location \"%s\""
 msgstr "no se pudo interpretar la ubicación del WAL «%s»"
 
-#: pg_basebackup.c:513 pg_receivewal.c:442
+#: pg_basebackup.c:572 pg_receivewal.c:441
 #, c-format
 msgid "could not finish writing WAL files: %m"
 msgstr "no se pudo completar la escritura de archivos WAL: %m"
 
-#: pg_basebackup.c:560
+#: pg_basebackup.c:619
 #, c-format
 msgid "could not create pipe for background process: %m"
 msgstr "no se pudo crear la tubería para el proceso en segundo plano: %m"
 
-#: pg_basebackup.c:595
+#: pg_basebackup.c:654
 #, c-format
 msgid "created temporary replication slot \"%s\""
 msgstr "se creó slot temporal de replicación «%s»"
 
-#: pg_basebackup.c:598
+#: pg_basebackup.c:657
 #, c-format
 msgid "created replication slot \"%s\""
 msgstr "se creó el slot de replicación «%s»"
 
-#: pg_basebackup.c:618 pg_basebackup.c:671 pg_basebackup.c:1507
+#: pg_basebackup.c:677 pg_basebackup.c:730 pg_basebackup.c:1606
 #, c-format
 msgid "could not create directory \"%s\": %m"
 msgstr "no se pudo crear el directorio «%s»: %m"
 
-#: pg_basebackup.c:636
+#: pg_basebackup.c:695
 #, c-format
 msgid "could not create background process: %m"
 msgstr "no se pudo lanzar el proceso en segundo plano: %m"
 
-#: pg_basebackup.c:648
+#: pg_basebackup.c:707
 #, c-format
 msgid "could not create background thread: %m"
 msgstr "no se pudo lanzar el hilo en segundo plano: %m"
 
-#: pg_basebackup.c:692
+#: pg_basebackup.c:751
 #, c-format
 msgid "directory \"%s\" exists but is not empty"
 msgstr "el directorio «%s» existe pero no está vacío"
 
-#: pg_basebackup.c:699
+#: pg_basebackup.c:758
 #, c-format
 msgid "could not access directory \"%s\": %m"
 msgstr "no se pudo acceder al directorio «%s»: %m"
 
-#: pg_basebackup.c:760
+#: pg_basebackup.c:819
 #, c-format
 msgid "%*s/%s kB (100%%), %d/%d tablespace %*s"
 msgid_plural "%*s/%s kB (100%%), %d/%d tablespaces %*s"
 msgstr[0] "%*s/%s kB (100%%), %d/%d tablespace %*s"
 msgstr[1] "%*s/%s kB (100%%), %d/%d tablespaces %*s"
 
-#: pg_basebackup.c:772
+#: pg_basebackup.c:831
 #, c-format
 msgid "%*s/%s kB (%d%%), %d/%d tablespace (%s%-*.*s)"
 msgid_plural "%*s/%s kB (%d%%), %d/%d tablespaces (%s%-*.*s)"
 msgstr[0] "%*s/%s kB (%d%%), %d/%d tablespace (%s%-*.*s)"
 msgstr[1] "%*s/%s kB (%d%%), %d/%d tablespaces (%s%-*.*s)"
 
-#: pg_basebackup.c:788
+#: pg_basebackup.c:847
 #, c-format
 msgid "%*s/%s kB (%d%%), %d/%d tablespace"
 msgid_plural "%*s/%s kB (%d%%), %d/%d tablespaces"
 msgstr[0] "%*s/%s kB (%d%%), %d/%d tablespace"
 msgstr[1] "%*s/%s kB (%d%%), %d/%d tablespaces"
 
-#: pg_basebackup.c:812
+#: pg_basebackup.c:871
 #, c-format
 msgid "transfer rate \"%s\" is not a valid value"
 msgstr "tasa de transferencia «%s» no es un valor válido"
 
-#: pg_basebackup.c:817
+#: pg_basebackup.c:876
 #, c-format
 msgid "invalid transfer rate \"%s\": %m"
 msgstr "tasa de transferencia «%s» no válida: %m"
 
-#: pg_basebackup.c:826
+#: pg_basebackup.c:885
 #, c-format
 msgid "transfer rate must be greater than zero"
 msgstr "tasa de transferencia debe ser mayor que cero"
 
-#: pg_basebackup.c:858
+#: pg_basebackup.c:917
 #, c-format
 msgid "invalid --max-rate unit: \"%s\""
 msgstr "unidad de --max-rato no válida: «%s»"
 
-#: pg_basebackup.c:865
+#: pg_basebackup.c:924
 #, c-format
 msgid "transfer rate \"%s\" exceeds integer range"
 msgstr "la tasa de transferencia «%s» excede el rango de enteros"
 
-#: pg_basebackup.c:875
+#: pg_basebackup.c:934
 #, c-format
 msgid "transfer rate \"%s\" is out of range"
 msgstr "la tasa de transferencia «%s» está fuera de rango"
 
-#: pg_basebackup.c:897
-#, c-format
-msgid "could not write to compressed file \"%s\": %s"
-msgstr "no se pudo escribir al archivo comprimido «%s»: %s"
-
-#: pg_basebackup.c:907 pg_basebackup.c:1596 pg_basebackup.c:1766
-#, c-format
-msgid "could not write to file \"%s\": %m"
-msgstr "no se pudo escribir a archivo «%s»: %m"
-
-#: pg_basebackup.c:972 pg_basebackup.c:992 pg_basebackup.c:1019
-#, c-format
-msgid "could not set compression level %d: %s"
-msgstr "no se pudo definir el nivel de compresión %d: %s"
-
-#: pg_basebackup.c:1039
-#, c-format
-msgid "could not create compressed file \"%s\": %s"
-msgstr "no se pudo crear el archivo comprimido «%s»: %s"
-
-#: pg_basebackup.c:1050 pg_basebackup.c:1557 pg_basebackup.c:1778
-#, c-format
-msgid "could not create file \"%s\": %m"
-msgstr "no se pudo crear archivo «%s»: %m"
-
-#: pg_basebackup.c:1061 pg_basebackup.c:1416
+#: pg_basebackup.c:955
 #, c-format
 msgid "could not get COPY data stream: %s"
 msgstr "no se pudo obtener un flujo de datos COPY: %s"
 
-#: pg_basebackup.c:1146
-#, c-format
-msgid "could not close compressed file \"%s\": %s"
-msgstr "no se pudo cerrar el archivo comprimido «%s»: %s"
-
-#: pg_basebackup.c:1158 pg_recvlogical.c:608
-#, c-format
-msgid "could not close file \"%s\": %m"
-msgstr "no se pudo cerrar el archivo «%s»: %m"
-
-#: pg_basebackup.c:1169 pg_basebackup.c:1445 pg_recvlogical.c:437
-#: receivelog.c:968
+#: pg_basebackup.c:975 pg_recvlogical.c:435 pg_recvlogical.c:607
+#: receivelog.c:965
 #, c-format
 msgid "could not read COPY data: %s"
 msgstr "no fue posible leer datos COPY: %s"
 
-#: pg_basebackup.c:1459
+#: pg_basebackup.c:997
 #, c-format
-msgid "invalid tar block header size: %d"
-msgstr "tamaño de bloque de cabecera de tar no válido: %d"
+msgid "could not write to compressed file \"%s\": %s"
+msgstr "no se pudo escribir al archivo comprimido «%s»: %s"
 
-#: pg_basebackup.c:1514
+#: pg_basebackup.c:1007 pg_basebackup.c:1696 pg_basebackup.c:1748
 #, c-format
-msgid "could not set permissions on directory \"%s\": %m"
-msgstr "no se pudo definir los permisos del directorio «%s»: %m"
+msgid "could not write to file \"%s\": %m"
+msgstr "no se pudo escribir a archivo «%s»: %m"
 
-#: pg_basebackup.c:1537
+#: pg_basebackup.c:1057
+#, fuzzy, c-format
+#| msgid "could not redirect stdout: %m"
+msgid "could not duplicate stdout: %m"
+msgstr "no se pudo redirigir stdout: %m"
+
+#: pg_basebackup.c:1064
 #, c-format
-msgid "could not create symbolic link from \"%s\" to \"%s\": %m"
-msgstr "no se pudo crear un enlace simbólico desde «%s» a «%s»: %m"
+msgid "could not open output file: %m"
+msgstr "no se pudo abrir el archivo de salida: %m"
 
-#: pg_basebackup.c:1544
+#: pg_basebackup.c:1071 pg_basebackup.c:1092 pg_basebackup.c:1121
 #, c-format
-msgid "unrecognized link indicator \"%c\""
-msgstr "indicador de enlace «%c» no reconocido"
+msgid "could not set compression level %d: %s"
+msgstr "no se pudo definir el nivel de compresión %d: %s"
 
-#: pg_basebackup.c:1563
+#: pg_basebackup.c:1141
 #, c-format
-msgid "could not set permissions on file \"%s\": %m"
-msgstr "no se pudo definir los permisos al archivo «%s»: %m"
+msgid "could not create compressed file \"%s\": %s"
+msgstr "no se pudo crear el archivo comprimido «%s»: %s"
 
-#: pg_basebackup.c:1620
+#: pg_basebackup.c:1152 pg_basebackup.c:1657 pg_basebackup.c:1729
 #, c-format
-msgid "COPY stream ended before last file was finished"
-msgstr "el flujo COPY terminó antes que el último archivo estuviera completo"
+msgid "could not create file \"%s\": %m"
+msgstr "no se pudo crear archivo «%s»: %m"
 
-#: pg_basebackup.c:1647 pg_basebackup.c:1667 pg_basebackup.c:1681
-#: pg_basebackup.c:1727
+#: pg_basebackup.c:1234
 #, c-format
 msgid "out of memory"
 msgstr "memoria agotada"
 
-#: pg_basebackup.c:1819
+#: pg_basebackup.c:1253
+#, c-format
+msgid "could not close compressed file \"%s\": %s"
+msgstr "no se pudo cerrar el archivo comprimido «%s»: %s"
+
+#: pg_basebackup.c:1265 pg_recvlogical.c:632
+#, c-format
+msgid "could not close file \"%s\": %m"
+msgstr "no se pudo cerrar el archivo «%s»: %m"
+
+#: pg_basebackup.c:1527
+#, c-format
+msgid "COPY stream ended before last file was finished"
+msgstr "el flujo COPY terminó antes que el último archivo estuviera completo"
+
+#: pg_basebackup.c:1556
+#, fuzzy, c-format
+#| msgid "invalid tar block header size: %d"
+msgid "invalid tar block header size: %zu"
+msgstr "tamaño de bloque de cabecera de tar no válido: %d"
+
+#: pg_basebackup.c:1613
+#, c-format
+msgid "could not set permissions on directory \"%s\": %m"
+msgstr "no se pudo definir los permisos del directorio «%s»: %m"
+
+#: pg_basebackup.c:1637
+#, c-format
+msgid "could not create symbolic link from \"%s\" to \"%s\": %m"
+msgstr "no se pudo crear un enlace simbólico desde «%s» a «%s»: %m"
+
+#: pg_basebackup.c:1644
+#, c-format
+msgid "unrecognized link indicator \"%c\""
+msgstr "indicador de enlace «%c» no reconocido"
+
+#: pg_basebackup.c:1663
+#, c-format
+msgid "could not set permissions on file \"%s\": %m"
+msgstr "no se pudo definir los permisos al archivo «%s»: %m"
+
+#: pg_basebackup.c:1809
 #, c-format
 msgid "incompatible server version %s"
 msgstr "versión del servidor %s incompatible"
 
-#: pg_basebackup.c:1834
+#: pg_basebackup.c:1824
 #, c-format
 msgid "HINT: use -X none or -X fetch to disable log streaming"
 msgstr "SUGERENCIA: use -X none o -X fetch para deshabilitar el flujo de log"
 
-#: pg_basebackup.c:1859
+#: pg_basebackup.c:1860
 #, c-format
 msgid "initiating base backup, waiting for checkpoint to complete"
 msgstr "iniciando el respaldo base, esperando que el checkpoint se complete"
 
-#: pg_basebackup.c:1883 pg_recvlogical.c:264 receivelog.c:484 receivelog.c:533
-#: receivelog.c:572 streamutil.c:299 streamutil.c:370 streamutil.c:422
+#: pg_basebackup.c:1886 pg_recvlogical.c:262 receivelog.c:481 receivelog.c:530
+#: receivelog.c:569 streamutil.c:297 streamutil.c:370 streamutil.c:422
 #: streamutil.c:533 streamutil.c:578
 #, c-format
 msgid "could not send replication command \"%s\": %s"
 msgstr "no se pudo ejecutar la orden de replicación «%s»: %s"
 
-#: pg_basebackup.c:1894
+#: pg_basebackup.c:1897
 #, c-format
 msgid "could not initiate base backup: %s"
 msgstr "no se pudo iniciar el respaldo base: %s"
 
-#: pg_basebackup.c:1900
+#: pg_basebackup.c:1903
 #, c-format
 msgid "server returned unexpected response to BASE_BACKUP command; got %d rows and %d fields, expected %d rows and %d fields"
 msgstr "el servidor envió una respuesta inesperada a la orden BASE_BACKUP; se obtuvieron %d filas y %d campos, se esperaban %d filas y %d campos"
 
-#: pg_basebackup.c:1908
+#: pg_basebackup.c:1911
 #, c-format
 msgid "checkpoint completed"
 msgstr "el checkpoint se ha completado"
 
-#: pg_basebackup.c:1923
+#: pg_basebackup.c:1926
 #, c-format
 msgid "write-ahead log start point: %s on timeline %u"
 msgstr "punto de inicio del WAL: %s en el timeline %u"
 
-#: pg_basebackup.c:1932
+#: pg_basebackup.c:1935
 #, c-format
 msgid "could not get backup header: %s"
 msgstr "no se pudo obtener la cabecera de respaldo: %s"
 
-#: pg_basebackup.c:1938
+#: pg_basebackup.c:1941
 #, c-format
 msgid "no data returned from server"
 msgstr "el servidor no retornó datos"
 
-#: pg_basebackup.c:1969
+#: pg_basebackup.c:1973
 #, c-format
 msgid "can only write single tablespace to stdout, database has %d"
 msgstr "sólo se puede escribir un tablespace a stdout, la base de datos tiene %d"
 
-#: pg_basebackup.c:1981
+#: pg_basebackup.c:1985
 #, c-format
 msgid "starting background WAL receiver"
 msgstr "iniciando el receptor de WAL en segundo plano"
 
-#: pg_basebackup.c:2011
+#: pg_basebackup.c:2028
 #, c-format
 msgid "could not get write-ahead log end position from server: %s"
 msgstr "no se pudo obtener la posición final del WAL del servidor: %s"
 
-#: pg_basebackup.c:2017
+#: pg_basebackup.c:2034
 #, c-format
 msgid "no write-ahead log end position returned from server"
 msgstr "el servidor no retornó la posición final del WAL"
 
-#: pg_basebackup.c:2022
+#: pg_basebackup.c:2039
 #, c-format
 msgid "write-ahead log end point: %s"
 msgstr "posición final del WAL: %s"
 
-#: pg_basebackup.c:2033
+#: pg_basebackup.c:2050
 #, c-format
 msgid "checksum error occurred"
 msgstr "ocurrió un error de checksums"
 
-#: pg_basebackup.c:2038
+#: pg_basebackup.c:2055
 #, c-format
 msgid "final receive failed: %s"
 msgstr "la recepción final falló: %s"
 
-#: pg_basebackup.c:2062
+#: pg_basebackup.c:2079
 #, c-format
 msgid "waiting for background process to finish streaming ..."
 msgstr "esperando que el proceso en segundo plano complete el flujo..."
 
-#: pg_basebackup.c:2067
+#: pg_basebackup.c:2084
 #, c-format
 msgid "could not send command to background pipe: %m"
 msgstr "no se pudo enviar una orden a la tubería de segundo plano: %m"
 
-#: pg_basebackup.c:2075
+#: pg_basebackup.c:2092
 #, c-format
 msgid "could not wait for child process: %m"
 msgstr "no se pudo esperar al proceso hijo: %m"
 
-#: pg_basebackup.c:2080
+#: pg_basebackup.c:2097
 #, c-format
 msgid "child %d died, expected %d"
 msgstr "el hijo %d murió, pero se esperaba al %d"
 
-#: pg_basebackup.c:2085 streamutil.c:94
+#: pg_basebackup.c:2102 streamutil.c:92
 #, c-format
 msgid "%s"
 msgstr "%s"
 
-#: pg_basebackup.c:2110
+#: pg_basebackup.c:2127
 #, c-format
 msgid "could not wait for child thread: %m"
 msgstr "no se pudo esperar el hilo hijo: %m"
 
-#: pg_basebackup.c:2116
+#: pg_basebackup.c:2133
 #, c-format
 msgid "could not get child thread exit status: %m"
 msgstr "no se pudo obtener la cabecera de respaldo: %m"
 
-#: pg_basebackup.c:2121
+#: pg_basebackup.c:2138
 #, c-format
 msgid "child thread exited with error %u"
 msgstr "el hilo hijo terminó con error %u"
 
-#: pg_basebackup.c:2149
+#: pg_basebackup.c:2166
 #, c-format
 msgid "syncing data to disk ..."
 msgstr "sincronizando datos a disco ..."
 
-#: pg_basebackup.c:2162
+#: pg_basebackup.c:2191
+#, c-format
+msgid "renaming backup_manifest.tmp to backup_manifest"
+msgstr ""
+
+#: pg_basebackup.c:2202
 #, c-format
 msgid "base backup completed"
 msgstr "el respaldo base se ha completado"
 
-#: pg_basebackup.c:2243
+#: pg_basebackup.c:2287
 #, c-format
-#| msgid "invalid output format \"%s\", must be \"plain\" or \"tar\"\n"
 msgid "invalid output format \"%s\", must be \"plain\" or \"tar\""
 msgstr "formato de salida «%s» no válido, debe ser «plain» o «tar»"
 
-#: pg_basebackup.c:2287
+#: pg_basebackup.c:2331
 #, c-format
 msgid "invalid wal-method option \"%s\", must be \"fetch\", \"stream\", or \"none\""
 msgstr "opción de wal-method «%s» no válida, debe ser «fetch», «stream» o «none»"
 
-#: pg_basebackup.c:2315 pg_receivewal.c:581
+#: pg_basebackup.c:2359 pg_receivewal.c:580
 #, c-format
 msgid "invalid compression level \"%s\""
 msgstr "valor de compresión «%s» no válido"
 
-#: pg_basebackup.c:2326
+#: pg_basebackup.c:2370
 #, c-format
 msgid "invalid checkpoint argument \"%s\", must be \"fast\" or \"spread\""
 msgstr "argumento de checkpoint «%s» no válido, debe ser «fast» o «spread»"
 
-#: pg_basebackup.c:2353 pg_receivewal.c:556 pg_recvlogical.c:796
+#: pg_basebackup.c:2397 pg_receivewal.c:555 pg_recvlogical.c:820
 #, c-format
 msgid "invalid status interval \"%s\""
 msgstr "intervalo de estado «%s» no válido"
 
-#: pg_basebackup.c:2371 pg_basebackup.c:2384 pg_basebackup.c:2395
-#: pg_basebackup.c:2406 pg_basebackup.c:2414 pg_basebackup.c:2422
-#: pg_basebackup.c:2432 pg_basebackup.c:2445 pg_basebackup.c:2453
-#: pg_basebackup.c:2464 pg_basebackup.c:2474 pg_receivewal.c:606
-#: pg_receivewal.c:619 pg_receivewal.c:627 pg_receivewal.c:637
-#: pg_receivewal.c:645 pg_receivewal.c:656 pg_recvlogical.c:822
-#: pg_recvlogical.c:835 pg_recvlogical.c:846 pg_recvlogical.c:854
-#: pg_recvlogical.c:862 pg_recvlogical.c:870 pg_recvlogical.c:878
-#: pg_recvlogical.c:886 pg_recvlogical.c:894
+#: pg_basebackup.c:2427 pg_basebackup.c:2440 pg_basebackup.c:2451
+#: pg_basebackup.c:2462 pg_basebackup.c:2470 pg_basebackup.c:2478
+#: pg_basebackup.c:2488 pg_basebackup.c:2501 pg_basebackup.c:2509
+#: pg_basebackup.c:2520 pg_basebackup.c:2530 pg_basebackup.c:2547
+#: pg_basebackup.c:2555 pg_basebackup.c:2563 pg_receivewal.c:605
+#: pg_receivewal.c:618 pg_receivewal.c:626 pg_receivewal.c:636
+#: pg_receivewal.c:644 pg_receivewal.c:655 pg_recvlogical.c:846
+#: pg_recvlogical.c:859 pg_recvlogical.c:870 pg_recvlogical.c:878
+#: pg_recvlogical.c:886 pg_recvlogical.c:894 pg_recvlogical.c:902
+#: pg_recvlogical.c:910 pg_recvlogical.c:918
 #, c-format
 msgid "Try \"%s --help\" for more information.\n"
 msgstr "Use «%s --help» para obtener más información.\n"
 
-#: pg_basebackup.c:2382 pg_receivewal.c:617 pg_recvlogical.c:833
+#: pg_basebackup.c:2438 pg_receivewal.c:616 pg_recvlogical.c:857
 #, c-format
 msgid "too many command-line arguments (first is \"%s\")"
 msgstr "demasiados argumentos en la línea de órdenes (el primero es «%s»)"
 
-#: pg_basebackup.c:2394 pg_receivewal.c:655
+#: pg_basebackup.c:2450 pg_receivewal.c:654
 #, c-format
 msgid "no target directory specified"
 msgstr "no se especificó un directorio de salida"
 
-#: pg_basebackup.c:2405
+#: pg_basebackup.c:2461
 #, c-format
 msgid "only tar mode backups can be compressed"
 msgstr "sólo los respaldos de modo tar pueden ser comprimidos"
 
-#: pg_basebackup.c:2413
+#: pg_basebackup.c:2469
 #, c-format
 msgid "cannot stream write-ahead logs in tar mode to stdout"
 msgstr "no se puede enviar WALs en modo tar a stdout"
 
-#: pg_basebackup.c:2421
+#: pg_basebackup.c:2477
 #, c-format
 msgid "replication slots can only be used with WAL streaming"
 msgstr "los slots de replicación sólo pueden usarse con flujo de WAL"
 
-#: pg_basebackup.c:2431
+#: pg_basebackup.c:2487
 #, c-format
 msgid "--no-slot cannot be used with slot name"
 msgstr "no se puede usar --no-slot junto con nombre de slot"
 
 #. translator: second %s is an option name
-#: pg_basebackup.c:2443 pg_receivewal.c:635
+#: pg_basebackup.c:2499 pg_receivewal.c:634
 #, c-format
 msgid "%s needs a slot to be specified using --slot"
 msgstr "la opcón %s necesita que se especifique un slot con --slot"
 
-#: pg_basebackup.c:2452
+#: pg_basebackup.c:2508
 #, c-format
 msgid "--create-slot and --no-slot are incompatible options"
 msgstr "--create-slot y --no-slot son opciones incompatibles"
 
-#: pg_basebackup.c:2463
+#: pg_basebackup.c:2519
 #, c-format
 msgid "WAL directory location can only be specified in plain mode"
 msgstr "la ubicación del directorio de WAL sólo puede especificarse en modo «plain»"
 
-#: pg_basebackup.c:2473
+#: pg_basebackup.c:2529
 #, c-format
 msgid "WAL directory location must be an absolute path"
 msgstr "la ubicación del directorio de WAL debe ser una ruta absoluta"
 
-#: pg_basebackup.c:2483 pg_receivewal.c:664
+#: pg_basebackup.c:2539 pg_receivewal.c:663
 #, c-format
 msgid "this build does not support compression"
 msgstr "esta instalación no soporta compresión"
 
-#: pg_basebackup.c:2537
+#: pg_basebackup.c:2546
+#, fuzzy, c-format
+#| msgid "--create-slot and --no-slot are incompatible options"
+msgid "--progress and --no-estimate-size are incompatible options"
+msgstr "--create-slot y --no-slot son opciones incompatibles"
+
+#: pg_basebackup.c:2554
+#, fuzzy, c-format
+#| msgid "--create-slot and --no-slot are incompatible options"
+msgid "--no-manifest and --manifest-checksums are incompatible options"
+msgstr "--create-slot y --no-slot son opciones incompatibles"
+
+#: pg_basebackup.c:2562
+#, fuzzy, c-format
+#| msgid "--create-slot and --no-slot are incompatible options"
+msgid "--no-manifest and --manifest-force-encode are incompatible options"
+msgstr "--create-slot y --no-slot son opciones incompatibles"
+
+#: pg_basebackup.c:2621
 #, c-format
 msgid "could not create symbolic link \"%s\": %m"
 msgstr "no se pudo crear el enlace simbólico «%s»: %m"
 
-#: pg_basebackup.c:2541
+#: pg_basebackup.c:2625
 #, c-format
 msgid "symlinks are not supported on this platform"
 msgstr "los enlaces simbólicos no están soportados en esta plataforma"
 
-#: pg_receivewal.c:79
+#: pg_receivewal.c:77
 #, c-format
 msgid ""
 "%s receives PostgreSQL streaming write-ahead logs.\n"
@@ -826,7 +898,7 @@ msgstr ""
 "%s recibe flujos del WAL de PostgreSQL.\n"
 "\n"
 
-#: pg_receivewal.c:83 pg_recvlogical.c:84
+#: pg_receivewal.c:81 pg_recvlogical.c:81
 #, c-format
 msgid ""
 "\n"
@@ -835,32 +907,32 @@ msgstr ""
 "\n"
 "Opciones:\n"
 
-#: pg_receivewal.c:84
+#: pg_receivewal.c:82
 #, c-format
 msgid "  -D, --directory=DIR    receive write-ahead log files into this directory\n"
 msgstr "  -D, --directory=DIR    recibir los archivos de WAL en este directorio\n"
 
-#: pg_receivewal.c:85 pg_recvlogical.c:85
+#: pg_receivewal.c:83 pg_recvlogical.c:82
 #, c-format
 msgid "  -E, --endpos=LSN       exit after receiving the specified LSN\n"
 msgstr "  -E, --endpos=LSN       salir luego de recibir el LSN especificado\n"
 
-#: pg_receivewal.c:86 pg_recvlogical.c:89
+#: pg_receivewal.c:84 pg_recvlogical.c:86
 #, c-format
 msgid "      --if-not-exists    do not error if slot already exists when creating a slot\n"
 msgstr "      --if-not-exists    no abandonar si el slot ya existe al crear un slot\n"
 
-#: pg_receivewal.c:87 pg_recvlogical.c:91
+#: pg_receivewal.c:85 pg_recvlogical.c:88
 #, c-format
 msgid "  -n, --no-loop          do not loop on connection lost\n"
 msgstr "  -n, --no-loop          no entrar en bucle al perder la conexión\n"
 
-#: pg_receivewal.c:88
+#: pg_receivewal.c:86
 #, c-format
 msgid "      --no-sync          do not wait for changes to be written safely to disk\n"
 msgstr "      --no-sync          no esperar que los cambios se sincronicen a disco\n"
 
-#: pg_receivewal.c:89 pg_recvlogical.c:96
+#: pg_receivewal.c:87 pg_recvlogical.c:93
 #, c-format
 msgid ""
 "  -s, --status-interval=SECS\n"
@@ -870,17 +942,17 @@ msgstr ""
 "                         tiempo entre envíos de paquetes de estado al servidor\n"
 "                         (por omisión: %d)\n"
 
-#: pg_receivewal.c:92
+#: pg_receivewal.c:90
 #, c-format
 msgid "      --synchronous      flush write-ahead log immediately after writing\n"
 msgstr "      --synchronous      sincronizar el WAL inmediatamente después de escribir\n"
 
-#: pg_receivewal.c:95
+#: pg_receivewal.c:93
 #, c-format
 msgid "  -Z, --compress=0-9     compress logs with given compression level\n"
 msgstr "  -Z, --compress=0-9     comprimir los segmentos con el nivel de compresión especificado\n"
 
-#: pg_receivewal.c:104
+#: pg_receivewal.c:102
 #, c-format
 msgid ""
 "\n"
@@ -889,123 +961,123 @@ msgstr ""
 "\n"
 "Acciones optativas:\n"
 
-#: pg_receivewal.c:105 pg_recvlogical.c:81
+#: pg_receivewal.c:103 pg_recvlogical.c:78
 #, c-format
 msgid "      --create-slot      create a new replication slot (for the slot's name see --slot)\n"
 msgstr "      --create-slot      crear un nuevo slot de replicación (para el nombre, vea --slot)\n"
 
-#: pg_receivewal.c:106 pg_recvlogical.c:82
+#: pg_receivewal.c:104 pg_recvlogical.c:79
 #, c-format
 msgid "      --drop-slot        drop the replication slot (for the slot's name see --slot)\n"
 msgstr "      --drop-slot        eliminar un slot de replicación (para el nombre, vea --slot)\n"
 
-#: pg_receivewal.c:118
+#: pg_receivewal.c:117
 #, c-format
 msgid "finished segment at %X/%X (timeline %u)"
 msgstr "terminó el segmento en %X/%X (timeline %u)"
 
-#: pg_receivewal.c:125
+#: pg_receivewal.c:124
 #, c-format
 msgid "stopped log streaming at %X/%X (timeline %u)"
 msgstr "detenido el flujo de log en %X/%X (timeline %u)"
 
-#: pg_receivewal.c:141
+#: pg_receivewal.c:140
 #, c-format
 msgid "switched to timeline %u at %X/%X"
 msgstr "cambiado al timeline %u en %X/%X"
 
-#: pg_receivewal.c:151
+#: pg_receivewal.c:150
 #, c-format
 msgid "received interrupt signal, exiting"
 msgstr "se recibió una señal de interrupción, saliendo"
 
-#: pg_receivewal.c:187
+#: pg_receivewal.c:186
 #, c-format
 msgid "could not close directory \"%s\": %m"
 msgstr "no se pudo abrir el directorio «%s»: %m"
 
-#: pg_receivewal.c:273
+#: pg_receivewal.c:272
 #, c-format
 msgid "segment file \"%s\" has incorrect size %d, skipping"
 msgstr "el archivo de segmento «%s» tiene tamaño incorrecto %d, ignorando"
 
-#: pg_receivewal.c:291
+#: pg_receivewal.c:290
 #, c-format
 msgid "could not open compressed file \"%s\": %m"
 msgstr "no se pudo abrir el archivo comprimido «%s»: %m"
 
-#: pg_receivewal.c:297
+#: pg_receivewal.c:296
 #, c-format
 msgid "could not seek in compressed file \"%s\": %m"
 msgstr "no se pudo buscar en el archivo comprimido «%s»: %m"
 
-#: pg_receivewal.c:305
+#: pg_receivewal.c:304
 #, c-format
 msgid "could not read compressed file \"%s\": %m"
 msgstr "no se pudo leer el archivo comprimido «%s»: %m"
 
-#: pg_receivewal.c:308
+#: pg_receivewal.c:307
 #, c-format
 msgid "could not read compressed file \"%s\": read %d of %zu"
 msgstr "no se pudo leer el archivo comprimido «%s»: leídos %d de %zu"
 
-#: pg_receivewal.c:319
+#: pg_receivewal.c:318
 #, c-format
 msgid "compressed segment file \"%s\" has incorrect uncompressed size %d, skipping"
 msgstr "el archivo de segmento «%s» tiene tamaño incorrecto %d al descomprimirse, ignorando"
 
-#: pg_receivewal.c:423
+#: pg_receivewal.c:422
 #, c-format
 msgid "starting log streaming at %X/%X (timeline %u)"
 msgstr "iniciando el flujo de log en %X/%X (timeline %u)"
 
-#: pg_receivewal.c:538 pg_recvlogical.c:738
+#: pg_receivewal.c:537 pg_recvlogical.c:762
 #, c-format
 msgid "invalid port number \"%s\""
 msgstr "número de puerto «%s» no válido"
 
-#: pg_receivewal.c:566 pg_recvlogical.c:764
+#: pg_receivewal.c:565 pg_recvlogical.c:788
 #, c-format
 msgid "could not parse end position \"%s\""
 msgstr "no se pudo interpretar la posición final «%s»"
 
-#: pg_receivewal.c:626
+#: pg_receivewal.c:625
 #, c-format
 msgid "cannot use --create-slot together with --drop-slot"
 msgstr "no puede usarse --create-slot junto con --drop-slot"
 
-#: pg_receivewal.c:644
+#: pg_receivewal.c:643
 #, c-format
 msgid "cannot use --synchronous together with --no-sync"
 msgstr "no puede usarse --synchronous junto con --no-sync"
 
-#: pg_receivewal.c:720
+#: pg_receivewal.c:719
 #, c-format
 msgid "replication connection using slot \"%s\" is unexpectedly database specific"
 msgstr "la conexión de replicación usando el slot «%s» es inesperadamente específica a una base de datos"
 
-#: pg_receivewal.c:731 pg_recvlogical.c:942
+#: pg_receivewal.c:730 pg_recvlogical.c:966
 #, c-format
 msgid "dropping replication slot \"%s\""
 msgstr "eliminando el slot de replicación «%s»"
 
-#: pg_receivewal.c:742 pg_recvlogical.c:952
+#: pg_receivewal.c:741 pg_recvlogical.c:976
 #, c-format
 msgid "creating replication slot \"%s\""
 msgstr "creando el slot de replicación «%s»"
 
-#: pg_receivewal.c:768 pg_recvlogical.c:977
+#: pg_receivewal.c:767 pg_recvlogical.c:1001
 #, c-format
 msgid "disconnected"
 msgstr "desconectado"
 
 #. translator: check source for value for %d
-#: pg_receivewal.c:774 pg_recvlogical.c:983
+#: pg_receivewal.c:773 pg_recvlogical.c:1007
 #, c-format
 msgid "disconnected; waiting %d seconds to try again"
 msgstr "desconectado; esperando %d segundos para intentar nuevamente"
 
-#: pg_recvlogical.c:76
+#: pg_recvlogical.c:73
 #, c-format
 msgid ""
 "%s controls PostgreSQL logical decoding streams.\n"
@@ -1014,7 +1086,7 @@ msgstr ""
 "%s controla flujos de decodificación lógica de PostgreSQL.\n"
 "\n"
 
-#: pg_recvlogical.c:80
+#: pg_recvlogical.c:77
 #, c-format
 msgid ""
 "\n"
@@ -1023,17 +1095,17 @@ msgstr ""
 "\n"
 "Acciones a ejecutar:\n"
 
-#: pg_recvlogical.c:83
+#: pg_recvlogical.c:80
 #, c-format
 msgid "      --start            start streaming in a replication slot (for the slot's name see --slot)\n"
 msgstr "      --start            iniciar flujo en un slot de replicación (para el nombre, vea --slot)\n"
 
-#: pg_recvlogical.c:86
+#: pg_recvlogical.c:83
 #, c-format
 msgid "  -f, --file=FILE        receive log into this file, - for stdout\n"
 msgstr "  -f, --file=ARCHIVO     recibir el log en este archivo, - para stdout\n"
 
-#: pg_recvlogical.c:87
+#: pg_recvlogical.c:84
 #, c-format
 msgid ""
 "  -F  --fsync-interval=SECS\n"
@@ -1042,12 +1114,12 @@ msgstr ""
 "  -F, --fsync-interval=SEGS\n"
 "                         tiempo entre fsyncs del archivo de salida (omisión: %d)\n"
 
-#: pg_recvlogical.c:90
+#: pg_recvlogical.c:87
 #, c-format
 msgid "  -I, --startpos=LSN     where in an existing slot should the streaming start\n"
 msgstr "  -I, --startpos=LSN     dónde en un slot existente debe empezar el flujo\n"
 
-#: pg_recvlogical.c:92
+#: pg_recvlogical.c:89
 #, c-format
 msgid ""
 "  -o, --option=NAME[=VALUE]\n"
@@ -1058,325 +1130,323 @@ msgstr ""
 "                         pasar opción NOMBRE con valor opcional VALOR al\n"
 "                         plugin de salida\n"
 
-#: pg_recvlogical.c:95
+#: pg_recvlogical.c:92
 #, c-format
 msgid "  -P, --plugin=PLUGIN    use output plugin PLUGIN (default: %s)\n"
 msgstr "  -P, --plugin=PLUGIN    usar plug-in de salida PLUGIN (omisión: %s)\n"
 
-#: pg_recvlogical.c:98
+#: pg_recvlogical.c:95
 #, c-format
 msgid "  -S, --slot=SLOTNAME    name of the logical replication slot\n"
 msgstr "  -S, --slot=NOMBRE-SLOT nombre del slot de replicación lógica\n"
 
-#: pg_recvlogical.c:103
+#: pg_recvlogical.c:100
 #, c-format
 msgid "  -d, --dbname=DBNAME    database to connect to\n"
 msgstr "  -d, --dbname=BASE      base de datos a la cual conectarse\n"
 
-#: pg_recvlogical.c:135
+#: pg_recvlogical.c:133
 #, c-format
 msgid "confirming write up to %X/%X, flush to %X/%X (slot %s)"
 msgstr "confirmando escritura hasta %X/%X, fsync hasta %X/%X (slot %s)"
 
-#: pg_recvlogical.c:159 receivelog.c:346
+#: pg_recvlogical.c:157 receivelog.c:343
 #, c-format
 msgid "could not send feedback packet: %s"
 msgstr "no se pudo enviar el paquete de retroalimentación: %s"
 
-#: pg_recvlogical.c:232
+#: pg_recvlogical.c:230
 #, c-format
 msgid "starting log streaming at %X/%X (slot %s)"
 msgstr "iniciando el flujo de log en %X/%X (slot %s)"
 
-#: pg_recvlogical.c:273
+#: pg_recvlogical.c:271
 #, c-format
 msgid "streaming initiated"
 msgstr "flujo iniciado"
 
-#: pg_recvlogical.c:337
+#: pg_recvlogical.c:335
 #, c-format
 msgid "could not open log file \"%s\": %m"
 msgstr "no se pudo abrir el archivo de registro «%s»: %m"
 
-#: pg_recvlogical.c:363 receivelog.c:876
+#: pg_recvlogical.c:361 receivelog.c:873
 #, c-format
 msgid "invalid socket: %s"
 msgstr "el socket no es válido: %s"
 
-#: pg_recvlogical.c:416 receivelog.c:904
+#: pg_recvlogical.c:414 receivelog.c:901
 #, c-format
 msgid "select() failed: %m"
 msgstr "select() falló: %m"
 
-#: pg_recvlogical.c:423 receivelog.c:954
+#: pg_recvlogical.c:421 receivelog.c:951
 #, c-format
 msgid "could not receive data from WAL stream: %s"
 msgstr "no se pudo recibir datos desde el flujo de WAL: %s"
 
-#: pg_recvlogical.c:465 pg_recvlogical.c:516 receivelog.c:998 receivelog.c:1064
+#: pg_recvlogical.c:463 pg_recvlogical.c:514 receivelog.c:995 receivelog.c:1061
 #, c-format
 msgid "streaming header too small: %d"
 msgstr "cabecera de flujo demasiado pequeña: %d"
 
-#: pg_recvlogical.c:500 receivelog.c:836
+#: pg_recvlogical.c:498 receivelog.c:833
 #, c-format
 msgid "unrecognized streaming header: \"%c\""
 msgstr "cabecera de flujo no reconocida: «%c»"
 
-#: pg_recvlogical.c:554 pg_recvlogical.c:566
+#: pg_recvlogical.c:552 pg_recvlogical.c:564
 #, c-format
 msgid "could not write %u bytes to log file \"%s\": %m"
 msgstr "no se pudo escribir %u bytes al archivo de registro «%s»: %m"
 
-#: pg_recvlogical.c:594 receivelog.c:632 receivelog.c:669
+#: pg_recvlogical.c:618 receivelog.c:629 receivelog.c:666
 #, c-format
 msgid "unexpected termination of replication stream: %s"
 msgstr "término inesperado del flujo de replicación: %s"
 
-#: pg_recvlogical.c:718
+#: pg_recvlogical.c:742
 #, c-format
 msgid "invalid fsync interval \"%s\""
 msgstr "intervalo de fsync «%s» no válido"
 
-#: pg_recvlogical.c:756
+#: pg_recvlogical.c:780
 #, c-format
 msgid "could not parse start position \"%s\""
 msgstr "no se pudo interpretar la posición de inicio «%s»"
 
-#: pg_recvlogical.c:845
+#: pg_recvlogical.c:869
 #, c-format
 msgid "no slot specified"
 msgstr "no se especificó slot"
 
-#: pg_recvlogical.c:853
+#: pg_recvlogical.c:877
 #, c-format
 msgid "no target file specified"
 msgstr "no se especificó un archivo de destino"
 
-#: pg_recvlogical.c:861
+#: pg_recvlogical.c:885
 #, c-format
 msgid "no database specified"
 msgstr "no se especificó una base de datos"
 
-#: pg_recvlogical.c:869
+#: pg_recvlogical.c:893
 #, c-format
 msgid "at least one action needs to be specified"
 msgstr "debe especificarse al menos una operación"
 
-#: pg_recvlogical.c:877
+#: pg_recvlogical.c:901
 #, c-format
 msgid "cannot use --create-slot or --start together with --drop-slot"
 msgstr "no puede usarse --create-slot o --start junto con --drop-slot"
 
-#: pg_recvlogical.c:885
+#: pg_recvlogical.c:909
 #, c-format
 msgid "cannot use --create-slot or --drop-slot together with --startpos"
 msgstr "no puede usarse --create-slot o --drop-slot junto con --startpos"
 
-#: pg_recvlogical.c:893
+#: pg_recvlogical.c:917
 #, c-format
 msgid "--endpos may only be specified with --start"
 msgstr "--endpos solo se puede utilizar con --start"
 
-#: pg_recvlogical.c:924
+#: pg_recvlogical.c:948
 #, c-format
 msgid "could not establish database-specific replication connection"
 msgstr "no se pudo establecer una conexión de replicación específica a una base de datos"
 
-#: pg_recvlogical.c:1023
+#: pg_recvlogical.c:1047
 #, c-format
-#| msgid "endpos %X/%X reached by keepalive"
 msgid "end position %X/%X reached by keepalive"
 msgstr "ubicación de término %X/%X alcanzado por «keep-alive»"
 
-#: pg_recvlogical.c:1026
+#: pg_recvlogical.c:1050
 #, c-format
-#| msgid "endpos %X/%X reached by record at %X/%X"
 msgid "end position %X/%X reached by WAL record at %X/%X"
 msgstr "ubicación de término %X/%X alcanzado por registro WAL en %X/%X"
 
-#: receivelog.c:72
+#: receivelog.c:69
 #, c-format
 msgid "could not create archive status file \"%s\": %s"
 msgstr "no se pudo crear el archivo de estado «%s»: %s"
 
-#: receivelog.c:119
+#: receivelog.c:116
 #, c-format
 msgid "could not get size of write-ahead log file \"%s\": %s"
 msgstr "no se pudo obtener el tamaño del archivo de WAL «%s»: %s"
 
-#: receivelog.c:129
+#: receivelog.c:126
 #, c-format
 msgid "could not open existing write-ahead log file \"%s\": %s"
 msgstr "no se pudo abrir el archivo de WAL «%s»: %s"
 
-#: receivelog.c:137
+#: receivelog.c:134
 #, c-format
 msgid "could not fsync existing write-ahead log file \"%s\": %s"
 msgstr "no se pudo sincronizar (fsync) el archivo de WAL «%s»: %s"
 
-#: receivelog.c:151
+#: receivelog.c:148
 #, c-format
 msgid "write-ahead log file \"%s\" has %d byte, should be 0 or %d"
 msgid_plural "write-ahead log file \"%s\" has %d bytes, should be 0 or %d"
 msgstr[0] "el archivo de WAL «%s» mide %d byte, debería ser 0 o %d"
 msgstr[1] "el archivo de WAL «%s» mide %d bytes, debería ser 0 o %d"
 
-#: receivelog.c:166
+#: receivelog.c:163
 #, c-format
 msgid "could not open write-ahead log file \"%s\": %s"
 msgstr "no se pudo abrir archivo de WAL «%s»: %s"
 
-#: receivelog.c:192
+#: receivelog.c:189
 #, c-format
 msgid "could not determine seek position in file \"%s\": %s"
 msgstr "no se pudo determinar la posición (seek) en el archivo «%s»: %s"
 
-#: receivelog.c:206
+#: receivelog.c:203
 #, c-format
 msgid "not renaming \"%s%s\", segment is not complete"
 msgstr "no se cambiará el nombre a «%s%s», el segmento no está completo"
 
-#: receivelog.c:218 receivelog.c:303 receivelog.c:678
+#: receivelog.c:215 receivelog.c:300 receivelog.c:675
 #, c-format
 msgid "could not close file \"%s\": %s"
 msgstr "no se pudo cerrar el archivo «%s»: %s"
 
-#: receivelog.c:275
+#: receivelog.c:272
 #, c-format
 msgid "server reported unexpected history file name for timeline %u: %s"
 msgstr "el servidor reportó un nombre inesperado para el archivo de historia de timeline %u: %s"
 
-#: receivelog.c:283
+#: receivelog.c:280
 #, c-format
 msgid "could not create timeline history file \"%s\": %s"
 msgstr "no se pudo crear el archivo de historia de timeline «%s»: %s"
 
-#: receivelog.c:290
+#: receivelog.c:287
 #, c-format
 msgid "could not write timeline history file \"%s\": %s"
 msgstr "no se pudo escribir al archivo de historia de timeline «%s»: %s"
 
-#: receivelog.c:380
+#: receivelog.c:377
 #, c-format
 msgid "incompatible server version %s; client does not support streaming from server versions older than %s"
 msgstr "versión de servidor %s incompatible; el cliente no soporta flujos de servidores anteriores a la versión %s"
 
-#: receivelog.c:389
+#: receivelog.c:386
 #, c-format
 msgid "incompatible server version %s; client does not support streaming from server versions newer than %s"
 msgstr "versión de servidor %s incompatible; el cliente no soporta flujos de servidores posteriores a %s"
 
-#: receivelog.c:491 streamutil.c:430 streamutil.c:467
+#: receivelog.c:488 streamutil.c:430 streamutil.c:467
 #, c-format
 msgid "could not identify system: got %d rows and %d fields, expected %d rows and %d or more fields"
 msgstr "no se pudo identificar al sistema: se obtuvieron %d filas y %d campos, se esperaban %d filas y %d o más campos"
 
-#: receivelog.c:498
+#: receivelog.c:495
 #, c-format
 msgid "system identifier does not match between base backup and streaming connection"
 msgstr "el identificador de sistema no coincide entre el respaldo base y la conexión de flujo"
 
-#: receivelog.c:504
+#: receivelog.c:501
 #, c-format
 msgid "starting timeline %u is not present in the server"
 msgstr "el timeline de inicio %u no está presente en el servidor"
 
-#: receivelog.c:545
+#: receivelog.c:542
 #, c-format
 msgid "unexpected response to TIMELINE_HISTORY command: got %d rows and %d fields, expected %d rows and %d fields"
 msgstr "respuesta inesperada a la orden TIMELINE_HISTORY: se obtuvieron %d filas y %d campos, se esperaban %d filas y %d campos"
 
-#: receivelog.c:616
+#: receivelog.c:613
 #, c-format
 msgid "server reported unexpected next timeline %u, following timeline %u"
 msgstr "el servidor reportó un timeline siguiente %u inesperado, a continuación del timeline %u"
 
-#: receivelog.c:622
+#: receivelog.c:619
 #, c-format
 msgid "server stopped streaming timeline %u at %X/%X, but reported next timeline %u to begin at %X/%X"
 msgstr "el servidor paró la transmisión del timeline %u en %X/%X, pero reportó que el siguiente timeline %u comienza en %X/%X"
 
-#: receivelog.c:662
+#: receivelog.c:659
 #, c-format
 msgid "replication stream was terminated before stop point"
 msgstr "el flujo de replicación terminó antes del punto de término"
 
-#: receivelog.c:708
+#: receivelog.c:705
 #, c-format
 msgid "unexpected result set after end-of-timeline: got %d rows and %d fields, expected %d rows and %d fields"
 msgstr "respuesta inesperada después del fin-de-timeline: se obtuvieron %d filas y %d campos, se esperaban %d filas y %d campos"
 
-#: receivelog.c:717
+#: receivelog.c:714
 #, c-format
 msgid "could not parse next timeline's starting point \"%s\""
 msgstr "no se pudo interpretar el punto de inicio del siguiente timeline «%s»"
 
-#: receivelog.c:766 receivelog.c:1018
+#: receivelog.c:763 receivelog.c:1015
 #, c-format
 msgid "could not fsync file \"%s\": %s"
 msgstr "no se pudo sincronizar (fsync) archivo «%s»: %s"
 
-#: receivelog.c:1081
+#: receivelog.c:1078
 #, c-format
 msgid "received write-ahead log record for offset %u with no file open"
 msgstr "se recibió un registro de WAL para el desplazamiento %u sin ningún archivo abierto"
 
-#: receivelog.c:1091
+#: receivelog.c:1088
 #, c-format
 msgid "got WAL data offset %08x, expected %08x"
 msgstr "se obtuvo desplazamiento de datos WAL %08x, se esperaba %08x"
 
-#: receivelog.c:1125
+#: receivelog.c:1122
 #, c-format
 msgid "could not write %u bytes to WAL file \"%s\": %s"
 msgstr "no se pudo escribir %u bytes al archivo WAL «%s»: %s"
 
-#: receivelog.c:1150 receivelog.c:1190 receivelog.c:1221
+#: receivelog.c:1147 receivelog.c:1187 receivelog.c:1218
 #, c-format
 msgid "could not send copy-end packet: %s"
 msgstr "no se pudo enviar el paquete copy-end: %s"
 
-#: streamutil.c:162
+#: streamutil.c:160
 msgid "Password: "
 msgstr "Contraseña: "
 
-#: streamutil.c:187
+#: streamutil.c:185
 #, c-format
 msgid "could not connect to server"
 msgstr "no se pudo conectar al servidor"
 
-#: streamutil.c:204
+#: streamutil.c:202
 #, c-format
 msgid "could not connect to server: %s"
 msgstr "no se pudo conectar al servidor: %s"
 
-#: streamutil.c:233
+#: streamutil.c:231
 #, c-format
 msgid "could not clear search_path: %s"
 msgstr "no se pudo limpiar search_path: %s"
 
-#: streamutil.c:249
+#: streamutil.c:247
 #, c-format
 msgid "could not determine server setting for integer_datetimes"
 msgstr "no se pudo determinar la opción integer_datetimes del servidor"
 
-#: streamutil.c:256
+#: streamutil.c:254
 #, c-format
 msgid "integer_datetimes compile flag does not match server"
 msgstr "la opción de compilación integer_datetimes no coincide con el servidor"
 
-#: streamutil.c:307
+#: streamutil.c:305
 #, c-format
 msgid "could not fetch WAL segment size: got %d rows and %d fields, expected %d rows and %d or more fields"
 msgstr "no se pudo obtener el tamaño del segmento de WAL: se obtuvo %d filas y %d campos, se esperaban %d filas y %d o más campos"
 
-#: streamutil.c:317
+#: streamutil.c:315
 #, c-format
 msgid "WAL segment size could not be parsed"
 msgstr "el tamaño de segmento de WAL no pudo ser analizado"
 
-#: streamutil.c:332
+#: streamutil.c:333
 #, c-format
 msgid "WAL segment size must be a power of two between 1 MB and 1 GB, but the remote server reported a value of %d byte"
 msgid_plural "WAL segment size must be a power of two between 1 MB and 1 GB, but the remote server reported a value of %d bytes"
@@ -1403,37 +1473,41 @@ msgstr "no se pudo create el slot de replicación «%s»: se obtuvieron %d filas
 msgid "could not drop replication slot \"%s\": got %d rows and %d fields, expected %d rows and %d fields"
 msgstr "no se pudo eliminar el slot de replicación «%s»: se obtuvieron %d filas y %d campos, se esperaban %d filas y %d campos"
 
-#: walmethods.c:439 walmethods.c:928
+#: walmethods.c:438 walmethods.c:927
 msgid "could not compress data"
 msgstr "no se pudo comprimir datos"
 
-#: walmethods.c:471
+#: walmethods.c:470
 msgid "could not reset compression stream"
 msgstr "no se pudo restablecer el flujo comprimido"
 
-#: walmethods.c:569
+#: walmethods.c:568
 msgid "could not initialize compression library"
 msgstr "no se pudo inicializar la biblioteca de compresión"
 
-#: walmethods.c:581
+#: walmethods.c:580
 msgid "implementation error: tar files can't have more than one open file"
 msgstr "error de implementación: los archivos tar no pueden tener abierto más de un fichero"
 
-#: walmethods.c:595
+#: walmethods.c:594
 msgid "could not create tar header"
 msgstr "no se pudo crear la cabecera del archivo tar"
 
-#: walmethods.c:609 walmethods.c:649 walmethods.c:844 walmethods.c:855
+#: walmethods.c:608 walmethods.c:648 walmethods.c:843 walmethods.c:854
 msgid "could not change compression parameters"
 msgstr "no se pudo cambiar los parámetros de compresión"
 
-#: walmethods.c:731
+#: walmethods.c:730
 msgid "unlink not supported with compression"
 msgstr "unlink no soportado con compresión"
 
-#: walmethods.c:953
+#: walmethods.c:952
 msgid "could not close compression stream"
 msgstr "no se pudo cerrar el flujo comprimido"
 
-#~ msgid "invalid compression level \"%s\"\n"
-#~ msgstr "valor de compresión «%s» no válido\n"
+#~ msgid ""
+#~ "\n"
+#~ "Report bugs to <pgsql-bugs@lists.postgresql.org>.\n"
+#~ msgstr ""
+#~ "\n"
+#~ "Reporte errores a <pgsql-bugs@lists.postgresql.org>.\n"
diff --git a/src/bin/pg_checksums/po/es.po b/src/bin/pg_checksums/po/es.po
index 7b49ecf4d70..671423c50be 100644
--- a/src/bin/pg_checksums/po/es.po
+++ b/src/bin/pg_checksums/po/es.po
@@ -9,7 +9,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: pg_checksums (PostgreSQL) 12\n"
 "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n"
-"POT-Creation-Date: 2019-09-29 23:45+0000\n"
+"POT-Creation-Date: 2020-05-17 02:47+0000\n"
 "PO-Revision-Date: 2019-09-29 22:13-0300\n"
 "Last-Translator: Álvaro Herrera <alvherre@alvh.no-ip.org>\n"
 "Language-Team: pgsql-es-ayuda <pgsql-es-ayuda@lists.postgresql.org>\n"
@@ -18,26 +18,23 @@ msgstr ""
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 
-#: ../../../src/common/logging.c:188
+#: ../../../src/common/logging.c:236
 #, c-format
 msgid "fatal: "
 msgstr "fatal: "
 
-#: ../../../src/common/logging.c:195
+#: ../../../src/common/logging.c:243
 #, c-format
 msgid "error: "
 msgstr "error: "
 
-#: ../../../src/common/logging.c:202
+#: ../../../src/common/logging.c:250
 #, c-format
 msgid "warning: "
 msgstr "precaución: "
 
 #: pg_checksums.c:75
 #, c-format
-#| msgid ""
-#| "%s enables, disables or verifies data checksums in a PostgreSQL database cluster.\n"
-#| "\n"
 msgid ""
 "%s enables, disables, or verifies data checksums in a PostgreSQL database cluster.\n"
 "\n"
@@ -129,185 +126,188 @@ msgstr ""
 
 #: pg_checksums.c:91
 #, c-format
-msgid "Report bugs to <pgsql-bugs@lists.postgresql.org>.\n"
-msgstr "Reporte errores a <pgsql-bugs@lists.postgresql.org>.\n"
+msgid "Report bugs to <%s>.\n"
+msgstr ""
 
-#: pg_checksums.c:149
+#: pg_checksums.c:92
+#, c-format
+msgid "%s home page: <%s>\n"
+msgstr ""
+
+#: pg_checksums.c:161
 #, c-format
 msgid "%*s/%s MB (%d%%) computed"
 msgstr "%*s/%s MB (%d%%) calculado"
 
-#: pg_checksums.c:186
+#: pg_checksums.c:204
 #, c-format
 msgid "could not open file \"%s\": %m"
 msgstr "no se pudo abrir el archivo «%s»: %m"
 
-#: pg_checksums.c:202
+#: pg_checksums.c:220
 #, c-format
 msgid "could not read block %u in file \"%s\": %m"
 msgstr "no se pudo leer el bloque %u del archivo «%s»: %m"
 
-#: pg_checksums.c:205
+#: pg_checksums.c:223
 #, c-format
 msgid "could not read block %u in file \"%s\": read %d of %d"
 msgstr "no se pudo leer bloque %u en archivo «%s»: leídos %d de %d"
 
-#: pg_checksums.c:222
+#: pg_checksums.c:240
 #, c-format
 msgid "checksum verification failed in file \"%s\", block %u: calculated checksum %X but block contains %X"
 msgstr "verificación de checksums falló en archivo «%s», bloque %u: checksum calculado %X pero bloque contiene %X"
 
-#: pg_checksums.c:237
+#: pg_checksums.c:255
 #, c-format
 msgid "seek failed for block %u in file \"%s\": %m"
 msgstr "posicionamiento (seek) falló para el bloque %u en archivo «%s»: %m"
 
-#: pg_checksums.c:246
+#: pg_checksums.c:264
 #, c-format
 msgid "could not write block %u in file \"%s\": %m"
 msgstr "no se pudo escribir el bloque %u en el archivo «%s»: %m"
 
-#: pg_checksums.c:249
+#: pg_checksums.c:267
 #, c-format
-#| msgid "could not write block %u in file \"%s\": wrote only %d of %d bytes"
 msgid "could not write block %u in file \"%s\": wrote %d of %d"
 msgstr "no se pudo escribir el bloque %u en el archivo «%s»: se escribieron %d de %d"
 
-#: pg_checksums.c:262
+#: pg_checksums.c:280
 #, c-format
 msgid "checksums verified in file \"%s\""
 msgstr "checksums verificados en archivo «%s»"
 
-#: pg_checksums.c:264
+#: pg_checksums.c:282
 #, c-format
 msgid "checksums enabled in file \"%s\""
 msgstr "checksums activados en archivo «%s»"
 
-#: pg_checksums.c:289
+#: pg_checksums.c:307
 #, c-format
 msgid "could not open directory \"%s\": %m"
 msgstr "no se pudo abrir el directorio «%s»: %m"
 
-#: pg_checksums.c:316
+#: pg_checksums.c:334 pg_checksums.c:413
 #, c-format
 msgid "could not stat file \"%s\": %m"
 msgstr "no se pudo hacer stat al archivo «%s»: %m"
 
-#: pg_checksums.c:343
+#: pg_checksums.c:361
 #, c-format
 msgid "invalid segment number %d in file name \"%s\""
 msgstr "número de segmento %d no válido en nombre de archivo «%s»"
 
-#: pg_checksums.c:431
+#: pg_checksums.c:494
 #, c-format
 msgid "invalid filenode specification, must be numeric: %s"
 msgstr "especificación de filenode no válida: deben ser numérica: %s"
 
-#: pg_checksums.c:449 pg_checksums.c:465 pg_checksums.c:475 pg_checksums.c:484
+#: pg_checksums.c:512 pg_checksums.c:528 pg_checksums.c:538 pg_checksums.c:547
 #, c-format
 msgid "Try \"%s --help\" for more information.\n"
 msgstr "Pruebe «%s --help» para mayor información.\n"
 
-#: pg_checksums.c:464
+#: pg_checksums.c:527
 #, c-format
 msgid "no data directory specified"
 msgstr "no se especificó el directorio de datos"
 
-#: pg_checksums.c:473
+#: pg_checksums.c:536
 #, c-format
 msgid "too many command-line arguments (first is \"%s\")"
 msgstr "demasiados argumentos en la línea de órdenes (el primero es «%s»)"
 
-#: pg_checksums.c:483
+#: pg_checksums.c:546
 #, c-format
-#| msgid "--filenode option only possible with --check"
 msgid "option -f/--filenode can only be used with --check"
 msgstr "la opción -f/--filenode sólo puede usarse con --check"
 
-#: pg_checksums.c:493
+#: pg_checksums.c:556
 #, c-format
 msgid "pg_control CRC value is incorrect"
 msgstr "el valor de CRC de pg_control es incorrecto"
 
-#: pg_checksums.c:499
+#: pg_checksums.c:562
 #, c-format
 msgid "cluster is not compatible with this version of pg_checksums"
 msgstr "el clúster no es compatible con esta versión de pg_checksums"
 
-#: pg_checksums.c:505
+#: pg_checksums.c:568
 #, c-format
 msgid "database cluster is not compatible"
 msgstr "el clúster de bases de datos no es compatible"
 
-#: pg_checksums.c:506
+#: pg_checksums.c:569
 #, c-format
 msgid "The database cluster was initialized with block size %u, but pg_checksums was compiled with block size %u.\n"
 msgstr "El clúster fue inicializado con tamaño de bloque %u, pero pg_checksums fue compilado con tamaño de bloques %u.\n"
 
-#: pg_checksums.c:519
+#: pg_checksums.c:582
 #, c-format
 msgid "cluster must be shut down"
 msgstr "el clúster debe estar apagado"
 
-#: pg_checksums.c:526
+#: pg_checksums.c:589
 #, c-format
 msgid "data checksums are not enabled in cluster"
 msgstr "los checksums de datos no están activados en el clúster"
 
-#: pg_checksums.c:533
+#: pg_checksums.c:596
 #, c-format
 msgid "data checksums are already disabled in cluster"
 msgstr "los checksums de datos ya están desactivados en el clúster"
 
-#: pg_checksums.c:540
+#: pg_checksums.c:603
 #, c-format
 msgid "data checksums are already enabled in cluster"
 msgstr "los checksums de datos ya están activados en el clúster"
 
-#: pg_checksums.c:569
+#: pg_checksums.c:632
 #, c-format
 msgid "Checksum operation completed\n"
 msgstr "Operación de checksums completa\n"
 
-#: pg_checksums.c:570
+#: pg_checksums.c:633
 #, c-format
 msgid "Files scanned:  %s\n"
 msgstr "Archivos recorridos:   %s\n"
 
-#: pg_checksums.c:571
+#: pg_checksums.c:634
 #, c-format
 msgid "Blocks scanned: %s\n"
 msgstr "Bloques recorridos:    %s\n"
 
-#: pg_checksums.c:574
+#: pg_checksums.c:637
 #, c-format
 msgid "Bad checksums:  %s\n"
 msgstr "Checksums incorrectos: %s\n"
 
-#: pg_checksums.c:575 pg_checksums.c:602
+#: pg_checksums.c:638 pg_checksums.c:665
 #, c-format
 msgid "Data checksum version: %d\n"
 msgstr "Versión de checksums de datos: %d\n"
 
-#: pg_checksums.c:594
+#: pg_checksums.c:657
 #, c-format
 msgid "syncing data directory"
 msgstr "sincronizando directorio de datos"
 
-#: pg_checksums.c:598
+#: pg_checksums.c:661
 #, c-format
 msgid "updating control file"
 msgstr "actualizando archivo de control"
 
-#: pg_checksums.c:604
+#: pg_checksums.c:667
 #, c-format
 msgid "Checksums enabled in cluster\n"
 msgstr "Checksums activos en el clúster\n"
 
-#: pg_checksums.c:606
+#: pg_checksums.c:669
 #, c-format
 msgid "Checksums disabled in cluster\n"
 msgstr "Checksums inactivos en el clúster\n"
 
-#~ msgid "could not update checksum of block %u in file \"%s\": %m"
-#~ msgstr "no se pudo actualizar el checksum del bloque %u en archivo «%s»: %m"
+#~ msgid "Report bugs to <pgsql-bugs@lists.postgresql.org>.\n"
+#~ msgstr "Reporte errores a <pgsql-bugs@lists.postgresql.org>.\n"
diff --git a/src/bin/pg_config/po/es.po b/src/bin/pg_config/po/es.po
index 15584c99da3..8164d564bf4 100644
--- a/src/bin/pg_config/po/es.po
+++ b/src/bin/pg_config/po/es.po
@@ -9,7 +9,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: pg_config (PostgreSQL) 12\n"
 "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n"
-"POT-Creation-Date: 2019-09-29 23:43+0000\n"
+"POT-Creation-Date: 2020-05-17 02:44+0000\n"
 "PO-Revision-Date: 2019-06-06 17:22-0400\n"
 "Last-Translator: Carlos Chapi <carlos.chapi@2ndquadrant.com>\n"
 "Language-Team: PgSQL-es-Ayuda <pgsql-es-ayuda@lists.postgresql.org>\n"
@@ -19,50 +19,49 @@ msgstr ""
 "Content-Transfer-Encoding: 8bit\n"
 "X-Generator: Poedit 1.8.7\n"
 
-#: ../../common/config_info.c:130 ../../common/config_info.c:138
-#: ../../common/config_info.c:146 ../../common/config_info.c:154
-#: ../../common/config_info.c:162 ../../common/config_info.c:170
-#: ../../common/config_info.c:178 ../../common/config_info.c:186
-#: ../../common/config_info.c:194
+#: ../../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
+#: ../../common/config_info.c:182 ../../common/config_info.c:190
 msgid "not recorded"
 msgstr "no registrado"
 
-#: ../../common/exec.c:138 ../../common/exec.c:255 ../../common/exec.c:301
+#: ../../common/exec.c:137 ../../common/exec.c:254 ../../common/exec.c:300
 #, c-format
 msgid "could not identify current directory: %m"
 msgstr "no se pudo identificar el directorio actual: %m"
 
-#: ../../common/exec.c:157
+#: ../../common/exec.c:156
 #, c-format
 msgid "invalid binary \"%s\""
 msgstr "el binario «%s» no es válido"
 
-#: ../../common/exec.c:207
+#: ../../common/exec.c:206
 #, c-format
 msgid "could not read binary \"%s\""
 msgstr "no se pudo leer el binario «%s»"
 
-#: ../../common/exec.c:215
+#: ../../common/exec.c:214
 #, c-format
 msgid "could not find a \"%s\" to execute"
 msgstr "no se pudo encontrar un «%s» para ejecutar"
 
-#: ../../common/exec.c:271 ../../common/exec.c:310
+#: ../../common/exec.c:270 ../../common/exec.c:309
 #, c-format
 msgid "could not change directory to \"%s\": %m"
 msgstr "no se pudo cambiar al directorio «%s»: %m"
 
-#: ../../common/exec.c:288
+#: ../../common/exec.c:287
 #, c-format
 msgid "could not read symbolic link \"%s\": %m"
 msgstr "no se pudo leer el enlace simbólico «%s»: %m"
 
-#: ../../common/exec.c:541
+#: ../../common/exec.c:410
 #, c-format
 msgid "pclose failed: %m"
 msgstr "pclose falló: %m"
 
-#: ../../common/exec.c:670 ../../common/exec.c:715 ../../common/exec.c:807
+#: ../../common/exec.c:539 ../../common/exec.c:584 ../../common/exec.c:676
 msgid "out of memory"
 msgstr "memoria agotada"
 
@@ -265,20 +264,28 @@ msgstr ""
 
 #: pg_config.c:105
 #, c-format
-msgid "Report bugs to <pgsql-bugs@lists.postgresql.org>.\n"
-msgstr "Reporte errores a <pgsql-bugs@lists.postgresql.org>.\n"
+msgid "Report bugs to <%s>.\n"
+msgstr ""
 
-#: pg_config.c:111
+#: pg_config.c:106
+#, c-format
+msgid "%s home page: <%s>\n"
+msgstr ""
+
+#: pg_config.c:112
 #, c-format
 msgid "Try \"%s --help\" for more information.\n"
 msgstr "Use «%s --help» para mayor información.\n"
 
-#: pg_config.c:153
+#: pg_config.c:154
 #, c-format
 msgid "%s: could not find own program executable\n"
 msgstr "%s: no se pudo encontrar el ejecutable propio\n"
 
-#: pg_config.c:180
+#: pg_config.c:181
 #, c-format
 msgid "%s: invalid argument: %s\n"
 msgstr "%s: el argumento no es válido: %s\n"
+
+#~ msgid "Report bugs to <pgsql-bugs@lists.postgresql.org>.\n"
+#~ msgstr "Reporte errores a <pgsql-bugs@lists.postgresql.org>.\n"
diff --git a/src/bin/pg_controldata/po/es.po b/src/bin/pg_controldata/po/es.po
index 6c37ec815fc..4a2e360726e 100644
--- a/src/bin/pg_controldata/po/es.po
+++ b/src/bin/pg_controldata/po/es.po
@@ -11,7 +11,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: pg_controldata (PostgreSQL) 12\n"
 "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n"
-"POT-Creation-Date: 2019-09-29 23:45+0000\n"
+"POT-Creation-Date: 2020-05-17 02:47+0000\n"
 "PO-Revision-Date: 2019-06-06 17:23-0400\n"
 "Last-Translator: Carlos Chapi <carlos.chapi@2ndquadrant.com>\n"
 "Language-Team: PgSQL-es-Ayuda <pgsql-es-ayuda@lists.postgresql.org>\n"
@@ -75,7 +75,7 @@ msgstr "no se pudo escribir el archivo «%s»: %m"
 msgid "could not fsync file \"%s\": %m"
 msgstr "no se pudo sincronizar (fsync) archivo «%s»: %m"
 
-#: pg_controldata.c:36
+#: pg_controldata.c:35
 #, c-format
 msgid ""
 "%s displays control information of a PostgreSQL database cluster.\n"
@@ -84,17 +84,17 @@ msgstr ""
 "%s muestra información de control del cluster de PostgreSQL.\n"
 "\n"
 
-#: pg_controldata.c:37
+#: pg_controldata.c:36
 #, c-format
 msgid "Usage:\n"
 msgstr "Empleo:\n"
 
-#: pg_controldata.c:38
+#: pg_controldata.c:37
 #, c-format
 msgid "  %s [OPTION] [DATADIR]\n"
 msgstr "  %s [OPCIÓN] [DATADIR]\n"
 
-#: pg_controldata.c:39
+#: pg_controldata.c:38
 #, c-format
 msgid ""
 "\n"
@@ -103,22 +103,22 @@ msgstr ""
 "\n"
 "Opciones:\n"
 
-#: pg_controldata.c:40
+#: pg_controldata.c:39
 #, c-format
 msgid " [-D, --pgdata=]DATADIR  data directory\n"
 msgstr " [-D, --pgdata=]DATADIR    directorio de datos\n"
 
-#: pg_controldata.c:41
+#: pg_controldata.c:40
 #, c-format
 msgid "  -V, --version          output version information, then exit\n"
 msgstr "  -V, --version            mostrar información de versión, luego salir\n"
 
-#: pg_controldata.c:42
+#: pg_controldata.c:41
 #, c-format
 msgid "  -?, --help             show this help, then exit\n"
 msgstr "  -?, --help               mostrar esta ayuda, luego salir\n"
 
-#: pg_controldata.c:43
+#: pg_controldata.c:42
 #, c-format
 msgid ""
 "\n"
@@ -131,10 +131,15 @@ msgstr ""
 "la variable de entorno PGDATA.\n"
 "\n"
 
+#: pg_controldata.c:44
+#, c-format
+msgid "Report bugs to <%s>.\n"
+msgstr ""
+
 #: pg_controldata.c:45
 #, c-format
-msgid "Report bugs to <pgsql-bugs@lists.postgresql.org>.\n"
-msgstr "Reporte errores a <pgsql-bugs@lists.postgresql.org>.\n"
+msgid "%s home page: <%s>\n"
+msgstr ""
 
 #: pg_controldata.c:55
 msgid "starting up"
@@ -172,22 +177,22 @@ msgstr "código de estado no reconocido"
 msgid "unrecognized wal_level"
 msgstr "wal_level no reconocido"
 
-#: pg_controldata.c:138 pg_controldata.c:156 pg_controldata.c:164
+#: pg_controldata.c:137 pg_controldata.c:155 pg_controldata.c:163
 #, c-format
 msgid "Try \"%s --help\" for more information.\n"
 msgstr "Intente «%s --help» para mayor información.\n"
 
-#: pg_controldata.c:154
+#: pg_controldata.c:153
 #, c-format
 msgid "too many command-line arguments (first is \"%s\")"
 msgstr "demasiados argumentos en la línea de órdenes (el primero es «%s»)"
 
-#: pg_controldata.c:163
+#: pg_controldata.c:162
 #, c-format
 msgid "no data directory specified"
 msgstr "no se especificó el directorio de datos"
 
-#: pg_controldata.c:171
+#: pg_controldata.c:170
 #, c-format
 msgid ""
 "WARNING: Calculated CRC checksum does not match value stored in file.\n"
@@ -201,12 +206,12 @@ msgstr ""
 "esperando.  Los resultados presentados a continuación no son confiables.\n"
 "\n"
 
-#: pg_controldata.c:180
+#: pg_controldata.c:179
 #, c-format
 msgid "WARNING: invalid WAL segment size\n"
 msgstr "PRECAUCIÓN: tamaño de segmento de WAL no válido\n"
 
-#: pg_controldata.c:181
+#: pg_controldata.c:180
 #, c-format
 msgid ""
 "The WAL segment size stored in the file, %d byte, is not a power of two\n"
@@ -227,289 +232,291 @@ msgstr[1] ""
 "no es una potencia de dos entre 1 MB y 1 GB. El archivo está corrupto y los\n"
 "resultados de abajo no son confiables.\n"
 
-#: pg_controldata.c:223
+#: pg_controldata.c:222
 msgid "???"
 msgstr "???"
 
-#: pg_controldata.c:236
+#: pg_controldata.c:228
 #, c-format
 msgid "pg_control version number:            %u\n"
 msgstr "Número de versión de pg_control:            %u\n"
 
-#: pg_controldata.c:238
+#: pg_controldata.c:230
 #, c-format
 msgid "Catalog version number:               %u\n"
 msgstr "Número de versión del catálogo:             %u\n"
 
-#: pg_controldata.c:240
-#, c-format
-msgid "Database system identifier:           %s\n"
+#: pg_controldata.c:232
+#, fuzzy, c-format
+#| msgid "Database system identifier:           %s\n"
+msgid "Database system identifier:           %llu\n"
 msgstr "Identificador de sistema:                   %s\n"
 
-#: pg_controldata.c:242
+#: pg_controldata.c:234
 #, c-format
 msgid "Database cluster state:               %s\n"
 msgstr "Estado del sistema de base de datos:        %s\n"
 
-#: pg_controldata.c:244
+#: pg_controldata.c:236
 #, c-format
 msgid "pg_control last modified:             %s\n"
 msgstr "Última modificación de pg_control:          %s\n"
 
-#: pg_controldata.c:246
+#: pg_controldata.c:238
 #, c-format
 msgid "Latest checkpoint location:           %X/%X\n"
 msgstr "Ubicación del último checkpoint:            %X/%X\n"
 
-#: pg_controldata.c:249
+#: pg_controldata.c:241
 #, c-format
 msgid "Latest checkpoint's REDO location:    %X/%X\n"
 msgstr "Ubicación de REDO de último checkpoint:     %X/%X\n"
 
-#: pg_controldata.c:252
+#: pg_controldata.c:244
 #, c-format
 msgid "Latest checkpoint's REDO WAL file:    %s\n"
 msgstr "Ubicación de REDO de último checkpoint:     %s\n"
 
-#: pg_controldata.c:254
+#: pg_controldata.c:246
 #, c-format
 msgid "Latest checkpoint's TimeLineID:       %u\n"
 msgstr "TimeLineID del último checkpoint:           %u\n"
 
-#: pg_controldata.c:256
+#: pg_controldata.c:248
 #, c-format
 msgid "Latest checkpoint's PrevTimeLineID:   %u\n"
 msgstr "PrevTimeLineID del último checkpoint:       %u\n"
 
-#: pg_controldata.c:258
+#: pg_controldata.c:250
 #, c-format
 msgid "Latest checkpoint's full_page_writes: %s\n"
 msgstr "full_page_writes del último checkpoint:     %s\n"
 
-#: pg_controldata.c:259 pg_controldata.c:304 pg_controldata.c:316
+#: pg_controldata.c:251 pg_controldata.c:296 pg_controldata.c:308
 msgid "off"
 msgstr "desactivado"
 
-#: pg_controldata.c:259 pg_controldata.c:304 pg_controldata.c:316
+#: pg_controldata.c:251 pg_controldata.c:296 pg_controldata.c:308
 msgid "on"
 msgstr "activado"
 
-#: pg_controldata.c:260
+#: pg_controldata.c:252
 #, c-format
 msgid "Latest checkpoint's NextXID:          %u:%u\n"
 msgstr "NextXID de último checkpoint:               %u/%u\n"
 
-#: pg_controldata.c:263
+#: pg_controldata.c:255
 #, c-format
 msgid "Latest checkpoint's NextOID:          %u\n"
 msgstr "NextOID de último checkpoint:               %u\n"
 
-#: pg_controldata.c:265
+#: pg_controldata.c:257
 #, c-format
 msgid "Latest checkpoint's NextMultiXactId:  %u\n"
 msgstr "NextMultiXactId de último checkpoint:       %u\n"
 
-#: pg_controldata.c:267
+#: pg_controldata.c:259
 #, c-format
 msgid "Latest checkpoint's NextMultiOffset:  %u\n"
 msgstr "NextMultiOffset de último checkpoint:       %u\n"
 
-#: pg_controldata.c:269
+#: pg_controldata.c:261
 #, c-format
 msgid "Latest checkpoint's oldestXID:        %u\n"
 msgstr "oldestXID del último checkpoint:            %u\n"
 
-#: pg_controldata.c:271
+#: pg_controldata.c:263
 #, c-format
 msgid "Latest checkpoint's oldestXID's DB:   %u\n"
 msgstr "DB del oldestXID del último checkpoint:     %u\n"
 
-#: pg_controldata.c:273
+#: pg_controldata.c:265
 #, c-format
 msgid "Latest checkpoint's oldestActiveXID:  %u\n"
 msgstr "oldestActiveXID del último checkpoint:      %u\n"
 
-#: pg_controldata.c:275
+#: pg_controldata.c:267
 #, c-format
 msgid "Latest checkpoint's oldestMultiXid:   %u\n"
 msgstr "oldestMultiXid del último checkpoint:       %u\n"
 
-#: pg_controldata.c:277
+#: pg_controldata.c:269
 #, c-format
 msgid "Latest checkpoint's oldestMulti's DB: %u\n"
 msgstr "DB del oldestMultiXid del últ. checkpoint:  %u\n"
 
-#: pg_controldata.c:279
+#: pg_controldata.c:271
 #, c-format
 msgid "Latest checkpoint's oldestCommitTsXid:%u\n"
 msgstr "oldestCommitTsXid del último checkpoint:    %u\n"
 
-#: pg_controldata.c:281
+#: pg_controldata.c:273
 #, c-format
 msgid "Latest checkpoint's newestCommitTsXid:%u\n"
 msgstr "newestCommitTsXid del último checkpoint:    %u\n"
 
-#: pg_controldata.c:283
+#: pg_controldata.c:275
 #, c-format
 msgid "Time of latest checkpoint:            %s\n"
 msgstr "Instante de último checkpoint:              %s\n"
 
-#: pg_controldata.c:285
+#: pg_controldata.c:277
 #, c-format
 msgid "Fake LSN counter for unlogged rels:   %X/%X\n"
 msgstr "Contador de LSN falsas para rels. unlogged: %X/%X\n"
 
-#: pg_controldata.c:288
+#: pg_controldata.c:280
 #, c-format
 msgid "Minimum recovery ending location:     %X/%X\n"
 msgstr "Punto final mínimo de recuperación:         %X/%X\n"
 
-#: pg_controldata.c:291
+#: pg_controldata.c:283
 #, c-format
 msgid "Min recovery ending loc's timeline:   %u\n"
 msgstr "Timeline de dicho punto final mínimo:       %u\n"
 
-#: pg_controldata.c:293
+#: pg_controldata.c:285
 #, c-format
 msgid "Backup start location:                %X/%X\n"
 msgstr "Ubicación del inicio de backup:             %X/%X\n"
 
-#: pg_controldata.c:296
+#: pg_controldata.c:288
 #, c-format
 msgid "Backup end location:                  %X/%X\n"
 msgstr "Ubicación del fin de backup:                %X/%X\n"
 
-#: pg_controldata.c:299
+#: pg_controldata.c:291
 #, c-format
 msgid "End-of-backup record required:        %s\n"
 msgstr "Registro fin-de-backup requerido:           %s\n"
 
-#: pg_controldata.c:300
+#: pg_controldata.c:292
 msgid "no"
 msgstr "no"
 
-#: pg_controldata.c:300
+#: pg_controldata.c:292
 msgid "yes"
 msgstr "sí"
 
-#: pg_controldata.c:301
+#: pg_controldata.c:293
 #, c-format
 msgid "wal_level setting:                    %s\n"
 msgstr "Parámetro wal_level:                        %s\n"
 
-#: pg_controldata.c:303
+#: pg_controldata.c:295
 #, c-format
 msgid "wal_log_hints setting:                %s\n"
 msgstr "Parámetro wal_log_hings:                    %s\n"
 
-#: pg_controldata.c:305
+#: pg_controldata.c:297
 #, c-format
 msgid "max_connections setting:              %d\n"
 msgstr "Parámetro max_connections:                  %d\n"
 
-#: pg_controldata.c:307
+#: pg_controldata.c:299
 #, c-format
 msgid "max_worker_processes setting:         %d\n"
 msgstr "Parámetro max_worker_processes:             %d\n"
 
-#: pg_controldata.c:309
+#: pg_controldata.c:301
 #, c-format
 msgid "max_wal_senders setting:              %d\n"
 msgstr "Parámetro max_wal_senders:                  %d\n"
 
-#: pg_controldata.c:311
+#: pg_controldata.c:303
 #, c-format
 msgid "max_prepared_xacts setting:           %d\n"
 msgstr "Parámetro max_prepared_xacts:               %d\n"
 
-#: pg_controldata.c:313
+#: pg_controldata.c:305
 #, c-format
 msgid "max_locks_per_xact setting:           %d\n"
 msgstr "Parámetro max_locks_per_xact:               %d\n"
 
-#: pg_controldata.c:315
+#: pg_controldata.c:307
 #, c-format
 msgid "track_commit_timestamp setting:       %s\n"
 msgstr "Parámetro track_commit_timestamp:           %s\n"
 
-#: pg_controldata.c:317
+#: pg_controldata.c:309
 #, c-format
 msgid "Maximum data alignment:               %u\n"
 msgstr "Alineamiento máximo de datos:               %u\n"
 
-#: pg_controldata.c:320
+#: pg_controldata.c:312
 #, c-format
 msgid "Database block size:                  %u\n"
 msgstr "Tamaño de bloque de la base de datos:       %u\n"
 
-#: pg_controldata.c:322
+#: pg_controldata.c:314
 #, c-format
 msgid "Blocks per segment of large relation: %u\n"
 msgstr "Bloques por segmento en relación grande:    %u\n"
 
-#: pg_controldata.c:324
+#: pg_controldata.c:316
 #, c-format
 msgid "WAL block size:                       %u\n"
 msgstr "Tamaño del bloque de WAL:                   %u\n"
 
-#: pg_controldata.c:326
+#: pg_controldata.c:318
 #, c-format
 msgid "Bytes per WAL segment:                %u\n"
 msgstr "Bytes por segmento WAL:                     %u\n"
 
-#: pg_controldata.c:328
+#: pg_controldata.c:320
 #, c-format
 msgid "Maximum length of identifiers:        %u\n"
 msgstr "Máxima longitud de identificadores:         %u\n"
 
-#: pg_controldata.c:330
+#: pg_controldata.c:322
 #, c-format
 msgid "Maximum columns in an index:          %u\n"
 msgstr "Máximo número de columnas de un índice:     %u\n"
 
-#: pg_controldata.c:332
+#: pg_controldata.c:324
 #, c-format
 msgid "Maximum size of a TOAST chunk:        %u\n"
 msgstr "Longitud máxima de un trozo TOAST:          %u\n"
 
-#: pg_controldata.c:334
+#: pg_controldata.c:326
 #, c-format
 msgid "Size of a large-object chunk:         %u\n"
 msgstr "Longitud máx. de un trozo de objeto grande: %u\n"
 
-#: pg_controldata.c:337
+#: pg_controldata.c:329
 #, c-format
 msgid "Date/time type storage:               %s\n"
 msgstr "Tipo de almacenamiento de horas y fechas:   %s\n"
 
-#: pg_controldata.c:338
+#: pg_controldata.c:330
 msgid "64-bit integers"
 msgstr "enteros de 64 bits"
 
-#: pg_controldata.c:339
-#, c-format
-msgid "Float4 argument passing:              %s\n"
-msgstr "Paso de parámetros float4:                  %s\n"
-
-#: pg_controldata.c:340 pg_controldata.c:342
-msgid "by reference"
-msgstr "por referencia"
-
-#: pg_controldata.c:340 pg_controldata.c:342
-msgid "by value"
-msgstr "por valor"
-
-#: pg_controldata.c:341
+#: pg_controldata.c:331
 #, c-format
 msgid "Float8 argument passing:              %s\n"
 msgstr "Paso de parámetros float8:                  %s\n"
 
-#: pg_controldata.c:343
+#: pg_controldata.c:332
+msgid "by reference"
+msgstr "por referencia"
+
+#: pg_controldata.c:332
+msgid "by value"
+msgstr "por valor"
+
+#: pg_controldata.c:333
 #, c-format
 msgid "Data page checksum version:           %u\n"
 msgstr "Versión de sumas de verificación de datos:  %u\n"
 
-#: pg_controldata.c:345
+#: pg_controldata.c:335
 #, c-format
 msgid "Mock authentication nonce:            %s\n"
 msgstr "Nonce para autentificación simulada:        %s\n"
+
+#~ msgid "Report bugs to <pgsql-bugs@lists.postgresql.org>.\n"
+#~ msgstr "Reporte errores a <pgsql-bugs@lists.postgresql.org>.\n"
+
+#~ msgid "Float4 argument passing:              %s\n"
+#~ msgstr "Paso de parámetros float4:                  %s\n"
diff --git a/src/bin/pg_ctl/po/es.po b/src/bin/pg_ctl/po/es.po
index 84ec5e4e0dc..5a2ab262bc2 100644
--- a/src/bin/pg_ctl/po/es.po
+++ b/src/bin/pg_ctl/po/es.po
@@ -10,7 +10,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: pg_ctl (PostgreSQL) 12\n"
 "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n"
-"POT-Creation-Date: 2019-09-29 23:43+0000\n"
+"POT-Creation-Date: 2020-05-17 02:45+0000\n"
 "PO-Revision-Date: 2019-06-06 17:23-0400\n"
 "Last-Translator: Carlos Chapi <carlos.chapi@2ndquadrant.com>\n"
 "Language-Team: PgSQL-es-Ayuda <pgsql-es-ayuda@lists.postgresql.org>\n"
@@ -20,53 +20,53 @@ msgstr ""
 "Content-Transfer-Encoding: 8bit\n"
 "X-Generator: Poedit 2.0.2\n"
 
-#: ../../common/exec.c:138 ../../common/exec.c:255 ../../common/exec.c:301
+#: ../../common/exec.c:137 ../../common/exec.c:254 ../../common/exec.c:300
 #, c-format
 msgid "could not identify current directory: %m"
 msgstr "no se pudo identificar el directorio actual: %m"
 
-#: ../../common/exec.c:157
+#: ../../common/exec.c:156
 #, c-format
 msgid "invalid binary \"%s\""
 msgstr "el binario «%s» no es válido"
 
-#: ../../common/exec.c:207
+#: ../../common/exec.c:206
 #, c-format
 msgid "could not read binary \"%s\""
 msgstr "no se pudo leer el binario «%s»"
 
-#: ../../common/exec.c:215
+#: ../../common/exec.c:214
 #, c-format
 msgid "could not find a \"%s\" to execute"
 msgstr "no se pudo encontrar un «%s» para ejecutar"
 
-#: ../../common/exec.c:271 ../../common/exec.c:310
+#: ../../common/exec.c:270 ../../common/exec.c:309
 #, c-format
 msgid "could not change directory to \"%s\": %m"
 msgstr "no se pudo cambiar al directorio «%s»: %m"
 
-#: ../../common/exec.c:288
+#: ../../common/exec.c:287
 #, c-format
 msgid "could not read symbolic link \"%s\": %m"
 msgstr "no se pudo leer el enlace simbólico «%s»: %m"
 
-#: ../../common/exec.c:541
+#: ../../common/exec.c:410
 #, c-format
 msgid "pclose failed: %m"
 msgstr "pclose falló: %m"
 
-#: ../../common/exec.c:670 ../../common/exec.c:715 ../../common/exec.c:807
+#: ../../common/exec.c:539 ../../common/exec.c:584 ../../common/exec.c:676
 msgid "out of memory"
 msgstr "memoria agotada"
 
 #: ../../common/fe_memutils.c:35 ../../common/fe_memutils.c:75
-#: ../../common/fe_memutils.c:98 ../../port/path.c:632 ../../port/path.c:670
-#: ../../port/path.c:687
+#: ../../common/fe_memutils.c:98 ../../common/fe_memutils.c:162
+#: ../../port/path.c:632 ../../port/path.c:670 ../../port/path.c:687
 #, c-format
 msgid "out of memory\n"
 msgstr "memoria agotada\n"
 
-#: ../../common/fe_memutils.c:92
+#: ../../common/fe_memutils.c:92 ../../common/fe_memutils.c:154
 #, c-format
 msgid "cannot duplicate null pointer (internal error)\n"
 msgstr "no se puede duplicar un puntero nulo (error interno)\n"
@@ -106,74 +106,80 @@ msgstr "el proceso hijo terminó con código no reconocido %d"
 msgid "could not get current working directory: %s\n"
 msgstr "no se pudo obtener el directorio de trabajo actual: %s\n"
 
-#: pg_ctl.c:262
+#: pg_ctl.c:258
 #, c-format
 msgid "%s: directory \"%s\" does not exist\n"
 msgstr "%s: el directorio «%s» no existe\n"
 
-#: pg_ctl.c:265
+#: pg_ctl.c:261
 #, c-format
 msgid "%s: could not access directory \"%s\": %s\n"
 msgstr "%s: no se pudo acceder al directorio «%s»: %s\n"
 
-#: pg_ctl.c:278
+#: pg_ctl.c:274
 #, c-format
 msgid "%s: directory \"%s\" is not a database cluster directory\n"
 msgstr "%s: el directorio «%s» no es un directorio de base de datos\n"
 
-#: pg_ctl.c:291
+#: pg_ctl.c:287
 #, c-format
 msgid "%s: could not open PID file \"%s\": %s\n"
 msgstr "%s: no se pudo abrir el archivo de PID «%s»: %s\n"
 
-#: pg_ctl.c:300
+#: pg_ctl.c:296
 #, c-format
 msgid "%s: the PID file \"%s\" is empty\n"
 msgstr "%s: el archivo de PID «%s» está vacío\n"
 
-#: pg_ctl.c:303
+#: pg_ctl.c:299
 #, c-format
 msgid "%s: invalid data in PID file \"%s\"\n"
 msgstr "%s: datos no válidos en archivo de PID «%s»\n"
 
-#: pg_ctl.c:464 pg_ctl.c:506
+#: pg_ctl.c:458 pg_ctl.c:500
 #, c-format
 msgid "%s: could not start server: %s\n"
 msgstr "%s: no se pudo iniciar el servidor: %s\n"
 
-#: pg_ctl.c:484
+#: pg_ctl.c:478
 #, c-format
 msgid "%s: could not start server due to setsid() failure: %s\n"
 msgstr "%s: no se pudo iniciar el servidor debido a falla en setsid(): %s\n"
 
-#: pg_ctl.c:530
+#: pg_ctl.c:548
+#, fuzzy, c-format
+#| msgid "%s: could not open file \"%s\": %s\n"
+msgid "%s: could not open log file \"%s\": %s\n"
+msgstr "%s: no se pudo abrir el archivo «%s»: %s\n"
+
+#: pg_ctl.c:565
 #, c-format
 msgid "%s: could not start server: error code %lu\n"
 msgstr "%s: no se pudo iniciar el servidor: código de error %lu\n"
 
-#: pg_ctl.c:677
+#: pg_ctl.c:712
 #, c-format
 msgid "%s: cannot set core file size limit; disallowed by hard limit\n"
 msgstr ""
 "%s: no se puede establecer el límite de archivos de volcado;\n"
 "impedido por un límite duro\n"
 
-#: pg_ctl.c:703
+#: pg_ctl.c:738
 #, c-format
 msgid "%s: could not read file \"%s\"\n"
 msgstr "%s: no se pudo leer el archivo «%s»\n"
 
-#: pg_ctl.c:708
+#: pg_ctl.c:743
 #, c-format
 msgid "%s: option file \"%s\" must have exactly one line\n"
 msgstr "%s: archivo de opciones «%s» debe tener exactamente una línea\n"
 
-#: pg_ctl.c:750 pg_ctl.c:941 pg_ctl.c:1037
+#: pg_ctl.c:785 pg_ctl.c:975 pg_ctl.c:1071
 #, c-format
 msgid "%s: could not send stop signal (PID: %ld): %s\n"
 msgstr "%s: falló la señal de detención (PID: %ld): %s\n"
 
-#: pg_ctl.c:778
+#: pg_ctl.c:813
 #, c-format
 msgid ""
 "The program \"%s\" is needed by %s but was not found in the\n"
@@ -184,7 +190,7 @@ msgstr ""
 "directorio que «%s».\n"
 "Verifique su instalación.\n"
 
-#: pg_ctl.c:784
+#: pg_ctl.c:818
 #, c-format
 msgid ""
 "The program \"%s\" was found by \"%s\"\n"
@@ -195,38 +201,38 @@ msgstr ""
 "de la misma versión que «%s».\n"
 "Verifique su instalación.\n"
 
-#: pg_ctl.c:817
+#: pg_ctl.c:851
 #, c-format
 msgid "%s: database system initialization failed\n"
 msgstr "%s: falló la creación de la base de datos\n"
 
-#: pg_ctl.c:832
+#: pg_ctl.c:866
 #, c-format
 msgid "%s: another server might be running; trying to start server anyway\n"
 msgstr "%s: otro servidor puede estar en ejecución; tratando de iniciarlo de todas formas.\n"
 
-#: pg_ctl.c:881
+#: pg_ctl.c:915
 msgid "waiting for server to start..."
 msgstr "esperando que el servidor se inicie..."
 
-#: pg_ctl.c:886 pg_ctl.c:991 pg_ctl.c:1083 pg_ctl.c:1213
+#: pg_ctl.c:920 pg_ctl.c:1025 pg_ctl.c:1117 pg_ctl.c:1247
 msgid " done\n"
 msgstr " listo\n"
 
-#: pg_ctl.c:887
+#: pg_ctl.c:921
 msgid "server started\n"
 msgstr "servidor iniciado\n"
 
-#: pg_ctl.c:890 pg_ctl.c:896 pg_ctl.c:1218
+#: pg_ctl.c:924 pg_ctl.c:930 pg_ctl.c:1252
 msgid " stopped waiting\n"
 msgstr " abandonando la espera\n"
 
-#: pg_ctl.c:891
+#: pg_ctl.c:925
 #, c-format
 msgid "%s: server did not start in time\n"
 msgstr "%s: el servidor no inició a tiempo\n"
 
-#: pg_ctl.c:897
+#: pg_ctl.c:931
 #, c-format
 msgid ""
 "%s: could not start server\n"
@@ -235,31 +241,31 @@ msgstr ""
 "%s: no se pudo iniciar el servidor.\n"
 "Examine el registro del servidor.\n"
 
-#: pg_ctl.c:905
+#: pg_ctl.c:939
 msgid "server starting\n"
 msgstr "servidor iniciándose\n"
 
-#: pg_ctl.c:926 pg_ctl.c:1013 pg_ctl.c:1104 pg_ctl.c:1143 pg_ctl.c:1242
+#: pg_ctl.c:960 pg_ctl.c:1047 pg_ctl.c:1138 pg_ctl.c:1177 pg_ctl.c:1276
 #, c-format
 msgid "%s: PID file \"%s\" does not exist\n"
 msgstr "%s: el archivo de PID «%s» no existe\n"
 
-#: pg_ctl.c:927 pg_ctl.c:1015 pg_ctl.c:1105 pg_ctl.c:1144 pg_ctl.c:1243
+#: pg_ctl.c:961 pg_ctl.c:1049 pg_ctl.c:1139 pg_ctl.c:1178 pg_ctl.c:1277
 msgid "Is server running?\n"
 msgstr "¿Está el servidor en ejecución?\n"
 
-#: pg_ctl.c:933
+#: pg_ctl.c:967
 #, c-format
 msgid "%s: cannot stop server; single-user server is running (PID: %ld)\n"
 msgstr ""
 "%s: no se puede detener el servidor;\n"
 "un servidor en modo mono-usuario está en ejecución (PID: %ld)\n"
 
-#: pg_ctl.c:948
+#: pg_ctl.c:982
 msgid "server shutting down\n"
 msgstr "servidor deteniéndose\n"
 
-#: pg_ctl.c:963 pg_ctl.c:1052
+#: pg_ctl.c:997 pg_ctl.c:1086
 msgid ""
 "WARNING: online backup mode is active\n"
 "Shutdown will not complete until pg_stop_backup() is called.\n"
@@ -269,20 +275,20 @@ msgstr ""
 "El apagado no se completará hasta que se invoque la función pg_stop_backup().\n"
 "\n"
 
-#: pg_ctl.c:967 pg_ctl.c:1056
+#: pg_ctl.c:1001 pg_ctl.c:1090
 msgid "waiting for server to shut down..."
 msgstr "esperando que el servidor se detenga..."
 
-#: pg_ctl.c:983 pg_ctl.c:1074
+#: pg_ctl.c:1017 pg_ctl.c:1108
 msgid " failed\n"
 msgstr " falló\n"
 
-#: pg_ctl.c:985 pg_ctl.c:1076
+#: pg_ctl.c:1019 pg_ctl.c:1110
 #, c-format
 msgid "%s: server does not shut down\n"
 msgstr "%s: el servidor no se detiene\n"
 
-#: pg_ctl.c:987 pg_ctl.c:1078
+#: pg_ctl.c:1021 pg_ctl.c:1112
 msgid ""
 "HINT: The \"-m fast\" option immediately disconnects sessions rather than\n"
 "waiting for session-initiated disconnection.\n"
@@ -290,253 +296,253 @@ msgstr ""
 "SUGERENCIA: La opción «-m fast» desconecta las sesiones inmediatamente\n"
 "en lugar de esperar que cada sesión finalice por sí misma.\n"
 
-#: pg_ctl.c:993 pg_ctl.c:1084
+#: pg_ctl.c:1027 pg_ctl.c:1118
 msgid "server stopped\n"
 msgstr "servidor detenido\n"
 
-#: pg_ctl.c:1016
+#: pg_ctl.c:1050
 msgid "trying to start server anyway\n"
 msgstr "intentando iniciae el servidor de todas maneras\n"
 
-#: pg_ctl.c:1025
+#: pg_ctl.c:1059
 #, c-format
 msgid "%s: cannot restart server; single-user server is running (PID: %ld)\n"
 msgstr ""
 "%s: no se puede reiniciar el servidor;\n"
 "un servidor en modo mono-usuario está en ejecución (PID: %ld)\n"
 
-#: pg_ctl.c:1028 pg_ctl.c:1114
+#: pg_ctl.c:1062 pg_ctl.c:1148
 msgid "Please terminate the single-user server and try again.\n"
 msgstr "Por favor termine el servidor mono-usuario e intente nuevamente.\n"
 
-#: pg_ctl.c:1088
+#: pg_ctl.c:1122
 #, c-format
 msgid "%s: old server process (PID: %ld) seems to be gone\n"
 msgstr "%s: el proceso servidor antiguo (PID: %ld) parece no estar\n"
 
-#: pg_ctl.c:1090
+#: pg_ctl.c:1124
 msgid "starting server anyway\n"
 msgstr "iniciando el servidor de todas maneras\n"
 
-#: pg_ctl.c:1111
+#: pg_ctl.c:1145
 #, c-format
 msgid "%s: cannot reload server; single-user server is running (PID: %ld)\n"
 msgstr ""
 "%s: no se puede recargar el servidor;\n"
 "un servidor en modo mono-usuario está en ejecución (PID: %ld)\n"
 
-#: pg_ctl.c:1120
+#: pg_ctl.c:1154
 #, c-format
 msgid "%s: could not send reload signal (PID: %ld): %s\n"
 msgstr "%s: la señal de recarga falló (PID: %ld): %s\n"
 
-#: pg_ctl.c:1125
+#: pg_ctl.c:1159
 msgid "server signaled\n"
 msgstr "se ha enviado una señal al servidor\n"
 
-#: pg_ctl.c:1150
+#: pg_ctl.c:1184
 #, c-format
 msgid "%s: cannot promote server; single-user server is running (PID: %ld)\n"
 msgstr ""
 "%s: no se puede promover el servidor;\n"
 "un servidor en modo mono-usuario está en ejecución (PID: %ld)\n"
 
-#: pg_ctl.c:1158
+#: pg_ctl.c:1192
 #, c-format
 msgid "%s: cannot promote server; server is not in standby mode\n"
 msgstr ""
 "%s: no se puede promover el servidor;\n"
 "el servidor no está en modo «standby»\n"
 
-#: pg_ctl.c:1173
+#: pg_ctl.c:1207
 #, c-format
 msgid "%s: could not create promote signal file \"%s\": %s\n"
 msgstr "%s: no se pudo crear el archivo de señal de promoción «%s»: %s\n"
 
-#: pg_ctl.c:1179
+#: pg_ctl.c:1213
 #, c-format
 msgid "%s: could not write promote signal file \"%s\": %s\n"
 msgstr "%s: no se pudo escribir al archivo de señal de promoción «%s»: %s\n"
 
-#: pg_ctl.c:1187
+#: pg_ctl.c:1221
 #, c-format
 msgid "%s: could not send promote signal (PID: %ld): %s\n"
 msgstr "%s: no se pudo enviar la señal de promoción (PID: %ld): %s\n"
 
-#: pg_ctl.c:1190
+#: pg_ctl.c:1224
 #, c-format
 msgid "%s: could not remove promote signal file \"%s\": %s\n"
 msgstr "%s: no se pudo eliminar el archivo de señal de promoción «%s»: %s\n"
 
-#: pg_ctl.c:1200
+#: pg_ctl.c:1234
 msgid "waiting for server to promote..."
 msgstr "esperando que el servidor se promueva..."
 
-#: pg_ctl.c:1214
+#: pg_ctl.c:1248
 msgid "server promoted\n"
 msgstr "servidor promovido\n"
 
-#: pg_ctl.c:1219
+#: pg_ctl.c:1253
 #, c-format
 msgid "%s: server did not promote in time\n"
 msgstr "%s: el servidor no se promovió a tiempo\n"
 
-#: pg_ctl.c:1225
+#: pg_ctl.c:1259
 msgid "server promoting\n"
 msgstr "servidor promoviendo\n"
 
-#: pg_ctl.c:1249
+#: pg_ctl.c:1283
 #, c-format
 msgid "%s: cannot rotate log file; single-user server is running (PID: %ld)\n"
 msgstr "%s: no se puede rotar el archivo de log; un servidor en modo mono-usuario está en ejecución (PID: %ld)\n"
 
-#: pg_ctl.c:1259
+#: pg_ctl.c:1293
 #, c-format
 msgid "%s: could not create log rotation signal file \"%s\": %s\n"
 msgstr "%s: no se pudo crear el archivo de señal de rotación de log «%s»: %s\n"
 
-#: pg_ctl.c:1265
+#: pg_ctl.c:1299
 #, c-format
 msgid "%s: could not write log rotation signal file \"%s\": %s\n"
 msgstr "%s: no se pudo escribir al archivo de señal de rotación de log «%s»: %s\n"
 
-#: pg_ctl.c:1273
+#: pg_ctl.c:1307
 #, c-format
 msgid "%s: could not send log rotation signal (PID: %ld): %s\n"
 msgstr "%s: no se pudo enviar la señal de rotación de log (PID: %ld): %s\n"
 
-#: pg_ctl.c:1276
+#: pg_ctl.c:1310
 #, c-format
 msgid "%s: could not remove log rotation signal file \"%s\": %s\n"
 msgstr "%s: no se pudo eliminar el archivo de señal de rotación de log «%s»: %s\n"
 
-#: pg_ctl.c:1281
+#: pg_ctl.c:1315
 msgid "server signaled to rotate log file\n"
 msgstr "se ha enviado una señal de rotación de log al servidor\n"
 
-#: pg_ctl.c:1328
+#: pg_ctl.c:1362
 #, c-format
 msgid "%s: single-user server is running (PID: %ld)\n"
 msgstr "%s: un servidor en modo mono-usuario está en ejecución (PID: %ld)\n"
 
-#: pg_ctl.c:1342
+#: pg_ctl.c:1376
 #, c-format
 msgid "%s: server is running (PID: %ld)\n"
 msgstr "%s: el servidor está en ejecución (PID: %ld)\n"
 
-#: pg_ctl.c:1358
+#: pg_ctl.c:1392
 #, c-format
 msgid "%s: no server running\n"
 msgstr "%s: no hay servidor en ejecución\n"
 
-#: pg_ctl.c:1375
+#: pg_ctl.c:1409
 #, c-format
 msgid "%s: could not send signal %d (PID: %ld): %s\n"
 msgstr "%s: no se pudo enviar la señal %d (PID: %ld): %s\n"
 
-#: pg_ctl.c:1432
+#: pg_ctl.c:1440
 #, c-format
 msgid "%s: could not find own program executable\n"
 msgstr "%s: no se pudo encontrar el ejecutable propio\n"
 
-#: pg_ctl.c:1442
+#: pg_ctl.c:1450
 #, c-format
 msgid "%s: could not find postgres program executable\n"
 msgstr "%s: no se pudo encontrar el ejecutable postgres\n"
 
-#: pg_ctl.c:1512 pg_ctl.c:1546
+#: pg_ctl.c:1520 pg_ctl.c:1554
 #, c-format
 msgid "%s: could not open service manager\n"
 msgstr "%s: no se pudo abrir el gestor de servicios\n"
 
-#: pg_ctl.c:1518
+#: pg_ctl.c:1526
 #, c-format
 msgid "%s: service \"%s\" already registered\n"
 msgstr "%s: el servicio «%s» ya está registrado\n"
 
-#: pg_ctl.c:1529
+#: pg_ctl.c:1537
 #, c-format
 msgid "%s: could not register service \"%s\": error code %lu\n"
 msgstr "%s: no se pudo registrar el servicio «%s»: código de error %lu\n"
 
-#: pg_ctl.c:1552
+#: pg_ctl.c:1560
 #, c-format
 msgid "%s: service \"%s\" not registered\n"
 msgstr "%s: el servicio «%s» no ha sido registrado\n"
 
-#: pg_ctl.c:1559
+#: pg_ctl.c:1567
 #, c-format
 msgid "%s: could not open service \"%s\": error code %lu\n"
 msgstr "%s: no se pudo abrir el servicio «%s»: código de error %lu\n"
 
-#: pg_ctl.c:1568
+#: pg_ctl.c:1576
 #, c-format
 msgid "%s: could not unregister service \"%s\": error code %lu\n"
 msgstr "%s: no se pudo dar de baja el servicio «%s»: código de error %lu\n"
 
-#: pg_ctl.c:1655
+#: pg_ctl.c:1663
 msgid "Waiting for server startup...\n"
 msgstr "Esperando que el servidor se inicie...\n"
 
-#: pg_ctl.c:1658
+#: pg_ctl.c:1666
 msgid "Timed out waiting for server startup\n"
 msgstr "Se agotó el tiempo de espera al inicio del servidor\n"
 
-#: pg_ctl.c:1662
+#: pg_ctl.c:1670
 msgid "Server started and accepting connections\n"
 msgstr "Servidor iniciado y aceptando conexiones\n"
 
-#: pg_ctl.c:1717
+#: pg_ctl.c:1725
 #, c-format
 msgid "%s: could not start service \"%s\": error code %lu\n"
 msgstr "%s: no se pudo iniciar el servicio «%s»: código de error %lu\n"
 
-#: pg_ctl.c:1787
+#: pg_ctl.c:1795
 #, c-format
 msgid "%s: WARNING: cannot create restricted tokens on this platform\n"
 msgstr "%s: ATENCIÓN: no se pueden crear tokens restrigidos en esta plataforma\n"
 
-#: pg_ctl.c:1800
+#: pg_ctl.c:1808
 #, c-format
 msgid "%s: could not open process token: error code %lu\n"
 msgstr "%s: no se pudo abrir el token de proceso: código de error %lu\n"
 
-#: pg_ctl.c:1814
+#: pg_ctl.c:1822
 #, c-format
 msgid "%s: could not allocate SIDs: error code %lu\n"
 msgstr "%s: no se pudo emplazar los SIDs: código de error %lu\n"
 
-#: pg_ctl.c:1841
+#: pg_ctl.c:1849
 #, c-format
 msgid "%s: could not create restricted token: error code %lu\n"
 msgstr "%s: no se pudo crear el token restringido: código de error %lu\n"
 
-#: pg_ctl.c:1872
+#: pg_ctl.c:1880
 #, c-format
 msgid "%s: WARNING: could not locate all job object functions in system API\n"
 msgstr "%s: ATENCIÓN: no fue posible encontrar todas las funciones de gestión de tareas en la API del sistema\n"
 
-#: pg_ctl.c:1969
+#: pg_ctl.c:1977
 #, c-format
 msgid "%s: could not get LUIDs for privileges: error code %lu\n"
 msgstr "%s: no se pudo obtener LUIDs para privilegios: código de error %lu\n"
 
-#: pg_ctl.c:1977 pg_ctl.c:1992
+#: pg_ctl.c:1985 pg_ctl.c:2000
 #, c-format
 msgid "%s: could not get token information: error code %lu\n"
 msgstr "%s: no se pudo obtener información de token: código de error %lu\n"
 
-#: pg_ctl.c:1986
+#: pg_ctl.c:1994
 #, c-format
 msgid "%s: out of memory\n"
 msgstr "%s: memoria agotada\n"
 
-#: pg_ctl.c:2016
+#: pg_ctl.c:2024
 #, c-format
 msgid "Try \"%s --help\" for more information.\n"
 msgstr "Use «%s --help» para obtener más información.\n"
 
-#: pg_ctl.c:2024
+#: pg_ctl.c:2032
 #, c-format
 msgid ""
 "%s is a utility to initialize, start, stop, or control a PostgreSQL server.\n"
@@ -546,17 +552,17 @@ msgstr ""
 "un servidor PostgreSQL.\n"
 "\n"
 
-#: pg_ctl.c:2025
+#: pg_ctl.c:2033
 #, c-format
 msgid "Usage:\n"
 msgstr "Empleo:\n"
 
-#: pg_ctl.c:2026
+#: pg_ctl.c:2034
 #, c-format
 msgid "  %s init[db]   [-D DATADIR] [-s] [-o OPTIONS]\n"
 msgstr "  %s init[db]   [-D DATADIR] [-s] [-o OPCIONES]\n"
 
-#: pg_ctl.c:2027
+#: pg_ctl.c:2035
 #, c-format
 msgid ""
 "  %s start      [-D DATADIR] [-l FILENAME] [-W] [-t SECS] [-s]\n"
@@ -565,12 +571,12 @@ msgstr ""
 "  %s start      [-D DATADIR] [-l ARCHIVO] [-W] [-t SEGS] [-s]\n"
 "                    [-o OPCIONES] [-p RUTA] [-c]\n"
 
-#: pg_ctl.c:2029
+#: pg_ctl.c:2037
 #, c-format
 msgid "  %s stop       [-D DATADIR] [-m SHUTDOWN-MODE] [-W] [-t SECS] [-s]\n"
 msgstr "  %s stop       [-D DATADIR] [-m MODO-DETENCIÓN] [-W] [-t SEGS] [-s]\n"
 
-#: pg_ctl.c:2030
+#: pg_ctl.c:2038
 #, c-format
 msgid ""
 "  %s restart    [-D DATADIR] [-m SHUTDOWN-MODE] [-W] [-t SECS] [-s]\n"
@@ -579,32 +585,32 @@ msgstr ""
 "  %s restart    [-D DATADIR] [-m MODO-DETENCIÓN] [-W] [-t SEGS] [-s]\n"
 "                    [-o OPCIONES]\n"
 
-#: pg_ctl.c:2032
+#: pg_ctl.c:2040
 #, c-format
 msgid "  %s reload     [-D DATADIR] [-s]\n"
 msgstr "  %s reload     [-D DATADIR] [-s]\n"
 
-#: pg_ctl.c:2033
+#: pg_ctl.c:2041
 #, c-format
 msgid "  %s status     [-D DATADIR]\n"
 msgstr "  %s status     [-D DATADIR]\n"
 
-#: pg_ctl.c:2034
+#: pg_ctl.c:2042
 #, c-format
 msgid "  %s promote    [-D DATADIR] [-W] [-t SECS] [-s]\n"
 msgstr "  %s promote    [-D DATADIR] [-W] [-t SEGS] [-s]\n"
 
-#: pg_ctl.c:2035
+#: pg_ctl.c:2043
 #, c-format
 msgid "  %s logrotate  [-D DATADIR] [-s]\n"
 msgstr "  %s logrotate  [-D DATADIR] [-s]\n"
 
-#: pg_ctl.c:2036
+#: pg_ctl.c:2044
 #, c-format
 msgid "  %s kill       SIGNALNAME PID\n"
 msgstr "  %s kill       NOMBRE-SEÑAL ID-DE-PROCESO\n"
 
-#: pg_ctl.c:2038
+#: pg_ctl.c:2046
 #, c-format
 msgid ""
 "  %s register   [-D DATADIR] [-N SERVICENAME] [-U USERNAME] [-P PASSWORD]\n"
@@ -613,12 +619,12 @@ msgstr ""
 "  %s register   [-D DATADIR] [-N SERVICIO] [-U USUARIO] [-P PASSWORD]\n"
 "                    [-S TIPO-INICIO] [-e ORIGEN] [-W] [-t SEGS] [-o OPCIONES]\n"
 
-#: pg_ctl.c:2040
+#: pg_ctl.c:2048
 #, c-format
 msgid "  %s unregister [-N SERVICENAME]\n"
 msgstr "  %s unregister [-N SERVICIO]\n"
 
-#: pg_ctl.c:2043
+#: pg_ctl.c:2051
 #, c-format
 msgid ""
 "\n"
@@ -627,52 +633,52 @@ msgstr ""
 "\n"
 "Opciones comunes:\n"
 
-#: pg_ctl.c:2044
+#: pg_ctl.c:2052
 #, c-format
 msgid "  -D, --pgdata=DATADIR   location of the database storage area\n"
 msgstr "  -D, --pgdata DATADIR   ubicación del área de almacenamiento de datos\n"
 
-#: pg_ctl.c:2046
+#: pg_ctl.c:2054
 #, c-format
 msgid "  -e SOURCE              event source for logging when running as a service\n"
 msgstr "  -e ORIGEN              origen para el log de eventos cuando se ejecuta como servicio\n"
 
-#: pg_ctl.c:2048
+#: pg_ctl.c:2056
 #, c-format
 msgid "  -s, --silent           only print errors, no informational messages\n"
 msgstr "  -s, --silent           mostrar sólo errores, no mensajes de información\n"
 
-#: pg_ctl.c:2049
+#: pg_ctl.c:2057
 #, c-format
 msgid "  -t, --timeout=SECS     seconds to wait when using -w option\n"
 msgstr "  -t, --timeout=SEGS     segundos a esperar cuando se use la opción -w\n"
 
-#: pg_ctl.c:2050
+#: pg_ctl.c:2058
 #, c-format
 msgid "  -V, --version          output version information, then exit\n"
 msgstr "  -V, --version          mostrar información de versión, luego salir\n"
 
-#: pg_ctl.c:2051
+#: pg_ctl.c:2059
 #, c-format
 msgid "  -w, --wait             wait until operation completes (default)\n"
 msgstr "  -w, --wait             esperar hasta que la operación se haya completado (por omisión)\n"
 
-#: pg_ctl.c:2052
+#: pg_ctl.c:2060
 #, c-format
 msgid "  -W, --no-wait          do not wait until operation completes\n"
 msgstr "  -W, --no-wait          no esperar hasta que la operación se haya completado\n"
 
-#: pg_ctl.c:2053
+#: pg_ctl.c:2061
 #, c-format
 msgid "  -?, --help             show this help, then exit\n"
 msgstr "  -?, --help             mostrar esta ayuda, luego salir\n"
 
-#: pg_ctl.c:2054
+#: pg_ctl.c:2062
 #, c-format
 msgid "If the -D option is omitted, the environment variable PGDATA is used.\n"
 msgstr "Si la opción -D es omitida, se usa la variable de ambiente PGDATA.\n"
 
-#: pg_ctl.c:2056
+#: pg_ctl.c:2064
 #, c-format
 msgid ""
 "\n"
@@ -681,24 +687,24 @@ msgstr ""
 "\n"
 "Opciones para inicio y reinicio:\n"
 
-#: pg_ctl.c:2058
+#: pg_ctl.c:2066
 #, c-format
 msgid "  -c, --core-files       allow postgres to produce core files\n"
 msgstr ""
 "  -c, --core-files       permite que postgres produzca archivos\n"
 "                         de volcado (core)\n"
 
-#: pg_ctl.c:2060
+#: pg_ctl.c:2068
 #, c-format
 msgid "  -c, --core-files       not applicable on this platform\n"
 msgstr "  -c, --core-files       no aplicable en esta plataforma\n"
 
-#: pg_ctl.c:2062
+#: pg_ctl.c:2070
 #, c-format
 msgid "  -l, --log=FILENAME     write (or append) server log to FILENAME\n"
 msgstr "  -l  --log=ARCHIVO      guardar el registro del servidor en ARCHIVO.\n"
 
-#: pg_ctl.c:2063
+#: pg_ctl.c:2071
 #, c-format
 msgid ""
 "  -o, --options=OPTIONS  command line options to pass to postgres\n"
@@ -707,12 +713,12 @@ msgstr ""
 "  -o, --options=OPCIONES parámetros de línea de órdenes a pasar a postgres\n"
 "                         (ejecutable del servidor de PostgreSQL) o initdb\n"
 
-#: pg_ctl.c:2065
+#: pg_ctl.c:2073
 #, c-format
 msgid "  -p PATH-TO-POSTGRES    normally not necessary\n"
 msgstr "  -p RUTA-A-POSTGRES     normalmente no es necesario\n"
 
-#: pg_ctl.c:2066
+#: pg_ctl.c:2074
 #, c-format
 msgid ""
 "\n"
@@ -721,12 +727,12 @@ msgstr ""
 "\n"
 "Opciones para detener o reiniciar:\n"
 
-#: pg_ctl.c:2067
+#: pg_ctl.c:2075
 #, c-format
 msgid "  -m, --mode=MODE        MODE can be \"smart\", \"fast\", or \"immediate\"\n"
 msgstr "  -m, --mode=MODO        puede ser «smart», «fast» o «immediate»\n"
 
-#: pg_ctl.c:2069
+#: pg_ctl.c:2077
 #, c-format
 msgid ""
 "\n"
@@ -735,24 +741,24 @@ msgstr ""
 "\n"
 "Modos de detención son:\n"
 
-#: pg_ctl.c:2070
+#: pg_ctl.c:2078
 #, c-format
 msgid "  smart       quit after all clients have disconnected\n"
 msgstr "  smart       salir después que todos los clientes se hayan desconectado\n"
 
-#: pg_ctl.c:2071
+#: pg_ctl.c:2079
 #, c-format
 msgid "  fast        quit directly, with proper shutdown (default)\n"
 msgstr "  fast        salir directamente, con apagado apropiado (por omisión)\n"
 
-#: pg_ctl.c:2072
+#: pg_ctl.c:2080
 #, c-format
 msgid "  immediate   quit without complete shutdown; will lead to recovery on restart\n"
 msgstr ""
 "  immediate   salir sin apagado completo; se ejecutará recuperación\n"
 "              en el próximo inicio\n"
 
-#: pg_ctl.c:2074
+#: pg_ctl.c:2082
 #, c-format
 msgid ""
 "\n"
@@ -761,7 +767,7 @@ msgstr ""
 "\n"
 "Nombres de señales permitidos para kill:\n"
 
-#: pg_ctl.c:2078
+#: pg_ctl.c:2086
 #, c-format
 msgid ""
 "\n"
@@ -770,35 +776,35 @@ msgstr ""
 "\n"
 "Opciones para registrar y dar de baja:\n"
 
-#: pg_ctl.c:2079
+#: pg_ctl.c:2087
 #, c-format
 msgid "  -N SERVICENAME  service name with which to register PostgreSQL server\n"
 msgstr ""
 "  -N SERVICIO            nombre de servicio con el cual registrar\n"
 "                         el servidor PostgreSQL\n"
 
-#: pg_ctl.c:2080
+#: pg_ctl.c:2088
 #, c-format
 msgid "  -P PASSWORD     password of account to register PostgreSQL server\n"
 msgstr ""
 "  -P CONTRASEÑA          contraseña de la cuenta con la cual registrar\n"
 "                         el servidor PostgreSQL\n"
 
-#: pg_ctl.c:2081
+#: pg_ctl.c:2089
 #, c-format
 msgid "  -U USERNAME     user name of account to register PostgreSQL server\n"
 msgstr ""
 "  -U USUARIO             nombre de usuario de la cuenta con la cual\n"
 "                         registrar el servidor PostgreSQL\n"
 
-#: pg_ctl.c:2082
+#: pg_ctl.c:2090
 #, c-format
 msgid "  -S START-TYPE   service start type to register PostgreSQL server\n"
 msgstr ""
 "  -S TIPO-INICIO         tipo de inicio de servicio con que registrar\n"
 "                         el servidor PostgreSQL\n"
 
-#: pg_ctl.c:2084
+#: pg_ctl.c:2092
 #, c-format
 msgid ""
 "\n"
@@ -807,51 +813,54 @@ msgstr ""
 "\n"
 "Tipos de inicio del servicio son:\n"
 
-#: pg_ctl.c:2085
+#: pg_ctl.c:2093
 #, c-format
 msgid "  auto       start service automatically during system startup (default)\n"
 msgstr "  auto       iniciar automáticamente al inicio del sistema (por omisión)\n"
 
-#: pg_ctl.c:2086
+#: pg_ctl.c:2094
 #, c-format
 msgid "  demand     start service on demand\n"
 msgstr "  demand     iniciar el servicio en demanda\n"
 
-#: pg_ctl.c:2089
+#: pg_ctl.c:2097
 #, c-format
 msgid ""
 "\n"
-"Report bugs to <pgsql-bugs@lists.postgresql.org>.\n"
+"Report bugs to <%s>.\n"
 msgstr ""
-"\n"
-"Reporte errores a <pgsql-bugs@lists.postgresql.org>.\n"
 
-#: pg_ctl.c:2114
+#: pg_ctl.c:2098
+#, c-format
+msgid "%s home page: <%s>\n"
+msgstr ""
+
+#: pg_ctl.c:2123
 #, c-format
 msgid "%s: unrecognized shutdown mode \"%s\"\n"
 msgstr "%s: modo de apagado «%s» no reconocido\n"
 
-#: pg_ctl.c:2143
+#: pg_ctl.c:2152
 #, c-format
 msgid "%s: unrecognized signal name \"%s\"\n"
 msgstr "%s: nombre de señal «%s» no reconocido\n"
 
-#: pg_ctl.c:2160
+#: pg_ctl.c:2169
 #, c-format
 msgid "%s: unrecognized start type \"%s\"\n"
 msgstr "%s: tipo de inicio «%s» no reconocido\n"
 
-#: pg_ctl.c:2215
+#: pg_ctl.c:2224
 #, c-format
 msgid "%s: could not determine the data directory using command \"%s\"\n"
 msgstr "%s: no se pudo determinar el directorio de datos usando la orden «%s»\n"
 
-#: pg_ctl.c:2240
+#: pg_ctl.c:2248
 #, c-format
 msgid "%s: control file appears to be corrupt\n"
 msgstr "%s: el archivo de control parece estar corrupto\n"
 
-#: pg_ctl.c:2308
+#: pg_ctl.c:2316
 #, c-format
 msgid ""
 "%s: cannot be run as root\n"
@@ -862,32 +871,39 @@ msgstr ""
 "Por favor conéctese (usando, por ejemplo, «su») con un usuario no privilegiado,\n"
 "quien ejecutará el proceso servidor.\n"
 
-#: pg_ctl.c:2392
+#: pg_ctl.c:2400
 #, c-format
 msgid "%s: -S option not supported on this platform\n"
 msgstr "%s: la opción -S no está soportada en esta plataforma\n"
 
-#: pg_ctl.c:2429
+#: pg_ctl.c:2437
 #, c-format
 msgid "%s: too many command-line arguments (first is \"%s\")\n"
 msgstr "%s: demasiados argumentos de línea de órdenes (el primero es «%s»)\n"
 
-#: pg_ctl.c:2455
+#: pg_ctl.c:2463
 #, c-format
 msgid "%s: missing arguments for kill mode\n"
 msgstr "%s: argumentos faltantes para envío de señal\n"
 
-#: pg_ctl.c:2473
+#: pg_ctl.c:2481
 #, c-format
 msgid "%s: unrecognized operation mode \"%s\"\n"
 msgstr "%s: modo de operación «%s» no reconocido\n"
 
-#: pg_ctl.c:2483
+#: pg_ctl.c:2491
 #, c-format
 msgid "%s: no operation specified\n"
 msgstr "%s: no se especificó operación\n"
 
-#: pg_ctl.c:2504
+#: pg_ctl.c:2512
 #, c-format
 msgid "%s: no database directory specified and environment variable PGDATA unset\n"
 msgstr "%s: no se especificó directorio de datos y la variable PGDATA no está definida\n"
+
+#~ msgid ""
+#~ "\n"
+#~ "Report bugs to <pgsql-bugs@lists.postgresql.org>.\n"
+#~ msgstr ""
+#~ "\n"
+#~ "Reporte errores a <pgsql-bugs@lists.postgresql.org>.\n"
diff --git a/src/bin/pg_dump/po/es.po b/src/bin/pg_dump/po/es.po
index ea927bae768..b932cc50839 100644
--- a/src/bin/pg_dump/po/es.po
+++ b/src/bin/pg_dump/po/es.po
@@ -11,8 +11,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: pg_dump (PostgreSQL) 12\n"
 "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n"
-"POT-Creation-Date: 2019-09-29 23:44+0000\n"
-"PO-Revision-Date: 2019-09-29 22:22-0300\n"
+"POT-Creation-Date: 2020-05-17 02:46+0000\n"
+"PO-Revision-Date: 2020-05-18 12:43+0200\n"
 "Last-Translator: Carlos Chapi <carloswaldo@babelruins.org>\n"
 "Language-Team: PgSQL-es-Ayuda <pgsql-es-ayuda@lists.postgresql.org>\n"
 "Language: es\n"
@@ -22,67 +22,67 @@ msgstr ""
 "Plural-Forms: nplurals=2; plural=n != 1;\n"
 "X-Generator: BlackCAT 1.0\n"
 
-#: ../../../src/common/logging.c:188
+#: ../../../src/common/logging.c:236
 #, c-format
 msgid "fatal: "
 msgstr "fatal: "
 
-#: ../../../src/common/logging.c:195
+#: ../../../src/common/logging.c:243
 #, c-format
 msgid "error: "
 msgstr "error: "
 
-#: ../../../src/common/logging.c:202
+#: ../../../src/common/logging.c:250
 #, c-format
 msgid "warning: "
 msgstr "precaución: "
 
-#: ../../common/exec.c:138 ../../common/exec.c:255 ../../common/exec.c:301
+#: ../../common/exec.c:137 ../../common/exec.c:254 ../../common/exec.c:300
 #, c-format
 msgid "could not identify current directory: %m"
 msgstr "no se pudo identificar el directorio actual: %m"
 
-#: ../../common/exec.c:157
+#: ../../common/exec.c:156
 #, c-format
 msgid "invalid binary \"%s\""
 msgstr "el binario «%s» no es válido"
 
-#: ../../common/exec.c:207
+#: ../../common/exec.c:206
 #, c-format
 msgid "could not read binary \"%s\""
 msgstr "no se pudo leer el binario «%s»"
 
-#: ../../common/exec.c:215
+#: ../../common/exec.c:214
 #, c-format
 msgid "could not find a \"%s\" to execute"
 msgstr "no se pudo encontrar un «%s» para ejecutar"
 
-#: ../../common/exec.c:271 ../../common/exec.c:310
+#: ../../common/exec.c:270 ../../common/exec.c:309
 #, c-format
 msgid "could not change directory to \"%s\": %m"
 msgstr "no se pudo cambiar al directorio «%s»: %m"
 
-#: ../../common/exec.c:288
+#: ../../common/exec.c:287
 #, c-format
 msgid "could not read symbolic link \"%s\": %m"
 msgstr "no se pudo leer el enlace simbólico «%s»: %m"
 
-#: ../../common/exec.c:541
+#: ../../common/exec.c:410
 #, c-format
 msgid "pclose failed: %m"
 msgstr "pclose falló: %m"
 
-#: ../../common/exec.c:670 ../../common/exec.c:715 ../../common/exec.c:807
+#: ../../common/exec.c:539 ../../common/exec.c:584 ../../common/exec.c:676
 msgid "out of memory"
 msgstr "memoria agotada"
 
 #: ../../common/fe_memutils.c:35 ../../common/fe_memutils.c:75
-#: ../../common/fe_memutils.c:98
+#: ../../common/fe_memutils.c:98 ../../common/fe_memutils.c:162
 #, c-format
 msgid "out of memory\n"
 msgstr "memoria agotada\n"
 
-#: ../../common/fe_memutils.c:92
+#: ../../common/fe_memutils.c:92 ../../common/fe_memutils.c:154
 #, c-format
 msgid "cannot duplicate null pointer (internal error)\n"
 msgstr "no se puede duplicar un puntero nulo (error interno)\n"
@@ -117,212 +117,212 @@ msgstr "el proceso hijo fue terminado por una señal %d: %s"
 msgid "child process exited with unrecognized status %d"
 msgstr "el proceso hijo terminó con código no reconocido %d"
 
-#: common.c:123
+#: common.c:121
 #, c-format
 msgid "reading extensions"
 msgstr "leyendo las extensiones"
 
-#: common.c:127
+#: common.c:125
 #, c-format
 msgid "identifying extension members"
 msgstr "identificando miembros de extensión"
 
-#: common.c:130
+#: common.c:128
 #, c-format
 msgid "reading schemas"
 msgstr "leyendo esquemas"
 
-#: common.c:140
+#: common.c:138
 #, c-format
 msgid "reading user-defined tables"
 msgstr "leyendo las tablas definidas por el usuario"
 
-#: common.c:147
+#: common.c:145
 #, c-format
 msgid "reading user-defined functions"
 msgstr "leyendo las funciones definidas por el usuario"
 
-#: common.c:152
+#: common.c:150
 #, c-format
 msgid "reading user-defined types"
 msgstr "leyendo los tipos definidos por el usuario"
 
-#: common.c:157
+#: common.c:155
 #, c-format
 msgid "reading procedural languages"
 msgstr "leyendo los lenguajes procedurales"
 
-#: common.c:160
+#: common.c:158
 #, c-format
 msgid "reading user-defined aggregate functions"
 msgstr "leyendo las funciones de agregación definidas por el usuario"
 
-#: common.c:163
+#: common.c:161
 #, c-format
 msgid "reading user-defined operators"
 msgstr "leyendo los operadores definidos por el usuario"
 
-#: common.c:167
+#: common.c:165
 #, c-format
 msgid "reading user-defined access methods"
 msgstr "leyendo los métodos de acceso definidos por el usuario"
 
-#: common.c:170
+#: common.c:168
 #, c-format
 msgid "reading user-defined operator classes"
 msgstr "leyendo las clases de operadores definidos por el usuario"
 
-#: common.c:173
+#: common.c:171
 #, c-format
 msgid "reading user-defined operator families"
 msgstr "leyendo las familias de operadores definidas por el usuario"
 
-#: common.c:176
+#: common.c:174
 #, c-format
 msgid "reading user-defined text search parsers"
 msgstr "leyendo los procesadores (parsers) de búsqueda en texto definidos por el usuario"
 
-#: common.c:179
+#: common.c:177
 #, c-format
 msgid "reading user-defined text search templates"
 msgstr "leyendo las plantillas de búsqueda en texto definidas por el usuario"
 
-#: common.c:182
+#: common.c:180
 #, c-format
 msgid "reading user-defined text search dictionaries"
 msgstr "leyendo los diccionarios de búsqueda en texto definidos por el usuario"
 
-#: common.c:185
+#: common.c:183
 #, c-format
 msgid "reading user-defined text search configurations"
 msgstr "leyendo las configuraciones de búsqueda en texto definidas por el usuario"
 
-#: common.c:188
+#: common.c:186
 #, c-format
 msgid "reading user-defined foreign-data wrappers"
 msgstr "leyendo los conectores de datos externos definidos por el usuario"
 
-#: common.c:191
+#: common.c:189
 #, c-format
 msgid "reading user-defined foreign servers"
 msgstr "leyendo los servidores foráneos definidas por el usuario"
 
-#: common.c:194
+#: common.c:192
 #, c-format
 msgid "reading default privileges"
 msgstr "leyendo los privilegios por omisión"
 
-#: common.c:197
+#: common.c:195
 #, c-format
 msgid "reading user-defined collations"
 msgstr "leyendo los ordenamientos definidos por el usuario"
 
-#: common.c:201
+#: common.c:199
 #, c-format
 msgid "reading user-defined conversions"
 msgstr "leyendo las conversiones definidas por el usuario"
 
-#: common.c:204
+#: common.c:202
 #, c-format
 msgid "reading type casts"
 msgstr "leyendo conversiones de tipo"
 
-#: common.c:207
+#: common.c:205
 #, c-format
 msgid "reading transforms"
 msgstr "leyendo las transformaciones"
 
-#: common.c:210
+#: common.c:208
 #, c-format
 msgid "reading table inheritance information"
 msgstr "leyendo la información de herencia de las tablas"
 
-#: common.c:213
+#: common.c:211
 #, c-format
 msgid "reading event triggers"
 msgstr "leyendo los disparadores por eventos"
 
-#: common.c:217
+#: common.c:215
 #, c-format
 msgid "finding extension tables"
 msgstr "buscando tablas de extensión"
 
-#: common.c:221
+#: common.c:219
 #, c-format
 msgid "finding inheritance relationships"
 msgstr "buscando relaciones de herencia"
 
-#: common.c:224
+#: common.c:222
 #, c-format
 msgid "reading column info for interesting tables"
 msgstr "leyendo la información de columnas para las tablas interesantes"
 
-#: common.c:227
+#: common.c:225
 #, c-format
 msgid "flagging inherited columns in subtables"
 msgstr "marcando las columnas heredadas en las subtablas"
 
-#: common.c:230
+#: common.c:228
 #, c-format
 msgid "reading indexes"
 msgstr "leyendo los índices"
 
-#: common.c:233
+#: common.c:231
 #, c-format
 msgid "flagging indexes in partitioned tables"
 msgstr "marcando índices en las tablas particionadas"
 
-#: common.c:236
+#: common.c:234
 #, c-format
 msgid "reading extended statistics"
 msgstr "leyendo estadísticas extendidas"
 
-#: common.c:239
+#: common.c:237
 #, c-format
 msgid "reading constraints"
 msgstr "leyendo las restricciones"
 
-#: common.c:242
+#: common.c:240
 #, c-format
 msgid "reading triggers"
 msgstr "leyendo los disparadores (triggers)"
 
-#: common.c:245
+#: common.c:243
 #, c-format
 msgid "reading rewrite rules"
 msgstr "leyendo las reglas de reescritura"
 
-#: common.c:248
+#: common.c:246
 #, c-format
 msgid "reading policies"
 msgstr "leyendo políticas"
 
-#: common.c:251
+#: common.c:249
 #, c-format
 msgid "reading publications"
 msgstr "leyendo publicaciones"
 
-#: common.c:254
+#: common.c:252
 #, c-format
 msgid "reading publication membership"
 msgstr "leyendo membresía en publicaciones"
 
-#: common.c:257
+#: common.c:255
 #, c-format
 msgid "reading subscriptions"
 msgstr "leyendo las suscripciones"
 
-#: common.c:1023
+#: common.c:1025
 #, c-format
 msgid "failed sanity check, parent OID %u of table \"%s\" (OID %u) not found"
 msgstr "falló la revisión de integridad, el OID %u del padre de la tabla «%s» (OID %u) no se encontró"
 
-#: common.c:1065
+#: common.c:1067
 #, c-format
 msgid "could not parse numeric array \"%s\": too many numbers"
 msgstr "no se pudo interpretar el arreglo numérico «%s»: demasiados números"
 
-#: common.c:1080
+#: common.c:1082
 #, c-format
 msgid "could not parse numeric array \"%s\": invalid character in number"
 msgstr "no se pudo interpretar el arreglo numérico «%s»: carácter no válido en número"
@@ -332,74 +332,74 @@ msgstr "no se pudo interpretar el arreglo numérico «%s»: carácter no válido
 msgid "invalid compression code: %d"
 msgstr "código de compresión no válido: %d"
 
-#: compress_io.c:134 compress_io.c:170 compress_io.c:188 compress_io.c:508
-#: compress_io.c:551
+#: compress_io.c:134 compress_io.c:170 compress_io.c:188 compress_io.c:504
+#: compress_io.c:547
 #, c-format
 msgid "not built with zlib support"
 msgstr "no contiene soporte zlib"
 
-#: compress_io.c:237 compress_io.c:336
+#: compress_io.c:236 compress_io.c:333
 #, c-format
 msgid "could not initialize compression library: %s"
 msgstr "no se pudo inicializar la biblioteca de compresión: %s"
 
-#: compress_io.c:257
+#: compress_io.c:256
 #, c-format
 msgid "could not close compression stream: %s"
 msgstr "no se pudo cerrar el flujo comprimido: %s"
 
-#: compress_io.c:274
+#: compress_io.c:273
 #, c-format
 msgid "could not compress data: %s"
 msgstr "no se pudo comprimir datos: %s"
 
-#: compress_io.c:352 compress_io.c:367
+#: compress_io.c:349 compress_io.c:364
 #, c-format
 msgid "could not uncompress data: %s"
 msgstr "no se pudo descomprimir datos: %s"
 
-#: compress_io.c:374
+#: compress_io.c:371
 #, c-format
 msgid "could not close compression library: %s"
 msgstr "no se pudo cerrar la biblioteca de compresión: %s"
 
-#: compress_io.c:588 compress_io.c:625 pg_backup_tar.c:555 pg_backup_tar.c:558
+#: compress_io.c:584 compress_io.c:621 pg_backup_tar.c:557 pg_backup_tar.c:560
 #, c-format
 msgid "could not read from input file: %s"
 msgstr "no se pudo leer el archivo de entrada: %s"
 
-#: compress_io.c:627 pg_backup_custom.c:578 pg_backup_directory.c:539
-#: pg_backup_tar.c:795 pg_backup_tar.c:818
+#: compress_io.c:623 pg_backup_custom.c:575 pg_backup_directory.c:534
+#: pg_backup_tar.c:793 pg_backup_tar.c:816
 #, c-format
 msgid "could not read from input file: end of file"
 msgstr "no se pudo leer desde el archivo de entrada: fin de archivo"
 
-#: parallel.c:263
+#: parallel.c:267
 #, c-format
 msgid "WSAStartup failed: %d"
 msgstr "WSAStartup falló: %d"
 
-#: parallel.c:968
+#: parallel.c:978
 #, c-format
 msgid "could not create communication channels: %m"
 msgstr "no se pudo crear los canales de comunicación: %m"
 
-#: parallel.c:1031
+#: parallel.c:1035
 #, c-format
 msgid "could not create worker process: %m"
 msgstr "no se pudo crear el proceso hijo: %m"
 
-#: parallel.c:1160
+#: parallel.c:1165
 #, c-format
 msgid "unrecognized command received from master: \"%s\""
 msgstr "orden no reconocida recibida del servidor: «%s»"
 
-#: parallel.c:1203 parallel.c:1441
+#: parallel.c:1208 parallel.c:1446
 #, c-format
 msgid "invalid message received from worker: \"%s\""
 msgstr "mensaje no válido recibido del proceso hijo: «%s»"
 
-#: parallel.c:1335
+#: parallel.c:1340
 #, c-format
 msgid ""
 "could not obtain lock on relation \"%s\"\n"
@@ -408,688 +408,681 @@ msgstr ""
 "no se pudo obtener un lock en la relación «%s»\n"
 "Esto normalmente significa que alguien solicitó un lock ACCESS EXCLUSIVE en la tabla después de que el proceso pg_dump padre había obtenido el lock ACCESS SHARE en la tabla."
 
-#: parallel.c:1424
+#: parallel.c:1429
 #, c-format
 msgid "a worker process died unexpectedly"
 msgstr "un proceso hijo murió inesperadamente"
 
-#: parallel.c:1546 parallel.c:1662
+#: parallel.c:1551 parallel.c:1669
 #, c-format
 msgid "could not write to the communication channel: %m"
 msgstr "no se pudo escribir al canal de comunicación: %m"
 
-#: parallel.c:1623
+#: parallel.c:1628
 #, c-format
 msgid "select() failed: %m"
 msgstr "select() fallida: %m"
 
-#: parallel.c:1746
+#: parallel.c:1753
 #, c-format
 msgid "pgpipe: could not create socket: error code %d"
 msgstr "pgpipe: no se pudo crear el socket: código de error %d"
 
-#: parallel.c:1757
+#: parallel.c:1764
 #, c-format
 msgid "pgpipe: could not bind: error code %d"
 msgstr "pgpipe: no se pudo enlazar: código de error %d"
 
-#: parallel.c:1764
+#: parallel.c:1771
 #, c-format
 msgid "pgpipe: could not listen: error code %d"
 msgstr "pgpipe: no se pudo escuchar: código de error %d"
 
-#: parallel.c:1771
+#: parallel.c:1778
 #, c-format
 msgid "pgpipe: getsockname() failed: error code %d"
 msgstr "pgpipe: getsockname() falló: código de error %d"
 
-#: parallel.c:1782
+#: parallel.c:1789
 #, c-format
 msgid "pgpipe: could not create second socket: error code %d"
 msgstr "pgpipe: no se pudo crear el segundo socket: código de error %d"
 
-#: parallel.c:1791
+#: parallel.c:1798
 #, c-format
 msgid "pgpipe: could not connect socket: error code %d"
 msgstr "pgpipe: no se pudo conectar el socket: código de error %d"
 
-#: parallel.c:1800
+#: parallel.c:1807
 #, c-format
 msgid "pgpipe: could not accept connection: error code %d"
 msgstr "pgpipe: no se pudo aceptar la conexión: código de error %d"
 
-#: pg_backup_archiver.c:272 pg_backup_archiver.c:1595
+#: pg_backup_archiver.c:271 pg_backup_archiver.c:1591
 #, c-format
 msgid "could not close output file: %m"
 msgstr "no se pudo cerrar el archivo de salida: %m"
 
-#: pg_backup_archiver.c:316 pg_backup_archiver.c:320
+#: pg_backup_archiver.c:315 pg_backup_archiver.c:319
 #, c-format
 msgid "archive items not in correct section order"
 msgstr "elementos del archivo no están en el orden correcto de secciones"
 
-#: pg_backup_archiver.c:326
+#: pg_backup_archiver.c:325
 #, c-format
 msgid "unexpected section code %d"
 msgstr "código de sección %d inesperado"
 
-#: pg_backup_archiver.c:363
+#: pg_backup_archiver.c:362
 #, c-format
 msgid "parallel restore is not supported with this archive file format"
 msgstr "la restauración en paralelo no está soportada con este formato de archivo"
 
-#: pg_backup_archiver.c:367
+#: pg_backup_archiver.c:366
 #, c-format
 msgid "parallel restore is not supported with archives made by pre-8.0 pg_dump"
 msgstr "la restauración en paralelo no está soportada con archivos construidos con pg_dump anterior a 8.0"
 
-#: pg_backup_archiver.c:385
+#: pg_backup_archiver.c:384
 #, c-format
 msgid "cannot restore from compressed archive (compression not supported in this installation)"
 msgstr "no se puede reestablecer desde un archivo comprimido (la compresión no está soportada en esta instalación)"
 
-#: pg_backup_archiver.c:402
+#: pg_backup_archiver.c:401
 #, c-format
 msgid "connecting to database for restore"
 msgstr "conectando a la base de datos para reestablecimiento"
 
-#: pg_backup_archiver.c:404
+#: pg_backup_archiver.c:403
 #, c-format
 msgid "direct database connections are not supported in pre-1.3 archives"
 msgstr "las conexiones directas a la base de datos no están soportadas en archivadores pre-1.3"
 
-#: pg_backup_archiver.c:449
+#: pg_backup_archiver.c:448
 #, c-format
 msgid "implied data-only restore"
 msgstr "asumiendo reestablecimiento de sólo datos"
 
-#: pg_backup_archiver.c:515
+#: pg_backup_archiver.c:514
 #, c-format
 msgid "dropping %s %s"
 msgstr "eliminando %s %s"
 
-#: pg_backup_archiver.c:610
+#: pg_backup_archiver.c:609
 #, c-format
 msgid "could not find where to insert IF EXISTS in statement \"%s\""
 msgstr "no se pudo encontrar dónde insertar IF EXISTS en la sentencia «%s»"
 
-#: pg_backup_archiver.c:766 pg_backup_archiver.c:768
+#: pg_backup_archiver.c:765 pg_backup_archiver.c:767
 #, c-format
 msgid "warning from original dump file: %s"
 msgstr "precaución desde el archivo original: %s"
 
-#: pg_backup_archiver.c:783
+#: pg_backup_archiver.c:782
 #, c-format
 msgid "creating %s \"%s.%s\""
 msgstr "creando %s «%s.%s»"
 
-#: pg_backup_archiver.c:786
+#: pg_backup_archiver.c:785
 #, c-format
 msgid "creating %s \"%s\""
 msgstr "creando %s «%s»"
 
-#: pg_backup_archiver.c:843
+#: pg_backup_archiver.c:842
 #, c-format
 msgid "connecting to new database \"%s\""
 msgstr "conectando a nueva base de datos «%s»"
 
-#: pg_backup_archiver.c:871
+#: pg_backup_archiver.c:870
 #, c-format
 msgid "processing %s"
 msgstr "procesando %s"
 
-#: pg_backup_archiver.c:891
+#: pg_backup_archiver.c:890
 #, c-format
 msgid "processing data for table \"%s.%s\""
 msgstr "procesando datos de la tabla «%s.%s»"
 
-#: pg_backup_archiver.c:953
+#: pg_backup_archiver.c:952
 #, c-format
 msgid "executing %s %s"
 msgstr "ejecutando %s %s"
 
-#: pg_backup_archiver.c:992
+#: pg_backup_archiver.c:991
 #, c-format
 msgid "disabling triggers for %s"
 msgstr "deshabilitando disparadores (triggers) para %s"
 
-#: pg_backup_archiver.c:1018
+#: pg_backup_archiver.c:1017
 #, c-format
 msgid "enabling triggers for %s"
 msgstr "habilitando disparadores (triggers) para %s"
 
-#: pg_backup_archiver.c:1046
+#: pg_backup_archiver.c:1045
 #, c-format
 msgid "internal error -- WriteData cannot be called outside the context of a DataDumper routine"
 msgstr "error interno -- WriteData no puede ser llamada fuera del contexto de una rutina DataDumper"
 
-#: pg_backup_archiver.c:1231
+#: pg_backup_archiver.c:1228
 #, c-format
 msgid "large-object output not supported in chosen format"
 msgstr "la extracción de objetos grandes no está soportada en el formato seleccionado"
 
-#: pg_backup_archiver.c:1289
+#: pg_backup_archiver.c:1286
 #, c-format
 msgid "restored %d large object"
 msgid_plural "restored %d large objects"
 msgstr[0] "se reestableció %d objeto grande"
 msgstr[1] "se reestablecieron %d objetos grandes"
 
-#: pg_backup_archiver.c:1310 pg_backup_tar.c:738
+#: pg_backup_archiver.c:1307 pg_backup_tar.c:736
 #, c-format
 msgid "restoring large object with OID %u"
 msgstr "reestableciendo objeto grande con OID %u"
 
-#: pg_backup_archiver.c:1322
+#: pg_backup_archiver.c:1319
 #, c-format
 msgid "could not create large object %u: %s"
 msgstr "no se pudo crear el objeto grande %u: %s"
 
-#: pg_backup_archiver.c:1327 pg_dump.c:3471
+#: pg_backup_archiver.c:1324 pg_dump.c:3549
 #, c-format
 msgid "could not open large object %u: %s"
 msgstr "no se pudo abrir el objeto grande %u: %s"
 
-#: pg_backup_archiver.c:1384
+#: pg_backup_archiver.c:1381
 #, c-format
 msgid "could not open TOC file \"%s\": %m"
 msgstr "no se pudo abrir el archivo TOC «%s»: %m"
 
-#: pg_backup_archiver.c:1424
+#: pg_backup_archiver.c:1421
 #, c-format
 msgid "line ignored: %s"
 msgstr "línea ignorada: %s"
 
-#: pg_backup_archiver.c:1431
+#: pg_backup_archiver.c:1428
 #, c-format
 msgid "could not find entry for ID %d"
 msgstr "no se pudo encontrar una entrada para el ID %d"
 
-#: pg_backup_archiver.c:1452 pg_backup_directory.c:222
-#: pg_backup_directory.c:587
+#: pg_backup_archiver.c:1449 pg_backup_directory.c:222
+#: pg_backup_directory.c:580
 #, c-format
 msgid "could not close TOC file: %m"
 msgstr "no se pudo cerrar el archivo TOC: %m"
 
-#: pg_backup_archiver.c:1567 pg_backup_custom.c:159 pg_backup_directory.c:332
-#: pg_backup_directory.c:574 pg_backup_directory.c:637
-#: pg_backup_directory.c:656 pg_dumpall.c:485
+#: pg_backup_archiver.c:1563 pg_backup_custom.c:158 pg_backup_directory.c:332
+#: pg_backup_directory.c:567 pg_backup_directory.c:630
+#: pg_backup_directory.c:649 pg_dumpall.c:484
 #, c-format
 msgid "could not open output file \"%s\": %m"
 msgstr "no se pudo abrir el archivo de salida «%s»: %m"
 
-#: pg_backup_archiver.c:1569 pg_backup_custom.c:165
+#: pg_backup_archiver.c:1565 pg_backup_custom.c:164
 #, c-format
 msgid "could not open output file: %m"
 msgstr "no se pudo abrir el archivo de salida: %m"
 
-#: pg_backup_archiver.c:1662
+#: pg_backup_archiver.c:1658
 #, c-format
 msgid "wrote %lu byte of large object data (result = %lu)"
 msgid_plural "wrote %lu bytes of large object data (result = %lu)"
 msgstr[0] "se escribió %lu byte de los datos del objeto grande (resultado = %lu)"
 msgstr[1] "se escribieron %lu bytes de los datos del objeto grande (resultado = %lu)"
 
-#: pg_backup_archiver.c:1667
+#: pg_backup_archiver.c:1663
 #, c-format
 msgid "could not write to large object (result: %lu, expected: %lu)"
 msgstr "no se pudo escribir al objecto grande (resultado: %lu, esperado: %lu)"
 
-#: pg_backup_archiver.c:1759
+#: pg_backup_archiver.c:1753
 #, c-format
 msgid "while INITIALIZING:"
 msgstr "durante INICIALIZACIÓN:"
 
-#: pg_backup_archiver.c:1764
+#: pg_backup_archiver.c:1758
 #, c-format
 msgid "while PROCESSING TOC:"
 msgstr "durante PROCESAMIENTO DE TABLA DE CONTENIDOS:"
 
-#: pg_backup_archiver.c:1769
+#: pg_backup_archiver.c:1763
 #, c-format
 msgid "while FINALIZING:"
 msgstr "durante FINALIZACIÓN:"
 
-#: pg_backup_archiver.c:1774
+#: pg_backup_archiver.c:1768
 #, c-format
 msgid "from TOC entry %d; %u %u %s %s %s"
 msgstr "en entrada de la tabla de contenidos %d; %u %u %s %s %s"
 
-#: pg_backup_archiver.c:1850
+#: pg_backup_archiver.c:1844
 #, c-format
 msgid "bad dumpId"
 msgstr "dumpId incorrecto"
 
-#: pg_backup_archiver.c:1871
+#: pg_backup_archiver.c:1865
 #, c-format
 msgid "bad table dumpId for TABLE DATA item"
 msgstr "dumpId de tabla incorrecto para elemento TABLE DATA"
 
-#: pg_backup_archiver.c:1963
+#: pg_backup_archiver.c:1957
 #, c-format
 msgid "unexpected data offset flag %d"
 msgstr "bandera de posición inesperada %d"
 
-#: pg_backup_archiver.c:1976
+#: pg_backup_archiver.c:1970
 #, c-format
 msgid "file offset in dump file is too large"
 msgstr "el posición en el archivo es demasiado grande"
 
-#: pg_backup_archiver.c:2113 pg_backup_archiver.c:2123
+#: pg_backup_archiver.c:2107 pg_backup_archiver.c:2117
 #, c-format
 msgid "directory name too long: \"%s\""
 msgstr "nombre de directorio demasiado largo: «%s»"
 
-#: pg_backup_archiver.c:2131
+#: pg_backup_archiver.c:2125
 #, c-format
 msgid "directory \"%s\" does not appear to be a valid archive (\"toc.dat\" does not exist)"
 msgstr "el directorio «%s» no parece ser un archivador válido (no existe «toc.dat»)"
 
-#: pg_backup_archiver.c:2139 pg_backup_custom.c:176 pg_backup_custom.c:760
-#: pg_backup_directory.c:207 pg_backup_directory.c:391
+#: pg_backup_archiver.c:2133 pg_backup_custom.c:175 pg_backup_custom.c:753
+#: pg_backup_directory.c:207 pg_backup_directory.c:388
 #, c-format
 msgid "could not open input file \"%s\": %m"
 msgstr "no se pudo abrir el archivo de entrada «%s»: %m"
 
-#: pg_backup_archiver.c:2146 pg_backup_custom.c:182
+#: pg_backup_archiver.c:2140 pg_backup_custom.c:181
 #, c-format
 msgid "could not open input file: %m"
 msgstr "no se pudo abrir el archivo de entrada: %m"
 
-#: pg_backup_archiver.c:2152
+#: pg_backup_archiver.c:2146
 #, c-format
 msgid "could not read input file: %m"
 msgstr "no se pudo leer el archivo de entrada: %m"
 
-#: pg_backup_archiver.c:2154
+#: pg_backup_archiver.c:2148
 #, c-format
 msgid "input file is too short (read %lu, expected 5)"
 msgstr "el archivo de entrada es demasiado corto (leidos %lu, esperados 5)"
 
-#: pg_backup_archiver.c:2239
+#: pg_backup_archiver.c:2233
 #, c-format
 msgid "input file appears to be a text format dump. Please use psql."
 msgstr "el archivo de entrada parece ser un volcado de texto. Por favor use psql."
 
-#: pg_backup_archiver.c:2245
+#: pg_backup_archiver.c:2239
 #, c-format
 msgid "input file does not appear to be a valid archive (too short?)"
 msgstr "el archivo de entrada no parece ser un archivador válido (¿demasiado corto?)"
 
-#: pg_backup_archiver.c:2251
+#: pg_backup_archiver.c:2245
 #, c-format
 msgid "input file does not appear to be a valid archive"
 msgstr "el archivo de entrada no parece ser un archivador válido"
 
-#: pg_backup_archiver.c:2271
+#: pg_backup_archiver.c:2265
 #, c-format
 msgid "could not close input file: %m"
 msgstr "no se pudo cerrar el archivo de entrada: %m"
 
-#: pg_backup_archiver.c:2385
+#: pg_backup_archiver.c:2379
 #, c-format
 msgid "unrecognized file format \"%d\""
 msgstr "formato de archivo no reconocido «%d»"
 
-#: pg_backup_archiver.c:2467 pg_backup_archiver.c:4475
+#: pg_backup_archiver.c:2461 pg_backup_archiver.c:4473
 #, c-format
 msgid "finished item %d %s %s"
 msgstr "terminó el elemento %d %s %s"
 
-#: pg_backup_archiver.c:2471 pg_backup_archiver.c:4488
+#: pg_backup_archiver.c:2465 pg_backup_archiver.c:4486
 #, c-format
 msgid "worker process failed: exit code %d"
 msgstr "el proceso hijo falló: código de salida %d"
 
-#: pg_backup_archiver.c:2591
+#: pg_backup_archiver.c:2585
 #, c-format
 msgid "entry ID %d out of range -- perhaps a corrupt TOC"
 msgstr "la entrada con ID %d está fuera de rango -- tal vez la tabla de contenido está corrupta"
 
-#: pg_backup_archiver.c:2658
+#: pg_backup_archiver.c:2652
 #, c-format
 msgid "restoring tables WITH OIDS is not supported anymore"
 msgstr "restaurar tablas WITH OIDS ya no está soportado"
 
-#: pg_backup_archiver.c:2740
+#: pg_backup_archiver.c:2734
 #, c-format
 msgid "unrecognized encoding \"%s\""
 msgstr "no se reconoce la codificación: «%s»"
 
-#: pg_backup_archiver.c:2745
+#: pg_backup_archiver.c:2739
 #, c-format
 msgid "invalid ENCODING item: %s"
 msgstr "elemento ENCODING no válido: %s"
 
-#: pg_backup_archiver.c:2763
+#: pg_backup_archiver.c:2757
 #, c-format
 msgid "invalid STDSTRINGS item: %s"
 msgstr "elemento STDSTRINGS no válido: %s"
 
-#: pg_backup_archiver.c:2788
+#: pg_backup_archiver.c:2782
 #, c-format
 msgid "schema \"%s\" not found"
 msgstr "esquema «%s» no encontrado"
 
-#: pg_backup_archiver.c:2795
+#: pg_backup_archiver.c:2789
 #, c-format
 msgid "table \"%s\" not found"
 msgstr "tabla «%s» no encontrada"
 
-#: pg_backup_archiver.c:2802
+#: pg_backup_archiver.c:2796
 #, c-format
 msgid "index \"%s\" not found"
 msgstr "índice «%s» no encontrado"
 
-#: pg_backup_archiver.c:2809
+#: pg_backup_archiver.c:2803
 #, c-format
 msgid "function \"%s\" not found"
 msgstr "función «%s» no encontrada"
 
-#: pg_backup_archiver.c:2816
+#: pg_backup_archiver.c:2810
 #, c-format
 msgid "trigger \"%s\" not found"
 msgstr "disparador «%s» no encontrado"
 
-#: pg_backup_archiver.c:3195
+#: pg_backup_archiver.c:3202
 #, c-format
 msgid "could not set session user to \"%s\": %s"
 msgstr "no se pudo establecer el usuario de sesión a «%s»: %s"
 
-#: pg_backup_archiver.c:3334
+#: pg_backup_archiver.c:3341
 #, c-format
-#| msgid "could not clear search_path: %s"
 msgid "could not set search_path to \"%s\": %s"
 msgstr "no se pudo definir search_path a «%s»: %s"
 
-#: pg_backup_archiver.c:3396
+#: pg_backup_archiver.c:3403
 #, c-format
-#| msgid "could not stat tablespace directory \"%s\": %s\n"
 msgid "could not set default_tablespace to %s: %s"
 msgstr "no se pudo definir default_tablespace a %s: %s"
 
-#: pg_backup_archiver.c:3441
+#: pg_backup_archiver.c:3448
 #, c-format
-#| msgid "could not stat tablespace directory \"%s\": %s\n"
 msgid "could not set default_table_access_method: %s"
 msgstr "no se pudo definir default_table_access_method: %s"
 
-#: pg_backup_archiver.c:3533 pg_backup_archiver.c:3691
+#: pg_backup_archiver.c:3540 pg_backup_archiver.c:3698
 #, c-format
 msgid "don't know how to set owner for object type \"%s\""
 msgstr "no se sabe cómo establecer el dueño para el objeto de tipo «%s»"
 
-#: pg_backup_archiver.c:3795
+#: pg_backup_archiver.c:3802
 #, c-format
 msgid "did not find magic string in file header"
 msgstr "no se encontró la cadena mágica en el encabezado del archivo"
 
-#: pg_backup_archiver.c:3808
+#: pg_backup_archiver.c:3815
 #, c-format
 msgid "unsupported version (%d.%d) in file header"
 msgstr "versión no soportada (%d.%d) en el encabezado del archivo"
 
-#: pg_backup_archiver.c:3813
+#: pg_backup_archiver.c:3820
 #, c-format
 msgid "sanity check on integer size (%lu) failed"
 msgstr "revisión de integridad en el tamaño del entero (%lu) falló"
 
-#: pg_backup_archiver.c:3817
+#: pg_backup_archiver.c:3824
 #, c-format
 msgid "archive was made on a machine with larger integers, some operations might fail"
 msgstr "el archivador fue hecho en una máquina con enteros más grandes, algunas operaciones podrían fallar"
 
-#: pg_backup_archiver.c:3827
+#: pg_backup_archiver.c:3834
 #, c-format
 msgid "expected format (%d) differs from format found in file (%d)"
 msgstr "el formato esperado (%d) difiere del formato encontrado en el archivo (%d)"
 
-#: pg_backup_archiver.c:3843
+#: pg_backup_archiver.c:3850
 #, c-format
 msgid "archive is compressed, but this installation does not support compression -- no data will be available"
 msgstr "el archivador está comprimido, pero esta instalación no soporta compresión -- no habrá datos disponibles"
 
-#: pg_backup_archiver.c:3861
+#: pg_backup_archiver.c:3868
 #, c-format
 msgid "invalid creation date in header"
 msgstr "la fecha de creación en el encabezado no es válida"
 
-#: pg_backup_archiver.c:3998
+#: pg_backup_archiver.c:3996
 #, c-format
 msgid "processing item %d %s %s"
 msgstr "procesando el elemento %d %s %s"
 
-#: pg_backup_archiver.c:4077
+#: pg_backup_archiver.c:4075
 #, c-format
 msgid "entering main parallel loop"
 msgstr "ingresando al bucle paralelo principal"
 
-#: pg_backup_archiver.c:4088
+#: pg_backup_archiver.c:4086
 #, c-format
 msgid "skipping item %d %s %s"
 msgstr "saltando el elemento %d %s %s"
 
-#: pg_backup_archiver.c:4097
+#: pg_backup_archiver.c:4095
 #, c-format
 msgid "launching item %d %s %s"
 msgstr "lanzando el elemento %d %s %s"
 
-#: pg_backup_archiver.c:4151
+#: pg_backup_archiver.c:4149
 #, c-format
 msgid "finished main parallel loop"
 msgstr "terminó el bucle paralelo principal"
 
-#: pg_backup_archiver.c:4189
+#: pg_backup_archiver.c:4187
 #, c-format
 msgid "processing missed item %d %s %s"
 msgstr "procesando el elemento saltado %d %s %s"
 
-#: pg_backup_archiver.c:4794
+#: pg_backup_archiver.c:4792
 #, c-format
 msgid "table \"%s\" could not be created, will not restore its data"
 msgstr "la tabla «%s» no pudo ser creada, no se recuperarán sus datos"
 
-#: pg_backup_custom.c:377 pg_backup_null.c:150
+#: pg_backup_custom.c:374 pg_backup_null.c:147
 #, c-format
 msgid "invalid OID for large object"
 msgstr "OID no válido para objeto grande"
 
-#: pg_backup_custom.c:447
+#: pg_backup_custom.c:444
 #, c-format
 msgid "unrecognized data block type (%d) while searching archive"
 msgstr "tipo de bloque de datos (%d) no conocido al buscar en el archivador"
 
-#: pg_backup_custom.c:458 pg_backup_custom.c:818
+#: pg_backup_custom.c:455 pg_backup_custom.c:811
 #, c-format
 msgid "error during file seek: %m"
 msgstr "error durante el posicionamiento (seek) en el archivo: %m"
 
-#: pg_backup_custom.c:467
+#: pg_backup_custom.c:464
 #, c-format
 msgid "could not find block ID %d in archive -- possibly due to out-of-order restore request, which cannot be handled due to lack of data offsets in archive"
 msgstr "no se pudo encontrar el bloque con ID %d en archivo -- posiblemente debido a una petición de restauración fuera de orden, la que no puede ser satisfecha debido a la falta de información de posicionamiento en el archivo"
 
-#: pg_backup_custom.c:472
+#: pg_backup_custom.c:469
 #, c-format
 msgid "could not find block ID %d in archive -- possibly due to out-of-order restore request, which cannot be handled due to non-seekable input file"
 msgstr "no se pudo encontrar el bloque con ID %d en archivo -- posiblemente debido a una petición de restauración fuera de orden, la que no puede ser completada debido a que en el archivo de entrada no es reposicionable (seekable)"
 
-#: pg_backup_custom.c:477
+#: pg_backup_custom.c:474
 #, c-format
 msgid "could not find block ID %d in archive -- possibly corrupt archive"
 msgstr "no se pudo encontrar el bloque con ID %d en archivo -- posiblemente el archivo está corrupto"
 
-#: pg_backup_custom.c:484
+#: pg_backup_custom.c:481
 #, c-format
 msgid "found unexpected block ID (%d) when reading data -- expected %d"
 msgstr "se encontró un bloque no esperado ID (%d) mientras se leían los datos -- se esperaba %d"
 
-#: pg_backup_custom.c:498
+#: pg_backup_custom.c:495
 #, c-format
 msgid "unrecognized data block type %d while restoring archive"
 msgstr "se encontró un bloque tipo %d no reconocido al restablecer el archivador"
 
-#: pg_backup_custom.c:580
+#: pg_backup_custom.c:577
 #, c-format
 msgid "could not read from input file: %m"
 msgstr "no se pudo leer el archivo de entrada: %m"
 
-#: pg_backup_custom.c:698 pg_backup_custom.c:751 pg_backup_custom.c:891
-#: pg_backup_tar.c:1091
+#: pg_backup_custom.c:691 pg_backup_custom.c:744 pg_backup_custom.c:884
+#: pg_backup_tar.c:1088
 #, c-format
 msgid "could not determine seek position in archive file: %m"
 msgstr "no se pudo determinar la posición (seek) en el archivo del archivador: %m"
 
-#: pg_backup_custom.c:715 pg_backup_custom.c:755
+#: pg_backup_custom.c:708 pg_backup_custom.c:748
 #, c-format
 msgid "could not close archive file: %m"
 msgstr "no se pudo cerrar el archivo del archivador: %m"
 
-#: pg_backup_custom.c:738
+#: pg_backup_custom.c:731
 #, c-format
 msgid "can only reopen input archives"
 msgstr "sólo se pueden reabrir archivos de entrada"
 
-#: pg_backup_custom.c:745
+#: pg_backup_custom.c:738
 #, c-format
 msgid "parallel restore from standard input is not supported"
 msgstr "la restauración en paralelo desde entrada estándar (stdin) no está soportada"
 
-#: pg_backup_custom.c:747
+#: pg_backup_custom.c:740
 #, c-format
 msgid "parallel restore from non-seekable file is not supported"
 msgstr "la restauración en paralelo desde un archivo no posicionable no está soportada"
 
-#: pg_backup_custom.c:763
+#: pg_backup_custom.c:756
 #, c-format
 msgid "could not set seek position in archive file: %m"
 msgstr "no se pudo posicionar (seek) en el archivo del archivador: %m"
 
-#: pg_backup_custom.c:839
+#: pg_backup_custom.c:832
 #, c-format
 msgid "compressor active"
 msgstr "compresor activo"
 
-#: pg_backup_custom.c:894
+#: pg_backup_custom.c:887
 #, c-format
 msgid "ftell mismatch with expected position -- ftell used"
 msgstr "ftell no coincide con la posición esperada -- se usó ftell"
 
-#: pg_backup_db.c:44
+#: pg_backup_db.c:42
 #, c-format
 msgid "could not get server_version from libpq"
 msgstr "no se pudo obtener server_version desde libpq"
 
-#: pg_backup_db.c:55 pg_dumpall.c:1826
+#: pg_backup_db.c:53 pg_dumpall.c:1826
 #, c-format
 msgid "server version: %s; %s version: %s"
 msgstr "versión del servidor: %s; versión de %s: %s"
 
-#: pg_backup_db.c:57 pg_dumpall.c:1828
+#: pg_backup_db.c:55 pg_dumpall.c:1828
 #, c-format
 msgid "aborting because of server version mismatch"
 msgstr "abortando debido a que no coincide la versión del servidor"
 
-#: pg_backup_db.c:140
+#: pg_backup_db.c:138
 #, c-format
 msgid "connecting to database \"%s\" as user \"%s\""
 msgstr "conectandose a la base de datos \"%s\" como el usuario «%s»"
 
-#: pg_backup_db.c:147 pg_backup_db.c:196 pg_backup_db.c:257 pg_backup_db.c:298
+#: pg_backup_db.c:145 pg_backup_db.c:194 pg_backup_db.c:255 pg_backup_db.c:296
 #: pg_dumpall.c:1651 pg_dumpall.c:1764
 msgid "Password: "
 msgstr "Contraseña: "
 
-#: pg_backup_db.c:179
+#: pg_backup_db.c:177
 #, c-format
-#| msgid "could not reconnect to database: %s"
 msgid "could not reconnect to database"
 msgstr "no se pudo hacer la reconexión a la base de datos"
 
-#: pg_backup_db.c:184
+#: pg_backup_db.c:182
 #, c-format
 msgid "could not reconnect to database: %s"
 msgstr "no se pudo hacer la reconexión a la base de datos: %s"
 
-#: pg_backup_db.c:200
+#: pg_backup_db.c:198
 #, c-format
 msgid "connection needs password"
 msgstr "la conexión necesita contraseña"
 
-#: pg_backup_db.c:251
+#: pg_backup_db.c:249
 #, c-format
 msgid "already connected to a database"
 msgstr "ya está conectado a una base de datos"
 
-#: pg_backup_db.c:290
+#: pg_backup_db.c:288
 #, c-format
-#| msgid "could not connect to database \"%s\""
 msgid "could not connect to database"
 msgstr "no se pudo hacer la conexión a la base de datos"
 
-#: pg_backup_db.c:306
+#: pg_backup_db.c:304
 #, c-format
 msgid "connection to database \"%s\" failed: %s"
 msgstr "falló la conexión a la base de datos «%s»: %s"
 
-#: pg_backup_db.c:378 pg_dumpall.c:1684
+#: pg_backup_db.c:376 pg_dumpall.c:1684
 #, c-format
 msgid "%s"
 msgstr "%s"
 
-#: pg_backup_db.c:385 pg_dumpall.c:1889 pg_dumpall.c:1912
+#: pg_backup_db.c:383 pg_dumpall.c:1889 pg_dumpall.c:1912
 #, c-format
 msgid "query failed: %s"
 msgstr "la consulta falló: %s"
 
-#: pg_backup_db.c:387 pg_dumpall.c:1890 pg_dumpall.c:1913
+#: pg_backup_db.c:385 pg_dumpall.c:1890 pg_dumpall.c:1913
 #, c-format
 msgid "query was: %s"
 msgstr "la consulta era: %s"
 
-#: pg_backup_db.c:428
+#: pg_backup_db.c:426
 #, c-format
 msgid "query returned %d row instead of one: %s"
 msgid_plural "query returned %d rows instead of one: %s"
 msgstr[0] "la consulta regresó %d fila en lugar de una: %s"
 msgstr[1] "la consulta regresó %d filas en lugar de una: %s"
 
-#: pg_backup_db.c:464
+#: pg_backup_db.c:462
 #, c-format
-#| msgid "The command was: %s"
 msgid "%s: %sCommand was: %s"
 msgstr "%s: %sLa orden era: %s"
 
-#: pg_backup_db.c:520 pg_backup_db.c:594 pg_backup_db.c:601
+#: pg_backup_db.c:518 pg_backup_db.c:592 pg_backup_db.c:599
 msgid "could not execute query"
 msgstr "no se pudo ejecutar la consulta"
 
-#: pg_backup_db.c:573
+#: pg_backup_db.c:571
 #, c-format
 msgid "error returned by PQputCopyData: %s"
 msgstr "PQputCopyData regresó un error: %s"
 
-#: pg_backup_db.c:622
+#: pg_backup_db.c:620
 #, c-format
 msgid "error returned by PQputCopyEnd: %s"
 msgstr "PQputCopyEnd regresó un error: %s"
 
-#: pg_backup_db.c:628
+#: pg_backup_db.c:626
 #, c-format
-#| msgid "seek failed for block %u in file \"%s\": %m"
 msgid "COPY failed for table \"%s\": %s"
 msgstr "COPY falló para la tabla «%s»: %s"
 
-#: pg_backup_db.c:634 pg_dump.c:1924
+#: pg_backup_db.c:632 pg_dump.c:1991
 #, c-format
 msgid "unexpected extra results during COPY of table \"%s\""
 msgstr "resultados extra inesperados durante el COPY de la tabla «%s»"
 
-#: pg_backup_db.c:646
+#: pg_backup_db.c:644
 msgid "could not start database transaction"
 msgstr "no se pudo iniciar la transacción en la base de datos"
 
-#: pg_backup_db.c:654
+#: pg_backup_db.c:652
 msgid "could not commit database transaction"
 msgstr "no se pudo terminar la transacción a la base de datos"
 
@@ -1113,48 +1106,49 @@ msgstr "no se pudo abrir el directorio «%s»: %m"
 msgid "could not create directory \"%s\": %m"
 msgstr "no se pudo crear el directorio «%s»: %m"
 
-#: pg_backup_directory.c:350 pg_backup_directory.c:488
-#: pg_backup_directory.c:518
+#: pg_backup_directory.c:350 pg_backup_directory.c:485
+#: pg_backup_directory.c:515
 #, c-format
 msgid "could not write to output file: %s"
 msgstr "no se pudo escribir al archivo de salida: %s"
 
-#: pg_backup_directory.c:403
-#, c-format
-msgid "could not close data file: %m"
+#: pg_backup_directory.c:400
+#, fuzzy, c-format
+#| msgid "could not close data file: %m"
+msgid "could not close data file \"%s\": %m"
 msgstr "no se pudo cerrar el archivo de datos: %m"
 
-#: pg_backup_directory.c:443
+#: pg_backup_directory.c:440
 #, c-format
 msgid "could not open large object TOC file \"%s\" for input: %m"
 msgstr "no se pudo abrir el archivo de la tabla de contenidos de objetos grandes «%s» para su lectura: %m"
 
-#: pg_backup_directory.c:454
+#: pg_backup_directory.c:451
 #, c-format
 msgid "invalid line in large object TOC file \"%s\": \"%s\""
 msgstr "línea no válida en el archivo de la tabla de contenido de objetos grandes «%s»: «%s»"
 
-#: pg_backup_directory.c:463
+#: pg_backup_directory.c:460
 #, c-format
 msgid "error reading large object TOC file \"%s\""
 msgstr "error al leer el archivo de la tabla de contenidos de objetos grandes «%s»"
 
-#: pg_backup_directory.c:467
+#: pg_backup_directory.c:464
 #, c-format
 msgid "could not close large object TOC file \"%s\": %m"
 msgstr "no se pudo cerrar el archivo de la tabla de contenido de los objetos grandes «%s»: %m"
 
-#: pg_backup_directory.c:678
+#: pg_backup_directory.c:671
 #, c-format
 msgid "could not write to blobs TOC file"
 msgstr "no se pudo escribir al archivo de la tabla de contenidos de objetos grandes"
 
-#: pg_backup_directory.c:710
+#: pg_backup_directory.c:703
 #, c-format
 msgid "file name too long: \"%s\""
 msgstr "nombre de archivo demasiado largo: «%s»"
 
-#: pg_backup_null.c:75
+#: pg_backup_null.c:74
 #, c-format
 msgid "this format cannot be read"
 msgstr "no se puede leer este formato"
@@ -1204,50 +1198,44 @@ msgstr "no se pudo abrir archivo temporal"
 msgid "could not close tar member"
 msgstr "no se pudo cerrar miembro del archivo tar"
 
-#: pg_backup_tar.c:571
-#, c-format
-#| msgid "internal error -- neither th nor fh specified in tarReadRaw()\n"
-msgid "internal error -- neither th nor fh specified in tarReadRaw()"
-msgstr "error interno --- no se especificó th ni fh en tarReadRaw()"
-
-#: pg_backup_tar.c:693
+#: pg_backup_tar.c:691
 #, c-format
 msgid "unexpected COPY statement syntax: \"%s\""
 msgstr "sintaxis de sentencia COPY inesperada: «%s»"
 
-#: pg_backup_tar.c:961
+#: pg_backup_tar.c:958
 #, c-format
 msgid "invalid OID for large object (%u)"
 msgstr "el OID del objeto grande no es válido (%u)"
 
-#: pg_backup_tar.c:1106
+#: pg_backup_tar.c:1103
 #, c-format
 msgid "could not close temporary file: %m"
 msgstr "no se pudo abrir archivo temporal: %m"
 
-#: pg_backup_tar.c:1115
+#: pg_backup_tar.c:1112
 #, c-format
 msgid "actual file length (%s) does not match expected (%s)"
 msgstr "el tamaño real del archivo (%s) no coincide con el esperado (%s)"
 
-#: pg_backup_tar.c:1172 pg_backup_tar.c:1202
+#: pg_backup_tar.c:1169 pg_backup_tar.c:1199
 #, c-format
 msgid "could not find header for file \"%s\" in tar archive"
 msgstr "no se pudo encontrar el encabezado para el archivo «%s» en el archivo tar"
 
-#: pg_backup_tar.c:1190
+#: pg_backup_tar.c:1187
 #, c-format
 msgid "restoring data out of order is not supported in this archive format: \"%s\" is required, but comes before \"%s\" in the archive file."
 msgstr "la extracción de datos fuera de orden no está soportada en este formato: se requiere «%s», pero viene antes de «%s» en el archivador."
 
-#: pg_backup_tar.c:1235
+#: pg_backup_tar.c:1232
 #, c-format
 msgid "incomplete tar header found (%lu byte)"
 msgid_plural "incomplete tar header found (%lu bytes)"
 msgstr[0] "se encontró un encabezado incompleto (%lu byte)"
 msgstr[1] "se encontró un encabezado incompleto (%lu bytes)"
 
-#: pg_backup_tar.c:1286
+#: pg_backup_tar.c:1283
 #, c-format
 msgid "corrupt tar header found in %s (expected %d, computed %d) file position %s"
 msgstr "se encontró un encabezado corrupto en %s (esperado %d, calculado %d) en la posición %s"
@@ -1257,10 +1245,10 @@ msgstr "se encontró un encabezado corrupto en %s (esperado %d, calculado %d) en
 msgid "unrecognized section name: \"%s\""
 msgstr "nombre de sección «%s» no reconocido"
 
-#: pg_backup_utils.c:55 pg_dump.c:611 pg_dump.c:628 pg_dumpall.c:339
-#: pg_dumpall.c:349 pg_dumpall.c:358 pg_dumpall.c:367 pg_dumpall.c:375
-#: pg_dumpall.c:389 pg_dumpall.c:465 pg_restore.c:288 pg_restore.c:304
-#: pg_restore.c:322
+#: pg_backup_utils.c:55 pg_dump.c:615 pg_dump.c:632 pg_dumpall.c:338
+#: pg_dumpall.c:348 pg_dumpall.c:357 pg_dumpall.c:366 pg_dumpall.c:374
+#: pg_dumpall.c:388 pg_dumpall.c:464 pg_restore.c:284 pg_restore.c:300
+#: pg_restore.c:318
 #, c-format
 msgid "Try \"%s --help\" for more information.\n"
 msgstr "Prueba «%s --help» para más información.\n"
@@ -1270,63 +1258,73 @@ msgstr "Prueba «%s --help» para más información.\n"
 msgid "out of on_exit_nicely slots"
 msgstr "elementos on_exit_nicely agotados"
 
-#: pg_dump.c:542
+#: pg_dump.c:541
 #, c-format
 msgid "compression level must be in range 0..9"
 msgstr "nivel de compresión debe estar en el rango 0..9"
 
-#: pg_dump.c:580
+#: pg_dump.c:579
 #, c-format
 msgid "extra_float_digits must be in range -15..3"
 msgstr "extra_floats_digits debe estar en el rango -15..3"
 
-#: pg_dump.c:603
+#: pg_dump.c:602
 #, c-format
 msgid "rows-per-insert must be in range %d..%d"
 msgstr "rows-per-insert debe estar en el rango %d..%d"
 
-#: pg_dump.c:626 pg_dumpall.c:347 pg_restore.c:302
+#: pg_dump.c:630 pg_dumpall.c:346 pg_restore.c:298
 #, c-format
 msgid "too many command-line arguments (first is \"%s\")"
 msgstr "demasiados argumentos en la línea de órdenes (el primero es «%s»)"
 
-#: pg_dump.c:647 pg_restore.c:331
+#: pg_dump.c:651 pg_restore.c:327
 #, c-format
 msgid "options -s/--schema-only and -a/--data-only cannot be used together"
 msgstr "las opciones -s/--schema-only y -a/--data-only no pueden usarse juntas"
 
-#: pg_dump.c:653 pg_restore.c:337
+#: pg_dump.c:656
+#, fuzzy, c-format
+#| msgid "options -s/--schema-only and -a/--data-only cannot be used together"
+msgid "options -s/--schema-only and --include-foreign-data cannot be used together"
+msgstr "las opciones -s/--schema-only y -a/--data-only no pueden usarse juntas"
+
+#: pg_dump.c:659
+#, c-format
+msgid "option --include-foreign-data is not supported with parallel backup"
+msgstr ""
+
+#: pg_dump.c:663 pg_restore.c:333
 #, c-format
 msgid "options -c/--clean and -a/--data-only cannot be used together"
 msgstr "las opciones -c/--clean y -a/--data-only no pueden usarse juntas"
 
-#: pg_dump.c:658 pg_dumpall.c:382 pg_restore.c:386
+#: pg_dump.c:668 pg_dumpall.c:381 pg_restore.c:382
 #, c-format
 msgid "option --if-exists requires option -c/--clean"
 msgstr "la opción --if-exists requiere la opción -c/--clean"
 
-#: pg_dump.c:665
+#: pg_dump.c:675
 #, c-format
-#| msgid "option --on-conflict-do-nothing requires option --inserts, --rows-per-insert or --column-inserts"
 msgid "option --on-conflict-do-nothing requires option --inserts, --rows-per-insert, or --column-inserts"
 msgstr "la opción --on-conflict-do-nothing requiere la opción --inserts, --rows-per-insert o --column-inserts"
 
-#: pg_dump.c:687
+#: pg_dump.c:697
 #, c-format
 msgid "requested compression not available in this installation -- archive will be uncompressed"
 msgstr "la compresión solicitada no está soportada en esta instalación -- el archivador será sin compresión"
 
-#: pg_dump.c:708 pg_restore.c:353
+#: pg_dump.c:718 pg_restore.c:349
 #, c-format
 msgid "invalid number of parallel jobs"
 msgstr "número no válido de trabajos paralelos"
 
-#: pg_dump.c:712
+#: pg_dump.c:722
 #, c-format
 msgid "parallel backup only supported by the directory format"
 msgstr "el volcado en paralelo sólo está soportado por el formato «directory»"
 
-#: pg_dump.c:767
+#: pg_dump.c:777
 #, c-format
 msgid ""
 "Synchronized snapshots are not supported by this server version.\n"
@@ -1336,27 +1334,27 @@ msgstr ""
 "Los snapshots sincronizados no están soportados por esta versión del servidor.\n"
 "Ejecute con --no-synchronized-snapshots si no los necesita."
 
-#: pg_dump.c:773
+#: pg_dump.c:783
 #, c-format
 msgid "Exported snapshots are not supported by this server version."
 msgstr "Los snapshot exportados no están soportados por esta versión de servidor."
 
-#: pg_dump.c:785
+#: pg_dump.c:795
 #, c-format
 msgid "last built-in OID is %u"
 msgstr "el último OID interno es %u"
 
-#: pg_dump.c:794
+#: pg_dump.c:804
 #, c-format
 msgid "no matching schemas were found"
 msgstr "no se encontraron esquemas coincidentes"
 
-#: pg_dump.c:808
+#: pg_dump.c:818
 #, c-format
 msgid "no matching tables were found"
 msgstr "no se encontraron tablas coincidentes"
 
-#: pg_dump.c:980
+#: pg_dump.c:993
 #, c-format
 msgid ""
 "%s dumps a database as a text file or to other formats.\n"
@@ -1365,17 +1363,17 @@ msgstr ""
 "%s extrae una base de datos en formato de texto o en otros formatos.\n"
 "\n"
 
-#: pg_dump.c:981 pg_dumpall.c:618 pg_restore.c:466
+#: pg_dump.c:994 pg_dumpall.c:617 pg_restore.c:462
 #, c-format
 msgid "Usage:\n"
 msgstr "Empleo:\n"
 
-#: pg_dump.c:982
+#: pg_dump.c:995
 #, c-format
 msgid "  %s [OPTION]... [DBNAME]\n"
 msgstr "  %s [OPCIÓN]... [NOMBREDB]\n"
 
-#: pg_dump.c:984 pg_dumpall.c:621 pg_restore.c:469
+#: pg_dump.c:997 pg_dumpall.c:620 pg_restore.c:465
 #, c-format
 msgid ""
 "\n"
@@ -1384,12 +1382,12 @@ msgstr ""
 "\n"
 "Opciones generales:\n"
 
-#: pg_dump.c:985
+#: pg_dump.c:998
 #, c-format
 msgid "  -f, --file=FILENAME          output file or directory name\n"
 msgstr "  -f, --file=ARCHIVO       nombre del archivo o directorio de salida\n"
 
-#: pg_dump.c:986
+#: pg_dump.c:999
 #, c-format
 msgid ""
 "  -F, --format=c|d|t|p         output file format (custom, directory, tar,\n"
@@ -1398,42 +1396,42 @@ msgstr ""
 "  -F, --format=c|d|t|p     Formato del archivo de salida (c=personalizado, \n"
 "                           d=directorio, t=tar, p=texto (por omisión))\n"
 
-#: pg_dump.c:988
+#: pg_dump.c:1001
 #, c-format
 msgid "  -j, --jobs=NUM               use this many parallel jobs to dump\n"
 msgstr "  -j, --jobs=NUM           máximo de procesos paralelos para volcar\n"
 
-#: pg_dump.c:989 pg_dumpall.c:623
+#: pg_dump.c:1002 pg_dumpall.c:622
 #, c-format
 msgid "  -v, --verbose                verbose mode\n"
 msgstr "  -v, --verbose            modo verboso\n"
 
-#: pg_dump.c:990 pg_dumpall.c:624
+#: pg_dump.c:1003 pg_dumpall.c:623
 #, c-format
 msgid "  -V, --version                output version information, then exit\n"
 msgstr "  -V, --version            mostrar información de version y salir\n"
 
-#: pg_dump.c:991
+#: pg_dump.c:1004
 #, c-format
 msgid "  -Z, --compress=0-9           compression level for compressed formats\n"
 msgstr "  -Z, --compress=0-9       nivel de compresión para formatos comprimidos\n"
 
-#: pg_dump.c:992 pg_dumpall.c:625
+#: pg_dump.c:1005 pg_dumpall.c:624
 #, c-format
 msgid "  --lock-wait-timeout=TIMEOUT  fail after waiting TIMEOUT for a table lock\n"
 msgstr "  --lock-wait-timeout=SEGS espera a lo más SEGS segundos obtener un lock\n"
 
-#: pg_dump.c:993 pg_dumpall.c:652
+#: pg_dump.c:1006 pg_dumpall.c:651
 #, c-format
 msgid "  --no-sync                    do not wait for changes to be written safely to disk\n"
 msgstr "  --no-sync                no esperar que los cambios se sincronicen a disco\n"
 
-#: pg_dump.c:994 pg_dumpall.c:626
+#: pg_dump.c:1007 pg_dumpall.c:625
 #, c-format
 msgid "  -?, --help                   show this help, then exit\n"
 msgstr "  -?, --help               mostrar esta ayuda y salir\n"
 
-#: pg_dump.c:996 pg_dumpall.c:627
+#: pg_dump.c:1009 pg_dumpall.c:626
 #, c-format
 msgid ""
 "\n"
@@ -1442,51 +1440,49 @@ msgstr ""
 "\n"
 "Opciones que controlan el contenido de la salida:\n"
 
-#: pg_dump.c:997 pg_dumpall.c:628
+#: pg_dump.c:1010 pg_dumpall.c:627
 #, c-format
 msgid "  -a, --data-only              dump only the data, not the schema\n"
 msgstr "  -a, --data-only              extrae sólo los datos, no el esquema\n"
 
-#: pg_dump.c:998
+#: pg_dump.c:1011
 #, c-format
 msgid "  -b, --blobs                  include large objects in dump\n"
 msgstr "  -b, --blobs                  incluye objetos grandes en la extracción\n"
 
-#: pg_dump.c:999
+#: pg_dump.c:1012
 #, c-format
 msgid "  -B, --no-blobs               exclude large objects in dump\n"
 msgstr "  -B, --no-blobs               excluye objetos grandes en la extracción\n"
 
-#: pg_dump.c:1000 pg_restore.c:480
+#: pg_dump.c:1013 pg_restore.c:476
 #, c-format
 msgid "  -c, --clean                  clean (drop) database objects before recreating\n"
 msgstr "  -c, --clean                  tira (drop) la base de datos antes de crearla\n"
 
-#: pg_dump.c:1001
+#: pg_dump.c:1014
 #, c-format
 msgid "  -C, --create                 include commands to create database in dump\n"
 msgstr ""
 "  -C, --create                 incluye órdenes para crear la base de datos\n"
 "                               en la extracción\n"
 
-#: pg_dump.c:1002 pg_dumpall.c:630
+#: pg_dump.c:1015 pg_dumpall.c:629
 #, c-format
 msgid "  -E, --encoding=ENCODING      dump the data in encoding ENCODING\n"
 msgstr "  -E, --encoding=CODIF         extrae los datos con la codificación CODIF\n"
 
-#: pg_dump.c:1003
+#: pg_dump.c:1016
 #, c-format
-#| msgid "  -n, --schema=SCHEMA          dump the named schema(s) only\n"
 msgid "  -n, --schema=PATTERN         dump the specified schema(s) only\n"
 msgstr "  -n, --schema=PATRÓN          extrae sólo el o los esquemas nombrados\n"
 
-#: pg_dump.c:1004
+#: pg_dump.c:1017
 #, c-format
-#| msgid "  -N, --exclude-schema=SCHEMA  do NOT dump the named schema(s)\n"
 msgid "  -N, --exclude-schema=PATTERN do NOT dump the specified schema(s)\n"
 msgstr "  -N, --exclude-schema=PATRÓN  NO extrae el o los esquemas nombrados\n"
 
-#: pg_dump.c:1005
+#: pg_dump.c:1018
 #, c-format
 msgid ""
 "  -O, --no-owner               skip restoration of object ownership in\n"
@@ -1495,60 +1491,58 @@ msgstr ""
 "  -O, --no-owner               en formato de sólo texto, no reestablece\n"
 "                               los dueños de los objetos\n"
 
-#: pg_dump.c:1007 pg_dumpall.c:634
+#: pg_dump.c:1020 pg_dumpall.c:633
 #, c-format
 msgid "  -s, --schema-only            dump only the schema, no data\n"
 msgstr "  -s, --schema-only            extrae sólo el esquema, no los datos\n"
 
-#: pg_dump.c:1008
+#: pg_dump.c:1021
 #, c-format
 msgid "  -S, --superuser=NAME         superuser user name to use in plain-text format\n"
 msgstr "  -S, --superuser=NAME         superusuario a utilizar en el volcado de texto\n"
 
-#: pg_dump.c:1009
+#: pg_dump.c:1022
 #, c-format
-#| msgid "  -t, --table=TABLE            dump the named table(s) only\n"
 msgid "  -t, --table=PATTERN          dump the specified table(s) only\n"
 msgstr "  -t, --table=PATRÓN           extrae sólo la o las tablas nombradas\n"
 
-#: pg_dump.c:1010
+#: pg_dump.c:1023
 #, c-format
-#| msgid "  -T, --exclude-table=TABLE    do NOT dump the named table(s)\n"
 msgid "  -T, --exclude-table=PATTERN  do NOT dump the specified table(s)\n"
 msgstr "  -T, --exclude-table=PATRÓN   NO extrae la o las tablas nombradas\n"
 
-#: pg_dump.c:1011 pg_dumpall.c:637
+#: pg_dump.c:1024 pg_dumpall.c:636
 #, c-format
 msgid "  -x, --no-privileges          do not dump privileges (grant/revoke)\n"
 msgstr "  -x, --no-privileges          no extrae los privilegios (grant/revoke)\n"
 
-#: pg_dump.c:1012 pg_dumpall.c:638
+#: pg_dump.c:1025 pg_dumpall.c:637
 #, c-format
 msgid "  --binary-upgrade             for use by upgrade utilities only\n"
 msgstr "  --binary-upgrade             sólo para uso de utilidades de upgrade\n"
 
-#: pg_dump.c:1013 pg_dumpall.c:639
+#: pg_dump.c:1026 pg_dumpall.c:638
 #, c-format
 msgid "  --column-inserts             dump data as INSERT commands with column names\n"
 msgstr ""
 "  --column-inserts             extrae los datos usando INSERT con nombres\n"
 "                               de columnas\n"
 
-#: pg_dump.c:1014 pg_dumpall.c:640
+#: pg_dump.c:1027 pg_dumpall.c:639
 #, c-format
 msgid "  --disable-dollar-quoting     disable dollar quoting, use SQL standard quoting\n"
 msgstr ""
 "  --disable-dollar-quoting     deshabilita el uso de «delimitadores de dólar»,\n"
 "                               usa delimitadores de cadena estándares\n"
 
-#: pg_dump.c:1015 pg_dumpall.c:641 pg_restore.c:497
+#: pg_dump.c:1028 pg_dumpall.c:640 pg_restore.c:493
 #, c-format
 msgid "  --disable-triggers           disable triggers during data-only restore\n"
 msgstr ""
 "  --disable-triggers           deshabilita los disparadores (triggers) durante el\n"
 "                               restablecimiento de la extracción de sólo-datos\n"
 
-#: pg_dump.c:1016
+#: pg_dump.c:1029
 #, c-format
 msgid ""
 "  --enable-row-security        enable row security (dump only content user has\n"
@@ -1557,106 +1551,113 @@ msgstr ""
 "  --enable-row-security        activa seguridad de filas (volcar sólo el\n"
 "                               contenido al que el usuario tiene acceso)\n"
 
-#: pg_dump.c:1018
+#: pg_dump.c:1031
 #, c-format
-#| msgid "  --exclude-table-data=TABLE   do NOT dump data for the named table(s)\n"
 msgid "  --exclude-table-data=PATTERN do NOT dump data for the specified table(s)\n"
 msgstr "  --exclude-table-data=PATRÓN  NO extrae los datos de la(s) tablas nombradas\n"
 
-#: pg_dump.c:1019 pg_dumpall.c:643
+#: pg_dump.c:1032 pg_dumpall.c:642
 #, c-format
 msgid "  --extra-float-digits=NUM     override default setting for extra_float_digits\n"
 msgstr "  --extra-float-digits=NUM     usa este valor para extra_float_digits\n"
 
-#: pg_dump.c:1020 pg_dumpall.c:644 pg_restore.c:499
+#: pg_dump.c:1033 pg_dumpall.c:643 pg_restore.c:495
 #, c-format
 msgid "  --if-exists                  use IF EXISTS when dropping objects\n"
 msgstr "  --if-exists                  usa IF EXISTS al eliminar objetos\n"
 
-#: pg_dump.c:1021 pg_dumpall.c:645
+#: pg_dump.c:1034
+#, c-format
+msgid ""
+"  --include-foreign-data=PATTERN\n"
+"                               include data of foreign tables on foreign\n"
+"                               servers matching PATTERN\n"
+msgstr ""
+
+#: pg_dump.c:1037 pg_dumpall.c:644
 #, c-format
 msgid "  --inserts                    dump data as INSERT commands, rather than COPY\n"
 msgstr "  --inserts                    extrae los datos usando INSERT, en vez de COPY\n"
 
-#: pg_dump.c:1022 pg_dumpall.c:646
+#: pg_dump.c:1038 pg_dumpall.c:645
 #, c-format
 msgid "  --load-via-partition-root    load partitions via the root table\n"
 msgstr "  --load-via-partition-root    cargar particiones a través de tabla raíz\n"
 
-#: pg_dump.c:1023 pg_dumpall.c:647
+#: pg_dump.c:1039 pg_dumpall.c:646
 #, c-format
 msgid "  --no-comments                do not dump comments\n"
 msgstr "  --no-comments                no volcar los comentarios\n"
 
-#: pg_dump.c:1024 pg_dumpall.c:648
+#: pg_dump.c:1040 pg_dumpall.c:647
 #, c-format
 msgid "  --no-publications            do not dump publications\n"
 msgstr "  --no-publications            no volcar las publicaciones\n"
 
-#: pg_dump.c:1025 pg_dumpall.c:650
+#: pg_dump.c:1041 pg_dumpall.c:649
 #, c-format
 msgid "  --no-security-labels         do not dump security label assignments\n"
 msgstr "  --no-security-labels         no volcar asignaciones de etiquetas de seguridad\n"
 
-#: pg_dump.c:1026 pg_dumpall.c:651
+#: pg_dump.c:1042 pg_dumpall.c:650
 #, c-format
 msgid "  --no-subscriptions           do not dump subscriptions\n"
 msgstr "  --no-subscriptions           no volcar las suscripciones\n"
 
-#: pg_dump.c:1027
+#: pg_dump.c:1043
 #, c-format
 msgid "  --no-synchronized-snapshots  do not use synchronized snapshots in parallel jobs\n"
 msgstr ""
 "  --no-synchronized-snapshots  no usar snapshots sincronizados en trabajos\n"
 "                               en paralelo\n"
 
-#: pg_dump.c:1028 pg_dumpall.c:653
+#: pg_dump.c:1044 pg_dumpall.c:652
 #, c-format
 msgid "  --no-tablespaces             do not dump tablespace assignments\n"
 msgstr "  --no-tablespaces             no volcar asignaciones de tablespace\n"
 
-#: pg_dump.c:1029 pg_dumpall.c:654
+#: pg_dump.c:1045 pg_dumpall.c:653
 #, c-format
 msgid "  --no-unlogged-table-data     do not dump unlogged table data\n"
 msgstr "  --no-unlogged-table-data     no volcar datos de tablas unlogged\n"
 
-#: pg_dump.c:1030 pg_dumpall.c:655
+#: pg_dump.c:1046 pg_dumpall.c:654
 #, c-format
 msgid "  --on-conflict-do-nothing     add ON CONFLICT DO NOTHING to INSERT commands\n"
 msgstr "  --on-confict-do-nothing      agregar ON CONFLICT DO NOTHING a órdenes INSERT\n"
 
-#: pg_dump.c:1031 pg_dumpall.c:656
+#: pg_dump.c:1047 pg_dumpall.c:655
 #, c-format
 msgid "  --quote-all-identifiers      quote all identifiers, even if not key words\n"
 msgstr ""
 "  --quote-all-identifiers      entrecomilla todos los identificadores, incluso\n"
 "                               si no son palabras clave\n"
 
-#: pg_dump.c:1032 pg_dumpall.c:657
+#: pg_dump.c:1048 pg_dumpall.c:656
 #, c-format
 msgid "  --rows-per-insert=NROWS      number of rows per INSERT; implies --inserts\n"
 msgstr "  --rows-per-insert=NUMFILAS   número de filas por INSERT; implica --inserts\n"
 
-#: pg_dump.c:1033
+#: pg_dump.c:1049
 #, c-format
 msgid "  --section=SECTION            dump named section (pre-data, data, or post-data)\n"
 msgstr ""
 "  --section=SECCIÓN            volcar la sección nombrada (pre-data, data,\n"
 "                               post-data)\n"
 
-#: pg_dump.c:1034
+#: pg_dump.c:1050
 #, c-format
 msgid "  --serializable-deferrable    wait until the dump can run without anomalies\n"
 msgstr ""
 "  --serializable-deferrable    espera hasta que el respaldo pueda completarse\n"
 "                               sin anomalías\n"
 
-#: pg_dump.c:1035
+#: pg_dump.c:1051
 #, c-format
 msgid "  --snapshot=SNAPSHOT          use given snapshot for the dump\n"
 msgstr "  --snapshot=SNAPSHOT          use el snapshot dado para la extracción\n"
 
-#: pg_dump.c:1036 pg_restore.c:508
+#: pg_dump.c:1052 pg_restore.c:504
 #, c-format
 msgid ""
 "  --strict-names               require table and/or schema include patterns to\n"
@@ -1665,7 +1666,7 @@ msgstr ""
 "  --strict-names               requerir al menos una coincidencia para cada patrón\n"
 "                               de nombre de tablas y esquemas\n"
 
-#: pg_dump.c:1038 pg_dumpall.c:658 pg_restore.c:510
+#: pg_dump.c:1054 pg_dumpall.c:657 pg_restore.c:506
 #, c-format
 msgid ""
 "  --use-set-session-authorization\n"
@@ -1676,7 +1677,7 @@ msgstr ""
 "                               usa órdenes SESSION AUTHORIZATION en lugar de\n"
 "                               ALTER OWNER para cambiar los dueño de los objetos\n"
 
-#: pg_dump.c:1042 pg_dumpall.c:662 pg_restore.c:514
+#: pg_dump.c:1058 pg_dumpall.c:661 pg_restore.c:510
 #, c-format
 msgid ""
 "\n"
@@ -1685,46 +1686,46 @@ msgstr ""
 "\n"
 "Opciones de conexión:\n"
 
-#: pg_dump.c:1043
+#: pg_dump.c:1059
 #, c-format
 msgid "  -d, --dbname=DBNAME      database to dump\n"
 msgstr "  -d, --dbname=NOMBRE      nombre de la base de datos que volcar\n"
 
-#: pg_dump.c:1044 pg_dumpall.c:664 pg_restore.c:515
+#: pg_dump.c:1060 pg_dumpall.c:663 pg_restore.c:511
 #, c-format
 msgid "  -h, --host=HOSTNAME      database server host or socket directory\n"
 msgstr ""
 "  -h, --host=ANFITRIÓN     anfitrión de la base de datos o\n"
 "                           directorio del enchufe (socket)\n"
 
-#: pg_dump.c:1045 pg_dumpall.c:666 pg_restore.c:516
+#: pg_dump.c:1061 pg_dumpall.c:665 pg_restore.c:512
 #, c-format
 msgid "  -p, --port=PORT          database server port number\n"
 msgstr "  -p, --port=PUERTO        número del puerto de la base de datos\n"
 
-#: pg_dump.c:1046 pg_dumpall.c:667 pg_restore.c:517
+#: pg_dump.c:1062 pg_dumpall.c:666 pg_restore.c:513
 #, c-format
 msgid "  -U, --username=NAME      connect as specified database user\n"
 msgstr "  -U, --username=USUARIO   nombre de usuario con el cual conectarse\n"
 
-#: pg_dump.c:1047 pg_dumpall.c:668 pg_restore.c:518
+#: pg_dump.c:1063 pg_dumpall.c:667 pg_restore.c:514
 #, c-format
 msgid "  -w, --no-password        never prompt for password\n"
 msgstr "  -w, --no-password        nunca pedir una contraseña\n"
 
-#: pg_dump.c:1048 pg_dumpall.c:669 pg_restore.c:519
+#: pg_dump.c:1064 pg_dumpall.c:668 pg_restore.c:515
 #, c-format
 msgid "  -W, --password           force password prompt (should happen automatically)\n"
 msgstr ""
 "  -W, --password           fuerza un prompt para la contraseña\n"
 "                           (debería ser automático)\n"
 
-#: pg_dump.c:1049 pg_dumpall.c:670
+#: pg_dump.c:1065 pg_dumpall.c:669
 #, c-format
 msgid "  --role=ROLENAME          do SET ROLE before dump\n"
 msgstr "  --role=ROL               ejecuta SET ROLE antes del volcado\n"
 
-#: pg_dump.c:1051
+#: pg_dump.c:1067
 #, c-format
 msgid ""
 "\n"
@@ -1737,17 +1738,22 @@ msgstr ""
 "de la variable de ambiente PGDATABASE.\n"
 "\n"
 
-#: pg_dump.c:1053 pg_dumpall.c:674 pg_restore.c:526
+#: pg_dump.c:1069 pg_dumpall.c:673 pg_restore.c:522
 #, c-format
-msgid "Report bugs to <pgsql-bugs@lists.postgresql.org>.\n"
-msgstr "Reporta errores a <pgsql-bugs@lists.postgresql.org>.\n"
+msgid "Report bugs to <%s>.\n"
+msgstr ""
 
-#: pg_dump.c:1072 pg_dumpall.c:500
+#: pg_dump.c:1070 pg_dumpall.c:674 pg_restore.c:523
+#, c-format
+msgid "%s home page: <%s>\n"
+msgstr ""
+
+#: pg_dump.c:1089 pg_dumpall.c:499
 #, c-format
 msgid "invalid client encoding \"%s\" specified"
 msgstr "la codificación de cliente especificada «%s» no es válida"
 
-#: pg_dump.c:1218
+#: pg_dump.c:1235
 #, c-format
 msgid ""
 "Synchronized snapshots on standby servers are not supported by this server version.\n"
@@ -1757,546 +1763,545 @@ msgstr ""
 "Los snapshots sincronizados en servidores standby no están soportados por esta versión del servidor.\n"
 "Ejecute con --no-synchronized-snapshots si no los necesita."
 
-#: pg_dump.c:1287
+#: pg_dump.c:1304
 #, c-format
 msgid "invalid output format \"%s\" specified"
 msgstr "el formato de salida especificado «%s» no es válido"
 
-#: pg_dump.c:1325
+#: pg_dump.c:1342
 #, c-format
 msgid "no matching schemas were found for pattern \"%s\""
 msgstr "no se encontraron esquemas coincidentes para el patrón «%s»"
 
-#: pg_dump.c:1390
+#: pg_dump.c:1389
+#, fuzzy, c-format
+#| msgid "no matching schemas were found for pattern \"%s\""
+msgid "no matching foreign servers were found for pattern \"%s\""
+msgstr "no se encontraron esquemas coincidentes para el patrón «%s»"
+
+#: pg_dump.c:1452
 #, c-format
 msgid "no matching tables were found for pattern \"%s\""
 msgstr "no se encontraron tablas coincidentes para el patrón «%s»"
 
-#: pg_dump.c:1804
+#: pg_dump.c:1865
 #, c-format
 msgid "dumping contents of table \"%s.%s\""
 msgstr "extrayendo el contenido de la tabla «%s.%s»"
 
-#: pg_dump.c:1905
+#: pg_dump.c:1972
 #, c-format
 msgid "Dumping the contents of table \"%s\" failed: PQgetCopyData() failed."
 msgstr "Falló la extracción del contenido de la tabla «%s»: PQgetCopyData() falló."
 
-#: pg_dump.c:1906 pg_dump.c:1916
+#: pg_dump.c:1973 pg_dump.c:1983
 #, c-format
 msgid "Error message from server: %s"
 msgstr "Mensaje de error del servidor: %s"
 
-#: pg_dump.c:1907 pg_dump.c:1917
+#: pg_dump.c:1974 pg_dump.c:1984
 #, c-format
 msgid "The command was: %s"
 msgstr "La orden era: %s"
 
-#: pg_dump.c:1915
+#: pg_dump.c:1982
 #, c-format
 msgid "Dumping the contents of table \"%s\" failed: PQgetResult() failed."
 msgstr "Falló la extracción del contenido de la tabla «%s»: PQgetResult() falló."
 
-#: pg_dump.c:2666
+#: pg_dump.c:2736
 #, c-format
 msgid "saving database definition"
 msgstr "salvando las definiciones de la base de datos"
 
-#: pg_dump.c:3130
+#: pg_dump.c:3208
 #, c-format
 msgid "saving encoding = %s"
 msgstr "salvando codificaciones = %s"
 
-#: pg_dump.c:3155
+#: pg_dump.c:3233
 #, c-format
 msgid "saving standard_conforming_strings = %s"
 msgstr "salvando standard_conforming_strings = %s"
 
-#: pg_dump.c:3194
+#: pg_dump.c:3272
 #, c-format
 msgid "could not parse result of current_schemas()"
 msgstr "no se pudo interpretar la salida de current_schemas()"
 
-#: pg_dump.c:3213
+#: pg_dump.c:3291
 #, c-format
 msgid "saving search_path = %s"
 msgstr "salvando search_path = %s"
 
-#: pg_dump.c:3253
+#: pg_dump.c:3331
 #, c-format
 msgid "reading large objects"
 msgstr "leyendo objetos grandes"
 
-#: pg_dump.c:3435
+#: pg_dump.c:3513
 #, c-format
 msgid "saving large objects"
 msgstr "salvando objetos grandes"
 
-#: pg_dump.c:3481
+#: pg_dump.c:3559
 #, c-format
 msgid "error reading large object %u: %s"
 msgstr "error al leer el objeto grande %u: %s"
 
-#: pg_dump.c:3533
+#: pg_dump.c:3611
 #, c-format
 msgid "reading row security enabled for table \"%s.%s\""
 msgstr "leyendo si seguridad de filas está activa para la tabla «%s.%s»"
 
-#: pg_dump.c:3564
+#: pg_dump.c:3642
 #, c-format
 msgid "reading policies for table \"%s.%s\""
 msgstr "extrayendo las políticas para la tabla «%s.%s»"
 
-#: pg_dump.c:3714
+#: pg_dump.c:3794
 #, c-format
 msgid "unexpected policy command type: %c"
 msgstr "tipo de orden inesperada en política: %c"
 
-#: pg_dump.c:3841
+#: pg_dump.c:3945
 #, c-format
 msgid "owner of publication \"%s\" appears to be invalid"
 msgstr "el dueño de la publicación «%s» parece no ser válido"
 
-#: pg_dump.c:3978
+#: pg_dump.c:4090
 #, c-format
 msgid "reading publication membership for table \"%s.%s\""
 msgstr "extrayendo la membresía en publicaciones para la tabla «%s.%s»"
 
-#: pg_dump.c:4121
+#: pg_dump.c:4233
 #, c-format
 msgid "subscriptions not dumped because current user is not a superuser"
 msgstr "no se volcaron las suscripciones porque el usuario actual no es un superusuario"
 
-#: pg_dump.c:4175
+#: pg_dump.c:4287
 #, c-format
 msgid "owner of subscription \"%s\" appears to be invalid"
 msgstr "el dueño de la suscripción «%s» parece no ser válido"
 
-#: pg_dump.c:4219
+#: pg_dump.c:4331
 #, c-format
 msgid "could not parse subpublications array"
 msgstr "no se pudo interpretar el arreglo subpublications"
 
-#: pg_dump.c:4491
+#: pg_dump.c:4653
 #, c-format
 msgid "could not find parent extension for %s %s"
 msgstr "no se pudo encontrar la extensión padre para %s %s"
 
-#: pg_dump.c:4623
+#: pg_dump.c:4785
 #, c-format
 msgid "owner of schema \"%s\" appears to be invalid"
 msgstr "el dueño del esquema «%s» parece no ser válido"
 
-#: pg_dump.c:4646
+#: pg_dump.c:4808
 #, c-format
 msgid "schema with OID %u does not exist"
 msgstr "no existe el esquema con OID %u"
 
-#: pg_dump.c:4971
+#: pg_dump.c:5133
 #, c-format
 msgid "owner of data type \"%s\" appears to be invalid"
 msgstr "el dueño del tipo «%s» parece no ser válido"
 
-#: pg_dump.c:5056
+#: pg_dump.c:5218
 #, c-format
 msgid "owner of operator \"%s\" appears to be invalid"
 msgstr "el dueño del operador «%s» parece no ser válido"
 
-#: pg_dump.c:5358
+#: pg_dump.c:5520
 #, c-format
 msgid "owner of operator class \"%s\" appears to be invalid"
 msgstr "el dueño de la clase de operadores «%s» parece no ser válido"
 
-#: pg_dump.c:5442
+#: pg_dump.c:5604
 #, c-format
 msgid "owner of operator family \"%s\" appears to be invalid"
 msgstr "el dueño de la familia de operadores «%s» parece no ser válido"
 
-#: pg_dump.c:5611
+#: pg_dump.c:5773
 #, c-format
 msgid "owner of aggregate function \"%s\" appears to be invalid"
 msgstr "el dueño de la función de agregación «%s» parece no ser válido"
 
-#: pg_dump.c:5871
+#: pg_dump.c:6033
 #, c-format
 msgid "owner of function \"%s\" appears to be invalid"
 msgstr "el dueño de la función «%s» parece no ser válido"
 
-#: pg_dump.c:6675
+#: pg_dump.c:6861
 #, c-format
 msgid "owner of table \"%s\" appears to be invalid"
 msgstr "el dueño de la tabla «%s» parece no ser válido"
 
-#: pg_dump.c:6717 pg_dump.c:17065
+#: pg_dump.c:6903 pg_dump.c:17332
 #, c-format
 msgid "failed sanity check, parent table with OID %u of sequence with OID %u not found"
 msgstr "falló la revisión de integridad, no se encontró la tabla padre con OID %u de la secuencia con OID %u"
 
-#: pg_dump.c:6861
+#: pg_dump.c:7045
 #, c-format
 msgid "reading indexes for table \"%s.%s\""
 msgstr "extrayendo los índices para la tabla «%s.%s»"
 
-#: pg_dump.c:7262
+#: pg_dump.c:7460
 #, c-format
 msgid "reading foreign key constraints for table \"%s.%s\""
 msgstr "extrayendo restricciones de llave foránea para la tabla «%s.%s»"
 
-#: pg_dump.c:7481
+#: pg_dump.c:7715
 #, c-format
 msgid "failed sanity check, parent table with OID %u of pg_rewrite entry with OID %u not found"
 msgstr "falló la revisión de integridad, no se encontró la tabla padre con OID %u del elemento con OID %u de pg_rewrite"
 
-#: pg_dump.c:7564
+#: pg_dump.c:7798
 #, c-format
 msgid "reading triggers for table \"%s.%s\""
 msgstr "extrayendo los disparadores (triggers) para la tabla «%s.%s»"
 
-#: pg_dump.c:7697
+#: pg_dump.c:7931
 #, c-format
 msgid "query produced null referenced table name for foreign key trigger \"%s\" on table \"%s\" (OID of table: %u)"
 msgstr "la consulta produjo un nombre de tabla nulo para la llave foránea del disparador \"%s\" en la tabla «%s» (OID de la tabla: %u)"
 
-#: pg_dump.c:8252
+#: pg_dump.c:8486
 #, c-format
 msgid "finding the columns and types of table \"%s.%s\""
 msgstr "buscando las columnas y tipos de la tabla «%s.%s»"
 
-#: pg_dump.c:8388
+#: pg_dump.c:8622
 #, c-format
 msgid "invalid column numbering in table \"%s\""
 msgstr "numeración de columnas no válida en la tabla «%s»"
 
-#: pg_dump.c:8425
+#: pg_dump.c:8659
 #, c-format
 msgid "finding default expressions of table \"%s.%s\""
 msgstr "buscando expresiones por omisión de la tabla «%s.%s»"
 
-#: pg_dump.c:8447
+#: pg_dump.c:8681
 #, c-format
 msgid "invalid adnum value %d for table \"%s\""
 msgstr "el valor de adnum %d para la tabla «%s» no es válido"
 
-#: pg_dump.c:8512
+#: pg_dump.c:8746
 #, c-format
 msgid "finding check constraints for table \"%s.%s\""
 msgstr "buscando restricciones de revisión (check) para la tabla «%s.%s»"
 
-#: pg_dump.c:8561
+#: pg_dump.c:8795
 #, c-format
 msgid "expected %d check constraint on table \"%s\" but found %d"
 msgid_plural "expected %d check constraints on table \"%s\" but found %d"
 msgstr[0] "se esperaban %d restricciones CHECK en la tabla «%s» pero se encontraron %d"
 msgstr[1] "se esperaban %d restricciones CHECK en la tabla «%s» pero se encontraron %d"
 
-#: pg_dump.c:8565
+#: pg_dump.c:8799
 #, c-format
 msgid "(The system catalogs might be corrupted.)"
 msgstr "(Los catálogos del sistema podrían estar corruptos)"
 
-#: pg_dump.c:10146
+#: pg_dump.c:10385
 #, c-format
 msgid "typtype of data type \"%s\" appears to be invalid"
 msgstr "el typtype del tipo «%s» parece no ser válido"
 
-#: pg_dump.c:11500
+#: pg_dump.c:11739
 #, c-format
 msgid "bogus value in proargmodes array"
 msgstr "valor no válido en el arreglo proargmodes"
 
-#: pg_dump.c:11872
+#: pg_dump.c:12111
 #, c-format
 msgid "could not parse proallargtypes array"
 msgstr "no se pudo interpretar el arreglo proallargtypes"
 
-#: pg_dump.c:11888
+#: pg_dump.c:12127
 #, c-format
 msgid "could not parse proargmodes array"
 msgstr "no se pudo interpretar el arreglo proargmodes"
 
-#: pg_dump.c:11902
+#: pg_dump.c:12141
 #, c-format
 msgid "could not parse proargnames array"
 msgstr "no se pudo interpretar el arreglo proargnames"
 
-#: pg_dump.c:11913
+#: pg_dump.c:12152
 #, c-format
 msgid "could not parse proconfig array"
 msgstr "no se pudo interpretar el arreglo proconfig"
 
-#: pg_dump.c:11993
+#: pg_dump.c:12232
 #, c-format
 msgid "unrecognized provolatile value for function \"%s\""
 msgstr "el valor del atributo «provolatile» para la función «%s» es desconocido"
 
-#: pg_dump.c:12043 pg_dump.c:14095
+#: pg_dump.c:12282 pg_dump.c:14340
 #, c-format
 msgid "unrecognized proparallel value for function \"%s\""
 msgstr "el valor del atributo «proparallel» para la función «%s» es desconocido"
 
-#: pg_dump.c:12176 pg_dump.c:12285 pg_dump.c:12292
+#: pg_dump.c:12421 pg_dump.c:12530 pg_dump.c:12537
 #, c-format
 msgid "could not find function definition for function with OID %u"
 msgstr "no se encontró la definición de la función con OID %u"
 
-#: pg_dump.c:12215
+#: pg_dump.c:12460
 #, c-format
 msgid "bogus value in pg_cast.castfunc or pg_cast.castmethod field"
 msgstr "valor no válido en los campos pg_cast.castfunc o pg_cast.castmethod"
 
-#: pg_dump.c:12218
+#: pg_dump.c:12463
 #, c-format
 msgid "bogus value in pg_cast.castmethod field"
 msgstr "valor no válido en el campo pg_cast.castmethod"
 
-#: pg_dump.c:12311
+#: pg_dump.c:12556
 #, c-format
 msgid "bogus transform definition, at least one of trffromsql and trftosql should be nonzero"
 msgstr "definición errónea de transformación; al menos uno de trffromsql and trftosql debe ser distinto de cero"
 
-#: pg_dump.c:12328
+#: pg_dump.c:12573
 #, c-format
 msgid "bogus value in pg_transform.trffromsql field"
 msgstr "valor erróneo en el campo pg_transform.trffromsql"
 
-#: pg_dump.c:12349
+#: pg_dump.c:12594
 #, c-format
 msgid "bogus value in pg_transform.trftosql field"
 msgstr "valor erróneo en el campo pg_transform.trftosql"
 
-#: pg_dump.c:12665
+#: pg_dump.c:12910
 #, c-format
 msgid "could not find operator with OID %s"
 msgstr "no se pudo encontrar el operador con OID %s"
 
-#: pg_dump.c:12733
+#: pg_dump.c:12978
 #, c-format
 msgid "invalid type \"%c\" of access method \"%s\""
 msgstr "el tipo «%c» para el método de acceso «%s» no es válido"
 
-#: pg_dump.c:13487
+#: pg_dump.c:13732
 #, c-format
 msgid "unrecognized collation provider: %s"
 msgstr "proveedor de ordenamiento no reconocido: %s"
 
-#: pg_dump.c:13959
+#: pg_dump.c:14204
 #, c-format
 msgid "aggregate function %s could not be dumped correctly for this database version; ignored"
 msgstr "la función de agregación «%s» no se pudo extraer correctamente para esta versión de la base de datos; ignorada"
 
-#: pg_dump.c:14014
+#: pg_dump.c:14259
 #, c-format
 msgid "unrecognized aggfinalmodify value for aggregate \"%s\""
 msgstr "valor de aggfinalmodify no reconocido para la agregación «%s»"
 
-#: pg_dump.c:14070
+#: pg_dump.c:14315
 #, c-format
 msgid "unrecognized aggmfinalmodify value for aggregate \"%s\""
 msgstr "valor de aggmfinalmodify no reconocido para la agregación «%s»"
 
-#: pg_dump.c:14792
+#: pg_dump.c:15037
 #, c-format
 msgid "unrecognized object type in default privileges: %d"
 msgstr "tipo de objeto desconocido en privilegios por omisión: %d"
 
-#: pg_dump.c:14810
+#: pg_dump.c:15055
 #, c-format
 msgid "could not parse default ACL list (%s)"
 msgstr "no se pudo interpretar la lista de ACL (%s)"
 
-#: pg_dump.c:14890
+#: pg_dump.c:15135
 #, c-format
 msgid "could not parse initial GRANT ACL list (%s) or initial REVOKE ACL list (%s) for object \"%s\" (%s)"
 msgstr "no se pudo interpretar la lista inicial de GRANT ACL (%s) o la lista inicial de REVOKE ACL (%s) para el objeto «%s» (%s)"
 
-#: pg_dump.c:14898
+#: pg_dump.c:15143
 #, c-format
 msgid "could not parse GRANT ACL list (%s) or REVOKE ACL list (%s) for object \"%s\" (%s)"
 msgstr "no se pudo interpretar la lista de GRANT ACL (%s) o la lista de REVOKE ACL (%s) para el objeto «%s» (%s)"
 
-#: pg_dump.c:15397
+#: pg_dump.c:15640
 #, c-format
 msgid "query to obtain definition of view \"%s\" returned no data"
 msgstr "la consulta para obtener la definición de la vista «%s» no regresó datos"
 
-#: pg_dump.c:15400
+#: pg_dump.c:15643
 #, c-format
 msgid "query to obtain definition of view \"%s\" returned more than one definition"
 msgstr "la consulta para obtener la definición de la vista «%s» regresó más de una definición"
 
-#: pg_dump.c:15407
+#: pg_dump.c:15650
 #, c-format
 msgid "definition of view \"%s\" appears to be empty (length zero)"
 msgstr "la definición de la vista «%s» parece estar vacía (tamaño cero)"
 
-#: pg_dump.c:15489
+#: pg_dump.c:15732
 #, c-format
 msgid "WITH OIDS is not supported anymore (table \"%s\")"
 msgstr "WITH OIDS ya no está soportado (tabla «%s»)"
 
-#: pg_dump.c:15959
+#: pg_dump.c:16212
 #, c-format
 msgid "invalid number of parents %d for table \"%s\""
 msgstr "número de padres %d para la tabla «%s» no es válido"
 
-#: pg_dump.c:16296
+#: pg_dump.c:16535
 #, c-format
 msgid "invalid column number %d for table \"%s\""
 msgstr "el número de columna %d no es válido para la tabla «%s»"
 
-#: pg_dump.c:16558
+#: pg_dump.c:16820
 #, c-format
 msgid "missing index for constraint \"%s\""
 msgstr "falta un índice para restricción «%s»"
 
-#: pg_dump.c:16778
+#: pg_dump.c:17045
 #, c-format
 msgid "unrecognized constraint type: %c"
 msgstr "tipo de restricción inesperado: %c"
 
-#: pg_dump.c:16910 pg_dump.c:17130
+#: pg_dump.c:17177 pg_dump.c:17397
 #, c-format
 msgid "query to get data of sequence \"%s\" returned %d row (expected 1)"
 msgid_plural "query to get data of sequence \"%s\" returned %d rows (expected 1)"
 msgstr[0] "la consulta para obtener los datos de la secuencia «%s» regresó %d entrada, pero se esperaba 1"
 msgstr[1] "la consulta para obtener los datos de la secuencia «%s» regresó %d entradas, pero se esperaba 1"
 
-#: pg_dump.c:16944
+#: pg_dump.c:17211
 #, c-format
 msgid "unrecognized sequence type: %s"
 msgstr "tipo no reconocido de secuencia: %s"
 
-#: pg_dump.c:17226
+#: pg_dump.c:17495
 #, c-format
 msgid "unexpected tgtype value: %d"
 msgstr "tgtype no esperado: %d"
 
-#: pg_dump.c:17300
+#: pg_dump.c:17569
 #, c-format
 msgid "invalid argument string (%s) for trigger \"%s\" on table \"%s\""
 msgstr "argumento de cadena (%s) no válido para el disparador (trigger) «%s» en la tabla «%s»"
 
-#: pg_dump.c:17529
+#: pg_dump.c:17805
 #, c-format
 msgid "query to get rule \"%s\" for table \"%s\" failed: wrong number of rows returned"
 msgstr "la consulta para obtener la regla «%s» asociada con la tabla «%s» falló: retornó un número incorrecto de renglones"
 
-#: pg_dump.c:17691
+#: pg_dump.c:17967
 #, c-format
 msgid "could not find referenced extension %u"
 msgstr "no se pudo encontrar la extensión referenciada %u"
 
-#: pg_dump.c:17903
+#: pg_dump.c:18179
 #, c-format
 msgid "reading dependency data"
 msgstr "obteniendo datos de dependencias"
 
-#: pg_dump.c:17996
+#: pg_dump.c:18272
 #, c-format
 msgid "no referencing object %u %u"
 msgstr "no existe el objeto referenciante %u %u"
 
-#: pg_dump.c:18007
+#: pg_dump.c:18283
 #, c-format
 msgid "no referenced object %u %u"
 msgstr "no existe el objeto referenciado %u %u"
 
-#: pg_dump.c:18375
+#: pg_dump.c:18656
 #, c-format
 msgid "could not parse reloptions array"
 msgstr "no se pudo interpretar el arreglo reloptions"
 
-#: pg_dump_sort.c:327
+#: pg_dump_sort.c:360
 #, c-format
 msgid "invalid dumpId %d"
 msgstr "dumpId %d no válido"
 
-#: pg_dump_sort.c:333
+#: pg_dump_sort.c:366
 #, c-format
 msgid "invalid dependency %d"
 msgstr "dependencia %d no válida"
 
-#: pg_dump_sort.c:566
+#: pg_dump_sort.c:599
 #, c-format
 msgid "could not identify dependency loop"
 msgstr "no se pudo identificar bucle de dependencia"
 
-#: pg_dump_sort.c:1137
+#: pg_dump_sort.c:1170
 #, c-format
 msgid "there are circular foreign-key constraints on this table:"
 msgid_plural "there are circular foreign-key constraints among these tables:"
 msgstr[0] "hay restricciones de llave foránea circulares en la siguiente tabla:"
 msgstr[1] "hay restricciones de llave foránea circulares entre las siguientes tablas:"
 
-#: pg_dump_sort.c:1141 pg_dump_sort.c:1161
+#: pg_dump_sort.c:1174 pg_dump_sort.c:1194
 #, c-format
 msgid "  %s"
 msgstr "  %s"
 
-#: pg_dump_sort.c:1142
+#: pg_dump_sort.c:1175
 #, c-format
 msgid "You might not be able to restore the dump without using --disable-triggers or temporarily dropping the constraints."
 msgstr "Puede no ser capaz de restaurar el respaldo sin usar --disable-triggers o temporalmente eliminar las restricciones."
 
-#: pg_dump_sort.c:1143
+#: pg_dump_sort.c:1176
 #, c-format
 msgid "Consider using a full dump instead of a --data-only dump to avoid this problem."
 msgstr "Considere usar un volcado completo en lugar de --data-only para evitar este problema."
 
-#: pg_dump_sort.c:1155
+#: pg_dump_sort.c:1188
 #, c-format
 msgid "could not resolve dependency loop among these items:"
 msgstr "no se pudo resolver el bucle de dependencias entre los siguientes elementos:"
 
-#: pg_dumpall.c:200
+#: pg_dumpall.c:199
 #, c-format
 msgid ""
-"The program \"pg_dump\" is needed by %s but was not found in the\n"
+"The program \"%s\" is needed by %s but was not found in the\n"
 "same directory as \"%s\".\n"
 "Check your installation."
 msgstr ""
-"%s necesita el programa «pg_dump», pero no fue encontrado en el mismo\n"
-"directorio que «%s».\n"
-"Verifique su instalación."
 
-#: pg_dumpall.c:205
+#: pg_dumpall.c:204
 #, c-format
 msgid ""
-"The program \"pg_dump\" was found by \"%s\"\n"
+"The program \"%s\" was found by \"%s\"\n"
 "but was not the same version as %s.\n"
 "Check your installation."
 msgstr ""
-"«pg_dump» fue encontrado por «%s»,\n"
-"pero no es de la misma versión que %s.\n"
-"Verifique su instalación."
 
-#: pg_dumpall.c:357
+#: pg_dumpall.c:356
 #, c-format
-#| msgid "option --exclude-database cannot be used together with -g/--globals-only, -r/--roles-only or -t/--tablespaces-only"
 msgid "option --exclude-database cannot be used together with -g/--globals-only, -r/--roles-only, or -t/--tablespaces-only"
 msgstr "la opción --exclude-database no puede ser usada junto con -g/--globals-only, -r/--roles-only o -t/--tablespaces-only"
 
-#: pg_dumpall.c:366
+#: pg_dumpall.c:365
 #, c-format
 msgid "options -g/--globals-only and -r/--roles-only cannot be used together"
 msgstr "las opciones -g/--globals-only y -r/--roles-only no pueden usarse juntas"
 
-#: pg_dumpall.c:374
+#: pg_dumpall.c:373
 #, c-format
 msgid "options -g/--globals-only and -t/--tablespaces-only cannot be used together"
 msgstr "las opciones -g/--globals-only y -t/--tablespaces-only no pueden usarse juntas"
 
-#: pg_dumpall.c:388
+#: pg_dumpall.c:387
 #, c-format
 msgid "options -r/--roles-only and -t/--tablespaces-only cannot be used together"
 msgstr "las opciones -r/--roles-only y -t/--tablespaces-only no pueden usarse juntas"
 
-#: pg_dumpall.c:449 pg_dumpall.c:1754
+#: pg_dumpall.c:448 pg_dumpall.c:1754
 #, c-format
 msgid "could not connect to database \"%s\""
 msgstr "no se pudo establecer la conexión a la base de datos «%s»"
 
-#: pg_dumpall.c:463
+#: pg_dumpall.c:462
 #, c-format
 msgid ""
 "could not connect to databases \"postgres\" or \"template1\"\n"
@@ -2305,7 +2310,7 @@ msgstr ""
 "no se pudo establecer la conexión a las bases de datos «postgres» o\n"
 "«template1».  Por favor especifique una base de datos para conectarse."
 
-#: pg_dumpall.c:617
+#: pg_dumpall.c:616
 #, c-format
 msgid ""
 "%s extracts a PostgreSQL database cluster into an SQL script file.\n"
@@ -2315,73 +2320,73 @@ msgstr ""
 "guión (script) SQL.\n"
 "\n"
 
-#: pg_dumpall.c:619
+#: pg_dumpall.c:618
 #, c-format
 msgid "  %s [OPTION]...\n"
 msgstr "  %s [OPCIÓN]...\n"
 
-#: pg_dumpall.c:622
+#: pg_dumpall.c:621
 #, c-format
 msgid "  -f, --file=FILENAME          output file name\n"
 msgstr "  -f, --file=ARCHIVO       nombre del archivo de salida\n"
 
-#: pg_dumpall.c:629
+#: pg_dumpall.c:628
 #, c-format
 msgid "  -c, --clean                  clean (drop) databases before recreating\n"
 msgstr "  -c, --clean              tira (drop) la base de datos antes de crearla\n"
 
-#: pg_dumpall.c:631
+#: pg_dumpall.c:630
 #, c-format
 msgid "  -g, --globals-only           dump only global objects, no databases\n"
 msgstr "  -g, --globals-only       extrae sólo los objetos globales, no bases de datos\n"
 
-#: pg_dumpall.c:632 pg_restore.c:489
+#: pg_dumpall.c:631 pg_restore.c:485
 #, c-format
 msgid "  -O, --no-owner               skip restoration of object ownership\n"
 msgstr "  -O, --no-owner           no reestablece los dueños de los objetos\n"
 
-#: pg_dumpall.c:633
+#: pg_dumpall.c:632
 #, c-format
 msgid "  -r, --roles-only             dump only roles, no databases or tablespaces\n"
 msgstr ""
 "  -r, --roles-only         extrae sólo los roles, no bases de datos\n"
 "                           ni tablespaces\n"
 
-#: pg_dumpall.c:635
+#: pg_dumpall.c:634
 #, c-format
 msgid "  -S, --superuser=NAME         superuser user name to use in the dump\n"
 msgstr ""
 "  -S, --superuser=NAME     especifica el nombre del superusuario a usar en\n"
 "                           el volcado\n"
 
-#: pg_dumpall.c:636
+#: pg_dumpall.c:635
 #, c-format
 msgid "  -t, --tablespaces-only       dump only tablespaces, no databases or roles\n"
 msgstr ""
 "  -t, --tablespaces-only   extrae sólo los tablespaces, no bases de datos\n"
 "                           ni roles\n"
 
-#: pg_dumpall.c:642
+#: pg_dumpall.c:641
 #, c-format
 msgid "  --exclude-database=PATTERN   exclude databases whose name matches PATTERN\n"
 msgstr "  --exclude-database=PATRÓN excluir bases de datos cuyos nombres coinciden con el patrón\n"
 
-#: pg_dumpall.c:649
+#: pg_dumpall.c:648
 #, c-format
 msgid "  --no-role-passwords          do not dump passwords for roles\n"
 msgstr "  --no-role-passwords      no extraer contraseñas para roles\n"
 
-#: pg_dumpall.c:663
+#: pg_dumpall.c:662
 #, c-format
 msgid "  -d, --dbname=CONNSTR     connect using connection string\n"
 msgstr "  -d, --dbname=CONNSTR     conectar usando la cadena de conexión\n"
 
-#: pg_dumpall.c:665
+#: pg_dumpall.c:664
 #, c-format
 msgid "  -l, --database=DBNAME    alternative default database\n"
 msgstr "  -l, --database=NOMBRE    especifica la base de datos a la cual conectarse\n"
 
-#: pg_dumpall.c:672
+#: pg_dumpall.c:671
 #, c-format
 msgid ""
 "\n"
@@ -2405,13 +2410,11 @@ msgstr "no se pudo interpretar la lista de control de acceso (%s) del tablespace
 
 #: pg_dumpall.c:1495
 #, c-format
-#| msgid "excluding database \"%s\"..."
 msgid "excluding database \"%s\""
 msgstr "excluyendo base de datos «%s»"
 
 #: pg_dumpall.c:1499
 #, c-format
-#| msgid "dumping database \"%s\"..."
 msgid "dumping database \"%s\""
 msgstr "extrayendo base de datos «%s»"
 
@@ -2450,42 +2453,42 @@ msgstr "no se pudo interpretar la versión del servidor «%s»"
 msgid "executing %s"
 msgstr "ejecutando %s"
 
-#: pg_restore.c:312
+#: pg_restore.c:308
 #, c-format
 msgid "one of -d/--dbname and -f/--file must be specified"
 msgstr "una de las opciones -d/--dbname y -f/--file debe especificarse"
 
-#: pg_restore.c:321
+#: pg_restore.c:317
 #, c-format
 msgid "options -d/--dbname and -f/--file cannot be used together"
 msgstr "las opciones -d/--dbname y -f/--file no pueden usarse juntas"
 
-#: pg_restore.c:347
+#: pg_restore.c:343
 #, c-format
 msgid "options -C/--create and -1/--single-transaction cannot be used together"
 msgstr "las opciones -c/--clean y -1/--single-transaction no pueden usarse juntas"
 
-#: pg_restore.c:361
+#: pg_restore.c:357
 #, c-format
 msgid "maximum number of parallel jobs is %d"
 msgstr "el número máximo de trabajos en paralelo es %d"
 
-#: pg_restore.c:370
+#: pg_restore.c:366
 #, c-format
 msgid "cannot specify both --single-transaction and multiple jobs"
 msgstr "no se puede especificar --single-transaction junto con múltiples tareas"
 
-#: pg_restore.c:412
+#: pg_restore.c:408
 #, c-format
 msgid "unrecognized archive format \"%s\"; please specify \"c\", \"d\", or \"t\""
 msgstr "formato de archivo «%s» no reconocido; por favor especifique «c», «d» o «t»"
 
-#: pg_restore.c:452
+#: pg_restore.c:448
 #, c-format
 msgid "errors ignored on restore: %d"
 msgstr "errores ignorados durante la recuperación: %d"
 
-#: pg_restore.c:465
+#: pg_restore.c:461
 #, c-format
 msgid ""
 "%s restores a PostgreSQL database from an archive created by pg_dump.\n"
@@ -2495,49 +2498,49 @@ msgstr ""
 "creado por pg_dump.\n"
 "\n"
 
-#: pg_restore.c:467
+#: pg_restore.c:463
 #, c-format
 msgid "  %s [OPTION]... [FILE]\n"
 msgstr "  %s [OPCIÓN]... [ARCHIVO]\n"
 
-#: pg_restore.c:470
+#: pg_restore.c:466
 #, c-format
 msgid "  -d, --dbname=NAME        connect to database name\n"
 msgstr "  -d, --dbname=NOMBRE      nombre de la base de datos a la que conectarse\n"
 
-#: pg_restore.c:471
+#: pg_restore.c:467
 #, c-format
 msgid "  -f, --file=FILENAME      output file name (- for stdout)\n"
 msgstr "  -f, --file=ARCHIVO       nombre del archivo de salida (- para stdout)\n"
 
-#: pg_restore.c:472
+#: pg_restore.c:468
 #, c-format
 msgid "  -F, --format=c|d|t       backup file format (should be automatic)\n"
 msgstr "  -F, --format=c|d|t       formato del volcado (debería ser automático)\n"
 
-#: pg_restore.c:473
+#: pg_restore.c:469
 #, c-format
 msgid "  -l, --list               print summarized TOC of the archive\n"
 msgstr ""
 "  -l, --list               imprime una tabla resumida de contenidos\n"
 "                           del archivador\n"
 
-#: pg_restore.c:474
+#: pg_restore.c:470
 #, c-format
 msgid "  -v, --verbose            verbose mode\n"
 msgstr "  -v, --verbose            modo verboso\n"
 
-#: pg_restore.c:475
+#: pg_restore.c:471
 #, c-format
 msgid "  -V, --version            output version information, then exit\n"
 msgstr "  -V, --version            mostrar información de versión y salir\n"
 
-#: pg_restore.c:476
+#: pg_restore.c:472
 #, c-format
 msgid "  -?, --help               show this help, then exit\n"
 msgstr "  -?, --help               mostrar esta ayuda y salir\n"
 
-#: pg_restore.c:478
+#: pg_restore.c:474
 #, c-format
 msgid ""
 "\n"
@@ -2546,34 +2549,34 @@ msgstr ""
 "\n"
 "Opciones que controlan la recuperación:\n"
 
-#: pg_restore.c:479
+#: pg_restore.c:475
 #, c-format
 msgid "  -a, --data-only              restore only the data, no schema\n"
 msgstr "  -a, --data-only              reestablece sólo los datos, no el esquema\n"
 
-#: pg_restore.c:481
+#: pg_restore.c:477
 #, c-format
 msgid "  -C, --create                 create the target database\n"
 msgstr "  -C, --create                 crea la base de datos de destino\n"
 
-#: pg_restore.c:482
+#: pg_restore.c:478
 #, c-format
 msgid "  -e, --exit-on-error          exit on error, default is to continue\n"
 msgstr ""
 "  -e, --exit-on-error          abandonar al encontrar un error\n"
 "                               por omisión, se continúa la restauración\n"
 
-#: pg_restore.c:483
+#: pg_restore.c:479
 #, c-format
 msgid "  -I, --index=NAME             restore named index\n"
 msgstr "  -I, --index=NOMBRE           reestablece el índice nombrado\n"
 
-#: pg_restore.c:484
+#: pg_restore.c:480
 #, c-format
 msgid "  -j, --jobs=NUM               use this many parallel jobs to restore\n"
 msgstr "  -j, --jobs=NUM               máximo de procesos paralelos para restaurar\n"
 
-#: pg_restore.c:485
+#: pg_restore.c:481
 #, c-format
 msgid ""
 "  -L, --use-list=FILENAME      use table of contents from this file for\n"
@@ -2582,64 +2585,64 @@ msgstr ""
 "  -L, --use-list=ARCHIVO       usa la tabla de contenido especificada para ordenar\n"
 "                               la salida de este archivo\n"
 
-#: pg_restore.c:487
+#: pg_restore.c:483
 #, c-format
 msgid "  -n, --schema=NAME            restore only objects in this schema\n"
 msgstr "  -n, --schema=NAME            reestablece sólo los objetos en este esquema\n"
 
-#: pg_restore.c:488
+#: pg_restore.c:484
 #, c-format
 msgid "  -N, --exclude-schema=NAME    do not restore objects in this schema\n"
 msgstr "  -N, --exclude-schema=NAME    no reestablecer los objetos en este esquema\n"
 
-#: pg_restore.c:490
+#: pg_restore.c:486
 #, c-format
 msgid "  -P, --function=NAME(args)    restore named function\n"
 msgstr "  -P, --function=NOMBRE(args)  reestablece la función nombrada\n"
 
-#: pg_restore.c:491
+#: pg_restore.c:487
 #, c-format
 msgid "  -s, --schema-only            restore only the schema, no data\n"
 msgstr "  -s, --schema-only            reestablece el esquema únicamente, no los datos\n"
 
-#: pg_restore.c:492
+#: pg_restore.c:488
 #, c-format
 msgid "  -S, --superuser=NAME         superuser user name to use for disabling triggers\n"
 msgstr ""
 "  -S, --superuser=NOMBRE       especifica el nombre del superusuario que se usa\n"
 "                               para deshabilitar los disparadores (triggers)\n"
 
-#: pg_restore.c:493
+#: pg_restore.c:489
 #, c-format
 msgid "  -t, --table=NAME             restore named relation (table, view, etc.)\n"
 msgstr "  -t, --table=NOMBRE           reestablece la relación (tabla, vista, etc.) nombrada\n"
 
-#: pg_restore.c:494
+#: pg_restore.c:490
 #, c-format
 msgid "  -T, --trigger=NAME           restore named trigger\n"
 msgstr "  -T, --trigger=NOMBRE         reestablece el disparador (trigger) nombrado\n"
 
-#: pg_restore.c:495
+#: pg_restore.c:491
 #, c-format
 msgid "  -x, --no-privileges          skip restoration of access privileges (grant/revoke)\n"
 msgstr "  -x, --no-privileges          no reestablece los privilegios (grant/revoke)\n"
 
-#: pg_restore.c:496
+#: pg_restore.c:492
 #, c-format
 msgid "  -1, --single-transaction     restore as a single transaction\n"
 msgstr "  -1, --single-transaction     reestablece en una única transacción\n"
 
-#: pg_restore.c:498
+#: pg_restore.c:494
 #, c-format
 msgid "  --enable-row-security        enable row security\n"
 msgstr "  --enable-row-security        activa seguridad de filas\n"
 
-#: pg_restore.c:500
+#: pg_restore.c:496
 #, c-format
 msgid "  --no-comments                do not restore comments\n"
 msgstr "  --no-comments                no restaurar comentarios\n"
 
-#: pg_restore.c:501
+#: pg_restore.c:497
 #, c-format
 msgid ""
 "  --no-data-for-failed-tables  do not restore data of tables that could not be\n"
@@ -2648,39 +2651,39 @@ msgstr ""
 "  --no-data-for-failed-tables  no reestablece datos de tablas que no pudieron\n"
 "                               ser creadas\n"
 
-#: pg_restore.c:503
+#: pg_restore.c:499
 #, c-format
 msgid "  --no-publications            do not restore publications\n"
 msgstr "  --no-publications            no restaurar publicaciones\n"
 
-#: pg_restore.c:504
+#: pg_restore.c:500
 #, c-format
 msgid "  --no-security-labels         do not restore security labels\n"
 msgstr "  --no-security-labels         no restaura etiquetas de seguridad\n"
 
-#: pg_restore.c:505
+#: pg_restore.c:501
 #, c-format
 msgid "  --no-subscriptions           do not restore subscriptions\n"
 msgstr "  --no-subscriptions           no restaurar suscripciones\n"
 
-#: pg_restore.c:506
+#: pg_restore.c:502
 #, c-format
 msgid "  --no-tablespaces             do not restore tablespace assignments\n"
 msgstr "  --no-tablespaces             no vuelca asignaciones de tablespace\n"
 
-#: pg_restore.c:507
+#: pg_restore.c:503
 #, c-format
 msgid "  --section=SECTION            restore named section (pre-data, data, or post-data)\n"
 msgstr ""
 "  --section=SECCIÓN            reestablece la sección nombrada (pre-data, data\n"
 "                               post-data)\n"
 
-#: pg_restore.c:520
+#: pg_restore.c:516
 #, c-format
 msgid "  --role=ROLENAME          do SET ROLE before restore\n"
 msgstr "  --role=ROLENAME              hace SET ROLE antes de restaurar\n"
 
-#: pg_restore.c:522
+#: pg_restore.c:518
 #, c-format
 msgid ""
 "\n"
@@ -2691,7 +2694,7 @@ msgstr ""
 "Las opciones -I, -n, -N, -P, -t, -T, y --section pueden ser combinadas y especificadas\n"
 "varias veces para seleccionar varios objetos.\n"
 
-#: pg_restore.c:525
+#: pg_restore.c:521
 #, c-format
 msgid ""
 "\n"
@@ -2702,14 +2705,23 @@ msgstr ""
 "Si no se especifica un archivo de entrada, se usa la entrada estándar.\n"
 "\n"
 
-#~ msgid "could not open the output file \"%s\": %m"
-#~ msgstr "no se pudo abrir el archivo de salida «%s»: %m"
+#~ msgid "Report bugs to <pgsql-bugs@lists.postgresql.org>.\n"
+#~ msgstr "Reporta errores a <pgsql-bugs@lists.postgresql.org>.\n"
 
-#~ msgid "unrecognized collation provider: %s\n"
-#~ msgstr "proveedor de ordenamiento (collation) no reconocido: %s\n"
+#~ msgid ""
+#~ "The program \"pg_dump\" is needed by %s but was not found in the\n"
+#~ "same directory as \"%s\".\n"
+#~ "Check your installation."
+#~ msgstr ""
+#~ "%s necesita el programa «pg_dump», pero no fue encontrado en el mismo\n"
+#~ "directorio que «%s».\n"
+#~ "Verifique su instalación."
 
-#~ msgid "failed to connect to database"
-#~ msgstr "falló la conexión a la base de datos"
-
-#~ msgid "failed to reconnect to database"
-#~ msgstr "falló la reconexión a la base de datos"
+#~ msgid ""
+#~ "The program \"pg_dump\" was found by \"%s\"\n"
+#~ "but was not the same version as %s.\n"
+#~ "Check your installation."
+#~ msgstr ""
+#~ "«pg_dump» fue encontrado por «%s»,\n"
+#~ "pero no es de la misma versión que %s.\n"
+#~ "Verifique su instalación."
diff --git a/src/bin/pg_resetwal/po/es.po b/src/bin/pg_resetwal/po/es.po
index 7cea76de925..26927bd7b8f 100644
--- a/src/bin/pg_resetwal/po/es.po
+++ b/src/bin/pg_resetwal/po/es.po
@@ -12,7 +12,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: pg_resetwal (PostgreSQL) 12\n"
 "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n"
-"POT-Creation-Date: 2019-09-29 23:44+0000\n"
+"POT-Creation-Date: 2020-05-17 02:46+0000\n"
 "PO-Revision-Date: 2019-06-06 17:24-0400\n"
 "Last-Translator: Carlos Chapi <carlos.chapi@2ndquadrant.com>\n"
 "Language-Team: PgSQL-es-Ayuda <pgsql-es-ayuda@lists.postgresql.org>\n"
@@ -23,52 +23,59 @@ msgstr ""
 "X-Generator: Poedit 2.0.2\n"
 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
-#: ../../../src/common/logging.c:188
+#: ../../../src/common/logging.c:236
 #, c-format
 msgid "fatal: "
 msgstr "fatal: "
 
-#: ../../../src/common/logging.c:195
+#: ../../../src/common/logging.c:243
 #, c-format
 msgid "error: "
 msgstr "error: "
 
-#: ../../../src/common/logging.c:202
+#: ../../../src/common/logging.c:250
 #, c-format
 msgid "warning: "
 msgstr "precaución: "
 
-#: ../../common/restricted_token.c:69
-#, c-format
-msgid "cannot create restricted tokens on this platform"
+#: ../../common/restricted_token.c:64
+#, fuzzy, c-format
+#| msgid "could not load library \"%s\": %s"
+msgid "could not load library \"%s\": error code %lu"
+msgstr "no se pudo cargar la biblioteca «%s»: %s"
+
+#: ../../common/restricted_token.c:73
+#, fuzzy, c-format
+#| msgid "cannot create restricted tokens on this platform"
+msgid "cannot create restricted tokens on this platform: error code %lu"
 msgstr "no se pueden crear tokens restrigidos en esta plataforma"
 
-#: ../../common/restricted_token.c:78
+#: ../../common/restricted_token.c:82
 #, c-format
 msgid "could not open process token: error code %lu"
 msgstr "no se pudo abrir el token de proceso: código de error %lu"
 
-#: ../../common/restricted_token.c:91
+#: ../../common/restricted_token.c:97
 #, c-format
 msgid "could not allocate SIDs: error code %lu"
 msgstr "no se pudo emplazar los SIDs: código de error %lu"
 
-#: ../../common/restricted_token.c:110
+#: ../../common/restricted_token.c:119
 #, c-format
 msgid "could not create restricted token: error code %lu"
 msgstr "no se pudo crear el token restringido: código de error %lu"
 
-#: ../../common/restricted_token.c:131
+#: ../../common/restricted_token.c:140
 #, c-format
 msgid "could not start process for command \"%s\": error code %lu"
 msgstr "no se pudo iniciar el proceso para la orden «%s»: código de error %lu"
 
-#: ../../common/restricted_token.c:169
+#: ../../common/restricted_token.c:178
 #, c-format
 msgid "could not re-execute with restricted token: error code %lu"
 msgstr "no se pudo re-ejecutar con el token restringido: código de error %lu"
 
-#: ../../common/restricted_token.c:185
+#: ../../common/restricted_token.c:194
 #, c-format
 msgid "could not get exit code from subprocess: error code %lu"
 msgstr "no se pudo obtener el código de salida del subproceso»: código de error %lu"
@@ -163,7 +170,7 @@ msgstr "no se pudo obtener los permisos del directorio «%s»: %m"
 msgid "could not change directory to \"%s\": %m"
 msgstr "no se pudo cambiar al directorio «%s»: %m"
 
-#: pg_resetwal.c:381 pg_resetwal.c:545 pg_resetwal.c:602
+#: pg_resetwal.c:381 pg_resetwal.c:544 pg_resetwal.c:595
 #, c-format
 msgid "could not open file \"%s\" for reading: %m"
 msgstr "no se pudo abrir archivo «%s» para lectura: %m"
@@ -203,27 +210,27 @@ msgstr ""
 msgid "Write-ahead log reset\n"
 msgstr "«Write-ahead log» restablecido\n"
 
-#: pg_resetwal.c:554
+#: pg_resetwal.c:553
 #, c-format
 msgid "unexpected empty file \"%s\""
 msgstr "archivo vacío inesperado «%s»"
 
-#: pg_resetwal.c:556 pg_resetwal.c:618
+#: pg_resetwal.c:555 pg_resetwal.c:611
 #, c-format
 msgid "could not read file \"%s\": %m"
 msgstr "no se pudo leer el archivo «%s»: %m"
 
-#: pg_resetwal.c:571
+#: pg_resetwal.c:564
 #, c-format
 msgid "data directory is of wrong version"
 msgstr "el directorio de datos tiene la versión equivocada"
 
-#: pg_resetwal.c:572
+#: pg_resetwal.c:565
 #, c-format
 msgid "File \"%s\" contains \"%s\", which is not compatible with this program's version \"%s\"."
 msgstr "El archivo «%s» contiene «%s», que no es compatible con la versión «%s» de este programa."
 
-#: pg_resetwal.c:605
+#: pg_resetwal.c:598
 #, c-format
 msgid ""
 "If you are sure the data directory path is correct, execute\n"
@@ -234,24 +241,24 @@ msgstr ""
 "   touch %s\n"
 "y pruebe de nuevo."
 
-#: pg_resetwal.c:636
+#: pg_resetwal.c:629
 #, c-format
 msgid "pg_control exists but has invalid CRC; proceed with caution"
 msgstr "existe pg_control pero tiene un CRC no válido, proceda con precaución"
 
-#: pg_resetwal.c:645
+#: pg_resetwal.c:638
 #, c-format
 msgid "pg_control specifies invalid WAL segment size (%d byte); proceed with caution"
 msgid_plural "pg_control specifies invalid WAL segment size (%d bytes); proceed with caution"
 msgstr[0] "pg_control especifica un tamaño de segmento de WAL no válido (%d byte), proceda con precaución"
 msgstr[1] "pg_control especifica un tamaño de segmento de WAL no válido (%d bytes), proceda con precaución"
 
-#: pg_resetwal.c:656
+#: pg_resetwal.c:649
 #, c-format
 msgid "pg_control exists but is broken or wrong version; ignoring it"
 msgstr "existe pg_control pero está roto o tiene la versión equivocada; ignorándolo"
 
-#: pg_resetwal.c:754
+#: pg_resetwal.c:744
 #, c-format
 msgid ""
 "Guessed pg_control values:\n"
@@ -260,7 +267,7 @@ msgstr ""
 "Valores de pg_control asumidos:\n"
 "\n"
 
-#: pg_resetwal.c:756
+#: pg_resetwal.c:746
 #, c-format
 msgid ""
 "Current pg_control values:\n"
@@ -269,172 +276,168 @@ msgstr ""
 "Valores actuales de pg_control:\n"
 "\n"
 
-#: pg_resetwal.c:765
+#: pg_resetwal.c:748
 #, c-format
 msgid "pg_control version number:            %u\n"
 msgstr "Número de versión de pg_control:                 %u\n"
 
-#: pg_resetwal.c:767
+#: pg_resetwal.c:750
 #, c-format
 msgid "Catalog version number:               %u\n"
 msgstr "Número de versión de catálogo:                   %u\n"
 
-#: pg_resetwal.c:769
-#, c-format
-msgid "Database system identifier:           %s\n"
-msgstr "Identificador de sistema:                        %s\n"
+#: pg_resetwal.c:752
+#, fuzzy, c-format
+#| msgid "Database system identifier:           %s\n"
+msgid "Database system identifier:           %llu\n"
+msgstr "Identificador de sistema:                   %s\n"
 
-#: pg_resetwal.c:771
+#: pg_resetwal.c:754
 #, c-format
 msgid "Latest checkpoint's TimeLineID:       %u\n"
 msgstr "TimeLineID del checkpoint más reciente:          %u\n"
 
-#: pg_resetwal.c:773
+#: pg_resetwal.c:756
 #, c-format
 msgid "Latest checkpoint's full_page_writes: %s\n"
 msgstr "full_page_writes del checkpoint más reciente:    %s\n"
 
-#: pg_resetwal.c:774
+#: pg_resetwal.c:757
 msgid "off"
 msgstr "desactivado"
 
-#: pg_resetwal.c:774
+#: pg_resetwal.c:757
 msgid "on"
 msgstr "activado"
 
-#: pg_resetwal.c:775
+#: pg_resetwal.c:758
 #, c-format
 msgid "Latest checkpoint's NextXID:          %u:%u\n"
 msgstr "NextXID del checkpoint más reciente:             %u:%u\n"
 
-#: pg_resetwal.c:778
+#: pg_resetwal.c:761
 #, c-format
 msgid "Latest checkpoint's NextOID:          %u\n"
 msgstr "NextOID del checkpoint más reciente:             %u\n"
 
-#: pg_resetwal.c:780
+#: pg_resetwal.c:763
 #, c-format
 msgid "Latest checkpoint's NextMultiXactId:  %u\n"
 msgstr "NextMultiXactId del checkpoint más reciente:     %u\n"
 
-#: pg_resetwal.c:782
+#: pg_resetwal.c:765
 #, c-format
 msgid "Latest checkpoint's NextMultiOffset:  %u\n"
 msgstr "NextMultiOffset del checkpoint más reciente:     %u\n"
 
-#: pg_resetwal.c:784
+#: pg_resetwal.c:767
 #, c-format
 msgid "Latest checkpoint's oldestXID:        %u\n"
 msgstr "oldestXID del checkpoint más reciente:           %u\n"
 
-#: pg_resetwal.c:786
+#: pg_resetwal.c:769
 #, c-format
 msgid "Latest checkpoint's oldestXID's DB:   %u\n"
 msgstr "BD del oldestXID del checkpoint más reciente:    %u\n"
 
-#: pg_resetwal.c:788
+#: pg_resetwal.c:771
 #, c-format
 msgid "Latest checkpoint's oldestActiveXID:  %u\n"
 msgstr "oldestActiveXID del checkpoint más reciente:     %u\n"
 
-#: pg_resetwal.c:790
+#: pg_resetwal.c:773
 #, c-format
 msgid "Latest checkpoint's oldestMultiXid:   %u\n"
 msgstr "oldestMultiXid del checkpoint más reciente:      %u\n"
 
-#: pg_resetwal.c:792
+#: pg_resetwal.c:775
 #, c-format
 msgid "Latest checkpoint's oldestMulti's DB: %u\n"
 msgstr "BD del oldestMultiXid del checkpt. más reciente: %u\n"
 
-#: pg_resetwal.c:794
+#: pg_resetwal.c:777
 #, c-format
 msgid "Latest checkpoint's oldestCommitTsXid:%u\n"
 msgstr "oldestCommitTsXid del último checkpoint:         %u\n"
 
-#: pg_resetwal.c:796
+#: pg_resetwal.c:779
 #, c-format
 msgid "Latest checkpoint's newestCommitTsXid:%u\n"
 msgstr "newestCommitTsXid del último checkpoint:         %u\n"
 
-#: pg_resetwal.c:798
+#: pg_resetwal.c:781
 #, c-format
 msgid "Maximum data alignment:               %u\n"
 msgstr "Máximo alineamiento de datos:                    %u\n"
 
-#: pg_resetwal.c:801
+#: pg_resetwal.c:784
 #, c-format
 msgid "Database block size:                  %u\n"
 msgstr "Tamaño del bloque de la base de datos:           %u\n"
 
-#: pg_resetwal.c:803
+#: pg_resetwal.c:786
 #, c-format
 msgid "Blocks per segment of large relation: %u\n"
 msgstr "Bloques por segmento de relación grande:         %u\n"
 
-#: pg_resetwal.c:805
+#: pg_resetwal.c:788
 #, c-format
 msgid "WAL block size:                       %u\n"
 msgstr "Tamaño del bloque de WAL:                        %u\n"
 
-#: pg_resetwal.c:807 pg_resetwal.c:895
+#: pg_resetwal.c:790 pg_resetwal.c:876
 #, c-format
 msgid "Bytes per WAL segment:                %u\n"
 msgstr "Bytes por segmento WAL:                          %u\n"
 
-#: pg_resetwal.c:809
+#: pg_resetwal.c:792
 #, c-format
 msgid "Maximum length of identifiers:        %u\n"
 msgstr "Longitud máxima de identificadores:              %u\n"
 
-#: pg_resetwal.c:811
+#: pg_resetwal.c:794
 #, c-format
 msgid "Maximum columns in an index:          %u\n"
 msgstr "Máximo número de columnas en un índice:          %u\n"
 
-#: pg_resetwal.c:813
+#: pg_resetwal.c:796
 #, c-format
 msgid "Maximum size of a TOAST chunk:        %u\n"
 msgstr "Longitud máxima de un trozo TOAST:               %u\n"
 
-#: pg_resetwal.c:815
+#: pg_resetwal.c:798
 #, c-format
 msgid "Size of a large-object chunk:         %u\n"
 msgstr "Longitud máxima de un trozo de objeto grande:    %u\n"
 
-#: pg_resetwal.c:818
+#: pg_resetwal.c:801
 #, c-format
 msgid "Date/time type storage:               %s\n"
 msgstr "Tipo de almacenamiento hora/fecha:               %s\n"
 
-#: pg_resetwal.c:819
+#: pg_resetwal.c:802
 msgid "64-bit integers"
 msgstr "enteros de 64 bits"
 
-#: pg_resetwal.c:820
-#, c-format
-msgid "Float4 argument passing:              %s\n"
-msgstr "Paso de parámetros float4:                       %s\n"
-
-#: pg_resetwal.c:821 pg_resetwal.c:823
-msgid "by reference"
-msgstr "por referencia"
-
-#: pg_resetwal.c:821 pg_resetwal.c:823
-msgid "by value"
-msgstr "por valor"
-
-#: pg_resetwal.c:822
+#: pg_resetwal.c:803
 #, c-format
 msgid "Float8 argument passing:              %s\n"
 msgstr "Paso de parámetros float8:                       %s\n"
 
-#: pg_resetwal.c:824
+#: pg_resetwal.c:804
+msgid "by reference"
+msgstr "por referencia"
+
+#: pg_resetwal.c:804
+msgid "by value"
+msgstr "por valor"
+
+#: pg_resetwal.c:805
 #, c-format
 msgid "Data page checksum version:           %u\n"
 msgstr "Versión de suma de verificación de datos:        %u\n"
 
-#: pg_resetwal.c:838
+#: pg_resetwal.c:819
 #, c-format
 msgid ""
 "\n"
@@ -447,102 +450,102 @@ msgstr ""
 "Valores a cambiar:\n"
 "\n"
 
-#: pg_resetwal.c:842
+#: pg_resetwal.c:823
 #, c-format
 msgid "First log segment after reset:        %s\n"
 msgstr "Primer segmento de log después de reiniciar:     %s\n"
 
-#: pg_resetwal.c:846
+#: pg_resetwal.c:827
 #, c-format
 msgid "NextMultiXactId:                      %u\n"
 msgstr "NextMultiXactId:                      %u\n"
 
-#: pg_resetwal.c:848
+#: pg_resetwal.c:829
 #, c-format
 msgid "OldestMultiXid:                       %u\n"
 msgstr "OldestMultiXid:                       %u\n"
 
-#: pg_resetwal.c:850
+#: pg_resetwal.c:831
 #, c-format
 msgid "OldestMulti's DB:                     %u\n"
 msgstr "Base de datos del OldestMulti:        %u\n"
 
-#: pg_resetwal.c:856
+#: pg_resetwal.c:837
 #, c-format
 msgid "NextMultiOffset:                      %u\n"
 msgstr "NextMultiOffset:                      %u\n"
 
-#: pg_resetwal.c:862
+#: pg_resetwal.c:843
 #, c-format
 msgid "NextOID:                              %u\n"
 msgstr "NextOID:                              %u\n"
 
-#: pg_resetwal.c:868
+#: pg_resetwal.c:849
 #, c-format
 msgid "NextXID:                              %u\n"
 msgstr "NextXID:                              %u\n"
 
-#: pg_resetwal.c:870
+#: pg_resetwal.c:851
 #, c-format
 msgid "OldestXID:                            %u\n"
 msgstr "OldestXID:                            %u\n"
 
-#: pg_resetwal.c:872
+#: pg_resetwal.c:853
 #, c-format
 msgid "OldestXID's DB:                       %u\n"
 msgstr "Base de datos del OldestXID:          %u\n"
 
-#: pg_resetwal.c:878
+#: pg_resetwal.c:859
 #, c-format
 msgid "NextXID epoch:                        %u\n"
 msgstr "Epoch del NextXID:                    %u\n"
 
-#: pg_resetwal.c:884
+#: pg_resetwal.c:865
 #, c-format
 msgid "oldestCommitTsXid:                    %u\n"
 msgstr "oldestCommitTsXid:                    %u\n"
 
-#: pg_resetwal.c:889
+#: pg_resetwal.c:870
 #, c-format
 msgid "newestCommitTsXid:                    %u\n"
 msgstr "newestCommitTsXid:                    %u\n"
 
-#: pg_resetwal.c:975 pg_resetwal.c:1043 pg_resetwal.c:1090
+#: pg_resetwal.c:956 pg_resetwal.c:1024 pg_resetwal.c:1071
 #, c-format
 msgid "could not open directory \"%s\": %m"
 msgstr "no se pudo abrir el directorio «%s»: %m"
 
-#: pg_resetwal.c:1010 pg_resetwal.c:1063 pg_resetwal.c:1113
+#: pg_resetwal.c:991 pg_resetwal.c:1044 pg_resetwal.c:1094
 #, c-format
 msgid "could not read directory \"%s\": %m"
 msgstr "no se pudo leer el directorio «%s»: %m"
 
-#: pg_resetwal.c:1016 pg_resetwal.c:1069 pg_resetwal.c:1119
+#: pg_resetwal.c:997 pg_resetwal.c:1050 pg_resetwal.c:1100
 #, c-format
 msgid "could not close directory \"%s\": %m"
 msgstr "no se pudo abrir el directorio «%s»: %m"
 
-#: pg_resetwal.c:1055 pg_resetwal.c:1105
+#: pg_resetwal.c:1036 pg_resetwal.c:1086
 #, c-format
 msgid "could not delete file \"%s\": %m"
 msgstr "no se pudo borrar el archivo «%s»: %m"
 
-#: pg_resetwal.c:1186
+#: pg_resetwal.c:1167
 #, c-format
 msgid "could not open file \"%s\": %m"
 msgstr "no se pudo abrir el archivo «%s»: %m"
 
-#: pg_resetwal.c:1196 pg_resetwal.c:1209
+#: pg_resetwal.c:1177 pg_resetwal.c:1190
 #, c-format
 msgid "could not write file \"%s\": %m"
 msgstr "no se pudo escribir el archivo «%s»: %m"
 
-#: pg_resetwal.c:1216
+#: pg_resetwal.c:1197
 #, c-format
 msgid "fsync error: %m"
 msgstr "error de fsync: %m"
 
-#: pg_resetwal.c:1227
+#: pg_resetwal.c:1208
 #, c-format
 msgid ""
 "%s resets the PostgreSQL write-ahead log.\n"
@@ -551,7 +554,7 @@ msgstr ""
 "%s restablece el WAL («write-ahead log») de PostgreSQL.\n"
 "\n"
 
-#: pg_resetwal.c:1228
+#: pg_resetwal.c:1209
 #, c-format
 msgid ""
 "Usage:\n"
@@ -562,12 +565,12 @@ msgstr ""
 "   %s [OPCIÓN]... DATADIR\n"
 "\n"
 
-#: pg_resetwal.c:1229
+#: pg_resetwal.c:1210
 #, c-format
 msgid "Options:\n"
 msgstr "Opciones:\n"
 
-#: pg_resetwal.c:1230
+#: pg_resetwal.c:1211
 #, c-format
 msgid ""
 "  -c, --commit-timestamp-ids=XID,XID\n"
@@ -579,29 +582,29 @@ msgstr ""
 "                           que llevan timestamp de commit (cero significa no\n"
 "                           cambiar)\n"
 
-#: pg_resetwal.c:1233
+#: pg_resetwal.c:1214
 #, c-format
 msgid " [-D, --pgdata=]DATADIR          data directory\n"
 msgstr " [-D, --pgdata=]DATADIR    directorio de datos\n"
 
-#: pg_resetwal.c:1234
+#: pg_resetwal.c:1215
 #, c-format
 msgid "  -e, --epoch=XIDEPOCH           set next transaction ID epoch\n"
 msgstr "  -e, --epoch=XIDEPOCH     asigna el siguiente «epoch» de ID de transacción\n"
 
-#: pg_resetwal.c:1235
+#: pg_resetwal.c:1216
 #, c-format
 msgid "  -f, --force                    force update to be done\n"
 msgstr "  -f, --force              fuerza que la actualización sea hecha\n"
 
-#: pg_resetwal.c:1236
+#: pg_resetwal.c:1217
 #, c-format
 msgid "  -l, --next-wal-file=WALFILE    set minimum starting location for new WAL\n"
 msgstr ""
 "  -l, --next-wal-file=ARCHIVOWAL\n"
 "                           fuerza una ubicación inicial mínima para nuevo WAL\n"
 
-#: pg_resetwal.c:1237
+#: pg_resetwal.c:1218
 #, c-format
 msgid "  -m, --multixact-ids=MXID,MXID  set next and oldest multitransaction ID\n"
 msgstr ""
@@ -609,50 +612,69 @@ msgstr ""
 "                           asigna el siguiente ID de multitransacción y\n"
 "                           el más antiguo\n"
 
-#: pg_resetwal.c:1238
+#: pg_resetwal.c:1219
 #, c-format
 msgid "  -n, --dry-run                  no update, just show what would be done\n"
 msgstr "  -n, --dry-run            no actualiza, sólo muestra lo que se haría\n"
 
-#: pg_resetwal.c:1239
+#: pg_resetwal.c:1220
 #, c-format
 msgid "  -o, --next-oid=OID             set next OID\n"
 msgstr "  -o, --next-oid=OID       asigna el siguiente OID\n"
 
-#: pg_resetwal.c:1240
+#: pg_resetwal.c:1221
 #, c-format
 msgid "  -O, --multixact-offset=OFFSET  set next multitransaction offset\n"
 msgstr ""
 "  -O, --multixact-offset=OFFSET\n"
 "                           asigna la siguiente posición de multitransacción\n"
 
-#: pg_resetwal.c:1241
+#: pg_resetwal.c:1222
 #, c-format
 msgid "  -V, --version                  output version information, then exit\n"
 msgstr "  -V, --version            mostrar información de versión y salir\n"
 
-#: pg_resetwal.c:1242
+#: pg_resetwal.c:1223
 #, c-format
 msgid "  -x, --next-transaction-id=XID  set next transaction ID\n"
 msgstr ""
 "  -x, --next-transaction-id=XID\n"
 "                           asigna el siguiente ID de transacción\n"
 
-#: pg_resetwal.c:1243
+#: pg_resetwal.c:1224
 #, c-format
 msgid "      --wal-segsize=SIZE         size of WAL segments, in megabytes\n"
 msgstr "      --wal-segsize=TAMAÑO tamaño de segmentos de WAL, en megabytes\n"
 
-#: pg_resetwal.c:1244
+#: pg_resetwal.c:1225
 #, c-format
 msgid "  -?, --help                     show this help, then exit\n"
 msgstr "  -?, --help               mostrar esta ayuda y salir\n"
 
-#: pg_resetwal.c:1245
+#: pg_resetwal.c:1226
 #, c-format
 msgid ""
 "\n"
-"Report bugs to <pgsql-bugs@lists.postgresql.org>.\n"
+"Report bugs to <%s>.\n"
 msgstr ""
-"\n"
-"Reporte errores a <pgsql-bugs@lists.postgresql.org>.\n"
+
+#: pg_resetwal.c:1227
+#, c-format
+msgid "%s home page: <%s>\n"
+msgstr ""
+
+#~ msgid "cannot create restricted tokens on this platform"
+#~ msgstr "no se pueden crear tokens restrigidos en esta plataforma"
+
+#~ msgid "Database system identifier:           %s\n"
+#~ msgstr "Identificador de sistema:                        %s\n"
+
+#~ msgid "Float4 argument passing:              %s\n"
+#~ msgstr "Paso de parámetros float4:                       %s\n"
+
+#~ msgid ""
+#~ "\n"
+#~ "Report bugs to <pgsql-bugs@lists.postgresql.org>.\n"
+#~ msgstr ""
+#~ "\n"
+#~ "Reporte errores a <pgsql-bugs@lists.postgresql.org>.\n"
diff --git a/src/bin/pg_rewind/po/es.po b/src/bin/pg_rewind/po/es.po
index 3ce14c1b32d..f2d1e9bd44b 100644
--- a/src/bin/pg_rewind/po/es.po
+++ b/src/bin/pg_rewind/po/es.po
@@ -10,7 +10,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: pg_rewind (PostgreSQL) 12\n"
 "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n"
-"POT-Creation-Date: 2019-09-29 23:45+0000\n"
+"POT-Creation-Date: 2020-05-17 02:47+0000\n"
 "PO-Revision-Date: 2019-09-29 22:26-0300\n"
 "Last-Translator: Carlos Chapi <carloswaldo@babelruins.org>\n"
 "Language-Team: PgSQL-es-Ayuda <pgsql-es-ayuda@lists.postgresql.org>\n"
@@ -21,63 +21,70 @@ msgstr ""
 "X-Generator: BlackCAT 1.0\n"
 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
-#: ../../../src/common/logging.c:188
+#: ../../../src/common/logging.c:236
 #, c-format
 msgid "fatal: "
 msgstr "fatal: "
 
-#: ../../../src/common/logging.c:195
+#: ../../../src/common/logging.c:243
 #, c-format
 msgid "error: "
 msgstr "error: "
 
-#: ../../../src/common/logging.c:202
+#: ../../../src/common/logging.c:250
 #, c-format
 msgid "warning: "
 msgstr "precaución: "
 
 #: ../../common/fe_memutils.c:35 ../../common/fe_memutils.c:75
-#: ../../common/fe_memutils.c:98
+#: ../../common/fe_memutils.c:98 ../../common/fe_memutils.c:162
 #, c-format
 msgid "out of memory\n"
 msgstr "memoria agotada\n"
 
-#: ../../common/fe_memutils.c:92
+#: ../../common/fe_memutils.c:92 ../../common/fe_memutils.c:154
 #, c-format
 msgid "cannot duplicate null pointer (internal error)\n"
 msgstr "no se puede duplicar un puntero nulo (error interno)\n"
 
-#: ../../common/restricted_token.c:69
-#, c-format
-msgid "cannot create restricted tokens on this platform"
+#: ../../common/restricted_token.c:64
+#, fuzzy, c-format
+#| msgid "could not load library \"%s\": %s"
+msgid "could not load library \"%s\": error code %lu"
+msgstr "no se pudo cargar la biblioteca «%s»: %s"
+
+#: ../../common/restricted_token.c:73
+#, fuzzy, c-format
+#| msgid "cannot create restricted tokens on this platform"
+msgid "cannot create restricted tokens on this platform: error code %lu"
 msgstr "no se pueden crear tokens restrigidos en esta plataforma"
 
-#: ../../common/restricted_token.c:78
+#: ../../common/restricted_token.c:82
 #, c-format
 msgid "could not open process token: error code %lu"
 msgstr "no se pudo abrir el token de proceso: código de error %lu"
 
-#: ../../common/restricted_token.c:91
+#: ../../common/restricted_token.c:97
 #, c-format
 msgid "could not allocate SIDs: error code %lu"
 msgstr "no se pudo emplazar los SIDs: código de error %lu"
 
-#: ../../common/restricted_token.c:110
+#: ../../common/restricted_token.c:119
 #, c-format
 msgid "could not create restricted token: error code %lu"
 msgstr "no se pudo crear el token restringido: código de error %lu"
 
-#: ../../common/restricted_token.c:131
+#: ../../common/restricted_token.c:140
 #, c-format
 msgid "could not start process for command \"%s\": error code %lu"
 msgstr "no se pudo iniciar el proceso para la orden «%s»: código de error %lu"
 
-#: ../../common/restricted_token.c:169
+#: ../../common/restricted_token.c:178
 #, c-format
 msgid "could not re-execute with restricted token: error code %lu"
 msgstr "no se pudo re-ejecutar con el token restringido: código de error %lu"
 
-#: ../../common/restricted_token.c:185
+#: ../../common/restricted_token.c:194
 #, c-format
 msgid "could not get exit code from subprocess: error code %lu"
 msgstr "no se pudo obtener el código de salida del subproceso»: código de error %lu"
@@ -87,7 +94,7 @@ msgstr "no se pudo obtener el código de salida del subproceso»: código de err
 msgid "could not open directory \"%s\": %m"
 msgstr "no se pudo abrir el directorio «%s»: %m"
 
-#: copy_fetch.c:88 filemap.c:187 filemap.c:348
+#: copy_fetch.c:88 filemap.c:208 filemap.c:369
 #, c-format
 msgid "could not stat file \"%s\": %m"
 msgstr "no se pudo hacer stat al archivo «%s»: %m"
@@ -127,7 +134,7 @@ msgstr "no se pudo abrir el archivo de origen «%s»: %m"
 msgid "could not seek in source file: %m"
 msgstr "no se pudo posicionar en archivo de origen: %m"
 
-#: copy_fetch.c:187 file_ops.c:311 parsexlog.c:314
+#: copy_fetch.c:187 file_ops.c:311 parsexlog.c:336
 #, c-format
 msgid "could not read file \"%s\": %m"
 msgstr "no se pudo leer el archivo «%s»: %m"
@@ -207,202 +214,208 @@ msgstr "no se pudo eliminar el enlace simbólico «%s»: %m"
 msgid "could not open file \"%s\" for reading: %m"
 msgstr "no se pudo abrir archivo «%s» para lectura: %m"
 
-#: file_ops.c:314 parsexlog.c:316
+#: file_ops.c:314 parsexlog.c:338
 #, c-format
 msgid "could not read file \"%s\": read %d of %zu"
 msgstr "no se pudo leer el archivo «%s»: leídos %d de %zu"
 
-#: filemap.c:179
+#: filemap.c:200
 #, c-format
 msgid "data file \"%s\" in source is not a regular file"
 msgstr "el archivo de datos «%s» en el origen no es un archivo regular"
 
-#: filemap.c:201
+#: filemap.c:222
 #, c-format
 msgid "\"%s\" is not a directory"
 msgstr "«%s» no es un directorio"
 
-#: filemap.c:224
+#: filemap.c:245
 #, c-format
 msgid "\"%s\" is not a symbolic link"
 msgstr "«%s» no es un link simbólico"
 
-#: filemap.c:236
+#: filemap.c:257
 #, c-format
 msgid "\"%s\" is not a regular file"
 msgstr "«%s» no es un archivo regular"
 
-#: filemap.c:360
+#: filemap.c:381
 #, c-format
 msgid "source file list is empty"
 msgstr "el listado de archivos de origen está vacío"
 
-#: filemap.c:475
+#: filemap.c:496
 #, c-format
 msgid "unexpected page modification for directory or symbolic link \"%s\""
 msgstr "modificación de página inesperada para el directorio o link simbólico «%s»"
 
-#: libpq_fetch.c:52
+#: libpq_fetch.c:50
 #, c-format
 msgid "could not connect to server: %s"
 msgstr "no se pudo conectar al servidor: %s"
 
-#: libpq_fetch.c:56
+#: libpq_fetch.c:54
 #, c-format
 msgid "connected to server"
 msgstr "conectado al servidor"
 
-#: libpq_fetch.c:65
+#: libpq_fetch.c:63
 #, c-format
 msgid "could not clear search_path: %s"
 msgstr "no se pudo limpiar search_path: %s"
 
-#: libpq_fetch.c:77
+#: libpq_fetch.c:75
 #, c-format
 msgid "source server must not be in recovery mode"
 msgstr "el servidor de origen no debe estar en modo de recuperación"
 
-#: libpq_fetch.c:87
+#: libpq_fetch.c:85
 #, c-format
 msgid "full_page_writes must be enabled in the source server"
 msgstr "full_page_writes debe estar activado en el servidor de origen"
 
-#: libpq_fetch.c:113 libpq_fetch.c:139
-#, c-format
-msgid "error running query (%s) in source server: %s"
+#: libpq_fetch.c:111
+#, fuzzy, c-format
+#| msgid "error running query (%s) in source server: %s"
+msgid "error running query (%s) on source server: %s"
 msgstr "error ejecutando consulta (%s) en el servidor de origen: %s"
 
-#: libpq_fetch.c:118
+#: libpq_fetch.c:116
 #, c-format
 msgid "unexpected result set from query"
 msgstr "conjunto de resultados inesperados de la consulta"
 
-#: libpq_fetch.c:159
+#: libpq_fetch.c:137
+#, c-format
+msgid "error running query (%s) in source server: %s"
+msgstr "error ejecutando consulta (%s) en el servidor de origen: %s"
+
+#: libpq_fetch.c:157
 #, c-format
 msgid "unrecognized result \"%s\" for current WAL insert location"
 msgstr "resultado «%s» no reconocido para la ubicación de inserción WAL actual"
 
-#: libpq_fetch.c:209
+#: libpq_fetch.c:207
 #, c-format
 msgid "could not fetch file list: %s"
 msgstr "no se pudo obtener el listado de archivos: %s"
 
-#: libpq_fetch.c:214
+#: libpq_fetch.c:212
 #, c-format
 msgid "unexpected result set while fetching file list"
 msgstr "conjunto de resultados inesperado mientras se obtenía el listado de archivos"
 
-#: libpq_fetch.c:262
+#: libpq_fetch.c:260
 #, c-format
 msgid "could not send query: %s"
 msgstr "no se pudo enviar la consulta: %s"
 
-#: libpq_fetch.c:267
+#: libpq_fetch.c:265
 #, c-format
 msgid "could not set libpq connection to single row mode"
 msgstr "no se pudo establecer la coneción libpq a modo «single row»"
 
-#: libpq_fetch.c:288
+#: libpq_fetch.c:285
 #, c-format
 msgid "unexpected result while fetching remote files: %s"
 msgstr "resultados inesperados mientras se obtenían archivos remotos: %s"
 
-#: libpq_fetch.c:294
+#: libpq_fetch.c:291
 #, c-format
 msgid "unexpected result set size while fetching remote files"
 msgstr "tamaño del conjunto de resultados inesperado mientras se obtenían archivos remotos"
 
-#: libpq_fetch.c:300
+#: libpq_fetch.c:297
 #, c-format
 msgid "unexpected data types in result set while fetching remote files: %u %u %u"
 msgstr "tipos de dato inesperados en el conjunto de resultados mientras se obtenían archivos remotos: %u %u %u"
 
-#: libpq_fetch.c:308
+#: libpq_fetch.c:305
 #, c-format
 msgid "unexpected result format while fetching remote files"
 msgstr "formato de resultados inesperado mientras se obtenían archivos remotos"
 
-#: libpq_fetch.c:314
+#: libpq_fetch.c:311
 #, c-format
 msgid "unexpected null values in result while fetching remote files"
 msgstr "valores nulos inesperados en el resultado mientras se obtenían archivos remotos"
 
-#: libpq_fetch.c:318
+#: libpq_fetch.c:315
 #, c-format
 msgid "unexpected result length while fetching remote files"
 msgstr "largo del resultado inesperado mientras se obtenían los archivos remotos"
 
-#: libpq_fetch.c:384
+#: libpq_fetch.c:376
 #, c-format
 msgid "could not fetch remote file \"%s\": %s"
 msgstr "no se pudo obtener el archivo remoto «%s»: %s"
 
-#: libpq_fetch.c:389
+#: libpq_fetch.c:381
 #, c-format
 msgid "unexpected result set while fetching remote file \"%s\""
 msgstr "conjunto de resultados inesperado mientras se obtenía el archivo remoto «%s»"
 
-#: libpq_fetch.c:433
+#: libpq_fetch.c:425
 #, c-format
 msgid "could not send COPY data: %s"
 msgstr "no se pudo enviar datos COPY: %s"
 
-#: libpq_fetch.c:462
+#: libpq_fetch.c:454
 #, c-format
 msgid "could not send file list: %s"
 msgstr "no se pudo enviar el listado de archivos: %s"
 
-#: libpq_fetch.c:504
+#: libpq_fetch.c:496
 #, c-format
 msgid "could not send end-of-COPY: %s"
 msgstr "no se pudo enviar fin-de-COPY: %s"
 
-#: libpq_fetch.c:510
+#: libpq_fetch.c:502
 #, c-format
 msgid "unexpected result while sending file list: %s"
 msgstr "resultados inesperados mientras se enviaba el listado de archivos: %s"
 
-#: parsexlog.c:74 parsexlog.c:127 parsexlog.c:185
+#: parsexlog.c:73 parsexlog.c:125 parsexlog.c:185
 #, c-format
 msgid "out of memory"
 msgstr "memoria agotada"
 
-#: parsexlog.c:87 parsexlog.c:133
+#: parsexlog.c:85 parsexlog.c:132
 #, c-format
 msgid "could not read WAL record at %X/%X: %s"
 msgstr "no se pudo leer el registro WAL en %X/%X: %s"
 
-#: parsexlog.c:91 parsexlog.c:136
+#: parsexlog.c:89 parsexlog.c:135
 #, c-format
 msgid "could not read WAL record at %X/%X"
 msgstr "no se pudo leer el registro WAL en %X/%X"
 
-#: parsexlog.c:197
+#: parsexlog.c:198
 #, c-format
 msgid "could not find previous WAL record at %X/%X: %s"
 msgstr "no se pudo encontrar el registro WAL anterior en %X/%X: %s"
 
-#: parsexlog.c:201
+#: parsexlog.c:202
 #, c-format
 msgid "could not find previous WAL record at %X/%X"
 msgstr "no se pudo encontrar el registro WAL anterior en %X/%X"
 
-#: parsexlog.c:292
+#: parsexlog.c:298
 #, c-format
 msgid "could not open file \"%s\": %m"
 msgstr "no se pudo abrir el archivo «%s»: %m"
 
-#: parsexlog.c:305
+#: parsexlog.c:327
 #, c-format
 msgid "could not seek in file \"%s\": %m"
 msgstr "no se pudo posicionar (seek) el archivo «%s»: %m"
 
-#: parsexlog.c:385
+#: parsexlog.c:407
 #, c-format
 msgid "WAL record modifies a relation, but record type is not recognized: lsn: %X/%X, rmgr: %s, info: %02X"
 msgstr "el registro WAL modifica una relación, pero el tipo de registro no es reconocido lsn: %X/%X, rmgr: %s, info: %02X"
 
-#: pg_rewind.c:72
+#: pg_rewind.c:78
 #, c-format
 msgid ""
 "%s resynchronizes a PostgreSQL cluster with another copy of the cluster.\n"
@@ -411,7 +424,7 @@ msgstr ""
 "%s resincroniza un cluster PostgreSQL con otra copia del cluster.\n"
 "\n"
 
-#: pg_rewind.c:73
+#: pg_rewind.c:79
 #, c-format
 msgid ""
 "Usage:\n"
@@ -422,397 +435,472 @@ msgstr ""
 "  %s [OPCION]...\n"
 "\n"
 
-#: pg_rewind.c:74
+#: pg_rewind.c:80
 #, c-format
 msgid "Options:\n"
 msgstr "Opciones:\n"
 
-#: pg_rewind.c:75
+#: pg_rewind.c:81
+#, c-format
+msgid ""
+"  -c, --restore-target-wal       use restore_command in target configuration to\n"
+"                                 retrieve WAL files from archives\n"
+msgstr ""
+
+#: pg_rewind.c:83
 #, c-format
 msgid "  -D, --target-pgdata=DIRECTORY  existing data directory to modify\n"
 msgstr "  -D, --target-pgdata=DIRECTORIO directorio de datos existente a modificar\n"
 
-#: pg_rewind.c:76
+#: pg_rewind.c:84
 #, c-format
 msgid "      --source-pgdata=DIRECTORY  source data directory to synchronize with\n"
 msgstr "      --source-pgdata=DIRECTORIO directorio de datos de origen a sincronizar\n"
 
-#: pg_rewind.c:77
+#: pg_rewind.c:85
 #, c-format
 msgid "      --source-server=CONNSTR    source server to synchronize with\n"
 msgstr "      --source-server=CONN       servidor de origen a sincronizar\n"
 
-#: pg_rewind.c:78
+#: pg_rewind.c:86
 #, c-format
 msgid "  -n, --dry-run                  stop before modifying anything\n"
 msgstr "  -n, --dry-run                  detener antes de modificar nada\n"
 
-#: pg_rewind.c:79
+#: pg_rewind.c:87
 #, c-format
 msgid ""
 "  -N, --no-sync                  do not wait for changes to be written\n"
 "                                 safely to disk\n"
 msgstr "  -N, --no-sync                  no esperar que los cambios se sincronicen a disco\n"
 
-#: pg_rewind.c:81
+#: pg_rewind.c:89
 #, c-format
 msgid "  -P, --progress                 write progress messages\n"
 msgstr "  -P, --progress                 escribir mensajes de progreso\n"
 
-#: pg_rewind.c:82
+#: pg_rewind.c:90
+#, fuzzy, c-format
+#| msgid ""
+#| "  -R, --write-recovery-conf\n"
+#| "                         write configuration for replication\n"
+msgid ""
+"  -R, --write-recovery-conf      write configuration for replication\n"
+"                                 (requires --source-server)\n"
+msgstr ""
+"  -R, --write-recovery-conf\n"
+"                         escribe configuración para replicación\n"
+
+#: pg_rewind.c:92
 #, c-format
 msgid "      --debug                    write a lot of debug messages\n"
 msgstr "      --debug                    escribir muchos mensajes de depuración\n"
 
-#: pg_rewind.c:83
+#: pg_rewind.c:93
+#, c-format
+msgid "      --no-ensure-shutdown       do not automatically fix unclean shutdown\n"
+msgstr ""
+
+#: pg_rewind.c:94
 #, c-format
 msgid "  -V, --version                  output version information, then exit\n"
 msgstr "  -V, --version                  mostrar información de versión y salir\n"
 
-#: pg_rewind.c:84
+#: pg_rewind.c:95
 #, c-format
 msgid "  -?, --help                     show this help, then exit\n"
 msgstr "  -?, --help                     mostrar esta ayuda y salir\n"
 
-#: pg_rewind.c:85
+#: pg_rewind.c:96
 #, c-format
 msgid ""
 "\n"
-"Report bugs to <pgsql-bugs@lists.postgresql.org>.\n"
+"Report bugs to <%s>.\n"
 msgstr ""
-"\n"
-"Reporte errores a <pgsql-bugs@lists.postgresql.org>.\n"
 
-#: pg_rewind.c:142 pg_rewind.c:178 pg_rewind.c:185 pg_rewind.c:192
-#: pg_rewind.c:200
+#: pg_rewind.c:97
+#, c-format
+msgid "%s home page: <%s>\n"
+msgstr ""
+
+#: pg_rewind.c:159 pg_rewind.c:208 pg_rewind.c:215 pg_rewind.c:222
+#: pg_rewind.c:229 pg_rewind.c:237
 #, c-format
 msgid "Try \"%s --help\" for more information.\n"
 msgstr "Pruebe «%s --help» para mayor información.\n"
 
-#: pg_rewind.c:177
+#: pg_rewind.c:207
 #, c-format
 msgid "no source specified (--source-pgdata or --source-server)"
 msgstr "no se especificó origen (--source-pgdata o --source-server)"
 
-#: pg_rewind.c:184
+#: pg_rewind.c:214
 #, c-format
 msgid "only one of --source-pgdata or --source-server can be specified"
 msgstr "sólo uno de --source-pgdata o --source-server puede ser especificado"
 
-#: pg_rewind.c:191
+#: pg_rewind.c:221
 #, c-format
 msgid "no target data directory specified (--target-pgdata)"
 msgstr "no se especificó directorio de datos de destino (--target-pgdata)"
 
-#: pg_rewind.c:198
+#: pg_rewind.c:228
+#, c-format
+msgid "no source server information (--source-server) specified for --write-recovery-conf"
+msgstr ""
+
+#: pg_rewind.c:235
 #, c-format
 msgid "too many command-line arguments (first is \"%s\")"
 msgstr "demasiados argumentos en la línea de órdenes (el primero es «%s»)"
 
-#: pg_rewind.c:213
+#: pg_rewind.c:250
 #, c-format
 msgid "cannot be executed by \"root\""
 msgstr "no puede ser ejecutado por «root»"
 
-#: pg_rewind.c:214
+#: pg_rewind.c:251
 #, c-format
 msgid "You must run %s as the PostgreSQL superuser.\n"
 msgstr "Debe ejecutar %s con el superusuario de PostgreSQL.\n"
 
-#: pg_rewind.c:225
+#: pg_rewind.c:262
 #, c-format
 msgid "could not read permissions of directory \"%s\": %m"
 msgstr "no se pudo obtener los permisos del directorio «%s»: %m"
 
-#: pg_rewind.c:256
+#: pg_rewind.c:316
 #, c-format
 msgid "source and target cluster are on the same timeline"
 msgstr "el cluster de origen y destino están en el mismo timeline"
 
-#: pg_rewind.c:262
+#: pg_rewind.c:322
 #, c-format
 msgid "servers diverged at WAL location %X/%X on timeline %u"
 msgstr "servidores divergieron en la posición de WAL %X/%X en el timeline %u"
 
-#: pg_rewind.c:299
+#: pg_rewind.c:360
 #, c-format
 msgid "no rewind required"
 msgstr "no se requiere rebobinar"
 
-#: pg_rewind.c:306
+#: pg_rewind.c:369
 #, c-format
 msgid "rewinding from last common checkpoint at %X/%X on timeline %u"
 msgstr "rebobinando desde el último checkpoint común en %X/%X en el timeline %u"
 
-#: pg_rewind.c:315
+#: pg_rewind.c:378
 #, c-format
 msgid "reading source file list"
 msgstr "leyendo la lista de archivos de origen"
 
-#: pg_rewind.c:318
+#: pg_rewind.c:381
 #, c-format
 msgid "reading target file list"
 msgstr "leyendo la lista de archivos de destino"
 
-#: pg_rewind.c:329
+#: pg_rewind.c:392
 #, c-format
 msgid "reading WAL in target"
 msgstr "leyendo WAL en destino"
 
-#: pg_rewind.c:346
+#: pg_rewind.c:409
 #, c-format
 msgid "need to copy %lu MB (total source directory size is %lu MB)"
 msgstr "se necesitan copiar %lu MB (tamaño total de directorio de origen es %lu MB)"
 
-#: pg_rewind.c:365
+#: pg_rewind.c:428
 #, c-format
 msgid "creating backup label and updating control file"
 msgstr "creando etiqueta de respaldo y actualizando archivo de control"
 
-#: pg_rewind.c:394
+#: pg_rewind.c:458
 #, c-format
 msgid "syncing target data directory"
 msgstr "sincronizando directorio de datos de destino"
 
-#: pg_rewind.c:397
+#: pg_rewind.c:465
 #, c-format
 msgid "Done!"
 msgstr "¡Listo!"
 
-#: pg_rewind.c:409
+#: pg_rewind.c:477
 #, c-format
 msgid "source and target clusters are from different systems"
 msgstr "clusters de origen y destino son de sistemas diferentes"
 
-#: pg_rewind.c:417
+#: pg_rewind.c:485
 #, c-format
 msgid "clusters are not compatible with this version of pg_rewind"
 msgstr "los clusters no son compatibles con esta versión de pg_rewind"
 
-#: pg_rewind.c:427
+#: pg_rewind.c:495
 #, c-format
 msgid "target server needs to use either data checksums or \"wal_log_hints = on\""
 msgstr "el servidor de destino necesita tener sumas de verificación de datos o «wal_log_hints» activados"
 
-#: pg_rewind.c:438
+#: pg_rewind.c:506
 #, c-format
 msgid "target server must be shut down cleanly"
 msgstr "el directorio de destino debe estar apagado limpiamente"
 
-#: pg_rewind.c:448
+#: pg_rewind.c:516
 #, c-format
 msgid "source data directory must be shut down cleanly"
 msgstr "el directorio de origen debe estar apagado limpiamente"
 
-#: pg_rewind.c:497
+#: pg_rewind.c:565
 #, c-format
 msgid "%*s/%s kB (%d%%) copied"
 msgstr "%*s/%s kB (%d%%) copiados"
 
-#: pg_rewind.c:558
+#: pg_rewind.c:626
 #, c-format
 msgid "invalid control file"
 msgstr "archivo de control no válido"
 
-#: pg_rewind.c:642
+#: pg_rewind.c:710
 #, c-format
 msgid "could not find common ancestor of the source and target cluster's timelines"
 msgstr "no se pudo encontrar un ancestro común en el timeline de los clusters de origen y destino"
 
-#: pg_rewind.c:683
+#: pg_rewind.c:751
 #, c-format
 msgid "backup label buffer too small"
 msgstr "el búfer del backup label es demasiado pequeño"
 
-#: pg_rewind.c:706
+#: pg_rewind.c:774
 #, c-format
 msgid "unexpected control file CRC"
 msgstr "CRC de archivo de control inesperado"
 
-#: pg_rewind.c:716
+#: pg_rewind.c:784
 #, c-format
 msgid "unexpected control file size %d, expected %d"
 msgstr "tamaño del archivo de control %d inesperado, se esperaba %d"
 
-#: pg_rewind.c:725
+#: pg_rewind.c:793
 #, c-format
 msgid "WAL segment size must be a power of two between 1 MB and 1 GB, but the control file specifies %d byte"
 msgid_plural "WAL segment size must be a power of two between 1 MB and 1 GB, but the control file specifies %d bytes"
 msgstr[0] "El tamaño del segmento de WAL debe ser una potencia de dos entre 1 MB y 1 GB, pero el archivo de control especifica %d byte"
 msgstr[1] "El tamaño del segmento de WAL debe ser una potencia de dos entre 1 MB y 1 GB, pero el archivo de control especifica %d bytes"
 
-#: timeline.c:76 timeline.c:82
+#: pg_rewind.c:850 pg_rewind.c:908
+#, c-format
+msgid ""
+"The program \"%s\" is needed by %s but was not found in the\n"
+"same directory as \"%s\".\n"
+"Check your installation."
+msgstr ""
+
+#: pg_rewind.c:855 pg_rewind.c:913
+#, c-format
+msgid ""
+"The program \"%s\" was found by \"%s\"\n"
+"but was not the same version as %s.\n"
+"Check your installation."
+msgstr ""
+
+#: pg_rewind.c:876
+#, fuzzy, c-format
+#| msgid "Restoring global objects in the new cluster"
+msgid "restore_command is not set in the target cluster"
+msgstr "Restaurando objetos globales en el nuevo clúster"
+
+#: pg_rewind.c:919
+#, c-format
+msgid "executing \"%s\" for target server to complete crash recovery"
+msgstr ""
+
+#: pg_rewind.c:939
+#, c-format
+msgid "postgres single-user mode in target cluster failed"
+msgstr ""
+
+#: pg_rewind.c:940
+#, fuzzy, c-format
+#| msgid "%s: %sCommand was: %s"
+msgid "Command was: %s"
+msgstr "%s: %sLa orden era: %s"
+
+#: timeline.c:75 timeline.c:81
 #, c-format
 msgid "syntax error in history file: %s"
 msgstr "error de sintaxis en archivo de historia: %s"
 
-#: timeline.c:77
+#: timeline.c:76
 #, c-format
 msgid "Expected a numeric timeline ID."
 msgstr "Se esperaba un ID numérico de timeline."
 
-#: timeline.c:83
+#: timeline.c:82
 #, c-format
 msgid "Expected a write-ahead log switchpoint location."
 msgstr "Se esperaba una ubicación de punto de cambio del «write-ahead log»."
 
-#: timeline.c:88
+#: timeline.c:87
 #, c-format
 msgid "invalid data in history file: %s"
 msgstr "datos no válidos en archivo de historia: %s"
 
-#: timeline.c:89
+#: timeline.c:88
 #, c-format
 msgid "Timeline IDs must be in increasing sequence."
 msgstr "IDs de timeline deben ser una secuencia creciente."
 
-#: timeline.c:109
+#: timeline.c:108
 #, c-format
 msgid "invalid data in history file"
 msgstr "datos no válidos en archivo de historia"
 
-#: timeline.c:110
+#: timeline.c:109
 #, c-format
 msgid "Timeline IDs must be less than child timeline's ID."
 msgstr "IDs de timeline deben ser menores que el ID de timeline del hijo."
 
-#: xlogreader.c:299
+#: xlogreader.c:347
 #, c-format
 msgid "invalid record offset at %X/%X"
 msgstr "posición de registro no válida en %X/%X"
 
-#: xlogreader.c:307
+#: xlogreader.c:355
 #, c-format
 msgid "contrecord is requested by %X/%X"
 msgstr "contrecord solicitado por %X/%X"
 
-#: xlogreader.c:348 xlogreader.c:645
+#: xlogreader.c:396 xlogreader.c:693
 #, c-format
 msgid "invalid record length at %X/%X: wanted %u, got %u"
 msgstr "largo de registro no válido en %X/%X: se esperaba %u, se obtuvo %u"
 
-#: xlogreader.c:372
+#: xlogreader.c:420
 #, c-format
 msgid "record length %u at %X/%X too long"
 msgstr "largo de registro %u en %X/%X demasiado largo"
 
-#: xlogreader.c:404
+#: xlogreader.c:452
 #, c-format
 msgid "there is no contrecord flag at %X/%X"
 msgstr "no hay bandera de contrecord en %X/%X"
 
-#: xlogreader.c:417
+#: xlogreader.c:465
 #, c-format
 msgid "invalid contrecord length %u at %X/%X"
 msgstr "largo de contrecord %u no válido en %X/%X"
 
-#: xlogreader.c:653
+#: xlogreader.c:701
 #, c-format
 msgid "invalid resource manager ID %u at %X/%X"
 msgstr "ID de gestor de recursos %u no válido en %X/%X"
 
-#: xlogreader.c:667 xlogreader.c:684
+#: xlogreader.c:715 xlogreader.c:732
 #, c-format
 msgid "record with incorrect prev-link %X/%X at %X/%X"
 msgstr "registro con prev-link %X/%X incorrecto en %X/%X"
 
-#: xlogreader.c:721
+#: xlogreader.c:769
 #, c-format
 msgid "incorrect resource manager data checksum in record at %X/%X"
 msgstr "suma de verificación de los datos del gestor de recursos incorrecta en el registro en %X/%X"
 
-#: xlogreader.c:758
+#: xlogreader.c:806
 #, c-format
 msgid "invalid magic number %04X in log segment %s, offset %u"
 msgstr "número mágico %04X no válido en archivo %s, posición %u"
 
-#: xlogreader.c:772 xlogreader.c:823
+#: xlogreader.c:820 xlogreader.c:861
 #, c-format
 msgid "invalid info bits %04X in log segment %s, offset %u"
 msgstr "info bits %04X no válidos en archivo %s, posición %u"
 
-#: xlogreader.c:798
-#, c-format
-msgid "WAL file is from different database system: WAL file database system identifier is %s, pg_control database system identifier is %s"
+#: xlogreader.c:835
+#, fuzzy, c-format
+#| msgid "WAL file is from different database system: WAL file database system identifier is %s, pg_control database system identifier is %s"
+msgid "WAL file is from different database system: WAL file database system identifier is %llu, pg_control database system identifier is %llu"
 msgstr "archivo WAL es de un sistema de bases de datos distinto: identificador de sistema en archivo WAL es %s, identificador en pg_control es %s"
 
-#: xlogreader.c:805
+#: xlogreader.c:843
 #, c-format
 msgid "WAL file is from different database system: incorrect segment size in page header"
 msgstr "archivo WAL es de un sistema de bases de datos distinto: tamaño de segmento incorrecto en cabecera de paǵina"
 
-#: xlogreader.c:811
+#: xlogreader.c:849
 #, c-format
 msgid "WAL file is from different database system: incorrect XLOG_BLCKSZ in page header"
 msgstr "archivo WAL es de un sistema de bases de datos distinto: XLOG_BLCKSZ incorrecto en cabecera de paǵina"
 
-#: xlogreader.c:842
+#: xlogreader.c:880
 #, c-format
 msgid "unexpected pageaddr %X/%X in log segment %s, offset %u"
 msgstr "pageaddr %X/%X inesperado en archivo %s, posición %u"
 
-#: xlogreader.c:867
+#: xlogreader.c:905
 #, c-format
 msgid "out-of-sequence timeline ID %u (after %u) in log segment %s, offset %u"
 msgstr "ID de timeline %u fuera de secuencia (después de %u) en archivo %s, posición %u"
 
-#: xlogreader.c:1112
+#: xlogreader.c:1245
 #, c-format
 msgid "out-of-order block_id %u at %X/%X"
 msgstr "block_id %u fuera de orden en %X/%X"
 
-#: xlogreader.c:1135
+#: xlogreader.c:1268
 #, c-format
 msgid "BKPBLOCK_HAS_DATA set, but no data included at %X/%X"
 msgstr "BKPBLOCK_HAS_DATA está definido, pero no hay datos en %X/%X"
 
-#: xlogreader.c:1142
+#: xlogreader.c:1275
 #, c-format
 msgid "BKPBLOCK_HAS_DATA not set, but data length is %u at %X/%X"
 msgstr "BKPBLOCK_HAS_DATA no está definido, pero el largo de los datos es %u en %X/%X"
 
-#: xlogreader.c:1178
+#: xlogreader.c:1311
 #, c-format
 msgid "BKPIMAGE_HAS_HOLE set, but hole offset %u length %u block image length %u at %X/%X"
 msgstr "BKPIMAGE_HAS_HOLE está definido, pero posición del agujero es %u largo %u largo de imagen %u en %X/%X"
 
-#: xlogreader.c:1194
+#: xlogreader.c:1327
 #, c-format
 msgid "BKPIMAGE_HAS_HOLE not set, but hole offset %u length %u at %X/%X"
 msgstr "BKPIMAGE_HAS_HOLE no está definido, pero posición del agujero es %u largo %u en %X/%X"
 
-#: xlogreader.c:1209
+#: xlogreader.c:1342
 #, c-format
 msgid "BKPIMAGE_IS_COMPRESSED set, but block image length %u at %X/%X"
 msgstr "BKPIMAGE_IS_COMPRESSED definido, pero largo de imagen de bloque es %u en %X/%X"
 
-#: xlogreader.c:1224
+#: xlogreader.c:1357
 #, c-format
 msgid "neither BKPIMAGE_HAS_HOLE nor BKPIMAGE_IS_COMPRESSED set, but block image length is %u at %X/%X"
 msgstr "ni BKPIMAGE_HAS_HOLE ni BKPIMAGE_IS_COMPRESSED está definido, pero largo de imagen de bloque es %u en %X/%X"
 
-#: xlogreader.c:1240
+#: xlogreader.c:1373
 #, c-format
 msgid "BKPBLOCK_SAME_REL set but no previous rel at %X/%X"
 msgstr "BKPBLOCK_SAME_REL está definido, pero no hay «rel» anterior en %X/%X "
 
-#: xlogreader.c:1252
+#: xlogreader.c:1385
 #, c-format
 msgid "invalid block_id %u at %X/%X"
 msgstr "block_id %u no válido en %X/%X"
 
-#: xlogreader.c:1341
+#: xlogreader.c:1474
 #, c-format
 msgid "record with invalid length at %X/%X"
 msgstr "registro con largo no válido en %X/%X"
 
-#: xlogreader.c:1430
+#: xlogreader.c:1563
 #, c-format
 msgid "invalid compressed image at %X/%X, block %d"
 msgstr "imagen comprimida no válida en %X/%X, bloque %d"
 
-#~ msgid "could not create temporary table: %s"
-#~ msgstr "no se pudo crear tabla temporal: %s"
+#~ msgid "cannot create restricted tokens on this platform"
+#~ msgstr "no se pueden crear tokens restrigidos en esta plataforma"
 
-#~ msgid "could not set up connection context: %s"
-#~ msgstr "no se pudo establecer el contexto de conexión: %s"
+#~ msgid ""
+#~ "\n"
+#~ "Report bugs to <pgsql-bugs@lists.postgresql.org>.\n"
+#~ msgstr ""
+#~ "\n"
+#~ "Reporte errores a <pgsql-bugs@lists.postgresql.org>.\n"
diff --git a/src/bin/pg_test_fsync/po/es.po b/src/bin/pg_test_fsync/po/es.po
index 8b398cc4177..2fbe9c21515 100644
--- a/src/bin/pg_test_fsync/po/es.po
+++ b/src/bin/pg_test_fsync/po/es.po
@@ -9,7 +9,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: pg_test_fsync (PostgreSQL) 10\n"
 "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n"
-"POT-Creation-Date: 2019-09-29 23:45+0000\n"
+"POT-Creation-Date: 2020-05-17 02:47+0000\n"
 "PO-Revision-Date: 2019-06-06 17:25-0400\n"
 "Last-Translator: Carlos Chapi <carloswaldo@babelruins.org>\n"
 "Language-Team: PgSQL-es-Ayuda <pgsql-es-ayuda@lists.postgresql.org>\n"
@@ -21,57 +21,57 @@ msgstr ""
 "X-Generator: BlackCAT 1.0\n"
 
 #. translator: maintain alignment with NA_FORMAT
-#: pg_test_fsync.c:31
+#: pg_test_fsync.c:30
 #, c-format
 msgid "%13.3f ops/sec  %6.0f usecs/op\n"
 msgstr "%13.3f ops/seg  %6.0f usegs/op\n"
 
-#: pg_test_fsync.c:157
+#: pg_test_fsync.c:156
 #, c-format
 msgid "Usage: %s [-f FILENAME] [-s SECS-PER-TEST]\n"
 msgstr "Empleo: %s [-f ARCHIVO] [-s SEG-POR-PRUEBA]\n"
 
-#: pg_test_fsync.c:181 pg_test_fsync.c:192
+#: pg_test_fsync.c:180 pg_test_fsync.c:191
 #, c-format
 msgid "Try \"%s --help\" for more information.\n"
 msgstr "Pruebe «%s --help» para mayor información.\n"
 
-#: pg_test_fsync.c:197
+#: pg_test_fsync.c:196
 #, c-format
 msgid "%d second per test\n"
 msgid_plural "%d seconds per test\n"
 msgstr[0] "%d segundo por prueba\n"
 msgstr[1] "%d segundos por prueba\n"
 
-#: pg_test_fsync.c:202
+#: pg_test_fsync.c:201
 #, c-format
 msgid "O_DIRECT supported on this platform for open_datasync and open_sync.\n"
 msgstr "O_DIRECT tiene soporte en esta plataforma para open_datasync y open_sync.\n"
 
-#: pg_test_fsync.c:204
+#: pg_test_fsync.c:203
 #, c-format
 msgid "Direct I/O is not supported on this platform.\n"
 msgstr "Direct I/O no está soportado en esta plataforma.\n"
 
-#: pg_test_fsync.c:229 pg_test_fsync.c:294 pg_test_fsync.c:318
-#: pg_test_fsync.c:341 pg_test_fsync.c:482 pg_test_fsync.c:494
-#: pg_test_fsync.c:510 pg_test_fsync.c:516 pg_test_fsync.c:541
+#: pg_test_fsync.c:228 pg_test_fsync.c:293 pg_test_fsync.c:317
+#: pg_test_fsync.c:340 pg_test_fsync.c:481 pg_test_fsync.c:493
+#: pg_test_fsync.c:509 pg_test_fsync.c:515 pg_test_fsync.c:540
 msgid "could not open output file"
 msgstr "no se pudo abrir el archivo de salida"
 
-#: pg_test_fsync.c:233 pg_test_fsync.c:275 pg_test_fsync.c:300
-#: pg_test_fsync.c:324 pg_test_fsync.c:347 pg_test_fsync.c:385
-#: pg_test_fsync.c:443 pg_test_fsync.c:484 pg_test_fsync.c:512
-#: pg_test_fsync.c:543
+#: pg_test_fsync.c:232 pg_test_fsync.c:274 pg_test_fsync.c:299
+#: pg_test_fsync.c:323 pg_test_fsync.c:346 pg_test_fsync.c:384
+#: pg_test_fsync.c:442 pg_test_fsync.c:483 pg_test_fsync.c:511
+#: pg_test_fsync.c:542
 msgid "write failed"
 msgstr "escritura falló"
 
-#: pg_test_fsync.c:237 pg_test_fsync.c:326 pg_test_fsync.c:349
-#: pg_test_fsync.c:486 pg_test_fsync.c:518
+#: pg_test_fsync.c:236 pg_test_fsync.c:325 pg_test_fsync.c:348
+#: pg_test_fsync.c:485 pg_test_fsync.c:517
 msgid "fsync failed"
 msgstr "fsync falló"
 
-#: pg_test_fsync.c:251
+#: pg_test_fsync.c:250
 #, c-format
 msgid ""
 "\n"
@@ -80,7 +80,7 @@ msgstr ""
 "\n"
 "Comparar métodos de sincronización de archivos usando una escritura de %dkB:\n"
 
-#: pg_test_fsync.c:253
+#: pg_test_fsync.c:252
 #, c-format
 msgid ""
 "\n"
@@ -89,26 +89,26 @@ msgstr ""
 "\n"
 "Comparar métodos de sincronización de archivos usando dos escrituras de %dkB:\n"
 
-#: pg_test_fsync.c:254
+#: pg_test_fsync.c:253
 #, c-format
 msgid "(in wal_sync_method preference order, except fdatasync is Linux's default)\n"
 msgstr "(en orden de preferencia de wal_sync_method, excepto en Linux donde fdatasync es el predeterminado)\n"
 
-#: pg_test_fsync.c:265 pg_test_fsync.c:368 pg_test_fsync.c:434
+#: pg_test_fsync.c:264 pg_test_fsync.c:367 pg_test_fsync.c:433
 msgid "n/a*"
 msgstr "n/a*"
 
-#: pg_test_fsync.c:277 pg_test_fsync.c:303 pg_test_fsync.c:328
-#: pg_test_fsync.c:351 pg_test_fsync.c:387 pg_test_fsync.c:445
+#: pg_test_fsync.c:276 pg_test_fsync.c:302 pg_test_fsync.c:327
+#: pg_test_fsync.c:350 pg_test_fsync.c:386 pg_test_fsync.c:444
 msgid "seek failed"
 msgstr "búsqueda falló"
 
-#: pg_test_fsync.c:283 pg_test_fsync.c:308 pg_test_fsync.c:356
-#: pg_test_fsync.c:393 pg_test_fsync.c:451
+#: pg_test_fsync.c:282 pg_test_fsync.c:307 pg_test_fsync.c:355
+#: pg_test_fsync.c:392 pg_test_fsync.c:450
 msgid "n/a"
 msgstr "n/a"
 
-#: pg_test_fsync.c:398
+#: pg_test_fsync.c:397
 #, c-format
 msgid ""
 "* This file system and its mount options do not support direct\n"
@@ -117,7 +117,7 @@ msgstr ""
 "* Este sistema de archivos con sus opciones de montaje no soportan\n"
 "  Direct I/O, e.g. ext4 en modo journal.\n"
 
-#: pg_test_fsync.c:406
+#: pg_test_fsync.c:405
 #, c-format
 msgid ""
 "\n"
@@ -126,7 +126,7 @@ msgstr ""
 "\n"
 "Comparar open_sync con diferentes tamaños de escritura:\n"
 
-#: pg_test_fsync.c:407
+#: pg_test_fsync.c:406
 #, c-format
 msgid ""
 "(This is designed to compare the cost of writing 16kB in different write\n"
@@ -135,27 +135,27 @@ msgstr ""
 "(Esto está diseñado para comparar el costo de escribir 16kB en diferentes\n"
 "tamaños de escrituras open_sync.)\n"
 
-#: pg_test_fsync.c:410
+#: pg_test_fsync.c:409
 msgid " 1 * 16kB open_sync write"
 msgstr " 1 * 16kB escritura open_sync"
 
-#: pg_test_fsync.c:411
+#: pg_test_fsync.c:410
 msgid " 2 *  8kB open_sync writes"
 msgstr " 2 *  8kB escrituras open_sync"
 
-#: pg_test_fsync.c:412
+#: pg_test_fsync.c:411
 msgid " 4 *  4kB open_sync writes"
 msgstr " 4 *  4kB escrituras open_sync"
 
-#: pg_test_fsync.c:413
+#: pg_test_fsync.c:412
 msgid " 8 *  2kB open_sync writes"
 msgstr " 8 *  2kB escrituras open_sync"
 
-#: pg_test_fsync.c:414
+#: pg_test_fsync.c:413
 msgid "16 *  1kB open_sync writes"
 msgstr "16 *  1kB escrituras open_sync"
 
-#: pg_test_fsync.c:467
+#: pg_test_fsync.c:466
 #, c-format
 msgid ""
 "\n"
@@ -164,7 +164,7 @@ msgstr ""
 "\n"
 "Probar si se respeta fsync en un descriptor de archivo que no es de escritura:\n"
 
-#: pg_test_fsync.c:468
+#: pg_test_fsync.c:467
 #, c-format
 msgid ""
 "(If the times are similar, fsync() can sync data written on a different\n"
@@ -173,7 +173,7 @@ msgstr ""
 "(Si los tiempos son similares, fsync() puede sincronizar datos escritos\n"
 "en un descriptor diferente.)\n"
 
-#: pg_test_fsync.c:533
+#: pg_test_fsync.c:532
 #, c-format
 msgid ""
 "\n"
diff --git a/src/bin/pg_test_timing/po/es.po b/src/bin/pg_test_timing/po/es.po
index e8572cd6815..cd68ab1492d 100644
--- a/src/bin/pg_test_timing/po/es.po
+++ b/src/bin/pg_test_timing/po/es.po
@@ -9,7 +9,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: pg_test_timing (PostgreSQL) 12\n"
 "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n"
-"POT-Creation-Date: 2019-09-29 23:44+0000\n"
+"POT-Creation-Date: 2020-05-17 02:45+0000\n"
 "PO-Revision-Date: 2019-06-06 17:25-0400\n"
 "Last-Translator: Carlos Chapi <carloswaldo@babelruins.org>\n"
 "Language-Team: PgSQL-es-Ayuda <pgsql-es-ayuda@lists.postgresql.org>\n"
diff --git a/src/bin/pg_upgrade/po/es.po b/src/bin/pg_upgrade/po/es.po
index 4aa59763212..271759801fc 100644
--- a/src/bin/pg_upgrade/po/es.po
+++ b/src/bin/pg_upgrade/po/es.po
@@ -9,7 +9,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: pg_upgrade (PostgreSQL) 12\n"
 "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n"
-"POT-Creation-Date: 2019-09-29 23:43+0000\n"
+"POT-Creation-Date: 2020-05-17 02:45+0000\n"
 "PO-Revision-Date: 2019-09-29 22:26-0300\n"
 "Last-Translator: Álvaro Herrera <alvherre@alvh.no-ip.org>\n"
 "Language-Team: PgSQL-es-Ayuda <pgsql-es-ayuda@lists.postgresql.org>\n"
@@ -18,7 +18,7 @@ msgstr ""
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 
-#: check.c:67
+#: check.c:66
 #, c-format
 msgid ""
 "Performing Consistency Checks on Old Live Server\n"
@@ -27,7 +27,7 @@ msgstr ""
 "Verificando Consistencia en Vivo en el Servidor Antiguo\n"
 "-------------------------------------------------------\n"
 
-#: check.c:73
+#: check.c:72
 #, c-format
 msgid ""
 "Performing Consistency Checks\n"
@@ -36,7 +36,7 @@ msgstr ""
 "Verificando Consistencia\n"
 "------------------------\n"
 
-#: check.c:183
+#: check.c:190
 #, c-format
 msgid ""
 "\n"
@@ -45,7 +45,7 @@ msgstr ""
 "\n"
 "*Los clústers son compatibles*\n"
 
-#: check.c:189
+#: check.c:196
 #, c-format
 msgid ""
 "\n"
@@ -56,7 +56,7 @@ msgstr ""
 "Si pg_upgrade falla a partir de este punto, deberá re-ejecutar initdb\n"
 "en el clúster nuevo antes de continuar.\n"
 
-#: check.c:225
+#: check.c:232
 #, c-format
 msgid ""
 "Optimizer statistics are not transferred by pg_upgrade so,\n"
@@ -69,7 +69,7 @@ msgstr ""
 "    %s\n"
 "\n"
 
-#: check.c:230
+#: check.c:237
 #, c-format
 msgid ""
 "Optimizer statistics and free space information are not transferred\n"
@@ -83,7 +83,7 @@ msgstr ""
 "    %s\n"
 "\n"
 
-#: check.c:237
+#: check.c:244
 #, c-format
 msgid ""
 "Running this script will delete the old cluster's data files:\n"
@@ -92,7 +92,7 @@ msgstr ""
 "Ejecutando este script se borrarán los archivos de datos del servidor antiguo:\n"
 "    %s\n"
 
-#: check.c:242
+#: check.c:249
 #, c-format
 msgid ""
 "Could not create a script to delete the old cluster's data files\n"
@@ -105,88 +105,88 @@ msgstr ""
 "o el directorio de datos del servidor nuevo.  El contenido del servidor\n"
 "antiguo debe ser borrado manualmente.\n"
 
-#: check.c:252
+#: check.c:259
 #, c-format
 msgid "Checking cluster versions"
 msgstr "Verificando las versiones de los clústers"
 
-#: check.c:264
+#: check.c:271
 #, c-format
 msgid "This utility can only upgrade from PostgreSQL version 8.4 and later.\n"
 msgstr "Este programa sólo puede actualizar desde PostgreSQL versión 8.4 y posterior.\n"
 
-#: check.c:268
+#: check.c:275
 #, c-format
 msgid "This utility can only upgrade to PostgreSQL version %s.\n"
 msgstr "Este programa sólo puede actualizar a PostgreSQL versión %s.\n"
 
-#: check.c:277
+#: check.c:284
 #, c-format
 msgid "This utility cannot be used to downgrade to older major PostgreSQL versions.\n"
 msgstr "Este programa no puede usarse para volver a versiones anteriores de PostgreSQL.\n"
 
-#: check.c:282
+#: check.c:289
 #, c-format
 msgid "Old cluster data and binary directories are from different major versions.\n"
 msgstr ""
 "El directorio de datos antiguo y el directorio de binarios antiguo son de\n"
 "versiones diferentes.\n"
 
-#: check.c:285
+#: check.c:292
 #, c-format
 msgid "New cluster data and binary directories are from different major versions.\n"
 msgstr ""
 "El directorio de datos nuevo y el directorio de binarios nuevo son de\n"
 "versiones diferentes.\n"
 
-#: check.c:302
+#: check.c:309
 #, c-format
 msgid "When checking a pre-PG 9.1 live old server, you must specify the old server's port number.\n"
 msgstr "Al verificar un servidor antiguo anterior a 9.1, debe especificar el port de éste.\n"
 
-#: check.c:306
+#: check.c:313
 #, c-format
 msgid "When checking a live server, the old and new port numbers must be different.\n"
 msgstr "Al verificar servidores en caliente, los números de port antiguo y nuevo deben ser diferentes.\n"
 
-#: check.c:321
+#: check.c:328
 #, c-format
 msgid "encodings for database \"%s\" do not match:  old \"%s\", new \"%s\"\n"
 msgstr "las codificaciones de la base de datos «%s» no coinciden: antigua «%s», nueva «%s»\n"
 
-#: check.c:326
+#: check.c:333
 #, c-format
 msgid "lc_collate values for database \"%s\" do not match:  old \"%s\", new \"%s\"\n"
 msgstr "valores lc_collate de la base de datos «%s» no coinciden: antigua «%s», nueva «%s»\n"
 
-#: check.c:329
+#: check.c:336
 #, c-format
 msgid "lc_ctype values for database \"%s\" do not match:  old \"%s\", new \"%s\"\n"
 msgstr "valores lc_ctype de la base de datos «%s» no coinciden: antigua «%s», nueva «%s»\n"
 
-#: check.c:402
+#: check.c:409
 #, c-format
 msgid "New cluster database \"%s\" is not empty: found relation \"%s.%s\"\n"
 msgstr "La base de datos «%s» del clúster nuevo no está vacía: se encontró la relación «%s.%s»\n"
 
-#: check.c:451
+#: check.c:458
 #, c-format
 msgid "Creating script to analyze new cluster"
 msgstr "Creando un script para analizar el clúster nuevo"
 
-#: check.c:465 check.c:593 check.c:857 check.c:936 check.c:1045 check.c:1136
-#: file.c:341 function.c:246 option.c:495 version.c:57 version.c:156
-#: version.c:257 version.c:339
+#: check.c:472 check.c:600 check.c:864 check.c:943 check.c:1053 check.c:1144
+#: file.c:336 function.c:240 option.c:497 version.c:54 version.c:199
+#: version.c:341
 #, c-format
 msgid "could not open file \"%s\": %s\n"
 msgstr "no se pudo abrir el archivo «%s»: %s\n"
 
-#: check.c:520 check.c:649
+#: check.c:527 check.c:656
 #, c-format
 msgid "could not add execute permission to file \"%s\": %s\n"
 msgstr "no se pudo agregar permisos de ejecución al archivo «%s»: %s\n"
 
-#: check.c:556
+#: check.c:563
 #, c-format
 msgid ""
 "\n"
@@ -196,7 +196,7 @@ msgstr ""
 "ADVERTENCIA: el directorio de datos nuevo no debería estar dentro del directorio antiguo,\n"
 "por ej. %s\n"
 
-#: check.c:580
+#: check.c:587
 #, c-format
 msgid ""
 "\n"
@@ -207,81 +207,90 @@ msgstr ""
 "no deberían estar dentro del directorio de datos,\n"
 "por ej. %s\n"
 
-#: check.c:590
+#: check.c:597
 #, c-format
 msgid "Creating script to delete old cluster"
 msgstr "Creando un script para borrar el clúster antiguo"
 
-#: check.c:669
+#: check.c:676
 #, c-format
 msgid "Checking database user is the install user"
 msgstr "Verificando que el usuario de base de datos es el usuario de instalación"
 
-#: check.c:685
+#: check.c:692
 #, c-format
 msgid "database user \"%s\" is not the install user\n"
 msgstr "el usuario de base de datos «%s» no es el usuario de instalación\n"
 
-#: check.c:696
+#: check.c:703
 #, c-format
 msgid "could not determine the number of users\n"
 msgstr "no se pudo determinar el número de usuarios\n"
 
-#: check.c:704
+#: check.c:711
 #, c-format
 msgid "Only the install user can be defined in the new cluster.\n"
 msgstr "Sólo el usuario de instalación puede estar definido en el nuevo clúster.\n"
 
-#: check.c:724
+#: check.c:731
 #, c-format
 msgid "Checking database connection settings"
 msgstr "Verificando los parámetros de conexión de bases de datos"
 
-#: check.c:746
+#: check.c:753
 #, c-format
 msgid "template0 must not allow connections, i.e. its pg_database.datallowconn must be false\n"
 msgstr "template0 no debe permitir conexiones, es decir su pg_database.datallowconn debe ser «false»\n"
 
-#: check.c:756
+#: check.c:763
 #, c-format
 msgid "All non-template0 databases must allow connections, i.e. their pg_database.datallowconn must be true\n"
 msgstr "Todas las bases de datos no-template0 deben permitir conexiones, es decir su pg_database.datallowconn debe ser «true»\n"
 
-#: check.c:781
+#: check.c:788
 #, c-format
 msgid "Checking for prepared transactions"
 msgstr "Verificando transacciones preparadas"
 
-#: check.c:790
+#: check.c:797
 #, c-format
 msgid "The source cluster contains prepared transactions\n"
 msgstr "El clúster de origen contiene transacciones preparadas\n"
 
-#: check.c:792
+#: check.c:799
 #, c-format
 msgid "The target cluster contains prepared transactions\n"
 msgstr "El clúster de destino contiene transacciones preparadas\n"
 
-#: check.c:818
+#: check.c:825
 #, c-format
 msgid "Checking for contrib/isn with bigint-passing mismatch"
 msgstr "Verificando contrib/isn con discordancia en mecanismo de paso de bigint"
 
-#: check.c:879 check.c:958 check.c:1068 check.c:1159 function.c:268
-#: version.c:179 version.c:280
+#: check.c:886 check.c:965 check.c:1076 check.c:1167 function.c:262
+#: version.c:245 version.c:282 version.c:425
 #, c-format
 msgid "fatal\n"
 msgstr "fatal\n"
 
-#: check.c:880
-#, c-format
+#: check.c:887
+#, fuzzy, c-format
+#| msgid ""
+#| "Your installation contains \"contrib/isn\" functions which rely on the\n"
+#| "bigint data type.  Your old and new clusters pass bigint values\n"
+#| "differently so this cluster cannot currently be upgraded.  You can\n"
+#| "manually upgrade databases that use \"contrib/isn\" facilities and remove\n"
+#| "\"contrib/isn\" from the old cluster and restart the upgrade.  A list of\n"
+#| "the problem functions is in the file:\n"
+#| "    %s\n"
+#| "\n"
 msgid ""
 "Your installation contains \"contrib/isn\" functions which rely on the\n"
 "bigint data type.  Your old and new clusters pass bigint values\n"
 "differently so this cluster cannot currently be upgraded.  You can\n"
-"manually upgrade databases that use \"contrib/isn\" facilities and remove\n"
-"\"contrib/isn\" from the old cluster and restart the upgrade.  A list of\n"
-"the problem functions is in the file:\n"
+"manually dump databases in the old cluster that use \"contrib/isn\"\n"
+"facilities, drop them, perform the upgrade, and then restore them.  A\n"
+"list of the problem functions is in the file:\n"
 "    %s\n"
 "\n"
 msgstr ""
@@ -294,16 +303,23 @@ msgstr ""
 "    %s\n"
 "\n"
 
-#: check.c:904
+#: check.c:911
 #, c-format
 msgid "Checking for tables WITH OIDS"
 msgstr "Verificando tablas WITH OIDS"
 
-#: check.c:959
-#, c-format
+#: check.c:966
+#, fuzzy, c-format
+#| msgid ""
+#| "Your installation contains tables declared WITH OIDS, which is not supported\n"
+#| "anymore. Consider removing the oid column using\n"
+#| "    ALTER TABLE ... SET WITHOUT OIDS;\n"
+#| "A list of tables with the problem is in the file:\n"
+#| "    %s\n"
+#| "\n"
 msgid ""
-"Your installation contains tables declared WITH OIDS, which is not supported\n"
-"anymore. Consider removing the oid column using\n"
+"Your installation contains tables declared WITH OIDS, which is not\n"
+"supported anymore.  Consider removing the oid column using\n"
 "    ALTER TABLE ... SET WITHOUT OIDS;\n"
 "A list of tables with the problem is in the file:\n"
 "    %s\n"
@@ -315,19 +331,27 @@ msgstr ""
 "Una lista de tablas con el problema está en el archivo:\n"
 "    %s\n"
 
-#: check.c:989
+#: check.c:996
 #, c-format
 msgid "Checking for reg* data types in user tables"
 msgstr "Verificando tipos de datos reg* en datos de usuario"
 
-#: check.c:1069
-#, c-format
+#: check.c:1077
+#, fuzzy, c-format
+#| msgid ""
+#| "Your installation contains one of the reg* data types in user tables.\n"
+#| "These data types reference system OIDs that are not preserved by\n"
+#| "pg_upgrade, so this cluster cannot currently be upgraded.  You can\n"
+#| "remove the problem tables and restart the upgrade.  A list of the problem\n"
+#| "columns is in the file:\n"
+#| "    %s\n"
+#| "\n"
 msgid ""
 "Your installation contains one of the reg* data types in user tables.\n"
 "These data types reference system OIDs that are not preserved by\n"
 "pg_upgrade, so this cluster cannot currently be upgraded.  You can\n"
-"remove the problem tables and restart the upgrade.  A list of the problem\n"
-"columns is in the file:\n"
+"remove the problem tables and restart the upgrade.  A list of the\n"
+"problem columns is in the file:\n"
 "    %s\n"
 "\n"
 msgstr ""
@@ -339,18 +363,26 @@ msgstr ""
 "    %s\n"
 "\n"
 
-#: check.c:1094
+#: check.c:1102
 #, c-format
 msgid "Checking for incompatible \"jsonb\" data type"
 msgstr "Verificando datos de usuario en tipo «jsonb» incompatible"
 
-#: check.c:1160
-#, c-format
+#: check.c:1168
+#, fuzzy, c-format
+#| msgid ""
+#| "Your installation contains the \"jsonb\" data type in user tables.\n"
+#| "The internal format of \"jsonb\" changed during 9.4 beta so this cluster cannot currently\n"
+#| "be upgraded.  You can remove the problem tables and restart the upgrade.  A list\n"
+#| "of the problem columns is in the file:\n"
+#| "    %s\n"
+#| "\n"
 msgid ""
 "Your installation contains the \"jsonb\" data type in user tables.\n"
-"The internal format of \"jsonb\" changed during 9.4 beta so this cluster cannot currently\n"
-"be upgraded.  You can remove the problem tables and restart the upgrade.  A list\n"
-"of the problem columns is in the file:\n"
+"The internal format of \"jsonb\" changed during 9.4 beta so this\n"
+"cluster cannot currently be upgraded.  You can remove the problem\n"
+"tables and restart the upgrade.  A list of the problem columns is\n"
+"in the file:\n"
 "    %s\n"
 "\n"
 msgstr ""
@@ -362,32 +394,32 @@ msgstr ""
 "    %s\n"
 "\n"
 
-#: check.c:1181
+#: check.c:1190
 #, c-format
 msgid "Checking for roles starting with \"pg_\""
 msgstr "Verificando roles que empiecen con «pg_»"
 
-#: check.c:1191
+#: check.c:1200
 #, c-format
 msgid "The source cluster contains roles starting with \"pg_\"\n"
 msgstr "El clúster de origen contiene roles que empiezan con «pg_»\n"
 
-#: check.c:1193
+#: check.c:1202
 #, c-format
 msgid "The target cluster contains roles starting with \"pg_\"\n"
 msgstr "El clúster de destino contiene roles que empiezan con «pg_»\n"
 
-#: check.c:1219
+#: check.c:1228
 #, c-format
 msgid "failed to get the current locale\n"
 msgstr "no se pudo obtener el «locale» actual\n"
 
-#: check.c:1228
+#: check.c:1237
 #, c-format
 msgid "failed to get system locale name for \"%s\"\n"
 msgstr "no se pudo obtener el nombre del «locale» para «%s»\n"
 
-#: check.c:1234
+#: check.c:1243
 #, c-format
 msgid "failed to restore old locale \"%s\"\n"
 msgstr "no se pudo restaurar el locale antiguo «%s»\n"
@@ -432,8 +464,8 @@ msgstr "Al clúster de origen le falta información de estado:\n"
 msgid "The target cluster lacks cluster state information:\n"
 msgstr "Al cluster de destino le falta información de estado:\n"
 
-#: controldata.c:208 dump.c:51 pg_upgrade.c:336 pg_upgrade.c:373
-#: relfilenode.c:252 util.c:80
+#: controldata.c:208 dump.c:49 pg_upgrade.c:339 pg_upgrade.c:375
+#: relfilenode.c:247 util.c:79
 #, c-format
 msgid "%s"
 msgstr "%s"
@@ -655,12 +687,12 @@ msgstr ""
 "en forma segura después de que el clúster nuevo haya sido iniciado.\n"
 "\n"
 
-#: dump.c:22
+#: dump.c:20
 #, c-format
 msgid "Creating dump of global objects"
 msgstr "Creando el volcado de objetos globales"
 
-#: dump.c:33
+#: dump.c:31
 #, c-format
 msgid "Creating dump of database schemas\n"
 msgstr "Creando el volcado de esquemas de bases de datos\n"
@@ -680,14 +712,13 @@ msgstr "no se pudo obtener la salida de versión de pg_ctl de %s\n"
 msgid "command too long\n"
 msgstr "orden demasiado larga\n"
 
-#: exec.c:110 util.c:38 util.c:226
+#: exec.c:110 util.c:37 util.c:225
 #, c-format
 msgid "%s\n"
 msgstr "%s\n"
 
-#: exec.c:149 option.c:220
+#: exec.c:149 option.c:217
 #, c-format
-#| msgid "could not open log file \"%s\": %m"
 msgid "could not open log file \"%s\": %m\n"
 msgstr "no se pudo abrir el archivo de registro «%s»: %m\n"
 
@@ -723,9 +754,8 @@ msgstr ""
 "Consulte las últimas líneas de «%s» para saber\n"
 "la causa probable de la falla.\n"
 
-#: exec.c:204 option.c:229
+#: exec.c:204 option.c:226
 #, c-format
-#| msgid "could not write to log file \"%s\"\n"
 msgid "could not write to log file \"%s\": %m\n"
 msgstr "no se pudo escribir al archivo de log «%s»\n"
 
@@ -739,7 +769,7 @@ msgstr "no se pudo abrir el archivo «%s» para lectura: %s\n"
 msgid "You must have read and write access in the current directory.\n"
 msgstr "Debe tener privilegios de lectura y escritura en el directorio actual.\n"
 
-#: exec.c:310 exec.c:372 exec.c:427
+#: exec.c:310 exec.c:372 exec.c:436
 #, c-format
 msgid "check for \"%s\" failed: %s\n"
 msgstr "la comprobación de «%s» falló: %s\n"
@@ -749,92 +779,92 @@ msgstr "la comprobación de «%s» falló: %s\n"
 msgid "\"%s\" is not a directory\n"
 msgstr "«%s» no es un directorio\n"
 
-#: exec.c:430
+#: exec.c:439
 #, c-format
 msgid "check for \"%s\" failed: not a regular file\n"
 msgstr "La comprobación de «%s» falló: no es un archivo regular\n"
 
-#: exec.c:442
+#: exec.c:451
 #, c-format
 msgid "check for \"%s\" failed: cannot read file (permission denied)\n"
 msgstr "La comprobación de «%s» falló: no se puede leer el archivo (permiso denegado)\n"
 
-#: exec.c:450
+#: exec.c:459
 #, c-format
 msgid "check for \"%s\" failed: cannot execute (permission denied)\n"
 msgstr "La comprobación de «%s» falló: no se puede ejecutar (permiso denegado)\n"
 
-#: file.c:48 file.c:66
+#: file.c:43 file.c:61
 #, c-format
 msgid "error while cloning relation \"%s.%s\" (\"%s\" to \"%s\"): %s\n"
 msgstr "error mientras se clonaba la relación «%s.%s» («%s» a «%s»): %s\n"
 
-#: file.c:55
+#: file.c:50
 #, c-format
 msgid "error while cloning relation \"%s.%s\": could not open file \"%s\": %s\n"
 msgstr "error mientras se clonaba la relación «%s.%s»: no se pudo abrir el archivo «%s»: %s\n"
 
-#: file.c:60
+#: file.c:55
 #, c-format
 msgid "error while cloning relation \"%s.%s\": could not create file \"%s\": %s\n"
 msgstr "error mientras se clonaba la relación «%s.%s»: no se pudo crear el archivo «%s»: %s\n"
 
-#: file.c:92 file.c:195
+#: file.c:87 file.c:190
 #, c-format
 msgid "error while copying relation \"%s.%s\": could not open file \"%s\": %s\n"
 msgstr "error mientras se copiaba la relación «%s.%s»: no se pudo leer el archivo «%s»: %s\n"
 
-#: file.c:97 file.c:204
+#: file.c:92 file.c:199
 #, c-format
 msgid "error while copying relation \"%s.%s\": could not create file \"%s\": %s\n"
 msgstr "error mientras se copiaba la relación «%s.%s»: no se pudo crear el archivo «%s»: %s\n"
 
-#: file.c:111 file.c:228
+#: file.c:106 file.c:223
 #, c-format
 msgid "error while copying relation \"%s.%s\": could not read file \"%s\": %s\n"
 msgstr "error mientras se copiaba la relación «%s.%s»: no se pudo leer el archivo «%s»: %s\n"
 
-#: file.c:123 file.c:306
+#: file.c:118 file.c:301
 #, c-format
 msgid "error while copying relation \"%s.%s\": could not write file \"%s\": %s\n"
 msgstr "error mientras se copiaba la relación «%s.%s»: no se pudo escribir el archivo «%s»: %s\n"
 
-#: file.c:137
+#: file.c:132
 #, c-format
 msgid "error while copying relation \"%s.%s\" (\"%s\" to \"%s\"): %s\n"
 msgstr "error mientras se copiaba la relación «%s.%s» («%s» a «%s»): %s\n"
 
-#: file.c:156
+#: file.c:151
 #, c-format
 msgid "error while creating link for relation \"%s.%s\" (\"%s\" to \"%s\"): %s\n"
 msgstr "error mientras se creaba el link para la relación «%s.%s» («%s» a «%s»): %s\n"
 
-#: file.c:199
+#: file.c:194
 #, c-format
 msgid "error while copying relation \"%s.%s\": could not stat file \"%s\": %s\n"
 msgstr "error mientras se copiaba la relación «%s.%s»: no se pudo hacer stat a «%s»: %s\n"
 
-#: file.c:231
+#: file.c:226
 #, c-format
 msgid "error while copying relation \"%s.%s\": partial page found in file \"%s\"\n"
 msgstr "error mientras se copiaba la relación «%s.%s»: se encontró una página parcial en el archivo «%s»\n"
 
-#: file.c:333 file.c:350
+#: file.c:328 file.c:345
 #, c-format
 msgid "could not clone file between old and new data directories: %s\n"
 msgstr "no se pudo clonar el archivo entre los directorios viejo y nuevo: %s\n"
 
-#: file.c:346
+#: file.c:341
 #, c-format
 msgid "could not create file \"%s\": %s\n"
 msgstr "no se pudo crear el archivo «%s»: %s\n"
 
-#: file.c:357
+#: file.c:352
 #, c-format
 msgid "file cloning not supported on this platform\n"
 msgstr "el clonado de archivos no está soportado en esta plataforma\n"
 
-#: file.c:374
+#: file.c:369
 #, c-format
 msgid ""
 "could not create hard link between old and new data directories: %s\n"
@@ -843,7 +873,7 @@ msgstr ""
 "No se pudo crear un link duro entre los directorios de datos nuevo y antiguo: %s\n"
 "En modo link los directorios de dato nuevo y antiguo deben estar en el mismo sistema de archivos.\n"
 
-#: function.c:116
+#: function.c:114
 #, c-format
 msgid ""
 "\n"
@@ -884,32 +914,33 @@ msgstr ""
 "en cada base de datos afectada:\n"
 "\n"
 
-#: function.c:134
+#: function.c:132
 #, c-format
 msgid "    %s\n"
 msgstr "    %s\n"
 
-#: function.c:144
+#: function.c:142
 #, c-format
 msgid "Remove the problem functions from the old cluster to continue.\n"
 msgstr "Elimine las funciones problemáticas del clúster antiguo para continuar.\n"
 
-#: function.c:191
+#: function.c:189
 #, c-format
 msgid "Checking for presence of required libraries"
 msgstr "Verificando la presencia de las bibliotecas requeridas"
 
-#: function.c:248
+#: function.c:242
 #, c-format
 msgid "could not load library \"%s\": %s"
 msgstr "no se pudo cargar la biblioteca «%s»: %s"
 
-#: function.c:259 info.c:633
-#, c-format
-msgid "Database: %s\n"
+#: function.c:253
+#, fuzzy, c-format
+#| msgid "Database: %s\n"
+msgid "In database: %s\n"
 msgstr "Base de datos: %s\n"
 
-#: function.c:269
+#: function.c:263
 #, c-format
 msgid ""
 "Your installation references loadable libraries that are missing from the\n"
@@ -926,61 +957,61 @@ msgstr ""
 "    %s\n"
 "\n"
 
-#: info.c:133
+#: info.c:131
 #, c-format
 msgid "Relation names for OID %u in database \"%s\" do not match: old name \"%s.%s\", new name \"%s.%s\"\n"
 msgstr "Los nombres de relación para OID %u en la base de datos «%s» no coinciden: nombre antiguo «%s.%s», nombre nuevo «%s.%s»\n"
 
-#: info.c:153
+#: info.c:151
 #, c-format
 msgid "Failed to match up old and new tables in database \"%s\"\n"
 msgstr "No hubo coincidencia en las tablas nueva y antigua en la base de datos «%s»\n"
 
-#: info.c:242
+#: info.c:240
 #, c-format
 msgid " which is an index on \"%s.%s\""
 msgstr " que es un índice en «%s.%s»"
 
-#: info.c:252
+#: info.c:250
 #, c-format
 msgid " which is an index on OID %u"
 msgstr " que es un índice en el OID %u"
 
-#: info.c:264
+#: info.c:262
 #, c-format
 msgid " which is the TOAST table for \"%s.%s\""
 msgstr " que es la tabla TOAST para «%s.%s»"
 
-#: info.c:272
+#: info.c:270
 #, c-format
 msgid " which is the TOAST table for OID %u"
 msgstr " que es la tabla TOAST para el OID %u"
 
-#: info.c:276
+#: info.c:274
 #, c-format
 msgid "No match found in old cluster for new relation with OID %u in database \"%s\": %s\n"
 msgstr ""
 "No se encontró equivalente en el clúster antiguo para la relación con OID %u\n"
 "en la base de datos «%s» en el clúster nuevo: %s\n"
 
-#: info.c:279
+#: info.c:277
 #, c-format
 msgid "No match found in new cluster for old relation with OID %u in database \"%s\": %s\n"
 msgstr ""
 "No se encontró equivalente en el clúster nuevo para la relación con OID %u\n"
 "en la base de datos «%s» en el clúster antiguo: %s\n"
 
-#: info.c:291
+#: info.c:289
 #, c-format
 msgid "mappings for database \"%s\":\n"
 msgstr "mapeos para la base de datos «%s»:\n"
 
-#: info.c:294
+#: info.c:292
 #, c-format
 msgid "%s.%s: %u to %u\n"
 msgstr "%s.%s: %u a %u\n"
 
-#: info.c:299 info.c:635
+#: info.c:297 info.c:633
 #, c-format
 msgid ""
 "\n"
@@ -989,7 +1020,7 @@ msgstr ""
 "\n"
 "\n"
 
-#: info.c:324
+#: info.c:322
 #, c-format
 msgid ""
 "\n"
@@ -998,7 +1029,7 @@ msgstr ""
 "\n"
 "bases de datos de origen:\n"
 
-#: info.c:326
+#: info.c:324
 #, c-format
 msgid ""
 "\n"
@@ -1007,7 +1038,12 @@ msgstr ""
 "\n"
 "bases de datos de destino:\n"
 
-#: info.c:646
+#: info.c:631
+#, c-format
+msgid "Database: %s\n"
+msgstr "Base de datos: %s\n"
+
+#: info.c:644
 #, c-format
 msgid "relname: %s.%s: reloid: %u reltblspace: %s\n"
 msgstr "relname: %s.%s: reloid: %u reltblspace: %s\n"
@@ -1017,71 +1053,77 @@ msgstr "relname: %s.%s: reloid: %u reltblspace: %s\n"
 msgid "%s: cannot be run as root\n"
 msgstr "%s: no puede ejecutarse como root\n"
 
-#: option.c:171
+#: option.c:170
 #, c-format
 msgid "invalid old port number\n"
 msgstr "número de puerto antiguo no válido\n"
 
-#: option.c:179
+#: option.c:175
 #, c-format
 msgid "invalid new port number\n"
 msgstr "número de puerto nuevo no válido\n"
 
-#: option.c:213
+#: option.c:207
 #, c-format
 msgid "Try \"%s --help\" for more information.\n"
 msgstr "Pruebe «%s --help» para mayor información.\n"
 
-#: option.c:223
+#: option.c:214
+#, fuzzy, c-format
+#| msgid "too many command-line arguments (first is \"%s\")"
+msgid "too many command-line arguments (first is \"%s\")\n"
+msgstr "demasiados argumentos en la línea de órdenes (el primero es «%s»)"
+
+#: option.c:220
 #, c-format
 msgid "Running in verbose mode\n"
 msgstr "Ejecutando en modo verboso\n"
 
-#: option.c:254
+#: option.c:251
 msgid "old cluster binaries reside"
 msgstr "residen los binarios del clúster antiguo"
 
-#: option.c:256
+#: option.c:253
 msgid "new cluster binaries reside"
 msgstr "residen los binarios del clúster nuevo"
 
-#: option.c:258
+#: option.c:255
 msgid "old cluster data resides"
 msgstr "residen los datos del clúster antiguo"
 
-#: option.c:260
+#: option.c:257
 msgid "new cluster data resides"
 msgstr "residen los datos del clúster nuevo"
 
-#: option.c:262
+#: option.c:259
 msgid "sockets will be created"
 msgstr "se crearán los sockets"
 
-#: option.c:279 option.c:373
+#: option.c:276 option.c:374
 #, c-format
 msgid "could not determine current directory\n"
 msgstr "no se pudo identificar el directorio actual\n"
 
-#: option.c:282
+#: option.c:279
 #, c-format
 msgid "cannot run pg_upgrade from inside the new cluster data directory on Windows\n"
 msgstr ""
 "no se puede ejecutar pg_upgrade desde dentro del directorio de datos\n"
 "del clúster nuevo en Windows\n"
 
-#: option.c:291
+#: option.c:288
 #, c-format
 msgid ""
 "pg_upgrade upgrades a PostgreSQL cluster to a different major version.\n"
 "\n"
 msgstr "pg_upgrado actualiza un clúster PostgreSQL a una versión «mayor» diferente.\n"
 
-#: option.c:292
+#: option.c:289
 #, c-format
 msgid "Usage:\n"
 msgstr "Empleo:\n"
 
-#: option.c:293
+#: option.c:290
 #, c-format
 msgid ""
 "  pg_upgrade [OPTION]...\n"
@@ -1090,103 +1132,106 @@ msgstr ""
 "  pg_upgrade [OPCIÓN]...\n"
 "\n"
 
-#: option.c:294
+#: option.c:291
 #, c-format
 msgid "Options:\n"
 msgstr "Opciones:\n"
 
-#: option.c:295
+#: option.c:292
 #, c-format
 msgid "  -b, --old-bindir=BINDIR       old cluster executable directory\n"
 msgstr "  -b, --old-bindir=BINDIR       directorio de ejecutables del clúster antiguo\n"
 
-#: option.c:296
-#, c-format
-msgid "  -B, --new-bindir=BINDIR       new cluster executable directory\n"
+#: option.c:293
+#, fuzzy, c-format
+#| msgid "  -B, --new-bindir=BINDIR       new cluster executable directory\n"
+msgid ""
+"  -B, --new-bindir=BINDIR       new cluster executable directory (default\n"
+"                                same directory as pg_upgrade)\n"
 msgstr "  -B, --new-bindir=BINDIR       directorio de ejecutables del clúster nuevo\n"
 
-#: option.c:297
+#: option.c:295
 #, c-format
 msgid "  -c, --check                   check clusters only, don't change any data\n"
 msgstr "  -c, --check                   sólo verificar clústers, no cambiar datos\n"
 
-#: option.c:298
+#: option.c:296
 #, c-format
 msgid "  -d, --old-datadir=DATADIR     old cluster data directory\n"
 msgstr "  -d, --old-datadir=DATADIR     directorio de datos del clúster antiguo\n"
 
-#: option.c:299
+#: option.c:297
 #, c-format
 msgid "  -D, --new-datadir=DATADIR     new cluster data directory\n"
 msgstr "  -D, --new-datadir=DATADIR     directorio de datos del clúster nuevo\n"
 
-#: option.c:300
-#, c-format
-msgid "  -j, --jobs                    number of simultaneous processes or threads to use\n"
+#: option.c:298
+#, fuzzy, c-format
+#| msgid "  -j, --jobs                    number of simultaneous processes or threads to use\n"
+msgid "  -j, --jobs=NUM                number of simultaneous processes or threads to use\n"
 msgstr "  -j, --jobs                    número de procesos o hilos simultáneos a usar\n"
 
-#: option.c:301
+#: option.c:299
 #, c-format
 msgid "  -k, --link                    link instead of copying files to new cluster\n"
 msgstr "  -k, --link                    enlazar (link) archivos en vez de copiarlos\n"
 
-#: option.c:302
+#: option.c:300
 #, c-format
 msgid "  -o, --old-options=OPTIONS     old cluster options to pass to the server\n"
 msgstr "  -o, --old-options=OPCIONES    opciones a pasar al servidor antiguo\n"
 
-#: option.c:303
+#: option.c:301
 #, c-format
 msgid "  -O, --new-options=OPTIONS     new cluster options to pass to the server\n"
 msgstr "  -O, --new-options=OPCIONES    opciones a pasar al servidor nuevo\n"
 
-#: option.c:304
+#: option.c:302
 #, c-format
 msgid "  -p, --old-port=PORT           old cluster port number (default %d)\n"
 msgstr "  -p, --old-port=PUERTO         número de puerto del clúster antiguo (def. %d)\n"
 
-#: option.c:305
+#: option.c:303
 #, c-format
 msgid "  -P, --new-port=PORT           new cluster port number (default %d)\n"
 msgstr "  -P, --new-port=PUERTO         número de puerto del clúster nuevo (def. %d)\n"
 
-#: option.c:306
+#: option.c:304
 #, c-format
 msgid "  -r, --retain                  retain SQL and log files after success\n"
 msgstr "  -r, --retain                  preservar archivos SQL y logs en caso de éxito\n"
 
-#: option.c:307
+#: option.c:305
 #, c-format
-#| msgid "  -s, --socketdir=DIR           socket directory to use (default CWD)\n"
 msgid "  -s, --socketdir=DIR           socket directory to use (default current dir.)\n"
 msgstr "  -s, --socketdir=DIR           directorio de sockets a usar (omisión: dir. actual)\n"
 
-#: option.c:308
+#: option.c:306
 #, c-format
 msgid "  -U, --username=NAME           cluster superuser (default \"%s\")\n"
 msgstr "  -U, --username=NOMBRE         superusuario del clúster (def. «%s»)\n"
 
-#: option.c:309
+#: option.c:307
 #, c-format
 msgid "  -v, --verbose                 enable verbose internal logging\n"
 msgstr "  -v, --verbose                 activar registro interno verboso\n"
 
-#: option.c:310
+#: option.c:308
 #, c-format
 msgid "  -V, --version                 display version information, then exit\n"
 msgstr "  -V, --version                 mostrar información de versión y salir\n"
 
-#: option.c:311
+#: option.c:309
 #, c-format
 msgid "  --clone                       clone instead of copying files to new cluster\n"
 msgstr "  --clone                       clonar los archivos en vez de copiarlos\n"
 
-#: option.c:312
+#: option.c:310
 #, c-format
 msgid "  -?, --help                    show this help, then exit\n"
 msgstr "  -?, --help                    mostrar esta ayuda y salir\n"
 
-#: option.c:313
+#: option.c:311
 #, c-format
 msgid ""
 "\n"
@@ -1201,7 +1246,7 @@ msgstr ""
 "  apagar el postmaster que atiende al clúster antiguo\n"
 "  apagar el postmaster que atiende al clúster nuevo\n"
 
-#: option.c:318
+#: option.c:316
 #, c-format
 msgid ""
 "\n"
@@ -1218,7 +1263,7 @@ msgstr ""
 "  el directorio «bin» para la versión antigua (-b BINDIR)\n"
 "  el directorio «bin» para la versión nueva   (-B BINDIR)\n"
 
-#: option.c:324
+#: option.c:322
 #, c-format
 msgid ""
 "\n"
@@ -1231,7 +1276,7 @@ msgstr ""
 "  pg_upgrade -d oldCluster/data -D newCluster/data -b oldCluster/bin -B newCluster/bin\n"
 "o\n"
 
-#: option.c:329
+#: option.c:327
 #, c-format
 msgid ""
 "  $ export PGDATAOLD=oldCluster/data\n"
@@ -1246,7 +1291,7 @@ msgstr ""
 "  $ export PGBINNEW=clusterNuevo/bin\n"
 "  $ pg_upgrade\n"
 
-#: option.c:335
+#: option.c:333
 #, c-format
 msgid ""
 "  C:\\> set PGDATAOLD=oldCluster/data\n"
@@ -1261,16 +1306,19 @@ msgstr ""
 "  C:\\> set PGBINNEW=clusterNuevo/bin\n"
 "  C:\\> pg_upgrade\n"
 
-#: option.c:341
+#: option.c:339
 #, c-format
 msgid ""
 "\n"
-"Report bugs to <pgsql-bugs@lists.postgresql.org>.\n"
+"Report bugs to <%s>.\n"
 msgstr ""
-"\n"
-"Reporte errores a <pgsql-bugs@lists.postgresql.org>.\n"
 
-#: option.c:377
+#: option.c:340
+#, c-format
+msgid "%s home page: <%s>\n"
+msgstr ""
+
+#: option.c:380
 #, c-format
 msgid ""
 "You must identify the directory where the %s.\n"
@@ -1279,62 +1327,62 @@ msgstr ""
 "Debe identificar el directorio donde %s.\n"
 "Por favor use la opción %s o la variable de ambiente %s.\n"
 
-#: option.c:429
+#: option.c:432
 #, c-format
 msgid "Finding the real data directory for the source cluster"
 msgstr "Buscando el directorio de datos real para el clúster de origen"
 
-#: option.c:431
+#: option.c:434
 #, c-format
 msgid "Finding the real data directory for the target cluster"
 msgstr "Buscando el directorio de datos real para el clúster de destino"
 
-#: option.c:443
+#: option.c:446
 #, c-format
 msgid "could not get data directory using %s: %s\n"
 msgstr "no se pudo obtener el directorio de datos usando %s: %s\n"
 
-#: option.c:503
+#: option.c:505
 #, c-format
 msgid "could not read line %d from file \"%s\": %s\n"
 msgstr "no se pudo leer la línea %d del archivo «%s»: %s\n"
 
-#: option.c:521
+#: option.c:522
 #, c-format
 msgid "user-supplied old port number %hu corrected to %hu\n"
 msgstr "número de port entregado por el usuario %hu corregido a %hu\n"
 
-#: parallel.c:128 parallel.c:241
+#: parallel.c:127 parallel.c:238
 #, c-format
 msgid "could not create worker process: %s\n"
 msgstr "no se pudo crear el proceso hijo: %s\n"
 
-#: parallel.c:147 parallel.c:262
+#: parallel.c:146 parallel.c:259
 #, c-format
 msgid "could not create worker thread: %s\n"
 msgstr "no se pudo crear el thread: %s\n"
 
-#: parallel.c:305
+#: parallel.c:300
 #, c-format
 msgid "waitpid() failed: %s\n"
 msgstr "waitpid() fallida: %s\n"
 
-#: parallel.c:309
+#: parallel.c:304
 #, c-format
 msgid "child process exited abnormally: status %d\n"
 msgstr "el proceso hijo terminó anormalmente: estado %d\n"
 
-#: parallel.c:324
+#: parallel.c:319
 #, c-format
 msgid "child worker exited abnormally: %s\n"
 msgstr "el thread terminó anormalmente: %s\n"
 
-#: pg_upgrade.c:109
+#: pg_upgrade.c:108
 #, c-format
 msgid "could not read permissions of directory \"%s\": %s\n"
 msgstr "no se pudo obtener los permisos del directorio «%s»: %s\n"
 
-#: pg_upgrade.c:126
+#: pg_upgrade.c:123
 #, c-format
 msgid ""
 "\n"
@@ -1345,17 +1393,17 @@ msgstr ""
 "Llevando a cabo el Upgrade\n"
 "--------------------------\n"
 
-#: pg_upgrade.c:169
+#: pg_upgrade.c:166
 #, c-format
 msgid "Setting next OID for new cluster"
 msgstr "Seteando siguiente OID para el nuevo clúster"
 
-#: pg_upgrade.c:176
+#: pg_upgrade.c:173
 #, c-format
 msgid "Sync data directory to disk"
 msgstr "Sincronizando directorio de datos a disco"
 
-#: pg_upgrade.c:188
+#: pg_upgrade.c:185
 #, c-format
 msgid ""
 "\n"
@@ -1366,7 +1414,12 @@ msgstr ""
 "Actualización Completa\n"
 "----------------------\n"
 
-#: pg_upgrade.c:234
+#: pg_upgrade.c:220
+#, c-format
+msgid "%s: could not find own program executable\n"
+msgstr "%s: no se pudo encontrar el ejecutable propio\n"
+
+#: pg_upgrade.c:246
 #, c-format
 msgid ""
 "There seems to be a postmaster servicing the old cluster.\n"
@@ -1375,7 +1428,7 @@ msgstr ""
 "Parece haber un postmaster sirviendo el clúster antiguo.\n"
 "Por favor detenga ese postmaster e inténtelo nuevamente.\n"
 
-#: pg_upgrade.c:247
+#: pg_upgrade.c:259
 #, c-format
 msgid ""
 "There seems to be a postmaster servicing the new cluster.\n"
@@ -1384,137 +1437,132 @@ msgstr ""
 "Parece haber un postmaster sirviendo el clúster nuevo.\n"
 "Por favor detenga ese postmaster e inténtelo nuevamente.\n"
 
-#: pg_upgrade.c:253
-#, c-format
-msgid "%s: could not find own program executable\n"
-msgstr "%s: no se pudo encontrar el ejecutable propio\n"
-
-#: pg_upgrade.c:270
+#: pg_upgrade.c:273
 #, c-format
 msgid "Analyzing all rows in the new cluster"
 msgstr "Analizando todas las filas en el clúster nuevo"
 
-#: pg_upgrade.c:283
+#: pg_upgrade.c:286
 #, c-format
 msgid "Freezing all rows in the new cluster"
 msgstr "Congelando todas las filas en el nuevo clúster"
 
-#: pg_upgrade.c:303
+#: pg_upgrade.c:306
 #, c-format
 msgid "Restoring global objects in the new cluster"
 msgstr "Restaurando objetos globales en el nuevo clúster"
 
-#: pg_upgrade.c:318
+#: pg_upgrade.c:321
 #, c-format
 msgid "Restoring database schemas in the new cluster\n"
 msgstr "Restaurando esquemas de bases de datos en el clúster nuevo\n"
 
-#: pg_upgrade.c:424
+#: pg_upgrade.c:425
 #, c-format
 msgid "Deleting files from new %s"
 msgstr "Eliminando archivos del nuevo %s"
 
-#: pg_upgrade.c:428
+#: pg_upgrade.c:429
 #, c-format
 msgid "could not delete directory \"%s\"\n"
 msgstr "no se pudo eliminar directorio «%s»\n"
 
-#: pg_upgrade.c:447
+#: pg_upgrade.c:448
 #, c-format
 msgid "Copying old %s to new server"
 msgstr "Copiando el %s antiguo al nuevo servidor"
 
-#: pg_upgrade.c:474
+#: pg_upgrade.c:475
 #, c-format
 msgid "Setting next transaction ID and epoch for new cluster"
 msgstr "Seteando el ID de transacción y «época» siguientes en el nuevo clúster"
 
-#: pg_upgrade.c:504
+#: pg_upgrade.c:505
 #, c-format
 msgid "Setting next multixact ID and offset for new cluster"
 msgstr "Seteando el multixact ID y offset siguientes en el nuevo clúster"
 
-#: pg_upgrade.c:528
+#: pg_upgrade.c:529
 #, c-format
 msgid "Setting oldest multixact ID in new cluster"
 msgstr "Seteando el multixact ID más antiguo en el nuevo clúster"
 
-#: pg_upgrade.c:548
+#: pg_upgrade.c:549
 #, c-format
 msgid "Resetting WAL archives"
 msgstr "Reseteando los archivos de WAL"
 
-#: pg_upgrade.c:591
+#: pg_upgrade.c:592
 #, c-format
 msgid "Setting frozenxid and minmxid counters in new cluster"
 msgstr "Seteando contadores frozenxid y minmxid en el clúster nuevo"
 
-#: pg_upgrade.c:593
+#: pg_upgrade.c:594
 #, c-format
 msgid "Setting minmxid counter in new cluster"
 msgstr "Seteando contador minmxid en el clúster nuevo"
 
-#: relfilenode.c:36
+#: relfilenode.c:35
 #, c-format
 msgid "Cloning user relation files\n"
 msgstr "Clonando archivos de relaciones de usuario\n"
 
-#: relfilenode.c:39
+#: relfilenode.c:38
 #, c-format
 msgid "Copying user relation files\n"
 msgstr "Copiando archivos de relaciones de usuario\n"
 
-#: relfilenode.c:42
+#: relfilenode.c:41
 #, c-format
 msgid "Linking user relation files\n"
 msgstr "Enlazando archivos de relaciones de usuario\n"
 
-#: relfilenode.c:118
+#: relfilenode.c:115
 #, c-format
 msgid "old database \"%s\" not found in the new cluster\n"
 msgstr "la base de datos «%s» no se encontró en el clúster nuevo\n"
 
-#: relfilenode.c:239
+#: relfilenode.c:234
 #, c-format
 msgid "error while checking for file existence \"%s.%s\" (\"%s\" to \"%s\"): %s\n"
 msgstr "error mientras se comprobaba la existencia del archivo «%s.%s» («%s» a «%s»); %s\n"
 
-#: relfilenode.c:257
+#: relfilenode.c:252
 #, c-format
 msgid "rewriting \"%s\" to \"%s\"\n"
 msgstr "reescribiendo «%s» a «%s»\n"
 
-#: relfilenode.c:265
+#: relfilenode.c:260
 #, c-format
 msgid "cloning \"%s\" to \"%s\"\n"
 msgstr "clonando «%s» a «%s»\n"
 
-#: relfilenode.c:270
+#: relfilenode.c:265
 #, c-format
 msgid "copying \"%s\" to \"%s\"\n"
 msgstr "copiando «%s» a «%s»\n"
 
-#: relfilenode.c:275
+#: relfilenode.c:270
 #, c-format
 msgid "linking \"%s\" to \"%s\"\n"
 msgstr "enlazando «%s» a «%s»\n"
 
-#: server.c:34
+#: server.c:33
 #, c-format
 msgid "connection to database failed: %s"
 msgstr "falló la conexión a la base de datos: %s"
 
-#: server.c:40 server.c:142 util.c:136 util.c:166
+#: server.c:39 server.c:141 util.c:135 util.c:165
 #, c-format
 msgid "Failure, exiting\n"
 msgstr "Falló, saliendo\n"
 
-#: server.c:132
+#: server.c:131
 #, c-format
 msgid "executing: %s\n"
 msgstr "ejecutando: %s\n"
 
-#: server.c:138
+#: server.c:137
 #, c-format
 msgid ""
 "SQL command failed\n"
@@ -1525,17 +1573,19 @@ msgstr ""
 "%s\n"
 "%s"
 
-#: server.c:168
-#, c-format
-msgid "could not open version file: %s\n"
+#: server.c:167
+#, fuzzy, c-format
+#| msgid "could not open version file: %s\n"
+msgid "could not open version file \"%s\": %m\n"
 msgstr "no se pudo abrir el archivo de versión: %s\n"
 
-#: server.c:172
-#, c-format
-msgid "could not parse PG_VERSION file from %s\n"
-msgstr "no se pudo interpretar el archivo PG_VERSION de %s\n"
+#: server.c:171
+#, fuzzy, c-format
+#| msgid "could not open version file: %s\n"
+msgid "could not parse version file \"%s\"\n"
+msgstr "no se pudo abrir el archivo de versión: %s\n"
 
-#: server.c:295
+#: server.c:294
 #, c-format
 msgid ""
 "\n"
@@ -1544,7 +1594,7 @@ msgstr ""
 "\n"
 "falló la conexión a la base de datos: %s"
 
-#: server.c:300
+#: server.c:299
 #, c-format
 msgid ""
 "could not connect to source postmaster started with the command:\n"
@@ -1553,7 +1603,7 @@ msgstr ""
 "no se pudo conectar al postmaster de origen iniciado con la orden:\n"
 "%s\n"
 
-#: server.c:304
+#: server.c:303
 #, c-format
 msgid ""
 "could not connect to target postmaster started with the command:\n"
@@ -1562,22 +1612,22 @@ msgstr ""
 "no se pudo conectar al postmaster de destino iniciado con la orden:\n"
 "%s\n"
 
-#: server.c:318
+#: server.c:317
 #, c-format
 msgid "pg_ctl failed to start the source server, or connection failed\n"
 msgstr "pg_ctl no pudo iniciar el servidor de origen, o la conexión falló\n"
 
-#: server.c:320
+#: server.c:319
 #, c-format
 msgid "pg_ctl failed to start the target server, or connection failed\n"
 msgstr "pg_ctl no pudo iniciar el servidor de destino, o la conexión falló\n"
 
-#: server.c:365
+#: server.c:364
 #, c-format
 msgid "out of memory\n"
 msgstr "memoria agotada\n"
 
-#: server.c:378
+#: server.c:377
 #, c-format
 msgid "libpq environment variable %s has a non-local server value: %s\n"
 msgstr "la variable de ambiente libpq %s tiene un valor de servidor no-local: %s\n"
@@ -1591,47 +1641,47 @@ msgstr ""
 "No se puede actualizar desde el mismo número de versión del catálogo\n"
 "cuando se están usando tablespaces.\n"
 
-#: tablespace.c:87
+#: tablespace.c:86
 #, c-format
 msgid "tablespace directory \"%s\" does not exist\n"
 msgstr "el directorio de tablespace «%s» no existe\n"
 
-#: tablespace.c:91
+#: tablespace.c:90
 #, c-format
 msgid "could not stat tablespace directory \"%s\": %s\n"
 msgstr "no se pudo hace stat al directorio de tablespace «%s»: %s\n"
 
-#: tablespace.c:96
+#: tablespace.c:95
 #, c-format
 msgid "tablespace path \"%s\" is not a directory\n"
 msgstr "la ruta de tablespace «%s» no es un directorio\n"
 
-#: util.c:50
+#: util.c:49
 #, c-format
 msgid " "
 msgstr " "
 
-#: util.c:83
+#: util.c:82
 #, c-format
 msgid "%-*s"
 msgstr "%-*s"
 
-#: util.c:175
+#: util.c:174
 #, c-format
 msgid "ok"
 msgstr "éxito"
 
-#: version.c:32
+#: version.c:29
 #, c-format
 msgid "Checking for large objects"
 msgstr "Buscando objetos grandes"
 
-#: version.c:80 version.c:382
+#: version.c:77 version.c:384
 #, c-format
 msgid "warning"
 msgstr "atención"
 
-#: version.c:82
+#: version.c:79
 #, c-format
 msgid ""
 "\n"
@@ -1647,7 +1697,7 @@ msgstr ""
 "actualizar, se le dará una instrucción para poblar la tabla\n"
 "pg_largeobject_metadata con privilegios por omisión.\n"
 
-#: version.c:88
+#: version.c:85
 #, c-format
 msgid ""
 "\n"
@@ -1667,12 +1717,12 @@ msgstr ""
 "cuando se ejecute en psql con el superusuario de la base de datos\n"
 "establecerá los privilegios por omisión.\n"
 
-#: version.c:118
+#: version.c:239
 #, c-format
 msgid "Checking for incompatible \"line\" data type"
 msgstr "Verificando datos de usuario de tipo «line» incompatible"
 
-#: version.c:180
+#: version.c:246
 #, c-format
 msgid ""
 "Your installation contains the \"line\" data type in user tables.  This\n"
@@ -1692,12 +1742,12 @@ msgstr ""
 "    %s\n"
 "\n"
 
-#: version.c:215
+#: version.c:276
 #, c-format
 msgid "Checking for invalid \"unknown\" user columns"
 msgstr "Verificando columnas de usuario del tipo no válido «unknown»"
 
-#: version.c:281
+#: version.c:283
 #, c-format
 msgid ""
 "Your installation contains the \"unknown\" data type in user tables.  This\n"
@@ -1714,12 +1764,12 @@ msgstr ""
 "    %s\n"
 "\n"
 
-#: version.c:304
+#: version.c:306
 #, c-format
 msgid "Checking for hash indexes"
 msgstr "Verificando índices hash"
 
-#: version.c:384
+#: version.c:386
 #, c-format
 msgid ""
 "\n"
@@ -1736,7 +1786,7 @@ msgstr ""
 "instrucciones de REINDEX.\n"
 "\n"
 
-#: version.c:390
+#: version.c:392
 #, c-format
 msgid ""
 "\n"
@@ -1756,3 +1806,44 @@ msgstr ""
 "cuando se ejecute en psql con el superusuario de la base de datos recreará\n"
 "los índices no válidos; hasta entonces, ninguno de esos índices será usado.\n"
 "\n"
+
+#: version.c:418
+#, fuzzy, c-format
+#| msgid "Checking for invalid \"unknown\" user columns"
+msgid "Checking for invalid \"sql_identifier\" user columns"
+msgstr "Verificando columnas de usuario del tipo no válido «unknown»"
+
+#: version.c:426
+#, fuzzy, c-format
+#| msgid ""
+#| "Your installation contains the \"unknown\" data type in user tables.  This\n"
+#| "data type is no longer allowed in tables, so this cluster cannot currently\n"
+#| "be upgraded.  You can remove the problem tables and restart the upgrade.\n"
+#| "A list of the problem columns is in the file:\n"
+#| "    %s\n"
+#| "\n"
+msgid ""
+"Your installation contains the \"sql_identifier\" data type in user tables\n"
+"and/or indexes.  The on-disk format for this data type has changed, so this\n"
+"cluster cannot currently be upgraded.  You can remove the problem tables or\n"
+"change the data type to \"name\" and restart the upgrade.\n"
+"A list of the problem columns is in the file:\n"
+"    %s\n"
+"\n"
+msgstr ""
+"Su instalación contiene el tipo «unknown» en tablas de usuario. Este tipo\n"
+"ya no es permitido en tablas, por lo que este clúster no puede ser actualizado.\n"
+"Puede elimiar las tablas y reiniciar la actualización.\n"
+"Un listado de columnas problemáticas está en el archivo:\n"
+"    %s\n"
+"\n"
+
+#~ msgid ""
+#~ "\n"
+#~ "Report bugs to <pgsql-bugs@lists.postgresql.org>.\n"
+#~ msgstr ""
+#~ "\n"
+#~ "Reporte errores a <pgsql-bugs@lists.postgresql.org>.\n"
+
+#~ msgid "could not parse PG_VERSION file from %s\n"
+#~ msgstr "no se pudo interpretar el archivo PG_VERSION de %s\n"
diff --git a/src/bin/pg_waldump/po/es.po b/src/bin/pg_waldump/po/es.po
index 73018dcc40f..88b6b41f1a7 100644
--- a/src/bin/pg_waldump/po/es.po
+++ b/src/bin/pg_waldump/po/es.po
@@ -9,7 +9,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: pg_waldump (PostgreSQL) 12\n"
 "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n"
-"POT-Creation-Date: 2019-09-29 23:43+0000\n"
+"POT-Creation-Date: 2020-05-17 02:45+0000\n"
 "PO-Revision-Date: 2019-06-06 17:25-0400\n"
 "Last-Translator: Carlos Chapi <carlos.chapi@2ndquadrant.com>\n"
 "Language-Team: PgSQL-es-Ayuda <pgsql-es-ayuda@lists.postgresql.org>\n"
@@ -20,74 +20,72 @@ msgstr ""
 "X-Generator: Poedit 2.0.2\n"
 "Plural-Forms: nplurals=2; plural=n != 1;\n"
 
-#: ../../../src/common/logging.c:188
+#: ../../../src/common/logging.c:236
 #, c-format
 msgid "fatal: "
 msgstr "fatal: "
 
-#: ../../../src/common/logging.c:195
+#: ../../../src/common/logging.c:243
 #, c-format
 msgid "error: "
 msgstr "error: "
 
-#: ../../../src/common/logging.c:202
+#: ../../../src/common/logging.c:250
 #, c-format
 msgid "warning: "
 msgstr "precaución: "
 
-#: pg_waldump.c:148
+#: pg_waldump.c:146
 #, c-format
-msgid "could not open file \"%s\": %s"
-msgstr "no se pudo abrir el archivo «%s»: %s"
+msgid "could not open file \"%s\": %m"
+msgstr "no se pudo abrir el archivo «%s»: %m"
 
-#: pg_waldump.c:205
+#: pg_waldump.c:202
 #, c-format
 msgid "WAL segment size must be a power of two between 1 MB and 1 GB, but the WAL file \"%s\" header specifies %d byte"
 msgid_plural "WAL segment size must be a power of two between 1 MB and 1 GB, but the WAL file \"%s\" header specifies %d bytes"
 msgstr[0] "el tamaño de segmento WAL debe ser una potencia de dos entre 1 MB y 1 GB, pero la cabecera del archivo WAL «%s» especifica %d byte"
 msgstr[1] "el tamaño de segmento WAL debe ser una potencia de dos entre 1 MB y 1 GB, pero la cabecera del archivo WAL «%s» especifica %d bytes"
 
-#: pg_waldump.c:213
+#: pg_waldump.c:210
 #, c-format
-msgid "could not read file \"%s\": %s"
-msgstr "no se pudo leer el archivo «%s»: %s"
+msgid "could not read file \"%s\": %m"
+msgstr "no se pudo leer el archivo «%s»: %m"
 
-#: pg_waldump.c:216
+#: pg_waldump.c:213
 #, c-format
 msgid "could not read file \"%s\": read %d of %zu"
 msgstr "no se pudo leer el archivo «%s»: leídos %d de %zu"
 
-#: pg_waldump.c:294
+#: pg_waldump.c:275
 #, c-format
 msgid "could not locate WAL file \"%s\""
 msgstr "no se pudo ubicar el archivo WAL «%s»"
 
-#: pg_waldump.c:296
+#: pg_waldump.c:277
 #, c-format
 msgid "could not find any WAL file"
 msgstr "no se pudo encontrar ningún archivo WAL"
 
-#: pg_waldump.c:367
-#, c-format
-msgid "could not find file \"%s\": %s"
+#: pg_waldump.c:318
+#, fuzzy, c-format
+#| msgid "could not find file \"%s\": %s"
+msgid "could not find file \"%s\": %m"
 msgstr "no se pudo encontrar el archivo «%s»: %s"
 
-#: pg_waldump.c:382
-#, c-format
-msgid "could not seek in log file %s to offset %u: %s"
-msgstr "no se pudo posicionar (seek) en el archivo de log %s a la posición %u: %s"
+#: pg_waldump.c:367
+#, fuzzy, c-format
+#| msgid "Could not read from file \"%s\" at offset %u: %m."
+msgid "could not read from file %s, offset %u: %m"
+msgstr "No se pudo leer desde el archivo «%s» en la posición %u: %m."
 
-#: pg_waldump.c:405
-#, c-format
-msgid "could not read from log file %s, offset %u, length %d: %s"
-msgstr "no se pudo leer del archivo de log %s, posición %u, longitud %d: %s"
-
-#: pg_waldump.c:408
-#, c-format
-msgid "could not read from log file %s, offset %u: read %d of %zu"
+#: pg_waldump.c:371
+#, fuzzy, c-format
+#| msgid "could not read from log file %s, offset %u: read %d of %zu"
+msgid "could not read from file %s, offset %u: read %d of %zu"
 msgstr "no se pudo leer del archivo de log %s, posición %u: leído %d de %zu"
 
-#: pg_waldump.c:787
+#: pg_waldump.c:720
 #, c-format
 msgid ""
 "%s decodes and displays PostgreSQL write-ahead logs for debugging.\n"
@@ -96,17 +94,17 @@ msgstr ""
 "%s decodifica y muestra segmentos de WAL de PostgreSQL para depuración.\n"
 "\n"
 
-#: pg_waldump.c:789
+#: pg_waldump.c:722
 #, c-format
 msgid "Usage:\n"
 msgstr "Empleo:\n"
 
-#: pg_waldump.c:790
+#: pg_waldump.c:723
 #, c-format
 msgid "  %s [OPTION]... [STARTSEG [ENDSEG]]\n"
 msgstr "  %s [OPCIÓN]... [SEGINICIAL [SEGFINAL]]\n"
 
-#: pg_waldump.c:791
+#: pg_waldump.c:724
 #, c-format
 msgid ""
 "\n"
@@ -115,27 +113,27 @@ msgstr ""
 "\n"
 "Opciones:\n"
 
-#: pg_waldump.c:792
+#: pg_waldump.c:725
 #, c-format
 msgid "  -b, --bkp-details      output detailed information about backup blocks\n"
 msgstr "  -b, --bkp-details        mostrar información detallada sobre bloques de respaldo\n"
 
-#: pg_waldump.c:793
+#: pg_waldump.c:726
 #, c-format
 msgid "  -e, --end=RECPTR       stop reading at WAL location RECPTR\n"
 msgstr "  -e, --end=RECPTR         detener la lectura del WAL en la posición RECPTR\n"
 
-#: pg_waldump.c:794
+#: pg_waldump.c:727
 #, c-format
 msgid "  -f, --follow           keep retrying after reaching end of WAL\n"
 msgstr "  -f, --follow             seguir reintentando después de alcanzar el final del WAL\n"
 
-#: pg_waldump.c:795
+#: pg_waldump.c:728
 #, c-format
 msgid "  -n, --limit=N          number of records to display\n"
 msgstr "  -n, --limit=N            número de registros a mostrar\n"
 
-#: pg_waldump.c:796
+#: pg_waldump.c:729
 #, c-format
 msgid ""
 "  -p, --path=PATH        directory in which to find log segment files or a\n"
@@ -146,7 +144,13 @@ msgstr ""
 "                           o un directorio con un ./pg_wal que contenga tales archivos\n"
 "                           (por omisión: directorio actual, ./pg_wal, $PGDATA/pg_wal)\n"
 
-#: pg_waldump.c:799
+#: pg_waldump.c:732
+#, fuzzy, c-format
+#| msgid "  -q, --quiet               don't write any messages\n"
+msgid "  -q, --quiet            do not print any output, except for errors\n"
+msgstr "  -q, --quiet               no escribir ningún mensaje\n"
+
+#: pg_waldump.c:733
 #, c-format
 msgid ""
 "  -r, --rmgr=RMGR        only show records generated by resource manager RMGR;\n"
@@ -155,12 +159,12 @@ msgstr ""
 "  -r, --rmgr=GREC          sólo mostrar registros generados por el gestor de\n"
 "                           recursos GREC; use --rmgr=list para listar nombres válidos\n"
 
-#: pg_waldump.c:801
+#: pg_waldump.c:735
 #, c-format
 msgid "  -s, --start=RECPTR     start reading at WAL location RECPTR\n"
 msgstr "  -s, --start=RECPTR       empezar a leer el WAL en la posición RECPTR\n"
 
-#: pg_waldump.c:802
+#: pg_waldump.c:736
 #, c-format
 msgid ""
 "  -t, --timeline=TLI     timeline from which to read log records\n"
@@ -169,17 +173,17 @@ msgstr ""
 "  -t, --timeline=TLI       timeline del cual leer los registros de WAL\n"
 "                           (por omisión: 1 o el valor usado en SEGINICIAL)\n"
 
-#: pg_waldump.c:804
+#: pg_waldump.c:738
 #, c-format
 msgid "  -V, --version          output version information, then exit\n"
 msgstr "  -V, --version            mostrar información de versión, luego salir\n"
 
-#: pg_waldump.c:805
+#: pg_waldump.c:739
 #, c-format
 msgid "  -x, --xid=XID          only show records with transaction ID XID\n"
 msgstr "  -x, --xid=XID            sólo mostrar registros con el id de transacción XID\n"
 
-#: pg_waldump.c:806
+#: pg_waldump.c:740
 #, c-format
 msgid ""
 "  -z, --stats[=record]   show statistics instead of records\n"
@@ -188,123 +192,146 @@ msgstr ""
 "  -z, --stats[=registro]   mostrar estadísticas en lugar de registros\n"
 "                           (opcionalmente, mostrar estadísticas por registro)\n"
 
-#: pg_waldump.c:808
+#: pg_waldump.c:742
 #, c-format
 msgid "  -?, --help             show this help, then exit\n"
 msgstr "  -?, --help               mostrar esta ayuda, luego salir\n"
 
-#: pg_waldump.c:809
+#: pg_waldump.c:743
 #, c-format
 msgid ""
 "\n"
-"Report bugs to <pgsql-bugs@lists.postgresql.org>.\n"
+"Report bugs to <%s>.\n"
 msgstr ""
-"\n"
-"Reporte errores a <pgsql-bugs@lists.postgresql.org>.\n"
 
-#: pg_waldump.c:883
+#: pg_waldump.c:744
+#, c-format
+msgid "%s home page: <%s>\n"
+msgstr ""
+
+#: pg_waldump.c:821
 #, c-format
 msgid "no arguments specified"
 msgstr "no se especificó ningún argumento"
 
-#: pg_waldump.c:898
+#: pg_waldump.c:836
 #, c-format
 msgid "could not parse end WAL location \"%s\""
 msgstr "no se pudo interpretar la posición final de WAL «%s»"
 
-#: pg_waldump.c:910
+#: pg_waldump.c:848
 #, c-format
 msgid "could not parse limit \"%s\""
 msgstr "no se pudo interpretar el límite «%s»"
 
-#: pg_waldump.c:938
+#: pg_waldump.c:879
 #, c-format
 msgid "resource manager \"%s\" does not exist"
 msgstr "el gestor de recursos «%s» no existe"
 
-#: pg_waldump.c:947
+#: pg_waldump.c:888
 #, c-format
 msgid "could not parse start WAL location \"%s\""
 msgstr "no se pudo interpretar la posición inicial de WAL «%s»"
 
-#: pg_waldump.c:957
+#: pg_waldump.c:898
 #, c-format
 msgid "could not parse timeline \"%s\""
 msgstr "no se pudo interpretar el timeline «%s»"
 
-#: pg_waldump.c:964
+#: pg_waldump.c:905
 #, c-format
 msgid "could not parse \"%s\" as a transaction ID"
 msgstr "no se pudo interpretar «%s» como un id de transacción"
 
-#: pg_waldump.c:979
+#: pg_waldump.c:920
 #, c-format
 msgid "unrecognized argument to --stats: %s"
 msgstr "parámetro no reconocido para --stats: %s"
 
-#: pg_waldump.c:992
+#: pg_waldump.c:933
 #, c-format
 msgid "too many command-line arguments (first is \"%s\")"
 msgstr "demasiados argumentos en la línea de órdenes (el primero es «%s»)"
 
-#: pg_waldump.c:1002
+#: pg_waldump.c:943 pg_waldump.c:963
 #, c-format
-msgid "path \"%s\" could not be opened: %s"
-msgstr "la ruta «%s» no se pudo abrir: %s"
+msgid "could not open directory \"%s\": %m"
+msgstr "no se pudo abrir el directorio «%s»: %m"
 
-#: pg_waldump.c:1023
-#, c-format
-msgid "could not open directory \"%s\": %s"
-msgstr "no se pudo abrir el directorio «%s»: %s"
-
-#: pg_waldump.c:1030 pg_waldump.c:1061
+#: pg_waldump.c:969 pg_waldump.c:1000
 #, c-format
 msgid "could not open file \"%s\""
 msgstr "no se pudo abrir el archivo «%s»"
 
-#: pg_waldump.c:1040
+#: pg_waldump.c:979
 #, c-format
 msgid "start WAL location %X/%X is not inside file \"%s\""
 msgstr "la posición inicial de WAL %X/%X no está en el archivo «%s»"
 
-#: pg_waldump.c:1068
+#: pg_waldump.c:1007
 #, c-format
 msgid "ENDSEG %s is before STARTSEG %s"
 msgstr "SEGFINAL %s está antes del SEGINICIAL %s"
 
-#: pg_waldump.c:1083
+#: pg_waldump.c:1022
 #, c-format
 msgid "end WAL location %X/%X is not inside file \"%s\""
 msgstr "la posición final de WAL %X/%X no está en el archivo «%s»"
 
-#: pg_waldump.c:1096
+#: pg_waldump.c:1035
 #, c-format
 msgid "no start WAL location given"
 msgstr "no se especificó posición inicial de WAL"
 
-#: pg_waldump.c:1106
+#: pg_waldump.c:1049
 #, c-format
 msgid "out of memory"
 msgstr "memoria agotada"
 
-#: pg_waldump.c:1112
+#: pg_waldump.c:1055
 #, c-format
 msgid "could not find a valid record after %X/%X"
 msgstr "no se pudo encontrar un registro válido después de %X/%X"
 
-#: pg_waldump.c:1123
+#: pg_waldump.c:1066
 #, c-format
 msgid "first record is after %X/%X, at %X/%X, skipping over %u byte\n"
 msgid_plural "first record is after %X/%X, at %X/%X, skipping over %u bytes\n"
 msgstr[0] "el primer registro está ubicado después de %X/%X, en %X/%X, saltándose %u byte\n"
 msgstr[1] "el primer registro está ubicado después de %X/%X, en %X/%X, saltándose %u bytes\n"
 
-#: pg_waldump.c:1174
+#: pg_waldump.c:1117
 #, c-format
 msgid "error in WAL record at %X/%X: %s"
 msgstr "error en registro de WAL en %X/%X: %s"
 
-#: pg_waldump.c:1184
+#: pg_waldump.c:1127
 #, c-format
 msgid "Try \"%s --help\" for more information.\n"
 msgstr "Pruebe «%s --help» para mayor información.\n"
+
+#~ msgid "could not open file \"%s\": %s"
+#~ msgstr "no se pudo abrir el archivo «%s»: %s"
+
+#~ msgid "could not read file \"%s\": %s"
+#~ msgstr "no se pudo leer el archivo «%s»: %s"
+
+#~ msgid "could not seek in log file %s to offset %u: %s"
+#~ msgstr "no se pudo posicionar (seek) en el archivo de log %s a la posición %u: %s"
+
+#~ msgid "could not read from log file %s, offset %u, length %d: %s"
+#~ msgstr "no se pudo leer del archivo de log %s, posición %u, longitud %d: %s"
+
+#~ msgid ""
+#~ "\n"
+#~ "Report bugs to <pgsql-bugs@lists.postgresql.org>.\n"
+#~ msgstr ""
+#~ "\n"
+#~ "Reporte errores a <pgsql-bugs@lists.postgresql.org>.\n"
+
+#~ msgid "path \"%s\" could not be opened: %s"
+#~ msgstr "la ruta «%s» no se pudo abrir: %s"
+
+#~ msgid "could not open directory \"%s\": %s"
+#~ msgstr "no se pudo abrir el directorio «%s»: %s"
diff --git a/src/bin/psql/po/es.po b/src/bin/psql/po/es.po
index aa0eb9073a6..fb6793e138e 100644
--- a/src/bin/psql/po/es.po
+++ b/src/bin/psql/po/es.po
@@ -11,7 +11,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: psql (PostgreSQL) 12\n"
 "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n"
-"POT-Creation-Date: 2019-09-29 23:42+0000\n"
+"POT-Creation-Date: 2020-05-17 02:44+0000\n"
 "PO-Revision-Date: 2019-09-29 22:25-0300\n"
 "Last-Translator: Álvaro Herrera <alvherre@alvh.no-ip.org>\n"
 "Language-Team: PgSQL-es-Ayuda <pgsql-es-ayuda@lists.postgresql.org>\n"
@@ -21,69 +21,69 @@ msgstr ""
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=2; plural=n != 1;\n"
 
-#: ../../../src/common/logging.c:188
+#: ../../../src/common/logging.c:236
 #, c-format
 msgid "fatal: "
 msgstr "fatal:"
 
-#: ../../../src/common/logging.c:195
+#: ../../../src/common/logging.c:243
 #, c-format
 msgid "error: "
 msgstr "error: "
 
-#: ../../../src/common/logging.c:202
+#: ../../../src/common/logging.c:250
 #, c-format
 msgid "warning: "
 msgstr "precaución: "
 
-#: ../../common/exec.c:138 ../../common/exec.c:255 ../../common/exec.c:301
+#: ../../common/exec.c:137 ../../common/exec.c:254 ../../common/exec.c:300
 #, c-format
 msgid "could not identify current directory: %m"
 msgstr "no se pudo identificar el directorio actual: %m"
 
-#: ../../common/exec.c:157
+#: ../../common/exec.c:156
 #, c-format
 msgid "invalid binary \"%s\""
 msgstr "el binario «%s» no es válido"
 
-#: ../../common/exec.c:207
+#: ../../common/exec.c:206
 #, c-format
 msgid "could not read binary \"%s\""
 msgstr "no se pudo leer el binario «%s»"
 
-#: ../../common/exec.c:215
+#: ../../common/exec.c:214
 #, c-format
 msgid "could not find a \"%s\" to execute"
 msgstr "no se pudo encontrar un «%s» para ejecutar"
 
-#: ../../common/exec.c:271 ../../common/exec.c:310
+#: ../../common/exec.c:270 ../../common/exec.c:309
 #, c-format
 msgid "could not change directory to \"%s\": %m"
 msgstr "no se pudo cambiar al directorio «%s»: %m"
 
-#: ../../common/exec.c:288
+#: ../../common/exec.c:287
 #, c-format
 msgid "could not read symbolic link \"%s\": %m"
 msgstr "no se pudo leer el enlace simbólico «%s»: %m"
 
-#: ../../common/exec.c:541
+#: ../../common/exec.c:410
 #, c-format
 msgid "pclose failed: %m"
 msgstr "pclose falló: %m"
 
-#: ../../common/exec.c:670 ../../common/exec.c:715 ../../common/exec.c:807
-#: command.c:1218 input.c:228 mainloop.c:82 mainloop.c:386
+#: ../../common/exec.c:539 ../../common/exec.c:584 ../../common/exec.c:676
+#: command.c:1255 input.c:227 mainloop.c:81 mainloop.c:402
 #, c-format
 msgid "out of memory"
 msgstr "memoria agotada"
 
 #: ../../common/fe_memutils.c:35 ../../common/fe_memutils.c:75
-#: ../../common/fe_memutils.c:98
+#: ../../common/fe_memutils.c:98 ../../common/fe_memutils.c:162
 #, c-format
 msgid "out of memory\n"
 msgstr "memoria agotada\n"
 
-#: ../../common/fe_memutils.c:92
+#: ../../common/fe_memutils.c:92 ../../common/fe_memutils.c:154
 #, c-format
 msgid "cannot duplicate null pointer (internal error)\n"
 msgstr "no se puede duplicar un puntero nulo (error interno)\n"
@@ -93,7 +93,7 @@ msgstr "no se puede duplicar un puntero nulo (error interno)\n"
 msgid "could not look up effective user ID %ld: %s"
 msgstr "no se pudo buscar el ID de usuario efectivo %ld: %s"
 
-#: ../../common/username.c:45 command.c:555
+#: ../../common/username.c:45 command.c:559
 msgid "user does not exist"
 msgstr "el usuario no existe"
 
@@ -132,292 +132,298 @@ msgstr "el proceso hijo fue terminado por una señal %d: %s"
 msgid "child process exited with unrecognized status %d"
 msgstr "el proceso hijo terminó con código no reconocido %d"
 
-#: ../../fe_utils/print.c:353
+#: ../../fe_utils/print.c:350
 #, c-format
 msgid "(%lu row)"
 msgid_plural "(%lu rows)"
 msgstr[0] "(%lu fila)"
 msgstr[1] "(%lu filas)"
 
-#: ../../fe_utils/print.c:3058
+#: ../../fe_utils/print.c:3055
 #, c-format
 msgid "Interrupted\n"
 msgstr "Interrumpido\n"
 
-#: ../../fe_utils/print.c:3122
+#: ../../fe_utils/print.c:3119
 #, c-format
 msgid "Cannot add header to table content: column count of %d exceeded.\n"
 msgstr "No se puede agregar un encabezado al contenido de la tabla: la cantidad de columnas de %d ha sido excedida.\n"
 
-#: ../../fe_utils/print.c:3162
+#: ../../fe_utils/print.c:3159
 #, c-format
 msgid "Cannot add cell to table content: total cell count of %d exceeded.\n"
 msgstr "No se puede agregar una celda al contenido de la tabla: la cantidad de celdas de %d ha sido excedida.\n"
 
-#: ../../fe_utils/print.c:3417
+#: ../../fe_utils/print.c:3414
 #, c-format
 msgid "invalid output format (internal error): %d"
 msgstr "formato de salida no válido (error interno): %d"
 
-#: ../../fe_utils/psqlscan.l:729
+#: ../../fe_utils/psqlscan.l:694
 #, c-format
 msgid "skipping recursive expansion of variable \"%s\""
 msgstr "saltando expansión recursiva de la variable «%s»"
 
-#: command.c:221
+#: command.c:224
 #, c-format
 msgid "invalid command \\%s"
 msgstr "orden \\%s no válida"
 
-#: command.c:223
+#: command.c:226
 #, c-format
 msgid "Try \\? for help."
 msgstr "Digite \\? para obtener ayuda."
 
-#: command.c:241
+#: command.c:244
 #, c-format
 msgid "\\%s: extra argument \"%s\" ignored"
 msgstr "\\%s: argumento extra «%s» ignorado"
 
-#: command.c:293
+#: command.c:296
 #, c-format
 msgid "\\%s command ignored; use \\endif or Ctrl-C to exit current \\if block"
 msgstr "orden \\%s ignorada: use \\endif o Ctrl-C para salir del bloque \\if actual"
 
-#: command.c:553
+#: command.c:557
 #, c-format
 msgid "could not get home directory for user ID %ld: %s"
 msgstr "no se pudo obtener directorio home para el usuario de ID %ld: %s"
 
-#: command.c:571
+#: command.c:575
 #, c-format
 msgid "\\%s: could not change directory to \"%s\": %m"
 msgstr "\\%s: no se pudo cambiar directorio a «%s»: %m"
 
-#: command.c:596
+#: command.c:600
 #, c-format
 msgid "You are currently not connected to a database.\n"
 msgstr "No está conectado a una base de datos.\n"
 
-#: command.c:609
+#: command.c:613
 #, c-format
 msgid "You are connected to database \"%s\" as user \"%s\" on address \"%s\" at port \"%s\".\n"
 msgstr "Está conectado a la base de datos «%s» como el usuario «%s» en la dirección «%s» port «%s».\n"
 
-#: command.c:612
+#: command.c:616
 #, c-format
 msgid "You are connected to database \"%s\" as user \"%s\" via socket in \"%s\" at port \"%s\".\n"
 msgstr "Está conectado a la base de datos «%s» como el usuario «%s» a través del socket en «%s» port «%s».\n"
 
-#: command.c:618
+#: command.c:622
 #, c-format
 msgid "You are connected to database \"%s\" as user \"%s\" on host \"%s\" (address \"%s\") at port \"%s\".\n"
 msgstr "Está conectado a la base de datos «%s» como el usuario «%s» en el servidor «%s» (dirección «%s») port «%s».\n"
 
-#: command.c:621
+#: command.c:625
 #, c-format
 msgid "You are connected to database \"%s\" as user \"%s\" on host \"%s\" at port \"%s\".\n"
 msgstr "Está conectado a la base de datos «%s» como el usuario «%s» en el servidor «%s» port «%s».\n"
 
-#: command.c:930 command.c:1026 command.c:2411
+#: command.c:965 command.c:1061 command.c:2550
 #, c-format
 msgid "no query buffer"
 msgstr "no hay búfer de consulta"
 
-#: command.c:963 command.c:4832
+#: command.c:998 command.c:5061
 #, c-format
 msgid "invalid line number: %s"
 msgstr "número de línea no válido: %s"
 
-#: command.c:1017
+#: command.c:1052
 #, c-format
 msgid "The server (version %s) does not support editing function source."
 msgstr "El servidor (versión %s) no soporta la edición del código fuente de funciones."
 
-#: command.c:1020
+#: command.c:1055
 #, c-format
 msgid "The server (version %s) does not support editing view definitions."
 msgstr "El servidor (versión %s) no soporta la edición de vistas."
 
-#: command.c:1102
+#: command.c:1137
 msgid "No changes"
 msgstr "Sin cambios"
 
-#: command.c:1179
+#: command.c:1216
 #, c-format
 msgid "%s: invalid encoding name or conversion procedure not found"
 msgstr "%s: nombre de codificación no válido o procedimiento de conversión no encontrado"
 
-#: command.c:1214 command.c:1853 command.c:3109 command.c:4934 common.c:175
-#: common.c:224 common.c:535 common.c:1376 common.c:1404 common.c:1512
-#: common.c:1615 common.c:1653 copy.c:490 copy.c:709 help.c:63 large_obj.c:157
+#: command.c:1251 command.c:1992 command.c:3253 command.c:5163 common.c:174
+#: common.c:223 common.c:388 common.c:1237 common.c:1265 common.c:1373
+#: common.c:1480 common.c:1518 copy.c:488 copy.c:707 help.c:62 large_obj.c:157
 #: large_obj.c:192 large_obj.c:254
 #, c-format
 msgid "%s"
 msgstr "%s"
 
-#: command.c:1221
+#: command.c:1258
 msgid "There is no previous error."
 msgstr "No hay error anterior."
 
-#: command.c:1409 command.c:1714 command.c:1728 command.c:1745 command.c:1905
-#: command.c:2142 command.c:2378 command.c:2418
+#: command.c:1371
+#, fuzzy, c-format
+#| msgid "Missing left parenthesis."
+msgid "\\%s: missing right parenthesis"
+msgstr "Falta paréntesis izquierdo."
+
+#: command.c:1548 command.c:1853 command.c:1867 command.c:1884 command.c:2044
+#: command.c:2281 command.c:2517 command.c:2557
 #, c-format
 msgid "\\%s: missing required argument"
 msgstr "\\%s: falta argumento requerido"
 
-#: command.c:1540
+#: command.c:1679
 #, c-format
 msgid "\\elif: cannot occur after \\else"
 msgstr "\\elif: no puede ocurrir después de \\else"
 
-#: command.c:1545
+#: command.c:1684
 #, c-format
 msgid "\\elif: no matching \\if"
 msgstr "\\elif: no hay un \\if coincidente"
 
-#: command.c:1609
+#: command.c:1748
 #, c-format
 msgid "\\else: cannot occur after \\else"
 msgstr "\\else: no puede ocurrir después de \\else"
 
-#: command.c:1614
+#: command.c:1753
 #, c-format
 msgid "\\else: no matching \\if"
 msgstr "\\else: no hay un \\if coincidente"
 
-#: command.c:1654
+#: command.c:1793
 #, c-format
 msgid "\\endif: no matching \\if"
 msgstr "\\endif: no hay un \\if coincidente"
 
-#: command.c:1809
+#: command.c:1948
 msgid "Query buffer is empty."
 msgstr "El búfer de consulta está vacío."
 
-#: command.c:1831
+#: command.c:1970
 msgid "Enter new password: "
 msgstr "Ingrese la nueva contraseña: "
 
-#: command.c:1832
+#: command.c:1971
 msgid "Enter it again: "
 msgstr "Ingrésela nuevamente: "
 
-#: command.c:1836
+#: command.c:1975
 #, c-format
 msgid "Passwords didn't match."
 msgstr "Las constraseñas no coinciden."
 
-#: command.c:1935
+#: command.c:2074
 #, c-format
 msgid "\\%s: could not read value for variable"
 msgstr "%s: no se pudo leer el valor para la variable"
 
-#: command.c:2038
+#: command.c:2177
 msgid "Query buffer reset (cleared)."
 msgstr "El búfer de consulta ha sido reiniciado (limpiado)."
 
-#: command.c:2060
+#: command.c:2199
 #, c-format
 msgid "Wrote history to file \"%s\".\n"
 msgstr "Se escribió la historia en el archivo «%s».\n"
 
-#: command.c:2147
+#: command.c:2286
 #, c-format
 msgid "\\%s: environment variable name must not contain \"=\""
 msgstr "\\%s: el nombre de variable de ambiente no debe contener «=»"
 
-#: command.c:2208
+#: command.c:2347
 #, c-format
 msgid "The server (version %s) does not support showing function source."
 msgstr "El servidor (versión %s) no soporta el despliegue del código fuente de funciones."
 
-#: command.c:2211
+#: command.c:2350
 #, c-format
 msgid "The server (version %s) does not support showing view definitions."
 msgstr "El servidor (versión %s) no soporta el despliegue de definiciones de vistas."
 
-#: command.c:2218
+#: command.c:2357
 #, c-format
 msgid "function name is required"
 msgstr "el nombre de la función es requerido"
 
-#: command.c:2220
+#: command.c:2359
 #, c-format
 msgid "view name is required"
 msgstr "el nombre de la vista es requerido"
 
-#: command.c:2350
+#: command.c:2489
 msgid "Timing is on."
 msgstr "El despliegue de duración está activado."
 
-#: command.c:2352
+#: command.c:2491
 msgid "Timing is off."
 msgstr "El despliegue de duración está desactivado."
 
-#: command.c:2437 command.c:2465 command.c:3516 command.c:3519 command.c:3522
-#: command.c:3528 command.c:3530 command.c:3538 command.c:3548 command.c:3557
-#: command.c:3571 command.c:3588 command.c:3646 common.c:71 copy.c:333
-#: copy.c:405 psqlscanslash.l:784 psqlscanslash.l:795 psqlscanslash.l:805
+#: command.c:2576 command.c:2604 command.c:3661 command.c:3664 command.c:3667
+#: command.c:3673 command.c:3675 command.c:3683 command.c:3693 command.c:3702
+#: command.c:3716 command.c:3733 command.c:3791 common.c:70 copy.c:331
+#: copy.c:403 psqlscanslash.l:784 psqlscanslash.l:795 psqlscanslash.l:805
 #, c-format
 msgid "%s: %m"
 msgstr "%s: %m"
 
-#: command.c:2849 startup.c:240 startup.c:291
+#: command.c:2988 startup.c:236 startup.c:287
 msgid "Password: "
 msgstr "Contraseña: "
 
-#: command.c:2854 startup.c:288
+#: command.c:2993 startup.c:284
 #, c-format
 msgid "Password for user %s: "
 msgstr "Contraseña para usuario %s: "
 
-#: command.c:2925
+#: command.c:3064
 #, c-format
 msgid "All connection parameters must be supplied because no database connection exists"
 msgstr "Debe proveer todos los parámetros de conexión porque no existe conexión a una base de datos"
 
-#: command.c:3113
+#: command.c:3257
 #, c-format
 msgid "Previous connection kept"
 msgstr "Se ha mantenido la conexión anterior"
 
-#: command.c:3117
+#: command.c:3261
 #, c-format
 msgid "\\connect: %s"
 msgstr "\\connect: %s"
 
-#: command.c:3166
+#: command.c:3310
 #, c-format
 msgid "You are now connected to database \"%s\" as user \"%s\" on address \"%s\" at port \"%s\".\n"
 msgstr "Ahora está conectado a la base de datos «%s» como el usuario «%s» en la dirección «%s» port «%s».\n"
 
-#: command.c:3169
+#: command.c:3313
 #, c-format
 msgid "You are now connected to database \"%s\" as user \"%s\" via socket in \"%s\" at port \"%s\".\n"
 msgstr "Ahora está conectado a la base de datos «%s» como el usuario «%s» a través del socket en «%s» port «%s».\n"
 
-#: command.c:3175
+#: command.c:3319
 #, c-format
 msgid "You are now connected to database \"%s\" as user \"%s\" on host \"%s\" (address \"%s\") at port \"%s\".\n"
 msgstr "Ahora está conectado a la base de datos «%s» como el usuario «%s» en el servidor «%s» (dirección «%s») port «%s».\n"
 
-#: command.c:3178
+#: command.c:3322
 #, c-format
 msgid "You are now connected to database \"%s\" as user \"%s\" on host \"%s\" at port \"%s\".\n"
 msgstr "Ahora está conectado a la base de datos «%s» como el usuario «%s» en el servidor «%s» port «%s».\n"
 
-#: command.c:3183
+#: command.c:3327
 #, c-format
 msgid "You are now connected to database \"%s\" as user \"%s\".\n"
 msgstr "Ahora está conectado a la base de datos «%s» con el usuario «%s».\n"
 
-#: command.c:3216
+#: command.c:3360
 #, c-format
 msgid "%s (%s, server %s)\n"
 msgstr "%s (%s, servidor %s)\n"
 
-#: command.c:3224
+#: command.c:3368
 #, c-format
 msgid ""
 "WARNING: %s major version %s, server major version %s.\n"
@@ -426,30 +432,29 @@ msgstr ""
 "ADVERTENCIA: %s versión mayor %s, servidor versión mayor %s.\n"
 "          Algunas características de psql podrían no funcionar.\n"
 
-#: command.c:3263
+#: command.c:3407
 #, c-format
 msgid "SSL connection (protocol: %s, cipher: %s, bits: %s, compression: %s)\n"
 msgstr "conexión SSL (protocolo: %s, cifrado: %s, bits: %s, compresión: %s)\n"
 
-#: command.c:3264 command.c:3265 command.c:3266
+#: command.c:3408 command.c:3409 command.c:3410
 msgid "unknown"
 msgstr "desconocido"
 
-#: command.c:3267 help.c:46
+#: command.c:3411 help.c:45
 msgid "off"
 msgstr "desactivado"
 
-#: command.c:3267 help.c:46
+#: command.c:3411 help.c:45
 msgid "on"
 msgstr "activado"
 
-#: command.c:3281
+#: command.c:3425
 #, c-format
-#| msgid "GSSAPI Encrypted connection\n"
 msgid "GSSAPI-encrypted connection\n"
 msgstr "Conexión Cifrada GSSAPI\n"
 
-#: command.c:3301
+#: command.c:3445
 #, c-format
 msgid ""
 "WARNING: Console code page (%u) differs from Windows code page (%u)\n"
@@ -462,259 +467,259 @@ msgstr ""
 "            Vea la página de referencia de psql «Notes for Windows users»\n"
 "            para obtener más detalles.\n"
 
-#: command.c:3405
+#: command.c:3549
 #, c-format
 msgid "environment variable PSQL_EDITOR_LINENUMBER_ARG must be set to specify a line number"
 msgstr "la variable de ambiente PSQL_EDITOR_LINENUMBER_SWITCH debe estar definida para poder especificar un número de línea"
 
-#: command.c:3434
+#: command.c:3578
 #, c-format
 msgid "could not start editor \"%s\""
 msgstr "no se pudo iniciar el editor «%s»"
 
-#: command.c:3436
+#: command.c:3580
 #, c-format
 msgid "could not start /bin/sh"
 msgstr "no se pudo iniciar /bin/sh"
 
-#: command.c:3474
+#: command.c:3618
 #, c-format
 msgid "could not locate temporary directory: %s"
 msgstr "no se pudo ubicar el directorio temporal: %s"
 
-#: command.c:3501
+#: command.c:3645
 #, c-format
 msgid "could not open temporary file \"%s\": %m"
 msgstr "no se pudo abrir archivo temporal «%s»: %m"
 
-#: command.c:3794
+#: command.c:3950
 #, c-format
 msgid "\\pset: ambiguous abbreviation \"%s\" matches both \"%s\" and \"%s\""
 msgstr "\\pset: abreviación ambigua «%s» coincide tanto con «%s» como con «%s»"
 
-#: command.c:3814
+#: command.c:3970
 #, c-format
 msgid "\\pset: allowed formats are aligned, asciidoc, csv, html, latex, latex-longtable, troff-ms, unaligned, wrapped"
 msgstr "\\pset: formatos permitidos son aligned, asciidoc, csv, html, latex, latex-longtable, troff-ms, unaligned, wrapped"
 
-#: command.c:3833
+#: command.c:3989
 #, c-format
 msgid "\\pset: allowed line styles are ascii, old-ascii, unicode"
 msgstr "\\pset: estilos de línea permitidos son ascii, old-ascii, unicode"
 
-#: command.c:3848
+#: command.c:4004
 #, c-format
 msgid "\\pset: allowed Unicode border line styles are single, double"
 msgstr "\\pset: estilos de línea Unicode de borde permitidos son single, double"
 
-#: command.c:3863
+#: command.c:4019
 #, c-format
 msgid "\\pset: allowed Unicode column line styles are single, double"
 msgstr "\\pset: estilos de línea Unicode de columna permitidos son single, double"
 
-#: command.c:3878
+#: command.c:4034
 #, c-format
 msgid "\\pset: allowed Unicode header line styles are single, double"
 msgstr "\\pset: estilos de línea Unicode de encabezado permitidos son single, double"
 
-#: command.c:3921
+#: command.c:4077
 #, c-format
 msgid "\\pset: csv_fieldsep must be a single one-byte character"
 msgstr "\\pset: csv_fieldsep debe ser un carácter de un solo byte"
 
-#: command.c:3926
+#: command.c:4082
 #, c-format
 msgid "\\pset: csv_fieldsep cannot be a double quote, a newline, or a carriage return"
 msgstr "\\pset: csv_fieldset ni puede ser una comilla doble, un salto de línea, o un retorno de carro"
 
-#: command.c:4063 command.c:4249
+#: command.c:4219 command.c:4407
 #, c-format
 msgid "\\pset: unknown option: %s"
 msgstr "\\pset: opción desconocida: %s"
 
-#: command.c:4081
+#: command.c:4239
 #, c-format
 msgid "Border style is %d.\n"
 msgstr "El estilo de borde es %d.\n"
 
-#: command.c:4087
+#: command.c:4245
 #, c-format
 msgid "Target width is unset.\n"
 msgstr "El ancho no está definido.\n"
 
-#: command.c:4089
+#: command.c:4247
 #, c-format
 msgid "Target width is %d.\n"
 msgstr "El ancho es %d.\n"
 
-#: command.c:4096
+#: command.c:4254
 #, c-format
 msgid "Expanded display is on.\n"
 msgstr "Se ha activado el despliegue expandido.\n"
 
-#: command.c:4098
+#: command.c:4256
 #, c-format
 msgid "Expanded display is used automatically.\n"
 msgstr "El despliegue expandido se usa automáticamente.\n"
 
-#: command.c:4100
+#: command.c:4258
 #, c-format
 msgid "Expanded display is off.\n"
 msgstr "Se ha desactivado el despliegue expandido.\n"
 
-#: command.c:4106
+#: command.c:4264
 #, c-format
 msgid "Field separator for CSV is \"%s\".\n"
 msgstr "El separador de campos para CSV es «%s».\n"
 
-#: command.c:4114 command.c:4122
+#: command.c:4272 command.c:4280
 #, c-format
 msgid "Field separator is zero byte.\n"
 msgstr "El separador de campos es el byte cero.\n"
 
-#: command.c:4116
+#: command.c:4274
 #, c-format
 msgid "Field separator is \"%s\".\n"
 msgstr "El separador de campos es «%s».\n"
 
-#: command.c:4129
+#: command.c:4287
 #, c-format
 msgid "Default footer is on.\n"
 msgstr "El pie por omisión está activo.\n"
 
-#: command.c:4131
+#: command.c:4289
 #, c-format
 msgid "Default footer is off.\n"
 msgstr "El pie de página por omisión está desactivado.\n"
 
-#: command.c:4137
+#: command.c:4295
 #, c-format
 msgid "Output format is %s.\n"
 msgstr "El formato de salida es %s.\n"
 
-#: command.c:4143
+#: command.c:4301
 #, c-format
 msgid "Line style is %s.\n"
 msgstr "El estilo de línea es %s.\n"
 
-#: command.c:4150
+#: command.c:4308
 #, c-format
 msgid "Null display is \"%s\".\n"
 msgstr "Despliegue de nulos es «%s».\n"
 
-#: command.c:4158
+#: command.c:4316
 #, c-format
 msgid "Locale-adjusted numeric output is on.\n"
 msgstr "La salida numérica ajustada localmente está habilitada.\n"
 
-#: command.c:4160
+#: command.c:4318
 #, c-format
 msgid "Locale-adjusted numeric output is off.\n"
 msgstr "La salida numérica ajustada localmente está deshabilitada.\n"
 
-#: command.c:4167
+#: command.c:4325
 #, c-format
 msgid "Pager is used for long output.\n"
 msgstr "El paginador se usará para salida larga.\n"
 
-#: command.c:4169
+#: command.c:4327
 #, c-format
 msgid "Pager is always used.\n"
 msgstr "El paginador se usará siempre.\n"
 
-#: command.c:4171
+#: command.c:4329
 #, c-format
 msgid "Pager usage is off.\n"
 msgstr "El paginador no se usará.\n"
 
-#: command.c:4177
+#: command.c:4335
 #, c-format
 msgid "Pager won't be used for less than %d line.\n"
 msgid_plural "Pager won't be used for less than %d lines.\n"
 msgstr[0] "El paginador no se usará para menos de %d línea.\n"
 msgstr[1] "El paginador no se usará para menos de %d líneas.\n"
 
-#: command.c:4187 command.c:4197
+#: command.c:4345 command.c:4355
 #, c-format
 msgid "Record separator is zero byte.\n"
 msgstr "El separador de filas es el byte cero.\n"
 
-#: command.c:4189
+#: command.c:4347
 #, c-format
 msgid "Record separator is <newline>.\n"
 msgstr "El separador de filas es <salto de línea>.\n"
 
-#: command.c:4191
+#: command.c:4349
 #, c-format
 msgid "Record separator is \"%s\".\n"
 msgstr "El separador de filas es «%s».\n"
 
-#: command.c:4204
+#: command.c:4362
 #, c-format
 msgid "Table attributes are \"%s\".\n"
 msgstr "Los atributos de tabla son «%s».\n"
 
-#: command.c:4207
+#: command.c:4365
 #, c-format
 msgid "Table attributes unset.\n"
 msgstr "Los atributos de tabla han sido indefinidos.\n"
 
-#: command.c:4214
+#: command.c:4372
 #, c-format
 msgid "Title is \"%s\".\n"
 msgstr "El título es «%s».\n"
 
-#: command.c:4216
+#: command.c:4374
 #, c-format
 msgid "Title is unset.\n"
 msgstr "El título ha sido indefinido.\n"
 
-#: command.c:4223
+#: command.c:4381
 #, c-format
 msgid "Tuples only is on.\n"
 msgstr "Mostrar sólo filas está activado.\n"
 
-#: command.c:4225
+#: command.c:4383
 #, c-format
 msgid "Tuples only is off.\n"
 msgstr "Mostrar sólo filas está desactivado.\n"
 
-#: command.c:4231
+#: command.c:4389
 #, c-format
 msgid "Unicode border line style is \"%s\".\n"
 msgstr "El estilo Unicode de borde es «%s».\n"
 
-#: command.c:4237
+#: command.c:4395
 #, c-format
 msgid "Unicode column line style is \"%s\".\n"
 msgstr "El estilo de línea Unicode de columna es «%s».\n"
 
-#: command.c:4243
+#: command.c:4401
 #, c-format
 msgid "Unicode header line style is \"%s\".\n"
 msgstr "El estilo de línea Unicode de encabezado es «%s».\n"
 
-#: command.c:4405
+#: command.c:4634
 #, c-format
 msgid "\\!: failed"
 msgstr "\\!: falló"
 
-#: command.c:4430 common.c:795
+#: command.c:4659 common.c:648
 #, c-format
 msgid "\\watch cannot be used with an empty query"
 msgstr "\\watch no puede ser usado con una consulta vacía"
 
-#: command.c:4471
+#: command.c:4700
 #, c-format
 msgid "%s\t%s (every %gs)\n"
 msgstr "%s\t%s (cada %gs)\n"
 
-#: command.c:4474
+#: command.c:4703
 #, c-format
 msgid "%s (every %gs)\n"
 msgstr "%s (cada %gs)\n"
 
-#: command.c:4528 command.c:4535 common.c:695 common.c:702 common.c:1359
+#: command.c:4757 command.c:4764 common.c:548 common.c:555 common.c:1220
 #, c-format
 msgid ""
 "********* QUERY **********\n"
@@ -727,107 +732,113 @@ msgstr ""
 "**************************\n"
 "\n"
 
-#: command.c:4727
+#: command.c:4956
 #, c-format
 msgid "\"%s.%s\" is not a view"
 msgstr "«%s.%s» no es una vista"
 
-#: command.c:4743
+#: command.c:4972
 #, c-format
 msgid "could not parse reloptions array"
 msgstr "no se pudo interpretar el array reloptions"
 
-#: common.c:160
+#: common.c:159
 #, c-format
 msgid "cannot escape without active connection"
 msgstr "no se puede escapar sin una conexión activa"
 
-#: common.c:201
+#: common.c:200
 #, c-format
 msgid "shell command argument contains a newline or carriage return: \"%s\""
 msgstr "el argumento de la orden de shell contiene un salto de línea o retorno de carro: «%s»"
 
-#: common.c:395
+#: common.c:304
 #, c-format
 msgid "connection to server was lost"
 msgstr "se ha perdido la conexión al servidor"
 
-#: common.c:399
+#: common.c:308
 #, c-format
 msgid "The connection to the server was lost. Attempting reset: "
 msgstr "La conexión al servidor se ha perdido. Intentando reiniciar: "
 
-#: common.c:404
+#: common.c:313
 #, c-format
 msgid "Failed.\n"
 msgstr "falló.\n"
 
-#: common.c:417
+#: common.c:326
 #, c-format
 msgid "Succeeded.\n"
 msgstr "con éxito.\n"
 
-#: common.c:525 common.c:1077 common.c:1294
+#: common.c:378 common.c:938 common.c:1155
 #, c-format
 msgid "unexpected PQresultStatus: %d"
 msgstr "PQresultStatus no esperado: %d"
 
-#: common.c:634
+#: common.c:487
 #, c-format
 msgid "Time: %.3f ms\n"
 msgstr "Duración: %.3f ms\n"
 
-#: common.c:649
+#: common.c:502
 #, c-format
 msgid "Time: %.3f ms (%02d:%06.3f)\n"
 msgstr "Duración: %.3f ms (%02d:%06.3f)\n"
 
-#: common.c:658
+#: common.c:511
 #, c-format
 msgid "Time: %.3f ms (%02d:%02d:%06.3f)\n"
 msgstr "Duración: %.3f ms (%02d:%02d:%06.3f)\n"
 
-#: common.c:665
+#: common.c:518
 #, c-format
 msgid "Time: %.3f ms (%.0f d %02d:%02d:%06.3f)\n"
 msgstr "Duración: %.3f ms (%.0f d %02d:%02d:%06.3f)\n"
 
-#: common.c:689 common.c:747 common.c:1330
+#: common.c:542 common.c:600 common.c:1191
 #, c-format
 msgid "You are currently not connected to a database."
 msgstr "No está conectado a una base de datos."
 
-#: common.c:802
+#: common.c:655
 #, c-format
 msgid "\\watch cannot be used with COPY"
 msgstr "no se puede usar \\watch con COPY"
 
-#: common.c:807
+#: common.c:660
 #, c-format
 msgid "unexpected result status for \\watch"
 msgstr "Estado de resultado inesperado de \\watch"
 
-#: common.c:837
+#: common.c:690
 #, c-format
 msgid "Asynchronous notification \"%s\" with payload \"%s\" received from server process with PID %d.\n"
 msgstr "Notificación asíncrona «%s» con carga «%s» recibida del proceso de servidor con PID %d.\n"
 
-#: common.c:840
+#: common.c:693
 #, c-format
 msgid "Asynchronous notification \"%s\" received from server process with PID %d.\n"
 msgstr "Notificación asíncrona «%s» recibida del proceso de servidor con PID %d.\n"
 
-#: common.c:903
+#: common.c:726 common.c:743
+#, fuzzy, c-format
+#| msgid "could not read input file: %m"
+msgid "could not print result table: %m"
+msgstr "no se pudo leer el archivo de entrada: %m"
+
+#: common.c:764
 #, c-format
 msgid "no rows returned for \\gset"
 msgstr "\\gset no retornó renglón alguno"
 
-#: common.c:908
+#: common.c:769
 #, c-format
 msgid "more than one row returned for \\gset"
 msgstr "\\gset retornó más de un renglón"
 
-#: common.c:1339
+#: common.c:1200
 #, c-format
 msgid ""
 "***(Single step mode: verify command)*******************************************\n"
@@ -838,92 +849,92 @@ msgstr ""
 "%s\n"
 "***(presione enter para continuar, o x y enter para cancelar)*******************\n"
 
-#: common.c:1394
+#: common.c:1255
 #, c-format
 msgid "The server (version %s) does not support savepoints for ON_ERROR_ROLLBACK."
 msgstr "El servidor (versión %s) no soporta savepoints para ON_ERROR_ROLLBACK."
 
-#: common.c:1457
+#: common.c:1318
 #, c-format
 msgid "STATEMENT:  %s"
 msgstr "SENTENCIA:  %s"
 
-#: common.c:1500
+#: common.c:1361
 #, c-format
 msgid "unexpected transaction status (%d)"
 msgstr "estado de transacción inesperado (%d)"
 
-#: common.c:1637 describe.c:2002
+#: common.c:1502 describe.c:2001
 msgid "Column"
 msgstr "Columna"
 
-#: common.c:1638 describe.c:179 describe.c:394 describe.c:412 describe.c:457
-#: describe.c:474 describe.c:963 describe.c:1127 describe.c:1712
-#: describe.c:1736 describe.c:2003 describe.c:3674 describe.c:3859
-#: describe.c:4092 describe.c:5298
+#: common.c:1503 describe.c:177 describe.c:393 describe.c:411 describe.c:456
+#: describe.c:473 describe.c:962 describe.c:1126 describe.c:1711
+#: describe.c:1735 describe.c:2002 describe.c:3719 describe.c:3929
+#: describe.c:4162 describe.c:5368
 msgid "Type"
 msgstr "Tipo"
 
-#: common.c:1687
+#: common.c:1552
 #, c-format
 msgid "The command has no result, or the result has no columns.\n"
 msgstr "La orden no tiene resultado, o el resultado no tiene columnas.\n"
 
-#: copy.c:100
+#: copy.c:98
 #, c-format
 msgid "\\copy: arguments required"
 msgstr "\\copy: argumentos requeridos"
 
-#: copy.c:255
+#: copy.c:253
 #, c-format
 msgid "\\copy: parse error at \"%s\""
 msgstr "\\copy: error de procesamiento en «%s»"
 
-#: copy.c:257
+#: copy.c:255
 #, c-format
 msgid "\\copy: parse error at end of line"
 msgstr "\\copy: error de procesamiento al final de la línea"
 
-#: copy.c:330
+#: copy.c:328
 #, c-format
 msgid "could not execute command \"%s\": %m"
 msgstr "no se pudo ejecutar la orden «%s»: %m"
 
-#: copy.c:346
+#: copy.c:344
 #, c-format
 msgid "could not stat file \"%s\": %m"
 msgstr "no se pudo hacer stat al archivo «%s»: %m"
 
-#: copy.c:350
+#: copy.c:348
 #, c-format
 msgid "%s: cannot copy from/to a directory"
 msgstr "%s: no se puede copiar desde/hacia un directorio"
 
-#: copy.c:387
+#: copy.c:385
 #, c-format
 msgid "could not close pipe to external command: %m"
 msgstr "no se pudo cerrar la tubería a la orden externa: %m"
 
-#: copy.c:392
+#: copy.c:390
 #, c-format
 msgid "%s: %s"
 msgstr "%s: %s"
 
-#: copy.c:455 copy.c:465
+#: copy.c:453 copy.c:463
 #, c-format
 msgid "could not write COPY data: %m"
 msgstr "no se pudo escribir datos COPY: %m"
 
-#: copy.c:471
+#: copy.c:469
 #, c-format
 msgid "COPY data transfer failed: %s"
 msgstr "falló la transferencia de datos COPY: %s"
 
-#: copy.c:532
+#: copy.c:530
 msgid "canceled by user"
 msgstr "cancelada por el usuario"
 
-#: copy.c:543
+#: copy.c:541
 msgid ""
 "Enter data to be copied followed by a newline.\n"
 "End with a backslash and a period on a line by itself, or an EOF signal."
@@ -931,1144 +942,1167 @@ msgstr ""
 "Ingrese los datos a ser copiados seguidos de un fin de línea.\n"
 "Termine con un backslash y un punto, o una señal EOF."
 
-#: copy.c:671
+#: copy.c:669
 msgid "aborted because of read failure"
 msgstr "se abortó por un error de lectura"
 
-#: copy.c:705
+#: copy.c:703
 msgid "trying to exit copy mode"
 msgstr "tratando de salir del modo copy"
 
-#: crosstabview.c:124
+#: crosstabview.c:123
 #, c-format
 msgid "\\crosstabview: statement did not return a result set"
 msgstr "\\crosstabview: la sentencia no produjo un conjunto de resultados"
 
-#: crosstabview.c:130
+#: crosstabview.c:129
 #, c-format
 msgid "\\crosstabview: query must return at least three columns"
 msgstr "\\crosstabview: la consulta debe retornar al menos tres columnas"
 
-#: crosstabview.c:157
+#: crosstabview.c:156
 #, c-format
 msgid "\\crosstabview: vertical and horizontal headers must be different columns"
 msgstr "\\crosstabview: los encabezados verticales y horizontales deben ser columnas distintas"
 
-#: crosstabview.c:173
+#: crosstabview.c:172
 #, c-format
 msgid "\\crosstabview: data column must be specified when query returns more than three columns"
 msgstr "\\crosstabview: la columna de datos debe ser especificada cuando la consulta retorna más de tres columnas"
 
-#: crosstabview.c:229
+#: crosstabview.c:228
 #, c-format
 msgid "\\crosstabview: maximum number of columns (%d) exceeded"
 msgstr "\\crosstabview: se superó el número máximo de columnas (%d)"
 
-#: crosstabview.c:398
+#: crosstabview.c:397
 #, c-format
 msgid "\\crosstabview: query result contains multiple data values for row \"%s\", column \"%s\""
 msgstr "\\crosstabview: el resultado de la consulta contiene múltiples valores para la fila «%s», columna «%s»"
 
-#: crosstabview.c:646
+#: crosstabview.c:645
 #, c-format
 msgid "\\crosstabview: column number %d is out of range 1..%d"
 msgstr "\\crosstabview: el número de columna %d está fuera del rango 1..%d"
 
-#: crosstabview.c:671
+#: crosstabview.c:670
 #, c-format
 msgid "\\crosstabview: ambiguous column name: \"%s\""
 msgstr "\\crosstabview: nombre de columna «%s» ambiguo"
 
-#: crosstabview.c:679
+#: crosstabview.c:678
 #, c-format
 msgid "\\crosstabview: column name not found: \"%s\""
 msgstr "\\crosstabview: nombre de columna «%s» no encontrado"
 
-#: describe.c:77 describe.c:374 describe.c:679 describe.c:811 describe.c:955
-#: describe.c:1116 describe.c:1188 describe.c:3663 describe.c:3846
-#: describe.c:4090 describe.c:4181 describe.c:4448 describe.c:4608
-#: describe.c:4849 describe.c:4924 describe.c:4935 describe.c:4997
-#: describe.c:5422 describe.c:5505
+#: describe.c:75 describe.c:373 describe.c:678 describe.c:810 describe.c:954
+#: describe.c:1115 describe.c:1187 describe.c:3708 describe.c:3916
+#: describe.c:4160 describe.c:4251 describe.c:4518 describe.c:4678
+#: describe.c:4919 describe.c:4994 describe.c:5005 describe.c:5067
+#: describe.c:5492 describe.c:5575
 msgid "Schema"
 msgstr "Esquema"
 
-#: describe.c:78 describe.c:176 describe.c:244 describe.c:252 describe.c:375
-#: describe.c:680 describe.c:812 describe.c:873 describe.c:956 describe.c:1189
-#: describe.c:3664 describe.c:3847 describe.c:4013 describe.c:4091
-#: describe.c:4182 describe.c:4261 describe.c:4449 describe.c:4533
-#: describe.c:4609 describe.c:4850 describe.c:4925 describe.c:4936
-#: describe.c:4998 describe.c:5195 describe.c:5279 describe.c:5503
-#: describe.c:5675 describe.c:5900
+#: describe.c:76 describe.c:174 describe.c:242 describe.c:250 describe.c:374
+#: describe.c:679 describe.c:811 describe.c:872 describe.c:955 describe.c:1188
+#: describe.c:3709 describe.c:3917 describe.c:4083 describe.c:4161
+#: describe.c:4252 describe.c:4331 describe.c:4519 describe.c:4603
+#: describe.c:4679 describe.c:4920 describe.c:4995 describe.c:5006
+#: describe.c:5068 describe.c:5265 describe.c:5349 describe.c:5573
+#: describe.c:5745 describe.c:5985
 msgid "Name"
 msgstr "Nombre"
 
-#: describe.c:79 describe.c:387 describe.c:405 describe.c:451 describe.c:468
+#: describe.c:77 describe.c:386 describe.c:404 describe.c:450 describe.c:467
 msgid "Result data type"
 msgstr "Tipo de dato de salida"
 
-#: describe.c:87 describe.c:100 describe.c:104 describe.c:388 describe.c:406
-#: describe.c:452 describe.c:469
+#: describe.c:85 describe.c:98 describe.c:102 describe.c:387 describe.c:405
+#: describe.c:451 describe.c:468
 msgid "Argument data types"
 msgstr "Tipos de datos de argumentos"
 
-#: describe.c:112 describe.c:119 describe.c:187 describe.c:275 describe.c:514
-#: describe.c:728 describe.c:827 describe.c:898 describe.c:1191 describe.c:2021
-#: describe.c:3452 describe.c:3699 describe.c:3893 describe.c:4044
-#: describe.c:4118 describe.c:4191 describe.c:4274 describe.c:4357
-#: describe.c:4476 describe.c:4542 describe.c:4610 describe.c:4751
-#: describe.c:4793 describe.c:4866 describe.c:4928 describe.c:4937
-#: describe.c:4999 describe.c:5221 describe.c:5301 describe.c:5436
-#: describe.c:5506 large_obj.c:290 large_obj.c:300
+#: describe.c:110 describe.c:117 describe.c:185 describe.c:273 describe.c:513
+#: describe.c:727 describe.c:826 describe.c:897 describe.c:1190 describe.c:2020
+#: describe.c:3496 describe.c:3769 describe.c:3963 describe.c:4114
+#: describe.c:4188 describe.c:4261 describe.c:4344 describe.c:4427
+#: describe.c:4546 describe.c:4612 describe.c:4680 describe.c:4821
+#: describe.c:4863 describe.c:4936 describe.c:4998 describe.c:5007
+#: describe.c:5069 describe.c:5291 describe.c:5371 describe.c:5506
+#: describe.c:5576 large_obj.c:290 large_obj.c:300
 msgid "Description"
 msgstr "Descripción"
 
-#: describe.c:137
+#: describe.c:135
 msgid "List of aggregate functions"
 msgstr "Listado de funciones de agregación"
 
-#: describe.c:162
+#: describe.c:160
 #, c-format
 msgid "The server (version %s) does not support access methods."
 msgstr "El servidor (versión %s) no soporta métodos de acceso."
 
-#: describe.c:177
+#: describe.c:175
 msgid "Index"
 msgstr "Indice"
 
-#: describe.c:178 describe.c:3680 describe.c:3872 describe.c:5423
+#: describe.c:176 describe.c:3727 describe.c:3942 describe.c:5493
 msgid "Table"
 msgstr "Tabla"
 
-#: describe.c:186 describe.c:5200
+#: describe.c:184 describe.c:5270
 msgid "Handler"
 msgstr "Manejador"
 
-#: describe.c:205
+#: describe.c:203
 msgid "List of access methods"
 msgstr "Lista de métodos de acceso"
 
-#: describe.c:231
+#: describe.c:229
 #, c-format
 msgid "The server (version %s) does not support tablespaces."
 msgstr "El servidor (versión %s) no soporta tablespaces."
 
-#: describe.c:245 describe.c:253 describe.c:502 describe.c:718 describe.c:874
-#: describe.c:1115 describe.c:3675 describe.c:3848 describe.c:4017
-#: describe.c:4263 describe.c:4534 describe.c:5196 describe.c:5280
-#: describe.c:5676 describe.c:5802 describe.c:5901 large_obj.c:289
+#: describe.c:243 describe.c:251 describe.c:501 describe.c:717 describe.c:873
+#: describe.c:1114 describe.c:3720 describe.c:3918 describe.c:4087
+#: describe.c:4333 describe.c:4604 describe.c:5266 describe.c:5350
+#: describe.c:5746 describe.c:5883 describe.c:5986 describe.c:6101
+#: describe.c:6175 large_obj.c:289
 msgid "Owner"
 msgstr "Dueño"
 
-#: describe.c:246 describe.c:254
+#: describe.c:244 describe.c:252
 msgid "Location"
 msgstr "Ubicación"
 
-#: describe.c:265 describe.c:3270
+#: describe.c:263 describe.c:3313
 msgid "Options"
 msgstr "Opciones"
 
-#: describe.c:270 describe.c:691 describe.c:890 describe.c:3691 describe.c:3695
+#: describe.c:268 describe.c:690 describe.c:889 describe.c:3761 describe.c:3765
 msgid "Size"
 msgstr "Tamaño"
 
-#: describe.c:292
+#: describe.c:290
 msgid "List of tablespaces"
 msgstr "Listado de tablespaces"
 
-#: describe.c:334
+#: describe.c:333
 #, c-format
 msgid "\\df only takes [anptwS+] as options"
 msgstr "\\df sólo acepta las opciones [antpwS+]"
 
-#: describe.c:342 describe.c:353
+#: describe.c:341 describe.c:352
 #, c-format
 msgid "\\df does not take a \"%c\" option with server version %s"
 msgstr "\\df no acepta la opción «%c» en un servidor versión %s"
 
 #. translator: "agg" is short for "aggregate"
-#: describe.c:390 describe.c:408 describe.c:454 describe.c:471
+#: describe.c:389 describe.c:407 describe.c:453 describe.c:470
 msgid "agg"
 msgstr "agg"
 
-#: describe.c:391 describe.c:409
+#: describe.c:390 describe.c:408
 msgid "window"
 msgstr "ventana"
 
-#: describe.c:392
+#: describe.c:391
 msgid "proc"
 msgstr "proc"
 
-#: describe.c:393 describe.c:411 describe.c:456 describe.c:473
+#: describe.c:392 describe.c:410 describe.c:455 describe.c:472
 msgid "func"
 msgstr "func"
 
-#: describe.c:410 describe.c:455 describe.c:472 describe.c:1325
+#: describe.c:409 describe.c:454 describe.c:471 describe.c:1324
 msgid "trigger"
 msgstr "disparador"
 
-#: describe.c:484
+#: describe.c:483
 msgid "immutable"
 msgstr "inmutable"
 
-#: describe.c:485
+#: describe.c:484
 msgid "stable"
 msgstr "estable"
 
-#: describe.c:486
+#: describe.c:485
 msgid "volatile"
 msgstr "volátil"
 
-#: describe.c:487
+#: describe.c:486
 msgid "Volatility"
 msgstr "Volatilidad"
 
-#: describe.c:495
+#: describe.c:494
 msgid "restricted"
 msgstr "restringida"
 
-#: describe.c:496
+#: describe.c:495
 msgid "safe"
 msgstr "segura"
 
-#: describe.c:497
+#: describe.c:496
 msgid "unsafe"
 msgstr "insegura"
 
-#: describe.c:498
+#: describe.c:497
 msgid "Parallel"
 msgstr "Paralelismo"
 
-#: describe.c:503
+#: describe.c:502
 msgid "definer"
 msgstr "definidor"
 
-#: describe.c:504
+#: describe.c:503
 msgid "invoker"
 msgstr "invocador"
 
-#: describe.c:505
+#: describe.c:504
 msgid "Security"
 msgstr "Seguridad"
 
-#: describe.c:512
+#: describe.c:511
 msgid "Language"
 msgstr "Lenguaje"
 
-#: describe.c:513
+#: describe.c:512
 msgid "Source code"
 msgstr "Código fuente"
 
-#: describe.c:642
+#: describe.c:641
 msgid "List of functions"
 msgstr "Listado de funciones"
 
-#: describe.c:690
+#: describe.c:689
 msgid "Internal name"
 msgstr "Nombre interno"
 
-#: describe.c:712
+#: describe.c:711
 msgid "Elements"
 msgstr "Elementos"
 
-#: describe.c:769
+#: describe.c:768
 msgid "List of data types"
 msgstr "Listado de tipos de dato"
 
-#: describe.c:813
+#: describe.c:812 describe.c:6343
 msgid "Left arg type"
 msgstr "Tipo arg izq"
 
-#: describe.c:814
+#: describe.c:813 describe.c:6344
 msgid "Right arg type"
 msgstr "Tipo arg der"
 
-#: describe.c:815
+#: describe.c:814
 msgid "Result type"
 msgstr "Tipo resultado"
 
-#: describe.c:820 describe.c:4269 describe.c:4334 describe.c:4340
-#: describe.c:4750
+#: describe.c:819 describe.c:4339 describe.c:4404 describe.c:4410
+#: describe.c:4820
 msgid "Function"
 msgstr "Función"
 
-#: describe.c:845
+#: describe.c:844
 msgid "List of operators"
 msgstr "Listado de operadores"
 
-#: describe.c:875
+#: describe.c:874
 msgid "Encoding"
 msgstr "Codificación"
 
-#: describe.c:880 describe.c:4450
+#: describe.c:879 describe.c:4520
 msgid "Collate"
 msgstr "Collate"
 
-#: describe.c:881 describe.c:4451
+#: describe.c:880 describe.c:4521
 msgid "Ctype"
 msgstr "Ctype"
 
-#: describe.c:894
+#: describe.c:893
 msgid "Tablespace"
 msgstr "Tablespace"
 
-#: describe.c:916
+#: describe.c:915
 msgid "List of databases"
 msgstr "Listado de base de datos"
 
-#: describe.c:957 describe.c:1118 describe.c:3665
+#: describe.c:956 describe.c:1117 describe.c:3710
 msgid "table"
 msgstr "tabla"
 
-#: describe.c:958 describe.c:3666
+#: describe.c:957 describe.c:3711
 msgid "view"
 msgstr "vista"
 
-#: describe.c:959 describe.c:3667
+#: describe.c:958 describe.c:3712
 msgid "materialized view"
 msgstr "vistas materializadas"
 
-#: describe.c:960 describe.c:1120 describe.c:3669
+#: describe.c:959 describe.c:1119 describe.c:3714
 msgid "sequence"
 msgstr "secuencia"
 
-#: describe.c:961 describe.c:3671
+#: describe.c:960 describe.c:3716
 msgid "foreign table"
 msgstr "tabla foránea"
 
-#: describe.c:962 describe.c:3672 describe.c:3857
+#: describe.c:961 describe.c:3717 describe.c:3927
 msgid "partitioned table"
 msgstr "tabla particionada"
 
-#: describe.c:974
+#: describe.c:973
 msgid "Column privileges"
 msgstr "Privilegios de acceso a columnas"
 
-#: describe.c:1005 describe.c:1039
+#: describe.c:1004 describe.c:1038
 msgid "Policies"
 msgstr "Políticas"
 
-#: describe.c:1071 describe.c:5957 describe.c:5961
+#: describe.c:1070 describe.c:6042 describe.c:6046
 msgid "Access privileges"
 msgstr "Privilegios"
 
-#: describe.c:1102
+#: describe.c:1101
 #, c-format
 msgid "The server (version %s) does not support altering default privileges."
 msgstr "El servidor (versión %s) no soporta la alteración de privilegios por omisión."
 
-#: describe.c:1122
+#: describe.c:1121
 msgid "function"
 msgstr "función"
 
-#: describe.c:1124
+#: describe.c:1123
 msgid "type"
 msgstr "tipo"
 
-#: describe.c:1126
+#: describe.c:1125
 msgid "schema"
 msgstr "esquema"
 
-#: describe.c:1150
+#: describe.c:1149
 msgid "Default access privileges"
 msgstr "Privilegios de acceso por omisión"
 
-#: describe.c:1190
+#: describe.c:1189
 msgid "Object"
 msgstr "Objeto"
 
-#: describe.c:1204
+#: describe.c:1203
 msgid "table constraint"
 msgstr "restricción de tabla"
 
-#: describe.c:1226
+#: describe.c:1225
 msgid "domain constraint"
 msgstr "restricción de dominio"
 
-#: describe.c:1254
+#: describe.c:1253
 msgid "operator class"
 msgstr "clase de operadores"
 
-#: describe.c:1283
+#: describe.c:1282
 msgid "operator family"
 msgstr "familia de operadores"
 
-#: describe.c:1305
+#: describe.c:1304
 msgid "rule"
 msgstr "regla"
 
-#: describe.c:1347
+#: describe.c:1346
 msgid "Object descriptions"
 msgstr "Descripciones de objetos"
 
-#: describe.c:1403 describe.c:3763
+#: describe.c:1402 describe.c:3833
 #, c-format
 msgid "Did not find any relation named \"%s\"."
 msgstr "No se encontró relación llamada «%s»."
 
-#: describe.c:1406 describe.c:3766
+#: describe.c:1405 describe.c:3836
 #, c-format
 msgid "Did not find any relations."
 msgstr "No se encontró ninguna relación."
 
-#: describe.c:1661
+#: describe.c:1660
 #, c-format
 msgid "Did not find any relation with OID %s."
 msgstr "No se encontró relación con OID %s."
 
-#: describe.c:1713 describe.c:1737
+#: describe.c:1712 describe.c:1736
 msgid "Start"
 msgstr "Inicio"
 
-#: describe.c:1714 describe.c:1738
+#: describe.c:1713 describe.c:1737
 msgid "Minimum"
 msgstr "Mínimo"
 
-#: describe.c:1715 describe.c:1739
+#: describe.c:1714 describe.c:1738
 msgid "Maximum"
 msgstr "Máximo"
 
-#: describe.c:1716 describe.c:1740
+#: describe.c:1715 describe.c:1739
 msgid "Increment"
 msgstr "Incremento"
 
-#: describe.c:1717 describe.c:1741 describe.c:1872 describe.c:4185
-#: describe.c:4351 describe.c:4465 describe.c:4470
+#: describe.c:1716 describe.c:1740 describe.c:1871 describe.c:4255
+#: describe.c:4421 describe.c:4535 describe.c:4540 describe.c:6089
 msgid "yes"
 msgstr "sí"
 
-#: describe.c:1718 describe.c:1742 describe.c:1873 describe.c:4185
-#: describe.c:4348 describe.c:4465
+#: describe.c:1717 describe.c:1741 describe.c:1872 describe.c:4255
+#: describe.c:4418 describe.c:4535 describe.c:6090
 msgid "no"
 msgstr "no"
 
-#: describe.c:1719 describe.c:1743
+#: describe.c:1718 describe.c:1742
 msgid "Cycles?"
 msgstr "¿Cicla?"
 
-#: describe.c:1720 describe.c:1744
+#: describe.c:1719 describe.c:1743
 msgid "Cache"
 msgstr "Cache"
 
-#: describe.c:1787
+#: describe.c:1786
 #, c-format
 msgid "Owned by: %s"
 msgstr "Asociada a: %s"
 
-#: describe.c:1791
+#: describe.c:1790
 #, c-format
 msgid "Sequence for identity column: %s"
 msgstr "Secuencia para columna identidad: %s"
 
-#: describe.c:1798
+#: describe.c:1797
 #, c-format
 msgid "Sequence \"%s.%s\""
 msgstr "Secuencia «%s.%s»"
 
-#: describe.c:1934
+#: describe.c:1933
 #, c-format
 msgid "Unlogged table \"%s.%s\""
 msgstr "Tabla unlogged «%s.%s»"
 
-#: describe.c:1937
+#: describe.c:1936
 #, c-format
 msgid "Table \"%s.%s\""
 msgstr "Tabla «%s.%s»"
 
-#: describe.c:1941
+#: describe.c:1940
 #, c-format
 msgid "View \"%s.%s\""
 msgstr "Vista «%s.%s»"
 
-#: describe.c:1946
+#: describe.c:1945
 #, c-format
 msgid "Unlogged materialized view \"%s.%s\""
 msgstr "Vista materializada unlogged «%s.%s»"
 
-#: describe.c:1949
+#: describe.c:1948
 #, c-format
 msgid "Materialized view \"%s.%s\""
 msgstr "Vista materializada \"%s.%s\""
 
-#: describe.c:1954
+#: describe.c:1953
 #, c-format
 msgid "Unlogged index \"%s.%s\""
 msgstr "Índice unlogged «%s.%s»"
 
-#: describe.c:1957
+#: describe.c:1956
 #, c-format
 msgid "Index \"%s.%s\""
 msgstr "Índice «%s.%s»"
 
-#: describe.c:1962
+#: describe.c:1961
 #, c-format
 msgid "Unlogged partitioned index \"%s.%s\""
 msgstr "Índice particionado unlogged «%s.%s»"
 
-#: describe.c:1965
+#: describe.c:1964
 #, c-format
 msgid "Partitioned index \"%s.%s\""
 msgstr "Índice particionado «%s.%s»"
 
-#: describe.c:1970
+#: describe.c:1969
 #, c-format
 msgid "Special relation \"%s.%s\""
 msgstr "Relación especial «%s.%s»"
 
-#: describe.c:1974
+#: describe.c:1973
 #, c-format
 msgid "TOAST table \"%s.%s\""
 msgstr "Tabla TOAST «%s.%s»"
 
-#: describe.c:1978
+#: describe.c:1977
 #, c-format
 msgid "Composite type \"%s.%s\""
 msgstr "Tipo compuesto «%s.%s»"
 
-#: describe.c:1982
+#: describe.c:1981
 #, c-format
 msgid "Foreign table \"%s.%s\""
 msgstr "Tabla foránea «%s.%s»"
 
-#: describe.c:1987
+#: describe.c:1986
 #, c-format
 msgid "Unlogged partitioned table \"%s.%s\""
 msgstr "Tabla unlogged particionada «%s.%s»"
 
-#: describe.c:1990
+#: describe.c:1989
 #, c-format
 msgid "Partitioned table \"%s.%s\""
 msgstr "Tabla particionada «%s.%s»"
 
-#: describe.c:2006 describe.c:4098
+#: describe.c:2005 describe.c:4168
 msgid "Collation"
 msgstr "Ordenamiento"
 
-#: describe.c:2007 describe.c:4105
+#: describe.c:2006 describe.c:4175
 msgid "Nullable"
 msgstr "Nulable"
 
-#: describe.c:2008 describe.c:4106
+#: describe.c:2007 describe.c:4176
 msgid "Default"
 msgstr "Por omisión"
 
-#: describe.c:2011
+#: describe.c:2010
 msgid "Key?"
 msgstr "¿Llave?"
 
-#: describe.c:2013
+#: describe.c:2012
 msgid "Definition"
 msgstr "Definición"
 
-#: describe.c:2015 describe.c:5216 describe.c:5300 describe.c:5371
-#: describe.c:5435
+#: describe.c:2014 describe.c:5286 describe.c:5370 describe.c:5441
+#: describe.c:5505
 msgid "FDW options"
 msgstr "Opciones de FDW"
 
-#: describe.c:2017
+#: describe.c:2016
 msgid "Storage"
 msgstr "Almacenamiento"
 
-#: describe.c:2019
+#: describe.c:2018
 msgid "Stats target"
 msgstr "Estadísticas"
 
-#: describe.c:2132
+#: describe.c:2131
 #, c-format
 msgid "Partition of: %s %s"
 msgstr "Partición de: %s %s"
 
-#: describe.c:2144
+#: describe.c:2143
 msgid "No partition constraint"
 msgstr "Sin restricción de partición"
 
-#: describe.c:2146
+#: describe.c:2145
 #, c-format
 msgid "Partition constraint: %s"
 msgstr "Restricción de partición: %s"
 
-#: describe.c:2170
+#: describe.c:2169
 #, c-format
 msgid "Partition key: %s"
 msgstr "Llave de partición: %s"
 
-#: describe.c:2240
+#: describe.c:2195
+#, fuzzy, c-format
+#| msgid "Foreign table \"%s.%s\""
+msgid "Owning table: \"%s.%s\""
+msgstr "Tabla foránea «%s.%s»"
+
+#: describe.c:2266
 msgid "primary key, "
 msgstr "llave primaria, "
 
-#: describe.c:2242
+#: describe.c:2268
 msgid "unique, "
 msgstr "único, "
 
-#: describe.c:2248
+#: describe.c:2274
 #, c-format
 msgid "for table \"%s.%s\""
 msgstr "de tabla «%s.%s»"
 
-#: describe.c:2252
+#: describe.c:2278
 #, c-format
 msgid ", predicate (%s)"
 msgstr ", predicado (%s)"
 
-#: describe.c:2255
+#: describe.c:2281
 msgid ", clustered"
 msgstr ", clustered"
 
-#: describe.c:2258
+#: describe.c:2284
 msgid ", invalid"
 msgstr ", no válido"
 
-#: describe.c:2261
+#: describe.c:2287
 msgid ", deferrable"
 msgstr ", postergable"
 
-#: describe.c:2264
+#: describe.c:2290
 msgid ", initially deferred"
 msgstr ", inicialmente postergada"
 
-#: describe.c:2267
+#: describe.c:2293
 msgid ", replica identity"
 msgstr ", identidad de replicación"
 
-#: describe.c:2326
+#: describe.c:2360
 msgid "Indexes:"
 msgstr "Índices:"
 
-#: describe.c:2410
+#: describe.c:2444
 msgid "Check constraints:"
 msgstr "Restricciones CHECK:"
 
-#: describe.c:2478
+#: describe.c:2512
 msgid "Foreign-key constraints:"
 msgstr "Restricciones de llave foránea:"
 
-#: describe.c:2541
+#: describe.c:2575
 msgid "Referenced by:"
 msgstr "Referenciada por:"
 
-#: describe.c:2591
+#: describe.c:2625
 msgid "Policies:"
 msgstr "Políticas:"
 
-#: describe.c:2594
+#: describe.c:2628
 msgid "Policies (forced row security enabled):"
 msgstr "Políticas (seguridad de registros forzada):"
 
-#: describe.c:2597
+#: describe.c:2631
 msgid "Policies (row security enabled): (none)"
 msgstr "Políticas (seguridad de filas activa): (ninguna)"
 
-#: describe.c:2600
+#: describe.c:2634
 msgid "Policies (forced row security enabled): (none)"
 msgstr "Políticas (seguridad de filas forzada): (ninguna)"
 
-#: describe.c:2603
+#: describe.c:2637
 msgid "Policies (row security disabled):"
 msgstr "Políticas (seguridad de filas inactiva):"
 
-#: describe.c:2666
+#: describe.c:2700
 msgid "Statistics objects:"
 msgstr "Objetos de estadísticas:"
 
-#: describe.c:2775 describe.c:2879
+#: describe.c:2809 describe.c:2913
 msgid "Rules:"
 msgstr "Reglas:"
 
-#: describe.c:2778
+#: describe.c:2812
 msgid "Disabled rules:"
 msgstr "Reglas deshabilitadas:"
 
-#: describe.c:2781
+#: describe.c:2815
 msgid "Rules firing always:"
 msgstr "Reglas que se activan siempre:"
 
-#: describe.c:2784
+#: describe.c:2818
 msgid "Rules firing on replica only:"
 msgstr "Reglas que se activan sólo en las réplicas:"
 
-#: describe.c:2824
+#: describe.c:2858
 msgid "Publications:"
 msgstr "Publicaciones:"
 
-#: describe.c:2862
+#: describe.c:2896
 msgid "View definition:"
 msgstr "Definición de vista:"
 
-#: describe.c:3001
+#: describe.c:3043
 msgid "Triggers:"
 msgstr "Triggers:"
 
-#: describe.c:3005
+#: describe.c:3047
 msgid "Disabled user triggers:"
 msgstr "Disparadores de usuario deshabilitados:"
 
-#: describe.c:3007
+#: describe.c:3049
 msgid "Disabled triggers:"
 msgstr "Disparadores deshabilitados:"
 
-#: describe.c:3010
+#: describe.c:3052
 msgid "Disabled internal triggers:"
 msgstr "Disparadores internos deshabilitados:"
 
-#: describe.c:3013
+#: describe.c:3055
 msgid "Triggers firing always:"
 msgstr "Disparadores que siempre se ejecutan:"
 
-#: describe.c:3016
+#: describe.c:3058
 msgid "Triggers firing on replica only:"
 msgstr "Disparadores que se ejecutan sólo en las réplicas:"
 
-#: describe.c:3075
+#: describe.c:3130
 #, c-format
 msgid "Server: %s"
 msgstr "Servidor: %s"
 
-#: describe.c:3083
+#: describe.c:3138
 #, c-format
 msgid "FDW options: (%s)"
 msgstr "Opciones de FDW: (%s)"
 
-#: describe.c:3102
+#: describe.c:3159
 msgid "Inherits"
 msgstr "Hereda"
 
-#: describe.c:3161
+#: describe.c:3219
 #, c-format
 msgid "Number of partitions: %d"
 msgstr "Número de particiones: %d"
 
-#: describe.c:3170
-#, c-format
-msgid "Number of child tables: %d (Use \\d+ to list them.)"
-msgstr "Número de tablas hijas: %d (Use \\d+ para listarlas.)"
-
-#: describe.c:3172
+#: describe.c:3228
 #, c-format
 msgid "Number of partitions: %d (Use \\d+ to list them.)"
 msgstr "Número de particiones: %d (Use \\d+ para listarlas.)"
 
-#: describe.c:3180
+#: describe.c:3230
+#, c-format
+msgid "Number of child tables: %d (Use \\d+ to list them.)"
+msgstr "Número de tablas hijas: %d (Use \\d+ para listarlas.)"
+
+#: describe.c:3237
 msgid "Child tables"
 msgstr "Tablas hijas"
 
-#: describe.c:3180
+#: describe.c:3237
 msgid "Partitions"
 msgstr "Particiones"
 
-#: describe.c:3223
+#: describe.c:3266
 #, c-format
 msgid "Typed table of type: %s"
 msgstr "Tabla tipada de tipo: %s"
 
-#: describe.c:3239
+#: describe.c:3282
 msgid "Replica Identity"
 msgstr "Identidad de replicación"
 
-#: describe.c:3252
+#: describe.c:3295
 msgid "Has OIDs: yes"
 msgstr "Tiene OIDs: sí"
 
-#: describe.c:3261
+#: describe.c:3304
 #, c-format
 msgid "Access method: %s"
 msgstr "Método de acceso: %s"
 
-#: describe.c:3340
+#: describe.c:3384
 #, c-format
 msgid "Tablespace: \"%s\""
 msgstr "Tablespace: «%s»"
 
 #. translator: before this string there's an index description like
 #. '"foo_pkey" PRIMARY KEY, btree (a)'
-#: describe.c:3352
+#: describe.c:3396
 #, c-format
 msgid ", tablespace \"%s\""
 msgstr ", tablespace «%s»"
 
-#: describe.c:3445
+#: describe.c:3489
 msgid "List of roles"
 msgstr "Lista de roles"
 
-#: describe.c:3447
+#: describe.c:3491
 msgid "Role name"
 msgstr "Nombre de rol"
 
-#: describe.c:3448
+#: describe.c:3492
 msgid "Attributes"
 msgstr "Atributos"
 
-#: describe.c:3449
+#: describe.c:3493
 msgid "Member of"
 msgstr "Miembro de"
 
-#: describe.c:3460
+#: describe.c:3504
 msgid "Superuser"
 msgstr "Superusuario"
 
-#: describe.c:3463
+#: describe.c:3507
 msgid "No inheritance"
 msgstr "Sin herencia"
 
-#: describe.c:3466
+#: describe.c:3510
 msgid "Create role"
 msgstr "Crear rol"
 
-#: describe.c:3469
+#: describe.c:3513
 msgid "Create DB"
 msgstr "Crear BD"
 
-#: describe.c:3472
+#: describe.c:3516
 msgid "Cannot login"
 msgstr "No puede conectarse"
 
-#: describe.c:3476
+#: describe.c:3520
 msgid "Replication"
 msgstr "Replicación"
 
-#: describe.c:3480
+#: describe.c:3524
 msgid "Bypass RLS"
 msgstr "Ignora RLS"
 
-#: describe.c:3489
+#: describe.c:3533
 msgid "No connections"
 msgstr "Ninguna conexión"
 
-#: describe.c:3491
+#: describe.c:3535
 #, c-format
 msgid "%d connection"
 msgid_plural "%d connections"
 msgstr[0] "%d conexión"
 msgstr[1] "%d conexiones"
 
-#: describe.c:3501
+#: describe.c:3545
 msgid "Password valid until "
 msgstr "Constraseña válida hasta "
 
-#: describe.c:3551
+#: describe.c:3595
 #, c-format
 msgid "The server (version %s) does not support per-database role settings."
 msgstr "El servidor (versión %s) no soporta parámetros por base de datos y rol."
 
-#: describe.c:3564
+#: describe.c:3608
 msgid "Role"
 msgstr "Nombre de rol"
 
-#: describe.c:3565
+#: describe.c:3609
 msgid "Database"
 msgstr "Base de Datos"
 
-#: describe.c:3566
+#: describe.c:3610
 msgid "Settings"
 msgstr "Parámetros"
 
-#: describe.c:3587
+#: describe.c:3631
 #, c-format
 msgid "Did not find any settings for role \"%s\" and database \"%s\"."
 msgstr "No se encontró ningún parámetro para el rol «%s» y la base de datos «%s»."
 
-#: describe.c:3590
+#: describe.c:3634
 #, c-format
 msgid "Did not find any settings for role \"%s\"."
 msgstr "No se encontró ningún parámetro para el rol «%s»."
 
-#: describe.c:3593
+#: describe.c:3637
 #, c-format
 msgid "Did not find any settings."
 msgstr "No se encontró ningún parámetro."
 
-#: describe.c:3598
+#: describe.c:3642
 msgid "List of settings"
 msgstr "Listado de parámetros"
 
-#: describe.c:3668
+#: describe.c:3713
 msgid "index"
 msgstr "índice"
 
-#: describe.c:3670
+#: describe.c:3715
 msgid "special"
 msgstr "especial"
 
-#: describe.c:3673 describe.c:3858
+#: describe.c:3718 describe.c:3928
 msgid "partitioned index"
 msgstr "índice particionado"
 
-#: describe.c:3771
+#: describe.c:3742
+msgid "permanent"
+msgstr ""
+
+#: describe.c:3743
+msgid "temporary"
+msgstr ""
+
+#: describe.c:3744
+msgid "unlogged"
+msgstr ""
+
+#: describe.c:3745
+msgid "Persistence"
+msgstr ""
+
+#: describe.c:3841
 msgid "List of relations"
 msgstr "Listado de relaciones"
 
-#: describe.c:3819
+#: describe.c:3889
 #, c-format
 msgid "The server (version %s) does not support declarative table partitioning."
 msgstr "El servidor (versión %s) no soporta particionamiento declarativo de tablas."
 
-#: describe.c:3830
+#: describe.c:3900
 msgid "List of partitioned indexes"
 msgstr "Listado de índices particionados"
 
-#: describe.c:3832
+#: describe.c:3902
 msgid "List of partitioned tables"
 msgstr "Listado de tablas particionadas"
 
-#: describe.c:3836
+#: describe.c:3906
 msgid "List of partitioned relations"
 msgstr "Listado de relaciones particionadas"
 
-#: describe.c:3867
+#: describe.c:3937
 msgid "Parent name"
 msgstr "Nombre del padre"
 
-#: describe.c:3880
+#: describe.c:3950
 msgid "Leaf partition size"
 msgstr "Tamaño de particiones hoja"
 
-#: describe.c:3883 describe.c:3889
+#: describe.c:3953 describe.c:3959
 msgid "Total size"
 msgstr "Tamaño total"
 
-#: describe.c:4021
+#: describe.c:4091
 msgid "Trusted"
 msgstr "Confiable"
 
-#: describe.c:4029
+#: describe.c:4099
 msgid "Internal language"
 msgstr "Lenguaje interno"
 
-#: describe.c:4030
+#: describe.c:4100
 msgid "Call handler"
 msgstr "Manejador de llamada"
 
-#: describe.c:4031 describe.c:5203
+#: describe.c:4101 describe.c:5273
 msgid "Validator"
 msgstr "Validador"
 
-#: describe.c:4034
+#: describe.c:4104
 msgid "Inline handler"
 msgstr "Manejador en línea"
 
-#: describe.c:4062
+#: describe.c:4132
 msgid "List of languages"
 msgstr "Lista de lenguajes"
 
-#: describe.c:4107
+#: describe.c:4177
 msgid "Check"
 msgstr "Check"
 
-#: describe.c:4149
+#: describe.c:4219
 msgid "List of domains"
 msgstr "Listado de dominios"
 
-#: describe.c:4183
+#: describe.c:4253
 msgid "Source"
 msgstr "Fuente"
 
-#: describe.c:4184
+#: describe.c:4254
 msgid "Destination"
 msgstr "Destino"
 
-#: describe.c:4186
+#: describe.c:4256 describe.c:6091
 msgid "Default?"
 msgstr "Por omisión?"
 
-#: describe.c:4223
+#: describe.c:4293
 msgid "List of conversions"
 msgstr "Listado de conversiones"
 
-#: describe.c:4262
+#: describe.c:4332
 msgid "Event"
 msgstr "Evento"
 
-#: describe.c:4264
+#: describe.c:4334
 msgid "enabled"
 msgstr "activo"
 
-#: describe.c:4265
+#: describe.c:4335
 msgid "replica"
 msgstr "réplica"
 
-#: describe.c:4266
+#: describe.c:4336
 msgid "always"
 msgstr "siempre"
 
-#: describe.c:4267
+#: describe.c:4337
 msgid "disabled"
 msgstr "inactivo"
 
-#: describe.c:4268 describe.c:5902
+#: describe.c:4338 describe.c:5987
 msgid "Enabled"
 msgstr "Activo"
 
-#: describe.c:4270
+#: describe.c:4340
 msgid "Tags"
 msgstr "Etiquetas"
 
-#: describe.c:4289
+#: describe.c:4359
 msgid "List of event triggers"
 msgstr "Listado de disparadores por eventos"
 
-#: describe.c:4318
+#: describe.c:4388
 msgid "Source type"
 msgstr "Tipo fuente"
 
-#: describe.c:4319
+#: describe.c:4389
 msgid "Target type"
 msgstr "Tipo destino"
 
-#: describe.c:4350
+#: describe.c:4420
 msgid "in assignment"
 msgstr "en asignación"
 
-#: describe.c:4352
+#: describe.c:4422
 msgid "Implicit?"
 msgstr "Implícito?"
 
-#: describe.c:4407
+#: describe.c:4477
 msgid "List of casts"
 msgstr "Listado de conversiones de tipo (casts)"
 
-#: describe.c:4435
+#: describe.c:4505
 #, c-format
 msgid "The server (version %s) does not support collations."
 msgstr "El servidor (versión %s) no soporta «collations»."
 
-#: describe.c:4456 describe.c:4460
+#: describe.c:4526 describe.c:4530
 msgid "Provider"
 msgstr "Proveedor"
 
-#: describe.c:4466 describe.c:4471
+#: describe.c:4536 describe.c:4541
 msgid "Deterministic?"
 msgstr "¿Determinístico?"
 
-#: describe.c:4506
+#: describe.c:4576
 msgid "List of collations"
 msgstr "Listado de ordenamientos"
 
-#: describe.c:4565
+#: describe.c:4635
 msgid "List of schemas"
 msgstr "Listado de esquemas"
 
-#: describe.c:4590 describe.c:4837 describe.c:4908 describe.c:4979
+#: describe.c:4660 describe.c:4907 describe.c:4978 describe.c:5049
 #, c-format
 msgid "The server (version %s) does not support full text search."
 msgstr "El servidor (versión %s) no soporta búsqueda en texto."
 
-#: describe.c:4625
+#: describe.c:4695
 msgid "List of text search parsers"
 msgstr "Listado de analizadores de búsqueda en texto"
 
-#: describe.c:4670
+#: describe.c:4740
 #, c-format
 msgid "Did not find any text search parser named \"%s\"."
 msgstr "No se encontró ningún analizador de búsqueda en texto llamado «%s»."
 
-#: describe.c:4673
+#: describe.c:4743
 #, c-format
 msgid "Did not find any text search parsers."
 msgstr "No se encontró ningún analizador de búsqueda en texto."
 
-#: describe.c:4748
+#: describe.c:4818
 msgid "Start parse"
 msgstr "Inicio de parse"
 
-#: describe.c:4749
+#: describe.c:4819
 msgid "Method"
 msgstr "Método"
 
-#: describe.c:4753
+#: describe.c:4823
 msgid "Get next token"
 msgstr "Obtener siguiente elemento"
 
-#: describe.c:4755
+#: describe.c:4825
 msgid "End parse"
 msgstr "Fin de parse"
 
-#: describe.c:4757
+#: describe.c:4827
 msgid "Get headline"
 msgstr "Obtener encabezado"
 
-#: describe.c:4759
+#: describe.c:4829
 msgid "Get token types"
 msgstr "Obtener tipos de elemento"
 
-#: describe.c:4770
+#: describe.c:4840
 #, c-format
 msgid "Text search parser \"%s.%s\""
 msgstr "Analizador de búsqueda en texto «%s.%s»"
 
-#: describe.c:4773
+#: describe.c:4843
 #, c-format
 msgid "Text search parser \"%s\""
 msgstr "Analizador de búsqueda en texto «%s»"
 
-#: describe.c:4792
+#: describe.c:4862
 msgid "Token name"
 msgstr "Nombre de elemento"
 
-#: describe.c:4803
+#: describe.c:4873
 #, c-format
 msgid "Token types for parser \"%s.%s\""
 msgstr "Tipos de elemento para el analizador «%s.%s»"
 
-#: describe.c:4806
+#: describe.c:4876
 #, c-format
 msgid "Token types for parser \"%s\""
 msgstr "Tipos de elemento para el analizador «%s»"
 
-#: describe.c:4860
+#: describe.c:4930
 msgid "Template"
 msgstr "Plantilla"
 
-#: describe.c:4861
+#: describe.c:4931
 msgid "Init options"
 msgstr "Opciones de inicialización"
 
-#: describe.c:4883
+#: describe.c:4953
 msgid "List of text search dictionaries"
 msgstr "Listado de diccionarios de búsqueda en texto"
 
-#: describe.c:4926
+#: describe.c:4996
 msgid "Init"
 msgstr "Inicializador"
 
-#: describe.c:4927
+#: describe.c:4997
 msgid "Lexize"
 msgstr "Fn. análisis léx."
 
-#: describe.c:4954
+#: describe.c:5024
 msgid "List of text search templates"
 msgstr "Listado de plantillas de búsqueda en texto"
 
-#: describe.c:5014
+#: describe.c:5084
 msgid "List of text search configurations"
 msgstr "Listado de configuraciones de búsqueda en texto"
 
-#: describe.c:5060
+#: describe.c:5130
 #, c-format
 msgid "Did not find any text search configuration named \"%s\"."
 msgstr "No se encontró una configuración de búsqueda en texto llamada «%s»."
 
-#: describe.c:5063
+#: describe.c:5133
 #, c-format
 msgid "Did not find any text search configurations."
 msgstr "No se encontró una configuración de búsqueda en texto."
 
-#: describe.c:5129
+#: describe.c:5199
 msgid "Token"
 msgstr "Elemento"
 
-#: describe.c:5130
+#: describe.c:5200
 msgid "Dictionaries"
 msgstr "Diccionarios"
 
-#: describe.c:5141
+#: describe.c:5211
 #, c-format
 msgid "Text search configuration \"%s.%s\""
 msgstr "Configuración de búsqueda en texto «%s.%s»"
 
-#: describe.c:5144
+#: describe.c:5214
 #, c-format
 msgid "Text search configuration \"%s\""
 msgstr "Configuración de búsqueda en texto «%s»"
 
-#: describe.c:5148
+#: describe.c:5218
 #, c-format
 msgid ""
 "\n"
@@ -2077,7 +2111,7 @@ msgstr ""
 "\n"
 "Analizador: «%s.%s»"
 
-#: describe.c:5151
+#: describe.c:5221
 #, c-format
 msgid ""
 "\n"
@@ -2086,156 +2120,262 @@ msgstr ""
 "\n"
 "Analizador: «%s»"
 
-#: describe.c:5185
+#: describe.c:5255
 #, c-format
 msgid "The server (version %s) does not support foreign-data wrappers."
 msgstr "El servidor (versión %s) no soporta conectores de datos externos."
 
-#: describe.c:5243
+#: describe.c:5313
 msgid "List of foreign-data wrappers"
 msgstr "Listado de conectores de datos externos"
 
-#: describe.c:5268
+#: describe.c:5338
 #, c-format
 msgid "The server (version %s) does not support foreign servers."
 msgstr "El servidor (versión %s) no soporta servidores foráneos."
 
-#: describe.c:5281
+#: describe.c:5351
 msgid "Foreign-data wrapper"
 msgstr "Conectores de datos externos"
 
-#: describe.c:5299 describe.c:5504
+#: describe.c:5369 describe.c:5574
 msgid "Version"
 msgstr "Versión"
 
-#: describe.c:5325
+#: describe.c:5395
 msgid "List of foreign servers"
 msgstr "Listado de servidores foráneos"
 
-#: describe.c:5350
+#: describe.c:5420
 #, c-format
 msgid "The server (version %s) does not support user mappings."
 msgstr "El servidor (versión %s) no soporta mapeos de usuario."
 
-#: describe.c:5360 describe.c:5424
+#: describe.c:5430 describe.c:5494
 msgid "Server"
 msgstr "Servidor"
 
-#: describe.c:5361
+#: describe.c:5431
 msgid "User name"
 msgstr "Nombre de usuario"
 
-#: describe.c:5386
+#: describe.c:5456
 msgid "List of user mappings"
 msgstr "Listado de mapeos de usuario"
 
-#: describe.c:5411
+#: describe.c:5481
 #, c-format
 msgid "The server (version %s) does not support foreign tables."
 msgstr "El servidor (versión %s) no soporta tablas foráneas."
 
-#: describe.c:5464
+#: describe.c:5534
 msgid "List of foreign tables"
 msgstr "Listado de tablas foráneas"
 
-#: describe.c:5489 describe.c:5546
+#: describe.c:5559 describe.c:5616
 #, c-format
 msgid "The server (version %s) does not support extensions."
 msgstr "El servidor (versión %s) no soporta extensiones."
 
-#: describe.c:5521
+#: describe.c:5591
 msgid "List of installed extensions"
 msgstr "Listado de extensiones instaladas"
 
-#: describe.c:5574
+#: describe.c:5644
 #, c-format
 msgid "Did not find any extension named \"%s\"."
 msgstr "No se encontró extensión llamada «%s»."
 
-#: describe.c:5577
+#: describe.c:5647
 #, c-format
 msgid "Did not find any extensions."
 msgstr "No se encontró ninguna extensión."
 
-#: describe.c:5621
+#: describe.c:5691
 msgid "Object description"
 msgstr "Descripción de objeto"
 
-#: describe.c:5631
+#: describe.c:5701
 #, c-format
 msgid "Objects in extension \"%s\""
 msgstr "Objetos en extensión «%s»"
 
-#: describe.c:5660 describe.c:5731
+#: describe.c:5730 describe.c:5806
 #, c-format
 msgid "The server (version %s) does not support publications."
 msgstr "El servidor (versión %s) no soporta publicaciones."
 
-#: describe.c:5677 describe.c:5803
+#: describe.c:5747 describe.c:5884
 msgid "All tables"
 msgstr "Todas las tablas"
 
-#: describe.c:5678 describe.c:5804
+#: describe.c:5748 describe.c:5885
 msgid "Inserts"
 msgstr "Inserts"
 
-#: describe.c:5679 describe.c:5805
+#: describe.c:5749 describe.c:5886
 msgid "Updates"
 msgstr "Updates"
 
-#: describe.c:5680 describe.c:5806
+#: describe.c:5750 describe.c:5887
 msgid "Deletes"
 msgstr "Deletes"
 
-#: describe.c:5684 describe.c:5808
+#: describe.c:5754 describe.c:5889
 msgid "Truncates"
 msgstr "Truncates"
 
-#: describe.c:5701
+#: describe.c:5758 describe.c:5891
+msgid "Via root"
+msgstr ""
+
+#: describe.c:5775
 msgid "List of publications"
 msgstr "Listado de publicaciones"
 
-#: describe.c:5769
+#: describe.c:5848
 #, c-format
 msgid "Did not find any publication named \"%s\"."
 msgstr "No se encontró publicación llamada «%s»."
 
-#: describe.c:5772
+#: describe.c:5851
 #, c-format
 msgid "Did not find any publications."
 msgstr "No se encontró ninguna publicación."
 
-#: describe.c:5799
+#: describe.c:5880
 #, c-format
 msgid "Publication %s"
 msgstr "Publicación %s"
 
-#: describe.c:5843
+#: describe.c:5928
 msgid "Tables:"
 msgstr "Tablas:"
 
-#: describe.c:5887
+#: describe.c:5972
 #, c-format
 msgid "The server (version %s) does not support subscriptions."
 msgstr "El servidor (versión %s) no soporta suscripciones."
 
-#: describe.c:5903
+#: describe.c:5988
 msgid "Publication"
 msgstr "Publicación"
 
-#: describe.c:5910
+#: describe.c:5995
 msgid "Synchronous commit"
 msgstr "Commit síncrono"
 
-#: describe.c:5911
+#: describe.c:5996
 msgid "Conninfo"
 msgstr "Conninfo"
 
-#: describe.c:5933
+#: describe.c:6018
 msgid "List of subscriptions"
 msgstr "Listado de suscripciones"
 
-#: help.c:74
+#: describe.c:6085 describe.c:6169 describe.c:6255 describe.c:6341
+msgid "AM"
+msgstr ""
+
+#: describe.c:6086
+#, fuzzy
+#| msgid "Result type"
+msgid "Input type"
+msgstr "Tipo resultado"
+
+#: describe.c:6087
+#, fuzzy
+#| msgid "storage_type"
+msgid "Storage type"
+msgstr "tipo_almacenamiento"
+
+#: describe.c:6088
+#, fuzzy
+#| msgid "operator class"
+msgid "Operator class"
+msgstr "clase de operadores"
+
+#: describe.c:6100 describe.c:6170 describe.c:6342
+#, fuzzy
+#| msgid "operator family"
+msgid "Operator family"
+msgstr "familia de operadores"
+
+#: describe.c:6127
+#, fuzzy
+#| msgid "List of operators"
+msgid "List of operator classes"
+msgstr "Listado de operadores"
+
+#: describe.c:6171
+msgid "Applicable types"
+msgstr ""
+
+#: describe.c:6206
+#, fuzzy
+#| msgid "List of operators"
+msgid "List of operator families"
+msgstr "Listado de operadores"
+
+#: describe.c:6256
+#, fuzzy
+#| msgid "family_name"
+msgid "Opfamily Name"
+msgstr "nombre_familia"
+
+#: describe.c:6257
+#, fuzzy
+#| msgid "operator"
+msgid "Operator"
+msgstr "operador"
+
+#: describe.c:6267
+#, fuzzy
+#| msgid "category"
+msgid "Strategy"
+msgstr "categoría"
+
+#: describe.c:6268
+msgid "ordering"
+msgstr ""
+
+#: describe.c:6269
+msgid "search"
+msgstr ""
+
+#: describe.c:6270
+msgid "Purpose"
+msgstr ""
+
+#: describe.c:6271
+#, fuzzy
+#| msgid "operator family"
+msgid "Sort opfamily"
+msgstr "familia de operadores"
+
+#: describe.c:6299
+#, fuzzy
+#| msgid "must be owner of operator family %s"
+msgid "List of operators of operator families"
+msgstr "debe ser dueño de la familia de operadores %s"
+
+#: describe.c:6345
+msgid "Number"
+msgstr ""
+
+#: describe.c:6346
+#, fuzzy
+#| msgid "Parent name"
+msgid "Proc name"
+msgstr "Nombre del padre"
+
+#: describe.c:6372
+#, fuzzy
+#| msgid "must be owner of operator family %s"
+msgid "List of procedures of operator families"
+msgstr "debe ser dueño de la familia de operadores %s"
+
+#: help.c:73
 #, c-format
 msgid ""
 "psql is the PostgreSQL interactive terminal.\n"
@@ -2244,12 +2384,12 @@ msgstr ""
 "psql es el terminal interactivo de PostgreSQL.\n"
 "\n"
 
-#: help.c:75 help.c:349 help.c:425 help.c:468
+#: help.c:74 help.c:355 help.c:431 help.c:474
 #, c-format
 msgid "Usage:\n"
 msgstr "Empleo:\n"
 
-#: help.c:76
+#: help.c:75
 #, c-format
 msgid ""
 "  psql [OPTION]... [DBNAME [USERNAME]]\n"
@@ -2258,34 +2398,34 @@ msgstr ""
 "  psql [OPCIONES]... [BASE-DE-DATOS [USUARIO]]\n"
 "\n"
 
-#: help.c:78
+#: help.c:77
 #, c-format
 msgid "General options:\n"
 msgstr "Opciones generales:\n"
 
-#: help.c:83
+#: help.c:82
 #, c-format
 msgid "  -c, --command=COMMAND    run only single command (SQL or internal) and exit\n"
 msgstr "  -c, --command=ORDEN  ejecutar sólo una orden (SQL o interna) y salir\n"
 
-#: help.c:84
+#: help.c:83
 #, c-format
 msgid "  -d, --dbname=DBNAME      database name to connect to (default: \"%s\")\n"
 msgstr ""
 "  -d, --dbname=NOMBRE  nombre de base de datos a conectarse\n"
 "                       (por omisión: «%s»)\n"
 
-#: help.c:85
+#: help.c:84
 #, c-format
 msgid "  -f, --file=FILENAME      execute commands from file, then exit\n"
 msgstr "  -f, --file=ARCHIVO   ejecutar órdenes desde archivo, luego salir\n"
 
-#: help.c:86
+#: help.c:85
 #, c-format
 msgid "  -l, --list               list available databases, then exit\n"
 msgstr "  -l, --list           listar bases de datos, luego salir\n"
 
-#: help.c:87
+#: help.c:86
 #, c-format
 msgid ""
 "  -v, --set=, --variable=NAME=VALUE\n"
@@ -2296,17 +2436,17 @@ msgstr ""
 "                       definir variable de psql NOMBRE a VALOR\n"
 "                       (p.ej. -v ON_ERROR_STOP=1)\n"
 
-#: help.c:90
+#: help.c:89
 #, c-format
 msgid "  -V, --version            output version information, then exit\n"
 msgstr "  -V, --version        mostrar información de versión, luego salir\n"
 
-#: help.c:91
+#: help.c:90
 #, c-format
 msgid "  -X, --no-psqlrc          do not read startup file (~/.psqlrc)\n"
 msgstr "  -X, --no-psqlrc      no leer archivo de configuración (~/.psqlrc)\n"
 
-#: help.c:92
+#: help.c:91
 #, c-format
 msgid ""
 "  -1 (\"one\"), --single-transaction\n"
@@ -2315,22 +2455,22 @@ msgstr ""
 "  -1 («uno»), --single-transaction\n"
 "                       ejecuta órdenes en una única transacción\n"
 
-#: help.c:94
+#: help.c:93
 #, c-format
 msgid "  -?, --help[=options]     show this help, then exit\n"
 msgstr "  -?, --help[=opcs]    mostrar esta ayuda, luego salir\n"
 
-#: help.c:95
+#: help.c:94
 #, c-format
 msgid "      --help=commands      list backslash commands, then exit\n"
 msgstr "      --help=commands  listar órdenes backslash, luego salir\n"
 
-#: help.c:96
+#: help.c:95
 #, c-format
 msgid "      --help=variables     list special variables, then exit\n"
 msgstr "      --help=variables listar variables especiales, luego salir\n"
 
-#: help.c:98
+#: help.c:97
 #, c-format
 msgid ""
 "\n"
@@ -2339,57 +2479,57 @@ msgstr ""
 "\n"
 "Opciones de entrada y salida:\n"
 
-#: help.c:99
+#: help.c:98
 #, c-format
 msgid "  -a, --echo-all           echo all input from script\n"
 msgstr "  -a, --echo-all       mostrar las órdenes del script\n"
 
-#: help.c:100
+#: help.c:99
 #, c-format
 msgid "  -b, --echo-errors        echo failed commands\n"
 msgstr "  -b, --echo-errors    mostrar órdenes fallidas\n"
 
-#: help.c:101
+#: help.c:100
 #, c-format
 msgid "  -e, --echo-queries       echo commands sent to server\n"
 msgstr "  -e, --echo-queries   mostrar órdenes enviadas al servidor\n"
 
-#: help.c:102
+#: help.c:101
 #, c-format
 msgid "  -E, --echo-hidden        display queries that internal commands generate\n"
 msgstr "  -E, --echo-hidden    mostrar consultas generadas por órdenes internas\n"
 
-#: help.c:103
+#: help.c:102
 #, c-format
 msgid "  -L, --log-file=FILENAME  send session log to file\n"
 msgstr "  -L, --log-file=ARCH  envía el registro de la sesión a un archivo\n"
 
-#: help.c:104
+#: help.c:103
 #, c-format
 msgid "  -n, --no-readline        disable enhanced command line editing (readline)\n"
 msgstr "  -n, --no-readline    deshabilitar edición de línea de órdenes (readline)\n"
 
-#: help.c:105
+#: help.c:104
 #, c-format
 msgid "  -o, --output=FILENAME    send query results to file (or |pipe)\n"
 msgstr "  -o, --output=ARCHIVO enviar resultados de consultas a archivo (u |orden)\n"
 
-#: help.c:106
+#: help.c:105
 #, c-format
 msgid "  -q, --quiet              run quietly (no messages, only query output)\n"
 msgstr "  -q, --quiet          modo silencioso (sin mensajes, sólo resultados)\n"
 
-#: help.c:107
+#: help.c:106
 #, c-format
 msgid "  -s, --single-step        single-step mode (confirm each query)\n"
 msgstr "  -s, --single-step    modo paso a paso (confirmar cada consulta)\n"
 
-#: help.c:108
+#: help.c:107
 #, c-format
 msgid "  -S, --single-line        single-line mode (end of line terminates SQL command)\n"
 msgstr "  -S, --single-line    modo de líneas (fin de línea termina la orden SQL)\n"
 
-#: help.c:110
+#: help.c:109
 #, c-format
 msgid ""
 "\n"
@@ -2398,17 +2538,17 @@ msgstr ""
 "\n"
 "Opciones de formato de salida:\n"
 
-#: help.c:111
+#: help.c:110
 #, c-format
 msgid "  -A, --no-align           unaligned table output mode\n"
 msgstr "  -A, --no-align       modo de salida desalineado\n"
 
-#: help.c:112
+#: help.c:111
 #, c-format
 msgid "      --csv                CSV (Comma-Separated Values) table output mode\n"
 msgstr "      --csv            modo de salida de tabla CSV (valores separados por comas)\n"
 
-#: help.c:113
+#: help.c:112
 #, c-format
 msgid ""
 "  -F, --field-separator=STRING\n"
@@ -2417,17 +2557,17 @@ msgstr ""
 "  -F, --field-separator=CADENA  separador de campos para salida desalineada\n"
 "                       (por omisión: «%s»)\n"
 
-#: help.c:116
+#: help.c:115
 #, c-format
 msgid "  -H, --html               HTML table output mode\n"
 msgstr "  -H, --html           modo de salida en tablas HTML\n"
 
-#: help.c:117
+#: help.c:116
 #, c-format
 msgid "  -P, --pset=VAR[=ARG]     set printing option VAR to ARG (see \\pset command)\n"
 msgstr "  -P, --pset=VAR[=ARG] definir opción de impresión VAR en ARG (ver orden \\pset)\n"
 
-#: help.c:118
+#: help.c:117
 #, c-format
 msgid ""
 "  -R, --record-separator=STRING\n"
@@ -2436,24 +2576,24 @@ msgstr ""
 "  -R, --record-separator=CADENA  separador de registros para salida desalineada\n"
 "                       (por omisión: salto de línea)\n"
 
-#: help.c:120
+#: help.c:119
 #, c-format
 msgid "  -t, --tuples-only        print rows only\n"
 msgstr "  -t, --tuples-only    sólo muestra registros\n"
 
-#: help.c:121
+#: help.c:120
 #, c-format
 msgid "  -T, --table-attr=TEXT    set HTML table tag attributes (e.g., width, border)\n"
 msgstr ""
 "  -T, --table-attr=TEXTO\n"
 "                       definir atributos de marcas de tabla HTML (ancho, borde)\n"
 
-#: help.c:122
+#: help.c:121
 #, c-format
 msgid "  -x, --expanded           turn on expanded table output\n"
 msgstr "  -x, --expanded       activar modo expandido de salida de tablas\n"
 
-#: help.c:123
+#: help.c:122
 #, c-format
 msgid ""
 "  -z, --field-separator-zero\n"
@@ -2462,7 +2602,7 @@ msgstr ""
 "  -z, --field-separator-zero\n"
 "                       definir separador de campos para salida desalineada al byte cero\n"
 
-#: help.c:125
+#: help.c:124
 #, c-format
 msgid ""
 "  -0, --record-separator-zero\n"
@@ -2471,7 +2611,7 @@ msgstr ""
 "  -0, --record-separator-zero\n"
 "                       definir separador de filas para salida desalineada al byte cero\n"
 
-#: help.c:128
+#: help.c:127
 #, c-format
 msgid ""
 "\n"
@@ -2480,42 +2620,42 @@ msgstr ""
 "\n"
 "Opciones de conexión:\n"
 
-#: help.c:131
+#: help.c:130
 #, c-format
 msgid "  -h, --host=HOSTNAME      database server host or socket directory (default: \"%s\")\n"
 msgstr ""
 "  -h, --host=NOMBRE    nombre del anfitrión o directorio de socket\n"
 "                       (por omisión: «%s»)\n"
 
-#: help.c:132
+#: help.c:131
 msgid "local socket"
 msgstr "socket local"
 
-#: help.c:135
+#: help.c:134
 #, c-format
 msgid "  -p, --port=PORT          database server port (default: \"%s\")\n"
 msgstr "  -p, --port=PUERTO    puerto del servidor (por omisión: «%s»)\n"
 
-#: help.c:141
+#: help.c:140
 #, c-format
 msgid "  -U, --username=USERNAME  database user name (default: \"%s\")\n"
 msgstr ""
 "  -U, --username=NOMBRE\n"
 "                       nombre de usuario  (por omisión: «%s»)\n"
 
-#: help.c:142
+#: help.c:141
 #, c-format
 msgid "  -w, --no-password        never prompt for password\n"
 msgstr "  -w, --no-password    nunca pedir contraseña\n"
 
-#: help.c:143
+#: help.c:142
 #, c-format
 msgid "  -W, --password           force password prompt (should happen automatically)\n"
 msgstr ""
 "  -W, --password       forzar petición de contraseña\n"
 "                       (debería ser automático)\n"
 
-#: help.c:145
+#: help.c:144
 #, c-format
 msgid ""
 "\n"
@@ -2530,10 +2670,15 @@ msgstr ""
 "en la documentación de PostgreSQL.\n"
 "\n"
 
+#: help.c:147
+#, c-format
+msgid "Report bugs to <%s>.\n"
+msgstr ""
+
 #: help.c:148
 #, c-format
-msgid "Report bugs to <pgsql-bugs@lists.postgresql.org>.\n"
-msgstr "Reporte errores a <pgsql-bugs@lists.postgresql.org>.\n"
+msgid "%s home page: <%s>\n"
+msgstr ""
 
 #: help.c:174
 #, c-format
@@ -2556,436 +2701,474 @@ msgid "  \\errverbose            show most recent error message at maximum verbo
 msgstr "  \\errverbose     mostrar error más reciente en máxima verbosidad\n"
 
 #: help.c:178
-#, c-format
-msgid "  \\g [FILE] or ;         execute query (and send results to file or |pipe)\n"
+#, fuzzy, c-format
+#| msgid "  \\g [FILE] or ;         execute query (and send results to file or |pipe)\n"
+msgid "  \\g [(OPTIONS)] [FILE]  execute query (and send results to file or |pipe);\n"
 msgstr ""
 "  \\g [ARCH] o ;   enviar búfer de consulta al servidor\n"
 "                  (y resultados a archivo u |orden)\n"
 
 #: help.c:179
+#, fuzzy, c-format
+#| msgid "  -e, --echo                      show the commands being sent to the server\n"
+msgid "                         \\g with no arguments is equivalent to a semicolon\n"
+msgstr "  -e, --echo                mostrar las órdenes enviadas al servidor\n"
+
+#: help.c:180
 #, c-format
 msgid "  \\gdesc                 describe result of query, without executing it\n"
 msgstr "  \\gdesc              describir resultado de la consulta, sin ejecutarla\n"
 
-#: help.c:180
+#: help.c:181
 #, c-format
 msgid "  \\gexec                 execute query, then execute each value in its result\n"
 msgstr "  \\gexec          ejecutar la consulta, luego ejecuta cada valor del resultado\n"
 
-#: help.c:181
+#: help.c:182
 #, c-format
 msgid "  \\gset [PREFIX]         execute query and store results in psql variables\n"
 msgstr ""
 "  \\gset [PREFIJO] ejecutar la consulta y almacenar los resultados en variables\n"
 "                  de psql\n"
 
-#: help.c:182
-#, c-format
-msgid "  \\gx [FILE]             as \\g, but forces expanded output mode\n"
+#: help.c:183
+#, fuzzy, c-format
+#| msgid "  \\gx [FILE]             as \\g, but forces expanded output mode\n"
+msgid "  \\gx [(OPTIONS)] [FILE] as \\g, but forces expanded output mode\n"
 msgstr "  \\gx [ARCHIVO]   como \\g, pero fuerza modo de salida expandido\n"
 
-#: help.c:183
+#: help.c:184
 #, c-format
 msgid "  \\q                     quit psql\n"
 msgstr "  \\q              salir de psql\n"
 
-#: help.c:184
+#: help.c:185
 #, c-format
 msgid "  \\watch [SEC]           execute query every SEC seconds\n"
 msgstr "  \\watch [SEGS]   ejecutar consulta cada SEGS segundos\n"
 
-#: help.c:187
+#: help.c:188
 #, c-format
 msgid "Help\n"
 msgstr "Ayuda\n"
 
-#: help.c:189
+#: help.c:190
 #, c-format
 msgid "  \\? [commands]          show help on backslash commands\n"
 msgstr "  \\? [commands]   desplegar ayuda sobre las órdenes backslash\n"
 
-#: help.c:190
+#: help.c:191
 #, c-format
 msgid "  \\? options             show help on psql command-line options\n"
 msgstr "  \\? options      desplegar ayuda sobre opciones de línea de órdenes\n"
 
-#: help.c:191
+#: help.c:192
 #, c-format
 msgid "  \\? variables           show help on special variables\n"
 msgstr "  \\? variables    desplegar ayuda sobre variables especiales\n"
 
-#: help.c:192
+#: help.c:193
 #, c-format
 msgid "  \\h [NAME]              help on syntax of SQL commands, * for all commands\n"
 msgstr ""
 "  \\h [NOMBRE]     mostrar ayuda de sintaxis de órdenes SQL;\n"
 "                  use «*» para todas las órdenes\n"
 
-#: help.c:195
+#: help.c:196
 #, c-format
 msgid "Query Buffer\n"
 msgstr "Búfer de consulta\n"
 
-#: help.c:196
+#: help.c:197
 #, c-format
 msgid "  \\e [FILE] [LINE]       edit the query buffer (or file) with external editor\n"
 msgstr ""
 "  \\e [ARCHIVO] [LÍNEA]\n"
 "                  editar el búfer de consulta (o archivo) con editor externo\n"
 
-#: help.c:197
+#: help.c:198
 #, c-format
 msgid "  \\ef [FUNCNAME [LINE]]  edit function definition with external editor\n"
 msgstr ""
 "  \\ef [NOMBRE-FUNCIÓN [LÍNEA]]\n"
 "                  editar una función con editor externo\n"
 
-#: help.c:198
+#: help.c:199
 #, c-format
 msgid "  \\ev [VIEWNAME [LINE]]  edit view definition with external editor\n"
 msgstr ""
 "  \\ev [NOMBRE-VISTA [LÍNEA]]\n"
 "                  editar definición de una vista con editor externo\n"
 
-#: help.c:199
+#: help.c:200
 #, c-format
 msgid "  \\p                     show the contents of the query buffer\n"
 msgstr "  \\p              mostrar el contenido del búfer de consulta\n"
 
-#: help.c:200
+#: help.c:201
 #, c-format
 msgid "  \\r                     reset (clear) the query buffer\n"
 msgstr "  \\r              reiniciar (limpiar) el búfer de consulta\n"
 
-#: help.c:202
+#: help.c:203
 #, c-format
 msgid "  \\s [FILE]              display history or save it to file\n"
 msgstr "  \\s [ARCHIVO]    mostrar historial de órdenes o guardarlo en archivo\n"
 
-#: help.c:204
+#: help.c:205
 #, c-format
 msgid "  \\w FILE                write query buffer to file\n"
 msgstr "  \\w ARCHIVO      escribir búfer de consulta a archivo\n"
 
-#: help.c:207
+#: help.c:208
 #, c-format
 msgid "Input/Output\n"
 msgstr "Entrada/Salida\n"
 
-#: help.c:208
+#: help.c:209
 #, c-format
 msgid "  \\copy ...              perform SQL COPY with data stream to the client host\n"
 msgstr "  \\copy ...       ejecutar orden SQL COPY con flujo de datos al cliente\n"
 
-#: help.c:209
-#, c-format
-msgid "  \\echo [STRING]         write string to standard output\n"
+#: help.c:210
+#, fuzzy, c-format
+#| msgid "  \\echo [STRING]         write string to standard output\n"
+msgid "  \\echo [-n] [STRING]    write string to standard output (-n for no newline)\n"
 msgstr "  \\echo [CADENA]  escribir cadena a salida estándar\n"
 
-#: help.c:210
+#: help.c:211
 #, c-format
 msgid "  \\i FILE                execute commands from file\n"
 msgstr "  \\i ARCHIVO      ejecutar órdenes desde archivo\n"
 
-#: help.c:211
+#: help.c:212
 #, c-format
 msgid "  \\ir FILE               as \\i, but relative to location of current script\n"
 msgstr "  \\ir ARCHIVO     como \\i, pero relativo a la ubicación del script actual\n"
 
-#: help.c:212
+#: help.c:213
 #, c-format
 msgid "  \\o [FILE]              send all query results to file or |pipe\n"
 msgstr "  \\o [ARCHIVO]    enviar resultados de consultas a archivo u |orden\n"
 
-#: help.c:213
-#, c-format
-msgid "  \\qecho [STRING]        write string to query output stream (see \\o)\n"
+#: help.c:214
+#, fuzzy, c-format
+#| msgid "  \\qecho [STRING]        write string to query output stream (see \\o)\n"
+msgid "  \\qecho [-n] [STRING]   write string to \\o output stream (-n for no newline)\n"
 msgstr "  \\qecho [CADENA] escribir cadena a salida de consultas (ver \\o)\n"
 
-#: help.c:216
+#: help.c:215
+#, fuzzy, c-format
+#| msgid "  \\echo [STRING]         write string to standard output\n"
+msgid "  \\warn [-n] [STRING]    write string to standard error (-n for no newline)\n"
+msgstr "  \\echo [CADENA]  escribir cadena a salida estándar\n"
+
+#: help.c:218
 #, c-format
 msgid "Conditional\n"
 msgstr "Condicional\n"
 
-#: help.c:217
+#: help.c:219
 #, c-format
 msgid "  \\if EXPR               begin conditional block\n"
 msgstr "  \\if EXPRESIÓN   inicia bloque condicional\n"
 
-#: help.c:218
+#: help.c:220
 #, c-format
 msgid "  \\elif EXPR             alternative within current conditional block\n"
 msgstr "  \\elif EXPR      alternativa dentro del bloque condicional actual\n"
 
-#: help.c:219
+#: help.c:221
 #, c-format
 msgid "  \\else                  final alternative within current conditional block\n"
 msgstr "  \\else           alternativa final dentro del bloque condicional actual\n"
 
-#: help.c:220
+#: help.c:222
 #, c-format
 msgid "  \\endif                 end conditional block\n"
 msgstr "  \\endif          termina el bloque condicional\n"
 
-#: help.c:223
+#: help.c:225
 #, c-format
 msgid "Informational\n"
 msgstr "Informativo\n"
 
-#: help.c:224
+#: help.c:226
 #, c-format
 msgid "  (options: S = show system objects, + = additional detail)\n"
 msgstr "   (opciones: S = desplegar objectos de sistema, + = agregar más detalle)\n"
 
-#: help.c:225
+#: help.c:227
 #, c-format
 msgid "  \\d[S+]                 list tables, views, and sequences\n"
 msgstr "  \\d[S+]            listar tablas, vistas y secuencias\n"
 
-#: help.c:226
+#: help.c:228
 #, c-format
 msgid "  \\d[S+]  NAME           describe table, view, sequence, or index\n"
 msgstr "  \\d[S+]  NOMBRE    describir tabla, índice, secuencia o vista\n"
 
-#: help.c:227
+#: help.c:229
 #, c-format
 msgid "  \\da[S]  [PATTERN]      list aggregates\n"
 msgstr "  \\da[S]  [PATRÓN]  listar funciones de agregación\n"
 
-#: help.c:228
+#: help.c:230
 #, c-format
 msgid "  \\dA[+]  [PATTERN]      list access methods\n"
 msgstr "  \\dA[+]  [PATRÓN]  listar métodos de acceso\n"
 
-#: help.c:229
+#: help.c:231
+#, fuzzy, c-format
+#| msgid "  \\do[S]  [PATTERN]      list operators\n"
+msgid "  \\dAc[+] [AMPTRN [TYPEPTRN]] list operator classes\n"
+msgstr "  \\do[S]  [PATRÓN]  listar operadores\n"
+
+#: help.c:232
+#, fuzzy, c-format
+#| msgid "  \\do[S]  [PATTERN]      list operators\n"
+msgid "  \\dAf[+] [AMPTRN [TYPEPTRN]] list operator families\n"
+msgstr "  \\do[S]  [PATRÓN]  listar operadores\n"
+
+#: help.c:233
+#, fuzzy, c-format
+#| msgid "  \\drds [PATRN1 [PATRN2]] list per-database role settings\n"
+msgid "  \\dAo[+] [AMPTRN [OPFPTRN]] list operators of operator families\n"
+msgstr "  \\drds [PAT1 [PAT2]] listar parámetros de rol por base de datos\n"
+
+#: help.c:234
+#, c-format
+msgid "  \\dAp    [AMPTRN [OPFPTRN]] list procedures of operator families\n"
+msgstr ""
+
+#: help.c:235
 #, c-format
 msgid "  \\db[+]  [PATTERN]      list tablespaces\n"
 msgstr "  \\db[+]  [PATRÓN]  listar tablespaces\n"
 
-#: help.c:230
+#: help.c:236
 #, c-format
 msgid "  \\dc[S+] [PATTERN]      list conversions\n"
 msgstr "  \\dc[S+] [PATRÓN]  listar conversiones\n"
 
-#: help.c:231
+#: help.c:237
 #, c-format
 msgid "  \\dC[+]  [PATTERN]      list casts\n"
 msgstr "  \\dC[+]  [PATRÓN]  listar conversiones de tipo (casts)\n"
 
-#: help.c:232
+#: help.c:238
 #, c-format
 msgid "  \\dd[S]  [PATTERN]      show object descriptions not displayed elsewhere\n"
 msgstr "  \\dd[S]  [PATRÓN]  listar comentarios de objetos que no aparecen en otra parte\n"
 
-#: help.c:233
+#: help.c:239
 #, c-format
 msgid "  \\dD[S+] [PATTERN]      list domains\n"
 msgstr "  \\dD[S+] [PATRÓN]  listar dominios\n"
 
-#: help.c:234
+#: help.c:240
 #, c-format
 msgid "  \\ddp    [PATTERN]      list default privileges\n"
 msgstr "  \\ddp    [PATRÓN]  listar privilegios por omisión\n"
 
-#: help.c:235
+#: help.c:241
 #, c-format
 msgid "  \\dE[S+] [PATTERN]      list foreign tables\n"
 msgstr "  \\dE[S+] [PATRÓN]  listar tablas foráneas\n"
 
-#: help.c:236
+#: help.c:242
 #, c-format
 msgid "  \\det[+] [PATTERN]      list foreign tables\n"
 msgstr "  \\det[+] [PATRÓN]  listar tablas foráneas\n"
 
-#: help.c:237
+#: help.c:243
 #, c-format
 msgid "  \\des[+] [PATTERN]      list foreign servers\n"
 msgstr "  \\des[+] [PATRÓN]  listar servidores foráneos\n"
 
-#: help.c:238
+#: help.c:244
 #, c-format
 msgid "  \\deu[+] [PATTERN]      list user mappings\n"
 msgstr "  \\deu[+] [PATRÓN]  listar mapeos de usuario\n"
 
-#: help.c:239
+#: help.c:245
 #, c-format
 msgid "  \\dew[+] [PATTERN]      list foreign-data wrappers\n"
 msgstr "  \\dew[+] [PATRÓN]  listar conectores de datos externos\n"
 
-#: help.c:240
+#: help.c:246
 #, c-format
 msgid "  \\df[anptw][S+] [PATRN] list [only agg/normal/procedures/trigger/window] functions\n"
 msgstr "  \\df[anptw][S+] [PATRÓN] listar funciones [sólo ag./normal/proc./trigger/ventana]\n"
 
-#: help.c:241
+#: help.c:247
 #, c-format
 msgid "  \\dF[+]  [PATTERN]      list text search configurations\n"
 msgstr "  \\dF[+]  [PATRÓN]  listar configuraciones de búsqueda en texto\n"
 
-#: help.c:242
+#: help.c:248
 #, c-format
 msgid "  \\dFd[+] [PATTERN]      list text search dictionaries\n"
 msgstr "  \\dFd[+] [PATRÓN]  listar diccionarios de búsqueda en texto\n"
 
-#: help.c:243
+#: help.c:249
 #, c-format
 msgid "  \\dFp[+] [PATTERN]      list text search parsers\n"
 msgstr "  \\dFp[+] [PATRÓN]  listar analizadores (parsers) de búsq. en texto\n"
 
-#: help.c:244
+#: help.c:250
 #, c-format
 msgid "  \\dFt[+] [PATTERN]      list text search templates\n"
 msgstr "  \\dFt[+] [PATRÓN]  listar plantillas de búsqueda en texto\n"
 
-#: help.c:245
+#: help.c:251
 #, c-format
 msgid "  \\dg[S+] [PATTERN]      list roles\n"
 msgstr "  \\dg[S+] [PATRÓN]  listar roles\n"
 
-#: help.c:246
+#: help.c:252
 #, c-format
 msgid "  \\di[S+] [PATTERN]      list indexes\n"
 msgstr "  \\di[S+] [PATRÓN]  listar índices\n"
 
-#: help.c:247
+#: help.c:253
 #, c-format
 msgid "  \\dl                    list large objects, same as \\lo_list\n"
 msgstr "  \\dl               listar objetos grandes, lo mismo que \\lo_list\n"
 
-#: help.c:248
+#: help.c:254
 #, c-format
 msgid "  \\dL[S+] [PATTERN]      list procedural languages\n"
 msgstr "  \\dL[S+] [PATRÓN]  listar lenguajes procedurales\n"
 
-#: help.c:249
+#: help.c:255
 #, c-format
 msgid "  \\dm[S+] [PATTERN]      list materialized views\n"
 msgstr "  \\dm[S+] [PATRÓN]  listar vistas materializadas\n"
 
-#: help.c:250
+#: help.c:256
 #, c-format
 msgid "  \\dn[S+] [PATTERN]      list schemas\n"
 msgstr "  \\dn[S+] [PATRÓN]  listar esquemas\n"
 
-#: help.c:251
+#: help.c:257
 #, c-format
 msgid "  \\do[S]  [PATTERN]      list operators\n"
 msgstr "  \\do[S]  [PATRÓN]  listar operadores\n"
 
-#: help.c:252
+#: help.c:258
 #, c-format
 msgid "  \\dO[S+] [PATTERN]      list collations\n"
 msgstr "  \\dO[S]  [PATRÓN]  listar ordenamientos (collations)\n"
 
-#: help.c:253
+#: help.c:259
 #, c-format
 msgid "  \\dp     [PATTERN]      list table, view, and sequence access privileges\n"
 msgstr "  \\dp     [PATRÓN]  listar privilegios de acceso a tablas, vistas y secuencias\n"
 
-#: help.c:254
+#: help.c:260
 #, c-format
-#| msgid "  \\dP[tin+] [PATTERN]    list [only table/index] partitioned relations\n"
 msgid "  \\dP[itn+] [PATTERN]    list [only index/table] partitioned relations [n=nested]\n"
 msgstr "  \\dP[tin+] [PATRÓN] listar relaciones particionadas (sólo tablas/índices) [n=anidadas]\n"
 
-#: help.c:255
+#: help.c:261
 #, c-format
 msgid "  \\drds [PATRN1 [PATRN2]] list per-database role settings\n"
 msgstr "  \\drds [PAT1 [PAT2]] listar parámetros de rol por base de datos\n"
 
-#: help.c:256
+#: help.c:262
 #, c-format
 msgid "  \\dRp[+] [PATTERN]      list replication publications\n"
 msgstr "  \\dRp[+] [PATRÓN]  listar publicaciones de replicación\n"
 
-#: help.c:257
+#: help.c:263
 #, c-format
 msgid "  \\dRs[+] [PATTERN]      list replication subscriptions\n"
 msgstr "  \\dRs[+] [PATRÓN]  listar suscripciones de replicación\n"
 
-#: help.c:258
+#: help.c:264
 #, c-format
 msgid "  \\ds[S+] [PATTERN]      list sequences\n"
 msgstr "  \\ds[S+] [PATRÓN]  listar secuencias\n"
 
-#: help.c:259
+#: help.c:265
 #, c-format
 msgid "  \\dt[S+] [PATTERN]      list tables\n"
 msgstr "  \\dt[S+] [PATRÓN]  listar tablas\n"
 
-#: help.c:260
+#: help.c:266
 #, c-format
 msgid "  \\dT[S+] [PATTERN]      list data types\n"
 msgstr "  \\dT[S+] [PATRÓN]  listar tipos de dato\n"
 
-#: help.c:261
+#: help.c:267
 #, c-format
 msgid "  \\du[S+] [PATTERN]      list roles\n"
 msgstr "  \\du[S+] [PATRÓN]  listar roles\n"
 
-#: help.c:262
+#: help.c:268
 #, c-format
 msgid "  \\dv[S+] [PATTERN]      list views\n"
 msgstr "  \\dv[S+] [PATRÓN]  listar vistas\n"
 
-#: help.c:263
+#: help.c:269
 #, c-format
 msgid "  \\dx[+]  [PATTERN]      list extensions\n"
 msgstr "  \\dx[+]  [PATRÓN]  listar extensiones\n"
 
-#: help.c:264
+#: help.c:270
 #, c-format
 msgid "  \\dy     [PATTERN]      list event triggers\n"
 msgstr "  \\dy     [PATRÓN]   listar disparadores por eventos\n"
 
-#: help.c:265
+#: help.c:271
 #, c-format
 msgid "  \\l[+]   [PATTERN]      list databases\n"
 msgstr "  \\l[+]   [PATRÓN]    listar bases de datos\n"
 
-#: help.c:266
+#: help.c:272
 #, c-format
 msgid "  \\sf[+]  FUNCNAME       show a function's definition\n"
 msgstr "  \\sf[+]  FUNCIÓN   mostrar la definición de una función\n"
 
-#: help.c:267
+#: help.c:273
 #, c-format
 msgid "  \\sv[+]  VIEWNAME       show a view's definition\n"
 msgstr "  \\sv[+]  VISTA     mostrar la definición de una vista\n"
 
-#: help.c:268
+#: help.c:274
 #, c-format
 msgid "  \\z      [PATTERN]      same as \\dp\n"
 msgstr "  \\z      [PATRÓN]  lo mismo que \\dp\n"
 
-#: help.c:271
+#: help.c:277
 #, c-format
 msgid "Formatting\n"
 msgstr "Formato\n"
 
-#: help.c:272
+#: help.c:278
 #, c-format
 msgid "  \\a                     toggle between unaligned and aligned output mode\n"
 msgstr "  \\a              cambiar entre modo de salida alineado y sin alinear\n"
 
-#: help.c:273
+#: help.c:279
 #, c-format
 msgid "  \\C [STRING]            set table title, or unset if none\n"
 msgstr "  \\C [CADENA]     definir título de tabla, o indefinir si es vacío\n"
 
-#: help.c:274
+#: help.c:280
 #, c-format
 msgid "  \\f [STRING]            show or set field separator for unaligned query output\n"
 msgstr ""
 "  \\f [CADENA]     mostrar o definir separador de campos para\n"
 "                  modo de salida sin alinear\n"
 
-#: help.c:275
+#: help.c:281
 #, c-format
 msgid "  \\H                     toggle HTML output mode (currently %s)\n"
 msgstr "  \\H              cambiar modo de salida HTML (actualmente %s)\n"
 
-#: help.c:277
+#: help.c:283
 #, c-format
 msgid ""
 "  \\pset [NAME [VALUE]]   set table output option\n"
@@ -3003,27 +3186,27 @@ msgstr ""
 "                  tuples_only|unicode_border_linestyle|unicode_column_linestyle\n"
 "                  |unicode_header_linestyle)\n"
 
-#: help.c:284
+#: help.c:290
 #, c-format
 msgid "  \\t [on|off]            show only rows (currently %s)\n"
 msgstr "  \\t [on|off]     mostrar sólo filas (actualmente %s)\n"
 
-#: help.c:286
+#: help.c:292
 #, c-format
 msgid "  \\T [STRING]            set HTML <table> tag attributes, or unset if none\n"
 msgstr "  \\T [CADENA]     definir atributos HTML de <table>, o indefinir si es vacío\n"
 
-#: help.c:287
+#: help.c:293
 #, c-format
 msgid "  \\x [on|off|auto]       toggle expanded output (currently %s)\n"
 msgstr "  \\x [on|off|auto] cambiar modo expandido (actualmente %s)\n"
 
-#: help.c:291
+#: help.c:297
 #, c-format
 msgid "Connection\n"
 msgstr "Conexiones\n"
 
-#: help.c:293
+#: help.c:299
 #, c-format
 msgid ""
 "  \\c[onnect] {[DBNAME|- USER|- HOST|- PORT|-] | conninfo}\n"
@@ -3032,7 +3215,7 @@ msgstr ""
 "  \\c[onnect] [BASE-DE-DATOS|- USUARIO|- ANFITRIÓN|- PUERTO|- | conninfo]\n"
 "                  conectar a una nueva base de datos (actual: «%s»)\n"
 
-#: help.c:297
+#: help.c:303
 #, c-format
 msgid ""
 "  \\c[onnect] {[DBNAME|- USER|- HOST|- PORT|-] | conninfo}\n"
@@ -3041,84 +3224,84 @@ msgstr ""
 "  \\c[onnect] [BASE-DE-DATOS|- USUARIO|- ANFITRIÓN|- PUERTO|- | conninfo]\n"
 "                  conectar a una nueva base de datos (no hay conexión actual)\n"
 
-#: help.c:299
+#: help.c:305
 #, c-format
 msgid "  \\conninfo              display information about current connection\n"
 msgstr "  \\conninfo       despliega la información sobre la conexión actual\n"
 
-#: help.c:300
+#: help.c:306
 #, c-format
 msgid "  \\encoding [ENCODING]   show or set client encoding\n"
 msgstr ""
 "  \\encoding [CODIFICACIÓN]\n"
 "                  mostrar o definir codificación del cliente\n"
 
-#: help.c:301
+#: help.c:307
 #, c-format
 msgid "  \\password [USERNAME]   securely change the password for a user\n"
 msgstr ""
 "  \\password [USUARIO]\n"
 "                  cambiar la contraseña para un usuario en forma segura\n"
 
-#: help.c:304
+#: help.c:310
 #, c-format
 msgid "Operating System\n"
 msgstr "Sistema Operativo\n"
 
-#: help.c:305
+#: help.c:311
 #, c-format
 msgid "  \\cd [DIR]              change the current working directory\n"
 msgstr "  \\cd [DIR]        cambiar el directorio de trabajo actual\n"
 
-#: help.c:306
+#: help.c:312
 #, c-format
 msgid "  \\setenv NAME [VALUE]   set or unset environment variable\n"
 msgstr ""
 "  \\setenv NOMBRE [VALOR]\n"
 "                   definir o indefinir variable de ambiente\n"
 
-#: help.c:307
+#: help.c:313
 #, c-format
 msgid "  \\timing [on|off]       toggle timing of commands (currently %s)\n"
 msgstr ""
 "  \\timing [on|off] mostrar tiempo de ejecución de órdenes\n"
 "                   (actualmente %s)\n"
 
-#: help.c:309
+#: help.c:315
 #, c-format
 msgid "  \\! [COMMAND]           execute command in shell or start interactive shell\n"
 msgstr ""
 "  \\! [ORDEN]       ejecutar orden en intérprete de órdenes (shell),\n"
 "                   o iniciar intérprete interactivo\n"
 
-#: help.c:312
+#: help.c:318
 #, c-format
 msgid "Variables\n"
 msgstr "Variables\n"
 
-#: help.c:313
+#: help.c:319
 #, c-format
 msgid "  \\prompt [TEXT] NAME    prompt user to set internal variable\n"
 msgstr "  \\prompt [TEXTO] NOMBRE  preguntar al usuario el valor de la variable\n"
 
-#: help.c:314
+#: help.c:320
 #, c-format
 msgid "  \\set [NAME [VALUE]]    set internal variable, or list all if no parameters\n"
 msgstr ""
 "  \\set [NOMBRE [VALOR]]   definir variables internas,\n"
 "                          listar todas si no se dan parámetros\n"
 
-#: help.c:315
+#: help.c:321
 #, c-format
 msgid "  \\unset NAME            unset (delete) internal variable\n"
 msgstr "  \\unset NOMBRE           indefinir (eliminar) variable interna\n"
 
-#: help.c:318
+#: help.c:324
 #, c-format
 msgid "Large Objects\n"
 msgstr "Objetos Grandes\n"
 
-#: help.c:319
+#: help.c:325
 #, c-format
 msgid ""
 "  \\lo_export LOBOID FILE\n"
@@ -3131,7 +3314,7 @@ msgstr ""
 "  \\lo_list\n"
 "  \\lo_unlink LOBOID   operaciones con objetos grandes\n"
 
-#: help.c:346
+#: help.c:352
 #, c-format
 msgid ""
 "List of specially treated variables\n"
@@ -3140,12 +3323,12 @@ msgstr ""
 "Lista de variables con tratamiento especial\n"
 "\n"
 
-#: help.c:348
+#: help.c:354
 #, c-format
 msgid "psql variables:\n"
 msgstr "Variables psql:\n"
 
-#: help.c:350
+#: help.c:356
 #, c-format
 msgid ""
 "  psql --set=NAME=VALUE\n"
@@ -3155,7 +3338,7 @@ msgstr ""
 "  psql --set=NOMBRE=VALOR\n"
 "  o \\set NOMBRE VALOR dentro de psql\n"
 
-#: help.c:352
+#: help.c:358
 #, c-format
 msgid ""
 "  AUTOCOMMIT\n"
@@ -3164,7 +3347,7 @@ msgstr ""
 "  AUTOCOMMIT         si está definida, órdenes SQL exitosas se comprometen\n"
 "                     automáticamente\n"
 
-#: help.c:354
+#: help.c:360
 #, c-format
 msgid ""
 "  COMP_KEYWORD_CASE\n"
@@ -3174,14 +3357,14 @@ msgstr ""
 "  COMP_KEYWORD_CASE  determina si usar mayúsculas al completar palabras SQL\n"
 "                     [lower, upper, preserve-lower, preserve-upper]\n"
 
-#: help.c:357
+#: help.c:363
 #, c-format
 msgid ""
 "  DBNAME\n"
 "    the currently connected database name\n"
 msgstr "  DBNAME             la base de datos actualmente conectada\n"
 
-#: help.c:359
+#: help.c:365
 #, c-format
 msgid ""
 "  ECHO\n"
@@ -3191,7 +3374,7 @@ msgstr ""
 "  ECHO               controla qué entrada se escribe a la salida estándar\n"
 "                     [all, errors, none, queries]\n"
 
-#: help.c:362
+#: help.c:368
 #, c-format
 msgid ""
 "  ECHO_HIDDEN\n"
@@ -3201,21 +3384,21 @@ msgstr ""
 "  ECHO_HIDDEN        muestra consultas internas usadas por órdenes backslash\n"
 "                     con «noexec» sólo las muestra sin ejecutarlas\n"
 
-#: help.c:365
+#: help.c:371
 #, c-format
 msgid ""
 "  ENCODING\n"
 "    current client character set encoding\n"
 msgstr "  ENCODING           codificación actual del cliente\n"
 
-#: help.c:367
+#: help.c:373
 #, c-format
 msgid ""
 "  ERROR\n"
 "    true if last query failed, else false\n"
 msgstr "  ERROR              verdadero si la última consulta falló; si no, falso\n"
 
-#: help.c:369
+#: help.c:375
 #, c-format
 msgid ""
 "  FETCH_COUNT\n"
@@ -3224,7 +3407,7 @@ msgstr ""
 "  FETCH_COUNT        número de filas del resultado que extraer y mostrar cada vez\n"
 "                     (por omisión: 0=sin límite)\n"
 
-#: help.c:371
+#: help.c:377
 #, c-format
 msgid ""
 "  HIDE_TABLEAM\n"
@@ -3233,7 +3416,7 @@ msgstr ""
 "  HIDE_TABLEAM\n"
 "                     ocultar métodos de acceso de tabla\n"
 
-#: help.c:373
+#: help.c:379
 #, c-format
 msgid ""
 "  HISTCONTROL\n"
@@ -3242,28 +3425,28 @@ msgstr ""
 "  HISTCONTROL        controla la lista de historia de órdenes\n"
 "                     [ignorespace, ignoredups, ignoreboth]\n"
 
-#: help.c:375
+#: help.c:381
 #, c-format
 msgid ""
 "  HISTFILE\n"
 "    file name used to store the command history\n"
 msgstr "  HISTFILE           nombre de archivo para almacenar historia de órdenes\n"
 
-#: help.c:377
+#: help.c:383
 #, c-format
 msgid ""
 "  HISTSIZE\n"
 "    maximum number of commands to store in the command history\n"
 msgstr "  HISTSIZE           número de órdenes a guardar en la historia de órdenes\n"
 
-#: help.c:379
+#: help.c:385
 #, c-format
 msgid ""
 "  HOST\n"
 "    the currently connected database server host\n"
 msgstr "  HOST               el servidor actualmente conectado\n"
 
-#: help.c:381
+#: help.c:387
 #, c-format
 msgid ""
 "  IGNOREEOF\n"
@@ -3272,14 +3455,14 @@ msgstr ""
 "  IGNOREEOF          si no está definida, enviar un EOF a sesión interactiva\n"
 "                     termina la aplicación\n"
 
-#: help.c:383
+#: help.c:389
 #, c-format
 msgid ""
 "  LASTOID\n"
 "    value of the last affected OID\n"
 msgstr "  LASTOID            el valor del último OID afectado\n"
 
-#: help.c:385
+#: help.c:391
 #, c-format
 msgid ""
 "  LAST_ERROR_MESSAGE\n"
@@ -3291,7 +3474,7 @@ msgstr ""
 "                     mensaje y SQLSTATE del último error, o cadena vacía y\n"
 "                     «00000» si no hubo\n"
 
-#: help.c:388
+#: help.c:394
 #, c-format
 msgid ""
 "  ON_ERROR_ROLLBACK\n"
@@ -3300,28 +3483,28 @@ msgstr ""
 "  ON_ERROR_ROLLBACK  si está definido, un error no aborta la transacción\n"
 "                     (usa «savepoints» implícitos)\n"
 
-#: help.c:390
+#: help.c:396
 #, c-format
 msgid ""
 "  ON_ERROR_STOP\n"
 "    stop batch execution after error\n"
 msgstr "  ON_ERROR_STOP      detiene ejecución por lotes al ocurrir un error\n"
 
-#: help.c:392
+#: help.c:398
 #, c-format
 msgid ""
 "  PORT\n"
 "    server port of the current connection\n"
 msgstr "  PORT               puerto del servidor de la conexión actual\n"
 
-#: help.c:394
+#: help.c:400
 #, c-format
 msgid ""
 "  PROMPT1\n"
 "    specifies the standard psql prompt\n"
 msgstr "  PROMPT1            especifica el prompt estándar de psql\n"
 
-#: help.c:396
+#: help.c:402
 #, c-format
 msgid ""
 "  PROMPT2\n"
@@ -3330,21 +3513,21 @@ msgstr ""
 "  PROMPT2            especifica el prompt usado cuando una sentencia continúa\n"
 "                     de una línea anterior\n"
 
-#: help.c:398
+#: help.c:404
 #, c-format
 msgid ""
 "  PROMPT3\n"
 "    specifies the prompt used during COPY ... FROM STDIN\n"
 msgstr "  PROMPT3            especifica el prompt usado durante COPY ... FROM STDIN\n"
 
-#: help.c:400
+#: help.c:406
 #, c-format
 msgid ""
 "  QUIET\n"
 "    run quietly (same as -q option)\n"
 msgstr "  QUIET              ejecuta silenciosamente (igual que -q)\n"
 
-#: help.c:402
+#: help.c:408
 #, c-format
 msgid ""
 "  ROW_COUNT\n"
@@ -3353,7 +3536,7 @@ msgstr ""
 "  ROW_COUNT          número de tuplas retornadas o afectadas por última\n"
 "                     consulta, o 0\n"
 
-#: help.c:404
+#: help.c:410
 #, c-format
 msgid ""
 "  SERVER_VERSION_NAME\n"
@@ -3364,7 +3547,7 @@ msgstr ""
 "  SERVER_VERSION_NUM\n"
 "                     versión del servidor (cadena corta o numérica)\n"
 
-#: help.c:407
+#: help.c:413
 #, c-format
 msgid ""
 "  SHOW_CONTEXT\n"
@@ -3373,35 +3556,35 @@ msgstr ""
 "  SHOW_CONTEXT       controla el despliegue de campos de contexto de mensaje\n"
 "                     [never, errors, always]\n"
 
-#: help.c:409
+#: help.c:415
 #, c-format
 msgid ""
 "  SINGLELINE\n"
 "    if set, end of line terminates SQL commands (same as -S option)\n"
 msgstr "  SINGLELINE         fin de línea termina modo de órdenes SQL (igual que -S)\n"
 
-#: help.c:411
+#: help.c:417
 #, c-format
 msgid ""
 "  SINGLESTEP\n"
 "    single-step mode (same as -s option)\n"
 msgstr "  SINGLESTEP         modo paso a paso (igual que -s)\n"
 
-#: help.c:413
+#: help.c:419
 #, c-format
 msgid ""
 "  SQLSTATE\n"
 "    SQLSTATE of last query, or \"00000\" if no error\n"
 msgstr "  SQLSTATE           SQLSTATE de la última consulta, o «00000» si no hubo error\n"
 
-#: help.c:415
+#: help.c:421
 #, c-format
 msgid ""
 "  USER\n"
 "    the currently connected database user\n"
 msgstr "  USER               el usuario actualmente conectado\n"
 
-#: help.c:417
+#: help.c:423
 #, c-format
 msgid ""
 "  VERBOSITY\n"
@@ -3410,7 +3593,7 @@ msgstr ""
 "  VERBOSITY          controla la verbosidad de errores [default, verbose,\n"
 "                     terse, sqlstate]\n"
 
-#: help.c:419
+#: help.c:425
 #, c-format
 msgid ""
 "  VERSION\n"
@@ -3423,7 +3606,7 @@ msgstr ""
 "  VERSION_NUM\n"
 "                     versión de psql (cadena verbosa, corta o numérica)\n"
 
-#: help.c:424
+#: help.c:430
 #, c-format
 msgid ""
 "\n"
@@ -3432,7 +3615,7 @@ msgstr ""
 "\n"
 "Parámetros de despliegue:\n"
 
-#: help.c:426
+#: help.c:432
 #, c-format
 msgid ""
 "  psql --pset=NAME[=VALUE]\n"
@@ -3443,28 +3626,28 @@ msgstr ""
 "  o \\pset NOMBRE [VALOR] dentro de psql\n"
 "\n"
 
-#: help.c:428
+#: help.c:434
 #, c-format
 msgid ""
 "  border\n"
 "    border style (number)\n"
 msgstr "  border             estilo de borde (número)\n"
 
-#: help.c:430
+#: help.c:436
 #, c-format
 msgid ""
 "  columns\n"
 "    target width for the wrapped format\n"
 msgstr "  columns            define el ancho para formato «wrapped»\n"
 
-#: help.c:432
+#: help.c:438
 #, c-format
 msgid ""
 "  expanded (or x)\n"
 "    expanded output [on, off, auto]\n"
 msgstr "  expanded (o x)     salida expandida [on, off, auto]\n"
 
-#: help.c:434
+#: help.c:440
 #, c-format
 msgid ""
 "  fieldsep\n"
@@ -3473,42 +3656,42 @@ msgstr ""
 "  fieldsep           separador de campos para formato «unaligned»\n"
 "                     (por omisión: «%s»)\n"
 
-#: help.c:437
+#: help.c:443
 #, c-format
 msgid ""
 "  fieldsep_zero\n"
 "    set field separator for unaligned output to a zero byte\n"
 msgstr "  fieldsep_zero      separador de campos en «unaligned» es byte cero\n"
 
-#: help.c:439
+#: help.c:445
 #, c-format
 msgid ""
 "  footer\n"
 "    enable or disable display of the table footer [on, off]\n"
 msgstr "  footer             activa o desactiva el pie de tabla [on, off]\n"
 
-#: help.c:441
+#: help.c:447
 #, c-format
 msgid ""
 "  format\n"
 "    set output format [unaligned, aligned, wrapped, html, asciidoc, ...]\n"
 msgstr "  format             define el formato de salida [unaligned, aligned, wrapped, html, asciidoc, ...]\n"
 
-#: help.c:443
+#: help.c:449
 #, c-format
 msgid ""
 "  linestyle\n"
 "    set the border line drawing style [ascii, old-ascii, unicode]\n"
 msgstr "  linestyle          define el estilo de dibujo de líneas [ascii, old-ascii, unicode]\n"
 
-#: help.c:445
+#: help.c:451
 #, c-format
 msgid ""
 "  null\n"
 "    set the string to be printed in place of a null value\n"
 msgstr "  null               define la cadena a imprimirse para valores null\n"
 
-#: help.c:447
+#: help.c:453
 #, c-format
 msgid ""
 "  numericlocale\n"
@@ -3517,21 +3700,21 @@ msgstr ""
 "  numericlocale      activa despliegue de carácter específico del lenguaje para\n"
 "                     separar grupos de dígitos\n"
 
-#: help.c:449
+#: help.c:455
 #, c-format
 msgid ""
 "  pager\n"
 "    control when an external pager is used [yes, no, always]\n"
 msgstr "  pager              controla cuándo se usará un paginador externo [yes, no, always]\n"
 
-#: help.c:451
+#: help.c:457
 #, c-format
 msgid ""
 "  recordsep\n"
 "    record (line) separator for unaligned output\n"
 msgstr "  recordsep          separador de registros (líneas) para formato «unaligned»\n"
 
-#: help.c:453
+#: help.c:459
 #, c-format
 msgid ""
 "  recordsep_zero\n"
@@ -3539,7 +3722,7 @@ msgid ""
 msgstr "  recordsep_zero     separador de registros en «unaligned» es byte cero\n"
 
 # XXX WTF does this mean?
-#: help.c:455
+#: help.c:461
 #, c-format
 msgid ""
 "  tableattr (or T)\n"
@@ -3550,21 +3733,21 @@ msgstr ""
 "                     o ancho proporcional de columnas alineadas a la izquierda\n"
 "                     en formato «latex-longtable»\n"
 
-#: help.c:458
+#: help.c:464
 #, c-format
 msgid ""
 "  title\n"
 "    set the table title for subsequently printed tables\n"
 msgstr "  title              define el título de tablas\n"
 
-#: help.c:460
+#: help.c:466
 #, c-format
 msgid ""
 "  tuples_only\n"
 "    if set, only actual table data is shown\n"
 msgstr "  tuples_only        si está definido, sólo los datos de la tabla se muestran\n"
 
-#: help.c:462
+#: help.c:468
 #, c-format
 msgid ""
 "  unicode_border_linestyle\n"
@@ -3577,7 +3760,7 @@ msgstr ""
 "  unicode_header_linestyle\n"
 "                     define el estilo de líneas Unicode [single, double]\n"
 
-#: help.c:467
+#: help.c:473
 #, c-format
 msgid ""
 "\n"
@@ -3586,7 +3769,7 @@ msgstr ""
 "\n"
 "Variables de ambiente:\n"
 
-#: help.c:471
+#: help.c:477
 #, c-format
 msgid ""
 "  NAME=VALUE [NAME=VALUE] psql ...\n"
@@ -3596,7 +3779,7 @@ msgstr ""
 "  NOMBRE=VALOR [NOMBRE=VALOR] psql ...\n"
 "  o \\setenv NOMBRE [VALOR] dentro de psql\n"
 
-#: help.c:473
+#: help.c:479
 #, c-format
 msgid ""
 "  set NAME=VALUE\n"
@@ -3608,63 +3791,63 @@ msgstr ""
 "  psql ...\n"
 "  o \\setenv NOMBRE [VALOR] dentro de psql\n"
 
-#: help.c:476
+#: help.c:482
 #, c-format
 msgid ""
 "  COLUMNS\n"
 "    number of columns for wrapped format\n"
 msgstr "  COLUMNS            número de columnas para formato «wrapped»\n"
 
-#: help.c:478
+#: help.c:484
 #, c-format
 msgid ""
 "  PGAPPNAME\n"
 "    same as the application_name connection parameter\n"
 msgstr "  PGAPPNAME          igual que el parámetro de conexión application_name\n"
 
-#: help.c:480
+#: help.c:486
 #, c-format
 msgid ""
 "  PGDATABASE\n"
 "    same as the dbname connection parameter\n"
 msgstr "  PGDATABASE        igual que el parámetro de conexión dbname\n"
 
-#: help.c:482
+#: help.c:488
 #, c-format
 msgid ""
 "  PGHOST\n"
 "    same as the host connection parameter\n"
 msgstr "  PGHOST             igual que el parámetro de conexión host\n"
 
-#: help.c:484
+#: help.c:490
 #, c-format
 msgid ""
 "  PGPASSWORD\n"
 "    connection password (not recommended)\n"
 msgstr "  PGPASSWORD         contraseña de la conexión (no recomendado)\n"
 
-#: help.c:486
+#: help.c:492
 #, c-format
 msgid ""
 "  PGPASSFILE\n"
 "    password file name\n"
 msgstr "  PGPASSFILE         nombre de archivo de contraseñas\n"
 
-#: help.c:488
+#: help.c:494
 #, c-format
 msgid ""
 "  PGPORT\n"
 "    same as the port connection parameter\n"
 msgstr "  PGPORT             igual que el parámetro de conexión port\n"
 
-#: help.c:490
+#: help.c:496
 #, c-format
 msgid ""
 "  PGUSER\n"
 "    same as the user connection parameter\n"
 msgstr "  PGUSER             igual que el parámetro de conexión user\n"
 
-#: help.c:492
+#: help.c:498
 #, c-format
 msgid ""
 "  PSQL_EDITOR, EDITOR, VISUAL\n"
@@ -3673,7 +3856,7 @@ msgstr ""
 "  PSQL_EDITOR, EDITOR, VISUAL\n"
 "                     editor usado por órdenes \\e, \\ef, y \\ev\n"
 
-#: help.c:494
+#: help.c:500
 #, c-format
 msgid ""
 "  PSQL_EDITOR_LINENUMBER_ARG\n"
@@ -3682,46 +3865,46 @@ msgstr ""
 "  PSQL_EDITOR_LINENUMBER_ARGS\n"
 "                     cómo especificar número de línea al invocar al editor\n"
 
-#: help.c:496
+#: help.c:502
 #, c-format
 msgid ""
 "  PSQL_HISTORY\n"
 "    alternative location for the command history file\n"
 msgstr "  PSQL_HISTORY       ubicación alternativa del archivo de historia de órdenes\n"
 
-#: help.c:498
+#: help.c:504
 #, c-format
 msgid ""
 "  PSQL_PAGER, PAGER\n"
 "    name of external pager program\n"
 msgstr "  PSQL_PAGER, PAGER  nombre de programa paginador externo\n"
 
-#: help.c:500
+#: help.c:506
 #, c-format
 msgid ""
 "  PSQLRC\n"
 "    alternative location for the user's .psqlrc file\n"
 msgstr "  PSQLRC             ubicación alternativa para el archivo .psqlrc del usuario\n"
 
-#: help.c:502
+#: help.c:508
 #, c-format
 msgid ""
 "  SHELL\n"
 "    shell used by the \\! command\n"
 msgstr "  SHELL              intérprete usado por la orden \\!\n"
 
-#: help.c:504
+#: help.c:510
 #, c-format
 msgid ""
 "  TMPDIR\n"
 "    directory for temporary files\n"
 msgstr "  TMPDIR             directorio para archivos temporales\n"
 
-#: help.c:548
+#: help.c:554
 msgid "Available help:\n"
 msgstr "Ayuda disponible:\n"
 
-#: help.c:636
+#: help.c:642
 #, c-format
 msgid ""
 "Command:     %s\n"
@@ -3740,7 +3923,7 @@ msgstr ""
 "URL: %s\n"
 "\n"
 
-#: help.c:655
+#: help.c:661
 #, c-format
 msgid ""
 "No help available for \"%s\".\n"
@@ -3749,17 +3932,17 @@ msgstr ""
 "No hay ayuda disponible para «%s».\n"
 "Pruebe \\h sin argumentos para mostrar los elementos de ayuda disponibles.\n"
 
-#: input.c:218
+#: input.c:217
 #, c-format
 msgid "could not read from input file: %m"
 msgstr "no se pudo leer el archivo de entrada: %m"
 
-#: input.c:472 input.c:510
+#: input.c:471 input.c:509
 #, c-format
 msgid "could not save history to file \"%s\": %m"
 msgstr "no se pudo guardar historial a archivo «%s»: %m"
 
-#: input.c:529
+#: input.c:528
 #, c-format
 msgid "history is not supported by this installation"
 msgstr "el historial de órdenes no está soportado en esta instalación"
@@ -3792,12 +3975,12 @@ msgstr "Objetos grandes"
 msgid "\\if: escaped"
 msgstr "\\if: escapado"
 
-#: mainloop.c:183
+#: mainloop.c:195
 #, c-format
 msgid "Use \"\\q\" to leave %s.\n"
 msgstr "Use «\\q» para salir de %s.\n"
 
-#: mainloop.c:205
+#: mainloop.c:217
 msgid ""
 "The input is a PostgreSQL custom-format dump.\n"
 "Use the pg_restore command-line client to restore this dump to a database.\n"
@@ -3805,19 +3988,19 @@ msgstr ""
 "La entrada es un dump de PostgreSQL en formato custom.\n"
 "Use el programa pg_restore para restaurar este dump a una base de datos.\n"
 
-#: mainloop.c:282
+#: mainloop.c:298
 msgid "Use \\? for help or press control-C to clear the input buffer."
 msgstr "Use \\? para ayuda o presione control-C para limpiar el búfer de entrada."
 
-#: mainloop.c:284
+#: mainloop.c:300
 msgid "Use \\? for help."
 msgstr "Digite \\? para obtener ayuda."
 
-#: mainloop.c:288
+#: mainloop.c:304
 msgid "You are using psql, the command-line interface to PostgreSQL."
 msgstr "Está usando psql, la interfaz de línea de órdenes de PostgreSQL."
 
-#: mainloop.c:289
+#: mainloop.c:305
 #, c-format
 msgid ""
 "Type:  \\copyright for distribution terms\n"
@@ -3832,24 +4015,24 @@ msgstr ""
 "       \\g o punto y coma («;») para ejecutar la consulta\n"
 "       \\q para salir\n"
 
-#: mainloop.c:313
+#: mainloop.c:329
 msgid "Use \\q to quit."
 msgstr "Use \\q para salir."
 
-#: mainloop.c:316 mainloop.c:340
+#: mainloop.c:332 mainloop.c:356
 msgid "Use control-D to quit."
 msgstr "Use control-D para salir."
 
-#: mainloop.c:318 mainloop.c:342
+#: mainloop.c:334 mainloop.c:358
 msgid "Use control-C to quit."
 msgstr "Use control-C para salir."
 
-#: mainloop.c:449 mainloop.c:591
+#: mainloop.c:465 mainloop.c:613
 #, c-format
 msgid "query ignored; use \\endif or Ctrl-C to exit current \\if block"
 msgstr "consulta ignorada; use \\endif o Ctrl-C para salir del bloque \\if actual"
 
-#: mainloop.c:609
+#: mainloop.c:631
 #, c-format
 msgid "reached EOF without finding closing \\endif(s)"
 msgstr "se alcanzó EOF sin encontrar el/los \\endif de cierre"
@@ -3885,48 +4068,48 @@ msgstr "%s: memoria agotada"
 #: sql_help.c:985 sql_help.c:990 sql_help.c:995 sql_help.c:1014 sql_help.c:1025
 #: sql_help.c:1027 sql_help.c:1046 sql_help.c:1056 sql_help.c:1058
 #: sql_help.c:1060 sql_help.c:1072 sql_help.c:1076 sql_help.c:1078
-#: sql_help.c:1089 sql_help.c:1091 sql_help.c:1093 sql_help.c:1109
-#: sql_help.c:1111 sql_help.c:1115 sql_help.c:1118 sql_help.c:1119
-#: sql_help.c:1120 sql_help.c:1123 sql_help.c:1125 sql_help.c:1258
-#: sql_help.c:1260 sql_help.c:1263 sql_help.c:1266 sql_help.c:1268
-#: sql_help.c:1270 sql_help.c:1273 sql_help.c:1276 sql_help.c:1386
-#: sql_help.c:1388 sql_help.c:1390 sql_help.c:1393 sql_help.c:1414
-#: sql_help.c:1417 sql_help.c:1420 sql_help.c:1423 sql_help.c:1427
-#: sql_help.c:1429 sql_help.c:1431 sql_help.c:1433 sql_help.c:1447
-#: sql_help.c:1450 sql_help.c:1452 sql_help.c:1454 sql_help.c:1464
-#: sql_help.c:1466 sql_help.c:1476 sql_help.c:1478 sql_help.c:1488
-#: sql_help.c:1491 sql_help.c:1513 sql_help.c:1515 sql_help.c:1517
-#: sql_help.c:1520 sql_help.c:1522 sql_help.c:1524 sql_help.c:1527
-#: sql_help.c:1577 sql_help.c:1619 sql_help.c:1622 sql_help.c:1624
-#: sql_help.c:1626 sql_help.c:1628 sql_help.c:1630 sql_help.c:1633
-#: sql_help.c:1683 sql_help.c:1699 sql_help.c:1920 sql_help.c:1989
-#: sql_help.c:2008 sql_help.c:2021 sql_help.c:2078 sql_help.c:2085
-#: sql_help.c:2095 sql_help.c:2115 sql_help.c:2140 sql_help.c:2158
-#: sql_help.c:2187 sql_help.c:2282 sql_help.c:2324 sql_help.c:2347
-#: sql_help.c:2368 sql_help.c:2369 sql_help.c:2406 sql_help.c:2426
-#: sql_help.c:2448 sql_help.c:2462 sql_help.c:2482 sql_help.c:2505
-#: sql_help.c:2535 sql_help.c:2560 sql_help.c:2606 sql_help.c:2884
-#: sql_help.c:2897 sql_help.c:2914 sql_help.c:2930 sql_help.c:2970
-#: sql_help.c:3022 sql_help.c:3026 sql_help.c:3028 sql_help.c:3034
-#: sql_help.c:3052 sql_help.c:3079 sql_help.c:3114 sql_help.c:3126
-#: sql_help.c:3135 sql_help.c:3179 sql_help.c:3193 sql_help.c:3221
-#: sql_help.c:3229 sql_help.c:3237 sql_help.c:3245 sql_help.c:3253
-#: sql_help.c:3261 sql_help.c:3269 sql_help.c:3277 sql_help.c:3286
-#: sql_help.c:3297 sql_help.c:3305 sql_help.c:3313 sql_help.c:3321
-#: sql_help.c:3329 sql_help.c:3339 sql_help.c:3348 sql_help.c:3357
-#: sql_help.c:3365 sql_help.c:3375 sql_help.c:3386 sql_help.c:3394
-#: sql_help.c:3403 sql_help.c:3414 sql_help.c:3423 sql_help.c:3431
-#: sql_help.c:3439 sql_help.c:3447 sql_help.c:3455 sql_help.c:3463
-#: sql_help.c:3471 sql_help.c:3479 sql_help.c:3487 sql_help.c:3495
-#: sql_help.c:3503 sql_help.c:3520 sql_help.c:3529 sql_help.c:3537
-#: sql_help.c:3554 sql_help.c:3569 sql_help.c:3839 sql_help.c:3890
-#: sql_help.c:3919 sql_help.c:3927 sql_help.c:4360 sql_help.c:4408
-#: sql_help.c:4549
+#: sql_help.c:1090 sql_help.c:1092 sql_help.c:1094 sql_help.c:1096
+#: sql_help.c:1112 sql_help.c:1114 sql_help.c:1118 sql_help.c:1121
+#: sql_help.c:1122 sql_help.c:1123 sql_help.c:1126 sql_help.c:1128
+#: sql_help.c:1262 sql_help.c:1264 sql_help.c:1267 sql_help.c:1270
+#: sql_help.c:1272 sql_help.c:1274 sql_help.c:1277 sql_help.c:1280
+#: sql_help.c:1391 sql_help.c:1393 sql_help.c:1395 sql_help.c:1398
+#: sql_help.c:1419 sql_help.c:1422 sql_help.c:1425 sql_help.c:1428
+#: sql_help.c:1432 sql_help.c:1434 sql_help.c:1436 sql_help.c:1438
+#: sql_help.c:1452 sql_help.c:1455 sql_help.c:1457 sql_help.c:1459
+#: sql_help.c:1469 sql_help.c:1471 sql_help.c:1481 sql_help.c:1483
+#: sql_help.c:1493 sql_help.c:1496 sql_help.c:1519 sql_help.c:1521
+#: sql_help.c:1523 sql_help.c:1525 sql_help.c:1528 sql_help.c:1530
+#: sql_help.c:1533 sql_help.c:1536 sql_help.c:1586 sql_help.c:1629
+#: sql_help.c:1632 sql_help.c:1634 sql_help.c:1636 sql_help.c:1639
+#: sql_help.c:1641 sql_help.c:1643 sql_help.c:1646 sql_help.c:1696
+#: sql_help.c:1712 sql_help.c:1933 sql_help.c:2002 sql_help.c:2021
+#: sql_help.c:2034 sql_help.c:2091 sql_help.c:2098 sql_help.c:2108
+#: sql_help.c:2129 sql_help.c:2155 sql_help.c:2173 sql_help.c:2200
+#: sql_help.c:2295 sql_help.c:2340 sql_help.c:2364 sql_help.c:2387
+#: sql_help.c:2391 sql_help.c:2425 sql_help.c:2445 sql_help.c:2467
+#: sql_help.c:2481 sql_help.c:2501 sql_help.c:2524 sql_help.c:2554
+#: sql_help.c:2579 sql_help.c:2625 sql_help.c:2903 sql_help.c:2916
+#: sql_help.c:2933 sql_help.c:2949 sql_help.c:2989 sql_help.c:3041
+#: sql_help.c:3045 sql_help.c:3047 sql_help.c:3053 sql_help.c:3071
+#: sql_help.c:3098 sql_help.c:3133 sql_help.c:3145 sql_help.c:3154
+#: sql_help.c:3198 sql_help.c:3212 sql_help.c:3240 sql_help.c:3248
+#: sql_help.c:3260 sql_help.c:3270 sql_help.c:3278 sql_help.c:3286
+#: sql_help.c:3294 sql_help.c:3302 sql_help.c:3311 sql_help.c:3322
+#: sql_help.c:3330 sql_help.c:3338 sql_help.c:3346 sql_help.c:3354
+#: sql_help.c:3364 sql_help.c:3373 sql_help.c:3382 sql_help.c:3390
+#: sql_help.c:3400 sql_help.c:3411 sql_help.c:3419 sql_help.c:3428
+#: sql_help.c:3439 sql_help.c:3448 sql_help.c:3456 sql_help.c:3464
+#: sql_help.c:3472 sql_help.c:3480 sql_help.c:3488 sql_help.c:3496
+#: sql_help.c:3504 sql_help.c:3512 sql_help.c:3520 sql_help.c:3528
+#: sql_help.c:3545 sql_help.c:3554 sql_help.c:3562 sql_help.c:3579
+#: sql_help.c:3594 sql_help.c:3869 sql_help.c:3920 sql_help.c:3949
+#: sql_help.c:3962 sql_help.c:4407 sql_help.c:4455 sql_help.c:4596
 msgid "name"
 msgstr "nombre"
 
-#: sql_help.c:36 sql_help.c:39 sql_help.c:42 sql_help.c:327 sql_help.c:1770
-#: sql_help.c:3194 sql_help.c:4146
+#: sql_help.c:36 sql_help.c:39 sql_help.c:42 sql_help.c:327 sql_help.c:1783
+#: sql_help.c:3213 sql_help.c:4193
 msgid "aggregate_signature"
 msgstr "signatura_func_agregación"
 
@@ -3935,9 +4118,9 @@ msgstr "signatura_func_agregación"
 #: sql_help.c:589 sql_help.c:616 sql_help.c:666 sql_help.c:731 sql_help.c:786
 #: sql_help.c:807 sql_help.c:846 sql_help.c:891 sql_help.c:932 sql_help.c:984
 #: sql_help.c:1016 sql_help.c:1026 sql_help.c:1059 sql_help.c:1079
-#: sql_help.c:1092 sql_help.c:1126 sql_help.c:1267 sql_help.c:1387
-#: sql_help.c:1430 sql_help.c:1451 sql_help.c:1465 sql_help.c:1477
-#: sql_help.c:1490 sql_help.c:1521 sql_help.c:1578 sql_help.c:1627
+#: sql_help.c:1093 sql_help.c:1129 sql_help.c:1271 sql_help.c:1392
+#: sql_help.c:1435 sql_help.c:1456 sql_help.c:1470 sql_help.c:1482
+#: sql_help.c:1495 sql_help.c:1522 sql_help.c:1587 sql_help.c:1640
 msgid "new_name"
 msgstr "nuevo_nombre"
 
@@ -3945,21 +4128,21 @@ msgstr "nuevo_nombre"
 #: sql_help.c:266 sql_help.c:397 sql_help.c:482 sql_help.c:529 sql_help.c:618
 #: sql_help.c:627 sql_help.c:685 sql_help.c:705 sql_help.c:734 sql_help.c:789
 #: sql_help.c:851 sql_help.c:889 sql_help.c:989 sql_help.c:1028 sql_help.c:1057
-#: sql_help.c:1077 sql_help.c:1090 sql_help.c:1124 sql_help.c:1327
-#: sql_help.c:1389 sql_help.c:1432 sql_help.c:1453 sql_help.c:1516
-#: sql_help.c:1625 sql_help.c:2870
+#: sql_help.c:1077 sql_help.c:1091 sql_help.c:1127 sql_help.c:1332
+#: sql_help.c:1394 sql_help.c:1437 sql_help.c:1458 sql_help.c:1520
+#: sql_help.c:1635 sql_help.c:2889
 msgid "new_owner"
 msgstr "nuevo_dueño"
 
 #: sql_help.c:43 sql_help.c:71 sql_help.c:86 sql_help.c:252 sql_help.c:319
 #: sql_help.c:448 sql_help.c:534 sql_help.c:668 sql_help.c:709 sql_help.c:737
-#: sql_help.c:792 sql_help.c:856 sql_help.c:994 sql_help.c:1061 sql_help.c:1094
-#: sql_help.c:1269 sql_help.c:1434 sql_help.c:1455 sql_help.c:1467
-#: sql_help.c:1479 sql_help.c:1523 sql_help.c:1629
+#: sql_help.c:792 sql_help.c:856 sql_help.c:994 sql_help.c:1061 sql_help.c:1095
+#: sql_help.c:1273 sql_help.c:1439 sql_help.c:1460 sql_help.c:1472
+#: sql_help.c:1484 sql_help.c:1524 sql_help.c:1642
 msgid "new_schema"
 msgstr "nuevo_esquema"
 
-#: sql_help.c:44 sql_help.c:1834 sql_help.c:3195 sql_help.c:4175
+#: sql_help.c:44 sql_help.c:1847 sql_help.c:3214 sql_help.c:4222
 msgid "where aggregate_signature is:"
 msgstr "donde signatura_func_agregación es:"
 
@@ -3967,13 +4150,13 @@ msgstr "donde signatura_func_agregación es:"
 #: sql_help.c:354 sql_help.c:370 sql_help.c:373 sql_help.c:376 sql_help.c:516
 #: sql_help.c:521 sql_help.c:526 sql_help.c:531 sql_help.c:536 sql_help.c:838
 #: sql_help.c:843 sql_help.c:848 sql_help.c:853 sql_help.c:858 sql_help.c:976
-#: sql_help.c:981 sql_help.c:986 sql_help.c:991 sql_help.c:996 sql_help.c:1788
-#: sql_help.c:1805 sql_help.c:1811 sql_help.c:1835 sql_help.c:1838
-#: sql_help.c:1841 sql_help.c:1990 sql_help.c:2009 sql_help.c:2012
-#: sql_help.c:2283 sql_help.c:2483 sql_help.c:3196 sql_help.c:3199
-#: sql_help.c:3202 sql_help.c:3287 sql_help.c:3376 sql_help.c:3404
-#: sql_help.c:3724 sql_help.c:4057 sql_help.c:4152 sql_help.c:4159
-#: sql_help.c:4165 sql_help.c:4176 sql_help.c:4179 sql_help.c:4182
+#: sql_help.c:981 sql_help.c:986 sql_help.c:991 sql_help.c:996 sql_help.c:1801
+#: sql_help.c:1818 sql_help.c:1824 sql_help.c:1848 sql_help.c:1851
+#: sql_help.c:1854 sql_help.c:2003 sql_help.c:2022 sql_help.c:2025
+#: sql_help.c:2296 sql_help.c:2502 sql_help.c:3215 sql_help.c:3218
+#: sql_help.c:3221 sql_help.c:3312 sql_help.c:3401 sql_help.c:3429
+#: sql_help.c:3753 sql_help.c:4101 sql_help.c:4199 sql_help.c:4206
+#: sql_help.c:4212 sql_help.c:4223 sql_help.c:4226 sql_help.c:4229
 msgid "argmode"
 msgstr "modo_arg"
 
@@ -3981,13 +4164,13 @@ msgstr "modo_arg"
 #: sql_help.c:355 sql_help.c:371 sql_help.c:374 sql_help.c:377 sql_help.c:517
 #: sql_help.c:522 sql_help.c:527 sql_help.c:532 sql_help.c:537 sql_help.c:839
 #: sql_help.c:844 sql_help.c:849 sql_help.c:854 sql_help.c:859 sql_help.c:977
-#: sql_help.c:982 sql_help.c:987 sql_help.c:992 sql_help.c:997 sql_help.c:1789
-#: sql_help.c:1806 sql_help.c:1812 sql_help.c:1836 sql_help.c:1839
-#: sql_help.c:1842 sql_help.c:1991 sql_help.c:2010 sql_help.c:2013
-#: sql_help.c:2284 sql_help.c:2484 sql_help.c:3197 sql_help.c:3200
-#: sql_help.c:3203 sql_help.c:3288 sql_help.c:3377 sql_help.c:3405
-#: sql_help.c:4153 sql_help.c:4160 sql_help.c:4166 sql_help.c:4177
-#: sql_help.c:4180 sql_help.c:4183
+#: sql_help.c:982 sql_help.c:987 sql_help.c:992 sql_help.c:997 sql_help.c:1802
+#: sql_help.c:1819 sql_help.c:1825 sql_help.c:1849 sql_help.c:1852
+#: sql_help.c:1855 sql_help.c:2004 sql_help.c:2023 sql_help.c:2026
+#: sql_help.c:2297 sql_help.c:2503 sql_help.c:3216 sql_help.c:3219
+#: sql_help.c:3222 sql_help.c:3313 sql_help.c:3402 sql_help.c:3430
+#: sql_help.c:4200 sql_help.c:4207 sql_help.c:4213 sql_help.c:4224
+#: sql_help.c:4227 sql_help.c:4230
 msgid "argname"
 msgstr "nombre_arg"
 
@@ -3995,67 +4178,69 @@ msgstr "nombre_arg"
 #: sql_help.c:356 sql_help.c:372 sql_help.c:375 sql_help.c:378 sql_help.c:518
 #: sql_help.c:523 sql_help.c:528 sql_help.c:533 sql_help.c:538 sql_help.c:840
 #: sql_help.c:845 sql_help.c:850 sql_help.c:855 sql_help.c:860 sql_help.c:978
-#: sql_help.c:983 sql_help.c:988 sql_help.c:993 sql_help.c:998 sql_help.c:1790
-#: sql_help.c:1807 sql_help.c:1813 sql_help.c:1837 sql_help.c:1840
-#: sql_help.c:1843 sql_help.c:2285 sql_help.c:2485 sql_help.c:3198
-#: sql_help.c:3201 sql_help.c:3204 sql_help.c:3289 sql_help.c:3378
-#: sql_help.c:3406 sql_help.c:4154 sql_help.c:4161 sql_help.c:4167
-#: sql_help.c:4178 sql_help.c:4181 sql_help.c:4184
+#: sql_help.c:983 sql_help.c:988 sql_help.c:993 sql_help.c:998 sql_help.c:1803
+#: sql_help.c:1820 sql_help.c:1826 sql_help.c:1850 sql_help.c:1853
+#: sql_help.c:1856 sql_help.c:2298 sql_help.c:2504 sql_help.c:3217
+#: sql_help.c:3220 sql_help.c:3223 sql_help.c:3314 sql_help.c:3403
+#: sql_help.c:3431 sql_help.c:4201 sql_help.c:4208 sql_help.c:4214
+#: sql_help.c:4225 sql_help.c:4228 sql_help.c:4231
 msgid "argtype"
 msgstr "tipo_arg"
 
 #: sql_help.c:112 sql_help.c:394 sql_help.c:471 sql_help.c:483 sql_help.c:926
-#: sql_help.c:1074 sql_help.c:1448 sql_help.c:1572 sql_help.c:1604
-#: sql_help.c:1652 sql_help.c:1891 sql_help.c:1898 sql_help.c:2190
-#: sql_help.c:2232 sql_help.c:2239 sql_help.c:2248 sql_help.c:2325
-#: sql_help.c:2536 sql_help.c:2628 sql_help.c:2899 sql_help.c:3080
-#: sql_help.c:3102 sql_help.c:3590 sql_help.c:3758 sql_help.c:4610
+#: sql_help.c:1074 sql_help.c:1453 sql_help.c:1581 sql_help.c:1613
+#: sql_help.c:1665 sql_help.c:1904 sql_help.c:1911 sql_help.c:2203
+#: sql_help.c:2245 sql_help.c:2252 sql_help.c:2261 sql_help.c:2341
+#: sql_help.c:2555 sql_help.c:2647 sql_help.c:2918 sql_help.c:3099
+#: sql_help.c:3121 sql_help.c:3261 sql_help.c:3616 sql_help.c:3788
+#: sql_help.c:3961 sql_help.c:4658
 msgid "option"
 msgstr "opción"
 
-#: sql_help.c:113 sql_help.c:927 sql_help.c:1573 sql_help.c:2326
-#: sql_help.c:2537 sql_help.c:3081
+#: sql_help.c:113 sql_help.c:927 sql_help.c:1582 sql_help.c:2342
+#: sql_help.c:2556 sql_help.c:3100 sql_help.c:3262
 msgid "where option can be:"
 msgstr "donde opción puede ser:"
 
-#: sql_help.c:114 sql_help.c:2122
+#: sql_help.c:114 sql_help.c:2137
 msgid "allowconn"
 msgstr "allowconn"
 
-#: sql_help.c:115 sql_help.c:928 sql_help.c:1574 sql_help.c:2123
-#: sql_help.c:2538 sql_help.c:3082
+#: sql_help.c:115 sql_help.c:928 sql_help.c:1583 sql_help.c:2138
+#: sql_help.c:2343 sql_help.c:2557 sql_help.c:3101
 msgid "connlimit"
 msgstr "límite_conexiones"
 
-#: sql_help.c:116 sql_help.c:2124
+#: sql_help.c:116 sql_help.c:2139
 msgid "istemplate"
 msgstr "esplantilla"
 
-#: sql_help.c:122 sql_help.c:606 sql_help.c:671 sql_help.c:1272 sql_help.c:1320
+#: sql_help.c:122 sql_help.c:606 sql_help.c:671 sql_help.c:1276 sql_help.c:1325
 msgid "new_tablespace"
 msgstr "nuevo_tablespace"
 
 #: sql_help.c:124 sql_help.c:127 sql_help.c:129 sql_help.c:544 sql_help.c:546
 #: sql_help.c:547 sql_help.c:863 sql_help.c:865 sql_help.c:866 sql_help.c:935
 #: sql_help.c:939 sql_help.c:942 sql_help.c:1003 sql_help.c:1005
-#: sql_help.c:1006 sql_help.c:1137 sql_help.c:1140 sql_help.c:1581
-#: sql_help.c:1585 sql_help.c:1588 sql_help.c:2295 sql_help.c:2489
-#: sql_help.c:3944 sql_help.c:4349
+#: sql_help.c:1006 sql_help.c:1140 sql_help.c:1143 sql_help.c:1590
+#: sql_help.c:1594 sql_help.c:1597 sql_help.c:2308 sql_help.c:2508
+#: sql_help.c:3980 sql_help.c:4396
 msgid "configuration_parameter"
 msgstr "parámetro_de_configuración"
 
 #: sql_help.c:125 sql_help.c:395 sql_help.c:466 sql_help.c:472 sql_help.c:484
 #: sql_help.c:545 sql_help.c:598 sql_help.c:677 sql_help.c:683 sql_help.c:864
 #: sql_help.c:887 sql_help.c:936 sql_help.c:1004 sql_help.c:1075
-#: sql_help.c:1114 sql_help.c:1117 sql_help.c:1122 sql_help.c:1138
-#: sql_help.c:1139 sql_help.c:1302 sql_help.c:1322 sql_help.c:1370
-#: sql_help.c:1392 sql_help.c:1449 sql_help.c:1582 sql_help.c:1605
-#: sql_help.c:2191 sql_help.c:2233 sql_help.c:2240 sql_help.c:2249
-#: sql_help.c:2296 sql_help.c:2297 sql_help.c:2356 sql_help.c:2390
-#: sql_help.c:2490 sql_help.c:2491 sql_help.c:2508 sql_help.c:2629
-#: sql_help.c:2659 sql_help.c:2764 sql_help.c:2777 sql_help.c:2791
-#: sql_help.c:2832 sql_help.c:2856 sql_help.c:2873 sql_help.c:2900
-#: sql_help.c:3103 sql_help.c:3759 sql_help.c:4350 sql_help.c:4351
+#: sql_help.c:1117 sql_help.c:1120 sql_help.c:1125 sql_help.c:1141
+#: sql_help.c:1142 sql_help.c:1307 sql_help.c:1327 sql_help.c:1375
+#: sql_help.c:1397 sql_help.c:1454 sql_help.c:1538 sql_help.c:1591
+#: sql_help.c:1614 sql_help.c:2204 sql_help.c:2246 sql_help.c:2253
+#: sql_help.c:2262 sql_help.c:2309 sql_help.c:2310 sql_help.c:2372
+#: sql_help.c:2375 sql_help.c:2409 sql_help.c:2509 sql_help.c:2510
+#: sql_help.c:2527 sql_help.c:2648 sql_help.c:2678 sql_help.c:2783
+#: sql_help.c:2796 sql_help.c:2810 sql_help.c:2851 sql_help.c:2875
+#: sql_help.c:2892 sql_help.c:2919 sql_help.c:3122 sql_help.c:3789
+#: sql_help.c:4397 sql_help.c:4398
 msgid "value"
 msgstr "valor"
 
@@ -4063,9 +4248,9 @@ msgstr "valor"
 msgid "target_role"
 msgstr "rol_destino"
 
-#: sql_help.c:198 sql_help.c:2174 sql_help.c:2584 sql_help.c:2589
-#: sql_help.c:3706 sql_help.c:3713 sql_help.c:3727 sql_help.c:3733
-#: sql_help.c:4039 sql_help.c:4046 sql_help.c:4060 sql_help.c:4066
+#: sql_help.c:198 sql_help.c:2188 sql_help.c:2603 sql_help.c:2608
+#: sql_help.c:3735 sql_help.c:3742 sql_help.c:3756 sql_help.c:3762
+#: sql_help.c:4083 sql_help.c:4090 sql_help.c:4104 sql_help.c:4110
 msgid "schema_name"
 msgstr "nombre_de_esquema"
 
@@ -4080,33 +4265,29 @@ msgstr "donde grant_o_revoke_abreviado es uno de:"
 #: sql_help.c:201 sql_help.c:202 sql_help.c:203 sql_help.c:204 sql_help.c:205
 #: sql_help.c:206 sql_help.c:207 sql_help.c:208 sql_help.c:209 sql_help.c:210
 #: sql_help.c:569 sql_help.c:605 sql_help.c:670 sql_help.c:810 sql_help.c:946
-#: sql_help.c:1271 sql_help.c:1592 sql_help.c:2329 sql_help.c:2330
-#: sql_help.c:2331 sql_help.c:2332 sql_help.c:2333 sql_help.c:2464
-#: sql_help.c:2541 sql_help.c:2542 sql_help.c:2543 sql_help.c:2544
-#: sql_help.c:2545 sql_help.c:3085 sql_help.c:3086 sql_help.c:3087
-#: sql_help.c:3088 sql_help.c:3089 sql_help.c:3740 sql_help.c:3741
-#: sql_help.c:3742 sql_help.c:4040 sql_help.c:4044 sql_help.c:4047
-#: sql_help.c:4049 sql_help.c:4051 sql_help.c:4053 sql_help.c:4055
-#: sql_help.c:4061 sql_help.c:4063 sql_help.c:4065 sql_help.c:4067
-#: sql_help.c:4069 sql_help.c:4071 sql_help.c:4072 sql_help.c:4073
-#: sql_help.c:4370
+#: sql_help.c:1275 sql_help.c:1601 sql_help.c:2346 sql_help.c:2347
+#: sql_help.c:2348 sql_help.c:2349 sql_help.c:2350 sql_help.c:2483
+#: sql_help.c:2560 sql_help.c:2561 sql_help.c:2562 sql_help.c:2563
+#: sql_help.c:2564 sql_help.c:3104 sql_help.c:3105 sql_help.c:3106
+#: sql_help.c:3107 sql_help.c:3108 sql_help.c:3768 sql_help.c:3772
+#: sql_help.c:4116 sql_help.c:4120 sql_help.c:4417
 msgid "role_name"
 msgstr "nombre_de_rol"
 
-#: sql_help.c:236 sql_help.c:459 sql_help.c:1287 sql_help.c:1289
-#: sql_help.c:1337 sql_help.c:1349 sql_help.c:1374 sql_help.c:1621
-#: sql_help.c:2143 sql_help.c:2147 sql_help.c:2252 sql_help.c:2257
-#: sql_help.c:2351 sql_help.c:2759 sql_help.c:2772 sql_help.c:2786
-#: sql_help.c:2795 sql_help.c:2807 sql_help.c:2836 sql_help.c:3790
-#: sql_help.c:3805 sql_help.c:3807 sql_help.c:4235 sql_help.c:4236
-#: sql_help.c:4245 sql_help.c:4286 sql_help.c:4287 sql_help.c:4288
-#: sql_help.c:4289 sql_help.c:4290 sql_help.c:4291 sql_help.c:4324
-#: sql_help.c:4325 sql_help.c:4330 sql_help.c:4335 sql_help.c:4474
-#: sql_help.c:4475 sql_help.c:4484 sql_help.c:4525 sql_help.c:4526
-#: sql_help.c:4527 sql_help.c:4528 sql_help.c:4529 sql_help.c:4530
-#: sql_help.c:4577 sql_help.c:4579 sql_help.c:4636 sql_help.c:4692
-#: sql_help.c:4693 sql_help.c:4702 sql_help.c:4743 sql_help.c:4744
-#: sql_help.c:4745 sql_help.c:4746 sql_help.c:4747 sql_help.c:4748
+#: sql_help.c:236 sql_help.c:459 sql_help.c:1291 sql_help.c:1293
+#: sql_help.c:1342 sql_help.c:1354 sql_help.c:1379 sql_help.c:1631
+#: sql_help.c:2158 sql_help.c:2162 sql_help.c:2265 sql_help.c:2270
+#: sql_help.c:2368 sql_help.c:2778 sql_help.c:2791 sql_help.c:2805
+#: sql_help.c:2814 sql_help.c:2826 sql_help.c:2855 sql_help.c:3820
+#: sql_help.c:3835 sql_help.c:3837 sql_help.c:4282 sql_help.c:4283
+#: sql_help.c:4292 sql_help.c:4333 sql_help.c:4334 sql_help.c:4335
+#: sql_help.c:4336 sql_help.c:4337 sql_help.c:4338 sql_help.c:4371
+#: sql_help.c:4372 sql_help.c:4377 sql_help.c:4382 sql_help.c:4521
+#: sql_help.c:4522 sql_help.c:4531 sql_help.c:4572 sql_help.c:4573
+#: sql_help.c:4574 sql_help.c:4575 sql_help.c:4576 sql_help.c:4577
+#: sql_help.c:4624 sql_help.c:4626 sql_help.c:4685 sql_help.c:4741
+#: sql_help.c:4742 sql_help.c:4751 sql_help.c:4792 sql_help.c:4793
+#: sql_help.c:4794 sql_help.c:4795 sql_help.c:4796 sql_help.c:4797
 msgid "expression"
 msgstr "expresión"
 
@@ -4115,14 +4296,14 @@ msgid "domain_constraint"
 msgstr "restricción_de_dominio"
 
 #: sql_help.c:241 sql_help.c:243 sql_help.c:246 sql_help.c:474 sql_help.c:475
-#: sql_help.c:1264 sql_help.c:1308 sql_help.c:1309 sql_help.c:1310
-#: sql_help.c:1336 sql_help.c:1348 sql_help.c:1365 sql_help.c:1776
-#: sql_help.c:1778 sql_help.c:2146 sql_help.c:2251 sql_help.c:2256
-#: sql_help.c:2794 sql_help.c:2806 sql_help.c:3802
+#: sql_help.c:1268 sql_help.c:1313 sql_help.c:1314 sql_help.c:1315
+#: sql_help.c:1341 sql_help.c:1353 sql_help.c:1370 sql_help.c:1789
+#: sql_help.c:1791 sql_help.c:2161 sql_help.c:2264 sql_help.c:2269
+#: sql_help.c:2813 sql_help.c:2825 sql_help.c:3832
 msgid "constraint_name"
 msgstr "nombre_restricción"
 
-#: sql_help.c:244 sql_help.c:1265
+#: sql_help.c:244 sql_help.c:1269
 msgid "new_constraint_name"
 msgstr "nuevo_nombre_restricción"
 
@@ -4142,82 +4323,82 @@ msgstr "dondo objeto_miembro es:"
 #: sql_help.c:334 sql_help.c:335 sql_help.c:340 sql_help.c:344 sql_help.c:346
 #: sql_help.c:348 sql_help.c:357 sql_help.c:358 sql_help.c:359 sql_help.c:360
 #: sql_help.c:361 sql_help.c:362 sql_help.c:363 sql_help.c:364 sql_help.c:367
-#: sql_help.c:368 sql_help.c:1768 sql_help.c:1773 sql_help.c:1780
-#: sql_help.c:1781 sql_help.c:1782 sql_help.c:1783 sql_help.c:1784
-#: sql_help.c:1785 sql_help.c:1786 sql_help.c:1791 sql_help.c:1793
-#: sql_help.c:1797 sql_help.c:1799 sql_help.c:1803 sql_help.c:1808
-#: sql_help.c:1809 sql_help.c:1816 sql_help.c:1817 sql_help.c:1818
-#: sql_help.c:1819 sql_help.c:1820 sql_help.c:1821 sql_help.c:1822
-#: sql_help.c:1823 sql_help.c:1824 sql_help.c:1825 sql_help.c:1826
-#: sql_help.c:1831 sql_help.c:1832 sql_help.c:4142 sql_help.c:4147
-#: sql_help.c:4148 sql_help.c:4149 sql_help.c:4150 sql_help.c:4156
-#: sql_help.c:4157 sql_help.c:4162 sql_help.c:4163 sql_help.c:4168
-#: sql_help.c:4169 sql_help.c:4170 sql_help.c:4171 sql_help.c:4172
-#: sql_help.c:4173
+#: sql_help.c:368 sql_help.c:1781 sql_help.c:1786 sql_help.c:1793
+#: sql_help.c:1794 sql_help.c:1795 sql_help.c:1796 sql_help.c:1797
+#: sql_help.c:1798 sql_help.c:1799 sql_help.c:1804 sql_help.c:1806
+#: sql_help.c:1810 sql_help.c:1812 sql_help.c:1816 sql_help.c:1821
+#: sql_help.c:1822 sql_help.c:1829 sql_help.c:1830 sql_help.c:1831
+#: sql_help.c:1832 sql_help.c:1833 sql_help.c:1834 sql_help.c:1835
+#: sql_help.c:1836 sql_help.c:1837 sql_help.c:1838 sql_help.c:1839
+#: sql_help.c:1844 sql_help.c:1845 sql_help.c:4189 sql_help.c:4194
+#: sql_help.c:4195 sql_help.c:4196 sql_help.c:4197 sql_help.c:4203
+#: sql_help.c:4204 sql_help.c:4209 sql_help.c:4210 sql_help.c:4215
+#: sql_help.c:4216 sql_help.c:4217 sql_help.c:4218 sql_help.c:4219
+#: sql_help.c:4220
 msgid "object_name"
 msgstr "nombre_de_objeto"
 
-#: sql_help.c:326 sql_help.c:1769 sql_help.c:4145
+#: sql_help.c:326 sql_help.c:1782 sql_help.c:4192
 msgid "aggregate_name"
 msgstr "nombre_función_agregación"
 
-#: sql_help.c:328 sql_help.c:1771 sql_help.c:2055 sql_help.c:2059
-#: sql_help.c:2061 sql_help.c:3212
+#: sql_help.c:328 sql_help.c:1784 sql_help.c:2068 sql_help.c:2072
+#: sql_help.c:2074 sql_help.c:3231
 msgid "source_type"
 msgstr "tipo_fuente"
 
-#: sql_help.c:329 sql_help.c:1772 sql_help.c:2056 sql_help.c:2060
-#: sql_help.c:2062 sql_help.c:3213
+#: sql_help.c:329 sql_help.c:1785 sql_help.c:2069 sql_help.c:2073
+#: sql_help.c:2075 sql_help.c:3232
 msgid "target_type"
 msgstr "tipo_destino"
 
-#: sql_help.c:336 sql_help.c:774 sql_help.c:1787 sql_help.c:2057
-#: sql_help.c:2098 sql_help.c:2161 sql_help.c:2407 sql_help.c:2438
-#: sql_help.c:2976 sql_help.c:4056 sql_help.c:4151 sql_help.c:4264
-#: sql_help.c:4268 sql_help.c:4272 sql_help.c:4275 sql_help.c:4503
-#: sql_help.c:4507 sql_help.c:4511 sql_help.c:4514 sql_help.c:4721
-#: sql_help.c:4725 sql_help.c:4729 sql_help.c:4732
+#: sql_help.c:336 sql_help.c:774 sql_help.c:1800 sql_help.c:2070
+#: sql_help.c:2111 sql_help.c:2176 sql_help.c:2426 sql_help.c:2457
+#: sql_help.c:2995 sql_help.c:4100 sql_help.c:4198 sql_help.c:4311
+#: sql_help.c:4315 sql_help.c:4319 sql_help.c:4322 sql_help.c:4550
+#: sql_help.c:4554 sql_help.c:4558 sql_help.c:4561 sql_help.c:4770
+#: sql_help.c:4774 sql_help.c:4778 sql_help.c:4781
 msgid "function_name"
 msgstr "nombre_de_función"
 
-#: sql_help.c:341 sql_help.c:767 sql_help.c:1794 sql_help.c:2431
+#: sql_help.c:341 sql_help.c:767 sql_help.c:1807 sql_help.c:2450
 msgid "operator_name"
 msgstr "nombre_operador"
 
-#: sql_help.c:342 sql_help.c:703 sql_help.c:707 sql_help.c:711 sql_help.c:1795
-#: sql_help.c:2408 sql_help.c:3330
+#: sql_help.c:342 sql_help.c:703 sql_help.c:707 sql_help.c:711 sql_help.c:1808
+#: sql_help.c:2427 sql_help.c:3355
 msgid "left_type"
 msgstr "tipo_izq"
 
-#: sql_help.c:343 sql_help.c:704 sql_help.c:708 sql_help.c:712 sql_help.c:1796
-#: sql_help.c:2409 sql_help.c:3331
+#: sql_help.c:343 sql_help.c:704 sql_help.c:708 sql_help.c:712 sql_help.c:1809
+#: sql_help.c:2428 sql_help.c:3356
 msgid "right_type"
 msgstr "tipo_der"
 
 #: sql_help.c:345 sql_help.c:347 sql_help.c:730 sql_help.c:733 sql_help.c:736
 #: sql_help.c:765 sql_help.c:777 sql_help.c:785 sql_help.c:788 sql_help.c:791
-#: sql_help.c:1354 sql_help.c:1798 sql_help.c:1800 sql_help.c:2428
-#: sql_help.c:2449 sql_help.c:2812 sql_help.c:3340 sql_help.c:3349
+#: sql_help.c:1359 sql_help.c:1811 sql_help.c:1813 sql_help.c:2447
+#: sql_help.c:2468 sql_help.c:2831 sql_help.c:3365 sql_help.c:3374
 msgid "index_method"
 msgstr "método_de_índice"
 
-#: sql_help.c:349 sql_help.c:1804 sql_help.c:4158
+#: sql_help.c:349 sql_help.c:1817 sql_help.c:4205
 msgid "procedure_name"
 msgstr "nombre_de_procedimiento"
 
-#: sql_help.c:353 sql_help.c:1810 sql_help.c:3723 sql_help.c:4164
+#: sql_help.c:353 sql_help.c:1823 sql_help.c:3752 sql_help.c:4211
 msgid "routine_name"
 msgstr "nombre_de_rutina"
 
-#: sql_help.c:365 sql_help.c:1326 sql_help.c:1827 sql_help.c:2291
-#: sql_help.c:2488 sql_help.c:2767 sql_help.c:2943 sql_help.c:3511
-#: sql_help.c:3737 sql_help.c:4070
+#: sql_help.c:365 sql_help.c:1331 sql_help.c:1840 sql_help.c:2304
+#: sql_help.c:2507 sql_help.c:2786 sql_help.c:2962 sql_help.c:3536
+#: sql_help.c:3766 sql_help.c:4114
 msgid "type_name"
 msgstr "nombre_de_tipo"
 
-#: sql_help.c:366 sql_help.c:1828 sql_help.c:2290 sql_help.c:2487
-#: sql_help.c:2944 sql_help.c:3170 sql_help.c:3512 sql_help.c:3729
-#: sql_help.c:4062
+#: sql_help.c:366 sql_help.c:1841 sql_help.c:2303 sql_help.c:2506
+#: sql_help.c:2963 sql_help.c:3189 sql_help.c:3537 sql_help.c:3758
+#: sql_help.c:4106
 msgid "lang_name"
 msgstr "nombre_lenguaje"
 
@@ -4225,129 +4406,134 @@ msgstr "nombre_lenguaje"
 msgid "and aggregate_signature is:"
 msgstr "y signatura_func_agregación es:"
 
-#: sql_help.c:392 sql_help.c:1922 sql_help.c:2188
+#: sql_help.c:392 sql_help.c:1935 sql_help.c:2201
 msgid "handler_function"
 msgstr "función_manejadora"
 
-#: sql_help.c:393 sql_help.c:2189
+#: sql_help.c:393 sql_help.c:2202
 msgid "validator_function"
 msgstr "función_validadora"
 
 #: sql_help.c:441 sql_help.c:519 sql_help.c:659 sql_help.c:841 sql_help.c:979
-#: sql_help.c:1259 sql_help.c:1514
+#: sql_help.c:1263 sql_help.c:1529
 msgid "action"
 msgstr "acción"
 
 #: sql_help.c:443 sql_help.c:450 sql_help.c:454 sql_help.c:455 sql_help.c:458
 #: sql_help.c:460 sql_help.c:461 sql_help.c:462 sql_help.c:464 sql_help.c:467
 #: sql_help.c:469 sql_help.c:470 sql_help.c:663 sql_help.c:673 sql_help.c:675
-#: sql_help.c:678 sql_help.c:680 sql_help.c:1055 sql_help.c:1261
-#: sql_help.c:1279 sql_help.c:1283 sql_help.c:1284 sql_help.c:1288
-#: sql_help.c:1290 sql_help.c:1291 sql_help.c:1292 sql_help.c:1294
-#: sql_help.c:1297 sql_help.c:1298 sql_help.c:1300 sql_help.c:1303
-#: sql_help.c:1305 sql_help.c:1350 sql_help.c:1352 sql_help.c:1359
-#: sql_help.c:1368 sql_help.c:1373 sql_help.c:1620 sql_help.c:1623
-#: sql_help.c:1660 sql_help.c:1775 sql_help.c:1888 sql_help.c:1894
-#: sql_help.c:1907 sql_help.c:1908 sql_help.c:1909 sql_help.c:2230
-#: sql_help.c:2243 sql_help.c:2288 sql_help.c:2350 sql_help.c:2354
-#: sql_help.c:2387 sql_help.c:2614 sql_help.c:2642 sql_help.c:2643
-#: sql_help.c:2750 sql_help.c:2758 sql_help.c:2768 sql_help.c:2771
-#: sql_help.c:2781 sql_help.c:2785 sql_help.c:2808 sql_help.c:2810
-#: sql_help.c:2817 sql_help.c:2830 sql_help.c:2835 sql_help.c:2853
-#: sql_help.c:2979 sql_help.c:3115 sql_help.c:3708 sql_help.c:3709
-#: sql_help.c:3789 sql_help.c:3804 sql_help.c:3806 sql_help.c:3808
-#: sql_help.c:4041 sql_help.c:4042 sql_help.c:4144 sql_help.c:4295
-#: sql_help.c:4534 sql_help.c:4576 sql_help.c:4578 sql_help.c:4580
-#: sql_help.c:4624 sql_help.c:4752
+#: sql_help.c:678 sql_help.c:680 sql_help.c:1055 sql_help.c:1265
+#: sql_help.c:1283 sql_help.c:1287 sql_help.c:1288 sql_help.c:1292
+#: sql_help.c:1294 sql_help.c:1295 sql_help.c:1296 sql_help.c:1297
+#: sql_help.c:1299 sql_help.c:1302 sql_help.c:1303 sql_help.c:1305
+#: sql_help.c:1308 sql_help.c:1310 sql_help.c:1355 sql_help.c:1357
+#: sql_help.c:1364 sql_help.c:1373 sql_help.c:1378 sql_help.c:1630
+#: sql_help.c:1633 sql_help.c:1637 sql_help.c:1673 sql_help.c:1788
+#: sql_help.c:1901 sql_help.c:1907 sql_help.c:1920 sql_help.c:1921
+#: sql_help.c:1922 sql_help.c:2243 sql_help.c:2256 sql_help.c:2301
+#: sql_help.c:2367 sql_help.c:2373 sql_help.c:2406 sql_help.c:2633
+#: sql_help.c:2661 sql_help.c:2662 sql_help.c:2769 sql_help.c:2777
+#: sql_help.c:2787 sql_help.c:2790 sql_help.c:2800 sql_help.c:2804
+#: sql_help.c:2827 sql_help.c:2829 sql_help.c:2836 sql_help.c:2849
+#: sql_help.c:2854 sql_help.c:2872 sql_help.c:2998 sql_help.c:3134
+#: sql_help.c:3737 sql_help.c:3738 sql_help.c:3819 sql_help.c:3834
+#: sql_help.c:3836 sql_help.c:3838 sql_help.c:4085 sql_help.c:4086
+#: sql_help.c:4191 sql_help.c:4342 sql_help.c:4581 sql_help.c:4623
+#: sql_help.c:4625 sql_help.c:4627 sql_help.c:4673 sql_help.c:4801
 msgid "column_name"
 msgstr "nombre_de_columna"
 
-#: sql_help.c:444 sql_help.c:664 sql_help.c:1262
+#: sql_help.c:444 sql_help.c:664 sql_help.c:1266 sql_help.c:1638
 msgid "new_column_name"
 msgstr "nuevo_nombre_de_columna"
 
 #: sql_help.c:449 sql_help.c:540 sql_help.c:672 sql_help.c:862 sql_help.c:1000
-#: sql_help.c:1278 sql_help.c:1530
+#: sql_help.c:1282 sql_help.c:1539
 msgid "where action is one of:"
 msgstr "donde acción es una de:"
 
-#: sql_help.c:451 sql_help.c:456 sql_help.c:1047 sql_help.c:1280
-#: sql_help.c:1285 sql_help.c:1532 sql_help.c:1536 sql_help.c:2141
-#: sql_help.c:2231 sql_help.c:2427 sql_help.c:2607 sql_help.c:2751
-#: sql_help.c:3024 sql_help.c:3891
+#: sql_help.c:451 sql_help.c:456 sql_help.c:1047 sql_help.c:1284
+#: sql_help.c:1289 sql_help.c:1541 sql_help.c:1545 sql_help.c:2156
+#: sql_help.c:2244 sql_help.c:2446 sql_help.c:2626 sql_help.c:2770
+#: sql_help.c:3043 sql_help.c:3921
 msgid "data_type"
 msgstr "tipo_de_dato"
 
-#: sql_help.c:452 sql_help.c:457 sql_help.c:1281 sql_help.c:1286
-#: sql_help.c:1533 sql_help.c:1537 sql_help.c:2142 sql_help.c:2234
-#: sql_help.c:2352 sql_help.c:2752 sql_help.c:2760 sql_help.c:2773
-#: sql_help.c:2787 sql_help.c:3025 sql_help.c:3031 sql_help.c:3799
+#: sql_help.c:452 sql_help.c:457 sql_help.c:1285 sql_help.c:1290
+#: sql_help.c:1542 sql_help.c:1546 sql_help.c:2157 sql_help.c:2247
+#: sql_help.c:2369 sql_help.c:2771 sql_help.c:2779 sql_help.c:2792
+#: sql_help.c:2806 sql_help.c:3044 sql_help.c:3050 sql_help.c:3829
 msgid "collation"
 msgstr "ordenamiento"
 
-#: sql_help.c:453 sql_help.c:1282 sql_help.c:2235 sql_help.c:2244
-#: sql_help.c:2753 sql_help.c:2769 sql_help.c:2782
+#: sql_help.c:453 sql_help.c:1286 sql_help.c:2248 sql_help.c:2257
+#: sql_help.c:2772 sql_help.c:2788 sql_help.c:2801
 msgid "column_constraint"
 msgstr "restricción_de_columna"
 
-#: sql_help.c:463 sql_help.c:603 sql_help.c:674 sql_help.c:1299
+#: sql_help.c:463 sql_help.c:603 sql_help.c:674 sql_help.c:1304 sql_help.c:4670
 msgid "integer"
 msgstr "entero"
 
-#: sql_help.c:465 sql_help.c:468 sql_help.c:676 sql_help.c:679 sql_help.c:1301
-#: sql_help.c:1304
+#: sql_help.c:465 sql_help.c:468 sql_help.c:676 sql_help.c:679 sql_help.c:1306
+#: sql_help.c:1309
 msgid "attribute_option"
 msgstr "opción_de_atributo"
 
-#: sql_help.c:473 sql_help.c:1306 sql_help.c:2236 sql_help.c:2245
-#: sql_help.c:2754 sql_help.c:2770 sql_help.c:2783
+#: sql_help.c:473 sql_help.c:1311 sql_help.c:2249 sql_help.c:2258
+#: sql_help.c:2773 sql_help.c:2789 sql_help.c:2802
 msgid "table_constraint"
 msgstr "restricción_de_tabla"
 
-#: sql_help.c:476 sql_help.c:477 sql_help.c:478 sql_help.c:479 sql_help.c:1311
-#: sql_help.c:1312 sql_help.c:1313 sql_help.c:1314 sql_help.c:1829
+#: sql_help.c:476 sql_help.c:477 sql_help.c:478 sql_help.c:479 sql_help.c:1316
+#: sql_help.c:1317 sql_help.c:1318 sql_help.c:1319 sql_help.c:1842
 msgid "trigger_name"
 msgstr "nombre_disparador"
 
-#: sql_help.c:480 sql_help.c:481 sql_help.c:1324 sql_help.c:1325
-#: sql_help.c:2237 sql_help.c:2242 sql_help.c:2757 sql_help.c:2780
+#: sql_help.c:480 sql_help.c:481 sql_help.c:1329 sql_help.c:1330
+#: sql_help.c:2250 sql_help.c:2255 sql_help.c:2776 sql_help.c:2799
 msgid "parent_table"
 msgstr "tabla_padre"
 
 #: sql_help.c:539 sql_help.c:595 sql_help.c:661 sql_help.c:861 sql_help.c:999
-#: sql_help.c:1493 sql_help.c:2173
+#: sql_help.c:1498 sql_help.c:2187
 msgid "extension_name"
 msgstr "nombre_de_extensión"
 
-#: sql_help.c:541 sql_help.c:1001 sql_help.c:2292
+#: sql_help.c:541 sql_help.c:1001 sql_help.c:2305
 msgid "execution_cost"
 msgstr "costo_de_ejecución"
 
-#: sql_help.c:542 sql_help.c:1002 sql_help.c:2293
+#: sql_help.c:542 sql_help.c:1002 sql_help.c:2306
 msgid "result_rows"
 msgstr "núm_de_filas"
 
-#: sql_help.c:543 sql_help.c:2294
+#: sql_help.c:543 sql_help.c:2307
 msgid "support_function"
 msgstr "función_de_soporte"
 
 #: sql_help.c:564 sql_help.c:566 sql_help.c:925 sql_help.c:933 sql_help.c:937
-#: sql_help.c:940 sql_help.c:943 sql_help.c:1571 sql_help.c:1579
-#: sql_help.c:1583 sql_help.c:1586 sql_help.c:1589 sql_help.c:2585
-#: sql_help.c:2587 sql_help.c:2590 sql_help.c:2591 sql_help.c:3707
-#: sql_help.c:3711 sql_help.c:3714 sql_help.c:3716 sql_help.c:3718
-#: sql_help.c:3720 sql_help.c:3722 sql_help.c:3728 sql_help.c:3730
-#: sql_help.c:3732 sql_help.c:3734 sql_help.c:3736 sql_help.c:3738
+#: sql_help.c:940 sql_help.c:943 sql_help.c:1580 sql_help.c:1588
+#: sql_help.c:1592 sql_help.c:1595 sql_help.c:1598 sql_help.c:2604
+#: sql_help.c:2606 sql_help.c:2609 sql_help.c:2610 sql_help.c:3736
+#: sql_help.c:3740 sql_help.c:3743 sql_help.c:3745 sql_help.c:3747
+#: sql_help.c:3749 sql_help.c:3751 sql_help.c:3757 sql_help.c:3759
+#: sql_help.c:3761 sql_help.c:3763 sql_help.c:3765 sql_help.c:3767
+#: sql_help.c:3769 sql_help.c:3770 sql_help.c:4084 sql_help.c:4088
+#: sql_help.c:4091 sql_help.c:4093 sql_help.c:4095 sql_help.c:4097
+#: sql_help.c:4099 sql_help.c:4105 sql_help.c:4107 sql_help.c:4109
+#: sql_help.c:4111 sql_help.c:4113 sql_help.c:4115 sql_help.c:4117
+#: sql_help.c:4118
 msgid "role_specification"
 msgstr "especificación_de_rol"
 
-#: sql_help.c:565 sql_help.c:567 sql_help.c:1602 sql_help.c:2116
-#: sql_help.c:2593 sql_help.c:3100 sql_help.c:3545 sql_help.c:4380
+#: sql_help.c:565 sql_help.c:567 sql_help.c:1611 sql_help.c:2130
+#: sql_help.c:2612 sql_help.c:3119 sql_help.c:3570 sql_help.c:4427
 msgid "user_name"
 msgstr "nombre_de_usuario"
 
-#: sql_help.c:568 sql_help.c:945 sql_help.c:1591 sql_help.c:2592
-#: sql_help.c:3739
+#: sql_help.c:568 sql_help.c:945 sql_help.c:1600 sql_help.c:2611
+#: sql_help.c:3771 sql_help.c:4119
 msgid "where role_specification can be:"
 msgstr "donde especificación_de_rol puede ser:"
 
@@ -4355,22 +4541,22 @@ msgstr "donde especificación_de_rol puede ser:"
 msgid "group_name"
 msgstr "nombre_de_grupo"
 
-#: sql_help.c:591 sql_help.c:1371 sql_help.c:2121 sql_help.c:2357
-#: sql_help.c:2391 sql_help.c:2765 sql_help.c:2778 sql_help.c:2792
-#: sql_help.c:2833 sql_help.c:2857 sql_help.c:2869 sql_help.c:3735
-#: sql_help.c:4068
+#: sql_help.c:591 sql_help.c:1376 sql_help.c:2136 sql_help.c:2376
+#: sql_help.c:2410 sql_help.c:2784 sql_help.c:2797 sql_help.c:2811
+#: sql_help.c:2852 sql_help.c:2876 sql_help.c:2888 sql_help.c:3764
+#: sql_help.c:4112
 msgid "tablespace_name"
 msgstr "nombre_de_tablespace"
 
-#: sql_help.c:593 sql_help.c:681 sql_help.c:1319 sql_help.c:1328
-#: sql_help.c:1366 sql_help.c:1709
+#: sql_help.c:593 sql_help.c:681 sql_help.c:1324 sql_help.c:1333
+#: sql_help.c:1371 sql_help.c:1722
 msgid "index_name"
 msgstr "nombre_índice"
 
-#: sql_help.c:597 sql_help.c:600 sql_help.c:682 sql_help.c:684 sql_help.c:1321
-#: sql_help.c:1323 sql_help.c:1369 sql_help.c:2355 sql_help.c:2389
-#: sql_help.c:2763 sql_help.c:2776 sql_help.c:2790 sql_help.c:2831
-#: sql_help.c:2855
+#: sql_help.c:597 sql_help.c:600 sql_help.c:682 sql_help.c:684 sql_help.c:1326
+#: sql_help.c:1328 sql_help.c:1374 sql_help.c:2374 sql_help.c:2408
+#: sql_help.c:2782 sql_help.c:2795 sql_help.c:2809 sql_help.c:2850
+#: sql_help.c:2874
 msgid "storage_parameter"
 msgstr "parámetro_de_almacenamiento"
 
@@ -4378,1746 +4564,1754 @@ msgstr "parámetro_de_almacenamiento"
 msgid "column_number"
 msgstr "número_de_columna"
 
-#: sql_help.c:626 sql_help.c:1792 sql_help.c:4155
+#: sql_help.c:626 sql_help.c:1805 sql_help.c:4202
 msgid "large_object_oid"
 msgstr "oid_de_objeto_grande"
 
-#: sql_help.c:713 sql_help.c:2412
+#: sql_help.c:713 sql_help.c:2431
 msgid "res_proc"
 msgstr "proc_res"
 
-#: sql_help.c:714 sql_help.c:2413
+#: sql_help.c:714 sql_help.c:2432
 msgid "join_proc"
 msgstr "proc_join"
 
-#: sql_help.c:766 sql_help.c:778 sql_help.c:2430
+#: sql_help.c:766 sql_help.c:778 sql_help.c:2449
 msgid "strategy_number"
 msgstr "número_de_estrategia"
 
 #: sql_help.c:768 sql_help.c:769 sql_help.c:772 sql_help.c:773 sql_help.c:779
-#: sql_help.c:780 sql_help.c:782 sql_help.c:783 sql_help.c:2432 sql_help.c:2433
-#: sql_help.c:2436 sql_help.c:2437
+#: sql_help.c:780 sql_help.c:782 sql_help.c:783 sql_help.c:2451 sql_help.c:2452
+#: sql_help.c:2455 sql_help.c:2456
 msgid "op_type"
 msgstr "tipo_op"
 
-#: sql_help.c:770 sql_help.c:2434
+#: sql_help.c:770 sql_help.c:2453
 msgid "sort_family_name"
 msgstr "nombre_familia_ordenamiento"
 
-#: sql_help.c:771 sql_help.c:781 sql_help.c:2435
+#: sql_help.c:771 sql_help.c:781 sql_help.c:2454
 msgid "support_number"
 msgstr "número_de_soporte"
 
-#: sql_help.c:775 sql_help.c:2058 sql_help.c:2439 sql_help.c:2946
-#: sql_help.c:2948
+#: sql_help.c:775 sql_help.c:2071 sql_help.c:2458 sql_help.c:2965
+#: sql_help.c:2967
 msgid "argument_type"
 msgstr "tipo_argumento"
 
 #: sql_help.c:806 sql_help.c:809 sql_help.c:880 sql_help.c:882 sql_help.c:884
-#: sql_help.c:1015 sql_help.c:1054 sql_help.c:1489 sql_help.c:1492
-#: sql_help.c:1659 sql_help.c:1708 sql_help.c:1777 sql_help.c:1802
-#: sql_help.c:1815 sql_help.c:1830 sql_help.c:1887 sql_help.c:1893
-#: sql_help.c:2229 sql_help.c:2241 sql_help.c:2348 sql_help.c:2386
-#: sql_help.c:2463 sql_help.c:2506 sql_help.c:2562 sql_help.c:2613
-#: sql_help.c:2644 sql_help.c:2749 sql_help.c:2766 sql_help.c:2779
-#: sql_help.c:2852 sql_help.c:2972 sql_help.c:3149 sql_help.c:3366
-#: sql_help.c:3415 sql_help.c:3521 sql_help.c:3705 sql_help.c:3710
-#: sql_help.c:3755 sql_help.c:3787 sql_help.c:4038 sql_help.c:4043
-#: sql_help.c:4143 sql_help.c:4250 sql_help.c:4252 sql_help.c:4301
-#: sql_help.c:4340 sql_help.c:4489 sql_help.c:4491 sql_help.c:4540
-#: sql_help.c:4574 sql_help.c:4623 sql_help.c:4707 sql_help.c:4709
-#: sql_help.c:4758
+#: sql_help.c:1015 sql_help.c:1054 sql_help.c:1494 sql_help.c:1497
+#: sql_help.c:1672 sql_help.c:1721 sql_help.c:1790 sql_help.c:1815
+#: sql_help.c:1828 sql_help.c:1843 sql_help.c:1900 sql_help.c:1906
+#: sql_help.c:2242 sql_help.c:2254 sql_help.c:2365 sql_help.c:2405
+#: sql_help.c:2482 sql_help.c:2525 sql_help.c:2581 sql_help.c:2632
+#: sql_help.c:2663 sql_help.c:2768 sql_help.c:2785 sql_help.c:2798
+#: sql_help.c:2871 sql_help.c:2991 sql_help.c:3168 sql_help.c:3391
+#: sql_help.c:3440 sql_help.c:3546 sql_help.c:3734 sql_help.c:3739
+#: sql_help.c:3785 sql_help.c:3817 sql_help.c:4082 sql_help.c:4087
+#: sql_help.c:4190 sql_help.c:4297 sql_help.c:4299 sql_help.c:4348
+#: sql_help.c:4387 sql_help.c:4536 sql_help.c:4538 sql_help.c:4587
+#: sql_help.c:4621 sql_help.c:4672 sql_help.c:4756 sql_help.c:4758
+#: sql_help.c:4807
 msgid "table_name"
 msgstr "nombre_de_tabla"
 
-#: sql_help.c:811 sql_help.c:2465
+#: sql_help.c:811 sql_help.c:2484
 msgid "using_expression"
 msgstr "expresión_using"
 
-#: sql_help.c:812 sql_help.c:2466
+#: sql_help.c:812 sql_help.c:2485
 msgid "check_expression"
 msgstr "expresión_check"
 
-#: sql_help.c:886 sql_help.c:2507
+#: sql_help.c:886 sql_help.c:2526
 msgid "publication_parameter"
 msgstr "parámetro_de_publicación"
 
-#: sql_help.c:929 sql_help.c:1575 sql_help.c:2327 sql_help.c:2539
-#: sql_help.c:3083
+#: sql_help.c:929 sql_help.c:1584 sql_help.c:2344 sql_help.c:2558
+#: sql_help.c:3102
 msgid "password"
 msgstr "contraseña"
 
-#: sql_help.c:930 sql_help.c:1576 sql_help.c:2328 sql_help.c:2540
-#: sql_help.c:3084
+#: sql_help.c:930 sql_help.c:1585 sql_help.c:2345 sql_help.c:2559
+#: sql_help.c:3103
 msgid "timestamp"
 msgstr "fecha_hora"
 
-#: sql_help.c:934 sql_help.c:938 sql_help.c:941 sql_help.c:944 sql_help.c:1580
-#: sql_help.c:1584 sql_help.c:1587 sql_help.c:1590 sql_help.c:3715
-#: sql_help.c:4048
+#: sql_help.c:934 sql_help.c:938 sql_help.c:941 sql_help.c:944 sql_help.c:1589
+#: sql_help.c:1593 sql_help.c:1596 sql_help.c:1599 sql_help.c:3744
+#: sql_help.c:4092
 msgid "database_name"
 msgstr "nombre_de_base_de_datos"
 
-#: sql_help.c:1048 sql_help.c:2608
+#: sql_help.c:1048 sql_help.c:2627
 msgid "increment"
 msgstr "incremento"
 
-#: sql_help.c:1049 sql_help.c:2609
+#: sql_help.c:1049 sql_help.c:2628
 msgid "minvalue"
 msgstr "valormin"
 
-#: sql_help.c:1050 sql_help.c:2610
+#: sql_help.c:1050 sql_help.c:2629
 msgid "maxvalue"
 msgstr "valormax"
 
-#: sql_help.c:1051 sql_help.c:2611 sql_help.c:4248 sql_help.c:4338
-#: sql_help.c:4487 sql_help.c:4640 sql_help.c:4705
+#: sql_help.c:1051 sql_help.c:2630 sql_help.c:4295 sql_help.c:4385
+#: sql_help.c:4534 sql_help.c:4689 sql_help.c:4754
 msgid "start"
 msgstr "inicio"
 
-#: sql_help.c:1052 sql_help.c:1296
+#: sql_help.c:1052 sql_help.c:1301
 msgid "restart"
 msgstr "reinicio"
 
-#: sql_help.c:1053 sql_help.c:2612
+#: sql_help.c:1053 sql_help.c:2631
 msgid "cache"
 msgstr "cache"
 
-#: sql_help.c:1110 sql_help.c:2656
+#: sql_help.c:1097
+#, fuzzy
+#| msgid "new_table"
+msgid "new_target"
+msgstr "nueva_tabla"
+
+#: sql_help.c:1113 sql_help.c:2675
 msgid "conninfo"
 msgstr "conninfo"
 
-#: sql_help.c:1112 sql_help.c:2657
+#: sql_help.c:1115 sql_help.c:2676
 msgid "publication_name"
 msgstr "nombre_de_publicación"
 
-#: sql_help.c:1113
+#: sql_help.c:1116
 msgid "set_publication_option"
 msgstr "opción_de_conjunto_de_publicación"
 
-#: sql_help.c:1116
+#: sql_help.c:1119
 msgid "refresh_option"
 msgstr "opción_refresh"
 
-#: sql_help.c:1121 sql_help.c:2658
+#: sql_help.c:1124 sql_help.c:2677
 msgid "subscription_parameter"
 msgstr "parámetro_de_suscripción"
 
-#: sql_help.c:1274 sql_help.c:1277
+#: sql_help.c:1278 sql_help.c:1281
 msgid "partition_name"
 msgstr "nombre_de_partición"
 
-#: sql_help.c:1275 sql_help.c:2246 sql_help.c:2784
+#: sql_help.c:1279 sql_help.c:2259 sql_help.c:2803
 msgid "partition_bound_spec"
 msgstr "borde_de_partición"
 
-#: sql_help.c:1293 sql_help.c:1340 sql_help.c:2798
+#: sql_help.c:1298 sql_help.c:1345 sql_help.c:2817
 msgid "sequence_options"
 msgstr "opciones_de_secuencia"
 
-#: sql_help.c:1295
+#: sql_help.c:1300
 msgid "sequence_option"
 msgstr "opción_de_secuencia"
 
-#: sql_help.c:1307
+#: sql_help.c:1312
 msgid "table_constraint_using_index"
 msgstr "restricción_de_tabla_con_índice"
 
-#: sql_help.c:1315 sql_help.c:1316 sql_help.c:1317 sql_help.c:1318
+#: sql_help.c:1320 sql_help.c:1321 sql_help.c:1322 sql_help.c:1323
 msgid "rewrite_rule_name"
 msgstr "nombre_regla_de_reescritura"
 
-#: sql_help.c:1329 sql_help.c:2823
+#: sql_help.c:1334 sql_help.c:2842
 msgid "and partition_bound_spec is:"
 msgstr "y borde_de_partición es:"
 
-#: sql_help.c:1330 sql_help.c:1331 sql_help.c:1332 sql_help.c:2824
-#: sql_help.c:2825 sql_help.c:2826
+#: sql_help.c:1335 sql_help.c:1336 sql_help.c:1337 sql_help.c:2843
+#: sql_help.c:2844 sql_help.c:2845
 msgid "partition_bound_expr"
 msgstr "expresión_de_borde_de_partición"
 
-#: sql_help.c:1333 sql_help.c:1334 sql_help.c:2827 sql_help.c:2828
+#: sql_help.c:1338 sql_help.c:1339 sql_help.c:2846 sql_help.c:2847
 msgid "numeric_literal"
 msgstr "literal_numérico"
 
-#: sql_help.c:1335
+#: sql_help.c:1340
 msgid "and column_constraint is:"
 msgstr "donde restricción_de_columna es:"
 
-#: sql_help.c:1338 sql_help.c:2253 sql_help.c:2286 sql_help.c:2486
-#: sql_help.c:2796
+#: sql_help.c:1343 sql_help.c:2266 sql_help.c:2299 sql_help.c:2505
+#: sql_help.c:2815
 msgid "default_expr"
 msgstr "expr_por_omisión"
 
-#: sql_help.c:1339 sql_help.c:2254 sql_help.c:2797
+#: sql_help.c:1344 sql_help.c:2267 sql_help.c:2816
 msgid "generation_expr"
 msgstr "expr_de_generación"
 
-#: sql_help.c:1341 sql_help.c:1342 sql_help.c:1351 sql_help.c:1353
-#: sql_help.c:1357 sql_help.c:2799 sql_help.c:2800 sql_help.c:2809
-#: sql_help.c:2811 sql_help.c:2815
+#: sql_help.c:1346 sql_help.c:1347 sql_help.c:1356 sql_help.c:1358
+#: sql_help.c:1362 sql_help.c:2818 sql_help.c:2819 sql_help.c:2828
+#: sql_help.c:2830 sql_help.c:2834
 msgid "index_parameters"
 msgstr "parámetros_de_índice"
 
-#: sql_help.c:1343 sql_help.c:1360 sql_help.c:2801 sql_help.c:2818
+#: sql_help.c:1348 sql_help.c:1365 sql_help.c:2820 sql_help.c:2837
 msgid "reftable"
 msgstr "tabla_ref"
 
-#: sql_help.c:1344 sql_help.c:1361 sql_help.c:2802 sql_help.c:2819
+#: sql_help.c:1349 sql_help.c:1366 sql_help.c:2821 sql_help.c:2838
 msgid "refcolumn"
 msgstr "columna_ref"
 
-#: sql_help.c:1345 sql_help.c:1346 sql_help.c:1362 sql_help.c:1363
-#: sql_help.c:2803 sql_help.c:2804 sql_help.c:2820 sql_help.c:2821
+#: sql_help.c:1350 sql_help.c:1351 sql_help.c:1367 sql_help.c:1368
+#: sql_help.c:2822 sql_help.c:2823 sql_help.c:2839 sql_help.c:2840
 msgid "referential_action"
 msgstr "acción_referencial"
 
-#: sql_help.c:1347 sql_help.c:2255 sql_help.c:2805
+#: sql_help.c:1352 sql_help.c:2268 sql_help.c:2824
 msgid "and table_constraint is:"
 msgstr "y restricción_de_tabla es:"
 
-#: sql_help.c:1355 sql_help.c:2813
+#: sql_help.c:1360 sql_help.c:2832
 msgid "exclude_element"
 msgstr "elemento_de_exclusión"
 
-#: sql_help.c:1356 sql_help.c:2814 sql_help.c:4246 sql_help.c:4336
-#: sql_help.c:4485 sql_help.c:4638 sql_help.c:4703
+#: sql_help.c:1361 sql_help.c:2833 sql_help.c:4293 sql_help.c:4383
+#: sql_help.c:4532 sql_help.c:4687 sql_help.c:4752
 msgid "operator"
 msgstr "operador"
 
-#: sql_help.c:1358 sql_help.c:2358 sql_help.c:2816
+#: sql_help.c:1363 sql_help.c:2377 sql_help.c:2835
 msgid "predicate"
 msgstr "predicado"
 
-#: sql_help.c:1364
+#: sql_help.c:1369
 msgid "and table_constraint_using_index is:"
 msgstr "y restricción_de_tabla_con_índice es:"
 
-#: sql_help.c:1367 sql_help.c:2829
+#: sql_help.c:1372 sql_help.c:2848
 msgid "index_parameters in UNIQUE, PRIMARY KEY, and EXCLUDE constraints are:"
 msgstr "parámetros_de_índice en UNIQUE, PRIMARY KEY y EXCLUDE son:"
 
-#: sql_help.c:1372 sql_help.c:2834
+#: sql_help.c:1377 sql_help.c:2853
 msgid "exclude_element in an EXCLUDE constraint is:"
 msgstr "elemento_de_exclusión en una restricción EXCLUDE es:"
 
-#: sql_help.c:1375 sql_help.c:2353 sql_help.c:2761 sql_help.c:2774
-#: sql_help.c:2788 sql_help.c:2837 sql_help.c:3800
+#: sql_help.c:1380 sql_help.c:2370 sql_help.c:2780 sql_help.c:2793
+#: sql_help.c:2807 sql_help.c:2856 sql_help.c:3830
 msgid "opclass"
 msgstr "clase_de_ops"
 
-#: sql_help.c:1391 sql_help.c:1394 sql_help.c:2872
+#: sql_help.c:1396 sql_help.c:1399 sql_help.c:2891
 msgid "tablespace_option"
 msgstr "opción_de_tablespace"
 
-#: sql_help.c:1415 sql_help.c:1418 sql_help.c:1424 sql_help.c:1428
+#: sql_help.c:1420 sql_help.c:1423 sql_help.c:1429 sql_help.c:1433
 msgid "token_type"
 msgstr "tipo_de_token"
 
-#: sql_help.c:1416 sql_help.c:1419
+#: sql_help.c:1421 sql_help.c:1424
 msgid "dictionary_name"
 msgstr "nombre_diccionario"
 
-#: sql_help.c:1421 sql_help.c:1425
+#: sql_help.c:1426 sql_help.c:1430
 msgid "old_dictionary"
 msgstr "diccionario_antiguo"
 
-#: sql_help.c:1422 sql_help.c:1426
+#: sql_help.c:1427 sql_help.c:1431
 msgid "new_dictionary"
 msgstr "diccionario_nuevo"
 
-#: sql_help.c:1518 sql_help.c:1531 sql_help.c:1534 sql_help.c:1535
-#: sql_help.c:3023
+#: sql_help.c:1526 sql_help.c:1540 sql_help.c:1543 sql_help.c:1544
+#: sql_help.c:3042
 msgid "attribute_name"
 msgstr "nombre_atributo"
 
-#: sql_help.c:1519
+#: sql_help.c:1527
 msgid "new_attribute_name"
 msgstr "nuevo_nombre_atributo"
 
-#: sql_help.c:1525 sql_help.c:1529
+#: sql_help.c:1531 sql_help.c:1535
 msgid "new_enum_value"
 msgstr "nuevo_valor_enum"
 
-#: sql_help.c:1526
+#: sql_help.c:1532
 msgid "neighbor_enum_value"
 msgstr "valor_enum_vecino"
 
-#: sql_help.c:1528
+#: sql_help.c:1534
 msgid "existing_enum_value"
 msgstr "valor_enum_existente"
 
-#: sql_help.c:1603 sql_help.c:2238 sql_help.c:2247 sql_help.c:2624
-#: sql_help.c:3101 sql_help.c:3546 sql_help.c:3721 sql_help.c:3756
-#: sql_help.c:4054
+#: sql_help.c:1537
+#, fuzzy
+#| msgid "operator"
+msgid "property"
+msgstr "operador"
+
+#: sql_help.c:1612 sql_help.c:2251 sql_help.c:2260 sql_help.c:2643
+#: sql_help.c:3120 sql_help.c:3571 sql_help.c:3750 sql_help.c:3786
+#: sql_help.c:4098
 msgid "server_name"
 msgstr "nombre_de_servidor"
 
-#: sql_help.c:1631 sql_help.c:1634 sql_help.c:3116
+#: sql_help.c:1644 sql_help.c:1647 sql_help.c:3135
 msgid "view_option_name"
 msgstr "nombre_opción_de_vista"
 
-#: sql_help.c:1632 sql_help.c:3117
+#: sql_help.c:1645 sql_help.c:3136
 msgid "view_option_value"
 msgstr "valor_opción_de_vista"
 
-#: sql_help.c:1653 sql_help.c:1654 sql_help.c:4611 sql_help.c:4612
+#: sql_help.c:1666 sql_help.c:1667 sql_help.c:4659 sql_help.c:4660
 msgid "table_and_columns"
 msgstr "tabla_y_columnas"
 
-#: sql_help.c:1655 sql_help.c:1899 sql_help.c:3593 sql_help.c:4613
+#: sql_help.c:1668 sql_help.c:1912 sql_help.c:3619 sql_help.c:3963
+#: sql_help.c:4661
 msgid "where option can be one of:"
 msgstr "donde opción puede ser una de:"
 
-#: sql_help.c:1656 sql_help.c:1657 sql_help.c:1901 sql_help.c:1904
-#: sql_help.c:2083 sql_help.c:3594 sql_help.c:3595 sql_help.c:3596
-#: sql_help.c:3597 sql_help.c:3598 sql_help.c:3599 sql_help.c:3600
-#: sql_help.c:4614 sql_help.c:4615 sql_help.c:4616 sql_help.c:4617
-#: sql_help.c:4618 sql_help.c:4619 sql_help.c:4620 sql_help.c:4621
+#: sql_help.c:1669 sql_help.c:1670 sql_help.c:1914 sql_help.c:1917
+#: sql_help.c:2096 sql_help.c:3620 sql_help.c:3621 sql_help.c:3622
+#: sql_help.c:3623 sql_help.c:3624 sql_help.c:3625 sql_help.c:3626
+#: sql_help.c:3627 sql_help.c:4662 sql_help.c:4663 sql_help.c:4664
+#: sql_help.c:4665 sql_help.c:4666 sql_help.c:4667 sql_help.c:4668
+#: sql_help.c:4669
 msgid "boolean"
 msgstr "booleano"
 
-#: sql_help.c:1658 sql_help.c:4622
+#: sql_help.c:1671 sql_help.c:4671
 msgid "and table_and_columns is:"
 msgstr "y tabla_y_columnas es:"
 
-#: sql_help.c:1674 sql_help.c:4396 sql_help.c:4398 sql_help.c:4422
+#: sql_help.c:1687 sql_help.c:4443 sql_help.c:4445 sql_help.c:4469
 msgid "transaction_mode"
 msgstr "modo_de_transacción"
 
-#: sql_help.c:1675 sql_help.c:4399 sql_help.c:4423
+#: sql_help.c:1688 sql_help.c:4446 sql_help.c:4470
 msgid "where transaction_mode is one of:"
 msgstr "donde modo_de_transacción es uno de:"
 
-#: sql_help.c:1684 sql_help.c:4256 sql_help.c:4265 sql_help.c:4269
-#: sql_help.c:4273 sql_help.c:4276 sql_help.c:4495 sql_help.c:4504
-#: sql_help.c:4508 sql_help.c:4512 sql_help.c:4515 sql_help.c:4713
-#: sql_help.c:4722 sql_help.c:4726 sql_help.c:4730 sql_help.c:4733
+#: sql_help.c:1697 sql_help.c:4303 sql_help.c:4312 sql_help.c:4316
+#: sql_help.c:4320 sql_help.c:4323 sql_help.c:4542 sql_help.c:4551
+#: sql_help.c:4555 sql_help.c:4559 sql_help.c:4562 sql_help.c:4762
+#: sql_help.c:4771 sql_help.c:4775 sql_help.c:4779 sql_help.c:4782
 msgid "argument"
 msgstr "argumento"
 
-#: sql_help.c:1774
+#: sql_help.c:1787
 msgid "relation_name"
 msgstr "nombre_relación"
 
-#: sql_help.c:1779 sql_help.c:3717 sql_help.c:4050
+#: sql_help.c:1792 sql_help.c:3746 sql_help.c:4094
 msgid "domain_name"
 msgstr "nombre_de_dominio"
 
-#: sql_help.c:1801
+#: sql_help.c:1814
 msgid "policy_name"
 msgstr "nombre_de_política"
 
-#: sql_help.c:1814
+#: sql_help.c:1827
 msgid "rule_name"
 msgstr "nombre_regla"
 
-#: sql_help.c:1833
+#: sql_help.c:1846
 msgid "text"
 msgstr "texto"
 
-#: sql_help.c:1858 sql_help.c:3900 sql_help.c:4088
+#: sql_help.c:1871 sql_help.c:3930 sql_help.c:4135
 msgid "transaction_id"
 msgstr "id_de_transacción"
 
-#: sql_help.c:1889 sql_help.c:1896 sql_help.c:3826
+#: sql_help.c:1902 sql_help.c:1909 sql_help.c:3856
 msgid "filename"
 msgstr "nombre_de_archivo"
 
-#: sql_help.c:1890 sql_help.c:1897 sql_help.c:2564 sql_help.c:2565
-#: sql_help.c:2566
+#: sql_help.c:1903 sql_help.c:1910 sql_help.c:2583 sql_help.c:2584
+#: sql_help.c:2585
 msgid "command"
 msgstr "orden"
 
-#: sql_help.c:1892 sql_help.c:2563 sql_help.c:2975 sql_help.c:3152
-#: sql_help.c:3810 sql_help.c:4239 sql_help.c:4241 sql_help.c:4329
-#: sql_help.c:4331 sql_help.c:4478 sql_help.c:4480 sql_help.c:4583
-#: sql_help.c:4696 sql_help.c:4698
+#: sql_help.c:1905 sql_help.c:2582 sql_help.c:2994 sql_help.c:3171
+#: sql_help.c:3840 sql_help.c:4286 sql_help.c:4288 sql_help.c:4376
+#: sql_help.c:4378 sql_help.c:4525 sql_help.c:4527 sql_help.c:4630
+#: sql_help.c:4745 sql_help.c:4747
 msgid "condition"
 msgstr "condición"
 
-#: sql_help.c:1895 sql_help.c:2392 sql_help.c:2858 sql_help.c:3118
-#: sql_help.c:3136 sql_help.c:3791
+#: sql_help.c:1908 sql_help.c:2411 sql_help.c:2877 sql_help.c:3137
+#: sql_help.c:3155 sql_help.c:3821
 msgid "query"
 msgstr "consulta"
 
-#: sql_help.c:1900
+#: sql_help.c:1913
 msgid "format_name"
 msgstr "nombre_de_formato"
 
-#: sql_help.c:1902
+#: sql_help.c:1915
 msgid "delimiter_character"
 msgstr "carácter_delimitador"
 
-#: sql_help.c:1903
+#: sql_help.c:1916
 msgid "null_string"
 msgstr "cadena_null"
 
-#: sql_help.c:1905
+#: sql_help.c:1918
 msgid "quote_character"
 msgstr "carácter_de_comilla"
 
-#: sql_help.c:1906
+#: sql_help.c:1919
 msgid "escape_character"
 msgstr "carácter_de_escape"
 
-#: sql_help.c:1910
+#: sql_help.c:1923
 msgid "encoding_name"
 msgstr "nombre_codificación"
 
-#: sql_help.c:1921
+#: sql_help.c:1934
 msgid "access_method_type"
 msgstr "tipo_de_método_de_acceso"
 
-#: sql_help.c:1992 sql_help.c:2011 sql_help.c:2014
+#: sql_help.c:2005 sql_help.c:2024 sql_help.c:2027
 msgid "arg_data_type"
 msgstr "tipo_de_dato_arg"
 
-#: sql_help.c:1993 sql_help.c:2015 sql_help.c:2023
+#: sql_help.c:2006 sql_help.c:2028 sql_help.c:2036
 msgid "sfunc"
 msgstr "func_transición"
 
-#: sql_help.c:1994 sql_help.c:2016 sql_help.c:2024
+#: sql_help.c:2007 sql_help.c:2029 sql_help.c:2037
 msgid "state_data_type"
 msgstr "tipo_de_dato_de_estado"
 
-#: sql_help.c:1995 sql_help.c:2017 sql_help.c:2025
+#: sql_help.c:2008 sql_help.c:2030 sql_help.c:2038
 msgid "state_data_size"
 msgstr "tamaño_de_dato_de_estado"
 
-#: sql_help.c:1996 sql_help.c:2018 sql_help.c:2026
+#: sql_help.c:2009 sql_help.c:2031 sql_help.c:2039
 msgid "ffunc"
 msgstr "func_final"
 
-#: sql_help.c:1997 sql_help.c:2027
+#: sql_help.c:2010 sql_help.c:2040
 msgid "combinefunc"
 msgstr "func_combinación"
 
-#: sql_help.c:1998 sql_help.c:2028
+#: sql_help.c:2011 sql_help.c:2041
 msgid "serialfunc"
 msgstr "func_serial"
 
-#: sql_help.c:1999 sql_help.c:2029
+#: sql_help.c:2012 sql_help.c:2042
 msgid "deserialfunc"
 msgstr "func_deserial"
 
-#: sql_help.c:2000 sql_help.c:2019 sql_help.c:2030
+#: sql_help.c:2013 sql_help.c:2032 sql_help.c:2043
 msgid "initial_condition"
 msgstr "condición_inicial"
 
-#: sql_help.c:2001 sql_help.c:2031
+#: sql_help.c:2014 sql_help.c:2044
 msgid "msfunc"
 msgstr "func_transición_m"
 
-#: sql_help.c:2002 sql_help.c:2032
+#: sql_help.c:2015 sql_help.c:2045
 msgid "minvfunc"
 msgstr "func_inv_m"
 
-#: sql_help.c:2003 sql_help.c:2033
+#: sql_help.c:2016 sql_help.c:2046
 msgid "mstate_data_type"
 msgstr "tipo_de_dato_de_estado_m"
 
-#: sql_help.c:2004 sql_help.c:2034
+#: sql_help.c:2017 sql_help.c:2047
 msgid "mstate_data_size"
 msgstr "tamaño_de_dato_de_estado_m"
 
-#: sql_help.c:2005 sql_help.c:2035
+#: sql_help.c:2018 sql_help.c:2048
 msgid "mffunc"
 msgstr "func_final_m"
 
-#: sql_help.c:2006 sql_help.c:2036
+#: sql_help.c:2019 sql_help.c:2049
 msgid "minitial_condition"
 msgstr "condición_inicial_m"
 
-#: sql_help.c:2007 sql_help.c:2037
+#: sql_help.c:2020 sql_help.c:2050
 msgid "sort_operator"
 msgstr "operador_de_ordenamiento"
 
-#: sql_help.c:2020
+#: sql_help.c:2033
 msgid "or the old syntax"
 msgstr "o la sintaxis antigua"
 
-#: sql_help.c:2022
+#: sql_help.c:2035
 msgid "base_type"
 msgstr "tipo_base"
 
-#: sql_help.c:2079
+#: sql_help.c:2092 sql_help.c:2133
 msgid "locale"
 msgstr "configuración regional"
 
-#: sql_help.c:2080 sql_help.c:2119
+#: sql_help.c:2093 sql_help.c:2134
 msgid "lc_collate"
 msgstr "lc_collate"
 
-#: sql_help.c:2081 sql_help.c:2120
+#: sql_help.c:2094 sql_help.c:2135
 msgid "lc_ctype"
 msgstr "lc_ctype"
 
-#: sql_help.c:2082 sql_help.c:4141
+#: sql_help.c:2095 sql_help.c:4188
 msgid "provider"
 msgstr "proveedor"
 
-#: sql_help.c:2084 sql_help.c:2175
+#: sql_help.c:2097 sql_help.c:2189
 msgid "version"
 msgstr "versión"
 
-#: sql_help.c:2086
+#: sql_help.c:2099
 msgid "existing_collation"
 msgstr "ordenamiento_existente"
 
-#: sql_help.c:2096
+#: sql_help.c:2109
 msgid "source_encoding"
 msgstr "codificación_origen"
 
-#: sql_help.c:2097
+#: sql_help.c:2110
 msgid "dest_encoding"
 msgstr "codificación_destino"
 
-#: sql_help.c:2117 sql_help.c:2898
+#: sql_help.c:2131 sql_help.c:2917
 msgid "template"
 msgstr "plantilla"
 
-#: sql_help.c:2118
+#: sql_help.c:2132
 msgid "encoding"
 msgstr "codificación"
 
-#: sql_help.c:2144
+#: sql_help.c:2159
 msgid "constraint"
 msgstr "restricción"
 
-#: sql_help.c:2145
+#: sql_help.c:2160
 msgid "where constraint is:"
 msgstr "donde restricción es:"
 
-#: sql_help.c:2159 sql_help.c:2561 sql_help.c:2971
+#: sql_help.c:2174 sql_help.c:2580 sql_help.c:2990
 msgid "event"
 msgstr "evento"
 
-#: sql_help.c:2160
+#: sql_help.c:2175
 msgid "filter_variable"
 msgstr "variable_de_filtrado"
 
-#: sql_help.c:2176
-msgid "old_version"
-msgstr "versión_antigua"
-
-#: sql_help.c:2250 sql_help.c:2793
+#: sql_help.c:2263 sql_help.c:2812
 msgid "where column_constraint is:"
 msgstr "donde restricción_de_columna es:"
 
-#: sql_help.c:2287
+#: sql_help.c:2300
 msgid "rettype"
 msgstr "tipo_ret"
 
-#: sql_help.c:2289
+#: sql_help.c:2302
 msgid "column_type"
 msgstr "tipo_columna"
 
-#: sql_help.c:2298 sql_help.c:2492
+#: sql_help.c:2311 sql_help.c:2511
 msgid "definition"
 msgstr "definición"
 
-#: sql_help.c:2299 sql_help.c:2493
+#: sql_help.c:2312 sql_help.c:2512
 msgid "obj_file"
 msgstr "archivo_obj"
 
-#: sql_help.c:2300 sql_help.c:2494
+#: sql_help.c:2313 sql_help.c:2513
 msgid "link_symbol"
 msgstr "símbolo_enlace"
 
-#: sql_help.c:2334 sql_help.c:2546 sql_help.c:3090
+#: sql_help.c:2351 sql_help.c:2565 sql_help.c:3109
 msgid "uid"
 msgstr "uid"
 
-#: sql_help.c:2349 sql_help.c:2388 sql_help.c:2762 sql_help.c:2775
-#: sql_help.c:2789 sql_help.c:2854
+#: sql_help.c:2366 sql_help.c:2407 sql_help.c:2781 sql_help.c:2794
+#: sql_help.c:2808 sql_help.c:2873
 msgid "method"
 msgstr "método"
 
-#: sql_help.c:2370
+#: sql_help.c:2371
+#, fuzzy
+#| msgid "storage_parameter"
+msgid "opclass_parameter"
+msgstr "parámetro_de_almacenamiento"
+
+#: sql_help.c:2388
 msgid "call_handler"
 msgstr "manejador_de_llamada"
 
-#: sql_help.c:2371
+#: sql_help.c:2389
 msgid "inline_handler"
 msgstr "manejador_en_línea"
 
-#: sql_help.c:2372
+#: sql_help.c:2390
 msgid "valfunction"
 msgstr "función_val"
 
-#: sql_help.c:2410
+#: sql_help.c:2429
 msgid "com_op"
 msgstr "op_conm"
 
-#: sql_help.c:2411
+#: sql_help.c:2430
 msgid "neg_op"
 msgstr "op_neg"
 
-#: sql_help.c:2429
+#: sql_help.c:2448
 msgid "family_name"
 msgstr "nombre_familia"
 
-#: sql_help.c:2440
+#: sql_help.c:2459
 msgid "storage_type"
 msgstr "tipo_almacenamiento"
 
-#: sql_help.c:2567 sql_help.c:2978
+#: sql_help.c:2586 sql_help.c:2997
 msgid "where event can be one of:"
 msgstr "donde evento puede ser una de:"
 
-#: sql_help.c:2586 sql_help.c:2588
+#: sql_help.c:2605 sql_help.c:2607
 msgid "schema_element"
 msgstr "elemento_de_esquema"
 
-#: sql_help.c:2625
+#: sql_help.c:2644
 msgid "server_type"
 msgstr "tipo_de_servidor"
 
-#: sql_help.c:2626
+#: sql_help.c:2645
 msgid "server_version"
 msgstr "versión_de_servidor"
 
-#: sql_help.c:2627 sql_help.c:3719 sql_help.c:4052
+#: sql_help.c:2646 sql_help.c:3748 sql_help.c:4096
 msgid "fdw_name"
 msgstr "nombre_fdw"
 
-#: sql_help.c:2640
+#: sql_help.c:2659
 msgid "statistics_name"
 msgstr "nombre_de_estadística"
 
-#: sql_help.c:2641
+#: sql_help.c:2660
 msgid "statistics_kind"
 msgstr "tipo_de_estadística"
 
-#: sql_help.c:2655
+#: sql_help.c:2674
 msgid "subscription_name"
 msgstr "nombre_de_suscripción"
 
-#: sql_help.c:2755
+#: sql_help.c:2774
 msgid "source_table"
 msgstr "tabla_origen"
 
-#: sql_help.c:2756
+#: sql_help.c:2775
 msgid "like_option"
 msgstr "opción_de_like"
 
-#: sql_help.c:2822
+#: sql_help.c:2841
 msgid "and like_option is:"
 msgstr "y opción_de_like es:"
 
-#: sql_help.c:2871
+#: sql_help.c:2890
 msgid "directory"
 msgstr "directorio"
 
-#: sql_help.c:2885
+#: sql_help.c:2904
 msgid "parser_name"
 msgstr "nombre_de_parser"
 
-#: sql_help.c:2886
+#: sql_help.c:2905
 msgid "source_config"
 msgstr "config_origen"
 
-#: sql_help.c:2915
+#: sql_help.c:2934
 msgid "start_function"
 msgstr "función_inicio"
 
-#: sql_help.c:2916
+#: sql_help.c:2935
 msgid "gettoken_function"
 msgstr "función_gettoken"
 
-#: sql_help.c:2917
+#: sql_help.c:2936
 msgid "end_function"
 msgstr "función_fin"
 
-#: sql_help.c:2918
+#: sql_help.c:2937
 msgid "lextypes_function"
 msgstr "función_lextypes"
 
-#: sql_help.c:2919
+#: sql_help.c:2938
 msgid "headline_function"
 msgstr "función_headline"
 
-#: sql_help.c:2931
+#: sql_help.c:2950
 msgid "init_function"
 msgstr "función_init"
 
-#: sql_help.c:2932
+#: sql_help.c:2951
 msgid "lexize_function"
 msgstr "función_lexize"
 
-#: sql_help.c:2945
+#: sql_help.c:2964
 msgid "from_sql_function_name"
 msgstr "nombre_de_función_from"
 
-#: sql_help.c:2947
+#: sql_help.c:2966
 msgid "to_sql_function_name"
 msgstr "nombre_de_función_to"
 
-#: sql_help.c:2973
+#: sql_help.c:2992
 msgid "referenced_table_name"
 msgstr "nombre_tabla_referenciada"
 
-#: sql_help.c:2974
+#: sql_help.c:2993
 msgid "transition_relation_name"
 msgstr "nombre_de_relación_de_transición"
 
-#: sql_help.c:2977
+#: sql_help.c:2996
 msgid "arguments"
 msgstr "argumentos"
 
-#: sql_help.c:3027 sql_help.c:4174
+#: sql_help.c:3046 sql_help.c:4221
 msgid "label"
 msgstr "etiqueta"
 
-#: sql_help.c:3029
+#: sql_help.c:3048
 msgid "subtype"
 msgstr "subtipo"
 
-#: sql_help.c:3030
+#: sql_help.c:3049
 msgid "subtype_operator_class"
 msgstr "clase_de_operador_del_subtipo"
 
-#: sql_help.c:3032
+#: sql_help.c:3051
 msgid "canonical_function"
 msgstr "función_canónica"
 
-#: sql_help.c:3033
+#: sql_help.c:3052
 msgid "subtype_diff_function"
 msgstr "función_diff_del_subtipo"
 
-#: sql_help.c:3035
+#: sql_help.c:3054
 msgid "input_function"
 msgstr "función_entrada"
 
-#: sql_help.c:3036
+#: sql_help.c:3055
 msgid "output_function"
 msgstr "función_salida"
 
-#: sql_help.c:3037
+#: sql_help.c:3056
 msgid "receive_function"
 msgstr "función_receive"
 
-#: sql_help.c:3038
+#: sql_help.c:3057
 msgid "send_function"
 msgstr "función_send"
 
-#: sql_help.c:3039
+#: sql_help.c:3058
 msgid "type_modifier_input_function"
 msgstr "función_entrada_del_modificador_de_tipo"
 
-#: sql_help.c:3040
+#: sql_help.c:3059
 msgid "type_modifier_output_function"
 msgstr "función_salida_del_modificador_de_tipo"
 
-#: sql_help.c:3041
+#: sql_help.c:3060
 msgid "analyze_function"
 msgstr "función_analyze"
 
-#: sql_help.c:3042
+#: sql_help.c:3061
 msgid "internallength"
 msgstr "largo_interno"
 
-#: sql_help.c:3043
+#: sql_help.c:3062
 msgid "alignment"
 msgstr "alineamiento"
 
-#: sql_help.c:3044
+#: sql_help.c:3063
 msgid "storage"
 msgstr "almacenamiento"
 
-#: sql_help.c:3045
+#: sql_help.c:3064
 msgid "like_type"
 msgstr "como_tipo"
 
-#: sql_help.c:3046
+#: sql_help.c:3065
 msgid "category"
 msgstr "categoría"
 
-#: sql_help.c:3047
+#: sql_help.c:3066
 msgid "preferred"
 msgstr "preferido"
 
-#: sql_help.c:3048
+#: sql_help.c:3067
 msgid "default"
 msgstr "valor_por_omisión"
 
-#: sql_help.c:3049
+#: sql_help.c:3068
 msgid "element"
 msgstr "elemento"
 
-#: sql_help.c:3050
+#: sql_help.c:3069
 msgid "delimiter"
 msgstr "delimitador"
 
-#: sql_help.c:3051
+#: sql_help.c:3070
 msgid "collatable"
 msgstr "ordenable"
 
-#: sql_help.c:3148 sql_help.c:3786 sql_help.c:4234 sql_help.c:4323
-#: sql_help.c:4473 sql_help.c:4573 sql_help.c:4691
+#: sql_help.c:3167 sql_help.c:3816 sql_help.c:4281 sql_help.c:4370
+#: sql_help.c:4520 sql_help.c:4620 sql_help.c:4740
 msgid "with_query"
 msgstr "consulta_with"
 
-#: sql_help.c:3150 sql_help.c:3788 sql_help.c:4253 sql_help.c:4259
-#: sql_help.c:4262 sql_help.c:4266 sql_help.c:4270 sql_help.c:4278
-#: sql_help.c:4492 sql_help.c:4498 sql_help.c:4501 sql_help.c:4505
-#: sql_help.c:4509 sql_help.c:4517 sql_help.c:4575 sql_help.c:4710
-#: sql_help.c:4716 sql_help.c:4719 sql_help.c:4723 sql_help.c:4727
-#: sql_help.c:4735
+#: sql_help.c:3169 sql_help.c:3818 sql_help.c:4300 sql_help.c:4306
+#: sql_help.c:4309 sql_help.c:4313 sql_help.c:4317 sql_help.c:4325
+#: sql_help.c:4539 sql_help.c:4545 sql_help.c:4548 sql_help.c:4552
+#: sql_help.c:4556 sql_help.c:4564 sql_help.c:4622 sql_help.c:4759
+#: sql_help.c:4765 sql_help.c:4768 sql_help.c:4772 sql_help.c:4776
+#: sql_help.c:4784
 msgid "alias"
 msgstr "alias"
 
-#: sql_help.c:3151
-msgid "using_list"
-msgstr "lista_using"
-
-#: sql_help.c:3153 sql_help.c:3626 sql_help.c:3867 sql_help.c:4584
-msgid "cursor_name"
-msgstr "nombre_de_cursor"
-
-#: sql_help.c:3154 sql_help.c:3794 sql_help.c:4585
-msgid "output_expression"
-msgstr "expresión_de_salida"
-
-#: sql_help.c:3155 sql_help.c:3795 sql_help.c:4237 sql_help.c:4326
-#: sql_help.c:4476 sql_help.c:4586 sql_help.c:4694
-msgid "output_name"
-msgstr "nombre_de_salida"
-
-#: sql_help.c:3171
-msgid "code"
-msgstr "código"
-
-#: sql_help.c:3570
-msgid "parameter"
-msgstr "parámetro"
-
-#: sql_help.c:3591 sql_help.c:3592 sql_help.c:3892
-msgid "statement"
-msgstr "sentencia"
-
-#: sql_help.c:3625 sql_help.c:3866
-msgid "direction"
-msgstr "dirección"
-
-#: sql_help.c:3627 sql_help.c:3868
-msgid "where direction can be empty or one of:"
-msgstr "donde dirección puede ser vacío o uno de:"
-
-#: sql_help.c:3628 sql_help.c:3629 sql_help.c:3630 sql_help.c:3631
-#: sql_help.c:3632 sql_help.c:3869 sql_help.c:3870 sql_help.c:3871
-#: sql_help.c:3872 sql_help.c:3873 sql_help.c:4247 sql_help.c:4249
-#: sql_help.c:4337 sql_help.c:4339 sql_help.c:4486 sql_help.c:4488
-#: sql_help.c:4639 sql_help.c:4641 sql_help.c:4704 sql_help.c:4706
-msgid "count"
-msgstr "cantidad"
-
-#: sql_help.c:3712 sql_help.c:4045
-msgid "sequence_name"
-msgstr "nombre_secuencia"
-
-#: sql_help.c:3725 sql_help.c:4058
-msgid "arg_name"
-msgstr "nombre_arg"
-
-#: sql_help.c:3726 sql_help.c:4059
-msgid "arg_type"
-msgstr "tipo_arg"
-
-#: sql_help.c:3731 sql_help.c:4064
-msgid "loid"
-msgstr "loid"
-
-#: sql_help.c:3754
-msgid "remote_schema"
-msgstr "schema_remoto"
-
-#: sql_help.c:3757
-msgid "local_schema"
-msgstr "schema_local"
-
-#: sql_help.c:3792
-msgid "conflict_target"
-msgstr "destino_de_conflict"
-
-#: sql_help.c:3793
-msgid "conflict_action"
-msgstr "acción_de_conflict"
-
-#: sql_help.c:3796
-msgid "where conflict_target can be one of:"
-msgstr "donde destino_de_conflict puede ser uno de:"
-
-#: sql_help.c:3797
-msgid "index_column_name"
-msgstr "nombre_de_columna_de_índice"
-
-#: sql_help.c:3798
-msgid "index_expression"
-msgstr "expresión_de_índice"
-
-#: sql_help.c:3801
-msgid "index_predicate"
-msgstr "predicado_de_índice"
-
-#: sql_help.c:3803
-msgid "and conflict_action is one of:"
-msgstr "donde acción_de_conflict es una de:"
-
-#: sql_help.c:3809 sql_help.c:4581
-msgid "sub-SELECT"
-msgstr "sub-SELECT"
-
-#: sql_help.c:3818 sql_help.c:3881 sql_help.c:4557
-msgid "channel"
-msgstr "canal"
-
-#: sql_help.c:3840
-msgid "lockmode"
-msgstr "modo_bloqueo"
-
-#: sql_help.c:3841
-msgid "where lockmode is one of:"
-msgstr "donde modo_bloqueo es uno de:"
-
-#: sql_help.c:3882
-msgid "payload"
-msgstr "carga"
-
-#: sql_help.c:3909
-msgid "old_role"
-msgstr "rol_antiguo"
-
-#: sql_help.c:3910
-msgid "new_role"
-msgstr "rol_nuevo"
-
-#: sql_help.c:3935 sql_help.c:4096 sql_help.c:4104
-msgid "savepoint_name"
-msgstr "nombre_de_savepoint"
-
-#: sql_help.c:4238 sql_help.c:4280 sql_help.c:4282 sql_help.c:4328
-#: sql_help.c:4477 sql_help.c:4519 sql_help.c:4521 sql_help.c:4695
-#: sql_help.c:4737 sql_help.c:4739
+#: sql_help.c:3170 sql_help.c:4285 sql_help.c:4327 sql_help.c:4329
+#: sql_help.c:4375 sql_help.c:4524 sql_help.c:4566 sql_help.c:4568
+#: sql_help.c:4629 sql_help.c:4744 sql_help.c:4786 sql_help.c:4788
 msgid "from_item"
 msgstr "item_de_from"
 
-#: sql_help.c:4240 sql_help.c:4292 sql_help.c:4479 sql_help.c:4531
-#: sql_help.c:4697 sql_help.c:4749
+#: sql_help.c:3172 sql_help.c:3653 sql_help.c:3897 sql_help.c:4631
+msgid "cursor_name"
+msgstr "nombre_de_cursor"
+
+#: sql_help.c:3173 sql_help.c:3824 sql_help.c:4632
+msgid "output_expression"
+msgstr "expresión_de_salida"
+
+#: sql_help.c:3174 sql_help.c:3825 sql_help.c:4284 sql_help.c:4373
+#: sql_help.c:4523 sql_help.c:4633 sql_help.c:4743
+msgid "output_name"
+msgstr "nombre_de_salida"
+
+#: sql_help.c:3190
+msgid "code"
+msgstr "código"
+
+#: sql_help.c:3595
+msgid "parameter"
+msgstr "parámetro"
+
+#: sql_help.c:3617 sql_help.c:3618 sql_help.c:3922
+msgid "statement"
+msgstr "sentencia"
+
+#: sql_help.c:3652 sql_help.c:3896
+msgid "direction"
+msgstr "dirección"
+
+#: sql_help.c:3654 sql_help.c:3898
+msgid "where direction can be empty or one of:"
+msgstr "donde dirección puede ser vacío o uno de:"
+
+#: sql_help.c:3655 sql_help.c:3656 sql_help.c:3657 sql_help.c:3658
+#: sql_help.c:3659 sql_help.c:3899 sql_help.c:3900 sql_help.c:3901
+#: sql_help.c:3902 sql_help.c:3903 sql_help.c:4294 sql_help.c:4296
+#: sql_help.c:4384 sql_help.c:4386 sql_help.c:4533 sql_help.c:4535
+#: sql_help.c:4688 sql_help.c:4690 sql_help.c:4753 sql_help.c:4755
+msgid "count"
+msgstr "cantidad"
+
+#: sql_help.c:3741 sql_help.c:4089
+msgid "sequence_name"
+msgstr "nombre_secuencia"
+
+#: sql_help.c:3754 sql_help.c:4102
+msgid "arg_name"
+msgstr "nombre_arg"
+
+#: sql_help.c:3755 sql_help.c:4103
+msgid "arg_type"
+msgstr "tipo_arg"
+
+#: sql_help.c:3760 sql_help.c:4108
+msgid "loid"
+msgstr "loid"
+
+#: sql_help.c:3784
+msgid "remote_schema"
+msgstr "schema_remoto"
+
+#: sql_help.c:3787
+msgid "local_schema"
+msgstr "schema_local"
+
+#: sql_help.c:3822
+msgid "conflict_target"
+msgstr "destino_de_conflict"
+
+#: sql_help.c:3823
+msgid "conflict_action"
+msgstr "acción_de_conflict"
+
+#: sql_help.c:3826
+msgid "where conflict_target can be one of:"
+msgstr "donde destino_de_conflict puede ser uno de:"
+
+#: sql_help.c:3827
+msgid "index_column_name"
+msgstr "nombre_de_columna_de_índice"
+
+#: sql_help.c:3828
+msgid "index_expression"
+msgstr "expresión_de_índice"
+
+#: sql_help.c:3831
+msgid "index_predicate"
+msgstr "predicado_de_índice"
+
+#: sql_help.c:3833
+msgid "and conflict_action is one of:"
+msgstr "donde acción_de_conflict es una de:"
+
+#: sql_help.c:3839 sql_help.c:4628
+msgid "sub-SELECT"
+msgstr "sub-SELECT"
+
+#: sql_help.c:3848 sql_help.c:3911 sql_help.c:4604
+msgid "channel"
+msgstr "canal"
+
+#: sql_help.c:3870
+msgid "lockmode"
+msgstr "modo_bloqueo"
+
+#: sql_help.c:3871
+msgid "where lockmode is one of:"
+msgstr "donde modo_bloqueo es uno de:"
+
+#: sql_help.c:3912
+msgid "payload"
+msgstr "carga"
+
+#: sql_help.c:3939
+msgid "old_role"
+msgstr "rol_antiguo"
+
+#: sql_help.c:3940
+msgid "new_role"
+msgstr "rol_nuevo"
+
+#: sql_help.c:3971 sql_help.c:4143 sql_help.c:4151
+msgid "savepoint_name"
+msgstr "nombre_de_savepoint"
+
+#: sql_help.c:4287 sql_help.c:4339 sql_help.c:4526 sql_help.c:4578
+#: sql_help.c:4746 sql_help.c:4798
 msgid "grouping_element"
 msgstr "elemento_agrupante"
 
-#: sql_help.c:4242 sql_help.c:4332 sql_help.c:4481 sql_help.c:4699
+#: sql_help.c:4289 sql_help.c:4379 sql_help.c:4528 sql_help.c:4748
 msgid "window_name"
 msgstr "nombre_de_ventana"
 
-#: sql_help.c:4243 sql_help.c:4333 sql_help.c:4482 sql_help.c:4700
+#: sql_help.c:4290 sql_help.c:4380 sql_help.c:4529 sql_help.c:4749
 msgid "window_definition"
 msgstr "definición_de_ventana"
 
-#: sql_help.c:4244 sql_help.c:4258 sql_help.c:4296 sql_help.c:4334
-#: sql_help.c:4483 sql_help.c:4497 sql_help.c:4535 sql_help.c:4701
-#: sql_help.c:4715 sql_help.c:4753
+#: sql_help.c:4291 sql_help.c:4305 sql_help.c:4343 sql_help.c:4381
+#: sql_help.c:4530 sql_help.c:4544 sql_help.c:4582 sql_help.c:4750
+#: sql_help.c:4764 sql_help.c:4802
 msgid "select"
 msgstr "select"
 
-#: sql_help.c:4251 sql_help.c:4490 sql_help.c:4708
+#: sql_help.c:4298 sql_help.c:4537 sql_help.c:4757
 msgid "where from_item can be one of:"
 msgstr "donde item_de_from puede ser uno de:"
 
-#: sql_help.c:4254 sql_help.c:4260 sql_help.c:4263 sql_help.c:4267
-#: sql_help.c:4279 sql_help.c:4493 sql_help.c:4499 sql_help.c:4502
-#: sql_help.c:4506 sql_help.c:4518 sql_help.c:4711 sql_help.c:4717
-#: sql_help.c:4720 sql_help.c:4724 sql_help.c:4736
+#: sql_help.c:4301 sql_help.c:4307 sql_help.c:4310 sql_help.c:4314
+#: sql_help.c:4326 sql_help.c:4540 sql_help.c:4546 sql_help.c:4549
+#: sql_help.c:4553 sql_help.c:4565 sql_help.c:4760 sql_help.c:4766
+#: sql_help.c:4769 sql_help.c:4773 sql_help.c:4785
 msgid "column_alias"
 msgstr "alias_de_columna"
 
-#: sql_help.c:4255 sql_help.c:4494 sql_help.c:4712
+#: sql_help.c:4302 sql_help.c:4541 sql_help.c:4761
 msgid "sampling_method"
 msgstr "método_de_sampleo"
 
-#: sql_help.c:4257 sql_help.c:4496 sql_help.c:4714
+#: sql_help.c:4304 sql_help.c:4543 sql_help.c:4763
 msgid "seed"
 msgstr "semilla"
 
-#: sql_help.c:4261 sql_help.c:4294 sql_help.c:4500 sql_help.c:4533
-#: sql_help.c:4718 sql_help.c:4751
+#: sql_help.c:4308 sql_help.c:4341 sql_help.c:4547 sql_help.c:4580
+#: sql_help.c:4767 sql_help.c:4800
 msgid "with_query_name"
 msgstr "nombre_consulta_with"
 
-#: sql_help.c:4271 sql_help.c:4274 sql_help.c:4277 sql_help.c:4510
-#: sql_help.c:4513 sql_help.c:4516 sql_help.c:4728 sql_help.c:4731
-#: sql_help.c:4734
+#: sql_help.c:4318 sql_help.c:4321 sql_help.c:4324 sql_help.c:4557
+#: sql_help.c:4560 sql_help.c:4563 sql_help.c:4777 sql_help.c:4780
+#: sql_help.c:4783
 msgid "column_definition"
 msgstr "definición_de_columna"
 
-#: sql_help.c:4281 sql_help.c:4520 sql_help.c:4738
+#: sql_help.c:4328 sql_help.c:4567 sql_help.c:4787
 msgid "join_type"
 msgstr "tipo_de_join"
 
-#: sql_help.c:4283 sql_help.c:4522 sql_help.c:4740
+#: sql_help.c:4330 sql_help.c:4569 sql_help.c:4789
 msgid "join_condition"
 msgstr "condición_de_join"
 
-#: sql_help.c:4284 sql_help.c:4523 sql_help.c:4741
+#: sql_help.c:4331 sql_help.c:4570 sql_help.c:4790
 msgid "join_column"
 msgstr "columna_de_join"
 
-#: sql_help.c:4285 sql_help.c:4524 sql_help.c:4742
+#: sql_help.c:4332 sql_help.c:4571 sql_help.c:4791
 msgid "and grouping_element can be one of:"
 msgstr "donde elemento_agrupante puede ser una de:"
 
-#: sql_help.c:4293 sql_help.c:4532 sql_help.c:4750
+#: sql_help.c:4340 sql_help.c:4579 sql_help.c:4799
 msgid "and with_query is:"
 msgstr "y consulta_with es:"
 
-#: sql_help.c:4297 sql_help.c:4536 sql_help.c:4754
+#: sql_help.c:4344 sql_help.c:4583 sql_help.c:4803
 msgid "values"
 msgstr "valores"
 
-#: sql_help.c:4298 sql_help.c:4537 sql_help.c:4755
+#: sql_help.c:4345 sql_help.c:4584 sql_help.c:4804
 msgid "insert"
 msgstr "insert"
 
-#: sql_help.c:4299 sql_help.c:4538 sql_help.c:4756
+#: sql_help.c:4346 sql_help.c:4585 sql_help.c:4805
 msgid "update"
 msgstr "update"
 
-#: sql_help.c:4300 sql_help.c:4539 sql_help.c:4757
+#: sql_help.c:4347 sql_help.c:4586 sql_help.c:4806
 msgid "delete"
 msgstr "delete"
 
-#: sql_help.c:4327
+#: sql_help.c:4374
 msgid "new_table"
 msgstr "nueva_tabla"
 
-#: sql_help.c:4352
+#: sql_help.c:4399
 msgid "timezone"
 msgstr "huso_horario"
 
-#: sql_help.c:4397
+#: sql_help.c:4444
 msgid "snapshot_id"
 msgstr "id_de_snapshot"
 
-#: sql_help.c:4582
-msgid "from_list"
-msgstr "lista_from"
-
-#: sql_help.c:4637
+#: sql_help.c:4686
 msgid "sort_expression"
 msgstr "expresión_orden"
 
-#: sql_help.c:4764 sql_help.c:5742
+#: sql_help.c:4813 sql_help.c:5791
 msgid "abort the current transaction"
 msgstr "aborta la transacción en curso"
 
-#: sql_help.c:4770
+#: sql_help.c:4819
 msgid "change the definition of an aggregate function"
 msgstr "cambia la definición de una función de agregación"
 
-#: sql_help.c:4776
+#: sql_help.c:4825
 msgid "change the definition of a collation"
 msgstr "cambia la definición de un ordenamiento"
 
-#: sql_help.c:4782
+#: sql_help.c:4831
 msgid "change the definition of a conversion"
 msgstr "cambia la definición de una conversión"
 
-#: sql_help.c:4788
+#: sql_help.c:4837
 msgid "change a database"
 msgstr "cambia una base de datos"
 
-#: sql_help.c:4794
+#: sql_help.c:4843
 msgid "define default access privileges"
 msgstr "define privilegios de acceso por omisión"
 
-#: sql_help.c:4800
+#: sql_help.c:4849
 msgid "change the definition of a domain"
 msgstr "cambia la definición de un dominio"
 
-#: sql_help.c:4806
+#: sql_help.c:4855
 msgid "change the definition of an event trigger"
 msgstr "cambia la definición de un disparador por evento"
 
-#: sql_help.c:4812
+#: sql_help.c:4861
 msgid "change the definition of an extension"
 msgstr "cambia la definición de una extensión"
 
-#: sql_help.c:4818
+#: sql_help.c:4867
 msgid "change the definition of a foreign-data wrapper"
 msgstr "cambia la definición de un conector de datos externos"
 
-#: sql_help.c:4824
+#: sql_help.c:4873
 msgid "change the definition of a foreign table"
 msgstr "cambia la definición de una tabla foránea"
 
-#: sql_help.c:4830
+#: sql_help.c:4879
 msgid "change the definition of a function"
 msgstr "cambia la definición de una función"
 
-#: sql_help.c:4836
+#: sql_help.c:4885
 msgid "change role name or membership"
 msgstr "cambiar nombre del rol o membresía"
 
-#: sql_help.c:4842
+#: sql_help.c:4891
 msgid "change the definition of an index"
 msgstr "cambia la definición de un índice"
 
-#: sql_help.c:4848
+#: sql_help.c:4897
 msgid "change the definition of a procedural language"
 msgstr "cambia la definición de un lenguaje procedural"
 
-#: sql_help.c:4854
+#: sql_help.c:4903
 msgid "change the definition of a large object"
 msgstr "cambia la definición de un objeto grande"
 
-#: sql_help.c:4860
+#: sql_help.c:4909
 msgid "change the definition of a materialized view"
 msgstr "cambia la definición de una vista materializada"
 
-#: sql_help.c:4866
+#: sql_help.c:4915
 msgid "change the definition of an operator"
 msgstr "cambia la definición de un operador"
 
-#: sql_help.c:4872
+#: sql_help.c:4921
 msgid "change the definition of an operator class"
 msgstr "cambia la definición de una clase de operadores"
 
-#: sql_help.c:4878
+#: sql_help.c:4927
 msgid "change the definition of an operator family"
 msgstr "cambia la definición de una familia de operadores"
 
-#: sql_help.c:4884
+#: sql_help.c:4933
 msgid "change the definition of a row level security policy"
 msgstr "cambia la definición de una política de seguridad de registros"
 
-#: sql_help.c:4890
+#: sql_help.c:4939
 msgid "change the definition of a procedure"
 msgstr "cambia la definición de un procedimiento"
 
-#: sql_help.c:4896
+#: sql_help.c:4945
 msgid "change the definition of a publication"
 msgstr "cambia la definición de una publicación"
 
-#: sql_help.c:4902 sql_help.c:5004
+#: sql_help.c:4951 sql_help.c:5053
 msgid "change a database role"
 msgstr "cambia un rol de la base de datos"
 
-#: sql_help.c:4908
+#: sql_help.c:4957
 msgid "change the definition of a routine"
 msgstr "cambia la definición de una rutina"
 
-#: sql_help.c:4914
+#: sql_help.c:4963
 msgid "change the definition of a rule"
 msgstr "cambia la definición de una regla"
 
-#: sql_help.c:4920
+#: sql_help.c:4969
 msgid "change the definition of a schema"
 msgstr "cambia la definición de un esquema"
 
-#: sql_help.c:4926
+#: sql_help.c:4975
 msgid "change the definition of a sequence generator"
 msgstr "cambia la definición de un generador secuencial"
 
-#: sql_help.c:4932
+#: sql_help.c:4981
 msgid "change the definition of a foreign server"
 msgstr "cambia la definición de un servidor foráneo"
 
-#: sql_help.c:4938
+#: sql_help.c:4987
 msgid "change the definition of an extended statistics object"
 msgstr "cambia la definición de un objeto de estadísticas extendidas"
 
-#: sql_help.c:4944
+#: sql_help.c:4993
 msgid "change the definition of a subscription"
 msgstr "cambia la definición de una suscripción"
 
-#: sql_help.c:4950
+#: sql_help.c:4999
 msgid "change a server configuration parameter"
 msgstr "cambia un parámetro de configuración del servidor"
 
-#: sql_help.c:4956
+#: sql_help.c:5005
 msgid "change the definition of a table"
 msgstr "cambia la definición de una tabla"
 
-#: sql_help.c:4962
+#: sql_help.c:5011
 msgid "change the definition of a tablespace"
 msgstr "cambia la definición de un tablespace"
 
-#: sql_help.c:4968
+#: sql_help.c:5017
 msgid "change the definition of a text search configuration"
 msgstr "cambia la definición de una configuración de búsqueda en texto"
 
-#: sql_help.c:4974
+#: sql_help.c:5023
 msgid "change the definition of a text search dictionary"
 msgstr "cambia la definición de un diccionario de búsqueda en texto"
 
-#: sql_help.c:4980
+#: sql_help.c:5029
 msgid "change the definition of a text search parser"
 msgstr "cambia la definición de un analizador de búsqueda en texto"
 
-#: sql_help.c:4986
+#: sql_help.c:5035
 msgid "change the definition of a text search template"
 msgstr "cambia la definición de una plantilla de búsqueda en texto"
 
-#: sql_help.c:4992
+#: sql_help.c:5041
 msgid "change the definition of a trigger"
 msgstr "cambia la definición de un disparador"
 
-#: sql_help.c:4998
+#: sql_help.c:5047
 msgid "change the definition of a type"
 msgstr "cambia la definición de un tipo"
 
-#: sql_help.c:5010
+#: sql_help.c:5059
 msgid "change the definition of a user mapping"
 msgstr "cambia la definición de un mapeo de usuario"
 
-#: sql_help.c:5016
+#: sql_help.c:5065
 msgid "change the definition of a view"
 msgstr "cambia la definición de una vista"
 
-#: sql_help.c:5022
+#: sql_help.c:5071
 msgid "collect statistics about a database"
 msgstr "recolecta estadísticas sobre una base de datos"
 
-#: sql_help.c:5028 sql_help.c:5820
+#: sql_help.c:5077 sql_help.c:5869
 msgid "start a transaction block"
 msgstr "inicia un bloque de transacción"
 
-#: sql_help.c:5034
+#: sql_help.c:5083
 msgid "invoke a procedure"
 msgstr "invocar un procedimiento"
 
-#: sql_help.c:5040
+#: sql_help.c:5089
 msgid "force a write-ahead log checkpoint"
 msgstr "fuerza un checkpoint de wal"
 
-#: sql_help.c:5046
+#: sql_help.c:5095
 msgid "close a cursor"
 msgstr "cierra un cursor"
 
-#: sql_help.c:5052
+#: sql_help.c:5101
 msgid "cluster a table according to an index"
 msgstr "reordena una tabla siguiendo un índice"
 
-#: sql_help.c:5058
+#: sql_help.c:5107
 msgid "define or change the comment of an object"
 msgstr "define o cambia un comentario sobre un objeto"
 
-#: sql_help.c:5064 sql_help.c:5622
+#: sql_help.c:5113 sql_help.c:5671
 msgid "commit the current transaction"
 msgstr "compromete la transacción en curso"
 
-#: sql_help.c:5070
+#: sql_help.c:5119
 msgid "commit a transaction that was earlier prepared for two-phase commit"
 msgstr "confirma una transacción que fue preparada para two-phase commit"
 
-#: sql_help.c:5076
+#: sql_help.c:5125
 msgid "copy data between a file and a table"
 msgstr "copia datos entre un archivo y una tabla"
 
-#: sql_help.c:5082
+#: sql_help.c:5131
 msgid "define a new access method"
 msgstr "define un nuevo método de acceso"
 
-#: sql_help.c:5088
+#: sql_help.c:5137
 msgid "define a new aggregate function"
 msgstr "define una nueva función de agregación"
 
-#: sql_help.c:5094
+#: sql_help.c:5143
 msgid "define a new cast"
 msgstr "define una nueva conversión de tipo"
 
-#: sql_help.c:5100
+#: sql_help.c:5149
 msgid "define a new collation"
 msgstr "define un nuevo ordenamiento"
 
-#: sql_help.c:5106
+#: sql_help.c:5155
 msgid "define a new encoding conversion"
 msgstr "define una nueva conversión de codificación"
 
-#: sql_help.c:5112
+#: sql_help.c:5161
 msgid "create a new database"
 msgstr "crea una nueva base de datos"
 
-#: sql_help.c:5118
+#: sql_help.c:5167
 msgid "define a new domain"
 msgstr "define un nuevo dominio"
 
-#: sql_help.c:5124
+#: sql_help.c:5173
 msgid "define a new event trigger"
 msgstr "define un nuevo disparador por evento"
 
-#: sql_help.c:5130
+#: sql_help.c:5179
 msgid "install an extension"
 msgstr "instala una extensión"
 
-#: sql_help.c:5136
+#: sql_help.c:5185
 msgid "define a new foreign-data wrapper"
 msgstr "define un nuevo conector de datos externos"
 
-#: sql_help.c:5142
+#: sql_help.c:5191
 msgid "define a new foreign table"
 msgstr "define una nueva tabla foránea"
 
-#: sql_help.c:5148
+#: sql_help.c:5197
 msgid "define a new function"
 msgstr "define una nueva función"
 
-#: sql_help.c:5154 sql_help.c:5214 sql_help.c:5316
+#: sql_help.c:5203 sql_help.c:5263 sql_help.c:5365
 msgid "define a new database role"
 msgstr "define un nuevo rol de la base de datos"
 
-#: sql_help.c:5160
+#: sql_help.c:5209
 msgid "define a new index"
 msgstr "define un nuevo índice"
 
-#: sql_help.c:5166
+#: sql_help.c:5215
 msgid "define a new procedural language"
 msgstr "define un nuevo lenguaje procedural"
 
-#: sql_help.c:5172
+#: sql_help.c:5221
 msgid "define a new materialized view"
 msgstr "define una nueva vista materializada"
 
-#: sql_help.c:5178
+#: sql_help.c:5227
 msgid "define a new operator"
 msgstr "define un nuevo operador"
 
-#: sql_help.c:5184
+#: sql_help.c:5233
 msgid "define a new operator class"
 msgstr "define una nueva clase de operadores"
 
-#: sql_help.c:5190
+#: sql_help.c:5239
 msgid "define a new operator family"
 msgstr "define una nueva familia de operadores"
 
-#: sql_help.c:5196
+#: sql_help.c:5245
 msgid "define a new row level security policy for a table"
 msgstr "define una nueva política de seguridad de registros para una tabla"
 
-#: sql_help.c:5202
+#: sql_help.c:5251
 msgid "define a new procedure"
 msgstr "define un nuevo procedimiento"
 
-#: sql_help.c:5208
+#: sql_help.c:5257
 msgid "define a new publication"
 msgstr "define una nueva publicación"
 
-#: sql_help.c:5220
+#: sql_help.c:5269
 msgid "define a new rewrite rule"
 msgstr "define una nueva regla de reescritura"
 
-#: sql_help.c:5226
+#: sql_help.c:5275
 msgid "define a new schema"
 msgstr "define un nuevo schema"
 
-#: sql_help.c:5232
+#: sql_help.c:5281
 msgid "define a new sequence generator"
 msgstr "define un nuevo generador secuencial"
 
-#: sql_help.c:5238
+#: sql_help.c:5287
 msgid "define a new foreign server"
 msgstr "define un nuevo servidor foráneo"
 
-#: sql_help.c:5244
+#: sql_help.c:5293
 msgid "define extended statistics"
 msgstr "define estadísticas extendidas"
 
-#: sql_help.c:5250
+#: sql_help.c:5299
 msgid "define a new subscription"
 msgstr "define una nueva suscripción"
 
-#: sql_help.c:5256
+#: sql_help.c:5305
 msgid "define a new table"
 msgstr "define una nueva tabla"
 
-#: sql_help.c:5262 sql_help.c:5778
+#: sql_help.c:5311 sql_help.c:5827
 msgid "define a new table from the results of a query"
 msgstr "crea una nueva tabla usando los resultados de una consulta"
 
-#: sql_help.c:5268
+#: sql_help.c:5317
 msgid "define a new tablespace"
 msgstr "define un nuevo tablespace"
 
-#: sql_help.c:5274
+#: sql_help.c:5323
 msgid "define a new text search configuration"
 msgstr "define una nueva configuración de búsqueda en texto"
 
-#: sql_help.c:5280
+#: sql_help.c:5329
 msgid "define a new text search dictionary"
 msgstr "define un nuevo diccionario de búsqueda en texto"
 
-#: sql_help.c:5286
+#: sql_help.c:5335
 msgid "define a new text search parser"
 msgstr "define un nuevo analizador de búsqueda en texto"
 
-#: sql_help.c:5292
+#: sql_help.c:5341
 msgid "define a new text search template"
 msgstr "define una nueva plantilla de búsqueda en texto"
 
-#: sql_help.c:5298
+#: sql_help.c:5347
 msgid "define a new transform"
 msgstr "define una nueva transformación"
 
-#: sql_help.c:5304
+#: sql_help.c:5353
 msgid "define a new trigger"
 msgstr "define un nuevo disparador"
 
-#: sql_help.c:5310
+#: sql_help.c:5359
 msgid "define a new data type"
 msgstr "define un nuevo tipo de datos"
 
-#: sql_help.c:5322
+#: sql_help.c:5371
 msgid "define a new mapping of a user to a foreign server"
 msgstr "define un nuevo mapa de usuario a servidor foráneo"
 
-#: sql_help.c:5328
+#: sql_help.c:5377
 msgid "define a new view"
 msgstr "define una nueva vista"
 
-#: sql_help.c:5334
+#: sql_help.c:5383
 msgid "deallocate a prepared statement"
 msgstr "elimina una sentencia preparada"
 
-#: sql_help.c:5340
+#: sql_help.c:5389
 msgid "define a cursor"
 msgstr "define un nuevo cursor"
 
-#: sql_help.c:5346
+#: sql_help.c:5395
 msgid "delete rows of a table"
 msgstr "elimina filas de una tabla"
 
-#: sql_help.c:5352
+#: sql_help.c:5401
 msgid "discard session state"
 msgstr "descartar datos de la sesión"
 
-#: sql_help.c:5358
+#: sql_help.c:5407
 msgid "execute an anonymous code block"
 msgstr "ejecutar un bloque anónimo de código"
 
-#: sql_help.c:5364
+#: sql_help.c:5413
 msgid "remove an access method"
 msgstr "elimina un método de acceso"
 
-#: sql_help.c:5370
+#: sql_help.c:5419
 msgid "remove an aggregate function"
 msgstr "elimina una función de agregación"
 
-#: sql_help.c:5376
+#: sql_help.c:5425
 msgid "remove a cast"
 msgstr "elimina una conversión de tipo"
 
-#: sql_help.c:5382
+#: sql_help.c:5431
 msgid "remove a collation"
 msgstr "elimina un ordenamiento"
 
-#: sql_help.c:5388
+#: sql_help.c:5437
 msgid "remove a conversion"
 msgstr "elimina una conversión de codificación"
 
-#: sql_help.c:5394
+#: sql_help.c:5443
 msgid "remove a database"
 msgstr "elimina una base de datos"
 
-#: sql_help.c:5400
+#: sql_help.c:5449
 msgid "remove a domain"
 msgstr "elimina un dominio"
 
-#: sql_help.c:5406
+#: sql_help.c:5455
 msgid "remove an event trigger"
 msgstr "elimina un disparador por evento"
 
-#: sql_help.c:5412
+#: sql_help.c:5461
 msgid "remove an extension"
 msgstr "elimina una extensión"
 
-#: sql_help.c:5418
+#: sql_help.c:5467
 msgid "remove a foreign-data wrapper"
 msgstr "elimina un conector de datos externos"
 
-#: sql_help.c:5424
+#: sql_help.c:5473
 msgid "remove a foreign table"
 msgstr "elimina una tabla foránea"
 
-#: sql_help.c:5430
+#: sql_help.c:5479
 msgid "remove a function"
 msgstr "elimina una función"
 
-#: sql_help.c:5436 sql_help.c:5502 sql_help.c:5604
+#: sql_help.c:5485 sql_help.c:5551 sql_help.c:5653
 msgid "remove a database role"
 msgstr "elimina un rol de base de datos"
 
-#: sql_help.c:5442
+#: sql_help.c:5491
 msgid "remove an index"
 msgstr "elimina un índice"
 
-#: sql_help.c:5448
+#: sql_help.c:5497
 msgid "remove a procedural language"
 msgstr "elimina un lenguaje procedural"
 
-#: sql_help.c:5454
+#: sql_help.c:5503
 msgid "remove a materialized view"
 msgstr "elimina una vista materializada"
 
-#: sql_help.c:5460
+#: sql_help.c:5509
 msgid "remove an operator"
 msgstr "elimina un operador"
 
-#: sql_help.c:5466
+#: sql_help.c:5515
 msgid "remove an operator class"
 msgstr "elimina una clase de operadores"
 
-#: sql_help.c:5472
+#: sql_help.c:5521
 msgid "remove an operator family"
 msgstr "elimina una familia de operadores"
 
-#: sql_help.c:5478
+#: sql_help.c:5527
 msgid "remove database objects owned by a database role"
 msgstr "elimina objetos de propiedad de un rol de la base de datos"
 
-#: sql_help.c:5484
+#: sql_help.c:5533
 msgid "remove a row level security policy from a table"
 msgstr "elimina una política de seguridad de registros de una tabla"
 
-#: sql_help.c:5490
+#: sql_help.c:5539
 msgid "remove a procedure"
 msgstr "elimina un procedimiento"
 
-#: sql_help.c:5496
+#: sql_help.c:5545
 msgid "remove a publication"
 msgstr "elimina una publicación"
 
-#: sql_help.c:5508
+#: sql_help.c:5557
 msgid "remove a routine"
 msgstr "elimina una rutina"
 
-#: sql_help.c:5514
+#: sql_help.c:5563
 msgid "remove a rewrite rule"
 msgstr "elimina una regla de reescritura"
 
-#: sql_help.c:5520
+#: sql_help.c:5569
 msgid "remove a schema"
 msgstr "elimina un schema"
 
-#: sql_help.c:5526
+#: sql_help.c:5575
 msgid "remove a sequence"
 msgstr "elimina un generador secuencial"
 
-#: sql_help.c:5532
+#: sql_help.c:5581
 msgid "remove a foreign server descriptor"
 msgstr "elimina un descriptor de servidor foráneo"
 
-#: sql_help.c:5538
+#: sql_help.c:5587
 msgid "remove extended statistics"
 msgstr "elimina estadísticas extendidas"
 
-#: sql_help.c:5544
+#: sql_help.c:5593
 msgid "remove a subscription"
 msgstr "elimina una suscripción"
 
-#: sql_help.c:5550
+#: sql_help.c:5599
 msgid "remove a table"
 msgstr "elimina una tabla"
 
-#: sql_help.c:5556
+#: sql_help.c:5605
 msgid "remove a tablespace"
 msgstr "elimina un tablespace"
 
-#: sql_help.c:5562
+#: sql_help.c:5611
 msgid "remove a text search configuration"
 msgstr "elimina una configuración de búsqueda en texto"
 
-#: sql_help.c:5568
+#: sql_help.c:5617
 msgid "remove a text search dictionary"
 msgstr "elimina un diccionario de búsqueda en texto"
 
-#: sql_help.c:5574
+#: sql_help.c:5623
 msgid "remove a text search parser"
 msgstr "elimina un analizador de búsqueda en texto"
 
-#: sql_help.c:5580
+#: sql_help.c:5629
 msgid "remove a text search template"
 msgstr "elimina una plantilla de búsqueda en texto"
 
-#: sql_help.c:5586
+#: sql_help.c:5635
 msgid "remove a transform"
 msgstr "elimina una transformación"
 
-#: sql_help.c:5592
+#: sql_help.c:5641
 msgid "remove a trigger"
 msgstr "elimina un disparador"
 
-#: sql_help.c:5598
+#: sql_help.c:5647
 msgid "remove a data type"
 msgstr "elimina un tipo de datos"
 
-#: sql_help.c:5610
+#: sql_help.c:5659
 msgid "remove a user mapping for a foreign server"
 msgstr "elimina un mapeo de usuario para un servidor remoto"
 
-#: sql_help.c:5616
+#: sql_help.c:5665
 msgid "remove a view"
 msgstr "elimina una vista"
 
-#: sql_help.c:5628
+#: sql_help.c:5677
 msgid "execute a prepared statement"
 msgstr "ejecuta una sentencia preparada"
 
-#: sql_help.c:5634
+#: sql_help.c:5683
 msgid "show the execution plan of a statement"
 msgstr "muestra el plan de ejecución de una sentencia"
 
-#: sql_help.c:5640
+#: sql_help.c:5689
 msgid "retrieve rows from a query using a cursor"
 msgstr "recupera filas de una consulta usando un cursor"
 
-#: sql_help.c:5646
+#: sql_help.c:5695
 msgid "define access privileges"
 msgstr "define privilegios de acceso"
 
-#: sql_help.c:5652
+#: sql_help.c:5701
 msgid "import table definitions from a foreign server"
 msgstr "importa definiciones de tablas desde un servidor foráneo"
 
-#: sql_help.c:5658
+#: sql_help.c:5707
 msgid "create new rows in a table"
 msgstr "crea nuevas filas en una tabla"
 
-#: sql_help.c:5664
+#: sql_help.c:5713
 msgid "listen for a notification"
 msgstr "escucha notificaciones"
 
-#: sql_help.c:5670
+#: sql_help.c:5719
 msgid "load a shared library file"
 msgstr "carga un archivo de biblioteca compartida"
 
-#: sql_help.c:5676
+#: sql_help.c:5725
 msgid "lock a table"
 msgstr "bloquea una tabla"
 
-#: sql_help.c:5682
+#: sql_help.c:5731
 msgid "position a cursor"
 msgstr "reposiciona un cursor"
 
-#: sql_help.c:5688
+#: sql_help.c:5737
 msgid "generate a notification"
 msgstr "genera una notificación"
 
-#: sql_help.c:5694
+#: sql_help.c:5743
 msgid "prepare a statement for execution"
 msgstr "prepara una sentencia para ejecución"
 
-#: sql_help.c:5700
+#: sql_help.c:5749
 msgid "prepare the current transaction for two-phase commit"
 msgstr "prepara la transacción actual para two-phase commit"
 
-#: sql_help.c:5706
+#: sql_help.c:5755
 msgid "change the ownership of database objects owned by a database role"
 msgstr "cambia de dueño a los objetos de propiedad de un rol de la base de datos"
 
-#: sql_help.c:5712
+#: sql_help.c:5761
 msgid "replace the contents of a materialized view"
 msgstr "reemplaza los contenidos de una vista materializada"
 
-#: sql_help.c:5718
+#: sql_help.c:5767
 msgid "rebuild indexes"
 msgstr "reconstruye índices"
 
-#: sql_help.c:5724
+#: sql_help.c:5773
 msgid "destroy a previously defined savepoint"
 msgstr "destruye un savepoint previamente definido"
 
-#: sql_help.c:5730
+#: sql_help.c:5779
 msgid "restore the value of a run-time parameter to the default value"
 msgstr "restaura el valor de un parámetro de configuración al valor inicial"
 
-#: sql_help.c:5736
+#: sql_help.c:5785
 msgid "remove access privileges"
 msgstr "revoca privilegios de acceso"
 
-#: sql_help.c:5748
+#: sql_help.c:5797
 msgid "cancel a transaction that was earlier prepared for two-phase commit"
 msgstr "cancela una transacción que fue previamente preparada para two-phase commit."
 
-#: sql_help.c:5754
+#: sql_help.c:5803
 msgid "roll back to a savepoint"
 msgstr "descartar hacia un savepoint"
 
-#: sql_help.c:5760
+#: sql_help.c:5809
 msgid "define a new savepoint within the current transaction"
 msgstr "define un nuevo savepoint en la transacción en curso"
 
-#: sql_help.c:5766
+#: sql_help.c:5815
 msgid "define or change a security label applied to an object"
 msgstr "define o cambia una etiqueta de seguridad sobre un objeto"
 
-#: sql_help.c:5772 sql_help.c:5826 sql_help.c:5862
+#: sql_help.c:5821 sql_help.c:5875 sql_help.c:5911
 msgid "retrieve rows from a table or view"
 msgstr "recupera filas desde una tabla o vista"
 
-#: sql_help.c:5784
+#: sql_help.c:5833
 msgid "change a run-time parameter"
 msgstr "cambia un parámetro de configuración"
 
-#: sql_help.c:5790
+#: sql_help.c:5839
 msgid "set constraint check timing for the current transaction"
 msgstr "define el modo de verificación de las restricciones de la transacción en curso"
 
-#: sql_help.c:5796
+#: sql_help.c:5845
 msgid "set the current user identifier of the current session"
 msgstr "define el identificador de usuario actual de la sesión actual"
 
-#: sql_help.c:5802
+#: sql_help.c:5851
 msgid "set the session user identifier and the current user identifier of the current session"
 msgstr ""
 "define el identificador del usuario de sesión y el identificador\n"
 "del usuario actual de la sesión en curso"
 
-#: sql_help.c:5808
+#: sql_help.c:5857
 msgid "set the characteristics of the current transaction"
 msgstr "define las características de la transacción en curso"
 
-#: sql_help.c:5814
+#: sql_help.c:5863
 msgid "show the value of a run-time parameter"
 msgstr "muestra el valor de un parámetro de configuración"
 
-#: sql_help.c:5832
+#: sql_help.c:5881
 msgid "empty a table or set of tables"
 msgstr "vacía una tabla o conjunto de tablas"
 
-#: sql_help.c:5838
+#: sql_help.c:5887
 msgid "stop listening for a notification"
 msgstr "deja de escuchar una notificación"
 
-#: sql_help.c:5844
+#: sql_help.c:5893
 msgid "update rows of a table"
 msgstr "actualiza filas de una tabla"
 
-#: sql_help.c:5850
+#: sql_help.c:5899
 msgid "garbage-collect and optionally analyze a database"
 msgstr "recolecta basura y opcionalmente estadísticas sobre una base de datos"
 
-#: sql_help.c:5856
+#: sql_help.c:5905
 msgid "compute a set of rows"
 msgstr "calcula un conjunto de registros"
 
-#: startup.c:216
+#: startup.c:212
 #, c-format
 msgid "-1 can only be used in non-interactive mode"
 msgstr "-1 sólo puede ser usado en modo no interactivo"
 
-#: startup.c:303
+#: startup.c:299
 #, c-format
 msgid "could not connect to server: %s"
 msgstr "no se pudo conectar al servidor: %s"
 
-#: startup.c:331
+#: startup.c:327
 #, c-format
 msgid "could not open log file \"%s\": %m"
 msgstr "no se pudo abrir el archivo de registro «%s»: %m"
 
-#: startup.c:443
+#: startup.c:439
 #, c-format
 msgid ""
 "Type \"help\" for help.\n"
@@ -6126,27 +6320,27 @@ msgstr ""
 "Digite «help» para obtener ayuda.\n"
 "\n"
 
-#: startup.c:593
+#: startup.c:589
 #, c-format
 msgid "could not set printing parameter \"%s\""
 msgstr "no se pudo definir parámetro de impresión «%s»"
 
-#: startup.c:701
+#: startup.c:697
 #, c-format
 msgid "Try \"%s --help\" for more information.\n"
 msgstr "Use «%s --help» para obtener más información.\n"
 
-#: startup.c:718
+#: startup.c:714
 #, c-format
 msgid "extra command-line argument \"%s\" ignored"
 msgstr "se ignoró argumento extra «%s» en línea de órdenes"
 
-#: startup.c:767
+#: startup.c:763
 #, c-format
 msgid "could not find own program executable"
 msgstr "no se pudo encontrar el ejecutable propio"
 
-#: tab-complete.c:4408
+#: tab-complete.c:4640
 #, c-format
 msgid ""
 "tab completion query failed: %s\n"
@@ -6157,22 +6351,22 @@ msgstr ""
 "La consulta era:\n"
 "%s"
 
-#: variables.c:141
+#: variables.c:139
 #, c-format
 msgid "unrecognized value \"%s\" for \"%s\": Boolean expected"
 msgstr "valor «%s» no reconocido para «%s»: se esperaba booleano"
 
-#: variables.c:178
+#: variables.c:176
 #, c-format
 msgid "invalid value \"%s\" for \"%s\": integer expected"
 msgstr "valor «%s» no válido para «%s»: se esperaba número entero"
 
-#: variables.c:226
+#: variables.c:224
 #, c-format
 msgid "invalid variable name: \"%s\""
 msgstr "nombre de variable no válido: «%s»"
 
-#: variables.c:395
+#: variables.c:393
 #, c-format
 msgid ""
 "unrecognized value \"%s\" for \"%s\"\n"
@@ -6180,3 +6374,15 @@ msgid ""
 msgstr ""
 "valor «%s» no reconocido para «%s»\n"
 "Los valores disponibles son: %s."
+
+#~ msgid "Report bugs to <pgsql-bugs@lists.postgresql.org>.\n"
+#~ msgstr "Reporte errores a <pgsql-bugs@lists.postgresql.org>.\n"
+
+#~ msgid "old_version"
+#~ msgstr "versión_antigua"
+
+#~ msgid "using_list"
+#~ msgstr "lista_using"
+
+#~ msgid "from_list"
+#~ msgstr "lista_from"
diff --git a/src/bin/psql/po/ja.po b/src/bin/psql/po/ja.po
index 02e9ddb1c1f..bbdb284754a 100644
--- a/src/bin/psql/po/ja.po
+++ b/src/bin/psql/po/ja.po
@@ -2928,7 +2928,7 @@ msgstr "  \\ef [関数名 [行番号]]  関数定義を外部エディタで編
 #: help.c:198
 #, c-format
 msgid "  \\ev [VIEWNAME [LINE]]  edit view definition with external editor\n"
-msgstr "  \\ef [ビュー名 [行番号]] ビュー定義を外部エディタで編集します。\n"
+msgstr "  \\ev [ビュー名 [行番号]] ビュー定義を外部エディタで編集します。\n"
 
 #: help.c:199
 #, c-format
@@ -3232,17 +3232,17 @@ msgstr ""
 #: help.c:258
 #, c-format
 msgid "  \\ds[S+] [PATTERN]      list sequences\n"
-msgstr "  \\dc[S+] [パターン]     変換シーケンス一覧を表示します。\n"
+msgstr "  \\ds[S+] [パターン]     変換シーケンス一覧を表示します。\n"
 
 #: help.c:259
 #, c-format
 msgid "  \\dt[S+] [PATTERN]      list tables\n"
-msgstr "  \\ds[S+] [パターン]     テーブル一覧を表示します。\n"
+msgstr "  \\dt[S+] [パターン]     テーブル一覧を表示します。\n"
 
 #: help.c:260
 #, c-format
 msgid "  \\dT[S+] [PATTERN]      list data types\n"
-msgstr "  \\dt[S+] [パターン]     データ型一覧を表示します。\n"
+msgstr "  \\dT[S+] [パターン]     データ型一覧を表示します。\n"
 
 #: help.c:261
 #, c-format
diff --git a/src/bin/scripts/po/es.po b/src/bin/scripts/po/es.po
index f34c7500143..849608e54e8 100644
--- a/src/bin/scripts/po/es.po
+++ b/src/bin/scripts/po/es.po
@@ -12,7 +12,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: pgscripts (PostgreSQL) 10\n"
 "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n"
-"POT-Creation-Date: 2019-09-29 23:44+0000\n"
+"POT-Creation-Date: 2020-05-17 02:46+0000\n"
 "PO-Revision-Date: 2019-09-29 22:24-0300\n"
 "Last-Translator: Carlos Chapi <carlos.chapi@2ndquadrant.com>\n"
 "Language-Team: PgSQL-es-Ayuda <pgsql-es-ayuda@lists.postgresql.org>\n"
@@ -23,28 +23,28 @@ msgstr ""
 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
 "X-Generator: Poedit 2.0.2\n"
 
-#: ../../../src/common/logging.c:188
+#: ../../../src/common/logging.c:236
 #, c-format
 msgid "fatal: "
 msgstr "fatal: "
 
-#: ../../../src/common/logging.c:195
+#: ../../../src/common/logging.c:243
 #, c-format
 msgid "error: "
 msgstr "error: "
 
-#: ../../../src/common/logging.c:202
+#: ../../../src/common/logging.c:250
 #, c-format
 msgid "warning: "
 msgstr "precaución: "
 
 #: ../../common/fe_memutils.c:35 ../../common/fe_memutils.c:75
-#: ../../common/fe_memutils.c:98
+#: ../../common/fe_memutils.c:98 ../../common/fe_memutils.c:162
 #, c-format
 msgid "out of memory\n"
 msgstr "memoria agotada\n"
 
-#: ../../common/fe_memutils.c:92
+#: ../../common/fe_memutils.c:92 ../../common/fe_memutils.c:154
 #, c-format
 msgid "cannot duplicate null pointer (internal error)\n"
 msgstr "no se puede duplicar un puntero nulo (error interno)\n"
@@ -63,73 +63,73 @@ msgstr "el usuario no existe"
 msgid "user name lookup failure: error code %lu"
 msgstr "fallo en la búsqueda de nombre de usuario: código de error %lu"
 
-#: ../../fe_utils/print.c:353
+#: ../../fe_utils/print.c:350
 #, c-format
 msgid "(%lu row)"
 msgid_plural "(%lu rows)"
 msgstr[0] "(%lu fila)"
 msgstr[1] "(%lu filas)"
 
-#: ../../fe_utils/print.c:3058
+#: ../../fe_utils/print.c:3055
 #, c-format
 msgid "Interrupted\n"
 msgstr "Interrumpido\n"
 
-#: ../../fe_utils/print.c:3122
+#: ../../fe_utils/print.c:3119
 #, c-format
 msgid "Cannot add header to table content: column count of %d exceeded.\n"
 msgstr "No se puede agregar un encabezado al contenido de la tabla: la cantidad de columnas de %d ha sido excedida.\n"
 
-#: ../../fe_utils/print.c:3162
+#: ../../fe_utils/print.c:3159
 #, c-format
 msgid "Cannot add cell to table content: total cell count of %d exceeded.\n"
 msgstr "No se puede agregar una celda al contenido de la tabla: la cantidad de celdas de %d ha sido excedida.\n"
 
-#: ../../fe_utils/print.c:3417
+#: ../../fe_utils/print.c:3414
 #, c-format
 msgid "invalid output format (internal error): %d"
 msgstr "formato de salida no válido (error interno): %d"
 
-#: clusterdb.c:113 clusterdb.c:132 createdb.c:121 createdb.c:140
-#: createuser.c:168 createuser.c:183 dropdb.c:96 dropdb.c:105 dropdb.c:113
+#: clusterdb.c:114 clusterdb.c:133 createdb.c:121 createdb.c:140
+#: createuser.c:171 createuser.c:186 dropdb.c:101 dropdb.c:110 dropdb.c:118
 #: dropuser.c:92 dropuser.c:107 dropuser.c:122 pg_isready.c:95 pg_isready.c:109
-#: reindexdb.c:139 reindexdb.c:158 vacuumdb.c:244 vacuumdb.c:263
+#: reindexdb.c:168 reindexdb.c:187 vacuumdb.c:227 vacuumdb.c:246
 #, c-format
 msgid "Try \"%s --help\" for more information.\n"
 msgstr "Use «%s --help» para mayor información.\n"
 
-#: clusterdb.c:130 createdb.c:138 createuser.c:181 dropdb.c:111 dropuser.c:105
-#: pg_isready.c:107 reindexdb.c:156 vacuumdb.c:261
+#: clusterdb.c:131 createdb.c:138 createuser.c:184 dropdb.c:116 dropuser.c:105
+#: pg_isready.c:107 reindexdb.c:185 vacuumdb.c:244
 #, c-format
 msgid "too many command-line arguments (first is \"%s\")"
 msgstr "demasiados argumentos en la línea de órdenes (el primero es «%s»)"
 
-#: clusterdb.c:142
+#: clusterdb.c:143
 #, c-format
 msgid "cannot cluster all databases and a specific one at the same time"
 msgstr "no se pueden reordenar todas las bases de datos y una de ellas en particular simultáneamente"
 
-#: clusterdb.c:148
+#: clusterdb.c:149
 #, c-format
 msgid "cannot cluster specific table(s) in all databases"
 msgstr "no es posible reordenar tablas específicas en todas las bases de datos"
 
-#: clusterdb.c:216
+#: clusterdb.c:217
 #, c-format
 msgid "clustering of table \"%s\" in database \"%s\" failed: %s"
 msgstr "falló el reordenamiento de la tabla «%s» en la base de datos «%s»: %s"
 
-#: clusterdb.c:219
+#: clusterdb.c:220
 #, c-format
 msgid "clustering of database \"%s\" failed: %s"
 msgstr "falló el reordenamiento de la base de datos «%s»: %s"
 
-#: clusterdb.c:252
+#: clusterdb.c:253
 #, c-format
 msgid "%s: clustering database \"%s\"\n"
 msgstr "%s: reordenando la base de datos «%s»\n"
 
-#: clusterdb.c:273
+#: clusterdb.c:274
 #, c-format
 msgid ""
 "%s clusters all previously clustered tables in a database.\n"
@@ -139,19 +139,19 @@ msgstr ""
 "en una base de datos.\n"
 "\n"
 
-#: clusterdb.c:274 createdb.c:250 createuser.c:344 dropdb.c:157 dropuser.c:163
-#: pg_isready.c:224 reindexdb.c:425 vacuumdb.c:1226
+#: clusterdb.c:275 createdb.c:259 createuser.c:347 dropdb.c:164 dropuser.c:163
+#: pg_isready.c:224 reindexdb.c:753 vacuumdb.c:921
 #, c-format
 msgid "Usage:\n"
 msgstr "Empleo:\n"
 
-#: clusterdb.c:275 reindexdb.c:426 vacuumdb.c:1227
+#: clusterdb.c:276 reindexdb.c:754 vacuumdb.c:922
 #, c-format
 msgid "  %s [OPTION]... [DBNAME]\n"
 msgstr "  %s [OPCIÓN]... [BASE-DE-DATOS]\n"
 
-#: clusterdb.c:276 createdb.c:252 createuser.c:346 dropdb.c:159 dropuser.c:165
-#: pg_isready.c:227 reindexdb.c:427 vacuumdb.c:1228
+#: clusterdb.c:277 createdb.c:261 createuser.c:349 dropdb.c:166 dropuser.c:165
+#: pg_isready.c:227 reindexdb.c:755 vacuumdb.c:923
 #, c-format
 msgid ""
 "\n"
@@ -160,48 +160,48 @@ msgstr ""
 "\n"
 "Opciones:\n"
 
-#: clusterdb.c:277
+#: clusterdb.c:278
 #, c-format
 msgid "  -a, --all                 cluster all databases\n"
 msgstr "  -a, --all                 reordenar todas las bases de datos\n"
 
-#: clusterdb.c:278
+#: clusterdb.c:279
 #, c-format
 msgid "  -d, --dbname=DBNAME       database to cluster\n"
 msgstr "  -d, --dbname=BASE         base de datos a reordenar\n"
 
-#: clusterdb.c:279 createuser.c:350 dropdb.c:160 dropuser.c:166 reindexdb.c:431
+#: clusterdb.c:280 createuser.c:353 dropdb.c:167 dropuser.c:166 reindexdb.c:759
 #, c-format
 msgid "  -e, --echo                show the commands being sent to the server\n"
 msgstr "  -e, --echo                mostrar las órdenes a medida que se ejecutan\n"
 
-#: clusterdb.c:280 reindexdb.c:433
+#: clusterdb.c:281 reindexdb.c:762
 #, c-format
 msgid "  -q, --quiet               don't write any messages\n"
 msgstr "  -q, --quiet               no escribir ningún mensaje\n"
 
-#: clusterdb.c:281
+#: clusterdb.c:282
 #, c-format
 msgid "  -t, --table=TABLE         cluster specific table(s) only\n"
 msgstr "  -t, --table=TABLA         reordenar sólo esta(s) tabla(s)\n"
 
-#: clusterdb.c:282 reindexdb.c:437
+#: clusterdb.c:283 reindexdb.c:766
 #, c-format
 msgid "  -v, --verbose             write a lot of output\n"
 msgstr "  -v, --verbose             desplegar varios mensajes informativos\n"
 
-#: clusterdb.c:283 createuser.c:362 dropdb.c:162 dropuser.c:169 reindexdb.c:438
+#: clusterdb.c:284 createuser.c:365 dropdb.c:170 dropuser.c:169 reindexdb.c:767
 #, c-format
 msgid "  -V, --version             output version information, then exit\n"
 msgstr "  -V, --version             mostrar información de versión y salir\n"
 
-#: clusterdb.c:284 createuser.c:367 dropdb.c:164 dropuser.c:171 reindexdb.c:439
+#: clusterdb.c:285 createuser.c:370 dropdb.c:172 dropuser.c:171 reindexdb.c:768
 #, c-format
 msgid "  -?, --help                show this help, then exit\n"
 msgstr "  -?, --help                mostrar esta ayuda y salir\n"
 
-#: clusterdb.c:285 createdb.c:263 createuser.c:368 dropdb.c:165 dropuser.c:172
-#: pg_isready.c:233 reindexdb.c:440 vacuumdb.c:1248
+#: clusterdb.c:286 createdb.c:272 createuser.c:371 dropdb.c:173 dropuser.c:172
+#: pg_isready.c:233 reindexdb.c:769 vacuumdb.c:944
 #, c-format
 msgid ""
 "\n"
@@ -210,41 +210,41 @@ msgstr ""
 "\n"
 "Opciones de conexión:\n"
 
-#: clusterdb.c:286 createuser.c:369 dropdb.c:166 dropuser.c:173 reindexdb.c:441
-#: vacuumdb.c:1249
+#: clusterdb.c:287 createuser.c:372 dropdb.c:174 dropuser.c:173 reindexdb.c:770
+#: vacuumdb.c:945
 #, c-format
 msgid "  -h, --host=HOSTNAME       database server host or socket directory\n"
 msgstr "  -h, --host=ANFITRIÓN      nombre del servidor o directorio del socket\n"
 
-#: clusterdb.c:287 createuser.c:370 dropdb.c:167 dropuser.c:174 reindexdb.c:442
-#: vacuumdb.c:1250
+#: clusterdb.c:288 createuser.c:373 dropdb.c:175 dropuser.c:174 reindexdb.c:771
+#: vacuumdb.c:946
 #, c-format
 msgid "  -p, --port=PORT           database server port\n"
 msgstr "  -p, --port=PUERTO         puerto del servidor\n"
 
-#: clusterdb.c:288 dropdb.c:168 reindexdb.c:443 vacuumdb.c:1251
+#: clusterdb.c:289 dropdb.c:176 reindexdb.c:772 vacuumdb.c:947
 #, c-format
 msgid "  -U, --username=USERNAME   user name to connect as\n"
 msgstr "  -U, --username=USUARIO    nombre de usuario para la conexión\n"
 
-#: clusterdb.c:289 createuser.c:372 dropdb.c:169 dropuser.c:176 reindexdb.c:444
-#: vacuumdb.c:1252
+#: clusterdb.c:290 createuser.c:375 dropdb.c:177 dropuser.c:176 reindexdb.c:773
+#: vacuumdb.c:948
 #, c-format
 msgid "  -w, --no-password         never prompt for password\n"
 msgstr "  -w, --no-password         nunca pedir contraseña\n"
 
-#: clusterdb.c:290 createuser.c:373 dropdb.c:170 dropuser.c:177 reindexdb.c:445
-#: vacuumdb.c:1253
+#: clusterdb.c:291 createuser.c:376 dropdb.c:178 dropuser.c:177 reindexdb.c:774
+#: vacuumdb.c:949
 #, c-format
 msgid "  -W, --password            force password prompt\n"
 msgstr "  -W, --password            forzar la petición de contraseña\n"
 
-#: clusterdb.c:291 dropdb.c:171 reindexdb.c:446 vacuumdb.c:1254
+#: clusterdb.c:292 dropdb.c:179 reindexdb.c:775 vacuumdb.c:950
 #, c-format
 msgid "  --maintenance-db=DBNAME   alternate maintenance database\n"
 msgstr "  --maintenance-db=BASE     base de datos de mantención alternativa\n"
 
-#: clusterdb.c:292
+#: clusterdb.c:293
 #, c-format
 msgid ""
 "\n"
@@ -253,41 +253,51 @@ msgstr ""
 "\n"
 "Lea la descripción de la orden CLUSTER de SQL para obtener mayores detalles.\n"
 
-#: clusterdb.c:293 createdb.c:271 createuser.c:374 dropdb.c:172 dropuser.c:178
-#: pg_isready.c:238 reindexdb.c:448 vacuumdb.c:1256
+#: clusterdb.c:294 createdb.c:280 createuser.c:377 dropdb.c:180 dropuser.c:178
+#: pg_isready.c:238 reindexdb.c:777 vacuumdb.c:952
 #, c-format
 msgid ""
 "\n"
-"Report bugs to <pgsql-bugs@lists.postgresql.org>.\n"
+"Report bugs to <%s>.\n"
 msgstr ""
-"\n"
-"Reporte errores a <pgsql-bugs@lists.postgresql.org>.\n"
 
-#: common.c:84 common.c:130
+#: clusterdb.c:295 createdb.c:281 createuser.c:378 dropdb.c:181 dropuser.c:179
+#: pg_isready.c:239 reindexdb.c:778 vacuumdb.c:953
+#, c-format
+msgid "%s home page: <%s>\n"
+msgstr ""
+
+#: common.c:79 common.c:125
 msgid "Password: "
 msgstr "Contraseña: "
 
-#: common.c:117
+#: common.c:112
 #, c-format
 msgid "could not connect to database %s: out of memory"
 msgstr "no se pudo conectar a la base de datos %s: memoria agotada"
 
-#: common.c:144
+#: common.c:139
 #, c-format
 msgid "could not connect to database %s: %s"
 msgstr "no se pudo conectar a la base de datos %s: %s"
 
-#: common.c:196 common.c:222
+#: common.c:214 common.c:239
 #, c-format
 msgid "query failed: %s"
 msgstr "la consulta falló: %s"
 
-#: common.c:197 common.c:223
+#: common.c:215 common.c:240
 #, c-format
 msgid "query was: %s"
 msgstr "la consulta era: %s"
 
-#: common.c:339
+#: common.c:312
+#, fuzzy, c-format
+#| msgid "clustering of database \"%s\" failed: %s"
+msgid "processing of database \"%s\" failed: %s"
+msgstr "falló el reordenamiento de la base de datos «%s»: %s"
+
+#: common.c:406
 #, c-format
 msgid "query returned %d row instead of one: %s"
 msgid_plural "query returned %d rows instead of one: %s"
@@ -295,37 +305,27 @@ msgstr[0] "la consulta retornó %d fila en lugar de una: %s"
 msgstr[1] "la consulta retornó %d filas en lugar de una: %s"
 
 #. translator: abbreviation for "yes"
-#: common.c:364
+#: common.c:430
 msgid "y"
 msgstr "s"
 
 #. translator: abbreviation for "no"
-#: common.c:366
+#: common.c:432
 msgid "n"
 msgstr "n"
 
 #. translator: This is a question followed by the translated options for
 #. "yes" and "no".
-#: common.c:376
+#: common.c:442
 #, c-format
 msgid "%s (%s/%s) "
 msgstr "%s (%s/%s) "
 
-#: common.c:390
+#: common.c:456
 #, c-format
 msgid "Please answer \"%s\" or \"%s\".\n"
 msgstr "Por favor conteste «%s» o «%s».\n"
 
-#: common.c:469 common.c:506
-#, c-format
-msgid "Cancel request sent\n"
-msgstr "Petición de cancelación enviada\n"
-
-#: common.c:472 common.c:510
-#, c-format
-msgid "Could not send cancel request: %s"
-msgstr "No se pudo enviar el paquete de cancelación: %s"
-
 #: createdb.c:148
 #, c-format
 msgid "only one of --locale and --lc-ctype can be specified"
@@ -341,17 +341,17 @@ msgstr "sólo uno de --locale y --lc-collate puede ser especificado"
 msgid "\"%s\" is not a valid encoding name"
 msgstr "«%s» no es un nombre válido de codificación"
 
-#: createdb.c:212
+#: createdb.c:221
 #, c-format
 msgid "database creation failed: %s"
 msgstr "falló la creación de la base de datos: %s"
 
-#: createdb.c:231
+#: createdb.c:240
 #, c-format
 msgid "comment creation failed (database was created): %s"
 msgstr "falló la creación del comentario (la base de datos fue creada): %s"
 
-#: createdb.c:249
+#: createdb.c:258
 #, c-format
 msgid ""
 "%s creates a PostgreSQL database.\n"
@@ -360,92 +360,92 @@ msgstr ""
 "%s crea una base de datos PostgreSQL.\n"
 "\n"
 
-#: createdb.c:251
+#: createdb.c:260
 #, c-format
 msgid "  %s [OPTION]... [DBNAME] [DESCRIPTION]\n"
 msgstr "  %s [OPCIÓN]... [NOMBRE] [DESCRIPCIÓN]\n"
 
-#: createdb.c:253
+#: createdb.c:262
 #, c-format
 msgid "  -D, --tablespace=TABLESPACE  default tablespace for the database\n"
 msgstr "  -D, --tablespace=TBLSPC   tablespace por omisión de la base de datos\n"
 
-#: createdb.c:254
+#: createdb.c:263
 #, c-format
 msgid "  -e, --echo                   show the commands being sent to the server\n"
 msgstr "  -e, --echo                mostrar las órdenes enviadas al servidor\n"
 
-#: createdb.c:255
+#: createdb.c:264
 #, c-format
 msgid "  -E, --encoding=ENCODING      encoding for the database\n"
 msgstr "  -E, --encoding=CODIF      codificación para la base de datos\n"
 
-#: createdb.c:256
+#: createdb.c:265
 #, c-format
 msgid "  -l, --locale=LOCALE          locale settings for the database\n"
 msgstr "  -l, --locale=LOCALE       configuración regional para la base de datos\n"
 
-#: createdb.c:257
+#: createdb.c:266
 #, c-format
 msgid "      --lc-collate=LOCALE      LC_COLLATE setting for the database\n"
 msgstr "      --lc-collate=LOCALE   configuración LC_COLLATE para la base de datos\n"
 
-#: createdb.c:258
+#: createdb.c:267
 #, c-format
 msgid "      --lc-ctype=LOCALE        LC_CTYPE setting for the database\n"
 msgstr "      --lc-ctype=LOCALE     configuración LC_CTYPE para la base de datos\n"
 
-#: createdb.c:259
+#: createdb.c:268
 #, c-format
 msgid "  -O, --owner=OWNER            database user to own the new database\n"
 msgstr "  -O, --owner=DUEÑO         usuario que será dueño de la base de datos\n"
 
-#: createdb.c:260
+#: createdb.c:269
 #, c-format
 msgid "  -T, --template=TEMPLATE      template database to copy\n"
 msgstr "  -T, --template=PATRÓN     base de datos patrón a copiar\n"
 
-#: createdb.c:261
+#: createdb.c:270
 #, c-format
 msgid "  -V, --version                output version information, then exit\n"
 msgstr "  -V, --version             mostrar información de versión y salir\n"
 
-#: createdb.c:262
+#: createdb.c:271
 #, c-format
 msgid "  -?, --help                   show this help, then exit\n"
 msgstr "  -?, --help                mostrar esta ayuda y salir\n"
 
-#: createdb.c:264
+#: createdb.c:273
 #, c-format
 msgid "  -h, --host=HOSTNAME          database server host or socket directory\n"
 msgstr "  -h, --host=ANFITRIÓN      nombre del servidor o directorio del socket\n"
 
-#: createdb.c:265
+#: createdb.c:274
 #, c-format
 msgid "  -p, --port=PORT              database server port\n"
 msgstr "  -p, --port=PUERTO         puerto del servidor\n"
 
-#: createdb.c:266
+#: createdb.c:275
 #, c-format
 msgid "  -U, --username=USERNAME      user name to connect as\n"
 msgstr "  -U, --username=USUARIO    nombre de usuario para la conexión\n"
 
-#: createdb.c:267
+#: createdb.c:276
 #, c-format
 msgid "  -w, --no-password            never prompt for password\n"
 msgstr "  -w, --no-password         nunca pedir contraseña\n"
 
-#: createdb.c:268
+#: createdb.c:277
 #, c-format
 msgid "  -W, --password               force password prompt\n"
 msgstr "  -W, --password            forzar la petición de contraseña\n"
 
-#: createdb.c:269
+#: createdb.c:278
 #, c-format
 msgid "  --maintenance-db=DBNAME      alternate maintenance database\n"
 msgstr "  --maintenance-db=BASE     base de datos de mantención alternativa\n"
 
-#: createdb.c:270
+#: createdb.c:279
 #, c-format
 msgid ""
 "\n"
@@ -455,46 +455,52 @@ msgstr ""
 "Si no se especifica, se creará una base de datos con el mismo nombre que\n"
 "el usuario actual.\n"
 
-#: createuser.c:191
+#: createuser.c:150
+#, fuzzy, c-format
+#| msgid "invalid connection limit: %d"
+msgid "invalid value for --connection-limit: %s"
+msgstr "límite de conexión no válido: %d"
+
+#: createuser.c:194
 msgid "Enter name of role to add: "
 msgstr "Ingrese el nombre del rol a agregar: "
 
-#: createuser.c:208
+#: createuser.c:211
 msgid "Enter password for new role: "
 msgstr "Ingrese la contraseña para el nuevo rol: "
 
-#: createuser.c:210
+#: createuser.c:213
 msgid "Enter it again: "
 msgstr "Ingrésela nuevamente: "
 
-#: createuser.c:213
+#: createuser.c:216
 #, c-format
 msgid "Passwords didn't match.\n"
 msgstr "Las contraseñas no coinciden.\n"
 
-#: createuser.c:221
+#: createuser.c:224
 msgid "Shall the new role be a superuser?"
 msgstr "¿Será el nuevo rol un superusuario?"
 
-#: createuser.c:236
+#: createuser.c:239
 msgid "Shall the new role be allowed to create databases?"
 msgstr "¿Debe permitírsele al rol la creación de bases de datos?"
 
-#: createuser.c:244
+#: createuser.c:247
 msgid "Shall the new role be allowed to create more new roles?"
 msgstr "¿Debe permitírsele al rol la creación de otros roles?"
 
-#: createuser.c:274
+#: createuser.c:277
 #, c-format
 msgid "password encryption failed: %s"
 msgstr "el cifrado de la contraseña falló: %s"
 
-#: createuser.c:329
+#: createuser.c:332
 #, c-format
 msgid "creation of new role failed: %s"
 msgstr "falló la creación del nuevo rol: %s"
 
-#: createuser.c:343
+#: createuser.c:346
 #, c-format
 msgid ""
 "%s creates a new PostgreSQL role.\n"
@@ -503,34 +509,34 @@ msgstr ""
 "%s crea un nuevo rol de PostgreSQL.\n"
 "\n"
 
-#: createuser.c:345 dropuser.c:164
+#: createuser.c:348 dropuser.c:164
 #, c-format
 msgid "  %s [OPTION]... [ROLENAME]\n"
 msgstr "  %s [OPCIÓN]... [ROL]\n"
 
-#: createuser.c:347
+#: createuser.c:350
 #, c-format
 msgid "  -c, --connection-limit=N  connection limit for role (default: no limit)\n"
 msgstr ""
 "  -c, --connection-limit=N  límite de conexiones para el rol\n"
 "                            (predeterminado: sin límite)\n"
 
-#: createuser.c:348
+#: createuser.c:351
 #, c-format
 msgid "  -d, --createdb            role can create new databases\n"
 msgstr "  -d, --createdb            el rol podrá crear bases de datos\n"
 
-#: createuser.c:349
+#: createuser.c:352
 #, c-format
 msgid "  -D, --no-createdb         role cannot create databases (default)\n"
 msgstr "  -D, --no-createdb         el rol no podrá crear bases de datos (predeterm.)\n"
 
-#: createuser.c:351
+#: createuser.c:354
 #, c-format
 msgid "  -g, --role=ROLE           new role will be a member of this role\n"
 msgstr "  -g, --role=ROL            el nuevo rol será un miembro de este rol\n"
 
-#: createuser.c:352
+#: createuser.c:355
 #, c-format
 msgid ""
 "  -i, --inherit             role inherits privileges of roles it is a\n"
@@ -539,47 +545,47 @@ msgstr ""
 "  -i, --inherit             el rol heredará los privilegios de los roles de\n"
 "                            los cuales es miembro (predeterminado)\n"
 
-#: createuser.c:354
+#: createuser.c:357
 #, c-format
 msgid "  -I, --no-inherit          role does not inherit privileges\n"
 msgstr "  -I, --no-inherit          rol no heredará privilegios\n"
 
-#: createuser.c:355
+#: createuser.c:358
 #, c-format
 msgid "  -l, --login               role can login (default)\n"
 msgstr "  -l, --login               el rol podrá conectarse (predeterminado)\n"
 
-#: createuser.c:356
+#: createuser.c:359
 #, c-format
 msgid "  -L, --no-login            role cannot login\n"
 msgstr "  -L, --no-login            el rol no podrá conectarse\n"
 
-#: createuser.c:357
+#: createuser.c:360
 #, c-format
 msgid "  -P, --pwprompt            assign a password to new role\n"
 msgstr "  -P, --pwprompt            asignar una contraseña al nuevo rol\n"
 
-#: createuser.c:358
+#: createuser.c:361
 #, c-format
 msgid "  -r, --createrole          role can create new roles\n"
 msgstr "  -r, --createrole          el rol podrá crear otros roles\n"
 
-#: createuser.c:359
+#: createuser.c:362
 #, c-format
 msgid "  -R, --no-createrole       role cannot create roles (default)\n"
 msgstr "  -R, --no-createrole       el rol no podrá crear otros roles (predeterminado)\n"
 
-#: createuser.c:360
+#: createuser.c:363
 #, c-format
 msgid "  -s, --superuser           role will be superuser\n"
 msgstr "  -s, --superuser           el rol será un superusuario\n"
 
-#: createuser.c:361
+#: createuser.c:364
 #, c-format
 msgid "  -S, --no-superuser        role will not be superuser (default)\n"
 msgstr "  -S, --no-superuser        el rol no será un superusuario (predeterminado)\n"
 
-#: createuser.c:363
+#: createuser.c:366
 #, c-format
 msgid ""
 "  --interactive             prompt for missing role name and attributes rather\n"
@@ -588,43 +594,43 @@ msgstr ""
 "  --interactive             preguntar los nombres y atributos de rol faltantes\n"
 "                            en lugar de asumir los valores por omisión\n"
 
-#: createuser.c:365
+#: createuser.c:368
 #, c-format
 msgid "  --replication             role can initiate replication\n"
 msgstr "  --replication             el rol podrá iniciar replicación\n"
 
-#: createuser.c:366
+#: createuser.c:369
 #, c-format
 msgid "  --no-replication          role cannot initiate replication\n"
 msgstr "  --no-replication          el rol no podrá iniciar replicación\n"
 
-#: createuser.c:371
+#: createuser.c:374
 #, c-format
 msgid "  -U, --username=USERNAME   user name to connect as (not the one to create)\n"
 msgstr ""
 "  -U, --username=NOMBRE     nombre de usuario con el cual conectarse\n"
 "                            (no el usuario a crear)\n"
 
-#: dropdb.c:104
+#: dropdb.c:109
 #, c-format
 msgid "missing required argument database name"
 msgstr "falta el nombre de base de datos requerido"
 
-#: dropdb.c:119
+#: dropdb.c:124
 #, c-format
 msgid "Database \"%s\" will be permanently removed.\n"
 msgstr "La base de datos «%s» será eliminada permanentemente.\n"
 
-#: dropdb.c:120 dropuser.c:130
+#: dropdb.c:125 dropuser.c:130
 msgid "Are you sure?"
 msgstr "¿Está seguro?"
 
-#: dropdb.c:142
+#: dropdb.c:149
 #, c-format
 msgid "database removal failed: %s"
 msgstr "falló la eliminación de la base de datos: %s"
 
-#: dropdb.c:156
+#: dropdb.c:163
 #, c-format
 msgid ""
 "%s removes a PostgreSQL database.\n"
@@ -633,17 +639,23 @@ msgstr ""
 "%s elimina una base de datos de PostgreSQL.\n"
 "\n"
 
-#: dropdb.c:158
+#: dropdb.c:165
 #, c-format
 msgid "  %s [OPTION]... DBNAME\n"
 msgstr "  %s [OPCIÓN]... BASE-DE-DATOS\n"
 
-#: dropdb.c:161
+#: dropdb.c:168
+#, fuzzy, c-format
+#| msgid "  -f, --force                    force update to be done\n"
+msgid "  -f, --force               try to terminate other connections before dropping\n"
+msgstr "  -f, --force              fuerza que la actualización sea hecha\n"
+
+#: dropdb.c:169
 #, c-format
 msgid "  -i, --interactive         prompt before deleting anything\n"
 msgstr "  -i, --interactive         preguntar antes de eliminar\n"
 
-#: dropdb.c:163
+#: dropdb.c:171
 #, c-format
 msgid "  --if-exists               don't report error if database doesn't exist\n"
 msgstr "  --if-exists               no reportar error si la base de datos no existe\n"
@@ -788,82 +800,106 @@ msgstr ""
 msgid "  -U, --username=USERNAME  user name to connect as\n"
 msgstr "  -U, --username=USUARIO   nombre de usuario para la conexión\n"
 
-#: reindexdb.c:168
+#: reindexdb.c:154 vacuumdb.c:186
+#, c-format
+msgid "number of parallel jobs must be at least 1"
+msgstr "número de trabajos en paralelo debe ser al menos 1"
+
+#: reindexdb.c:197
 #, c-format
 msgid "cannot reindex all databases and a specific one at the same time"
 msgstr "no se pueden reindexar todas las bases de datos y una de ellas en particular simultáneamente"
 
-#: reindexdb.c:173
+#: reindexdb.c:202
 #, c-format
 msgid "cannot reindex all databases and system catalogs at the same time"
 msgstr "no se pueden reindexar todas las bases de datos y los catálogos del sistema simultáneamente"
 
-#: reindexdb.c:178
+#: reindexdb.c:207
 #, c-format
 msgid "cannot reindex specific schema(s) in all databases"
 msgstr "no es posible reindexar esquemas específicos en todas las bases de datos"
 
-#: reindexdb.c:183
+#: reindexdb.c:212
 #, c-format
 msgid "cannot reindex specific table(s) in all databases"
 msgstr "no es posible reindexar tablas específicas en todas las bases de datos"
 
-#: reindexdb.c:188
+#: reindexdb.c:217
 #, c-format
 msgid "cannot reindex specific index(es) in all databases"
 msgstr "no es posible reindexar índices específicos en todas las bases de datos"
 
-#: reindexdb.c:199
+#: reindexdb.c:229
 #, c-format
 msgid "cannot reindex specific schema(s) and system catalogs at the same time"
 msgstr "no es posible reindexar esquemas específicos y los catálogos del sistema simultáneamente"
 
-#: reindexdb.c:204
+#: reindexdb.c:234
 #, c-format
 msgid "cannot reindex specific table(s) and system catalogs at the same time"
 msgstr "no es posible reindexar tablas específicas y los catálogos del sistema simultáneamente"
 
-#: reindexdb.c:209
+#: reindexdb.c:239
 #, c-format
 msgid "cannot reindex specific index(es) and system catalogs at the same time"
 msgstr "no es posible reindexar índices específicos y los catálogos del sistema simultáneamente"
 
-#: reindexdb.c:298 vacuumdb.c:410 vacuumdb.c:418 vacuumdb.c:425 vacuumdb.c:432
+#: reindexdb.c:245
+#, fuzzy, c-format
+#| msgid "cannot reindex system catalogs concurrently"
+msgid "cannot use multiple jobs to reindex system catalogs"
+msgstr "no se pueden reindexar catálogos de sistema concurrentemente"
+
+#: reindexdb.c:272
+#, fuzzy, c-format
+#| msgid "cannot insert multiple commands into a prepared statement"
+msgid "cannot use multiple jobs to reindex indexes"
+msgstr "no se pueden insertar múltiples órdenes en una sentencia preparada"
+
+#: reindexdb.c:337 vacuumdb.c:410 vacuumdb.c:418 vacuumdb.c:425 vacuumdb.c:432
+#: vacuumdb.c:439
 #, c-format
 msgid "cannot use the \"%s\" option on server versions older than PostgreSQL %s"
 msgstr "no se puede usar la opción «%s» cuando con versiones más antiguas que PostgreSQL %s"
 
-#: reindexdb.c:326
+#: reindexdb.c:377
 #, c-format
-msgid "reindexing of table \"%s\" in database \"%s\" failed: %s"
-msgstr "falló la reindexación de la tabla «%s» en la base de datos «%s»: %s"
+msgid "cannot reindex system catalogs concurrently, skipping all"
+msgstr "no se puede reindexar un catálogo de sistema concurrentemente, omitiéndolos todos"
 
-#: reindexdb.c:329
-#, c-format
-msgid "reindexing of index \"%s\" in database \"%s\" failed: %s"
-msgstr "falló la reindexación del índice «%s» en la base de datos «%s»: %s"
-
-#: reindexdb.c:332
-#, c-format
-msgid "reindexing of schema \"%s\" in database \"%s\" failed: %s"
-msgstr "falló la reindexación del esquema «%s» en la base de datos «%s»: %s"
-
-#: reindexdb.c:335
+#: reindexdb.c:558
 #, c-format
 msgid "reindexing of database \"%s\" failed: %s"
 msgstr "falló la reindexación de la base de datos «%s»: %s"
 
-#: reindexdb.c:369
+#: reindexdb.c:562
+#, c-format
+msgid "reindexing of index \"%s\" in database \"%s\" failed: %s"
+msgstr "falló la reindexación del índice «%s» en la base de datos «%s»: %s"
+
+#: reindexdb.c:566
+#, c-format
+msgid "reindexing of schema \"%s\" in database \"%s\" failed: %s"
+msgstr "falló la reindexación del esquema «%s» en la base de datos «%s»: %s"
+
+#: reindexdb.c:570
+#, fuzzy, c-format
+#| msgid "reindexing of schema \"%s\" in database \"%s\" failed: %s"
+msgid "reindexing of system catalogs in database \"%s\" failed: %s"
+msgstr "falló la reindexación del esquema «%s» en la base de datos «%s»: %s"
+
+#: reindexdb.c:574
+#, c-format
+msgid "reindexing of table \"%s\" in database \"%s\" failed: %s"
+msgstr "falló la reindexación de la tabla «%s» en la base de datos «%s»: %s"
+
+#: reindexdb.c:731
 #, c-format
 msgid "%s: reindexing database \"%s\"\n"
 msgstr "%s: reindexando la base de datos «%s»\n"
 
-#: reindexdb.c:412
-#, c-format
-msgid "reindexing of system catalogs failed: %s"
-msgstr "falló la reindexación de los catálogos del sistema: %s"
-
-#: reindexdb.c:424
+#: reindexdb.c:752
 #, c-format
 msgid ""
 "%s reindexes a PostgreSQL database.\n"
@@ -872,42 +908,48 @@ msgstr ""
 "%s reindexa una base de datos PostgreSQL.\n"
 "\n"
 
-#: reindexdb.c:428
+#: reindexdb.c:756
 #, c-format
 msgid "  -a, --all                 reindex all databases\n"
 msgstr "  -a, --all                 reindexar todas las bases de datos\n"
 
-#: reindexdb.c:429
+#: reindexdb.c:757
 #, c-format
 msgid "      --concurrently        reindex concurrently\n"
 msgstr "      --concurrently        reindexar en modo concurrente\n"
 
-#: reindexdb.c:430
+#: reindexdb.c:758
 #, c-format
 msgid "  -d, --dbname=DBNAME       database to reindex\n"
 msgstr "  -d, --dbname=DBNAME       base de datos a reindexar\n"
 
-#: reindexdb.c:432
+#: reindexdb.c:760
 #, c-format
 msgid "  -i, --index=INDEX         recreate specific index(es) only\n"
 msgstr "  -i, --index=INDEX         recrear sólo este o estos índice(s)\n"
 
-#: reindexdb.c:434
+#: reindexdb.c:761
+#, fuzzy, c-format
+#| msgid "  -j, --jobs=NUM                  use this many concurrent connections to vacuum\n"
+msgid "  -j, --jobs=NUM            use this many concurrent connections to reindex\n"
+msgstr "  -j, --jobs=NUM            usar esta cantidad de conexiones concurrentes\n"
+
+#: reindexdb.c:763
 #, c-format
 msgid "  -s, --system              reindex system catalogs\n"
 msgstr "  -s, --system              reindexa los catálogos del sistema\n"
 
-#: reindexdb.c:435
+#: reindexdb.c:764
 #, c-format
 msgid "  -S, --schema=SCHEMA       reindex specific schema(s) only\n"
 msgstr "  -S, --schema=ESQUEMA      reindexar sólo este o estos esquemas\n"
 
-#: reindexdb.c:436
+#: reindexdb.c:765
 #, c-format
 msgid "  -t, --table=TABLE         reindex specific table(s) only\n"
 msgstr "  -t, --table=TABLE         reindexar sólo esta(s) tabla(s)\n"
 
-#: reindexdb.c:447
+#: reindexdb.c:776
 #, c-format
 msgid ""
 "\n"
@@ -916,26 +958,33 @@ msgstr ""
 "\n"
 "Lea la descripción de la orden REINDEX de SQL para obtener mayores detalles.\n"
 
-#: vacuumdb.c:211
-#, c-format
-msgid "number of parallel jobs must be at least 1"
-msgstr "número de trabajos en paralelo debe ser al menos 1"
+#: vacuumdb.c:194
+#, fuzzy, c-format
+#| msgid "remainder for hash partition must be a non-negative integer"
+msgid "parallel vacuum degree must be a non-negative integer"
+msgstr "remanente en partición hash debe ser un entero no negativo"
 
-#: vacuumdb.c:231
+#: vacuumdb.c:214
 #, c-format
 msgid "minimum transaction ID age must be at least 1"
 msgstr "edad mínima del ID de transacción debe ser al menos 1"
 
-#: vacuumdb.c:239
+#: vacuumdb.c:222
 #, c-format
 msgid "minimum multixact ID age must be at least 1"
 msgstr "edad mínima del ID de multixact debe ser al menos 1"
 
-#: vacuumdb.c:271 vacuumdb.c:277 vacuumdb.c:283
+#: vacuumdb.c:254 vacuumdb.c:260 vacuumdb.c:266 vacuumdb.c:278
 #, c-format
 msgid "cannot use the \"%s\" option when performing only analyze"
 msgstr "no se puede usar la opción «%s» cuando se está sólo actualizando estadísticas"
 
+#: vacuumdb.c:284
+#, fuzzy, c-format
+#| msgid "cannot use the \"%s\" option when performing only analyze"
+msgid "cannot use the \"%s\" option when performing full"
+msgstr "no se puede usar la opción «%s» cuando se está sólo actualizando estadísticas"
+
 #: vacuumdb.c:300
 #, c-format
 msgid "cannot vacuum all databases and a specific one at the same time"
@@ -958,32 +1007,27 @@ msgstr "Generando estadísticas medias para el optimizador (tamaño = 10)"
 msgid "Generating default (full) optimizer statistics"
 msgstr "Generando estadísticas predeterminadas (completas) para el optimizador"
 
-#: vacuumdb.c:440
+#: vacuumdb.c:447
 #, c-format
 msgid "%s: processing database \"%s\": %s\n"
 msgstr "%s: procesando la base de datos «%s»: %s\n"
 
-#: vacuumdb.c:443
+#: vacuumdb.c:450
 #, c-format
 msgid "%s: vacuuming database \"%s\"\n"
 msgstr "%s: limpiando la base de datos «%s»\n"
 
-#: vacuumdb.c:642
-#, c-format
-msgid "too many jobs for this platform -- try %d"
-msgstr "demasiados trabajos para esta plataforma -- pruebe %d"
-
-#: vacuumdb.c:952
+#: vacuumdb.c:909
 #, c-format
 msgid "vacuuming of table \"%s\" in database \"%s\" failed: %s"
 msgstr "falló la limpieza de la tabla «%s» en la base de datos «%s»: %s"
 
-#: vacuumdb.c:955 vacuumdb.c:1090
+#: vacuumdb.c:912
 #, c-format
 msgid "vacuuming of database \"%s\" failed: %s"
 msgstr "falló la limpieza de la base de datos «%s»: %s"
 
-#: vacuumdb.c:1225
+#: vacuumdb.c:920
 #, c-format
 msgid ""
 "%s cleans and analyzes a PostgreSQL database.\n"
@@ -992,91 +1036,96 @@ msgstr ""
 "%s limpia (VACUUM) y analiza una base de datos PostgreSQL.\n"
 "\n"
 
-#: vacuumdb.c:1229
+#: vacuumdb.c:924
 #, c-format
 msgid "  -a, --all                       vacuum all databases\n"
 msgstr "  -a, --all                 limpia todas las bases de datos\n"
 
-#: vacuumdb.c:1230
+#: vacuumdb.c:925
 #, c-format
 msgid "  -d, --dbname=DBNAME             database to vacuum\n"
 msgstr "  -d, --dbname=BASE         base de datos a limpiar\n"
 
-#: vacuumdb.c:1231
+#: vacuumdb.c:926
 #, c-format
 msgid "      --disable-page-skipping     disable all page-skipping behavior\n"
 msgstr "      --disable-page-skipping     desactiva todo comportamiento de saltar páginas\n"
 
-#: vacuumdb.c:1232
+#: vacuumdb.c:927
 #, c-format
 msgid "  -e, --echo                      show the commands being sent to the server\n"
 msgstr "  -e, --echo                mostrar las órdenes enviadas al servidor\n"
 
-#: vacuumdb.c:1233
+#: vacuumdb.c:928
 #, c-format
 msgid "  -f, --full                      do full vacuuming\n"
 msgstr "  -f, --full                usar «vacuum full»\n"
 
-#: vacuumdb.c:1234
+#: vacuumdb.c:929
 #, c-format
 msgid "  -F, --freeze                    freeze row transaction information\n"
 msgstr "  -F, --freeze              usar «vacuum freeze»\n"
 
-#: vacuumdb.c:1235
+#: vacuumdb.c:930
 #, c-format
 msgid "  -j, --jobs=NUM                  use this many concurrent connections to vacuum\n"
 msgstr "  -j, --jobs=NUM            usar esta cantidad de conexiones concurrentes\n"
 
-#: vacuumdb.c:1236
+#: vacuumdb.c:931
 #, c-format
 msgid "      --min-mxid-age=MXID_AGE     minimum multixact ID age of tables to vacuum\n"
 msgstr "      --min-mxid-age=EDAD_MXID    edad de multixact ID mínima de tablas a limpiar\n"
 
-#: vacuumdb.c:1237
+#: vacuumdb.c:932
 #, c-format
 msgid "      --min-xid-age=XID_AGE       minimum transaction ID age of tables to vacuum\n"
 msgstr "      --min-xid-age=EDAD_XID      edad de ID de transacción mínima de tablas a limpiar\n"
 
-#: vacuumdb.c:1238
+#: vacuumdb.c:933
+#, c-format
+msgid "  -P, --parallel=PARALLEL_DEGREE  use this many background workers for vacuum, if available\n"
+msgstr ""
+
+#: vacuumdb.c:934
 #, c-format
 msgid "  -q, --quiet                     don't write any messages\n"
 msgstr "  -q, --quiet               no desplegar mensajes\n"
 
-#: vacuumdb.c:1239
+#: vacuumdb.c:935
 #, c-format
 msgid "      --skip-locked               skip relations that cannot be immediately locked\n"
 msgstr "      --skip-locked               ignorar relaciones que no pueden bloquearse inmediatamente\n"
 
-#: vacuumdb.c:1240
+#: vacuumdb.c:936
 #, c-format
 msgid "  -t, --table='TABLE[(COLUMNS)]'  vacuum specific table(s) only\n"
 msgstr ""
 "  -t, --table='TABLA[(COLUMNAS)]'\n"
 "                            limpiar sólo esta(s) tabla(s)\n"
 
-#: vacuumdb.c:1241
+#: vacuumdb.c:937
 #, c-format
 msgid "  -v, --verbose                   write a lot of output\n"
 msgstr "  -v, --verbose             desplegar varios mensajes informativos\n"
 
-#: vacuumdb.c:1242
+#: vacuumdb.c:938
 #, c-format
 msgid "  -V, --version                   output version information, then exit\n"
 msgstr "  -V, --version             mostrar información de versión y salir\n"
 
-#: vacuumdb.c:1243
+#: vacuumdb.c:939
 #, c-format
 msgid "  -z, --analyze                   update optimizer statistics\n"
 msgstr "  -z, --analyze             actualizar las estadísticas del optimizador\n"
 
-#: vacuumdb.c:1244
+#: vacuumdb.c:940
 #, c-format
 msgid "  -Z, --analyze-only              only update optimizer statistics; no vacuum\n"
 msgstr ""
 "  -Z, --analyze-only        sólo actualizar las estadísticas del optimizador;\n"
 "                            no hacer vacuum\n"
 
-#: vacuumdb.c:1245
+#: vacuumdb.c:941
 #, c-format
 msgid ""
 "      --analyze-in-stages         only update optimizer statistics, in multiple\n"
@@ -1086,12 +1135,12 @@ msgstr ""
 "                            en múltiples etapas para resultados más rápidos;\n"
 "                            no hacer vacuum\n"
 
-#: vacuumdb.c:1247
+#: vacuumdb.c:943
 #, c-format
 msgid "  -?, --help                      show this help, then exit\n"
 msgstr "  -?, --help                mostrar esta ayuda y salir\n"
 
-#: vacuumdb.c:1255
+#: vacuumdb.c:951
 #, c-format
 msgid ""
 "\n"
@@ -1100,5 +1149,21 @@ msgstr ""
 "\n"
 "Lea la descripción de la orden VACUUM de SQL para obtener mayores detalles.\n"
 
-#~ msgid "too many parallel jobs requested (maximum: %d)"
-#~ msgstr "demasiados trabajos paralelos solicitados (máximo: %d)"
+#~ msgid ""
+#~ "\n"
+#~ "Report bugs to <pgsql-bugs@lists.postgresql.org>.\n"
+#~ msgstr ""
+#~ "\n"
+#~ "Reporte errores a <pgsql-bugs@lists.postgresql.org>.\n"
+
+#~ msgid "Cancel request sent\n"
+#~ msgstr "Petición de cancelación enviada\n"
+
+#~ msgid "Could not send cancel request: %s"
+#~ msgstr "No se pudo enviar el paquete de cancelación: %s"
+
+#~ msgid "reindexing of system catalogs failed: %s"
+#~ msgstr "falló la reindexación de los catálogos del sistema: %s"
+
+#~ msgid "too many jobs for this platform -- try %d"
+#~ msgstr "demasiados trabajos para esta plataforma -- pruebe %d"
diff --git a/src/interfaces/ecpg/ecpglib/po/es.po b/src/interfaces/ecpg/ecpglib/po/es.po
index 16b786f4e2d..3496ef691c2 100644
--- a/src/interfaces/ecpg/ecpglib/po/es.po
+++ b/src/interfaces/ecpg/ecpglib/po/es.po
@@ -9,7 +9,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ecpglib (PostgreSQL) 12\n"
 "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n"
-"POT-Creation-Date: 2019-09-29 23:38+0000\n"
+"POT-Creation-Date: 2020-05-17 02:39+0000\n"
 "PO-Revision-Date: 2019-06-06 17:20-0400\n"
 "Last-Translator: Emanuel Calvo Franco <postgres-arg@gmail.com>\n"
 "Language-Team: PgSQL-es-Ayuda <pgsql-es-ayuda@lists.postgresql.org>\n"
@@ -22,11 +22,11 @@ msgstr ""
 msgid "empty message text"
 msgstr "mensaje de texto vacío"
 
-#: connect.c:401 connect.c:430 connect.c:638
+#: connect.c:401 connect.c:430 connect.c:653
 msgid "<DEFAULT>"
 msgstr "<POR OMISIÓN>"
 
-#: descriptor.c:876 misc.c:120
+#: descriptor.c:871 misc.c:119
 msgid "NULL"
 msgstr "NULL"
 
@@ -195,9 +195,6 @@ msgstr "se ha perdido la conexión al servidor"
 msgid "SQL error: %s\n"
 msgstr "error SQL: %s\n"
 
-#: execute.c:2187 execute.c:2194
+#: execute.c:2196 execute.c:2203
 msgid "<empty>"
 msgstr "<vacío>"
-
-#~ msgid "The cursor is invalid on line %d"
-#~ msgstr "el cursor no es válido en línea %d"
diff --git a/src/interfaces/ecpg/preproc/po/de.po b/src/interfaces/ecpg/preproc/po/de.po
index 8269f156298..411dfc8d89b 100644
--- a/src/interfaces/ecpg/preproc/po/de.po
+++ b/src/interfaces/ecpg/preproc/po/de.po
@@ -9,8 +9,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: PostgreSQL 13\n"
 "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n"
-"POT-Creation-Date: 2020-04-09 07:10+0000\n"
-"PO-Revision-Date: 2020-04-09 11:42+0200\n"
+"POT-Creation-Date: 2020-05-18 03:39+0000\n"
+"PO-Revision-Date: 2020-05-18 08:45+0200\n"
 "Last-Translator: Peter Eisentraut <peter@eisentraut.org>\n"
 "Language-Team: German <pgsql-translators@postgresql.org>\n"
 "Language: de\n"
@@ -172,7 +172,9 @@ msgstr ""
 msgid ""
 "\n"
 "Report bugs to <%s>.\n"
-msgstr "\nBerichten Sie Fehler an <%s>.\n"
+msgstr ""
+"\n"
+"Berichten Sie Fehler an <%s>.\n"
 
 #: ecpg.c:62
 #, c-format
@@ -252,7 +254,7 @@ msgstr "ungültige Bitkettenkonstante"
 #: pgc.l:607
 #, c-format
 msgid "unhandled previous state in xqs\n"
-msgstr ""
+msgstr "unbehandelter vorheriger Zustand in xqs\n"
 
 #: pgc.l:636 pgc.l:738
 #, c-format
@@ -368,185 +370,185 @@ msgstr "Initialisierungswert nicht erlaubt in Typdefinition"
 msgid "type name \"string\" is reserved in Informix mode"
 msgstr "Typname »string« ist im Informix-Modus reserviert"
 
-#: preproc.y:547 preproc.y:15954
+#: preproc.y:547 preproc.y:15966
 #, c-format
 msgid "type \"%s\" is already defined"
 msgstr "Typ »%s« ist bereits definiert"
 
-#: preproc.y:572 preproc.y:16597 preproc.y:16922 variable.c:621
+#: preproc.y:572 preproc.y:16609 preproc.y:16934 variable.c:621
 #, c-format
 msgid "multidimensional arrays for simple data types are not supported"
 msgstr "mehrdimensionale Arrays für einfache Datentypen werden nicht unterstützt"
 
-#: preproc.y:1701
+#: preproc.y:1702
 #, c-format
 msgid "AT option not allowed in CLOSE DATABASE statement"
 msgstr "AT-Option ist nicht erlaubt im Befehl CLOSE DATABASE"
 
-#: preproc.y:1949
+#: preproc.y:1950
 #, c-format
 msgid "AT option not allowed in CONNECT statement"
 msgstr "AT-Option ist nicht erlaubt im Befehl CONNECT"
 
-#: preproc.y:1983
+#: preproc.y:1984
 #, c-format
 msgid "AT option not allowed in DISCONNECT statement"
 msgstr "AT-Option ist nicht erlaubt im Befehl DISCONNECT"
 
-#: preproc.y:2038
+#: preproc.y:2039
 #, c-format
 msgid "AT option not allowed in SET CONNECTION statement"
 msgstr "AT-Option ist nicht erlaubt im Befehl SET CONNECTION"
 
-#: preproc.y:2060
+#: preproc.y:2061
 #, c-format
 msgid "AT option not allowed in TYPE statement"
 msgstr "AT-Option ist nicht erlaubt im TYPE-Befehl"
 
-#: preproc.y:2069
+#: preproc.y:2070
 #, c-format
 msgid "AT option not allowed in VAR statement"
 msgstr "AT-Option ist nicht erlaubt im VAR-Befehl"
 
-#: preproc.y:2076
+#: preproc.y:2077
 #, c-format
 msgid "AT option not allowed in WHENEVER statement"
 msgstr "AT-Option ist nicht erlaubt im WHENEVER-Befehl"
 
-#: preproc.y:2153 preproc.y:2325 preproc.y:2330 preproc.y:2453 preproc.y:4031
-#: preproc.y:4691 preproc.y:5633 preproc.y:5933 preproc.y:7551 preproc.y:9079
-#: preproc.y:9084 preproc.y:11915
+#: preproc.y:2154 preproc.y:2326 preproc.y:2331 preproc.y:2454 preproc.y:4032
+#: preproc.y:4692 preproc.y:5634 preproc.y:5934 preproc.y:7552 preproc.y:9091
+#: preproc.y:9096 preproc.y:11927
 #, c-format
 msgid "unsupported feature will be passed to server"
 msgstr "nicht mehr unterstütztes Feature wird an Server weitergereicht werden"
 
-#: preproc.y:2711
+#: preproc.y:2712
 #, c-format
 msgid "SHOW ALL is not implemented"
 msgstr "SHOW ALL ist nicht implementiert"
 
-#: preproc.y:3379
+#: preproc.y:3380
 #, c-format
 msgid "COPY FROM STDIN is not implemented"
 msgstr "COPY FROM STDIN ist nicht implementiert"
 
-#: preproc.y:10058 preproc.y:15539
+#: preproc.y:10070 preproc.y:15551
 #, c-format
 msgid "using variable \"%s\" in different declare statements is not supported"
 msgstr "Verwendung der Variable »%s« in verschiedenen DECLARE-Anweisungen wird nicht unterstützt"
 
-#: preproc.y:10060 preproc.y:15541
+#: preproc.y:10072 preproc.y:15553
 #, c-format
 msgid "cursor \"%s\" is already defined"
 msgstr "Cursor »%s« ist bereits definiert"
 
-#: preproc.y:10500
+#: preproc.y:10512
 #, c-format
 msgid "no longer supported LIMIT #,# syntax passed to server"
 msgstr "nicht mehr unterstützte Syntax LIMIT x,y wird an Server weitergereicht"
 
-#: preproc.y:10829 preproc.y:10836
+#: preproc.y:10841 preproc.y:10848
 #, c-format
 msgid "subquery in FROM must have an alias"
 msgstr "Unteranfrage in FROM muss Aliasnamen erhalten"
 
-#: preproc.y:15262 preproc.y:15269
+#: preproc.y:15274 preproc.y:15281
 #, c-format
 msgid "CREATE TABLE AS cannot specify INTO"
 msgstr "CREATE TABLE AS kann INTO nicht verwenden"
 
-#: preproc.y:15305
+#: preproc.y:15317
 #, c-format
 msgid "expected \"@\", found \"%s\""
 msgstr "»@« erwartet, »%s« gefunden"
 
-#: preproc.y:15317
+#: preproc.y:15329
 #, c-format
 msgid "only protocols \"tcp\" and \"unix\" and database type \"postgresql\" are supported"
 msgstr "er werden nur die Protokolle »tcp« und »unix« und der Datenbanktyp »postgresql« unterstützt"
 
-#: preproc.y:15320
+#: preproc.y:15332
 #, c-format
 msgid "expected \"://\", found \"%s\""
 msgstr "»://« erwartet, »%s« gefunden"
 
-#: preproc.y:15325
+#: preproc.y:15337
 #, c-format
 msgid "Unix-domain sockets only work on \"localhost\" but not on \"%s\""
 msgstr "Unix-Domain-Sockets funktionieren nur mit »localhost«, aber nicht mit »%s«"
 
-#: preproc.y:15351
+#: preproc.y:15363
 #, c-format
 msgid "expected \"postgresql\", found \"%s\""
 msgstr "»postgresql« erwartet, »%s« gefunden"
 
-#: preproc.y:15354
+#: preproc.y:15366
 #, c-format
 msgid "invalid connection type: %s"
 msgstr "ungültiger Verbindungstyp: %s"
 
-#: preproc.y:15363
+#: preproc.y:15375
 #, c-format
 msgid "expected \"@\" or \"://\", found \"%s\""
 msgstr "»@« oder »://« erwartet, »%s« gefunden"
 
-#: preproc.y:15438 preproc.y:15456
+#: preproc.y:15450 preproc.y:15468
 #, c-format
 msgid "invalid data type"
 msgstr "ungültiger Datentyp"
 
-#: preproc.y:15467 preproc.y:15484
+#: preproc.y:15479 preproc.y:15496
 #, c-format
 msgid "incomplete statement"
 msgstr "unvollständige Anweisung"
 
-#: preproc.y:15470 preproc.y:15487
+#: preproc.y:15482 preproc.y:15499
 #, c-format
 msgid "unrecognized token \"%s\""
 msgstr "nicht erkanntes Token »%s«"
 
-#: preproc.y:15757
+#: preproc.y:15769
 #, c-format
 msgid "only data types numeric and decimal have precision/scale argument"
 msgstr "nur die Datentypen NUMERIC und DECIMAL haben Argumente für Präzision und Skala"
 
-#: preproc.y:15769
+#: preproc.y:15781
 #, c-format
 msgid "interval specification not allowed here"
 msgstr "Intervallangabe hier nicht erlaubt"
 
-#: preproc.y:15929 preproc.y:15981
+#: preproc.y:15941 preproc.y:15993
 #, c-format
 msgid "too many levels in nested structure/union definition"
 msgstr "zu viele Ebenen in verschachtelter Definition von Struktur/Union"
 
-#: preproc.y:16104
+#: preproc.y:16116
 #, c-format
 msgid "pointers to varchar are not implemented"
 msgstr "Zeiger auf varchar sind nicht implementiert"
 
-#: preproc.y:16291 preproc.y:16316
+#: preproc.y:16303 preproc.y:16328
 #, c-format
 msgid "using unsupported DESCRIBE statement"
 msgstr "nicht unterstützter DESCRIBE-Befehl wird verwendet"
 
-#: preproc.y:16563
+#: preproc.y:16575
 #, c-format
 msgid "initializer not allowed in EXEC SQL VAR command"
 msgstr "Initialisierungswert nicht erlaubt in Befehl EXEC SQL VAR"
 
-#: preproc.y:16880
+#: preproc.y:16892
 #, c-format
 msgid "arrays of indicators are not allowed on input"
 msgstr "Array aus Indikatoren bei der Eingabe nicht erlaubt"
 
-#: preproc.y:17067
+#: preproc.y:17079
 #, c-format
 msgid "operator not allowed in variable definition"
 msgstr "Operator nicht erlaubt in Variablendefinition"
 
 #. translator: %s is typically the translation of "syntax error"
-#: preproc.y:17108
+#: preproc.y:17120
 #, c-format
 msgid "%s at or near \"%s\""
 msgstr "%s bei »%s«"
diff --git a/src/interfaces/ecpg/preproc/po/es.po b/src/interfaces/ecpg/preproc/po/es.po
index 35c8bae16f1..4189f1798c3 100644
--- a/src/interfaces/ecpg/preproc/po/es.po
+++ b/src/interfaces/ecpg/preproc/po/es.po
@@ -12,7 +12,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ecpg (PostgreSQL) 12\n"
 "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n"
-"POT-Creation-Date: 2019-09-29 23:38+0000\n"
+"POT-Creation-Date: 2020-05-17 02:39+0000\n"
 "PO-Revision-Date: 2019-06-06 17:20-0400\n"
 "Last-Translator: Carlos Chapi <carloswaldo@babelruins.org>\n"
 "Language-Team: PgSQL-es-Ayuda <pgsql-es-ayuda@lists.postgresql.org>\n"
@@ -176,162 +176,171 @@ msgstr ""
 #, c-format
 msgid ""
 "\n"
-"Report bugs to <pgsql-bugs@lists.postgresql.org>.\n"
+"Report bugs to <%s>.\n"
 msgstr ""
-"\n"
-"Reporte errores a <pgsql-bugs@lists.postgresql.org>.\n"
 
-#: ecpg.c:139
+#: ecpg.c:62
+#, c-format
+msgid "%s home page: <%s>\n"
+msgstr ""
+
+#: ecpg.c:140
 #, c-format
 msgid "%s: could not locate my own executable path\n"
 msgstr "%s: no se pudo localizar la ruta de mi propio ejecutable\n"
 
-#: ecpg.c:174 ecpg.c:331 ecpg.c:342
+#: ecpg.c:175 ecpg.c:332 ecpg.c:343
 #, c-format
 msgid "%s: could not open file \"%s\": %s\n"
 msgstr "%s: no se pudo abrir el archivo «%s»: %s\n"
 
-#: ecpg.c:217 ecpg.c:230 ecpg.c:246 ecpg.c:272
+#: ecpg.c:218 ecpg.c:231 ecpg.c:247 ecpg.c:273
 #, c-format
 msgid "Try \"%s --help\" for more information.\n"
 msgstr "Utilice «%s --help» para obtener mayor información.\n"
 
-#: ecpg.c:241
+#: ecpg.c:242
 #, c-format
 msgid "%s: parser debug support (-d) not available\n"
 msgstr "%s: la depuración del analizador (parser, -d) no está disponible)\n"
 
-#: ecpg.c:260
+#: ecpg.c:261
 #, c-format
 msgid "%s, the PostgreSQL embedded C preprocessor, version %s\n"
 msgstr "%s, el preprocesador de C incrustado de PostgreSQL, versión %s\n"
 
-#: ecpg.c:262
+#: ecpg.c:263
 #, c-format
 msgid "EXEC SQL INCLUDE ... search starts here:\n"
 msgstr "EXEC SQL INCLUDE ... la búsqueda comienza aquí:\n"
 
-#: ecpg.c:265
+#: ecpg.c:266
 #, c-format
 msgid "end of search list\n"
 msgstr "fin de la lista de búsqueda\n"
 
-#: ecpg.c:271
+#: ecpg.c:272
 #, c-format
 msgid "%s: no input files specified\n"
 msgstr "%s: no se especificaron archivos de entrada\n"
 
-#: ecpg.c:465
+#: ecpg.c:466
 #, c-format
 msgid "cursor \"%s\" has been declared but not opened"
 msgstr "el cursor «%s» fue declarado pero no abierto"
 
-#: ecpg.c:478 preproc.y:128
+#: ecpg.c:479 preproc.y:128
 #, c-format
 msgid "could not remove output file \"%s\"\n"
 msgstr "no se pudo eliminar el archivo de salida «%s»\n"
 
-#: pgc.l:472
+#: pgc.l:486
 #, c-format
 msgid "unterminated /* comment"
 msgstr "comentario /* no cerrado"
 
-#: pgc.l:490
-#, c-format
-msgid "invalid bit string literal"
-msgstr "cadena de bits no válida"
-
-#: pgc.l:502
+#: pgc.l:503
 #, c-format
 msgid "unterminated bit string literal"
 msgstr "una cadena de bits está inconclusa"
 
-#: pgc.l:518
+#: pgc.l:511
 #, c-format
 msgid "unterminated hexadecimal string literal"
 msgstr "una cadena hexadecimal está inconclusa"
 
-#: pgc.l:614 pgc.l:718
+#: pgc.l:586
+#, c-format
+msgid "invalid bit string literal"
+msgstr "cadena de bits no válida"
+
+#: pgc.l:607
+#, c-format
+msgid "unhandled previous state in xqs\n"
+msgstr ""
+
+#: pgc.l:636 pgc.l:738
 #, c-format
 msgid "unterminated quoted string"
 msgstr "una cadena en comillas está inconclusa"
 
-#: pgc.l:665
+#: pgc.l:687
 #, c-format
 msgid "unterminated dollar-quoted string"
 msgstr "una cadena separada por $ está inconclusa"
 
-#: pgc.l:684 pgc.l:697
+#: pgc.l:705 pgc.l:718
 #, c-format
 msgid "zero-length delimited identifier"
 msgstr "identificador delimitado de longitud cero"
 
-#: pgc.l:709
+#: pgc.l:729
 #, c-format
 msgid "unterminated quoted identifier"
 msgstr "un identificador en comillas está inconcluso"
 
-#: pgc.l:1040
+#: pgc.l:1060
 #, c-format
 msgid "nested /* ... */ comments"
 msgstr "comentarios /* ... */ anidados"
 
-#: pgc.l:1133
+#: pgc.l:1153
 #, c-format
 msgid "missing identifier in EXEC SQL UNDEF command"
 msgstr "falta un identificador en la orden EXEC SQL UNDEF"
 
-#: pgc.l:1179 pgc.l:1193
+#: pgc.l:1199 pgc.l:1213
 #, c-format
 msgid "missing matching \"EXEC SQL IFDEF\" / \"EXEC SQL IFNDEF\""
 msgstr "falta el «EXEC SQL IFDEF» / «EXEC SQL IFNDEF»"
 
-#: pgc.l:1182 pgc.l:1195 pgc.l:1373
+#: pgc.l:1202 pgc.l:1215 pgc.l:1393
 #, c-format
 msgid "missing \"EXEC SQL ENDIF;\""
 msgstr "falta el «EXEC SQL ENDIF;»"
 
-#: pgc.l:1211 pgc.l:1230
+#: pgc.l:1231 pgc.l:1250
 #, c-format
 msgid "more than one EXEC SQL ELSE"
 msgstr "hay más de un EXEC SQL ELSE"
 
-#: pgc.l:1252 pgc.l:1266
+#: pgc.l:1272 pgc.l:1286
 #, c-format
 msgid "unmatched EXEC SQL ENDIF"
 msgstr "EXEC SQL ENDIF sin coincidencia"
 
-#: pgc.l:1286
+#: pgc.l:1306
 #, c-format
 msgid "too many nested EXEC SQL IFDEF conditions"
 msgstr "demasiadas condiciones EXEC SQL IFDEF anidadas"
 
-#: pgc.l:1321
+#: pgc.l:1341
 #, c-format
 msgid "missing identifier in EXEC SQL IFDEF command"
 msgstr "identificador faltante en la orden EXEC SQL IFDEF"
 
-#: pgc.l:1330
+#: pgc.l:1350
 #, c-format
 msgid "missing identifier in EXEC SQL DEFINE command"
 msgstr "identificador faltante en la orden EXEC SQL DEFINE"
 
-#: pgc.l:1363
+#: pgc.l:1383
 #, c-format
 msgid "syntax error in EXEC SQL INCLUDE command"
 msgstr "error de sintaxis en orden EXEC SQL INCLUDE"
 
-#: pgc.l:1413
-#, c-format
-msgid "internal error: unreachable state; please report this to <pgsql-bugs@lists.postgresql.org>"
+#: pgc.l:1433
+#, fuzzy, c-format
+#| msgid "internal error: unreachable state; please report this to <pgsql-bugs@lists.postgresql.org>"
+msgid "internal error: unreachable state; please report this to <%s>"
 msgstr "error interno: estado no esperado; por favor reporte a <pgsql-bugs@lists.postgresql.org>"
 
-#: pgc.l:1564
+#: pgc.l:1583
 #, c-format
 msgid "Error: include path \"%s/%s\" is too long on line %d, skipping\n"
 msgstr "Error: ruta de inclusión «%s/%s» es demasiada larga en la línea %d, omitiendo\n"
 
-#: pgc.l:1587
+#: pgc.l:1606
 #, c-format
 msgid "could not open include file \"%s\" on line %d"
 msgstr "no se pudo abrir el archivo a incluir «%s» en la línea %d"
@@ -365,185 +374,185 @@ msgstr "inicializador no permitido en definición de tipo"
 msgid "type name \"string\" is reserved in Informix mode"
 msgstr "el nombre de tipo «string» está reservado en modo Informix"
 
-#: preproc.y:547 preproc.y:15792
+#: preproc.y:547 preproc.y:15966
 #, c-format
 msgid "type \"%s\" is already defined"
 msgstr "el tipo «%s» ya está definido"
 
-#: preproc.y:572 preproc.y:16463 preproc.y:16788 variable.c:621
+#: preproc.y:572 preproc.y:16609 preproc.y:16934 variable.c:621
 #, c-format
 msgid "multidimensional arrays for simple data types are not supported"
 msgstr "los arrays multidimensionales para tipos de datos simples no están soportados"
 
-#: preproc.y:1696
+#: preproc.y:1702
 #, c-format
 msgid "AT option not allowed in CLOSE DATABASE statement"
 msgstr "la opción AT no está permitida en la sentencia CLOSE DATABASE"
 
-#: preproc.y:1944
+#: preproc.y:1950
 #, c-format
 msgid "AT option not allowed in CONNECT statement"
 msgstr "la opción AT no está permitida en la sentencia CONNECT"
 
-#: preproc.y:1978
+#: preproc.y:1984
 #, c-format
 msgid "AT option not allowed in DISCONNECT statement"
 msgstr "la opción AT no está permitida en la sentencia DISCONNECT"
 
-#: preproc.y:2033
+#: preproc.y:2039
 #, c-format
 msgid "AT option not allowed in SET CONNECTION statement"
 msgstr "la opción AT no está permitida en la sentencia SET CONNECTION"
 
-#: preproc.y:2055
+#: preproc.y:2061
 #, c-format
 msgid "AT option not allowed in TYPE statement"
 msgstr "la opción AT no está permitida en la sentencia TYPE"
 
-#: preproc.y:2064
+#: preproc.y:2070
 #, c-format
 msgid "AT option not allowed in VAR statement"
 msgstr "la opción AT no está permitida en la sentencia VAR"
 
-#: preproc.y:2071
+#: preproc.y:2077
 #, c-format
 msgid "AT option not allowed in WHENEVER statement"
 msgstr "la opción AT no está permitida en la sentencia WHENEVER"
 
-#: preproc.y:2148 preproc.y:2320 preproc.y:2325 preproc.y:2448 preproc.y:4018
-#: preproc.y:5607 preproc.y:5907 preproc.y:7513 preproc.y:9025 preproc.y:9030
-#: preproc.y:11829
+#: preproc.y:2154 preproc.y:2326 preproc.y:2331 preproc.y:2454 preproc.y:4032
+#: preproc.y:4692 preproc.y:5634 preproc.y:5934 preproc.y:7552 preproc.y:9091
+#: preproc.y:9096 preproc.y:11927
 #, c-format
 msgid "unsupported feature will be passed to server"
 msgstr "característica no soportada será pasada al servidor"
 
-#: preproc.y:2706
+#: preproc.y:2712
 #, c-format
 msgid "SHOW ALL is not implemented"
 msgstr "SHOW ALL no está implementado"
 
-#: preproc.y:3366
+#: preproc.y:3380
 #, c-format
 msgid "COPY FROM STDIN is not implemented"
 msgstr "COPY FROM STDIN no está implementado"
 
-#: preproc.y:9976 preproc.y:15377
+#: preproc.y:10070 preproc.y:15551
 #, c-format
 msgid "using variable \"%s\" in different declare statements is not supported"
 msgstr "el uso de la variable «%s» en diferentes sentencias declare no está soportado"
 
-#: preproc.y:9978 preproc.y:15379
+#: preproc.y:10072 preproc.y:15553
 #, c-format
 msgid "cursor \"%s\" is already defined"
 msgstr "el cursor «%s» ya está definido"
 
-#: preproc.y:10418
+#: preproc.y:10512
 #, c-format
 msgid "no longer supported LIMIT #,# syntax passed to server"
 msgstr "la sintaxis LIMIT #,# que ya no está soportada ha sido pasada al servidor"
 
-#: preproc.y:10743 preproc.y:10750
+#: preproc.y:10841 preproc.y:10848
 #, c-format
 msgid "subquery in FROM must have an alias"
 msgstr "las subconsultas en FROM deben tener un alias"
 
-#: preproc.y:15100 preproc.y:15107
+#: preproc.y:15274 preproc.y:15281
 #, c-format
 msgid "CREATE TABLE AS cannot specify INTO"
 msgstr "CREATE TABLE AS no puede especificar INTO"
 
-#: preproc.y:15143
+#: preproc.y:15317
 #, c-format
 msgid "expected \"@\", found \"%s\""
 msgstr "se esperaba «@», se encontró «%s»"
 
-#: preproc.y:15155
+#: preproc.y:15329
 #, c-format
 msgid "only protocols \"tcp\" and \"unix\" and database type \"postgresql\" are supported"
 msgstr "sólo los protocolos «tcp» y «unix» y tipo de bases de datos «postgresql» están soportados"
 
-#: preproc.y:15158
+#: preproc.y:15332
 #, c-format
 msgid "expected \"://\", found \"%s\""
 msgstr "se esperaba «://», se encontró «%s»"
 
-#: preproc.y:15163
+#: preproc.y:15337
 #, c-format
 msgid "Unix-domain sockets only work on \"localhost\" but not on \"%s\""
 msgstr "los sockets de dominio unix sólo trabajan en «localhost» pero no en «%s»"
 
-#: preproc.y:15189
+#: preproc.y:15363
 #, c-format
 msgid "expected \"postgresql\", found \"%s\""
 msgstr "se esperaba «postgresql», se encontró «%s»"
 
-#: preproc.y:15192
+#: preproc.y:15366
 #, c-format
 msgid "invalid connection type: %s"
 msgstr "tipo de conexión no válido: %s"
 
-#: preproc.y:15201
+#: preproc.y:15375
 #, c-format
 msgid "expected \"@\" or \"://\", found \"%s\""
 msgstr "se esperaba «@» o «://», se encontró «%s»"
 
-#: preproc.y:15276 preproc.y:15294
+#: preproc.y:15450 preproc.y:15468
 #, c-format
 msgid "invalid data type"
 msgstr "tipo de dato no válido"
 
-#: preproc.y:15305 preproc.y:15322
+#: preproc.y:15479 preproc.y:15496
 #, c-format
 msgid "incomplete statement"
 msgstr "sentencia incompleta"
 
-#: preproc.y:15308 preproc.y:15325
+#: preproc.y:15482 preproc.y:15499
 #, c-format
 msgid "unrecognized token \"%s\""
 msgstr "elemento «%s» no reconocido"
 
-#: preproc.y:15595
+#: preproc.y:15769
 #, c-format
 msgid "only data types numeric and decimal have precision/scale argument"
 msgstr "sólo los tipos de dato numeric y decimal tienen argumento de precisión/escala"
 
-#: preproc.y:15607
+#: preproc.y:15781
 #, c-format
 msgid "interval specification not allowed here"
 msgstr "la especificación de intervalo no está permitida aquí"
 
-#: preproc.y:15767 preproc.y:15819
+#: preproc.y:15941 preproc.y:15993
 #, c-format
 msgid "too many levels in nested structure/union definition"
 msgstr "demasiados niveles en la definición anidada de estructura/unión"
 
-#: preproc.y:15970
+#: preproc.y:16116
 #, c-format
 msgid "pointers to varchar are not implemented"
 msgstr "los punteros a varchar no están implementados"
 
-#: preproc.y:16157 preproc.y:16182
+#: preproc.y:16303 preproc.y:16328
 #, c-format
 msgid "using unsupported DESCRIBE statement"
 msgstr "utilizando sentencia DESCRIBE no soportada"
 
-#: preproc.y:16429
+#: preproc.y:16575
 #, c-format
 msgid "initializer not allowed in EXEC SQL VAR command"
 msgstr "inicializador no permitido en la orden EXEC SQL VAR"
 
-#: preproc.y:16746
+#: preproc.y:16892
 #, c-format
 msgid "arrays of indicators are not allowed on input"
 msgstr "no se permiten los arrays de indicadores en la entrada"
 
-#: preproc.y:16967
+#: preproc.y:17079
 #, c-format
 msgid "operator not allowed in variable definition"
 msgstr "operador no permitido en definición de variable"
 
 #. translator: %s is typically the translation of "syntax error"
-#: preproc.y:17008
+#: preproc.y:17120
 #, c-format
 msgid "%s at or near \"%s\""
 msgstr "%s en o cerca de «%s»"
@@ -675,5 +684,9 @@ msgstr "los punteros a puntero no están soportados para este tipo de dato"
 msgid "multidimensional arrays for structures are not supported"
 msgstr "los arrays multidimensionales para estructuras no están soportados"
 
-#~ msgid "declared name %s is already defined"
-#~ msgstr "el cursor «%s» ya está definido"
+#~ msgid ""
+#~ "\n"
+#~ "Report bugs to <pgsql-bugs@lists.postgresql.org>.\n"
+#~ msgstr ""
+#~ "\n"
+#~ "Reporte errores a <pgsql-bugs@lists.postgresql.org>.\n"
diff --git a/src/interfaces/libpq/po/de.po b/src/interfaces/libpq/po/de.po
index 73f8fc9ce29..e08b9ed5d77 100644
--- a/src/interfaces/libpq/po/de.po
+++ b/src/interfaces/libpq/po/de.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: PostgreSQL 13\n"
 "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n"
-"POT-Creation-Date: 2020-04-24 08:09+0000\n"
-"PO-Revision-Date: 2020-04-24 13:38+0200\n"
+"POT-Creation-Date: 2020-05-18 03:39+0000\n"
+"PO-Revision-Date: 2020-05-18 08:47+0200\n"
 "Last-Translator: Peter Eisentraut <peter@eisentraut.org>\n"
 "Language-Team: German <pgsql-translators@postgresql.org>\n"
 "Language: de\n"
@@ -57,8 +57,8 @@ msgstr "konnte Nonce nicht erzeugen\n"
 #: fe-connect.c:5820 fe-connect.c:5921 fe-connect.c:5930 fe-connect.c:6286
 #: fe-connect.c:6436 fe-exec.c:2747 fe-exec.c:3494 fe-exec.c:3659
 #: fe-gssapi-common.c:111 fe-lobj.c:895 fe-protocol2.c:1207 fe-protocol3.c:995
-#: fe-protocol3.c:1699 fe-secure-common.c:110 fe-secure-gssapi.c:498
-#: fe-secure-openssl.c:440 fe-secure-openssl.c:1092
+#: fe-protocol3.c:1699 fe-secure-common.c:110 fe-secure-gssapi.c:504
+#: fe-secure-openssl.c:440 fe-secure-openssl.c:1091
 msgid "out of memory\n"
 msgstr "Speicher aufgebraucht\n"
 
@@ -134,7 +134,7 @@ msgid "could not acquire SSPI credentials"
 msgstr "konnte SSPI-Credentials nicht erhalten"
 
 #: fe-auth.c:429
-msgid "Channel binding required, but SSL not in use\n"
+msgid "channel binding required, but SSL not in use\n"
 msgstr "Channel-Binding wurde verlangt, aber SSL wird nicht verwendet\n"
 
 #: fe-auth.c:436
@@ -171,11 +171,11 @@ msgid "SCM_CRED authentication method not supported\n"
 msgstr "SCM_CRED-Authentifizierungsmethode nicht unterstützt\n"
 
 #: fe-auth.c:836
-msgid "Channel binding required, but server authenticated client without channel binding\n"
+msgid "channel binding required, but server authenticated client without channel binding\n"
 msgstr "Channel-Binding wurde verlangt, aber der Server hat den Client ohne Channel-Binding authentifiziert\n"
 
 #: fe-auth.c:842
-msgid "Channel binding required but not supported by server's authentication request\n"
+msgid "channel binding required but not supported by server's authentication request\n"
 msgstr "Channel-Binding wurde verlangt aber von der Authentifizierungsanfrage des Servers nicht unterstützt\n"
 
 #: fe-auth.c:875
@@ -258,17 +258,17 @@ msgstr "sslmode-Wert »%s« ist ungültig, wenn SSL-Unterstützung nicht einkomp
 
 #: fe-connect.c:1311
 #, c-format
-msgid "invalid sslminprotocolversion value: \"%s\"\n"
-msgstr "ungültiger sslminprotocolversion-Wert: »%s«\n"
+msgid "invalid ssl_min_protocol_version value: \"%s\"\n"
+msgstr "ungültiger ssl_min_protocol_version-Wert: »%s«\n"
 
 #: fe-connect.c:1319
 #, c-format
-msgid "invalid sslmaxprotocolversion value: \"%s\"\n"
-msgstr "ungültiger sslmaxprotocolversion-Wert: »%s«\n"
+msgid "invalid ssl_max_protocol_version value: \"%s\"\n"
+msgstr "ungültiger ssl_max_protocol_version-Wert: »%s«\n"
 
 #: fe-connect.c:1336
-msgid "invalid SSL protocol version range"
-msgstr "ungültiges SSL-Protokollsintervall"
+msgid "invalid SSL protocol version range\n"
+msgstr "ungültiges SSL-Protokollsintervall\n"
 
 #: fe-connect.c:1351
 #, c-format
@@ -1078,41 +1078,41 @@ msgstr "ausgehende GSSAPI-Nachricht würde keine Vertraulichkeit verwenden\n"
 msgid "client tried to send oversize GSSAPI packet (%zu > %zu)\n"
 msgstr "Client versuchte übergroßes GSSAPI-Paket zu senden (%zu > %zu)\n"
 
-#: fe-secure-gssapi.c:350 fe-secure-gssapi.c:590
+#: fe-secure-gssapi.c:354 fe-secure-gssapi.c:596
 #, c-format
 msgid "oversize GSSAPI packet sent by the server (%zu > %zu)\n"
 msgstr "übergroßes GSSAPI-Paket vom Server gesendet (%zu > %zu)\n"
 
-#: fe-secure-gssapi.c:389
+#: fe-secure-gssapi.c:393
 msgid "GSSAPI unwrap error"
 msgstr "GSSAPI-Unwrap-Fehler"
 
-#: fe-secure-gssapi.c:399
+#: fe-secure-gssapi.c:403
 msgid "incoming GSSAPI message did not use confidentiality\n"
 msgstr "eingehende GSSAPI-Nachricht verwendete keine Vertraulichkeit\n"
 
-#: fe-secure-gssapi.c:636
+#: fe-secure-gssapi.c:642
 msgid "could not initiate GSSAPI security context"
 msgstr "konnte GSSAPI-Sicherheitskontext nicht initiieren"
 
-#: fe-secure-gssapi.c:666
+#: fe-secure-gssapi.c:673
 msgid "GSSAPI size check error"
 msgstr "GSSAPI-Fehler bei der Größenprüfung"
 
-#: fe-secure-gssapi.c:677
+#: fe-secure-gssapi.c:684
 msgid "GSSAPI context establishment error"
 msgstr "GSSAPI-Fehler beim Einrichten des Kontexts"
 
-#: fe-secure-openssl.c:214 fe-secure-openssl.c:321 fe-secure-openssl.c:1292
+#: fe-secure-openssl.c:214 fe-secure-openssl.c:321 fe-secure-openssl.c:1291
 #, c-format
 msgid "SSL SYSCALL error: %s\n"
 msgstr "SSL-SYSCALL-Fehler: %s\n"
 
-#: fe-secure-openssl.c:221 fe-secure-openssl.c:328 fe-secure-openssl.c:1296
+#: fe-secure-openssl.c:221 fe-secure-openssl.c:328 fe-secure-openssl.c:1295
 msgid "SSL SYSCALL error: EOF detected\n"
 msgstr "SSL-SYSCALL-Fehler: Dateiende entdeckt\n"
 
-#: fe-secure-openssl.c:232 fe-secure-openssl.c:339 fe-secure-openssl.c:1305
+#: fe-secure-openssl.c:232 fe-secure-openssl.c:339 fe-secure-openssl.c:1304
 #, c-format
 msgid "SSL error: %s\n"
 msgstr "SSL-Fehler: %s\n"
@@ -1121,7 +1121,7 @@ msgstr "SSL-Fehler: %s\n"
 msgid "SSL connection has been closed unexpectedly\n"
 msgstr "SSL-Verbindung wurde unerwartet geschlossen\n"
 
-#: fe-secure-openssl.c:253 fe-secure-openssl.c:360 fe-secure-openssl.c:1314
+#: fe-secure-openssl.c:253 fe-secure-openssl.c:360 fe-secure-openssl.c:1313
 #, c-format
 msgid "unrecognized SSL error code: %d\n"
 msgstr "unbekannter SSL-Fehlercode: %d\n"
@@ -1148,32 +1148,32 @@ msgstr "Namenseintrag fehlt im SSL-Zertifikat\n"
 msgid "could not create SSL context: %s\n"
 msgstr "konnte SSL-Kontext nicht erzeugen: %s\n"
 
-#: fe-secure-openssl.c:855
+#: fe-secure-openssl.c:854
 #, c-format
 msgid "invalid value \"%s\" for minimum version of SSL protocol\n"
 msgstr "ungültiger Wert »%s« für minimale SSL-Protokollversion\n"
 
-#: fe-secure-openssl.c:866
+#: fe-secure-openssl.c:865
 #, c-format
 msgid "could not set minimum version of SSL protocol: %s\n"
 msgstr "konnte minimale SSL-Protokollversion nicht setzen: %s\n"
 
-#: fe-secure-openssl.c:884
+#: fe-secure-openssl.c:883
 #, c-format
 msgid "invalid value \"%s\" for maximum version of SSL protocol\n"
 msgstr "ungültiger Wert »%s« für maximale SSL-Protokollversion\n"
 
-#: fe-secure-openssl.c:895
+#: fe-secure-openssl.c:894
 #, c-format
 msgid "could not set maximum version of SSL protocol: %s\n"
 msgstr "konnte maximale SSL-Protokollversion nicht setzen: %s\n"
 
-#: fe-secure-openssl.c:931
+#: fe-secure-openssl.c:930
 #, c-format
 msgid "could not read root certificate file \"%s\": %s\n"
 msgstr "konnte Root-Zertifikat-Datei »%s« nicht lesen: %s\n"
 
-#: fe-secure-openssl.c:975
+#: fe-secure-openssl.c:974
 msgid ""
 "could not get home directory to locate root certificate file\n"
 "Either provide the file or change sslmode to disable server certificate verification.\n"
@@ -1181,7 +1181,7 @@ msgstr ""
 "konnte Home-Verzeichnis nicht ermitteln, um Root-Zertifikat-Datei zu finden\n"
 "Legen Sie entweder die Datei an oder ändern Sie sslmode, um die Überprüfung der Serverzertifikate abzuschalten.\n"
 
-#: fe-secure-openssl.c:979
+#: fe-secure-openssl.c:978
 #, c-format
 msgid ""
 "root certificate file \"%s\" does not exist\n"
@@ -1190,80 +1190,80 @@ msgstr ""
 "Root-Zertifikat-Datei »%s« existiert nicht\n"
 "Legen Sie entweder die Datei an oder ändern Sie sslmode, um die Überprüfung der Serverzertifikate abzuschalten.\n"
 
-#: fe-secure-openssl.c:1010
+#: fe-secure-openssl.c:1009
 #, c-format
 msgid "could not open certificate file \"%s\": %s\n"
 msgstr "konnte Zertifikatdatei »%s« nicht öffnen: %s\n"
 
-#: fe-secure-openssl.c:1029
+#: fe-secure-openssl.c:1028
 #, c-format
 msgid "could not read certificate file \"%s\": %s\n"
 msgstr "konnte Zertifikatdatei »%s« nicht lesen: %s\n"
 
-#: fe-secure-openssl.c:1054
+#: fe-secure-openssl.c:1053
 #, c-format
 msgid "could not establish SSL connection: %s\n"
 msgstr "konnte SSL-Verbindung nicht aufbauen: %s\n"
 
-#: fe-secure-openssl.c:1108
+#: fe-secure-openssl.c:1107
 #, c-format
 msgid "could not load SSL engine \"%s\": %s\n"
 msgstr "konnte SSL-Engine »%s« nicht laden: %s\n"
 
-#: fe-secure-openssl.c:1120
+#: fe-secure-openssl.c:1119
 #, c-format
 msgid "could not initialize SSL engine \"%s\": %s\n"
 msgstr "konnte SSL-Engine »%s« nicht initialisieren: %s\n"
 
-#: fe-secure-openssl.c:1136
+#: fe-secure-openssl.c:1135
 #, c-format
 msgid "could not read private SSL key \"%s\" from engine \"%s\": %s\n"
 msgstr "konnte privaten SSL-Schlüssel »%s« nicht von Engine »%s« lesen: %s\n"
 
-#: fe-secure-openssl.c:1150
+#: fe-secure-openssl.c:1149
 #, c-format
 msgid "could not load private SSL key \"%s\" from engine \"%s\": %s\n"
 msgstr "konnte privaten SSL-Schlüssel »%s« nicht von Engine »%s« laden: %s\n"
 
-#: fe-secure-openssl.c:1187
+#: fe-secure-openssl.c:1186
 #, c-format
 msgid "certificate present, but not private key file \"%s\"\n"
 msgstr "Zertifikat vorhanden, aber keine private Schlüsseldatei »%s«\n"
 
-#: fe-secure-openssl.c:1195
+#: fe-secure-openssl.c:1194
 #, c-format
 msgid "private key file \"%s\" has group or world access; permissions should be u=rw (0600) or less\n"
 msgstr "WARNUNG: private Schlüsseldatei »%s« erlaubt Lesezugriff für Gruppe oder Andere; Rechte sollten u=rw (0600) oder weniger sein\n"
 
-#: fe-secure-openssl.c:1220
+#: fe-secure-openssl.c:1219
 #, c-format
 msgid "could not load private key file \"%s\": %s\n"
 msgstr "konnte private Schlüsseldatei »%s« nicht laden: %s\n"
 
-#: fe-secure-openssl.c:1238
+#: fe-secure-openssl.c:1237
 #, c-format
 msgid "certificate does not match private key file \"%s\": %s\n"
 msgstr "Zertifikat passt nicht zur privaten Schlüsseldatei »%s«: %s\n"
 
-#: fe-secure-openssl.c:1333
+#: fe-secure-openssl.c:1332
 #, c-format
 msgid "certificate could not be obtained: %s\n"
 msgstr "Zertifikat konnte nicht ermittelt werden: %s\n"
 
-#: fe-secure-openssl.c:1422
+#: fe-secure-openssl.c:1421
 #, c-format
 msgid "no SSL error reported"
 msgstr "kein SSL-Fehler berichtet"
 
-#: fe-secure-openssl.c:1431
+#: fe-secure-openssl.c:1430
 #, c-format
 msgid "SSL error code %lu"
 msgstr "SSL-Fehlercode %lu"
 
-#: fe-secure-openssl.c:1678
+#: fe-secure-openssl.c:1677
 #, c-format
-msgid "WARNING: sslpassword truncated"
-msgstr "WARNUNG: sslpassword abgeschnitten"
+msgid "WARNING: sslpassword truncated\n"
+msgstr "WARNUNG: sslpassword abgeschnitten\n"
 
 #: fe-secure.c:275
 #, c-format
diff --git a/src/interfaces/libpq/po/es.po b/src/interfaces/libpq/po/es.po
index eccc8fc4fdb..6fc8e22b838 100644
--- a/src/interfaces/libpq/po/es.po
+++ b/src/interfaces/libpq/po/es.po
@@ -12,7 +12,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: libpq (PostgreSQL) 12\n"
 "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n"
-"POT-Creation-Date: 2019-09-29 23:39+0000\n"
+"POT-Creation-Date: 2020-05-17 02:39+0000\n"
 "PO-Revision-Date: 2019-09-29 22:11-0300\n"
 "Last-Translator: Carlos Chapi <carloswaldo@babelruins.org>\n"
 "Language-Team: PgSQL-es-Ayuda <pgsql-es-ayuda@lists.postgresql.org>\n"
@@ -22,236 +22,290 @@ msgstr ""
 "Content-Transfer-Encoding: 8bit\n"
 "X-Generator: BlackCAT 1.0\n"
 
-#: fe-auth-scram.c:183
+#: fe-auth-scram.c:212
 msgid "malformed SCRAM message (empty message)\n"
 msgstr "mensaje SCRAM mal formado (mensaje vacío)\n"
 
-#: fe-auth-scram.c:189
+#: fe-auth-scram.c:218
 msgid "malformed SCRAM message (length mismatch)\n"
 msgstr "mensaje SCRAM mal formado (longitud no coincide)\n"
 
-#: fe-auth-scram.c:238
+#: fe-auth-scram.c:265
 msgid "incorrect server signature\n"
 msgstr "signatura de servidor incorrecta\n"
 
-#: fe-auth-scram.c:247
+#: fe-auth-scram.c:274
 msgid "invalid SCRAM exchange state\n"
 msgstr "estado de intercambio SCRAM no es válido\n"
 
-#: fe-auth-scram.c:270
+#: fe-auth-scram.c:296
 #, c-format
 msgid "malformed SCRAM message (attribute \"%c\" expected)\n"
 msgstr "mensaje SCRAM mal formado (se esperaba atributo «%c»)\n"
 
-#: fe-auth-scram.c:279
+#: fe-auth-scram.c:305
 #, c-format
 msgid "malformed SCRAM message (expected character \"=\" for attribute \"%c\")\n"
 msgstr "mensaje SCRAM mal formado (se esperaba el carácter «=» para el atributo «%c»)\n"
 
-#: fe-auth-scram.c:320
+#: fe-auth-scram.c:346
 msgid "could not generate nonce\n"
 msgstr "no se pude generar nonce\n"
 
-#: fe-auth-scram.c:328 fe-auth-scram.c:395 fe-auth-scram.c:517
-#: fe-auth-scram.c:537 fe-auth-scram.c:563 fe-auth-scram.c:577
-#: fe-auth-scram.c:626 fe-auth-scram.c:660 fe-auth.c:290 fe-auth.c:360
-#: fe-auth.c:395 fe-auth.c:581 fe-auth.c:740 fe-auth.c:1052 fe-auth.c:1200
-#: fe-connect.c:858 fe-connect.c:1320 fe-connect.c:1496 fe-connect.c:2083
-#: fe-connect.c:2106 fe-connect.c:2829 fe-connect.c:4511 fe-connect.c:4763
-#: fe-connect.c:4882 fe-connect.c:5136 fe-connect.c:5216 fe-connect.c:5315
-#: fe-connect.c:5571 fe-connect.c:5600 fe-connect.c:5672 fe-connect.c:5696
-#: fe-connect.c:5714 fe-connect.c:5815 fe-connect.c:5824 fe-connect.c:6180
-#: fe-connect.c:6330 fe-exec.c:2748 fe-exec.c:3495 fe-exec.c:3660
-#: fe-gssapi-common.c:111 fe-lobj.c:895 fe-protocol2.c:1213 fe-protocol3.c:999
-#: fe-protocol3.c:1703 fe-secure-common.c:110 fe-secure-openssl.c:438
-#: fe-secure-openssl.c:1025
+#: fe-auth-scram.c:356 fe-auth-scram.c:431 fe-auth-scram.c:579
+#: fe-auth-scram.c:600 fe-auth-scram.c:626 fe-auth-scram.c:641
+#: fe-auth-scram.c:691 fe-auth-scram.c:725 fe-auth.c:289 fe-auth.c:359
+#: fe-auth.c:394 fe-auth.c:611 fe-auth.c:770 fe-auth.c:1129 fe-auth.c:1277
+#: fe-connect.c:886 fe-connect.c:1413 fe-connect.c:1589 fe-connect.c:2199
+#: fe-connect.c:2222 fe-connect.c:2948 fe-connect.c:4614 fe-connect.c:4870
+#: fe-connect.c:4989 fe-connect.c:5242 fe-connect.c:5322 fe-connect.c:5421
+#: fe-connect.c:5677 fe-connect.c:5706 fe-connect.c:5778 fe-connect.c:5802
+#: fe-connect.c:5820 fe-connect.c:5921 fe-connect.c:5930 fe-connect.c:6286
+#: fe-connect.c:6436 fe-exec.c:2747 fe-exec.c:3494 fe-exec.c:3659
+#: fe-gssapi-common.c:111 fe-lobj.c:895 fe-protocol2.c:1207 fe-protocol3.c:995
+#: fe-protocol3.c:1699 fe-secure-common.c:110 fe-secure-gssapi.c:504
+#: fe-secure-openssl.c:440 fe-secure-openssl.c:1091
 msgid "out of memory\n"
 msgstr "memoria agotada\n"
 
-#: fe-auth-scram.c:555
+#: fe-auth-scram.c:364
+#, fuzzy
+#| msgid "could not generate nonce\n"
+msgid "could not encode nonce\n"
+msgstr "no se pude generar nonce\n"
+
+#: fe-auth-scram.c:563
+#, fuzzy
+#| msgid "could not send data to client: %m"
+msgid "could not encode client proof\n"
+msgstr "no se pudo enviar datos al cliente: %m"
+
+#: fe-auth-scram.c:618
 msgid "invalid SCRAM response (nonce mismatch)\n"
 msgstr "respuesta SCRAM no es válida (nonce no coincide)\n"
 
-#: fe-auth-scram.c:586
-#| msgid "malformed SCRAM message (invalid server signature)\n"
+#: fe-auth-scram.c:651
 msgid "malformed SCRAM message (invalid salt)\n"
 msgstr "mensaje SCRAM mal formado (sal no válida)\n"
 
-#: fe-auth-scram.c:600
+#: fe-auth-scram.c:665
 msgid "malformed SCRAM message (invalid iteration count)\n"
 msgstr "mensaje SCRAM mal formado (el conteo de iteración no es válido)\n"
 
-#: fe-auth-scram.c:606
+#: fe-auth-scram.c:671
 msgid "malformed SCRAM message (garbage at end of server-first-message)\n"
 msgstr "mensaje SCRAM mal formado (se encontró basura al final de server-first-message)\n"
 
-#: fe-auth-scram.c:637
+#: fe-auth-scram.c:702
 #, c-format
 msgid "error received from server in SCRAM exchange: %s\n"
 msgstr "se recibió un error desde el servidor durante el intercambio SCRAM: %s\n"
 
-#: fe-auth-scram.c:653
+#: fe-auth-scram.c:718
 msgid "malformed SCRAM message (garbage at end of server-final-message)\n"
 msgstr "mensaje SCRAM mal formado (se encontró basura al final de server-final-message)\n"
 
-#: fe-auth-scram.c:671
+#: fe-auth-scram.c:737
 msgid "malformed SCRAM message (invalid server signature)\n"
 msgstr "mensaje SCRAM mal formado (la signatura del servidor no es válida)\n"
 
-#: fe-auth.c:77
+#: fe-auth.c:76
 #, c-format
 msgid "out of memory allocating GSSAPI buffer (%d)\n"
 msgstr "memoria agotada creando el búfer GSSAPI (%d)\n"
 
-#: fe-auth.c:132
+#: fe-auth.c:131
 msgid "GSSAPI continuation error"
 msgstr "error en continuación de GSSAPI"
 
-#: fe-auth.c:159 fe-auth.c:389 fe-gssapi-common.c:98 fe-secure-common.c:98
+#: fe-auth.c:158 fe-auth.c:388 fe-gssapi-common.c:98 fe-secure-common.c:98
 msgid "host name must be specified\n"
 msgstr "el nombre de servidor debe ser especificado\n"
 
-#: fe-auth.c:166
+#: fe-auth.c:165
 msgid "duplicate GSS authentication request\n"
 msgstr "petición de autentificación GSS duplicada\n"
 
-#: fe-auth.c:231
+#: fe-auth.c:230
 #, c-format
 msgid "out of memory allocating SSPI buffer (%d)\n"
 msgstr "memoria agotada creando el búfer SSPI (%d)\n"
 
-#: fe-auth.c:279
+#: fe-auth.c:278
 msgid "SSPI continuation error"
 msgstr "error en continuación de SSPI"
 
-#: fe-auth.c:350
+#: fe-auth.c:349
 msgid "duplicate SSPI authentication request\n"
 msgstr "petición de autentificación SSPI duplicada\n"
 
-#: fe-auth.c:375
+#: fe-auth.c:374
 msgid "could not acquire SSPI credentials"
 msgstr "no se pudo obtener las credenciales SSPI"
 
 #: fe-auth.c:429
+msgid "channel binding required, but SSL not in use\n"
+msgstr ""
+
+#: fe-auth.c:436
 msgid "duplicate SASL authentication request\n"
 msgstr "petición de autentificación SASL duplicada\n"
 
-#: fe-auth.c:487
+#: fe-auth.c:492
+msgid "channel binding is required, but client does not support it\n"
+msgstr ""
+
+#: fe-auth.c:509
 msgid "server offered SCRAM-SHA-256-PLUS authentication over a non-SSL connection\n"
 msgstr "el servidor ofreció autenticación SCRAM-SHA-256-PLUS sobre una conexión no-SSL\n"
 
-#: fe-auth.c:499
+#: fe-auth.c:521
 msgid "none of the server's SASL authentication mechanisms are supported\n"
 msgstr "ningún método de autentificación SASL del servidor está soportado\n"
 
-#: fe-auth.c:605
+#: fe-auth.c:529
+msgid "channel binding is required, but server did not offer an authentication method that supports channel binding\n"
+msgstr ""
+
+#: fe-auth.c:635
 #, c-format
 msgid "out of memory allocating SASL buffer (%d)\n"
 msgstr "memoria agotada creando el búfer SASL (%d)\n"
 
-#: fe-auth.c:630
+#: fe-auth.c:660
 msgid "AuthenticationSASLFinal received from server, but SASL authentication was not completed\n"
 msgstr "Se recibió AuthenticationSASLFinal desde el servidor, pero la autentificación SASL no se completó\n"
 
-#: fe-auth.c:707
+#: fe-auth.c:737
 msgid "SCM_CRED authentication method not supported\n"
 msgstr "el método de autentificación SCM_CRED no está soportado\n"
 
-#: fe-auth.c:798
+#: fe-auth.c:836
+msgid "channel binding required, but server authenticated client without channel binding\n"
+msgstr ""
+
+#: fe-auth.c:842
+msgid "channel binding required but not supported by server's authentication request\n"
+msgstr ""
+
+#: fe-auth.c:875
 msgid "Kerberos 4 authentication not supported\n"
 msgstr "el método de autentificación Kerberos 4 no está soportado\n"
 
-#: fe-auth.c:803
+#: fe-auth.c:880
 msgid "Kerberos 5 authentication not supported\n"
 msgstr "el método de autentificación Kerberos 5 no está soportado\n"
 
-#: fe-auth.c:874
+#: fe-auth.c:951
 msgid "GSSAPI authentication not supported\n"
 msgstr "el método de autentificación GSSAPI no está soportado\n"
 
-#: fe-auth.c:906
+#: fe-auth.c:983
 msgid "SSPI authentication not supported\n"
 msgstr "el método de autentificación SSPI no está soportado\n"
 
-#: fe-auth.c:914
+#: fe-auth.c:991
 msgid "Crypt authentication not supported\n"
 msgstr "el método de autentificación Crypt no está soportado\n"
 
-#: fe-auth.c:980
+#: fe-auth.c:1057
 #, c-format
 msgid "authentication method %u not supported\n"
 msgstr "el método de autentificación %u no está soportado\n"
 
-#: fe-auth.c:1027
+#: fe-auth.c:1104
 #, c-format
 msgid "user name lookup failure: error code %lu\n"
 msgstr "fallo en la búsqueda del nombre de usuario: código de error %lu\n"
 
-#: fe-auth.c:1037 fe-connect.c:2716
+#: fe-auth.c:1114 fe-connect.c:2830
 #, c-format
 msgid "could not look up local user ID %d: %s\n"
 msgstr "no se pudo buscar el usuario local de ID %d: %s\n"
 
-#: fe-auth.c:1042 fe-connect.c:2721
+#: fe-auth.c:1119 fe-connect.c:2835
 #, c-format
 msgid "local user with ID %d does not exist\n"
 msgstr "no existe un usuario local con ID %d\n"
 
-#: fe-auth.c:1144
+#: fe-auth.c:1221
 msgid "unexpected shape of result set returned for SHOW\n"
 msgstr "SHOW retornó un conjunto de resultados con estructura inesperada\n"
 
-#: fe-auth.c:1153
+#: fe-auth.c:1230
 msgid "password_encryption value too long\n"
 msgstr "el valor para password_encryption es demasiado largo\n"
 
-#: fe-auth.c:1193
+#: fe-auth.c:1270
 #, c-format
 msgid "unrecognized password encryption algorithm \"%s\"\n"
 msgstr "algoritmo para cifrado de contraseña «%s» desconocido\n"
 
-#: fe-connect.c:1041
+#: fe-connect.c:1069
 #, c-format
 msgid "could not match %d host names to %d hostaddr values\n"
 msgstr "no se pudo emparejar %d nombres de host a %d direcciones de host\n"
 
-#: fe-connect.c:1117
+#: fe-connect.c:1150
 #, c-format
 msgid "could not match %d port numbers to %d hosts\n"
 msgstr "no se pudo emparejar %d números de puertos a %d hosts\n"
 
-#: fe-connect.c:1213
+#: fe-connect.c:1243
+#, fuzzy, c-format
+#| msgid "invalid cidr value: \"%s\""
+msgid "invalid channel_binding value: \"%s\"\n"
+msgstr "valor cidr no válido: «%s»"
+
+#: fe-connect.c:1269
 #, c-format
 msgid "invalid sslmode value: \"%s\"\n"
 msgstr "valor sslmode no válido: «%s»\n"
 
-#: fe-connect.c:1234
+#: fe-connect.c:1290
 #, c-format
 msgid "sslmode value \"%s\" invalid when SSL support is not compiled in\n"
 msgstr "el valor sslmode «%s» no es válido cuando no se ha compilado con soporte SSL\n"
 
-#: fe-connect.c:1258
+#: fe-connect.c:1311
+#, fuzzy, c-format
+#| msgid "invalid sslmode value: \"%s\"\n"
+msgid "invalid ssl_min_protocol_version value: \"%s\"\n"
+msgstr "valor sslmode no válido: «%s»\n"
+
+#: fe-connect.c:1319
+#, fuzzy, c-format
+#| msgid "invalid sslmode value: \"%s\"\n"
+msgid "invalid ssl_max_protocol_version value: \"%s\"\n"
+msgstr "valor sslmode no válido: «%s»\n"
+
+#: fe-connect.c:1336
+#, fuzzy
+#| msgid "invalid proto_version"
+msgid "invalid SSL protocol version range\n"
+msgstr "proto_version no válido"
+
+#: fe-connect.c:1351
 #, c-format
 msgid "invalid gssencmode value: \"%s\"\n"
 msgstr "valor gssencmode no válido: «%s»\n"
 
-#: fe-connect.c:1267
+#: fe-connect.c:1360
 #, c-format
-#| msgid "sslmode value \"%s\" invalid when SSL support is not compiled in\n"
 msgid "gssencmode value \"%s\" invalid when GSSAPI support is not compiled in\n"
 msgstr "el valor gssencmode «%s» no es válido cuando no se ha compilado con soporte GSSAPI\n"
 
-#: fe-connect.c:1302
+#: fe-connect.c:1395
 #, c-format
 msgid "invalid target_session_attrs value: \"%s\"\n"
 msgstr "valor para target_session_attrs no válido: «%s»\n"
 
-#: fe-connect.c:1520
+#: fe-connect.c:1613
 #, c-format
 msgid "could not set socket to TCP no delay mode: %s\n"
 msgstr "no se pudo establecer el socket en modo TCP sin retardo: %s\n"
 
-#: fe-connect.c:1581
+#: fe-connect.c:1674
 #, c-format
 msgid ""
 "could not connect to server: %s\n"
@@ -262,7 +316,7 @@ msgstr ""
 "\t¿Está el servidor en ejecución localmente y aceptando\n"
 "\tconexiones en el socket de dominio Unix «%s»?\n"
 
-#: fe-connect.c:1618
+#: fe-connect.c:1711
 #, c-format
 msgid ""
 "could not connect to server: %s\n"
@@ -273,7 +327,7 @@ msgstr ""
 "\t¿Está el servidor en ejecución en el servidor «%s» (%s) y aceptando\n"
 "\tconexiones TCP/IP en el puerto %s?\n"
 
-#: fe-connect.c:1626
+#: fe-connect.c:1719
 #, c-format
 msgid ""
 "could not connect to server: %s\n"
@@ -284,440 +338,443 @@ msgstr ""
 "\t¿Está el servidor en ejecución en el servidor «%s» y aceptando\n"
 "\tconexiones TCP/IP en el puerto %s?\n"
 
-#: fe-connect.c:1677
+#: fe-connect.c:1789
 #, c-format
-#| msgid "invalid integer value \"%s\" for keyword \"%s\"\n"
 msgid "invalid integer value \"%s\" for connection option \"%s\"\n"
 msgstr "valor entero «%s» no válido para la opción de conexión «%s»\n"
 
-#: fe-connect.c:1707 fe-connect.c:1741 fe-connect.c:1776 fe-connect.c:1863
-#: fe-connect.c:2506
+#: fe-connect.c:1819 fe-connect.c:1853 fe-connect.c:1888 fe-connect.c:1975
+#: fe-connect.c:2619
 #, c-format
 msgid "setsockopt(%s) failed: %s\n"
 msgstr "setsockopt(%s) falló: %s\n"
 
-#: fe-connect.c:1829
+#: fe-connect.c:1941
 #, c-format
 msgid "WSAIoctl(SIO_KEEPALIVE_VALS) failed: %ui\n"
 msgstr "WSAIoctl(SIO_KEEPALIVE_VALS) failed: %ui\n"
 
-#: fe-connect.c:2197
+#: fe-connect.c:2312
 msgid "invalid connection state, probably indicative of memory corruption\n"
 msgstr "el estado de conexión no es válido, probablemente por corrupción de memoria\n"
 
-#: fe-connect.c:2265
+#: fe-connect.c:2378
 #, c-format
 msgid "invalid port number: \"%s\"\n"
 msgstr "número de puerto no válido: «%s»\n"
 
-#: fe-connect.c:2281
+#: fe-connect.c:2394
 #, c-format
 msgid "could not translate host name \"%s\" to address: %s\n"
 msgstr "no se pudo traducir el nombre «%s» a una dirección: %s\n"
 
-#: fe-connect.c:2294
+#: fe-connect.c:2407
 #, c-format
 msgid "could not parse network address \"%s\": %s\n"
 msgstr "no se pudo interpretar la dirección de red «%s»: %s\n"
 
-#: fe-connect.c:2307
+#: fe-connect.c:2420
 #, c-format
 msgid "Unix-domain socket path \"%s\" is too long (maximum %d bytes)\n"
 msgstr "la ruta del socket de dominio Unix «%s» es demasiado larga (máximo %d bytes)\n"
 
-#: fe-connect.c:2322
+#: fe-connect.c:2435
 #, c-format
 msgid "could not translate Unix-domain socket path \"%s\" to address: %s\n"
 msgstr "no se pudo traducir la ruta del socket Unix «%s» a una dirección: %s\n"
 
-#: fe-connect.c:2443
+#: fe-connect.c:2556
 #, c-format
 msgid "could not create socket: %s\n"
 msgstr "no se pudo crear el socket: %s\n"
 
-#: fe-connect.c:2465
+#: fe-connect.c:2578
 #, c-format
 msgid "could not set socket to nonblocking mode: %s\n"
 msgstr "no se pudo establecer el socket en modo no bloqueante: %s\n"
 
-#: fe-connect.c:2475
+#: fe-connect.c:2588
 #, c-format
 msgid "could not set socket to close-on-exec mode: %s\n"
 msgstr "no se pudo poner el socket en modo close-on-exec: %s\n"
 
-#: fe-connect.c:2493
+#: fe-connect.c:2606
 msgid "keepalives parameter must be an integer\n"
 msgstr "el parámetro de keepalives debe ser un entero\n"
 
-#: fe-connect.c:2633
+#: fe-connect.c:2746
 #, c-format
 msgid "could not get socket error status: %s\n"
 msgstr "no se pudo determinar el estado de error del socket: %s\n"
 
-#: fe-connect.c:2661
+#: fe-connect.c:2774
 #, c-format
 msgid "could not get client address from socket: %s\n"
 msgstr "no se pudo obtener la dirección del cliente desde el socket: %s\n"
 
-#: fe-connect.c:2703
+#: fe-connect.c:2816
 msgid "requirepeer parameter is not supported on this platform\n"
 msgstr "el parámetro requirepeer no está soportado en esta plataforma\n"
 
-#: fe-connect.c:2706
+#: fe-connect.c:2819
 #, c-format
 msgid "could not get peer credentials: %s\n"
 msgstr "no se pudo obtener credenciales de la contraparte: %s\n"
 
-#: fe-connect.c:2729
+#: fe-connect.c:2843
 #, c-format
 msgid "requirepeer specifies \"%s\", but actual peer user name is \"%s\"\n"
 msgstr "requirepeer especifica «%s», pero el nombre de usuario de la contraparte es «%s»\n"
 
-#: fe-connect.c:2764
+#: fe-connect.c:2883
 #, c-format
 msgid "could not send GSSAPI negotiation packet: %s\n"
 msgstr "no se pudo enviar el paquete de negociación GSSAPI: %s\n"
 
-#: fe-connect.c:2776
-#| msgid "GSSAPI encryption required, but was impossible (possibly no ccache, no server support, or using a local socket)\n"
+#: fe-connect.c:2895
 msgid "GSSAPI encryption required but was impossible (possibly no credential cache, no server support, or using a local socket)\n"
 msgstr "cifrado GSSAPI requerido, pero fue imposible (posiblemente no hay cache de credenciales, no hay soporte de servidor, o se está usando un socket local)\n"
 
-#: fe-connect.c:2803
+#: fe-connect.c:2922
 #, c-format
 msgid "could not send SSL negotiation packet: %s\n"
 msgstr "no se pudo enviar el paquete de negociación SSL: %s\n"
 
-#: fe-connect.c:2842
+#: fe-connect.c:2961
 #, c-format
 msgid "could not send startup packet: %s\n"
 msgstr "no se pudo enviar el paquete de inicio: %s\n"
 
-#: fe-connect.c:2912
+#: fe-connect.c:3031
 msgid "server does not support SSL, but SSL was required\n"
 msgstr "el servidor no soporta SSL, pero SSL es requerida\n"
 
-#: fe-connect.c:2938
+#: fe-connect.c:3057
 #, c-format
 msgid "received invalid response to SSL negotiation: %c\n"
 msgstr "se ha recibido una respuesta no válida en la negociación SSL: %c\n"
 
-#: fe-connect.c:3028
+#: fe-connect.c:3147
 msgid "server doesn't support GSSAPI encryption, but it was required\n"
 msgstr "el servidor no soporta cifrado GSSAPI, pero es requerida\n"
 
-#: fe-connect.c:3039
+#: fe-connect.c:3158
 #, c-format
 msgid "received invalid response to GSSAPI negotiation: %c\n"
 msgstr "se ha recibido una respuesta no válida en la negociación GSSAPI: %c\n"
 
-#: fe-connect.c:3107 fe-connect.c:3140
+#: fe-connect.c:3225 fe-connect.c:3256
 #, c-format
 msgid "expected authentication request from server, but received %c\n"
 msgstr "se esperaba una petición de autentificación desde el servidor, pero se ha recibido %c\n"
 
-#: fe-connect.c:3387
+#: fe-connect.c:3502
 msgid "unexpected message from server during startup\n"
 msgstr "se ha recibido un mensaje inesperado del servidor durante el inicio\n"
 
-#: fe-connect.c:3614
+#: fe-connect.c:3707
 #, c-format
 msgid "could not make a writable connection to server \"%s:%s\"\n"
 msgstr "no se pudo establecer una conexión de escritura al servidor: «%s:%s»\n"
 
-#: fe-connect.c:3660
+#: fe-connect.c:3753
 #, c-format
 msgid "test \"SHOW transaction_read_only\" failed on server \"%s:%s\"\n"
 msgstr "la prueba «SHOW transaction_read_only» falló en el servidor «%s:%s»\n"
 
-#: fe-connect.c:3675
+#: fe-connect.c:3768
 #, c-format
 msgid "invalid connection state %d, probably indicative of memory corruption\n"
 msgstr "estado de conexión no válido %d, probablemente por corrupción de memoria\n"
 
-#: fe-connect.c:4117 fe-connect.c:4177
+#: fe-connect.c:4220 fe-connect.c:4280
 #, c-format
 msgid "PGEventProc \"%s\" failed during PGEVT_CONNRESET event\n"
 msgstr "PGEventProc «%s» falló durante el evento PGEVT_CONNRESET\n"
 
-#: fe-connect.c:4524
+#: fe-connect.c:4627
 #, c-format
 msgid "invalid LDAP URL \"%s\": scheme must be ldap://\n"
 msgstr "URL LDAP no válida «%s»: el esquema debe ser ldap://\n"
 
-#: fe-connect.c:4539
+#: fe-connect.c:4642
 #, c-format
 msgid "invalid LDAP URL \"%s\": missing distinguished name\n"
 msgstr "URL LDAP no válida «%s»: distinguished name faltante\n"
 
-#: fe-connect.c:4550 fe-connect.c:4603
+#: fe-connect.c:4654 fe-connect.c:4709
 #, c-format
 msgid "invalid LDAP URL \"%s\": must have exactly one attribute\n"
 msgstr "URL LDAP no válida «%s»: debe tener exactamente un atributo\n"
 
-#: fe-connect.c:4560 fe-connect.c:4617
+#: fe-connect.c:4665 fe-connect.c:4724
 #, c-format
 msgid "invalid LDAP URL \"%s\": must have search scope (base/one/sub)\n"
 msgstr "URL LDAP no válida «%s»: debe tener ámbito de búsqueda (base/one/sub)\n"
 
-#: fe-connect.c:4571
+#: fe-connect.c:4676
 #, c-format
 msgid "invalid LDAP URL \"%s\": no filter\n"
 msgstr "URL LDAP no válida «%s»: no tiene filtro\n"
 
-#: fe-connect.c:4592
+#: fe-connect.c:4697
 #, c-format
 msgid "invalid LDAP URL \"%s\": invalid port number\n"
 msgstr "URL LDAP no válida «%s»: número de puerto no válido\n"
 
-#: fe-connect.c:4626
+#: fe-connect.c:4733
 msgid "could not create LDAP structure\n"
 msgstr "no se pudo crear estructura LDAP\n"
 
-#: fe-connect.c:4702
+#: fe-connect.c:4809
 #, c-format
 msgid "lookup on LDAP server failed: %s\n"
 msgstr "búsqueda en servidor LDAP falló: %s\n"
 
-#: fe-connect.c:4713
+#: fe-connect.c:4820
 msgid "more than one entry found on LDAP lookup\n"
 msgstr "se encontro más de una entrada en búsqueda LDAP\n"
 
-#: fe-connect.c:4714 fe-connect.c:4726
+#: fe-connect.c:4821 fe-connect.c:4833
 msgid "no entry found on LDAP lookup\n"
 msgstr "no se encontró ninguna entrada en búsqueda LDAP\n"
 
-#: fe-connect.c:4737 fe-connect.c:4750
+#: fe-connect.c:4844 fe-connect.c:4857
 msgid "attribute has no values on LDAP lookup\n"
 msgstr "la búsqueda LDAP entregó atributo sin valores\n"
 
-#: fe-connect.c:4802 fe-connect.c:4821 fe-connect.c:5354
+#: fe-connect.c:4909 fe-connect.c:4928 fe-connect.c:5460
 #, c-format
 msgid "missing \"=\" after \"%s\" in connection info string\n"
 msgstr "falta «=» después de «%s» en la cadena de información de la conexión\n"
 
-#: fe-connect.c:4894 fe-connect.c:5539 fe-connect.c:6313
+#: fe-connect.c:5001 fe-connect.c:5645 fe-connect.c:6419
 #, c-format
 msgid "invalid connection option \"%s\"\n"
 msgstr "opción de conexión no válida «%s»\n"
 
-#: fe-connect.c:4910 fe-connect.c:5403
+#: fe-connect.c:5017 fe-connect.c:5509
 msgid "unterminated quoted string in connection info string\n"
 msgstr "cadena de caracteres entre comillas sin terminar en la cadena de información de conexión\n"
 
-#: fe-connect.c:4993
+#: fe-connect.c:5100
 #, c-format
 msgid "definition of service \"%s\" not found\n"
 msgstr "la definición de servicio «%s» no fue encontrada\n"
 
-#: fe-connect.c:5016
+#: fe-connect.c:5123
 #, c-format
 msgid "service file \"%s\" not found\n"
 msgstr "el archivo de servicio «%s» no fue encontrado\n"
 
-#: fe-connect.c:5031
+#: fe-connect.c:5138
 #, c-format
 msgid "line %d too long in service file \"%s\"\n"
 msgstr "la línea %d es demasiado larga en archivo de servicio «%s»\n"
 
-#: fe-connect.c:5104 fe-connect.c:5148
+#: fe-connect.c:5210 fe-connect.c:5254
 #, c-format
 msgid "syntax error in service file \"%s\", line %d\n"
 msgstr "error de sintaxis en archivo de servicio «%s», línea %d\n"
 
-#: fe-connect.c:5115
+#: fe-connect.c:5221
 #, c-format
 msgid "nested service specifications not supported in service file \"%s\", line %d\n"
 msgstr "especificaciones de servicio anidadas no soportadas en archivo de servicio «%s», línea %d\n"
 
-#: fe-connect.c:5835
+#: fe-connect.c:5941
 #, c-format
 msgid "invalid URI propagated to internal parser routine: \"%s\"\n"
 msgstr "URI no válida propagada a rutina interna de procesamiento: «%s»\n"
 
-#: fe-connect.c:5912
+#: fe-connect.c:6018
 #, c-format
 msgid "end of string reached when looking for matching \"]\" in IPv6 host address in URI: \"%s\"\n"
 msgstr "se encontró el fin de la cadena mientras se buscaba el «]» correspondiente en dirección IPv6 en URI: «%s»\n"
 
-#: fe-connect.c:5919
+#: fe-connect.c:6025
 #, c-format
 msgid "IPv6 host address may not be empty in URI: \"%s\"\n"
 msgstr "la dirección IPv6 no puede ser vacía en la URI: «%s»\n"
 
-#: fe-connect.c:5934
+#: fe-connect.c:6040
 #, c-format
 msgid "unexpected character \"%c\" at position %d in URI (expected \":\" or \"/\"): \"%s\"\n"
 msgstr "carácter «%c» inesperado en la posición %d en URI (se esperaba «:» o «/»): «%s»\n"
 
-#: fe-connect.c:6063
+#: fe-connect.c:6169
 #, c-format
 msgid "extra key/value separator \"=\" in URI query parameter: \"%s\"\n"
 msgstr "separador llave/valor «=» extra en parámetro de la URI: «%s»\n"
 
-#: fe-connect.c:6083
+#: fe-connect.c:6189
 #, c-format
 msgid "missing key/value separator \"=\" in URI query parameter: \"%s\"\n"
 msgstr "separador llave/valor «=» faltante en parámetro de la URI: «%s»\n"
 
-#: fe-connect.c:6134
+#: fe-connect.c:6240
 #, c-format
 msgid "invalid URI query parameter: \"%s\"\n"
 msgstr "parámetro de URI no válido: «%s»\n"
 
-#: fe-connect.c:6208
+#: fe-connect.c:6314
 #, c-format
 msgid "invalid percent-encoded token: \"%s\"\n"
 msgstr "elemento escapado con %% no válido: «%s»\n"
 
-#: fe-connect.c:6218
+#: fe-connect.c:6324
 #, c-format
 msgid "forbidden value %%00 in percent-encoded value: \"%s\"\n"
 msgstr "valor no permitido %%00 en valor escapado con %%: «%s»\n"
 
-#: fe-connect.c:6581
+#: fe-connect.c:6687
 msgid "connection pointer is NULL\n"
 msgstr "el puntero de conexión es NULL\n"
 
-#: fe-connect.c:6879
+#: fe-connect.c:6986
 #, c-format
 msgid "WARNING: password file \"%s\" is not a plain file\n"
 msgstr "ADVERTENCIA: El archivo de claves «%s» no es un archivo plano\n"
 
-#: fe-connect.c:6888
+#: fe-connect.c:6995
 #, c-format
 msgid "WARNING: password file \"%s\" has group or world access; permissions should be u=rw (0600) or less\n"
 msgstr "ADVERTENCIA: El archivo de claves «%s» tiene permiso de lectura para el grupo u otros; los permisos deberían ser u=rw (0600) o menos\n"
 
-#: fe-connect.c:6982
+#: fe-connect.c:7036
+#, fuzzy, c-format
+#| msgid "line %d too long in service file \"%s\"\n"
+msgid "WARNING: line %d too long in password file \"%s\"\n"
+msgstr "la línea %d es demasiado larga en archivo de servicio «%s»\n"
+
+#: fe-connect.c:7115
 #, c-format
 msgid "password retrieved from file \"%s\"\n"
 msgstr "contraseña obtenida desde el archivo «%s»\n"
 
-#: fe-exec.c:445 fe-exec.c:2822
+#: fe-exec.c:444 fe-exec.c:2821
 #, c-format
 msgid "row number %d is out of range 0..%d"
 msgstr "el número de fila %d está fuera del rango 0..%d"
 
-#: fe-exec.c:506 fe-protocol2.c:502 fe-protocol2.c:537 fe-protocol2.c:1056
-#: fe-protocol3.c:208 fe-protocol3.c:235 fe-protocol3.c:252 fe-protocol3.c:332
-#: fe-protocol3.c:727 fe-protocol3.c:958
+#: fe-exec.c:505 fe-protocol2.c:497 fe-protocol2.c:532 fe-protocol2.c:1050
+#: fe-protocol3.c:206 fe-protocol3.c:233 fe-protocol3.c:250 fe-protocol3.c:330
+#: fe-protocol3.c:723 fe-protocol3.c:954
 msgid "out of memory"
 msgstr "memoria agotada"
 
-#: fe-exec.c:507 fe-protocol2.c:1402 fe-protocol3.c:1911
+#: fe-exec.c:506 fe-protocol2.c:1396 fe-protocol3.c:1907
 #, c-format
 msgid "%s"
 msgstr "%s"
 
-#: fe-exec.c:816
+#: fe-exec.c:815
 msgid "write to server failed\n"
 msgstr "falló escritura al servidor\n"
 
-#: fe-exec.c:897
+#: fe-exec.c:896
 msgid "NOTICE"
 msgstr "AVISO"
 
-#: fe-exec.c:955
+#: fe-exec.c:954
 msgid "PGresult cannot support more than INT_MAX tuples"
 msgstr "PGresult no puede soportar un número de tuplas mayor que INT_MAX"
 
-#: fe-exec.c:967
+#: fe-exec.c:966
 msgid "size_t overflow"
 msgstr "desbordamiento de size_t"
 
-#: fe-exec.c:1244 fe-exec.c:1302 fe-exec.c:1348
+#: fe-exec.c:1243 fe-exec.c:1301 fe-exec.c:1347
 msgid "command string is a null pointer\n"
 msgstr "la cadena de orden es un puntero nulo\n"
 
-#: fe-exec.c:1308 fe-exec.c:1354 fe-exec.c:1449
+#: fe-exec.c:1307 fe-exec.c:1353 fe-exec.c:1448
 msgid "number of parameters must be between 0 and 65535\n"
 msgstr "el número de parámetros debe estar entre 0 y 65535\n"
 
-#: fe-exec.c:1342 fe-exec.c:1443
+#: fe-exec.c:1341 fe-exec.c:1442
 msgid "statement name is a null pointer\n"
 msgstr "el nombre de sentencia es un puntero nulo\n"
 
-#: fe-exec.c:1362 fe-exec.c:1525 fe-exec.c:2234 fe-exec.c:2436
+#: fe-exec.c:1361 fe-exec.c:1524 fe-exec.c:2233 fe-exec.c:2435
 msgid "function requires at least protocol version 3.0\n"
 msgstr "la función requiere protocolo 3.0 o superior\n"
 
-#: fe-exec.c:1480
+#: fe-exec.c:1479
 msgid "no connection to the server\n"
 msgstr "no hay conexión con el servidor\n"
 
-#: fe-exec.c:1487
+#: fe-exec.c:1486
 msgid "another command is already in progress\n"
 msgstr "hay otra orden en ejecución\n"
 
-#: fe-exec.c:1601
+#: fe-exec.c:1600
 msgid "length must be given for binary parameter\n"
 msgstr "el largo debe ser especificado para un parámetro binario\n"
 
-#: fe-exec.c:1864
+#: fe-exec.c:1863
 #, c-format
 msgid "unexpected asyncStatus: %d\n"
 msgstr "asyncStatus no esperado: %d\n"
 
-#: fe-exec.c:1884
+#: fe-exec.c:1883
 #, c-format
 msgid "PGEventProc \"%s\" failed during PGEVT_RESULTCREATE event\n"
 msgstr "PGEventProc «%s» falló durante el evento PGEVT_RESULTCREATE\n"
 
-#: fe-exec.c:2044
+#: fe-exec.c:2043
 msgid "COPY terminated by new PQexec"
 msgstr "COPY terminado por un nuevo PQexec"
 
-#: fe-exec.c:2052
+#: fe-exec.c:2051
 msgid "COPY IN state must be terminated first\n"
 msgstr "el estado COPY IN debe ser terminado primero\n"
 
-#: fe-exec.c:2072
+#: fe-exec.c:2071
 msgid "COPY OUT state must be terminated first\n"
 msgstr "el estado COPY OUT debe ser terminado primero\n"
 
-#: fe-exec.c:2080
+#: fe-exec.c:2079
 msgid "PQexec not allowed during COPY BOTH\n"
 msgstr "PQexec no está permitido durante COPY BOTH\n"
 
-#: fe-exec.c:2326 fe-exec.c:2393 fe-exec.c:2483 fe-protocol2.c:1359
-#: fe-protocol3.c:1842
+#: fe-exec.c:2325 fe-exec.c:2392 fe-exec.c:2482 fe-protocol2.c:1353
+#: fe-protocol3.c:1838
 msgid "no COPY in progress\n"
 msgstr "no hay COPY alguno en ejecución\n"
 
-#: fe-exec.c:2673
+#: fe-exec.c:2672
 msgid "connection in wrong state\n"
 msgstr "la conexión está en un estado incorrecto\n"
 
-#: fe-exec.c:2704
+#: fe-exec.c:2703
 msgid "invalid ExecStatusType code"
 msgstr "el código de ExecStatusType no es válido"
 
-#: fe-exec.c:2731
+#: fe-exec.c:2730
 msgid "PGresult is not an error result\n"
 msgstr "PGresult no es un resultado de error\n"
 
-#: fe-exec.c:2806 fe-exec.c:2829
+#: fe-exec.c:2805 fe-exec.c:2828
 #, c-format
 msgid "column number %d is out of range 0..%d"
 msgstr "el número de columna %d está fuera del rango 0..%d"
 
-#: fe-exec.c:2844
+#: fe-exec.c:2843
 #, c-format
 msgid "parameter number %d is out of range 0..%d"
 msgstr "el número de parámetro %d está fuera del rango 0..%d"
 
-#: fe-exec.c:3154
+#: fe-exec.c:3153
 #, c-format
 msgid "could not interpret result from server: %s"
 msgstr "no se pudo interpretar el resultado del servidor: %s"
 
-#: fe-exec.c:3393 fe-exec.c:3477
+#: fe-exec.c:3392 fe-exec.c:3476
 msgid "incomplete multibyte character\n"
 msgstr "carácter multibyte incompleto\n"
 
 #: fe-gssapi-common.c:124
-#| msgid "GSSAPI unwrap error"
 msgid "GSSAPI name import error"
 msgstr "error de importación de nombre de GSSAPI"
 
@@ -804,22 +861,22 @@ msgstr "no se puede determinar el OID de la función loread\n"
 msgid "cannot determine OID of function lowrite\n"
 msgstr "no se puede determinar el OID de la función lowrite\n"
 
-#: fe-misc.c:290
+#: fe-misc.c:289
 #, c-format
 msgid "integer of size %lu not supported by pqGetInt"
 msgstr "el entero de tamaño %lu no está soportado por pqGetInt"
 
-#: fe-misc.c:326
+#: fe-misc.c:325
 #, c-format
 msgid "integer of size %lu not supported by pqPutInt"
 msgstr "el entero de tamaño %lu no está soportado por pqPutInt"
 
-#: fe-misc.c:637 fe-misc.c:859
+#: fe-misc.c:636 fe-misc.c:857
 msgid "connection not open\n"
 msgstr "la conexión no está abierta\n"
 
-#: fe-misc.c:807 fe-secure-openssl.c:206 fe-secure-openssl.c:314
-#: fe-secure.c:268 fe-secure.c:385
+#: fe-misc.c:805 fe-secure-openssl.c:209 fe-secure-openssl.c:316
+#: fe-secure.c:267 fe-secure.c:383
 msgid ""
 "server closed the connection unexpectedly\n"
 "\tThis probably means the server terminated abnormally\n"
@@ -829,181 +886,181 @@ msgstr ""
 "\tProbablemente se debe a que el servidor terminó de manera anormal\n"
 "\tantes o durante el procesamiento de la petición.\n"
 
-#: fe-misc.c:1046
+#: fe-misc.c:1044
 msgid "timeout expired\n"
 msgstr "tiempo de espera agotado\n"
 
-#: fe-misc.c:1091
+#: fe-misc.c:1089
 msgid "invalid socket\n"
 msgstr "socket no válido\n"
 
-#: fe-misc.c:1114
+#: fe-misc.c:1112
 #, c-format
 msgid "select() failed: %s\n"
 msgstr "select() fallida: %s\n"
 
-#: fe-protocol2.c:90
+#: fe-protocol2.c:87
 #, c-format
 msgid "invalid setenv state %c, probably indicative of memory corruption\n"
 msgstr "el estado de setenv %c no es válido, probablemente por corrupción de memoria\n"
 
-#: fe-protocol2.c:389
+#: fe-protocol2.c:384
 #, c-format
 msgid "invalid state %c, probably indicative of memory corruption\n"
 msgstr "el estado %c no es válido, probablemente por corrupción de memoria\n"
 
-#: fe-protocol2.c:478 fe-protocol3.c:185
+#: fe-protocol2.c:473 fe-protocol3.c:183
 #, c-format
 msgid "message type 0x%02x arrived from server while idle"
 msgstr "un mensaje de tipo 0x%02x llegó del servidor estando inactivo"
 
-#: fe-protocol2.c:528
+#: fe-protocol2.c:523
 #, c-format
 msgid "unexpected character %c following empty query response (\"I\" message)"
 msgstr "carácter %c no esperado, siguiendo una respuesta de consulta vacía (mensaje «I»)"
 
-#: fe-protocol2.c:594
+#: fe-protocol2.c:589
 #, c-format
 msgid "server sent data (\"D\" message) without prior row description (\"T\" message)"
 msgstr "el servidor envió datos (mensaje «D») sin precederlos con una descripción de fila (mensaje «T»)"
 
-#: fe-protocol2.c:612
+#: fe-protocol2.c:607
 #, c-format
 msgid "server sent binary data (\"B\" message) without prior row description (\"T\" message)"
 msgstr "el servidor envió datos binarios (mensaje «B») sin precederlos con una description de fila (mensaje «T»)"
 
-#: fe-protocol2.c:632 fe-protocol3.c:411
+#: fe-protocol2.c:626 fe-protocol3.c:408
 #, c-format
 msgid "unexpected response from server; first received character was \"%c\"\n"
 msgstr "se ha recibido una respuesta inesperada del servidor; el primer carácter recibido fue «%c»\n"
 
-#: fe-protocol2.c:761 fe-protocol2.c:936 fe-protocol3.c:626 fe-protocol3.c:853
+#: fe-protocol2.c:755 fe-protocol2.c:930 fe-protocol3.c:622 fe-protocol3.c:849
 msgid "out of memory for query result"
 msgstr "no hay suficiente memoria para el resultado de la consulta"
 
-#: fe-protocol2.c:1414
+#: fe-protocol2.c:1408
 #, c-format
 msgid "lost synchronization with server, resetting connection"
 msgstr "se perdió la sincronía con el servidor, reseteando la conexión"
 
-#: fe-protocol2.c:1536 fe-protocol2.c:1568 fe-protocol3.c:2099
+#: fe-protocol2.c:1530 fe-protocol2.c:1562 fe-protocol3.c:2095
 #, c-format
 msgid "protocol error: id=0x%x\n"
 msgstr "error de protocolo: id=0x%x\n"
 
-#: fe-protocol3.c:367
+#: fe-protocol3.c:365
 msgid "server sent data (\"D\" message) without prior row description (\"T\" message)\n"
 msgstr "el servidor envió datos (mensaje «D») sin precederlos con una descripción de fila (mensaje «T»)\n"
 
-#: fe-protocol3.c:432
+#: fe-protocol3.c:429
 #, c-format
 msgid "message contents do not agree with length in message type \"%c\"\n"
 msgstr "el contenido del mensaje no concuerda con el largo, en el mensaje tipo «%c»\n"
 
-#: fe-protocol3.c:453
+#: fe-protocol3.c:449
 #, c-format
 msgid "lost synchronization with server: got message type \"%c\", length %d\n"
 msgstr "se perdió la sincronía con el servidor: se recibió un mensaje de tipo «%c», largo %d\n"
 
-#: fe-protocol3.c:504 fe-protocol3.c:544
+#: fe-protocol3.c:500 fe-protocol3.c:540
 msgid "insufficient data in \"T\" message"
 msgstr "datos insuficientes en el mensaje «T»"
 
-#: fe-protocol3.c:577
+#: fe-protocol3.c:573
 msgid "extraneous data in \"T\" message"
 msgstr "datos ininteligibles en mensaje «T»"
 
-#: fe-protocol3.c:690
+#: fe-protocol3.c:686
 msgid "extraneous data in \"t\" message"
 msgstr "datos ininteligibles en mensaje «t»"
 
-#: fe-protocol3.c:761 fe-protocol3.c:793 fe-protocol3.c:811
+#: fe-protocol3.c:757 fe-protocol3.c:789 fe-protocol3.c:807
 msgid "insufficient data in \"D\" message"
 msgstr "datos insuficientes en el mensaje «D»"
 
-#: fe-protocol3.c:767
+#: fe-protocol3.c:763
 msgid "unexpected field count in \"D\" message"
 msgstr "cantidad de campos inesperada en mensaje «D»"
 
-#: fe-protocol3.c:820
+#: fe-protocol3.c:816
 msgid "extraneous data in \"D\" message"
 msgstr "datos ininteligibles en mensaje «D»"
 
-#: fe-protocol3.c:1012
+#: fe-protocol3.c:1008
 msgid "no error message available\n"
 msgstr "no hay mensaje de error disponible\n"
 
 #. translator: %s represents a digit string
-#: fe-protocol3.c:1060 fe-protocol3.c:1079
+#: fe-protocol3.c:1056 fe-protocol3.c:1075
 #, c-format
 msgid " at character %s"
 msgstr " en el carácter %s"
 
-#: fe-protocol3.c:1092
+#: fe-protocol3.c:1088
 #, c-format
 msgid "DETAIL:  %s\n"
 msgstr "DETALLE:  %s\n"
 
-#: fe-protocol3.c:1095
+#: fe-protocol3.c:1091
 #, c-format
 msgid "HINT:  %s\n"
 msgstr "SUGERENCIA:  %s\n"
 
-#: fe-protocol3.c:1098
+#: fe-protocol3.c:1094
 #, c-format
 msgid "QUERY:  %s\n"
 msgstr "CONSULTA:  %s\n"
 
-#: fe-protocol3.c:1105
+#: fe-protocol3.c:1101
 #, c-format
 msgid "CONTEXT:  %s\n"
 msgstr "CONTEXTO:  %s\n"
 
-#: fe-protocol3.c:1114
+#: fe-protocol3.c:1110
 #, c-format
 msgid "SCHEMA NAME:  %s\n"
 msgstr "NOMBRE DE ESQUEMA:  %s\n"
 
-#: fe-protocol3.c:1118
+#: fe-protocol3.c:1114
 #, c-format
 msgid "TABLE NAME:  %s\n"
 msgstr "NOMBRE DE TABLA:  %s\n"
 
-#: fe-protocol3.c:1122
+#: fe-protocol3.c:1118
 #, c-format
 msgid "COLUMN NAME:  %s\n"
 msgstr "NOMBRE DE COLUMNA:  %s\n"
 
-#: fe-protocol3.c:1126
+#: fe-protocol3.c:1122
 #, c-format
 msgid "DATATYPE NAME:  %s\n"
 msgstr "NOMBRE TIPO DE DATO:  %s\n"
 
-#: fe-protocol3.c:1130
+#: fe-protocol3.c:1126
 #, c-format
 msgid "CONSTRAINT NAME:  %s\n"
 msgstr "NOMBRE DE RESTRICCIÓN:  %s\n"
 
-#: fe-protocol3.c:1142
+#: fe-protocol3.c:1138
 msgid "LOCATION:  "
 msgstr "UBICACIÓN:  "
 
-#: fe-protocol3.c:1144
+#: fe-protocol3.c:1140
 #, c-format
 msgid "%s, "
 msgstr "%s, "
 
-#: fe-protocol3.c:1146
+#: fe-protocol3.c:1142
 #, c-format
 msgid "%s:%s"
 msgstr "%s:%s"
 
-#: fe-protocol3.c:1341
+#: fe-protocol3.c:1337
 #, c-format
 msgid "LINE %d: "
 msgstr "LÍNEA %d: "
 
-#: fe-protocol3.c:1736
+#: fe-protocol3.c:1732
 msgid "PQgetline: not doing text COPY OUT\n"
 msgstr "PQgetline: no se está haciendo COPY OUT de texto\n"
 
@@ -1024,86 +1081,81 @@ msgstr "el certificado de servidor para «%s» no coincide con el nombre de serv
 msgid "could not get server's host name from server certificate\n"
 msgstr "no se pudo obtener el nombre de servidor desde el certificado del servidor\n"
 
-#: fe-secure-gssapi.c:160
+#: fe-secure-gssapi.c:201
 msgid "GSSAPI wrap error"
 msgstr "error de «wrap» de GSSAPI"
 
-#: fe-secure-gssapi.c:166
-#| msgid "GSSAPI did not provide confidentiality"
+#: fe-secure-gssapi.c:209
 msgid "outgoing GSSAPI message would not use confidentiality\n"
 msgstr "mensaje GSSAPI de saluda no proveería confidencialidad\n"
 
-#: fe-secure-gssapi.c:173
+#: fe-secure-gssapi.c:217
 #, c-format
 msgid "client tried to send oversize GSSAPI packet (%zu > %zu)\n"
 msgstr "el cliente intentó enviar un paquete GSSAPI demasiado grande (%zu > %zu)\n"
 
-#: fe-secure-gssapi.c:291 fe-secure-gssapi.c:497
+#: fe-secure-gssapi.c:354 fe-secure-gssapi.c:596
 #, c-format
-#| msgid "oversize GSSAPI packet sent by the client: %zu bytes"
 msgid "oversize GSSAPI packet sent by the server (%zu > %zu)\n"
 msgstr "paquete GSSAPI demasiado grande enviado por el servidor (%zu > %zu)\n"
 
-#: fe-secure-gssapi.c:327
+#: fe-secure-gssapi.c:393
 msgid "GSSAPI unwrap error"
 msgstr "error de «unwrap» de GSSAPI"
 
-#: fe-secure-gssapi.c:335
-#| msgid "GSSAPI did not provide confidentiality"
+#: fe-secure-gssapi.c:403
 msgid "incoming GSSAPI message did not use confidentiality\n"
 msgstr "mensaje GSSAPI entrante no usó confidencialidad\n"
 
-#: fe-secure-gssapi.c:543
-#| msgid "could not accept SSPI security context"
+#: fe-secure-gssapi.c:642
 msgid "could not initiate GSSAPI security context"
 msgstr "no se pudo iniciar un contexto de seguridad GSSAPI"
 
-#: fe-secure-gssapi.c:568
+#: fe-secure-gssapi.c:673
 msgid "GSSAPI size check error"
 msgstr "error de verificación de tamaño GSSAPI"
 
-#: fe-secure-gssapi.c:577
-#| msgid "GSSAPI context error"
+#: fe-secure-gssapi.c:684
 msgid "GSSAPI context establishment error"
 msgstr "error de establecimiento de contexto de GSSAPI"
 
-#: fe-secure-openssl.c:211 fe-secure-openssl.c:319 fe-secure-openssl.c:1219
+#: fe-secure-openssl.c:214 fe-secure-openssl.c:321 fe-secure-openssl.c:1291
 #, c-format
 msgid "SSL SYSCALL error: %s\n"
 msgstr "ERROR en llamada SSL: %s\n"
 
-#: fe-secure-openssl.c:218 fe-secure-openssl.c:326 fe-secure-openssl.c:1223
+#: fe-secure-openssl.c:221 fe-secure-openssl.c:328 fe-secure-openssl.c:1295
 msgid "SSL SYSCALL error: EOF detected\n"
 msgstr "ERROR en llamada SSL: detectado fin de archivo\n"
 
-#: fe-secure-openssl.c:229 fe-secure-openssl.c:337 fe-secure-openssl.c:1232
+#: fe-secure-openssl.c:232 fe-secure-openssl.c:339 fe-secure-openssl.c:1304
 #, c-format
 msgid "SSL error: %s\n"
 msgstr "error de SSL: %s\n"
 
-#: fe-secure-openssl.c:244 fe-secure-openssl.c:352
+#: fe-secure-openssl.c:247 fe-secure-openssl.c:354
 msgid "SSL connection has been closed unexpectedly\n"
 msgstr "la conexión SSL se ha cerrado inesperadamente\n"
 
-#: fe-secure-openssl.c:250 fe-secure-openssl.c:358 fe-secure-openssl.c:1241
+#: fe-secure-openssl.c:253 fe-secure-openssl.c:360 fe-secure-openssl.c:1313
 #, c-format
 msgid "unrecognized SSL error code: %d\n"
 msgstr "código de error SSL no reconocido: %d\n"
 
-#: fe-secure-openssl.c:398
+#: fe-secure-openssl.c:400
 msgid "could not determine server certificate signature algorithm\n"
 msgstr "no se pudo determinar el algoritmo de firma del certificado del servidor\n"
 
-#: fe-secure-openssl.c:419
+#: fe-secure-openssl.c:421
 #, c-format
 msgid "could not find digest for NID %s\n"
 msgstr "no se pudo encontrar «digest» para el NID %s\n"
 
-#: fe-secure-openssl.c:429
+#: fe-secure-openssl.c:431
 msgid "could not generate peer certificate hash\n"
 msgstr "no se pudo generar hash de certificado de la contraparte\n"
 
-#: fe-secure-openssl.c:486
+#: fe-secure-openssl.c:488
 msgid "SSL certificate's name entry is missing\n"
 msgstr "falta el elemento de nombre en el certificado SSL\n"
 
@@ -1112,17 +1164,36 @@ msgstr "falta el elemento de nombre en el certificado SSL\n"
 msgid "could not create SSL context: %s\n"
 msgstr "no se pudo crear un contexto SSL: %s\n"
 
-#: fe-secure-openssl.c:852
+#: fe-secure-openssl.c:854
+#, fuzzy, c-format
+#| msgid "invalid integer value \"%s\" for connection option \"%s\"\n"
+msgid "invalid value \"%s\" for minimum version of SSL protocol\n"
+msgstr "valor entero «%s» no válido para la opción de conexión «%s»\n"
+
+#: fe-secure-openssl.c:865
+#, fuzzy, c-format
+#| msgid "could not set minimum SSL protocol version"
+msgid "could not set minimum version of SSL protocol: %s\n"
+msgstr "no se pudo definir la versión mínima de protocolo SSL"
+
+#: fe-secure-openssl.c:883
+#, fuzzy, c-format
+#| msgid "invalid value for \"buffering\" option"
+msgid "invalid value \"%s\" for maximum version of SSL protocol\n"
+msgstr "valor no válido para la opción «buffering»"
+
+#: fe-secure-openssl.c:894
+#, fuzzy, c-format
+#| msgid "could not set maximum SSL protocol version"
+msgid "could not set maximum version of SSL protocol: %s\n"
+msgstr "no se pudo definir la versión máxima de protocolo SSL"
+
+#: fe-secure-openssl.c:930
 #, c-format
 msgid "could not read root certificate file \"%s\": %s\n"
 msgstr "no se pudo leer la lista de certificado raíz «%s»: %s\n"
 
-#: fe-secure-openssl.c:880
-#, c-format
-msgid "SSL library does not support CRL certificates (file \"%s\")\n"
-msgstr "la biblioteca SSL no soporta certificados CRL (archivo «%s»)\n"
-
-#: fe-secure-openssl.c:908
+#: fe-secure-openssl.c:974
 msgid ""
 "could not get home directory to locate root certificate file\n"
 "Either provide the file or change sslmode to disable server certificate verification.\n"
@@ -1130,7 +1201,7 @@ msgstr ""
 "no se pudo obtener el directorio «home» para ubicar el archivo del certificado raíz\n"
 "Debe ya sea entregar este archivo, o bien cambiar sslmode para deshabilitar la verificación de certificados del servidor.\n"
 
-#: fe-secure-openssl.c:912
+#: fe-secure-openssl.c:978
 #, c-format
 msgid ""
 "root certificate file \"%s\" does not exist\n"
@@ -1139,90 +1210,95 @@ msgstr ""
 "el archivo de certificado raíz «%s» no existe\n"
 "Debe ya sea entregar este archivo, o bien cambiar sslmode para deshabilitar la verificación de certificados del servidor.\n"
 
-#: fe-secure-openssl.c:943
+#: fe-secure-openssl.c:1009
 #, c-format
 msgid "could not open certificate file \"%s\": %s\n"
 msgstr "no se pudo abrir el archivo de certificado «%s»: %s\n"
 
-#: fe-secure-openssl.c:962
+#: fe-secure-openssl.c:1028
 #, c-format
 msgid "could not read certificate file \"%s\": %s\n"
 msgstr "no se pudo leer el archivo de certificado «%s»: %s\n"
 
-#: fe-secure-openssl.c:987
+#: fe-secure-openssl.c:1053
 #, c-format
 msgid "could not establish SSL connection: %s\n"
 msgstr "no se pudo establecer conexión SSL: %s\n"
 
-#: fe-secure-openssl.c:1041
+#: fe-secure-openssl.c:1107
 #, c-format
 msgid "could not load SSL engine \"%s\": %s\n"
 msgstr "no se pudo cargar el motor SSL «%s»: %s\n"
 
-#: fe-secure-openssl.c:1053
+#: fe-secure-openssl.c:1119
 #, c-format
 msgid "could not initialize SSL engine \"%s\": %s\n"
 msgstr "no se pudo inicializar el motor SSL «%s»: %s\n"
 
-#: fe-secure-openssl.c:1069
+#: fe-secure-openssl.c:1135
 #, c-format
 msgid "could not read private SSL key \"%s\" from engine \"%s\": %s\n"
 msgstr "no se pudo leer el archivo de la llave privada SSL «%s» desde el motor «%s»: %s\n"
 
-#: fe-secure-openssl.c:1083
+#: fe-secure-openssl.c:1149
 #, c-format
 msgid "could not load private SSL key \"%s\" from engine \"%s\": %s\n"
 msgstr "no se pudo leer la llave privada SSL «%s» desde el motor «%s»: %s\n"
 
-#: fe-secure-openssl.c:1120
+#: fe-secure-openssl.c:1186
 #, c-format
 msgid "certificate present, but not private key file \"%s\"\n"
 msgstr "el certificado está presente, pero no la llave privada «%s»\n"
 
-#: fe-secure-openssl.c:1128
+#: fe-secure-openssl.c:1194
 #, c-format
 msgid "private key file \"%s\" has group or world access; permissions should be u=rw (0600) or less\n"
 msgstr "el archivo de la llave privada «%s» tiene permiso de lectura para el grupo u otros; los permisos deberían ser u=rw (0600) o menos\n"
 
-#: fe-secure-openssl.c:1139
+#: fe-secure-openssl.c:1219
 #, c-format
 msgid "could not load private key file \"%s\": %s\n"
 msgstr "no se pudo cargar el archivo de la llave privada «%s»: %s\n"
 
-#: fe-secure-openssl.c:1153
+#: fe-secure-openssl.c:1237
 #, c-format
 msgid "certificate does not match private key file \"%s\": %s\n"
 msgstr "el certificado no coincide con la llave privada «%s»: %s\n"
 
-#: fe-secure-openssl.c:1262
+#: fe-secure-openssl.c:1332
 #, c-format
 msgid "certificate could not be obtained: %s\n"
 msgstr "el certificado no pudo ser obtenido: %s\n"
 
-#: fe-secure-openssl.c:1351
+#: fe-secure-openssl.c:1421
 #, c-format
 msgid "no SSL error reported"
 msgstr "código de error SSL no reportado"
 
-#: fe-secure-openssl.c:1360
+#: fe-secure-openssl.c:1430
 #, c-format
 msgid "SSL error code %lu"
 msgstr "código de error SSL %lu"
 
-#: fe-secure.c:276
+#: fe-secure-openssl.c:1677
+#, c-format
+msgid "WARNING: sslpassword truncated\n"
+msgstr ""
+
+#: fe-secure.c:275
 #, c-format
 msgid "could not receive data from server: %s\n"
 msgstr "no se pudo recibir datos del servidor: %s\n"
 
-#: fe-secure.c:392
+#: fe-secure.c:390
 #, c-format
 msgid "could not send data to server: %s\n"
 msgstr "no se pudo enviar datos al servidor: %s\n"
 
-#: win32.c:317
+#: win32.c:314
 #, c-format
 msgid "unrecognized socket error: 0x%08X/%d"
 msgstr "código de error de socket no reconocido: 0x%08X/%d"
 
-#~ msgid "no GSSAPI support; cannot require GSSAPI\n"
-#~ msgstr "no hay soporte GSSAPI; no se puede requerir GSSAPI\n"
+#~ msgid "SSL library does not support CRL certificates (file \"%s\")\n"
+#~ msgstr "la biblioteca SSL no soporta certificados CRL (archivo «%s»)\n"
diff --git a/src/pl/plperl/po/es.po b/src/pl/plperl/po/es.po
index 8c89f74a460..be4d1a818ef 100644
--- a/src/pl/plperl/po/es.po
+++ b/src/pl/plperl/po/es.po
@@ -10,7 +10,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: plperl (PostgreSQL) 12\n"
 "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n"
-"POT-Creation-Date: 2019-09-29 23:38+0000\n"
+"POT-Creation-Date: 2020-05-17 02:38+0000\n"
 "PO-Revision-Date: 2019-06-06 17:25-0400\n"
 "Last-Translator: Carlos Chapi <carlos.chapi@2ndquadrant.com>\n"
 "Language-Team: PgSQL-es-Ayuda <pgsql-es-ayuda@lists.postgresql.org>\n"
@@ -20,205 +20,205 @@ msgstr ""
 "Content-Transfer-Encoding: 8bit\n"
 "X-Generator: Poedit 1.8.7\n"
 
-#: plperl.c:406
+#: plperl.c:405
 msgid "If true, trusted and untrusted Perl code will be compiled in strict mode."
 msgstr "Si es verdadero, se compilará código Perl confiable y no confiable en modo «strict»."
 
-#: plperl.c:420
+#: plperl.c:419
 msgid "Perl initialization code to execute when a Perl interpreter is initialized."
 msgstr "Código Perl de inicialización a ejecutar cuando un intérprete Perl es inicializado."
 
-#: plperl.c:442
+#: plperl.c:441
 msgid "Perl initialization code to execute once when plperl is first used."
 msgstr "Código Perl de inicialización a ejecutar cuando plperl se usa por primera vez."
 
-#: plperl.c:450
+#: plperl.c:449
 msgid "Perl initialization code to execute once when plperlu is first used."
 msgstr "Código Perl de inicialización a ejecutar cuando plperlu se usa por primera vez."
 
-#: plperl.c:647
+#: plperl.c:646
 #, c-format
 msgid "cannot allocate multiple Perl interpreters on this platform"
 msgstr "no se pueden instanciar múltiples intérpretes Perl en esta plataforma"
 
-#: plperl.c:670 plperl.c:854 plperl.c:860 plperl.c:977 plperl.c:989
-#: plperl.c:1032 plperl.c:1055 plperl.c:2154 plperl.c:2264 plperl.c:2332
-#: plperl.c:2395
+#: plperl.c:669 plperl.c:853 plperl.c:859 plperl.c:976 plperl.c:988
+#: plperl.c:1031 plperl.c:1054 plperl.c:2136 plperl.c:2244 plperl.c:2312
+#: plperl.c:2375
 #, c-format
 msgid "%s"
 msgstr "%s"
 
-#: plperl.c:671
+#: plperl.c:670
 #, c-format
 msgid "while executing PostgreSQL::InServer::SPI::bootstrap"
 msgstr "mientras se ejecutaba PostgreSQL::InServer::SPI::bootstrap"
 
-#: plperl.c:855
+#: plperl.c:854
 #, c-format
 msgid "while parsing Perl initialization"
 msgstr "mientras se interpretaba la inicialización de Perl"
 
-#: plperl.c:861
+#: plperl.c:860
 #, c-format
 msgid "while running Perl initialization"
 msgstr "mientras se ejecutaba la inicialización de Perl"
 
-#: plperl.c:978
+#: plperl.c:977
 #, c-format
 msgid "while executing PLC_TRUSTED"
 msgstr "mientras se ejecutaba PLC_TRUSTED"
 
-#: plperl.c:990
+#: plperl.c:989
 #, c-format
 msgid "while executing utf8fix"
 msgstr "mientras se ejecutaba utf8fix"
 
-#: plperl.c:1033
+#: plperl.c:1032
 #, c-format
 msgid "while executing plperl.on_plperl_init"
 msgstr "mientras se ejecutaba plperl.on_plperl_init"
 
-#: plperl.c:1056
+#: plperl.c:1055
 #, c-format
 msgid "while executing plperl.on_plperlu_init"
 msgstr "mientras se ejecutaba plperl.on_plperlu_init"
 
-#: plperl.c:1102 plperl.c:1793
+#: plperl.c:1101 plperl.c:1789
 #, c-format
 msgid "Perl hash contains nonexistent column \"%s\""
 msgstr "el hash de Perl contiene el columna inexistente «%s»"
 
-#: plperl.c:1107 plperl.c:1798
+#: plperl.c:1106 plperl.c:1794
 #, c-format
 msgid "cannot set system attribute \"%s\""
 msgstr "no se puede definir el atributo de sistema «%s»"
 
-#: plperl.c:1195
+#: plperl.c:1194
 #, c-format
 msgid "number of array dimensions (%d) exceeds the maximum allowed (%d)"
 msgstr "el número de dimensiones del array (%d) excede el máximo permitido (%d)"
 
-#: plperl.c:1207 plperl.c:1224
+#: plperl.c:1206 plperl.c:1223
 #, c-format
 msgid "multidimensional arrays must have array expressions with matching dimensions"
 msgstr "los arrays multidimensionales deben tener expresiones de arrays con dimensiones coincidentes"
 
-#: plperl.c:1260
+#: plperl.c:1259
 #, c-format
 msgid "cannot convert Perl array to non-array type %s"
 msgstr "no se puede convertir un array de Perl al tipo no-array %s"
 
-#: plperl.c:1363
+#: plperl.c:1362
 #, c-format
 msgid "cannot convert Perl hash to non-composite type %s"
 msgstr "no se puede convertir un hash de Perl al tipo no compuesto %s"
 
-#: plperl.c:1385 plperl.c:3306
+#: plperl.c:1384 plperl.c:3284
 #, c-format
 msgid "function returning record called in context that cannot accept type record"
 msgstr "se llamó una función que retorna un registro en un contexto que no puede aceptarlo"
 
-#: plperl.c:1444
+#: plperl.c:1443
 #, c-format
 msgid "lookup failed for type %s"
 msgstr "búsqueda del tipo %s falló"
 
-#: plperl.c:1768
+#: plperl.c:1764
 #, c-format
 msgid "$_TD->{new} does not exist"
 msgstr "$_TD->{new} no existe"
 
-#: plperl.c:1772
+#: plperl.c:1768
 #, c-format
 msgid "$_TD->{new} is not a hash reference"
 msgstr "$_TD->{new} no es una referencia a un hash"
 
-#: plperl.c:1803
+#: plperl.c:1799
 #, c-format
 msgid "cannot set generated column \"%s\""
 msgstr "no se puede definir la columna generada «%s»"
 
-#: plperl.c:2029 plperl.c:2871
+#: plperl.c:2011 plperl.c:2849
 #, c-format
 msgid "PL/Perl functions cannot return type %s"
 msgstr "las funciones en PL/Perl no pueden retornar el tipo %s"
 
-#: plperl.c:2042 plperl.c:2912
+#: plperl.c:2024 plperl.c:2890
 #, c-format
 msgid "PL/Perl functions cannot accept type %s"
 msgstr "funciones de PL/Perl no pueden aceptar el tipo %s"
 
-#: plperl.c:2159
+#: plperl.c:2141
 #, c-format
 msgid "didn't get a CODE reference from compiling function \"%s\""
 msgstr "no se obtuvo una referencia CODE en la compilación de la función «%s»"
 
-#: plperl.c:2252
+#: plperl.c:2232
 #, c-format
 msgid "didn't get a return item from function"
 msgstr "no se obtuvo un elemento de retorno desde la función"
 
-#: plperl.c:2296 plperl.c:2363
+#: plperl.c:2276 plperl.c:2343
 #, c-format
 msgid "couldn't fetch $_TD"
 msgstr "no se pudo obtener $_TD"
 
-#: plperl.c:2320 plperl.c:2383
+#: plperl.c:2300 plperl.c:2363
 #, c-format
 msgid "didn't get a return item from trigger function"
 msgstr "no se obtuvo un elemento de retorno desde la función de disparador"
 
-#: plperl.c:2444
+#: plperl.c:2422
 #, c-format
 msgid "set-valued function called in context that cannot accept a set"
 msgstr "se llamó a una función que retorna un conjunto en un contexto que no puede aceptarlo"
 
-#: plperl.c:2489
+#: plperl.c:2467
 #, c-format
 msgid "set-returning PL/Perl function must return reference to array or use return_next"
 msgstr "una función PL/Perl que retorna un conjunto debe retornar una referencia a un array o usar return_next"
 
-#: plperl.c:2610
+#: plperl.c:2588
 #, c-format
 msgid "ignoring modified row in DELETE trigger"
 msgstr "ignorando la tupla modificada en el disparador DELETE"
 
-#: plperl.c:2618
+#: plperl.c:2596
 #, c-format
 msgid "result of PL/Perl trigger function must be undef, \"SKIP\", or \"MODIFY\""
 msgstr "el resultado de la función disparadora en PL/Perl debe ser undef, «SKIP» o «MODIFY»"
 
-#: plperl.c:2866
+#: plperl.c:2844
 #, c-format
 msgid "trigger functions can only be called as triggers"
 msgstr "las funciones disparadoras sólo pueden ser llamadas como disparadores"
 
-#: plperl.c:3213
+#: plperl.c:3191
 #, c-format
 msgid "query result has too many rows to fit in a Perl array"
 msgstr "el resultado de la consulta tiene demasiados registros y no entran en un array de Perl"
 
-#: plperl.c:3283
+#: plperl.c:3261
 #, c-format
 msgid "cannot use return_next in a non-SETOF function"
 msgstr "no se puede utilizar return_next en una función sin SETOF"
 
-#: plperl.c:3357
+#: plperl.c:3335
 #, c-format
 msgid "SETOF-composite-returning PL/Perl function must call return_next with reference to hash"
 msgstr "una función Perl que retorna SETOF de un tipo compuesto debe invocar return_next con una referencia a un hash"
 
-#: plperl.c:4132
+#: plperl.c:4110
 #, c-format
 msgid "PL/Perl function \"%s\""
 msgstr "función PL/Perl «%s»"
 
-#: plperl.c:4144
+#: plperl.c:4122
 #, c-format
 msgid "compilation of PL/Perl function \"%s\""
 msgstr "compilación de la función PL/Perl «%s»"
 
-#: plperl.c:4153
+#: plperl.c:4131
 #, c-format
 msgid "PL/Perl anonymous code block"
 msgstr "bloque de código anónimo de PL/Perl"
diff --git a/src/pl/plpgsql/src/po/es.po b/src/pl/plpgsql/src/po/es.po
index 375bc57c2ba..b2336c8a87f 100644
--- a/src/pl/plpgsql/src/po/es.po
+++ b/src/pl/plpgsql/src/po/es.po
@@ -12,7 +12,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: plpgsql (PostgreSQL) 12\n"
 "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n"
-"POT-Creation-Date: 2019-09-29 23:38+0000\n"
+"POT-Creation-Date: 2020-05-17 02:38+0000\n"
 "PO-Revision-Date: 2019-06-06 17:26-0400\n"
 "Last-Translator: Carlos Chapi <carlos.chapi@2ndquadrant.com>\n"
 "Language-Team: PgSQL-es-Ayuda <pgsql-es-ayuda@lists.postgresql.org>\n"
@@ -23,7 +23,7 @@ msgstr ""
 "Plural-Forms: nplurals=2; plural=n != 1;\n"
 "X-Generator: Poedit 1.8.7\n"
 
-#: pl_comp.c:438 pl_handler.c:461
+#: pl_comp.c:436 pl_handler.c:471
 #, c-format
 msgid "PL/pgSQL functions cannot accept type %s"
 msgstr "las funciones PL/pgSQL no pueden aceptar el tipo %s"
@@ -38,7 +38,7 @@ msgstr "no se pudo determinar el verdadero tipo de resultado para la función po
 msgid "trigger functions can only be called as triggers"
 msgstr "las funciones de disparador sólo pueden ser invocadas como disparadores"
 
-#: pl_comp.c:560 pl_handler.c:445
+#: pl_comp.c:560 pl_handler.c:455
 #, c-format
 msgid "PL/pgSQL functions cannot return type %s"
 msgstr "las funciones PL/pgSQL no pueden retornar el tipo %s"
@@ -78,8 +78,8 @@ msgstr "la referencia a la columna «%s» es ambigua"
 msgid "It could refer to either a PL/pgSQL variable or a table column."
 msgstr "Podría referirse tanto a una variable PL/pgSQL como a una columna de una tabla."
 
-#: pl_comp.c:1317 pl_exec.c:5134 pl_exec.c:5499 pl_exec.c:5586 pl_exec.c:5677
-#: pl_exec.c:6594
+#: pl_comp.c:1317 pl_exec.c:5169 pl_exec.c:5534 pl_exec.c:5621 pl_exec.c:5712
+#: pl_exec.c:6700
 #, c-format
 msgid "record \"%s\" has no field \"%s\""
 msgstr "el registro «%s» no tiene un campo «%s»"
@@ -99,7 +99,7 @@ msgstr "la variable «%s» tiene pseudotipo %s"
 msgid "type \"%s\" is only a shell"
 msgstr "el tipo «%s» está inconcluso"
 
-#: pl_comp.c:2162 pl_exec.c:6886
+#: pl_comp.c:2162 pl_exec.c:7001
 #, c-format
 msgid "type %s is not composite"
 msgstr "el tipo %s no es compuesto"
@@ -109,63 +109,63 @@ msgstr "el tipo %s no es compuesto"
 msgid "unrecognized exception condition \"%s\""
 msgstr "no se reconoce la condición de excepción «%s»"
 
-#: pl_comp.c:2477
+#: pl_comp.c:2484
 #, c-format
 msgid "could not determine actual argument type for polymorphic function \"%s\""
 msgstr "no se pudo determinar el verdadero tipo de argumento para la función polimórfica «%s»"
 
-#: pl_exec.c:477 pl_exec.c:914 pl_exec.c:1152
+#: pl_exec.c:498 pl_exec.c:935 pl_exec.c:1173
 msgid "during initialization of execution state"
 msgstr "durante la inicialización del estado de ejecución"
 
-#: pl_exec.c:483
+#: pl_exec.c:504
 msgid "while storing call arguments into local variables"
 msgstr "mientras se almacenaban los argumentos de invocación en variables locales"
 
-#: pl_exec.c:571 pl_exec.c:987
+#: pl_exec.c:592 pl_exec.c:1008
 msgid "during function entry"
 msgstr "durante el ingreso a la función"
 
-#: pl_exec.c:596
+#: pl_exec.c:617
 #, c-format
 msgid "control reached end of function without RETURN"
 msgstr "la ejecución alcanzó el fin de la función sin encontrar RETURN"
 
-#: pl_exec.c:603
+#: pl_exec.c:624
 msgid "while casting return value to function's return type"
 msgstr "mientras se hacía la conversión del valor de retorno al tipo de retorno de la función"
 
-#: pl_exec.c:616 pl_exec.c:3584
+#: pl_exec.c:637 pl_exec.c:3604
 #, c-format
 msgid "set-valued function called in context that cannot accept a set"
 msgstr "se llamó una función que retorna un conjunto en un contexto que no puede aceptarlo"
 
-#: pl_exec.c:742 pl_exec.c:1016 pl_exec.c:1177
+#: pl_exec.c:763 pl_exec.c:1037 pl_exec.c:1198
 msgid "during function exit"
 msgstr "durante la salida de la función"
 
-#: pl_exec.c:797 pl_exec.c:861 pl_exec.c:3429
+#: pl_exec.c:818 pl_exec.c:882 pl_exec.c:3449
 msgid "returned record type does not match expected record type"
 msgstr "el tipo de registro retornado no coincide con el tipo de registro esperado"
 
-#: pl_exec.c:1012 pl_exec.c:1173
+#: pl_exec.c:1033 pl_exec.c:1194
 #, c-format
 msgid "control reached end of trigger procedure without RETURN"
 msgstr "la ejecución alcanzó el fin del procedimiento disparador sin encontrar RETURN"
 
-#: pl_exec.c:1021
+#: pl_exec.c:1042
 #, c-format
 msgid "trigger procedure cannot return a set"
 msgstr "los procedimientos disparadores no pueden retornar conjuntos"
 
-#: pl_exec.c:1060 pl_exec.c:1088
+#: pl_exec.c:1081 pl_exec.c:1109
 msgid "returned row structure does not match the structure of the triggering table"
 msgstr "la estructura de fila retornada no coincide con la estructura de la tabla que generó el evento de disparador"
 
 #. translator: last %s is a phrase such as "during statement block
 #. local variable initialization"
 #.
-#: pl_exec.c:1225
+#: pl_exec.c:1244
 #, c-format
 msgid "PL/pgSQL function %s line %d %s"
 msgstr "función PL/pgSQL %s en la línea %d %s"
@@ -173,374 +173,374 @@ msgstr "función PL/pgSQL %s en la línea %d %s"
 #. translator: last %s is a phrase such as "while storing call
 #. arguments into local variables"
 #.
-#: pl_exec.c:1236
+#: pl_exec.c:1255
 #, c-format
 msgid "PL/pgSQL function %s %s"
 msgstr "función PL/pgSQL %s %s"
 
 #. translator: last %s is a plpgsql statement type name
-#: pl_exec.c:1244
+#: pl_exec.c:1263
 #, c-format
 msgid "PL/pgSQL function %s line %d at %s"
 msgstr "función PL/pgSQL %s en la línea %d en %s"
 
-#: pl_exec.c:1250
+#: pl_exec.c:1269
 #, c-format
 msgid "PL/pgSQL function %s"
 msgstr "función PL/pgSQL %s"
 
-#: pl_exec.c:1588
+#: pl_exec.c:1607
 msgid "during statement block local variable initialization"
 msgstr "durante inicialización de variables locales en el bloque de sentencias"
 
-#: pl_exec.c:1686
+#: pl_exec.c:1705
 msgid "during statement block entry"
 msgstr "durante la entrada al bloque de sentencias"
 
-#: pl_exec.c:1718
+#: pl_exec.c:1737
 msgid "during statement block exit"
 msgstr "durante la salida del bloque de sentencias"
 
-#: pl_exec.c:1756
+#: pl_exec.c:1775
 msgid "during exception cleanup"
 msgstr "durante la finalización por excepción"
 
-#: pl_exec.c:2252
+#: pl_exec.c:2271
 #, c-format
 msgid "procedure parameter \"%s\" is an output parameter but corresponding argument is not writable"
 msgstr "el parámetro de procedimiento «%s» es un parámetro de salida pero el argumento correspondiente no es escribible"
 
-#: pl_exec.c:2257
+#: pl_exec.c:2276
 #, c-format
 msgid "procedure parameter %d is an output parameter but corresponding argument is not writable"
 msgstr "el parámetro de procedimiento %d es un parámetro de salida pero el argumento correspondiente no es escribible"
 
-#: pl_exec.c:2368
+#: pl_exec.c:2388
 #, c-format
 msgid "GET STACKED DIAGNOSTICS cannot be used outside an exception handler"
 msgstr "GET STACKED DIAGNOSTICS no puede ser usado fuera de un manejador de excepción"
 
-#: pl_exec.c:2568
+#: pl_exec.c:2588
 #, c-format
 msgid "case not found"
 msgstr "caso no encontrado"
 
-#: pl_exec.c:2569
+#: pl_exec.c:2589
 #, c-format
 msgid "CASE statement is missing ELSE part."
 msgstr "A la sentencia CASE le falta la parte ELSE."
 
-#: pl_exec.c:2662
+#: pl_exec.c:2682
 #, c-format
 msgid "lower bound of FOR loop cannot be null"
 msgstr "el límite inferior de un ciclo FOR no puede ser null"
 
-#: pl_exec.c:2678
+#: pl_exec.c:2698
 #, c-format
 msgid "upper bound of FOR loop cannot be null"
 msgstr "el límite superior de un ciclo FOR no puede ser null"
 
-#: pl_exec.c:2696
+#: pl_exec.c:2716
 #, c-format
 msgid "BY value of FOR loop cannot be null"
 msgstr "el valor BY de un ciclo FOR no puede ser null"
 
-#: pl_exec.c:2702
+#: pl_exec.c:2722
 #, c-format
 msgid "BY value of FOR loop must be greater than zero"
 msgstr "el valor BY de un ciclo FOR debe ser mayor que cero"
 
-#: pl_exec.c:2836 pl_exec.c:4558
+#: pl_exec.c:2856 pl_exec.c:4583
 #, c-format
 msgid "cursor \"%s\" already in use"
 msgstr "el cursor «%s» ya está en uso"
 
-#: pl_exec.c:2859 pl_exec.c:4623
+#: pl_exec.c:2879 pl_exec.c:4648
 #, c-format
 msgid "arguments given for cursor without arguments"
 msgstr "se dieron argumentos a un cursor sin argumentos"
 
-#: pl_exec.c:2878 pl_exec.c:4642
+#: pl_exec.c:2898 pl_exec.c:4667
 #, c-format
 msgid "arguments required for cursor"
 msgstr "se requieren argumentos para el cursor"
 
-#: pl_exec.c:2965
+#: pl_exec.c:2985
 #, c-format
 msgid "FOREACH expression must not be null"
 msgstr "la expresión FOREACH no debe ser nula"
 
-#: pl_exec.c:2980
+#: pl_exec.c:3000
 #, c-format
 msgid "FOREACH expression must yield an array, not type %s"
 msgstr "una expresión FOREACH debe retornar un array, no tipo %s"
 
-#: pl_exec.c:2997
+#: pl_exec.c:3017
 #, c-format
 msgid "slice dimension (%d) is out of the valid range 0..%d"
 msgstr "la dimensión del slice (%d) está fuera de rango 0..%d"
 
-#: pl_exec.c:3024
+#: pl_exec.c:3044
 #, c-format
 msgid "FOREACH ... SLICE loop variable must be of an array type"
 msgstr "las variables de bucles FOREACH ... SLICE deben ser de un tipo array"
 
-#: pl_exec.c:3028
+#: pl_exec.c:3048
 #, c-format
 msgid "FOREACH loop variable must not be of an array type"
 msgstr "la variable de bucle FOREACH no debe ser de tipo array"
 
-#: pl_exec.c:3190 pl_exec.c:3247 pl_exec.c:3422
+#: pl_exec.c:3210 pl_exec.c:3267 pl_exec.c:3442
 #, c-format
 msgid "cannot return non-composite value from function returning composite type"
 msgstr "no se puede retornar un valor no-compuesto desde una función que retorne tipos compuestos"
 
-#: pl_exec.c:3286 pl_gram.y:3309
+#: pl_exec.c:3306 pl_gram.y:3309
 #, c-format
 msgid "cannot use RETURN NEXT in a non-SETOF function"
 msgstr "no se puede usar RETURN NEXT en una función que no es SETOF"
 
-#: pl_exec.c:3327 pl_exec.c:3459
+#: pl_exec.c:3347 pl_exec.c:3479
 #, c-format
 msgid "wrong result type supplied in RETURN NEXT"
 msgstr "se pasó un tipo incorrecto de resultado a RETURN NEXT"
 
-#: pl_exec.c:3365 pl_exec.c:3386
+#: pl_exec.c:3385 pl_exec.c:3406
 #, c-format
 msgid "wrong record type supplied in RETURN NEXT"
 msgstr "se pasó un tipo de registro incorrecto a RETURN NEXT"
 
-#: pl_exec.c:3478
+#: pl_exec.c:3498
 #, c-format
 msgid "RETURN NEXT must have a parameter"
 msgstr "RETURN NEXT debe tener un parámetro"
 
-#: pl_exec.c:3504 pl_gram.y:3373
+#: pl_exec.c:3524 pl_gram.y:3373
 #, c-format
 msgid "cannot use RETURN QUERY in a non-SETOF function"
 msgstr "no se puede usar RETURN QUERY en una función que no ha sido declarada SETOF"
 
-#: pl_exec.c:3528
+#: pl_exec.c:3548
 msgid "structure of query does not match function result type"
 msgstr "la estructura de la consulta no coincide con el tipo del resultado de la función"
 
-#: pl_exec.c:3612 pl_exec.c:3750
+#: pl_exec.c:3632 pl_exec.c:3770
 #, c-format
 msgid "RAISE option already specified: %s"
 msgstr "la opción de RAISE ya se especificó: %s"
 
-#: pl_exec.c:3646
+#: pl_exec.c:3666
 #, c-format
 msgid "RAISE without parameters cannot be used outside an exception handler"
 msgstr "RAISE sin parámetros no puede ser usado fuera de un manejador de excepción"
 
-#: pl_exec.c:3740
+#: pl_exec.c:3760
 #, c-format
 msgid "RAISE statement option cannot be null"
 msgstr "la opción de sentencia en RAISE no puede ser null"
 
-#: pl_exec.c:3810
+#: pl_exec.c:3830
 #, c-format
 msgid "%s"
 msgstr "%s"
 
-#: pl_exec.c:3865
+#: pl_exec.c:3885
 #, c-format
 msgid "assertion failed"
 msgstr "aseveración falló"
 
-#: pl_exec.c:4207 pl_exec.c:4397
+#: pl_exec.c:4232 pl_exec.c:4422
 #, c-format
 msgid "cannot COPY to/from client in PL/pgSQL"
 msgstr "no se puede ejecutar COPY desde/a un cliente en PL/pgSQL"
 
-#: pl_exec.c:4213
+#: pl_exec.c:4238
 #, c-format
 msgid "unsupported transaction command in PL/pgSQL"
 msgstr "orden de transacción no soportada en PL/pgSQL"
 
-#: pl_exec.c:4236 pl_exec.c:4426
+#: pl_exec.c:4261 pl_exec.c:4451
 #, c-format
 msgid "INTO used with a command that cannot return data"
 msgstr "INTO es utilizado con una orden que no puede retornar datos"
 
-#: pl_exec.c:4259 pl_exec.c:4449
+#: pl_exec.c:4284 pl_exec.c:4474
 #, c-format
 msgid "query returned no rows"
 msgstr "la consulta no regresó filas"
 
-#: pl_exec.c:4281 pl_exec.c:4468
+#: pl_exec.c:4306 pl_exec.c:4493
 #, c-format
 msgid "query returned more than one row"
 msgstr "la consulta regresó más de una fila"
 
-#: pl_exec.c:4283
+#: pl_exec.c:4308
 #, c-format
 msgid "Make sure the query returns a single row, or use LIMIT 1."
 msgstr "Asegúrese que la consulta retorne una única fila, o use LIMIT 1."
 
-#: pl_exec.c:4299
+#: pl_exec.c:4324
 #, c-format
 msgid "query has no destination for result data"
 msgstr "la consulta no tiene un destino para los datos de resultado"
 
-#: pl_exec.c:4300
+#: pl_exec.c:4325
 #, c-format
 msgid "If you want to discard the results of a SELECT, use PERFORM instead."
 msgstr "Si quiere descartar los resultados de un SELECT, utilice PERFORM."
 
-#: pl_exec.c:4333 pl_exec.c:8518
+#: pl_exec.c:4358 pl_exec.c:8680
 #, c-format
 msgid "query string argument of EXECUTE is null"
 msgstr "el argumento de consulta a ejecutar en EXECUTE es null"
 
-#: pl_exec.c:4389
+#: pl_exec.c:4414
 #, c-format
 msgid "EXECUTE of SELECT ... INTO is not implemented"
 msgstr "no está implementado EXECUTE de un SELECT ... INTO"
 
-#: pl_exec.c:4390
+#: pl_exec.c:4415
 #, c-format
 msgid "You might want to use EXECUTE ... INTO or EXECUTE CREATE TABLE ... AS instead."
 msgstr "Puede desear usar EXECUTE ... INTO o EXECUTE CREATE TABLE ... AS en su lugar."
 
-#: pl_exec.c:4403
+#: pl_exec.c:4428
 #, c-format
 msgid "EXECUTE of transaction commands is not implemented"
 msgstr "no está implementado EXECUTE de órdenes de transacción"
 
-#: pl_exec.c:4704 pl_exec.c:4792
+#: pl_exec.c:4729 pl_exec.c:4817
 #, c-format
 msgid "cursor variable \"%s\" is null"
 msgstr "variable cursor «%s» es null"
 
-#: pl_exec.c:4715 pl_exec.c:4803
+#: pl_exec.c:4740 pl_exec.c:4828
 #, c-format
 msgid "cursor \"%s\" does not exist"
 msgstr "no existe el cursor «%s»"
 
-#: pl_exec.c:4728
+#: pl_exec.c:4753
 #, c-format
 msgid "relative or absolute cursor position is null"
 msgstr "la posición relativa o absoluta del cursor es null"
 
-#: pl_exec.c:4984 pl_exec.c:5079
+#: pl_exec.c:5019 pl_exec.c:5114
 #, c-format
 msgid "null value cannot be assigned to variable \"%s\" declared NOT NULL"
 msgstr "no puede asignarse un valor null a la variable «%s» que fue declarada NOT NULL"
 
-#: pl_exec.c:5060
+#: pl_exec.c:5095
 #, c-format
 msgid "cannot assign non-composite value to a row variable"
 msgstr "no se puede asignar un valor no compuesto a una variable de tipo row"
 
-#: pl_exec.c:5092
+#: pl_exec.c:5127
 #, c-format
 msgid "cannot assign non-composite value to a record variable"
 msgstr "no se puede asignar un valor no compuesto a una variable de tipo record"
 
-#: pl_exec.c:5143
+#: pl_exec.c:5178
 #, c-format
 msgid "cannot assign to system column \"%s\""
 msgstr "no se puede asignar a la columna de sistema «%s»"
 
-#: pl_exec.c:5207
+#: pl_exec.c:5242
 #, c-format
 msgid "number of array dimensions (%d) exceeds the maximum allowed (%d)"
 msgstr "el número de dimensiones del array (%d) excede el máximo permitido (%d)"
 
-#: pl_exec.c:5239
+#: pl_exec.c:5274
 #, c-format
 msgid "subscripted object is not an array"
 msgstr "el objeto al que se le puso un subíndice no es un array"
 
-#: pl_exec.c:5277
+#: pl_exec.c:5312
 #, c-format
 msgid "array subscript in assignment must not be null"
 msgstr "subíndice de array en asignación no puede ser null"
 
-#: pl_exec.c:5784
+#: pl_exec.c:5819
 #, c-format
 msgid "query \"%s\" did not return data"
 msgstr "la consulta «%s» no retornó datos"
 
-#: pl_exec.c:5792
+#: pl_exec.c:5827
 #, c-format
 msgid "query \"%s\" returned %d column"
 msgid_plural "query \"%s\" returned %d columns"
 msgstr[0] "la consulta «%s» retornó %d columna"
 msgstr[1] "la consulta «%s» retornó %d columnas"
 
-#: pl_exec.c:5820
+#: pl_exec.c:5855
 #, c-format
 msgid "query \"%s\" returned more than one row"
 msgstr "la consulta «%s» retornó más de una fila"
 
-#: pl_exec.c:5883
+#: pl_exec.c:5918
 #, c-format
 msgid "query \"%s\" is not a SELECT"
 msgstr "la consulta «%s» no es una orden SELECT"
 
-#: pl_exec.c:6608 pl_exec.c:6648 pl_exec.c:6688
+#: pl_exec.c:6714 pl_exec.c:6754 pl_exec.c:6794
 #, c-format
 msgid "type of parameter %d (%s) does not match that when preparing the plan (%s)"
 msgstr "el tipo del parámetro %d (%s) no coincide aquel con que fue preparado el plan (%s)"
 
-#: pl_exec.c:7090 pl_exec.c:7124 pl_exec.c:7198 pl_exec.c:7224
+#: pl_exec.c:7205 pl_exec.c:7239 pl_exec.c:7313 pl_exec.c:7339
 #, c-format
 msgid "number of source and target fields in assignment does not match"
 msgstr "no coincide el número de campos de origen y destino en la asignación"
 
 #. translator: %s represents a name of an extra check
-#: pl_exec.c:7092 pl_exec.c:7126 pl_exec.c:7200 pl_exec.c:7226
+#: pl_exec.c:7207 pl_exec.c:7241 pl_exec.c:7315 pl_exec.c:7341
 #, c-format
 msgid "%s check of %s is active."
 msgstr "El chequeo %s de %s está activo."
 
-#: pl_exec.c:7096 pl_exec.c:7130 pl_exec.c:7204 pl_exec.c:7230
+#: pl_exec.c:7211 pl_exec.c:7245 pl_exec.c:7319 pl_exec.c:7345
 #, c-format
 msgid "Make sure the query returns the exact list of columns."
 msgstr "Asegúrese que la consulta retorna la lista exacta de columnas."
 
-#: pl_exec.c:7617
+#: pl_exec.c:7732
 #, c-format
 msgid "record \"%s\" is not assigned yet"
 msgstr "el registro «%s» no ha sido asignado aún"
 
-#: pl_exec.c:7618
+#: pl_exec.c:7733
 #, c-format
 msgid "The tuple structure of a not-yet-assigned record is indeterminate."
 msgstr "La estructura de fila de un registro aún no asignado no está determinado."
 
-#: pl_funcs.c:239
+#: pl_funcs.c:237
 msgid "statement block"
 msgstr "bloque de sentencias"
 
-#: pl_funcs.c:241
+#: pl_funcs.c:239
 msgid "assignment"
 msgstr "asignación"
 
-#: pl_funcs.c:251
+#: pl_funcs.c:249
 msgid "FOR with integer loop variable"
 msgstr "bucle FOR con variable entera"
 
-#: pl_funcs.c:253
+#: pl_funcs.c:251
 msgid "FOR over SELECT rows"
 msgstr "bucle FOR en torno a filas de un SELECT"
 
-#: pl_funcs.c:255
+#: pl_funcs.c:253
 msgid "FOR over cursor"
 msgstr "bucle FOR en torno a un cursor"
 
-#: pl_funcs.c:257
+#: pl_funcs.c:255
 msgid "FOREACH over array"
 msgstr "FOREACH en torno a un array"
 
-#: pl_funcs.c:271
+#: pl_funcs.c:269
 msgid "SQL statement"
 msgstr "sentencia SQL"
 
-#: pl_funcs.c:275
+#: pl_funcs.c:273
 msgid "FOR over EXECUTE statement"
 msgstr "bucle FOR en torno a una sentencia EXECUTE"
 
@@ -822,23 +822,23 @@ msgstr "se especificaron demasiados parámetros a RAISE"
 msgid "too few parameters specified for RAISE"
 msgstr "se especificaron muy pocos parámetros a RAISE"
 
-#: pl_handler.c:158
+#: pl_handler.c:156
 msgid "Sets handling of conflicts between PL/pgSQL variable names and table column names."
 msgstr "Determina el manejo de conflictos entre nombres de variables PL/pgSQL y nombres de columnas de tablas."
 
-#: pl_handler.c:167
+#: pl_handler.c:165
 msgid "Print information about parameters in the DETAIL part of the error messages generated on INTO ... STRICT failures."
 msgstr "Imprimir información de parámetros en la parte DETALLE de los mensajes de error generados por fallos en INTO ... STRICT."
 
-#: pl_handler.c:175
+#: pl_handler.c:173
 msgid "Perform checks given in ASSERT statements."
 msgstr "Ejecuta las verificaciones en sentencias ASSERT."
 
-#: pl_handler.c:183
+#: pl_handler.c:181
 msgid "List of programming constructs that should produce a warning."
 msgstr "Listado de estructuras de programación que deben dar una advertencia."
 
-#: pl_handler.c:193
+#: pl_handler.c:191
 msgid "List of programming constructs that should produce an error."
 msgstr "Listado de estructuras de programación que deben dar un error."
 
diff --git a/src/pl/plpython/po/es.po b/src/pl/plpython/po/es.po
index 130ce18f44d..7c7cca0f90f 100644
--- a/src/pl/plpython/po/es.po
+++ b/src/pl/plpython/po/es.po
@@ -10,7 +10,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: plpython (PostgreSQL) 12\n"
 "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n"
-"POT-Creation-Date: 2019-09-29 23:38+0000\n"
+"POT-Creation-Date: 2020-05-17 02:38+0000\n"
 "PO-Revision-Date: 2019-06-06 17:26-0400\n"
 "Last-Translator: Carlos Chapi <carlos.chapi@2ndquadrant.com>\n"
 "Language-Team: PgSQL-es-Ayuda <pgsql-es-ayuda@lists.postgresql.org>\n"
@@ -21,444 +21,444 @@ msgstr ""
 "Plural-Forms: nplurals=2; plural=n != 1;\n"
 "X-Generator: Poedit 2.0.2\n"
 
-#: plpy_cursorobject.c:78
+#: plpy_cursorobject.c:74
 #, c-format
 msgid "plpy.cursor expected a query or a plan"
 msgstr "plpy.cursor espera una consulta o un plan"
 
-#: plpy_cursorobject.c:161
+#: plpy_cursorobject.c:157
 #, c-format
 msgid "plpy.cursor takes a sequence as its second argument"
 msgstr "plpy.cursor lleva una secuencia como segundo argumento"
 
-#: plpy_cursorobject.c:177 plpy_spi.c:211
+#: plpy_cursorobject.c:173 plpy_spi.c:207
 #, c-format
 msgid "could not execute plan"
 msgstr "no se pudo ejecutar el plan"
 
-#: plpy_cursorobject.c:180 plpy_spi.c:214
+#: plpy_cursorobject.c:176 plpy_spi.c:210
 #, c-format
 msgid "Expected sequence of %d argument, got %d: %s"
 msgid_plural "Expected sequence of %d arguments, got %d: %s"
 msgstr[0] "Se esperaba una secuencia de %d argumento, se obtuvo %d: %s"
 msgstr[1] "Se esperaba una secuencia de %d argumentos, se obtuvo %d: %s"
 
-#: plpy_cursorobject.c:329
+#: plpy_cursorobject.c:323
 #, c-format
 msgid "iterating a closed cursor"
 msgstr "iterando un cursor cerrado"
 
-#: plpy_cursorobject.c:337 plpy_cursorobject.c:403
+#: plpy_cursorobject.c:331 plpy_cursorobject.c:397
 #, c-format
 msgid "iterating a cursor in an aborted subtransaction"
 msgstr "iterando un cursor en una subtransacción abortada"
 
-#: plpy_cursorobject.c:395
+#: plpy_cursorobject.c:389
 #, c-format
 msgid "fetch from a closed cursor"
 msgstr "haciendo «fetch» en un cursor cerrado"
 
-#: plpy_cursorobject.c:438 plpy_spi.c:409
+#: plpy_cursorobject.c:432 plpy_spi.c:403
 #, c-format
 msgid "query result has too many rows to fit in a Python list"
 msgstr "el resultado de la consulta tiene demasiados registros y no entran en una lista de Python"
 
-#: plpy_cursorobject.c:490
+#: plpy_cursorobject.c:484
 #, c-format
 msgid "closing a cursor in an aborted subtransaction"
 msgstr "cerrando un cursor en una subtransacción abortada"
 
-#: plpy_elog.c:129 plpy_elog.c:130 plpy_plpymodule.c:553
+#: plpy_elog.c:125 plpy_elog.c:126 plpy_plpymodule.c:549
 #, c-format
 msgid "%s"
 msgstr "%s"
 
-#: plpy_exec.c:143
+#: plpy_exec.c:139
 #, c-format
 msgid "unsupported set function return mode"
 msgstr "modo de retorno de conjunto de función no soportado"
 
-#: plpy_exec.c:144
+#: plpy_exec.c:140
 #, c-format
 msgid "PL/Python set-returning functions only support returning one value per call."
 msgstr "Las funciones PL/Python que retornan conjuntos sólo permiten retornar un valor por invocación."
 
-#: plpy_exec.c:157
+#: plpy_exec.c:153
 #, c-format
 msgid "returned object cannot be iterated"
 msgstr "objeto retornado no puede ser iterado"
 
-#: plpy_exec.c:158
+#: plpy_exec.c:154
 #, c-format
 msgid "PL/Python set-returning functions must return an iterable object."
 msgstr "Los funciones PL/Python que retornan conjuntos deben retornar un objeto iterable."
 
-#: plpy_exec.c:172
+#: plpy_exec.c:168
 #, c-format
 msgid "error fetching next item from iterator"
 msgstr "error extrayendo el próximo elemento del iterador"
 
-#: plpy_exec.c:215
+#: plpy_exec.c:211
 #, c-format
 msgid "PL/Python procedure did not return None"
 msgstr "procedimiento PL/Python no returnó None"
 
-#: plpy_exec.c:219
+#: plpy_exec.c:215
 #, c-format
 msgid "PL/Python function with return type \"void\" did not return None"
 msgstr "función PL/Python con tipo de retorno «void» no retorna None"
 
-#: plpy_exec.c:375 plpy_exec.c:401
+#: plpy_exec.c:371 plpy_exec.c:397
 #, c-format
 msgid "unexpected return value from trigger procedure"
 msgstr "valor de retorno no esperado desde el procedimiento disparador"
 
-#: plpy_exec.c:376
+#: plpy_exec.c:372
 #, c-format
 msgid "Expected None or a string."
 msgstr "Se esperaba None o una cadena."
 
-#: plpy_exec.c:391
+#: plpy_exec.c:387
 #, c-format
 msgid "PL/Python trigger function returned \"MODIFY\" in a DELETE trigger -- ignored"
 msgstr "función de disparador de PL/Python retorno «MODIFY» en un disparador de tipo DELETE -- ignorado"
 
-#: plpy_exec.c:402
+#: plpy_exec.c:398
 #, c-format
 msgid "Expected None, \"OK\", \"SKIP\", or \"MODIFY\"."
 msgstr "Se esperaba None, «OK», «SKIP» o «MODIFY»."
 
-#: plpy_exec.c:452
+#: plpy_exec.c:443
 #, c-format
 msgid "PyList_SetItem() failed, while setting up arguments"
 msgstr "PyList_SetItem() falló, mientras se inicializaban los argumentos"
 
-#: plpy_exec.c:456
+#: plpy_exec.c:447
 #, c-format
 msgid "PyDict_SetItemString() failed, while setting up arguments"
 msgstr "PyDict_SetItemString() falló, mientras se inicializaban los argumentos"
 
-#: plpy_exec.c:468
+#: plpy_exec.c:459
 #, c-format
 msgid "function returning record called in context that cannot accept type record"
 msgstr "se llamó una función que retorna un registro en un contexto que no puede aceptarlo"
 
-#: plpy_exec.c:685
+#: plpy_exec.c:676
 #, c-format
 msgid "while creating return value"
 msgstr "mientras se creaba el valor de retorno"
 
-#: plpy_exec.c:919
+#: plpy_exec.c:910
 #, c-format
 msgid "TD[\"new\"] deleted, cannot modify row"
 msgstr "TD[\"new\"] borrado, no se puede modicar el registro"
 
-#: plpy_exec.c:924
+#: plpy_exec.c:915
 #, c-format
 msgid "TD[\"new\"] is not a dictionary"
 msgstr "TD[\"new\"] no es un diccionario"
 
-#: plpy_exec.c:951
+#: plpy_exec.c:942
 #, c-format
 msgid "TD[\"new\"] dictionary key at ordinal position %d is not a string"
 msgstr "el nombre del atributo de TD[\"new\"] en la posición %d no es una cadena"
 
-#: plpy_exec.c:958
+#: plpy_exec.c:949
 #, c-format
 msgid "key \"%s\" found in TD[\"new\"] does not exist as a column in the triggering row"
 msgstr "la llave «%s» en TD[\"new\"] no existe como columna en la fila disparadora"
 
-#: plpy_exec.c:963
+#: plpy_exec.c:954
 #, c-format
 msgid "cannot set system attribute \"%s\""
 msgstr "no se puede definir el atributo de sistema «%s»"
 
-#: plpy_exec.c:968
+#: plpy_exec.c:959
 #, c-format
 msgid "cannot set generated column \"%s\""
 msgstr "no se puede definir el atributo generado «%s»"
 
-#: plpy_exec.c:1026
+#: plpy_exec.c:1017
 #, c-format
 msgid "while modifying trigger row"
 msgstr "mientras se modificaba la fila de disparador"
 
 # FIXME not very happy with this
-#: plpy_exec.c:1087
+#: plpy_exec.c:1075
 #, c-format
 msgid "forcibly aborting a subtransaction that has not been exited"
 msgstr "abortando una subtransacción que no se ha cerrado"
 
-#: plpy_main.c:125
+#: plpy_main.c:121
 #, c-format
 msgid "multiple Python libraries are present in session"
 msgstr "hay múltiples librerías de Python presentes en esta sesión"
 
-#: plpy_main.c:126
+#: plpy_main.c:122
 #, c-format
 msgid "Only one Python major version can be used in one session."
 msgstr "Sólo se puede usar una versión mayor de Python en cada sesión."
 
-#: plpy_main.c:142
+#: plpy_main.c:138
 #, c-format
 msgid "untrapped error in initialization"
 msgstr "error no capturado en la inicialización"
 
-#: plpy_main.c:165
+#: plpy_main.c:161
 #, c-format
 msgid "could not import \"__main__\" module"
 msgstr "no se pudo importar el módulo «__main__»"
 
-#: plpy_main.c:174
+#: plpy_main.c:170
 #, c-format
 msgid "could not initialize globals"
 msgstr "no se pudo inicializar las globales"
 
-#: plpy_main.c:399
+#: plpy_main.c:393
 #, c-format
 msgid "PL/Python procedure \"%s\""
 msgstr "procedimiento PL/Python «%s»"
 
-#: plpy_main.c:402
+#: plpy_main.c:396
 #, c-format
 msgid "PL/Python function \"%s\""
 msgstr "función PL/Python «%s»"
 
-#: plpy_main.c:410
+#: plpy_main.c:404
 #, c-format
 msgid "PL/Python anonymous code block"
 msgstr "bloque de código anónimo de PL/Python"
 
-#: plpy_plpymodule.c:186 plpy_plpymodule.c:189
+#: plpy_plpymodule.c:182 plpy_plpymodule.c:185
 #, c-format
 msgid "could not import \"plpy\" module"
 msgstr "no se pudo importar el módulo «plpy»"
 
-#: plpy_plpymodule.c:204
+#: plpy_plpymodule.c:200
 #, c-format
 msgid "could not create the spiexceptions module"
 msgstr "no se pudo crear el módulo spiexceptions"
 
-#: plpy_plpymodule.c:212
+#: plpy_plpymodule.c:208
 #, c-format
 msgid "could not add the spiexceptions module"
 msgstr "no se pudo importar el módulo spiexceptions"
 
-#: plpy_plpymodule.c:280
+#: plpy_plpymodule.c:276
 #, c-format
 msgid "could not generate SPI exceptions"
 msgstr "no se pudo generar excepciones SPI"
 
-#: plpy_plpymodule.c:448
+#: plpy_plpymodule.c:444
 #, c-format
 msgid "could not unpack arguments in plpy.elog"
 msgstr "no se pudo desempaquetar los argumentos de plpy.elog"
 
-#: plpy_plpymodule.c:457
+#: plpy_plpymodule.c:453
 msgid "could not parse error message in plpy.elog"
 msgstr "no se pudo analizar el mensaje de error de plpy.elog"
 
-#: plpy_plpymodule.c:474
+#: plpy_plpymodule.c:470
 #, c-format
 msgid "argument 'message' given by name and position"
 msgstr "el argumento 'message' fue pasado por nombre y posición"
 
-#: plpy_plpymodule.c:501
+#: plpy_plpymodule.c:497
 #, c-format
 msgid "'%s' is an invalid keyword argument for this function"
 msgstr "«%s» no es un argumento válido para esta función"
 
-#: plpy_plpymodule.c:512 plpy_plpymodule.c:518
+#: plpy_plpymodule.c:508 plpy_plpymodule.c:514
 #, c-format
 msgid "invalid SQLSTATE code"
 msgstr "código SQLSTATE no válido"
 
-#: plpy_procedure.c:230
+#: plpy_procedure.c:226
 #, c-format
 msgid "trigger functions can only be called as triggers"
 msgstr "las funciones disparadoras sólo pueden ser llamadas como disparadores"
 
-#: plpy_procedure.c:234
+#: plpy_procedure.c:230
 #, c-format
 msgid "PL/Python functions cannot return type %s"
 msgstr "las funciones PL/Python no pueden retornar el tipo %s"
 
-#: plpy_procedure.c:312
+#: plpy_procedure.c:308
 #, c-format
 msgid "PL/Python functions cannot accept type %s"
 msgstr "la funciones PL/Python no pueden aceptar el tipo %s"
 
-#: plpy_procedure.c:402
+#: plpy_procedure.c:398
 #, c-format
 msgid "could not compile PL/Python function \"%s\""
 msgstr "no se pudo compilar la función PL/Python «%s»"
 
-#: plpy_procedure.c:405
+#: plpy_procedure.c:401
 #, c-format
 msgid "could not compile anonymous PL/Python code block"
 msgstr "no se pudo compilar el bloque anónimo PL/Python"
 
-#: plpy_resultobject.c:121 plpy_resultobject.c:147 plpy_resultobject.c:173
+#: plpy_resultobject.c:119 plpy_resultobject.c:145 plpy_resultobject.c:171
 #, c-format
 msgid "command did not produce a result set"
 msgstr "la orden no produjo un conjunto de resultados"
 
-#: plpy_spi.c:60
+#: plpy_spi.c:56
 #, c-format
 msgid "second argument of plpy.prepare must be a sequence"
 msgstr "el segundo argumento de plpy.prepare debe ser una secuencia"
 
-#: plpy_spi.c:104
+#: plpy_spi.c:100
 #, c-format
 msgid "plpy.prepare: type name at ordinal position %d is not a string"
 msgstr "plpy.prepare: el nombre de tipo en la posición %d no es una cadena"
 
-#: plpy_spi.c:176
+#: plpy_spi.c:172
 #, c-format
 msgid "plpy.execute expected a query or a plan"
 msgstr "plpy.execute espera una consulta o un plan"
 
-#: plpy_spi.c:195
+#: plpy_spi.c:191
 #, c-format
 msgid "plpy.execute takes a sequence as its second argument"
 msgstr "plpy.execute lleva una secuencia como segundo argumento"
 
-#: plpy_spi.c:305
+#: plpy_spi.c:299
 #, c-format
 msgid "SPI_execute_plan failed: %s"
 msgstr "falló SPI_execute_plan: %s"
 
-#: plpy_spi.c:347
+#: plpy_spi.c:341
 #, c-format
 msgid "SPI_execute failed: %s"
 msgstr "falló SPI_execute: %s"
 
-#: plpy_subxactobject.c:97
+#: plpy_subxactobject.c:93
 #, c-format
 msgid "this subtransaction has already been entered"
 msgstr "ya se ha entrado en esta subtransacción"
 
-#: plpy_subxactobject.c:103 plpy_subxactobject.c:161
+#: plpy_subxactobject.c:99 plpy_subxactobject.c:157
 #, c-format
 msgid "this subtransaction has already been exited"
 msgstr "ya se ha salido de esta subtransacción"
 
-#: plpy_subxactobject.c:155
+#: plpy_subxactobject.c:151
 #, c-format
 msgid "this subtransaction has not been entered"
 msgstr "no se ha entrado en esta subtransacción"
 
-#: plpy_subxactobject.c:167
+#: plpy_subxactobject.c:163
 #, c-format
 msgid "there is no subtransaction to exit from"
 msgstr "no hay una subtransacción de la cual salir"
 
-#: plpy_typeio.c:591
+#: plpy_typeio.c:587
 #, c-format
 msgid "could not import a module for Decimal constructor"
 msgstr "no se pudo importar un módulo para el constructor Decimal"
 
-#: plpy_typeio.c:595
+#: plpy_typeio.c:591
 #, c-format
 msgid "no Decimal attribute in module"
 msgstr "no se encontró atributo Decimal en el módulo"
 
-#: plpy_typeio.c:601
+#: plpy_typeio.c:597
 #, c-format
 msgid "conversion from numeric to Decimal failed"
 msgstr "falló la conversión de numeric a Decimal"
 
-#: plpy_typeio.c:915
+#: plpy_typeio.c:911
 #, c-format
 msgid "could not create bytes representation of Python object"
 msgstr "no se pudo crear la representación de cadena de bytes de Python"
 
-#: plpy_typeio.c:1063
+#: plpy_typeio.c:1056
 #, c-format
 msgid "could not create string representation of Python object"
 msgstr "no se pudo crear la representación de cadena de texto del objeto de Python"
 
-#: plpy_typeio.c:1074
+#: plpy_typeio.c:1067
 #, c-format
 msgid "could not convert Python object into cstring: Python string representation appears to contain null bytes"
 msgstr "no se pudo convertir el objeto Python a un cstring: la representación de cadena Python parece tener bytes nulos (\\0)"
 
-#: plpy_typeio.c:1183
+#: plpy_typeio.c:1176
 #, c-format
 msgid "number of array dimensions exceeds the maximum allowed (%d)"
 msgstr "el número de dimensiones del array excede el máximo permitido (%d)"
 
-#: plpy_typeio.c:1187
+#: plpy_typeio.c:1180
 #, c-format
 msgid "could not determine sequence length for function return value"
 msgstr "no se pudo determinar el largo de secuencia del retorno de valor de la función"
 
-#: plpy_typeio.c:1190 plpy_typeio.c:1194
+#: plpy_typeio.c:1183 plpy_typeio.c:1187
 #, c-format
 msgid "array size exceeds the maximum allowed"
 msgstr "el tamaño del array excede el máximo permitido"
 
-#: plpy_typeio.c:1220
+#: plpy_typeio.c:1213
 #, c-format
 msgid "return value of function with array return type is not a Python sequence"
 msgstr "el valor de retorno de la función con tipo de retorno array no es una secuencia Python"
 
-#: plpy_typeio.c:1266
+#: plpy_typeio.c:1259
 #, c-format
 msgid "wrong length of inner sequence: has length %d, but %d was expected"
 msgstr "largo incorrecto de secuencia interna: tiene largo %d, pero se esperaba %d"
 
-#: plpy_typeio.c:1268
+#: plpy_typeio.c:1261
 #, c-format
 msgid "To construct a multidimensional array, the inner sequences must all have the same length."
 msgstr "Para construir un array multidimensional, las secuencias internas deben tener todas el mismo largo."
 
-#: plpy_typeio.c:1347
+#: plpy_typeio.c:1340
 #, c-format
 msgid "malformed record literal: \"%s\""
 msgstr "literal de record no es válido: «%s»"
 
-#: plpy_typeio.c:1348
+#: plpy_typeio.c:1341
 #, c-format
 msgid "Missing left parenthesis."
 msgstr "Falta paréntesis izquierdo."
 
-#: plpy_typeio.c:1349 plpy_typeio.c:1550
+#: plpy_typeio.c:1342 plpy_typeio.c:1543
 #, c-format
 msgid "To return a composite type in an array, return the composite type as a Python tuple, e.g., \"[('foo',)]\"."
 msgstr "Para retornar un tipo compuesto en un array, retorne el tipo compuesto como una tupla de Python, e.g., «[('foo',)]»."
 
-#: plpy_typeio.c:1396
+#: plpy_typeio.c:1389
 #, c-format
 msgid "key \"%s\" not found in mapping"
 msgstr "la llave «%s» no fue encontrada en el mapa"
 
-#: plpy_typeio.c:1397
+#: plpy_typeio.c:1390
 #, c-format
 msgid "To return null in a column, add the value None to the mapping with the key named after the column."
 msgstr "Para retornar null en una columna, agregue el valor None al mapa, con llave llamada igual que la columna."
 
-#: plpy_typeio.c:1450
+#: plpy_typeio.c:1443
 #, c-format
 msgid "length of returned sequence did not match number of columns in row"
 msgstr "el tamaño de la secuencia retornada no concuerda con el número de columnas de la fila"
 
-#: plpy_typeio.c:1548
+#: plpy_typeio.c:1541
 #, c-format
 msgid "attribute \"%s\" does not exist in Python object"
 msgstr "el atributo «%s» no existe en el objeto Python"
 
-#: plpy_typeio.c:1551
+#: plpy_typeio.c:1544
 #, c-format
 msgid "To return null in a column, let the returned object have an attribute named after column with value None."
 msgstr "Para retornar null en una columna, haga que el objeto retornado tenga un atributo llamado igual que la columna, con valor None."
 
-#: plpy_util.c:35
+#: plpy_util.c:31
 #, c-format
 msgid "could not convert Python Unicode object to bytes"
 msgstr "no se pudo convertir el objeto Unicode de Python a bytes"
 
-#: plpy_util.c:41
+#: plpy_util.c:37
 #, c-format
 msgid "could not extract bytes from encoded string"
 msgstr "no se pudo extraer bytes desde la cadena codificada"
diff --git a/src/pl/tcl/po/es.po b/src/pl/tcl/po/es.po
index f5a545233e6..d0d4e886401 100644
--- a/src/pl/tcl/po/es.po
+++ b/src/pl/tcl/po/es.po
@@ -10,7 +10,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: pltcl (PostgreSQL) 12\n"
 "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n"
-"POT-Creation-Date: 2019-09-29 23:37+0000\n"
+"POT-Creation-Date: 2020-05-17 02:38+0000\n"
 "PO-Revision-Date: 2019-06-06 17:26-0400\n"
 "Last-Translator: Carlos Chapi <carlos.chapi@2ndquadrant.com>\n"
 "Language-Team: PgSQL-es-Ayuda <pgsql-es-ayuda@lists.postgresql.org>\n"
@@ -20,11 +20,11 @@ msgstr ""
 "Content-Transfer-Encoding: 8bit\n"
 "X-Generator: Poedit 2.0.2\n"
 
-#: pltcl.c:464
+#: pltcl.c:465
 msgid "PL/Tcl function to call once when pltcl is first used."
 msgstr "función PL/Tcl a ejecutar cuando se use pltcl por primera vez."
 
-#: pltcl.c:471
+#: pltcl.c:472
 msgid "PL/TclU function to call once when pltclu is first used."
 msgstr "función PL/TclU a ejecutar cuando se use pltclu por primera vez."
 
@@ -44,27 +44,27 @@ msgstr "la función «%s» no debe ser SECURITY DEFINER"
 msgid "processing %s parameter"
 msgstr "procesando el parámetro %s"
 
-#: pltcl.c:842
+#: pltcl.c:835
 #, c-format
 msgid "set-valued function called in context that cannot accept a set"
 msgstr "se llamó una función que retorna un conjunto en un contexto que no puede aceptarlo"
 
-#: pltcl.c:1015
+#: pltcl.c:1008
 #, c-format
 msgid "function returning record called in context that cannot accept type record"
 msgstr "se llamó una función que retorna un registro en un contexto que no puede aceptarlo"
 
-#: pltcl.c:1299
+#: pltcl.c:1292
 #, c-format
 msgid "could not split return value from trigger: %s"
 msgstr "no se pudo separar el valor de retorno del disparador: %s"
 
-#: pltcl.c:1379 pltcl.c:1809
+#: pltcl.c:1373 pltcl.c:1803
 #, c-format
 msgid "%s"
 msgstr "%s"
 
-#: pltcl.c:1380
+#: pltcl.c:1374
 #, c-format
 msgid ""
 "%s\n"
@@ -73,42 +73,42 @@ msgstr ""
 "%s\n"
 "en función PL/Tcl \"%s\""
 
-#: pltcl.c:1544
+#: pltcl.c:1538
 #, c-format
 msgid "trigger functions can only be called as triggers"
 msgstr "las funciones disparadoras sólo pueden ser invocadas como disparadores"
 
-#: pltcl.c:1548
+#: pltcl.c:1542
 #, c-format
 msgid "PL/Tcl functions cannot return type %s"
 msgstr "las funciones PL/Tcl no pueden retornar tipo %s"
 
-#: pltcl.c:1587
+#: pltcl.c:1581
 #, c-format
 msgid "PL/Tcl functions cannot accept type %s"
 msgstr "las funciones PL/Tcl no pueden aceptar el tipog%s"
 
-#: pltcl.c:1701
+#: pltcl.c:1695
 #, c-format
 msgid "could not create internal procedure \"%s\": %s"
 msgstr "no se pudo crear procedimiento interno «%s»: %s"
 
-#: pltcl.c:3208
+#: pltcl.c:3199
 #, c-format
 msgid "column name/value list must have even number of elements"
 msgstr "la lista de nombres de columnas y valores debe tener un número par de elementos"
 
-#: pltcl.c:3226
+#: pltcl.c:3217
 #, c-format
 msgid "column name/value list contains nonexistent column name \"%s\""
 msgstr "la lista de nombres de columnas y valores contiene el nombre de columna no existente «%s»"
 
-#: pltcl.c:3233
+#: pltcl.c:3224
 #, c-format
 msgid "cannot set system attribute \"%s\""
 msgstr "no se puede definir el atributo de sistema «%s»"
 
-#: pltcl.c:3239
+#: pltcl.c:3230
 #, c-format
 msgid "cannot set generated column \"%s\""
 msgstr "no se puede definir el atributo generado «%s»"