es: automated update
authorAlvaro Herrera <alvherre@alvh.no-ip.org>
Thu, 11 May 2023 17:37:03 +0000 (19:37 +0200)
committerAlvaro Herrera <alvherre@alvh.no-ip.org>
Thu, 11 May 2023 17:37:03 +0000 (19:37 +0200)
24 files changed:
es/ecpg.po
es/ecpglib.po
es/initdb.po
es/pg_archivecleanup.po
es/pg_basebackup.po
es/pg_checksums.po
es/pg_config.po
es/pg_controldata.po
es/pg_ctl.po
es/pg_dump.po
es/pg_resetwal.po
es/pg_rewind.po
es/pg_test_fsync.po
es/pg_test_timing.po
es/pg_upgrade.po
es/pg_verifybackup.po
es/pg_waldump.po
es/pgscripts.po
es/plperl.po
es/plpgsql.po
es/plpython.po
es/pltcl.po
es/postgres.po
es/psql.po

index 37453418ef9da02625dafae6129f645f748c9477..51336be9208cbaeb6436360ab2253e39f3929a18 100644 (file)
@@ -12,7 +12,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ecpg (PostgreSQL) 15\n"
 "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n"
-"POT-Creation-Date: 2022-09-24 23:10+0000\n"
+"POT-Creation-Date: 2023-05-09 09:09+0000\n"
 "PO-Revision-Date: 2022-10-20 09:05+0200\n"
 "Last-Translator: Carlos Chapi <carloswaldo@babelruins.org>\n"
 "Language-Team: PgSQL-es-Ayuda <pgsql-es-ayuda@lists.postgresql.org>\n"
@@ -28,37 +28,37 @@ msgstr ""
 msgid "variable \"%s\" must have a numeric type"
 msgstr "la variable «%s» debe tener tipo numérico"
 
-#: descriptor.c:125 descriptor.c:156
+#: descriptor.c:124 descriptor.c:155
 #, c-format
 msgid "descriptor %s bound to connection %s does not exist"
 msgstr "el descriptor %s vinculado a la conexión %s no existe"
 
-#: descriptor.c:127 descriptor.c:158
+#: descriptor.c:126 descriptor.c:157
 #, c-format
 msgid "descriptor %s bound to the default connection does not exist"
 msgstr "el descriptor %s vinculado a la conexión predeterminada no existe"
 
-#: descriptor.c:173 descriptor.c:225
+#: descriptor.c:172 descriptor.c:224
 #, c-format
 msgid "descriptor header item \"%d\" does not exist"
 msgstr "no existe el descriptor del elemento de cabecera «%d»"
 
-#: descriptor.c:195
+#: descriptor.c:194
 #, c-format
 msgid "nullable is always 1"
 msgstr "nullable es siempre 1"
 
-#: descriptor.c:198
+#: descriptor.c:197
 #, c-format
 msgid "key_member is always 0"
 msgstr "key_member es siempre 0"
 
-#: descriptor.c:292
+#: descriptor.c:291
 #, c-format
 msgid "descriptor item \"%s\" is not implemented"
 msgstr "elemento del descriptor «%s» no está implementado"
 
-#: descriptor.c:302
+#: descriptor.c:301
 #, c-format
 msgid "descriptor item \"%s\" cannot be set"
 msgstr "no se puede establecer el elemento del descriptor «%s»"
@@ -196,172 +196,172 @@ msgstr "Sitio web de %s: <%s>\n"
 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:176 ecpg.c:333 ecpg.c:344
-#, c-format
-msgid "%s: could not open file \"%s\": %s\n"
-msgstr "%s: no se pudo abrir el archivo «%s»: %s\n"
-
-#: ecpg.c:219 ecpg.c:232 ecpg.c:248 ecpg.c:274
+#: ecpg.c:184 ecpg.c:235 ecpg.c:249 ecpg.c:275
 #, c-format
 msgid "Try \"%s --help\" for more information.\n"
 msgstr "Utilice «%s --help» para obtener mayor información.\n"
 
-#: ecpg.c:243
+#: ecpg.c:192
 #, 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:262
+#: ecpg.c:219 ecpg.c:334 ecpg.c:345
+#, c-format
+msgid "%s: could not open file \"%s\": %s\n"
+msgstr "%s: no se pudo abrir el archivo «%s»: %s\n"
+
+#: ecpg.c:263
 #, 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:264
+#: ecpg.c:265
 #, c-format
 msgid "EXEC SQL INCLUDE ... search starts here:\n"
 msgstr "EXEC SQL INCLUDE ... la búsqueda comienza aquí:\n"
 
-#: ecpg.c:267
+#: ecpg.c:268
 #, c-format
 msgid "end of search list\n"
 msgstr "fin de la lista de búsqueda\n"
 
-#: ecpg.c:273
+#: ecpg.c:274
 #, c-format
 msgid "%s: no input files specified\n"
 msgstr "%s: no se especificaron archivos de entrada\n"
 
-#: ecpg.c:477
+#: ecpg.c:478
 #, c-format
 msgid "cursor \"%s\" has been declared but not opened"
 msgstr "el cursor «%s» fue declarado pero no abierto"
 
-#: ecpg.c:490 preproc.y:130
+#: ecpg.c:491 preproc.y:130
 #, c-format
 msgid "could not remove output file \"%s\"\n"
 msgstr "no se pudo eliminar el archivo de salida «%s»\n"
 
-#: pgc.l:508
+#: pgc.l:520
 #, c-format
 msgid "unterminated /* comment"
 msgstr "comentario /* no cerrado"
 
-#: pgc.l:525
+#: pgc.l:537
 #, c-format
 msgid "unterminated bit string literal"
 msgstr "una cadena de bits está inconclusa"
 
-#: pgc.l:533
+#: pgc.l:545
 #, c-format
 msgid "unterminated hexadecimal string literal"
 msgstr "una cadena hexadecimal está inconclusa"
 
-#: pgc.l:608
+#: pgc.l:620
 #, c-format
 msgid "invalid bit string literal"
 msgstr "cadena de bits no válida"
 
-#: pgc.l:613
+#: pgc.l:625
 #, c-format
 msgid "invalid hexadecimal string literal"
 msgstr "cadena hexadecimal no válida"
 
-#: pgc.l:631
+#: pgc.l:643
 #, c-format
 msgid "unhandled previous state in xqs\n"
 msgstr "estado previo no manejado en xqs\n"
 
-#: pgc.l:657 pgc.l:766
+#: pgc.l:669 pgc.l:778
 #, c-format
 msgid "unterminated quoted string"
 msgstr "una cadena en comillas está inconclusa"
 
-#: pgc.l:708
+#: pgc.l:720
 #, c-format
 msgid "unterminated dollar-quoted string"
 msgstr "una cadena separada por $ está inconclusa"
 
-#: pgc.l:726 pgc.l:746
+#: pgc.l:738 pgc.l:758
 #, c-format
 msgid "zero-length delimited identifier"
 msgstr "identificador delimitado de longitud cero"
 
-#: pgc.l:757
+#: pgc.l:769
 #, c-format
 msgid "unterminated quoted identifier"
 msgstr "un identificador en comillas está inconcluso"
 
-#: pgc.l:926
+#: pgc.l:938
 #, c-format
 msgid "trailing junk after parameter"
 msgstr "basura sigue después de un parámetro"
 
-#: pgc.l:968 pgc.l:971 pgc.l:974
+#: pgc.l:990 pgc.l:993 pgc.l:996 pgc.l:999 pgc.l:1002 pgc.l:1005
 #, c-format
 msgid "trailing junk after numeric literal"
 msgstr "basura sigue después de un literal numérico"
 
-#: pgc.l:1100
+#: pgc.l:1127
 #, c-format
 msgid "nested /* ... */ comments"
 msgstr "comentarios /* ... */ anidados"
 
-#: pgc.l:1193
+#: pgc.l:1220
 #, c-format
 msgid "missing identifier in EXEC SQL UNDEF command"
 msgstr "falta un identificador en la orden EXEC SQL UNDEF"
 
-#: pgc.l:1211 pgc.l:1224 pgc.l:1240 pgc.l:1253
+#: pgc.l:1238 pgc.l:1251 pgc.l:1267 pgc.l:1280
 #, c-format
 msgid "too many nested EXEC SQL IFDEF conditions"
 msgstr "demasiadas condiciones EXEC SQL IFDEF anidadas"
 
-#: pgc.l:1269 pgc.l:1280 pgc.l:1295 pgc.l:1317
+#: pgc.l:1296 pgc.l:1307 pgc.l:1322 pgc.l:1344
 #, c-format
 msgid "missing matching \"EXEC SQL IFDEF\" / \"EXEC SQL IFNDEF\""
 msgstr "falta el «EXEC SQL IFDEF» / «EXEC SQL IFNDEF»"
 
-#: pgc.l:1271 pgc.l:1282 pgc.l:1463
+#: pgc.l:1298 pgc.l:1309 pgc.l:1490
 #, c-format
 msgid "missing \"EXEC SQL ENDIF;\""
 msgstr "falta el «EXEC SQL ENDIF;»"
 
-#: pgc.l:1297 pgc.l:1319
+#: pgc.l:1324 pgc.l:1346
 #, c-format
 msgid "more than one EXEC SQL ELSE"
 msgstr "hay más de un EXEC SQL ELSE"
 
-#: pgc.l:1342 pgc.l:1356
+#: pgc.l:1369 pgc.l:1383
 #, c-format
 msgid "unmatched EXEC SQL ENDIF"
 msgstr "EXEC SQL ENDIF sin coincidencia"
 
-#: pgc.l:1411
+#: pgc.l:1438
 #, c-format
 msgid "missing identifier in EXEC SQL IFDEF command"
 msgstr "identificador faltante en la orden EXEC SQL IFDEF"
 
-#: pgc.l:1420
+#: pgc.l:1447
 #, c-format
 msgid "missing identifier in EXEC SQL DEFINE command"
 msgstr "identificador faltante en la orden EXEC SQL DEFINE"
 
-#: pgc.l:1453
+#: pgc.l:1480
 #, c-format
 msgid "syntax error in EXEC SQL INCLUDE command"
 msgstr "error de sintaxis en orden EXEC SQL INCLUDE"
 
-#: pgc.l:1503
+#: pgc.l:1530
 #, c-format
 msgid "internal error: unreachable state; please report this to <%s>"
 msgstr "error interno: estado no esperado; por favor reporte a <%s>"
 
-#: pgc.l:1655
+#: pgc.l:1682
 #, 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:1678
+#: pgc.l:1705
 #, 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"
@@ -395,12 +395,12 @@ 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:552 preproc.y:17925
+#: preproc.y:552 preproc.y:18400
 #, c-format
 msgid "type \"%s\" is already defined"
 msgstr "el tipo «%s» ya está definido"
 
-#: preproc.y:577 preproc.y:18560 preproc.y:18885 variable.c:621
+#: preproc.y:577 preproc.y:19035 preproc.y:19357 variable.c:625
 #, 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"
@@ -410,180 +410,175 @@ msgstr "los arrays multidimensionales para tipos de datos simples no están sopo
 msgid "connection %s is overwritten with %s by DECLARE statement %s"
 msgstr "la conexión %s es sobrescrita con %s por la sentencia DECLARE %s"
 
-#: preproc.y:1767
+#: preproc.y:1792
 #, 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:2017
+#: preproc.y:2042
 #, c-format
 msgid "AT option not allowed in CONNECT statement"
 msgstr "la opción AT no está permitida en la sentencia CONNECT"
 
-#: preproc.y:2057
+#: preproc.y:2082
 #, c-format
 msgid "AT option not allowed in DISCONNECT statement"
 msgstr "la opción AT no está permitida en la sentencia DISCONNECT"
 
-#: preproc.y:2112
+#: preproc.y:2137
 #, 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:2134
+#: preproc.y:2159
 #, c-format
 msgid "AT option not allowed in TYPE statement"
 msgstr "la opción AT no está permitida en la sentencia TYPE"
 
-#: preproc.y:2143
+#: preproc.y:2168
 #, c-format
 msgid "AT option not allowed in VAR statement"
 msgstr "la opción AT no está permitida en la sentencia VAR"
 
-#: preproc.y:2150
+#: preproc.y:2175
 #, c-format
 msgid "AT option not allowed in WHENEVER statement"
 msgstr "la opción AT no está permitida en la sentencia WHENEVER"
 
-#: preproc.y:2227 preproc.y:2399 preproc.y:2404 preproc.y:2527 preproc.y:4178
-#: preproc.y:4252 preproc.y:4843 preproc.y:5376 preproc.y:5714 preproc.y:6014
-#: preproc.y:7582 preproc.y:9183 preproc.y:9188 preproc.y:12139
+#: preproc.y:2300 preproc.y:2472 preproc.y:2477 preproc.y:2597 preproc.y:4256
+#: preproc.y:4330 preproc.y:4921 preproc.y:5454 preproc.y:5792 preproc.y:6092
+#: preproc.y:7656 preproc.y:9260 preproc.y:9265 preproc.y:12214
 #, c-format
 msgid "unsupported feature will be passed to server"
 msgstr "característica no soportada será pasada al servidor"
 
-#: preproc.y:2785
+#: preproc.y:2855
 #, c-format
 msgid "SHOW ALL is not implemented"
 msgstr "SHOW ALL no está implementado"
 
-#: preproc.y:3484
+#: preproc.y:3539
 #, c-format
 msgid "COPY FROM STDIN is not implemented"
 msgstr "COPY FROM STDIN no está implementado"
 
-#: preproc.y:10230 preproc.y:17498
+#: preproc.y:10311 preproc.y:17897
 #, c-format
 msgid "\"database\" cannot be used as cursor name in INFORMIX mode"
 msgstr "no se puede usar «database» como nombre de cursor en modo INFORMIX"
 
-#: preproc.y:10237 preproc.y:17508
+#: preproc.y:10318 preproc.y:17907
 #, 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:10239 preproc.y:17510
+#: preproc.y:10320 preproc.y:17909
 #, c-format
 msgid "cursor \"%s\" is already defined"
 msgstr "el cursor «%s» ya está definido"
 
-#: preproc.y:10713
+#: preproc.y:10794
 #, 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:11046 preproc.y:11053
-#, c-format
-msgid "subquery in FROM must have an alias"
-msgstr "las subconsultas en FROM deben tener un alias"
-
-#: preproc.y:17190 preproc.y:17197
+#: preproc.y:17589 preproc.y:17596
 #, c-format
 msgid "CREATE TABLE AS cannot specify INTO"
 msgstr "CREATE TABLE AS no puede especificar INTO"
 
-#: preproc.y:17233
+#: preproc.y:17632
 #, c-format
 msgid "expected \"@\", found \"%s\""
 msgstr "se esperaba «@», se encontró «%s»"
 
-#: preproc.y:17245
+#: preproc.y:17644
 #, 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:17248
+#: preproc.y:17647
 #, c-format
 msgid "expected \"://\", found \"%s\""
 msgstr "se esperaba «://», se encontró «%s»"
 
-#: preproc.y:17253
+#: preproc.y:17652
 #, 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:17279
+#: preproc.y:17678
 #, c-format
 msgid "expected \"postgresql\", found \"%s\""
 msgstr "se esperaba «postgresql», se encontró «%s»"
 
-#: preproc.y:17282
+#: preproc.y:17681
 #, c-format
 msgid "invalid connection type: %s"
 msgstr "tipo de conexión no válido: %s"
 
-#: preproc.y:17291
+#: preproc.y:17690
 #, c-format
 msgid "expected \"@\" or \"://\", found \"%s\""
 msgstr "se esperaba «@» o «://», se encontró «%s»"
 
-#: preproc.y:17366 preproc.y:17384
+#: preproc.y:17765 preproc.y:17783
 #, c-format
 msgid "invalid data type"
 msgstr "tipo de dato no válido"
 
-#: preproc.y:17395 preproc.y:17412
+#: preproc.y:17794 preproc.y:17811
 #, c-format
 msgid "incomplete statement"
 msgstr "sentencia incompleta"
 
-#: preproc.y:17398 preproc.y:17415
+#: preproc.y:17797 preproc.y:17814
 #, c-format
 msgid "unrecognized token \"%s\""
 msgstr "elemento «%s» no reconocido"
 
-#: preproc.y:17460
+#: preproc.y:17859
 #, c-format
 msgid "name \"%s\" is already declared"
 msgstr "el nombre «%s» ya está declarado"
 
-#: preproc.y:17728
+#: preproc.y:18148
 #, 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:17740
+#: preproc.y:18219
 #, c-format
 msgid "interval specification not allowed here"
 msgstr "la especificación de intervalo no está permitida aquí"
 
-#: preproc.y:17900 preproc.y:17952
+#: preproc.y:18375 preproc.y:18427
 #, 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:18075
+#: preproc.y:18550
 #, c-format
 msgid "pointers to varchar are not implemented"
 msgstr "los punteros a varchar no están implementados"
 
-#: preproc.y:18526
+#: preproc.y:19001
 #, c-format
 msgid "initializer not allowed in EXEC SQL VAR command"
 msgstr "inicializador no permitido en la orden EXEC SQL VAR"
 
-#: preproc.y:18843
+#: preproc.y:19315
 #, c-format
 msgid "arrays of indicators are not allowed on input"
 msgstr "no se permiten los arrays de indicadores en la entrada"
 
-#: preproc.y:19030
+#: preproc.y:19502
 #, 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:19071
+#: preproc.y:19543
 #, c-format
 msgid "%s at or near \"%s\""
 msgstr "%s en o cerca de «%s»"
@@ -653,64 +648,68 @@ msgstr "struct para indicador «%s» tiene demasiados miembros"
 msgid "unrecognized descriptor item code %d"
 msgstr "código de descriptor de elemento %d no reconocido"
 
-#: variable.c:89 variable.c:116
+#: variable.c:89 variable.c:115
 #, c-format
 msgid "incorrectly formed variable \"%s\""
 msgstr "variable formada incorrectamente «%s»"
 
-#: variable.c:139
+#: variable.c:138
 #, c-format
 msgid "variable \"%s\" is not a pointer"
 msgstr "la variable «%s» no es un puntero"
 
-#: variable.c:142 variable.c:167
+#: variable.c:141 variable.c:166
 #, c-format
 msgid "variable \"%s\" is not a pointer to a structure or a union"
 msgstr "la variable «%s» no es un puntero a una estructura o unión"
 
-#: variable.c:154
+#: variable.c:153
 #, c-format
 msgid "variable \"%s\" is neither a structure nor a union"
 msgstr "la variable «%s» no es una estructura ni una unión"
 
-#: variable.c:164
+#: variable.c:163
 #, c-format
 msgid "variable \"%s\" is not an array"
 msgstr "la variable «%s» no es un array"
 
-#: variable.c:233 variable.c:255
+#: variable.c:232 variable.c:254
 #, c-format
 msgid "variable \"%s\" is not declared"
 msgstr "la variable «%s» no está declarada"
 
-#: variable.c:494
+#: variable.c:493
 #, c-format
 msgid "indicator variable must have an integer type"
 msgstr "la variable de un indicador debe ser de algún tipo numérico entero"
 
-#: variable.c:506
+#: variable.c:510
 #, c-format
 msgid "unrecognized data type name \"%s\""
 msgstr "nombre de tipo de datos «%s» no reconocido"
 
-#: variable.c:517 variable.c:525 variable.c:542 variable.c:545
+#: variable.c:521 variable.c:529 variable.c:546 variable.c:549
 #, c-format
 msgid "multidimensional arrays are not supported"
 msgstr "los arrays multidimensionales no están soportados"
 
-#: variable.c:534
+#: variable.c:538
 #, c-format
 msgid "multilevel pointers (more than 2 levels) are not supported; found %d level"
 msgid_plural "multilevel pointers (more than 2 levels) are not supported; found %d levels"
 msgstr[0] "no se soportan los punteros multinivel (más de 2); se encontró 1 nivel"
 msgstr[1] "no se soportan los punteros multinivel (más de 2); se encontraron %d niveles"
 
-#: variable.c:539
+#: variable.c:543
 #, c-format
 msgid "pointer to pointer is not supported for this data type"
 msgstr "los punteros a puntero no están soportados para este tipo de dato"
 
-#: variable.c:559
+#: variable.c:563
 #, c-format
 msgid "multidimensional arrays for structures are not supported"
 msgstr "los arrays multidimensionales para estructuras no están soportados"
+
+#, c-format
+#~ msgid "subquery in FROM must have an alias"
+#~ msgstr "las subconsultas en FROM deben tener un alias"
index 1bc99890640523cafe5c1847dd55c1a6a75019cb..9b7083d30a16d79b0602630a02b6cff832659b08 100644 (file)
@@ -9,7 +9,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ecpglib (PostgreSQL) 15\n"
 "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n"
-"POT-Creation-Date: 2022-09-24 23:09+0000\n"
+"POT-Creation-Date: 2023-05-09 09:09+0000\n"
 "PO-Revision-Date: 2022-10-20 09:05+0200\n"
 "Last-Translator: Emanuel Calvo Franco <postgres-arg@gmail.com>\n"
 "Language-Team: PgSQL-es-Ayuda <pgsql-es-ayuda@lists.postgresql.org>\n"
@@ -195,6 +195,6 @@ msgstr "se ha perdido la conexión al servidor"
 msgid "SQL error: %s\n"
 msgstr "error SQL: %s\n"
 
-#: execute.c:2189 execute.c:2196
+#: execute.c:2188 execute.c:2195
 msgid "<empty>"
 msgstr "<vacío>"
index a7f2ea26c73fb09f75d2bbd48ed881a8a640d700..abb922bd6ead7ace3076490542861f71a115e41d 100644 (file)
@@ -10,7 +10,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: initdb (PostgreSQL) 15\n"
 "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n"
-"POT-Creation-Date: 2022-09-24 23:19+0000\n"
+"POT-Creation-Date: 2023-05-09 09:20+0000\n"
 "PO-Revision-Date: 2022-10-20 09:05+0200\n"
 "Last-Translator: Carlos Chapi <carloswaldo@babelruins.org>\n"
 "Language-Team: PgSQL-es-Ayuda <pgsql-es-ayuda@lists.postgresql.org>\n"
@@ -40,85 +40,80 @@ msgstr "detalle: "
 msgid "hint: "
 msgstr "consejo: "
 
-#: ../../common/exec.c:149 ../../common/exec.c:266 ../../common/exec.c:312
-#, c-format
-msgid "could not identify current directory: %m"
-msgstr "no se pudo identificar el directorio actual: %m"
-
-#: ../../common/exec.c:168
-#, c-format
-msgid "invalid binary \"%s\""
+#: ../../common/exec.c:172
+#, fuzzy, c-format
+#| msgid "invalid binary \"%s\""
+msgid "invalid binary \"%s\": %m"
 msgstr "el binario «%s» no es válido"
 
-#: ../../common/exec.c:218
-#, c-format
-msgid "could not read binary \"%s\""
+#: ../../common/exec.c:215
+#, fuzzy, c-format
+#| msgid "could not read binary \"%s\""
+msgid "could not read binary \"%s\": %m"
 msgstr "no se pudo leer el binario «%s»"
 
-#: ../../common/exec.c:226
+#: ../../common/exec.c:223
 #, c-format
 msgid "could not find a \"%s\" to execute"
 msgstr "no se pudo encontrar un «%s» para ejecutar"
 
-#: ../../common/exec.c:282 ../../common/exec.c:321
-#, c-format
-msgid "could not change directory to \"%s\": %m"
-msgstr "no se pudo cambiar al directorio «%s»: %m"
+#: ../../common/exec.c:250
+#, fuzzy, c-format
+#| msgid "could not reopen file \"%s\" as stderr: %m"
+msgid "could not resolve path \"%s\" to absolute form: %m"
+msgstr "no se pudo reabrir «%s» para error estándar: %m"
 
-#: ../../common/exec.c:299
-#, c-format
-msgid "could not read symbolic link \"%s\": %m"
-msgstr "no se pudo leer el enlace simbólico «%s»: %m"
-
-#: ../../common/exec.c:422
+#: ../../common/exec.c:412
 #, c-format
 msgid "%s() failed: %m"
 msgstr "%s() falló: %m"
 
-#: ../../common/exec.c:560 ../../common/exec.c:605 ../../common/exec.c:697
-#: initdb.c:334
+#: ../../common/exec.c:550 ../../common/exec.c:595 ../../common/exec.c:687
+#: initdb.c:353
 #, 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:162
+#: ../../common/fe_memutils.c:98 ../../common/fe_memutils.c:161
 #, c-format
 msgid "out of memory\n"
 msgstr "memoria agotada\n"
 
-#: ../../common/fe_memutils.c:92 ../../common/fe_memutils.c:154
+#: ../../common/fe_memutils.c:92 ../../common/fe_memutils.c:153
 #, c-format
 msgid "cannot duplicate null pointer (internal error)\n"
 msgstr "no se puede duplicar un puntero nulo (error interno)\n"
 
-#: ../../common/file_utils.c:87 ../../common/file_utils.c:451
+#: ../../common/file_utils.c:87 ../../common/file_utils.c:447
 #, c-format
 msgid "could not stat file \"%s\": %m"
 msgstr "no se pudo hacer stat al archivo «%s»: %m"
 
-#: ../../common/file_utils.c:166 ../../common/pgfnames.c:48
+#: ../../common/file_utils.c:162 ../../common/pgfnames.c:48
+#: ../../common/rmtree.c:63
 #, c-format
 msgid "could not open directory \"%s\": %m"
 msgstr "no se pudo abrir el directorio «%s»: %m"
 
-#: ../../common/file_utils.c:200 ../../common/pgfnames.c:69
+#: ../../common/file_utils.c:196 ../../common/pgfnames.c:69
+#: ../../common/rmtree.c:104
 #, c-format
 msgid "could not read directory \"%s\": %m"
 msgstr "no se pudo leer el directorio «%s»: %m"
 
-#: ../../common/file_utils.c:232 ../../common/file_utils.c:291
-#: ../../common/file_utils.c:365
+#: ../../common/file_utils.c:228 ../../common/file_utils.c:287
+#: ../../common/file_utils.c:361
 #, c-format
 msgid "could not open file \"%s\": %m"
 msgstr "no se pudo abrir el archivo «%s»: %m"
 
-#: ../../common/file_utils.c:303 ../../common/file_utils.c:373
+#: ../../common/file_utils.c:299 ../../common/file_utils.c:369
 #, c-format
 msgid "could not fsync file \"%s\": %m"
 msgstr "no se pudo sincronizar (fsync) archivo «%s»: %m"
 
-#: ../../common/file_utils.c:383
+#: ../../common/file_utils.c:379
 #, c-format
 msgid "could not rename file \"%s\" to \"%s\": %m"
 msgstr "no se pudo renombrar el archivo de «%s» a «%s»: %m"
@@ -128,55 +123,46 @@ 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:64
-#, c-format
-msgid "could not load library \"%s\": error code %lu"
-msgstr "no se pudo cargar la biblioteca «%s»: código de error %lu"
-
-#: ../../common/restricted_token.c:73
-#, c-format
-msgid "cannot create restricted tokens on this platform: error code %lu"
-msgstr "no se pueden crear tokens restrigidos en esta plataforma: código de error %lu"
-
-#: ../../common/restricted_token.c:82
+#: ../../common/restricted_token.c:60
 #, 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:97
+#: ../../common/restricted_token.c:74
 #, 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:119
+#: ../../common/restricted_token.c:94
 #, 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:140
+#: ../../common/restricted_token.c:115
 #, 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:178
+#: ../../common/restricted_token.c:153
 #, 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:193
+#: ../../common/restricted_token.c:168
 #, 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
-#, c-format
-msgid "could not stat file or directory \"%s\": %m"
-msgstr "no se pudo hacer stat al archivo o directorio «%s»: %m"
+#: ../../common/rmtree.c:95
+#, fuzzy, c-format
+#| msgid "could not find file \"%s\": %m"
+msgid "could not unlink file \"%s\": %m"
+msgstr "no se pudo encontrar el archivo «%s»: %m"
 
-#: ../../common/rmtree.c:101 ../../common/rmtree.c:113
+#: ../../common/rmtree.c:122
 #, c-format
-msgid "could not remove file or directory \"%s\": %m"
-msgstr "no se pudo borrar el archivo o el directorio «%s»: %m"
+msgid "could not remove directory \"%s\": %m"
+msgstr "no se pudo eliminar el directorio «%s»: %m"
 
 #: ../../common/username.c:43
 #, c-format
@@ -192,292 +178,326 @@ 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"
 
-#: ../../common/wait_error.c:45
+#: ../../common/wait_error.c:55
 #, c-format
 msgid "command not executable"
 msgstr "la orden no es ejecutable"
 
-#: ../../common/wait_error.c:49
+#: ../../common/wait_error.c:59
 #, c-format
 msgid "command not found"
 msgstr "orden no encontrada"
 
-#: ../../common/wait_error.c:54
+#: ../../common/wait_error.c:64
 #, c-format
 msgid "child process exited with exit code %d"
 msgstr "el proceso hijo terminó con código de salida %d"
 
-#: ../../common/wait_error.c:62
+#: ../../common/wait_error.c:72
 #, c-format
 msgid "child process was terminated by exception 0x%X"
 msgstr "el proceso hijo fue terminado por una excepción 0x%X"
 
-#: ../../common/wait_error.c:66
+#: ../../common/wait_error.c:76
 #, c-format
 msgid "child process was terminated by signal %d: %s"
 msgstr "el proceso hijo fue terminado por una señal %d: %s"
 
-#: ../../common/wait_error.c:72
+#: ../../common/wait_error.c:82
 #, c-format
 msgid "child process exited with unrecognized status %d"
 msgstr "el proceso hijo terminó con código no reconocido %d"
 
-#: ../../port/dirmod.c:221
+#: ../../port/dirmod.c:287
 #, c-format
 msgid "could not set junction for \"%s\": %s\n"
 msgstr "no se pudo definir un junction para «%s»: %s\n"
 
-#: ../../port/dirmod.c:298
+#: ../../port/dirmod.c:367
 #, c-format
 msgid "could not get junction for \"%s\": %s\n"
 msgstr "no se pudo obtener junction para «%s»: %s\n"
 
-#: initdb.c:464 initdb.c:1459
+#: initdb.c:622 initdb.c:1617
 #, c-format
 msgid "could not open file \"%s\" for reading: %m"
 msgstr "no se pudo abrir archivo «%s» para lectura: %m"
 
-#: initdb.c:505 initdb.c:809 initdb.c:829
+#: initdb.c:666 initdb.c:970 initdb.c:990
 #, c-format
 msgid "could not open file \"%s\" for writing: %m"
 msgstr "no se pudo abrir el archivo «%s» para escritura: %m"
 
-#: initdb.c:509 initdb.c:812 initdb.c:831
+#: initdb.c:670 initdb.c:973 initdb.c:992
 #, c-format
 msgid "could not write file \"%s\": %m"
 msgstr "no se pudo escribir el archivo «%s»: %m"
 
-#: initdb.c:513
+#: initdb.c:674
 #, c-format
 msgid "could not close file \"%s\": %m"
 msgstr "no se pudo cerrar el archivo «%s»: %m"
 
-#: initdb.c:529
+#: initdb.c:690
 #, c-format
 msgid "could not execute command \"%s\": %m"
 msgstr "no se pudo ejecutar la orden «%s»: %m"
 
-#: initdb.c:547
+#: initdb.c:708
 #, c-format
 msgid "removing data directory \"%s\""
 msgstr "eliminando el directorio de datos «%s»"
 
-#: initdb.c:549
+#: initdb.c:710
 #, c-format
 msgid "failed to remove data directory"
 msgstr "no se pudo eliminar el directorio de datos"
 
-#: initdb.c:553
+#: initdb.c:714
 #, c-format
 msgid "removing contents of data directory \"%s\""
 msgstr "eliminando el contenido del directorio «%s»"
 
-#: initdb.c:556
+#: initdb.c:717
 #, c-format
 msgid "failed to remove contents of data directory"
 msgstr "no se pudo eliminar el contenido del directorio de datos"
 
-#: initdb.c:561
+#: initdb.c:722
 #, c-format
 msgid "removing WAL directory \"%s\""
 msgstr "eliminando el directorio de WAL «%s»"
 
-#: initdb.c:563
+#: initdb.c:724
 #, c-format
 msgid "failed to remove WAL directory"
 msgstr "no se pudo eliminar el directorio de WAL"
 
-#: initdb.c:567
+#: initdb.c:728
 #, c-format
 msgid "removing contents of WAL directory \"%s\""
 msgstr "eliminando el contenido del directorio de WAL «%s»"
 
-#: initdb.c:569
+#: initdb.c:730
 #, c-format
 msgid "failed to remove contents of WAL directory"
 msgstr "no se pudo eliminar el contenido del directorio de WAL"
 
-#: initdb.c:576
+#: initdb.c:737
 #, 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:580
+#: initdb.c:741
 #, 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:598
+#: initdb.c:759
 #, c-format
 msgid "cannot be run as root"
 msgstr "no se puede ejecutar como «root»"
 
-#: initdb.c:599
+#: initdb.c:760
 #, c-format
 msgid "Please log in (using, e.g., \"su\") as the (unprivileged) user that will own the server process."
 msgstr "Por favor conéctese (usando, por ejemplo, «su») con un usuario no privilegiado, quien ejecutará el proceso servidor."
 
-#: initdb.c:631
+#: initdb.c:792
 #, c-format
 msgid "\"%s\" is not a valid server encoding name"
 msgstr "«%s» no es un nombre válido de codificación"
 
-#: initdb.c:775
+#: initdb.c:936
 #, c-format
 msgid "file \"%s\" does not exist"
 msgstr "el archivo «%s» no existe"
 
-#: initdb.c:776 initdb.c:781 initdb.c:788
+#: initdb.c:937 initdb.c:942 initdb.c:949
 #, c-format
 msgid "This might mean you have a corrupted installation or identified the wrong directory with the invocation option -L."
 msgstr "Esto puede significar que tiene una instalación corrupta o ha identificado el directorio equivocado con la opción -L."
 
-#: initdb.c:780
+#: initdb.c:941
 #, c-format
 msgid "could not access file \"%s\": %m"
 msgstr "no se pudo acceder al archivo «%s»: %m"
 
-#: initdb.c:787
+#: initdb.c:948
 #, c-format
 msgid "file \"%s\" is not a regular file"
 msgstr "el archivo «%s» no es un archivo regular"
 
-#: initdb.c:922
+#: initdb.c:1081
 #, c-format
 msgid "selecting dynamic shared memory implementation ... "
 msgstr "seleccionando implementación de memoria compartida dinámica ... "
 
-#: initdb.c:931
+#: initdb.c:1090
 #, c-format
 msgid "selecting default max_connections ... "
 msgstr "seleccionando el valor para max_connections ... "
 
-#: initdb.c:962
+#: initdb.c:1110
 #, c-format
 msgid "selecting default shared_buffers ... "
 msgstr "seleccionando el valor para shared_buffers ... "
 
-#: initdb.c:996
+#: initdb.c:1133
 #, c-format
 msgid "selecting default time zone ... "
 msgstr "seleccionando el huso horario por omisión ... "
 
-#: initdb.c:1030
+#: initdb.c:1210
 msgid "creating configuration files ... "
 msgstr "creando archivos de configuración ... "
 
-#: initdb.c:1188 initdb.c:1204 initdb.c:1287 initdb.c:1299
+#: initdb.c:1371 initdb.c:1385 initdb.c:1452 initdb.c:1463
 #, c-format
 msgid "could not change permissions of \"%s\": %m"
 msgstr "no se pudo cambiar los permisos de «%s»: %m"
 
-#: initdb.c:1319
+#: initdb.c:1481
 #, c-format
 msgid "running bootstrap script ... "
 msgstr "ejecutando script de inicio (bootstrap) ... "
 
-#: initdb.c:1331
+#: initdb.c:1493
 #, 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:1333
+#: initdb.c:1495
 #, c-format
 msgid "Specify the correct path using the option -L."
 msgstr "Especifique la ruta correcta usando la opción -L."
 
-#: initdb.c:1437
+#: initdb.c:1595
 msgid "Enter new superuser password: "
 msgstr "Ingrese la nueva contraseña del superusuario: "
 
-#: initdb.c:1438
+#: initdb.c:1596
 msgid "Enter it again: "
 msgstr "Ingrésela nuevamente: "
 
-#: initdb.c:1441
+#: initdb.c:1599
 #, c-format
 msgid "Passwords didn't match.\n"
 msgstr "Las constraseñas no coinciden.\n"
 
-#: initdb.c:1465
+#: initdb.c:1623
 #, 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:1468
+#: initdb.c:1626
 #, c-format
 msgid "password file \"%s\" is empty"
 msgstr "el archivo de contraseña «%s» está vacío"
 
-#: initdb.c:1915
+#: initdb.c:2032
 #, c-format
 msgid "caught signal\n"
 msgstr "se ha capturado una señal\n"
 
-#: initdb.c:1921
+#: initdb.c:2038
 #, c-format
 msgid "could not write to child process: %s\n"
 msgstr "no se pudo escribir al proceso hijo: %s\n"
 
-#: initdb.c:1929
+#: initdb.c:2046
 #, c-format
 msgid "ok\n"
 msgstr "hecho\n"
 
-#: initdb.c:2018
+#: initdb.c:2135
 #, c-format
 msgid "setlocale() failed"
 msgstr "setlocale() falló"
 
-#: initdb.c:2036
+#: initdb.c:2153
 #, c-format
 msgid "failed to restore old locale \"%s\""
 msgstr "no se pudo restaurar la configuración regional anterior «%s»"
 
-#: initdb.c:2043
+#: initdb.c:2160
 #, c-format
 msgid "invalid locale name \"%s\""
 msgstr "nombre de configuración regional «%s» no es válido"
 
-#: initdb.c:2054
+#: initdb.c:2171
 #, 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:2080 initdb.c:2104
+#: initdb.c:2197 initdb.c:2221
 #, c-format
 msgid "encoding mismatch"
 msgstr "codificaciones no coinciden"
 
-#: initdb.c:2081
+#: initdb.c:2198
 #, c-format
 msgid "The encoding you selected (%s) and the encoding that the selected locale uses (%s) do not match. This would lead to misbehavior in various character string processing functions."
 msgstr "La codificación que seleccionó (%s) y la codificación de la configuración regional elegida (%s) no coinciden.  Esto llevaría a comportamientos erráticos en ciertas funciones de procesamiento de cadenas de caracteres."
 
-#: initdb.c:2086 initdb.c:2107
+#: initdb.c:2203 initdb.c:2224
 #, c-format
 msgid "Rerun %s and either do not specify an encoding explicitly, or choose a matching combination."
 msgstr ""
 "Vuelva a ejecutar %s sin escoger explícitamente una codificación, o bien\n"
 "escoja una combinación coincidente."
 
-#: initdb.c:2105
+#: initdb.c:2222
 #, c-format
-#| msgid "current database's encoding is not supported with this provider"
 msgid "The encoding you selected (%s) is not supported with the ICU provider."
 msgstr "La codificación que seleccionó (%s) no está soportada con el proveedor ICU."
 
-#: initdb.c:2169
+#: initdb.c:2250 initdb.c:2323
+#, fuzzy, c-format
+#| msgid "could not open collator for locale \"%s\": %s"
+msgid "could not get language from locale \"%s\": %s"
+msgstr "no se pudo abrir el «collator» para la configuración regional «%s»: %s"
+
+#: initdb.c:2294
 #, c-format
-msgid "ICU locale must be specified"
-msgstr "el locale ICU debe ser especificado"
+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"
 
-#: initdb.c:2176
+#: initdb.c:2300 initdb.c:2353 initdb.c:2395 initdb.c:2475
 #, c-format
 msgid "ICU is not supported in this build"
 msgstr "ICU no está soportado en este servidor"
 
-#: initdb.c:2187
+#: initdb.c:2350
+#, fuzzy, c-format
+#| msgid "cursor \"%s\" has no argument named \"%s\""
+msgid "locale \"%s\" has unknown language \"%s\""
+msgstr "el cursor «%s» no tiene un argumento llamado «%s»"
+
+#: initdb.c:2377
+#, fuzzy, c-format
+#| msgid "could not open collator for locale \"%s\": %s"
+msgid "could not open collator for default locale: %s"
+msgstr "no se pudo abrir el «collator» para la configuración regional «%s»: %s"
+
+#: initdb.c:2386
+#, fuzzy, c-format
+#| msgid "could not determine actual enum type"
+msgid "could not determine default ICU locale"
+msgstr "no se pudo determinar el tipo enum efectivo"
+
+#: initdb.c:2458
+#, fuzzy, c-format
+#| msgid "  ICU locale:  %s\n"
+msgid "Using default ICU locale \"%s\".\n"
+msgstr "  Locale IC:    %s\n"
+
+#: initdb.c:2463
+#, c-format
+msgid "Using language tag \"%s\" for ICU locale \"%s\".\n"
+msgstr ""
+
+#: initdb.c:2486
 #, c-format
 msgid ""
 "%s initializes a PostgreSQL database cluster.\n"
@@ -486,17 +506,17 @@ msgstr ""
 "%s inicializa un cluster de base de datos PostgreSQL.\n"
 "\n"
 
-#: initdb.c:2188
+#: initdb.c:2487
 #, c-format
 msgid "Usage:\n"
 msgstr "Empleo:\n"
 
-#: initdb.c:2189
+#: initdb.c:2488
 #, c-format
 msgid "  %s [OPTION]... [DATADIR]\n"
 msgstr "  %s [OPCIÓN]... [DATADIR]\n"
 
-#: initdb.c:2190
+#: initdb.c:2489
 #, c-format
 msgid ""
 "\n"
@@ -505,64 +525,72 @@ msgstr ""
 "\n"
 "Opciones:\n"
 
-#: initdb.c:2191
+#: initdb.c:2490
 #, 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:2192
+#: initdb.c:2491
 #, 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:2193
+#: initdb.c:2492
 #, 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:2194
+#: initdb.c:2493
 #, 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:2195
+#: initdb.c:2494
 #, 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:2196
+#: initdb.c:2495
 #, 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:2197
+#: initdb.c:2496
 #, c-format
 msgid "      --icu-locale=LOCALE   set ICU locale ID for new databases\n"
 msgstr ""
 "      --icu-locale=LOCALE   definir el ID de configuración regional ICU para\n"
 "                            nuevas bases de datos\n"
 
-#: initdb.c:2198
+#: initdb.c:2497
+#, fuzzy, c-format
+#| msgid "      --icu-locale=LOCALE   set ICU locale ID for new databases\n"
+msgid "      --icu-rules=RULES     set additional ICU collation rules for new databases\n"
+msgstr ""
+"      --icu-locale=LOCALE   definir el ID de configuración regional ICU para\n"
+"                            nuevas bases de datos\n"
+
+#: initdb.c:2498
 #, 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:2199
+#: initdb.c:2499
 #, 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:2200
+#: initdb.c:2500
 #, c-format
 msgid ""
 "      --lc-collate=, --lc-ctype=, --lc-messages=LOCALE\n"
@@ -576,12 +604,12 @@ msgstr ""
 "                            en la categoría respectiva (el valor por omisión\n"
 "                            es tomado de variables de ambiente)\n"
 
-#: initdb.c:2204
+#: initdb.c:2504
 #, c-format
 msgid "      --no-locale           equivalent to --locale=C\n"
 msgstr "      --no-locale           equivalente a --locale=C\n"
 
-#: initdb.c:2205
+#: initdb.c:2505
 #, c-format
 msgid ""
 "      --locale-provider={libc|icu}\n"
@@ -591,12 +619,12 @@ msgstr ""
 "                            define el proveedor de configuración regional\n"
 "                            para nuevas bases de datos\n"
 
-#: initdb.c:2207
+#: initdb.c:2507
 #, 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:2208
+#: initdb.c:2508
 #, c-format
 msgid ""
 "  -T, --text-search-config=CFG\n"
@@ -605,27 +633,27 @@ msgstr ""
 "  -T, --text-search-config=CONF\n"
 "                            configuración de búsqueda en texto por omisión\n"
 
-#: initdb.c:2210
+#: initdb.c:2510
 #, c-format
 msgid "  -U, --username=NAME       database superuser name\n"
 msgstr "  -U, --username=USUARIO    nombre del superusuario del cluster\n"
 
-#: initdb.c:2211
+#: initdb.c:2511
 #, 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:2212
+#: initdb.c:2512
 #, 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:2213
+#: initdb.c:2513
 #, 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:2214
+#: initdb.c:2514
 #, c-format
 msgid ""
 "\n"
@@ -634,47 +662,53 @@ msgstr ""
 "\n"
 "Opciones menos usadas:\n"
 
-#: initdb.c:2215
+#: initdb.c:2515
+#, fuzzy, c-format
+#| msgid "  -c NAME=VALUE      set run-time parameter\n"
+msgid "  -c, --set NAME=VALUE      override default setting for server parameter\n"
+msgstr "  -c VAR=VALOR    definir parámetro de ejecución\n"
+
+#: initdb.c:2516
 #, c-format
 msgid "  -d, --debug               generate lots of debugging output\n"
 msgstr "  -d, --debug               genera mucha salida de depuración\n"
 
-#: initdb.c:2216
+#: initdb.c:2517
 #, c-format
 msgid "      --discard-caches      set debug_discard_caches=1\n"
 msgstr "      --discard-caches      establece debug_discard_caches=1\n"
 
-#: initdb.c:2217
+#: initdb.c:2518
 #, c-format
 msgid "  -L DIRECTORY              where to find the input files\n"
 msgstr "  -L DIRECTORIO             donde encontrar los archivos de entrada\n"
 
-#: initdb.c:2218
+#: initdb.c:2519
 #, 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:2219
+#: initdb.c:2520
 #, 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:2220
+#: initdb.c:2521
 #, c-format
 msgid "      --no-instructions     do not print instructions for next steps\n"
 msgstr "      --no-instructions     no mostrar instrucciones para los siguientes pasos\n"
 
-#: initdb.c:2221
+#: initdb.c:2522
 #, c-format
 msgid "  -s, --show                show internal settings\n"
 msgstr "  -s, --show                muestra variables internas\n"
 
-#: initdb.c:2222
+#: initdb.c:2523
 #, c-format
 msgid "  -S, --sync-only           only sync database files to disk, then exit\n"
 msgstr "  -S, --sync-only           sólo sincronizar el directorio de datos y salir\n"
 
-#: initdb.c:2223
+#: initdb.c:2524
 #, c-format
 msgid ""
 "\n"
@@ -683,17 +717,17 @@ msgstr ""
 "\n"
 "Otras opciones:\n"
 
-#: initdb.c:2224
+#: initdb.c:2525
 #, c-format
 msgid "  -V, --version             output version information, then exit\n"
 msgstr "  -V, --version             mostrar información de version y salir\n"
 
-#: initdb.c:2225
+#: initdb.c:2526
 #, c-format
 msgid "  -?, --help                show this help, then exit\n"
 msgstr "  -?, --help                mostrar esta ayuda y salir\n"
 
-#: initdb.c:2226
+#: initdb.c:2527
 #, c-format
 msgid ""
 "\n"
@@ -704,7 +738,7 @@ msgstr ""
 "Si el directorio de datos no es especificado, se usa la variable de\n"
 "ambiente PGDATA.\n"
 
-#: initdb.c:2228
+#: initdb.c:2529
 #, c-format
 msgid ""
 "\n"
@@ -713,72 +747,72 @@ msgstr ""
 "\n"
 "Reporte errores a <%s>.\n"
 
-#: initdb.c:2229
+#: initdb.c:2530
 #, c-format
 msgid "%s home page: <%s>\n"
 msgstr "Sitio web de %s: <%s>\n"
 
-#: initdb.c:2257
+#: initdb.c:2558
 #, 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:2271
+#: initdb.c:2572
 #, c-format
 msgid "must specify a password for the superuser to enable password authentication"
 msgstr "debe especificar una contraseña al superusuario para activar autentificación mediante contraseña"
 
-#: initdb.c:2290
+#: initdb.c:2591
 #, c-format
 msgid "no data directory specified"
 msgstr "no se especificó un directorio de datos"
 
-#: initdb.c:2291
+#: initdb.c:2592
 #, c-format
 msgid "You must identify the directory where the data for this database system will reside.  Do this with either the invocation option -D or the environment variable PGDATA."
 msgstr "Debe especificar el directorio donde residirán los datos para este clúster.  Hágalo usando la opción -D o la variable de ambiente PGDATA."
 
-#: initdb.c:2308
+#: initdb.c:2609
 #, c-format
 msgid "could not set environment"
 msgstr "no se pudo establecer el ambiente"
 
-#: initdb.c:2326
+#: initdb.c:2627
 #, c-format
 msgid "program \"%s\" is needed by %s but was not found in the same directory as \"%s\""
 msgstr "el programa «%s» es requerido por %s pero se encontró en el mismo directorio que «%s»"
 
-#: initdb.c:2329
+#: initdb.c:2630
 #, c-format
 msgid "program \"%s\" was found by \"%s\" but was not the same version as %s"
 msgstr "El programa «%s» fue encontrado por «%s», pero no es de la misma versión que %s"
 
-#: initdb.c:2344
+#: initdb.c:2645
 #, 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:2361
+#: initdb.c:2662
 #, 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:2364
+#: initdb.c:2665
 #, c-format
 msgid "The database cluster will be initialized with this locale configuration:\n"
 msgstr "El cluster será inicializado con esta configuración regional:\n"
 
-#: initdb.c:2365
+#: initdb.c:2666
 #, c-format
 msgid "  provider:    %s\n"
 msgstr "  proveedor:    %s\n"
 
-#: initdb.c:2367
+#: initdb.c:2668
 #, c-format
 msgid "  ICU locale:  %s\n"
 msgstr "  Locale IC:    %s\n"
 
-#: initdb.c:2368
+#: initdb.c:2669
 #, c-format
 msgid ""
 "  LC_COLLATE:  %s\n"
@@ -795,28 +829,22 @@ msgstr ""
 "  LC_NUMERIC:  %s\n"
 "  LC_TIME:     %s\n"
 
-#: initdb.c:2385
-#, c-format
-#| msgid "The default database encoding has accordingly been set to \"%s\".\n"
-msgid "The default database encoding has been set to \"%s\".\n"
-msgstr "La codificación por omisión ha sido definida a «%s».\n"
-
-#: initdb.c:2397
+#: initdb.c:2699
 #, c-format
 msgid "could not find suitable encoding for locale \"%s\""
 msgstr "no se pudo encontrar una codificación apropiada para la configuración regional «%s»"
 
-#: initdb.c:2399
+#: initdb.c:2701
 #, c-format
 msgid "Rerun %s with the -E option."
 msgstr "Ejecute %s nuevamente con la opción -E."
 
-#: initdb.c:2400 initdb.c:3021 initdb.c:3041
+#: initdb.c:2702 initdb.c:3235 initdb.c:3344 initdb.c:3364
 #, c-format
 msgid "Try \"%s --help\" for more information."
 msgstr "Pruebe «%s --help» para mayor información."
 
-#: initdb.c:2412
+#: initdb.c:2714
 #, c-format
 msgid ""
 "Encoding \"%s\" implied by locale is not allowed as a server-side encoding.\n"
@@ -826,114 +854,109 @@ msgstr ""
 "no puede ser usada como codificación del lado del servidor.\n"
 "La codificación por omisión será «%s».\n"
 
-#: initdb.c:2417
+#: initdb.c:2719
 #, c-format
 msgid "locale \"%s\" requires unsupported encoding \"%s\""
 msgstr "la configuración regional «%s» requiere la codificación no soportada «%s»"
 
-#: initdb.c:2419
+#: initdb.c:2721
 #, c-format
 msgid "Encoding \"%s\" is not allowed as a server-side encoding."
 msgstr "La codificación «%s» no puede ser usada como codificación del lado del servidor."
 
-#: initdb.c:2421
+#: initdb.c:2723
 #, c-format
 msgid "Rerun %s with a different locale selection."
 msgstr "Ejecute %s nuevamente con opciones de configuración regional diferente."
 
-#: initdb.c:2429
+#: initdb.c:2731
 #, 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:2498
+#: initdb.c:2800
 #, c-format
 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:2509
+#: initdb.c:2811
 #, c-format
 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"
 
-#: initdb.c:2514
+#: initdb.c:2816
 #, c-format
 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»"
 
-#: initdb.c:2519
+#: initdb.c:2821
 #, 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:2562 initdb.c:2633
+#: initdb.c:2864 initdb.c:2935
 #, c-format
 msgid "creating directory %s ... "
 msgstr "creando el directorio %s ... "
 
-#: initdb.c:2567 initdb.c:2638 initdb.c:2690 initdb.c:2746
+#: initdb.c:2869 initdb.c:2940 initdb.c:2988 initdb.c:3044
 #, c-format
 msgid "could not create directory \"%s\": %m"
 msgstr "no se pudo crear el directorio «%s»: %m"
 
-#: initdb.c:2576 initdb.c:2648
+#: initdb.c:2878 initdb.c:2950
 #, c-format
 msgid "fixing permissions on existing directory %s ... "
 msgstr "corrigiendo permisos en el directorio existente %s ... "
 
-#: initdb.c:2581 initdb.c:2653
+#: initdb.c:2883 initdb.c:2955
 #, c-format
 msgid "could not change permissions of directory \"%s\": %m"
 msgstr "no se pudo cambiar los permisos del directorio «%s»: %m"
 
-#: initdb.c:2593 initdb.c:2665
+#: initdb.c:2895 initdb.c:2967
 #, c-format
 msgid "directory \"%s\" exists but is not empty"
 msgstr "el directorio «%s» existe pero no está vacío"
 
-#: initdb.c:2597
+#: initdb.c:2899
 #, c-format
 msgid "If you want to create a new database system, either remove or empty the directory \"%s\" or run %s with an argument other than \"%s\"."
 msgstr "Si quiere crear un nuevo cluster de bases de datos, elimine o vacíe el directorio «%s», o ejecute %s con un argumento distinto de «%s»."
 
-#: initdb.c:2605 initdb.c:2675 initdb.c:3058
+#: initdb.c:2907 initdb.c:2977 initdb.c:3385
 #, c-format
 msgid "could not access directory \"%s\": %m"
 msgstr "no se pudo acceder al directorio «%s»: %m"
 
-#: initdb.c:2626
+#: initdb.c:2928
 #, 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:2669
+#: initdb.c:2971
 #, c-format
 msgid "If you want to store the WAL there, either remove or empty the directory \"%s\"."
 msgstr "Si quiere almacenar el WAL ahí, elimine o vacíe el directorio «%s»."
 
-#: initdb.c:2680
+#: initdb.c:2981
 #, c-format
 msgid "could not create symbolic link \"%s\": %m"
 msgstr "no se pudo crear el enlace simbólico «%s»: %m"
 
-#: initdb.c:2683
-#, c-format
-msgid "symlinks are not supported on this platform"
-msgstr "los enlaces simbólicos no están soportados en esta plataforma"
-
-#: initdb.c:2702
+#: initdb.c:3000
 #, c-format
 msgid "It contains a dot-prefixed/invisible file, perhaps due to it being a mount point."
 msgstr "Contiene un archivo invisible o que empieza con un punto (.), quizás por ser un punto de montaje."
 
-#: initdb.c:2704
+#: initdb.c:3002
 #, c-format
 msgid "It contains a lost+found directory, perhaps due to it being a mount point."
 msgstr "Contiene un directorio lost+found, quizás por ser un punto de montaje."
 
-#: initdb.c:2706
+#: initdb.c:3004
 #, c-format
 msgid ""
 "Using a mount point directly as the data directory is not recommended.\n"
@@ -942,67 +965,72 @@ msgstr ""
 "Usar un punto de montaje directamente como directorio de datos no es recomendado.\n"
 "Cree un subdirectorio bajo el punto de montaje."
 
-#: initdb.c:2732
+#: initdb.c:3030
 #, c-format
 msgid "creating subdirectories ... "
 msgstr "creando subdirectorios ... "
 
-#: initdb.c:2775
+#: initdb.c:3073
 msgid "performing post-bootstrap initialization ... "
 msgstr "realizando inicialización post-bootstrap ... "
 
-#: initdb.c:2940
+#: initdb.c:3234
+#, c-format
+msgid "-c %s requires a value"
+msgstr "-c %s requiere un valor"
+
+#: initdb.c:3259
 #, c-format
 msgid "Running in debug mode.\n"
 msgstr "Ejecutando en modo de depuración.\n"
 
-#: initdb.c:2944
+#: initdb.c:3263
 #, 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:3014
+#: initdb.c:3334
 #, c-format
 msgid "unrecognized locale provider: %s"
 msgstr "proveedor de ordenamiento no reconocido: %s"
 
-#: initdb.c:3039
+#: initdb.c:3362
 #, 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:3046
+#: initdb.c:3369 initdb.c:3373
 #, c-format
 msgid "%s cannot be specified unless locale provider \"%s\" is chosen"
 msgstr "%s no puede especificarse a menos que el proveedor de locale «%s» sea escogido"
 
-#: initdb.c:3060 initdb.c:3137
+#: initdb.c:3387 initdb.c:3464
 msgid "syncing data to disk ... "
 msgstr "sincronizando los datos a disco ... "
 
-#: initdb.c:3068
+#: initdb.c:3395
 #, 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:3090
+#: initdb.c:3417
 #, c-format
 msgid "argument of --wal-segsize must be a number"
 msgstr "el argumento de --wal-segsize debe ser un número"
 
-#: initdb.c:3092
+#: initdb.c:3419
 #, 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:3106
+#: initdb.c:3433
 #, 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:3108
+#: initdb.c:3435
 #, c-format
 msgid ""
 "The files belonging to this database system will be owned by user \"%s\".\n"
@@ -1013,17 +1041,17 @@ msgstr ""
 "Este usuario también debe ser quien ejecute el proceso servidor.\n"
 "\n"
 
-#: initdb.c:3124
+#: initdb.c:3451
 #, 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:3126
+#: initdb.c:3453
 #, 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:3143
+#: initdb.c:3470
 #, c-format
 msgid ""
 "\n"
@@ -1035,22 +1063,22 @@ msgstr ""
 "El directorio de datos podría corromperse si el sistema operativo sufre\n"
 "una caída.\n"
 
-#: initdb.c:3148
+#: initdb.c:3475
 #, c-format
 msgid "enabling \"trust\" authentication for local connections"
 msgstr "activando el método de autentificación «trust» para conexiones locales"
 
-#: initdb.c:3149
+#: initdb.c:3476
 #, c-format
 msgid "You can change this by editing pg_hba.conf or using the option -A, or --auth-local and --auth-host, the next time you run initdb."
 msgstr "Puede cambiar esto editando pg_hba.conf o usando el parámetro -A, o --auth-local y --auth-host la próxima vez que ejecute initdb."
 
 #. translator: This is a placeholder in a shell command.
-#: initdb.c:3179
+#: initdb.c:3506
 msgid "logfile"
 msgstr "archivo_de_registro"
 
-#: initdb.c:3181
+#: initdb.c:3508
 #, c-format
 msgid ""
 "\n"
@@ -1064,3 +1092,52 @@ msgstr ""
 "\n"
 "    %s\n"
 "\n"
+
+#, c-format
+#~ msgid "could not identify current directory: %m"
+#~ msgstr "no se pudo identificar el directorio actual: %m"
+
+#, c-format
+#~ msgid "invalid binary \"%s\""
+#~ msgstr "el binario «%s» no es válido"
+
+#, c-format
+#~ msgid "could not read binary \"%s\""
+#~ msgstr "no se pudo leer el binario «%s»"
+
+#, c-format
+#~ msgid "could not change directory to \"%s\": %m"
+#~ msgstr "no se pudo cambiar al directorio «%s»: %m"
+
+#, c-format
+#~ msgid "could not read symbolic link \"%s\": %m"
+#~ msgstr "no se pudo leer el enlace simbólico «%s»: %m"
+
+#, c-format
+#~ msgid "could not load library \"%s\": error code %lu"
+#~ msgstr "no se pudo cargar la biblioteca «%s»: código de error %lu"
+
+#, c-format
+#~ msgid "cannot create restricted tokens on this platform: error code %lu"
+#~ msgstr "no se pueden crear tokens restrigidos en esta plataforma: código de error %lu"
+
+#, c-format
+#~ msgid "could not stat file or directory \"%s\": %m"
+#~ msgstr "no se pudo hacer stat al archivo o directorio «%s»: %m"
+
+#, c-format
+#~ msgid "could not remove file or directory \"%s\": %m"
+#~ msgstr "no se pudo borrar el archivo o el directorio «%s»: %m"
+
+#, c-format
+#~ msgid "ICU locale must be specified"
+#~ msgstr "el locale ICU debe ser especificado"
+
+#, c-format
+#~| msgid "The default database encoding has accordingly been set to \"%s\".\n"
+#~ msgid "The default database encoding has been set to \"%s\".\n"
+#~ msgstr "La codificación por omisión ha sido definida a «%s».\n"
+
+#, c-format
+#~ msgid "symlinks are not supported on this platform"
+#~ msgstr "los enlaces simbólicos no están soportados en esta plataforma"
index c76b0fa4a0443bc9408e72ee47cea86163811e39..fafab1ac8d115abe5e71240fbc8baf1e4a840f0a 100644 (file)
@@ -8,7 +8,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: pg_archivecleanup (PostgreSQL) 15\n"
 "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n"
-"POT-Creation-Date: 2022-09-24 23:21+0000\n"
+"POT-Creation-Date: 2023-05-09 09:21+0000\n"
 "PO-Revision-Date: 2022-10-20 09:06+0200\n"
 "Last-Translator: Carlos Chapi <carlos.chapi@2ndquadrant.com>\n"
 "Language-Team: PgSQL-es-Ayuda <pgsql-es-ayuda@lists.postgresql.org>\n"
index a578ab30a253e74ad22a2d6804a261ba971f4e3c..3501915efbedf51a0d28a0579008f6cca9d576c7 100644 (file)
@@ -10,7 +10,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: pg_basebackup (PostgreSQL) 15\n"
 "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n"
-"POT-Creation-Date: 2022-09-24 23:18+0000\n"
+"POT-Creation-Date: 2023-05-09 09:19+0000\n"
 "PO-Revision-Date: 2022-10-20 09:06+0200\n"
 "Last-Translator: Carlos Chapi <carloswaldo@babelruins.org>\n"
 "Language-Team: PgSQL-es-Ayuda <pgsql-es-ayuda@lists.postgresql.org>\n"
@@ -41,89 +41,101 @@ msgstr "detalle: "
 msgid "hint: "
 msgstr "consejo: "
 
-#: ../../common/compression.c:130 ../../common/compression.c:139
-#: ../../common/compression.c:148
+#: ../../common/compression.c:132 ../../common/compression.c:141
+#: ../../common/compression.c:150 bbstreamer_gzip.c:116 bbstreamer_gzip.c:249
+#: bbstreamer_lz4.c:100 bbstreamer_lz4.c:298 bbstreamer_zstd.c:129
+#: bbstreamer_zstd.c:284
 #, c-format
 msgid "this build does not support compression with %s"
 msgstr "esta instalación no soporta compresión con %s"
 
-#: ../../common/compression.c:203
+#: ../../common/compression.c:205
 msgid "found empty string where a compression option was expected"
 msgstr "se encontró una cadena vacía donde se esperaba una opción de compresión"
 
-#: ../../common/compression.c:237
+#: ../../common/compression.c:244
 #, c-format
-#| msgid "unrecognized column option \"%s\""
 msgid "unrecognized compression option: \"%s\""
 msgstr "opción de compresión no reconocida: «%s»"
 
-#: ../../common/compression.c:276
+#: ../../common/compression.c:283
 #, c-format
 msgid "compression option \"%s\" requires a value"
 msgstr "la opción de compresión «%s» requiere un valor"
 
-#: ../../common/compression.c:285
+#: ../../common/compression.c:292
 #, c-format
 msgid "value for compression option \"%s\" must be an integer"
 msgstr "el valor para la opción de compresión «%s» debe ser un entero"
 
-#: ../../common/compression.c:335
+#: ../../common/compression.c:331
+#, fuzzy, c-format
+#| msgid "value for compression option \"%s\" must be an integer"
+msgid "value for compression option \"%s\" must be a boolean"
+msgstr "el valor para la opción de compresión «%s» debe ser un entero"
+
+#: ../../common/compression.c:379
 #, c-format
 msgid "compression algorithm \"%s\" does not accept a compression level"
 msgstr "el algoritmo de compresión «%s» no acepta un nivel de compresión"
 
-#: ../../common/compression.c:342
+#: ../../common/compression.c:386
 #, c-format
-#| msgid "compression algorithm \"%s\" expects a compression level between %d and %d"
 msgid "compression algorithm \"%s\" expects a compression level between %d and %d (default at %d)"
 msgstr "el algoritmo de compresión «%s» espera un nivel de compresión entre %d y %d (por omisión %d)"
 
-#: ../../common/compression.c:353
+#: ../../common/compression.c:397
 #, c-format
 msgid "compression algorithm \"%s\" does not accept a worker count"
 msgstr "el algoritmo de compresión «%s» no acepta una cantidad de procesos ayudantes"
 
+#: ../../common/compression.c:408
+#, fuzzy, c-format
+#| msgid "compression algorithm \"%s\" does not accept a worker count"
+msgid "compression algorithm \"%s\" does not support long-distance mode"
+msgstr "el algoritmo de compresión «%s» no acepta una cantidad de procesos ayudantes"
+
 #: ../../common/fe_memutils.c:35 ../../common/fe_memutils.c:75
-#: ../../common/fe_memutils.c:98 ../../common/fe_memutils.c:162
+#: ../../common/fe_memutils.c:98 ../../common/fe_memutils.c:161
 #, c-format
 msgid "out of memory\n"
 msgstr "memoria agotada\n"
 
-#: ../../common/fe_memutils.c:92 ../../common/fe_memutils.c:154
+#: ../../common/fe_memutils.c:92 ../../common/fe_memutils.c:153
 #, c-format
 msgid "cannot duplicate null pointer (internal error)\n"
 msgstr "no se puede duplicar un puntero nulo (error interno)\n"
 
-#: ../../common/file_utils.c:87 ../../common/file_utils.c:451
-#: pg_receivewal.c:380 pg_recvlogical.c:341
+#: ../../common/file_utils.c:87 ../../common/file_utils.c:447
+#: pg_receivewal.c:319 pg_recvlogical.c:339
 #, c-format
 msgid "could not stat file \"%s\": %m"
 msgstr "no se pudo hacer stat al archivo «%s»: %m"
 
-#: ../../common/file_utils.c:166 pg_receivewal.c:303
+#: ../../common/file_utils.c:162 pg_receivewal.c:242
 #, c-format
 msgid "could not open directory \"%s\": %m"
 msgstr "no se pudo abrir el directorio «%s»: %m"
 
-#: ../../common/file_utils.c:200 pg_receivewal.c:532
+#: ../../common/file_utils.c:196 pg_receivewal.c:471
 #, c-format
 msgid "could not read directory \"%s\": %m"
 msgstr "no se pudo leer el directorio «%s»: %m"
 
-#: ../../common/file_utils.c:232 ../../common/file_utils.c:291
-#: ../../common/file_utils.c:365 ../../fe_utils/recovery_gen.c:121
-#: pg_receivewal.c:447
+#: ../../common/file_utils.c:228 ../../common/file_utils.c:287
+#: ../../common/file_utils.c:361 ../../fe_utils/recovery_gen.c:121
+#: pg_receivewal.c:386
 #, c-format
 msgid "could not open file \"%s\": %m"
 msgstr "no se pudo abrir el archivo «%s»: %m"
 
-#: ../../common/file_utils.c:303 ../../common/file_utils.c:373
-#: pg_recvlogical.c:196
+#: ../../common/file_utils.c:299 ../../common/file_utils.c:369
+#: pg_recvlogical.c:194
 #, c-format
 msgid "could not fsync file \"%s\": %m"
 msgstr "no se pudo sincronizar (fsync) archivo «%s»: %m"
 
-#: ../../common/file_utils.c:383 pg_basebackup.c:2256 walmethods.c:459
+#: ../../common/file_utils.c:379 pg_basebackup.c:2237 walmethods.c:462
 #, c-format
 msgid "could not rename file \"%s\" to \"%s\": %m"
 msgstr "no se pudo renombrar el archivo de «%s» a «%s»: %m"
@@ -140,24 +152,24 @@ msgstr "%s debe estar en el rango %d..%d"
 
 #: ../../fe_utils/recovery_gen.c:34 ../../fe_utils/recovery_gen.c:45
 #: ../../fe_utils/recovery_gen.c:70 ../../fe_utils/recovery_gen.c:90
-#: ../../fe_utils/recovery_gen.c:149 pg_basebackup.c:1636
+#: ../../fe_utils/recovery_gen.c:149 pg_basebackup.c:1609
 #, c-format
 msgid "out of memory"
 msgstr "memoria agotada"
 
 #: ../../fe_utils/recovery_gen.c:124 bbstreamer_file.c:121
-#: bbstreamer_file.c:258 pg_basebackup.c:1433 pg_basebackup.c:1727
+#: bbstreamer_file.c:258 pg_basebackup.c:1406 pg_basebackup.c:1700
 #, c-format
 msgid "could not write to file \"%s\": %m"
 msgstr "no se pudo escribir a archivo «%s»: %m"
 
-#: ../../fe_utils/recovery_gen.c:133 bbstreamer_file.c:93 bbstreamer_file.c:339
-#: pg_basebackup.c:1497 pg_basebackup.c:1706
+#: ../../fe_utils/recovery_gen.c:133 bbstreamer_file.c:93 bbstreamer_file.c:360
+#: pg_basebackup.c:1470 pg_basebackup.c:1679
 #, c-format
 msgid "could not create file \"%s\": %m"
 msgstr "no se pudo crear archivo «%s»: %m"
 
-#: bbstreamer_file.c:138 pg_recvlogical.c:635
+#: bbstreamer_file.c:138 pg_recvlogical.c:633
 #, c-format
 msgid "could not close file \"%s\": %m"
 msgstr "no se pudo cerrar el archivo «%s»: %m"
@@ -167,22 +179,22 @@ msgstr "no se pudo cerrar el archivo «%s»: %m"
 msgid "unexpected state while extracting archive"
 msgstr "estado inesperado mientras se extraía el archivo"
 
-#: bbstreamer_file.c:298 pg_basebackup.c:686 pg_basebackup.c:730
+#: bbstreamer_file.c:320 pg_basebackup.c:686 pg_basebackup.c:730
 #, c-format
 msgid "could not create directory \"%s\": %m"
 msgstr "no se pudo crear el directorio «%s»: %m"
 
-#: bbstreamer_file.c:304
+#: bbstreamer_file.c:325
 #, c-format
 msgid "could not set permissions on directory \"%s\": %m"
 msgstr "no se pudo definir los permisos del directorio «%s»: %m"
 
-#: bbstreamer_file.c:323
+#: bbstreamer_file.c:344
 #, 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"
 
-#: bbstreamer_file.c:343
+#: bbstreamer_file.c:364
 #, c-format
 msgid "could not set permissions on file \"%s\": %m"
 msgstr "no se pudo definir los permisos al archivo «%s»: %m"
@@ -207,11 +219,6 @@ msgstr "no se pudo abrir el archivo de salida: %m"
 msgid "could not set compression level %d: %s"
 msgstr "no se pudo definir el nivel de compresión %d: %s"
 
-#: bbstreamer_gzip.c:116 bbstreamer_gzip.c:249
-#, c-format
-msgid "this build does not support gzip compression"
-msgstr "esta instalación no soporta compresión gzip"
-
 #: bbstreamer_gzip.c:143
 #, c-format
 msgid "could not write to compressed file \"%s\": %s"
@@ -222,12 +229,12 @@ msgstr "no se pudo escribir al archivo comprimido «%s»: %s"
 msgid "could not close compressed file \"%s\": %m"
 msgstr "no se pudo cerrar el archivo comprimido «%s»: %m"
 
-#: bbstreamer_gzip.c:245 walmethods.c:869
+#: bbstreamer_gzip.c:245 walmethods.c:876
 #, c-format
 msgid "could not initialize compression library"
 msgstr "no se pudo inicializar la biblioteca de compresión"
 
-#: bbstreamer_gzip.c:296 bbstreamer_lz4.c:354 bbstreamer_zstd.c:316
+#: bbstreamer_gzip.c:296 bbstreamer_lz4.c:354 bbstreamer_zstd.c:329
 #, c-format
 msgid "could not decompress data: %s"
 msgstr "no se pudo descomprimir datos: %s"
@@ -242,17 +249,12 @@ msgstr "formato de resultados inesperado mientras se inyectaban los parámetros
 msgid "could not create lz4 compression context: %s"
 msgstr "no se pudo crear un contexto de compresión lz4: %s"
 
-#: bbstreamer_lz4.c:100 bbstreamer_lz4.c:298
-#, c-format
-msgid "this build does not support lz4 compression"
-msgstr "esta instalación no soporta compresión lz4"
-
 #: bbstreamer_lz4.c:140
 #, c-format
 msgid "could not write lz4 header: %s"
 msgstr "no se pudo escribir la cabecera lz4: %s"
 
-#: bbstreamer_lz4.c:189 bbstreamer_zstd.c:168 bbstreamer_zstd.c:210
+#: bbstreamer_lz4.c:189 bbstreamer_zstd.c:181 bbstreamer_zstd.c:223
 #, c-format
 msgid "could not compress data: %s"
 msgstr "no se pudo comprimir datos: %s"
@@ -302,97 +304,98 @@ msgstr "no se pudo definir el nivel de compresión zstd a %d: %s"
 msgid "could not set compression worker count to %d: %s"
 msgstr "no se pudo definir la cantidad de procesos ayudantes de compresión a %d: %s"
 
-#: bbstreamer_zstd.c:116 bbstreamer_zstd.c:271
-#, c-format
-msgid "this build does not support zstd compression"
-msgstr "esta instalación no soporta compresión zstd"
+#: bbstreamer_zstd.c:116
+#, fuzzy, c-format
+#| msgid "could not set compression level %d: %s"
+msgid "could not set compression flag for %s: %s"
+msgstr "no se pudo definir el nivel de compresión %d: %s"
 
-#: bbstreamer_zstd.c:262
+#: bbstreamer_zstd.c:275
 #, c-format
 msgid "could not create zstd decompression context"
 msgstr "no se pudo crear el contexto de descompresión zstd"
 
-#: pg_basebackup.c:240
+#: pg_basebackup.c:238
 #, c-format
 msgid "removing data directory \"%s\""
 msgstr "eliminando el directorio de datos «%s»"
 
-#: pg_basebackup.c:242
+#: pg_basebackup.c:240
 #, c-format
 msgid "failed to remove data directory"
 msgstr "no se pudo eliminar el directorio de datos"
 
-#: pg_basebackup.c:246
+#: pg_basebackup.c:244
 #, c-format
 msgid "removing contents of data directory \"%s\""
 msgstr "eliminando el contenido del directorio «%s»"
 
-#: pg_basebackup.c:248
+#: pg_basebackup.c:246
 #, c-format
 msgid "failed to remove contents of data directory"
 msgstr "no se pudo eliminar el contenido del directorio de datos"
 
-#: pg_basebackup.c:253
+#: pg_basebackup.c:251
 #, c-format
 msgid "removing WAL directory \"%s\""
 msgstr "eliminando el directorio de WAL «%s»"
 
-#: pg_basebackup.c:255
+#: pg_basebackup.c:253
 #, c-format
 msgid "failed to remove WAL directory"
 msgstr "no se pudo eliminar el directorio de WAL"
 
-#: pg_basebackup.c:259
+#: pg_basebackup.c:257
 #, c-format
 msgid "removing contents of WAL directory \"%s\""
 msgstr "eliminando el contenido del directorio de WAL «%s»"
 
-#: pg_basebackup.c:261
+#: pg_basebackup.c:259
 #, c-format
 msgid "failed to remove contents of WAL directory"
 msgstr "no se pudo eliminar el contenido del directorio de WAL"
 
-#: pg_basebackup.c:267
+#: pg_basebackup.c:265
 #, 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:270
+#: pg_basebackup.c:268
 #, 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:274
+#: pg_basebackup.c:272
 #, 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:326
+#: pg_basebackup.c:324
 #, c-format
 msgid "directory name too long"
 msgstr "nombre de directorio demasiado largo"
 
-#: pg_basebackup.c:333
+#: pg_basebackup.c:331
 #, c-format
 msgid "multiple \"=\" signs in tablespace mapping"
 msgstr "múltiples signos «=» en mapeo de tablespace"
 
-#: pg_basebackup.c:342
+#: pg_basebackup.c:340
 #, 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:351
+#: pg_basebackup.c:359
 #, 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:355
+#: pg_basebackup.c:363
 #, 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:377
+#: pg_basebackup.c:385
 #, c-format
 msgid ""
 "%s takes a base backup of a running PostgreSQL server.\n"
@@ -401,17 +404,17 @@ msgstr ""
 "%s obtiene un respaldo base a partir de un servidor PostgreSQL en ejecución.\n"
 "\n"
 
-#: pg_basebackup.c:379 pg_receivewal.c:81 pg_recvlogical.c:78
+#: pg_basebackup.c:387 pg_receivewal.c:79 pg_recvlogical.c:76
 #, c-format
 msgid "Usage:\n"
 msgstr "Empleo:\n"
 
-#: pg_basebackup.c:380 pg_receivewal.c:82 pg_recvlogical.c:79
+#: pg_basebackup.c:388 pg_receivewal.c:80 pg_recvlogical.c:77
 #, c-format
 msgid "  %s [OPTION]...\n"
 msgstr "  %s [OPCIÓN]...\n"
 
-#: pg_basebackup.c:381
+#: pg_basebackup.c:389
 #, c-format
 msgid ""
 "\n"
@@ -420,17 +423,17 @@ msgstr ""
 "\n"
 "Opciones que controlan la salida:\n"
 
-#: pg_basebackup.c:382
+#: pg_basebackup.c:390
 #, 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:383
+#: pg_basebackup.c:391
 #, 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:384
+#: pg_basebackup.c:392
 #, c-format
 msgid ""
 "  -r, --max-rate=RATE    maximum transfer rate to transfer data directory\n"
@@ -439,7 +442,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:386
+#: pg_basebackup.c:394
 #, c-format
 msgid ""
 "  -R, --write-recovery-conf\n"
@@ -448,7 +451,7 @@ msgstr ""
 "  -R, --write-recovery-conf\n"
 "                         escribe configuración para replicación\n"
 
-#: pg_basebackup.c:388
+#: pg_basebackup.c:396
 #, c-format
 msgid ""
 "  -t, --target=TARGET[:DETAIL]\n"
@@ -457,7 +460,7 @@ msgstr ""
 "  -t, --target=DESTINO:[DETALLE]\n"
 "                         destino del respaldo base (si no es el cliente)\n"
 
-#: pg_basebackup.c:390
+#: pg_basebackup.c:398
 #, c-format
 msgid ""
 "  -T, --tablespace-mapping=OLDDIR=NEWDIR\n"
@@ -466,12 +469,12 @@ msgstr ""
 "  -T, --tablespace-mapping=ANTIGUO=NUEVO\n"
 "                         reubicar el directorio de tablespace de ANTIGUO a NUEVO\n"
 
-#: pg_basebackup.c:392
+#: pg_basebackup.c:400
 #, 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:393
+#: pg_basebackup.c:401
 #, c-format
 msgid ""
 "  -X, --wal-method=none|fetch|stream\n"
@@ -481,12 +484,12 @@ msgstr ""
 "                         incluye los archivos WAL necesarios,\n"
 "                         en el modo especificado\n"
 
-#: pg_basebackup.c:395
+#: pg_basebackup.c:403
 #, c-format
 msgid "  -z, --gzip             compress tar output\n"
 msgstr "  -z, --gzip             comprimir la salida de tar\n"
 
-#: pg_basebackup.c:396
+#: pg_basebackup.c:404
 #, c-format
 msgid ""
 "  -Z, --compress=[{client|server}-]METHOD[:DETAIL]\n"
@@ -495,12 +498,12 @@ msgstr ""
 "  -Z, --compress=[{client|server}-]MÉTODO[:DETALLE]\n"
 "                         comprimir en cliente o servidor como se especifica\n"
 
-#: pg_basebackup.c:398
+#: pg_basebackup.c:406
 #, c-format
 msgid "  -Z, --compress=none    do not compress tar output\n"
 msgstr "  -Z, --compress=none    no comprimir la salida tar\n"
 
-#: pg_basebackup.c:399
+#: pg_basebackup.c:407
 #, c-format
 msgid ""
 "\n"
@@ -509,7 +512,7 @@ msgstr ""
 "\n"
 "Opciones generales:\n"
 
-#: pg_basebackup.c:400
+#: pg_basebackup.c:408
 #, c-format
 msgid ""
 "  -c, --checkpoint=fast|spread\n"
@@ -518,47 +521,47 @@ msgstr ""
 "  -c, --checkpoint=fast|spread\n"
 "                         utilizar checkpoint rápido o extendido\n"
 
-#: pg_basebackup.c:402
+#: pg_basebackup.c:410
 #, c-format
 msgid "  -C, --create-slot      create replication slot\n"
 msgstr "  -C, --create-slot      crear un slot de replicación\n"
 
-#: pg_basebackup.c:403
+#: pg_basebackup.c:411
 #, c-format
 msgid "  -l, --label=LABEL      set backup label\n"
 msgstr "  -l, --label=ETIQUETA   establecer etiqueta del respaldo\n"
 
-#: pg_basebackup.c:404
+#: pg_basebackup.c:412
 #, 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:405
+#: pg_basebackup.c:413
 #, 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:406
+#: pg_basebackup.c:414
 #, c-format
 msgid "  -P, --progress         show progress information\n"
 msgstr "  -P, --progress         mostrar información de progreso\n"
 
-#: pg_basebackup.c:407 pg_receivewal.c:91
+#: pg_basebackup.c:415 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:408 pg_receivewal.c:93 pg_recvlogical.c:100
+#: pg_basebackup.c:416 pg_receivewal.c:91 pg_recvlogical.c:98
 #, c-format
 msgid "  -v, --verbose          output verbose messages\n"
 msgstr "  -v, --verbose          desplegar mensajes verbosos\n"
 
-#: pg_basebackup.c:409 pg_receivewal.c:94 pg_recvlogical.c:101
+#: pg_basebackup.c:417 pg_receivewal.c:92 pg_recvlogical.c:99
 #, 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:410
+#: pg_basebackup.c:418
 #, c-format
 msgid ""
 "      --manifest-checksums=SHA{224,256,384,512}|CRC32C|NONE\n"
@@ -567,7 +570,7 @@ msgstr ""
 "      --manifest-checksums=SHA{224,256,384,512}|CRC32C|NONE\n"
 "                         usar algoritmo para sumas de comprobación del manifiesto\n"
 
-#: pg_basebackup.c:412
+#: pg_basebackup.c:420
 #, c-format
 msgid ""
 "      --manifest-force-encode\n"
@@ -576,22 +579,22 @@ msgstr ""
 "      --manifest-force-encode\n"
 "                         codifica a hexadecimal todos los nombres de archivo en el manifiesto\n"
 
-#: pg_basebackup.c:414
+#: pg_basebackup.c:422
 #, c-format
 msgid "      --no-estimate-size do not estimate backup size in server side\n"
 msgstr "      --no-estimate-size no estimar el tamaño del la copia de seguridad en el lado del servidor\n"
 
-#: pg_basebackup.c:415
+#: pg_basebackup.c:423
 #, c-format
 msgid "      --no-manifest      suppress generation of backup manifest\n"
 msgstr "      --no-manifest      suprimir la generación del manifiesto de la copia de seguridad\n"
 
-#: pg_basebackup.c:416
+#: pg_basebackup.c:424
 #, 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:417
+#: pg_basebackup.c:425
 #, c-format
 msgid ""
 "      --no-verify-checksums\n"
@@ -600,12 +603,12 @@ msgstr ""
 "      --no-verify-checksums\n"
 "                         no verificar checksums\n"
 
-#: pg_basebackup.c:419 pg_receivewal.c:97 pg_recvlogical.c:102
+#: pg_basebackup.c:427 pg_receivewal.c:95 pg_recvlogical.c:100
 #, c-format
 msgid "  -?, --help             show this help, then exit\n"
 msgstr "  -?, --help             mostrar esta ayuda, luego salir\n"
 
-#: pg_basebackup.c:420 pg_receivewal.c:98 pg_recvlogical.c:103
+#: pg_basebackup.c:428 pg_receivewal.c:96 pg_recvlogical.c:101
 #, c-format
 msgid ""
 "\n"
@@ -614,22 +617,22 @@ msgstr ""
 "\n"
 "Opciones de conexión:\n"
 
-#: pg_basebackup.c:421 pg_receivewal.c:99
+#: pg_basebackup.c:429 pg_receivewal.c:97
 #, c-format
 msgid "  -d, --dbname=CONNSTR   connection string\n"
 msgstr "  -d, --dbname=CONSTR    cadena de conexión\n"
 
-#: pg_basebackup.c:422 pg_receivewal.c:100 pg_recvlogical.c:105
+#: pg_basebackup.c:430 pg_receivewal.c:98 pg_recvlogical.c:103
 #, 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:423 pg_receivewal.c:101 pg_recvlogical.c:106
+#: pg_basebackup.c:431 pg_receivewal.c:99 pg_recvlogical.c:104
 #, 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:424
+#: pg_basebackup.c:432
 #, c-format
 msgid ""
 "  -s, --status-interval=INTERVAL\n"
@@ -638,24 +641,24 @@ msgstr ""
 "  -s, --status-interval=INTERVALO (segundos)\n"
 "                         tiempo entre envíos de paquetes de estado al servidor\n"
 
-#: pg_basebackup.c:426 pg_receivewal.c:102 pg_recvlogical.c:107
+#: pg_basebackup.c:434 pg_receivewal.c:100 pg_recvlogical.c:105
 #, 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:427 pg_receivewal.c:103 pg_recvlogical.c:108
+#: pg_basebackup.c:435 pg_receivewal.c:101 pg_recvlogical.c:106
 #, c-format
 msgid "  -w, --no-password      never prompt for password\n"
 msgstr "  -w, --no-password      nunca pedir contraseña\n"
 
-#: pg_basebackup.c:428 pg_receivewal.c:104 pg_recvlogical.c:109
+#: pg_basebackup.c:436 pg_receivewal.c:102 pg_recvlogical.c:107
 #, 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:429 pg_receivewal.c:108 pg_recvlogical.c:110
+#: pg_basebackup.c:437 pg_receivewal.c:106 pg_recvlogical.c:108
 #, c-format
 msgid ""
 "\n"
@@ -664,23 +667,23 @@ msgstr ""
 "\n"
 "Reporte errores a <%s>.\n"
 
-#: pg_basebackup.c:430 pg_receivewal.c:109 pg_recvlogical.c:111
+#: pg_basebackup.c:438 pg_receivewal.c:107 pg_recvlogical.c:109
 #, c-format
 msgid "%s home page: <%s>\n"
 msgstr "Sitio web de %s: <%s>\n"
 
-#: pg_basebackup.c:472
+#: pg_basebackup.c:477
 #, c-format
 msgid "could not read from ready pipe: %m"
 msgstr "no se pudo leer desde la tubería: %m"
 
-#: pg_basebackup.c:475 pg_basebackup.c:622 pg_basebackup.c:2170
-#: streamutil.c:444
+#: pg_basebackup.c:480 pg_basebackup.c:622 pg_basebackup.c:2151
+#: streamutil.c:441
 #, 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:581 pg_receivewal.c:663
+#: pg_basebackup.c:585 pg_receivewal.c:600
 #, c-format
 msgid "could not finish writing WAL files: %m"
 msgstr "no se pudo completar la escritura de archivos WAL: %m"
@@ -720,431 +723,419 @@ msgstr "el directorio «%s» existe pero no está vacío"
 msgid "could not access directory \"%s\": %m"
 msgstr "no se pudo acceder al directorio «%s»: %m"
 
-#: pg_basebackup.c:832
+#: pg_basebackup.c:831
 #, 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:844
+#: pg_basebackup.c:843
 #, 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:860
+#: pg_basebackup.c:859
 #, 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:884
+#: pg_basebackup.c:883
 #, 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:886
+#: pg_basebackup.c:885
 #, c-format
 msgid "invalid transfer rate \"%s\": %m"
 msgstr "tasa de transferencia «%s» no válida: %m"
 
-#: pg_basebackup.c:893
+#: pg_basebackup.c:892
 #, c-format
 msgid "transfer rate must be greater than zero"
 msgstr "tasa de transferencia debe ser mayor que cero"
 
-#: pg_basebackup.c:923
+#: pg_basebackup.c:922
 #, c-format
 msgid "invalid --max-rate unit: \"%s\""
 msgstr "unidad de --max-rato no válida: «%s»"
 
-#: pg_basebackup.c:927
+#: pg_basebackup.c:926
 #, c-format
 msgid "transfer rate \"%s\" exceeds integer range"
 msgstr "la tasa de transferencia «%s» excede el rango de enteros"
 
-#: pg_basebackup.c:934
+#: pg_basebackup.c:933
 #, c-format
 msgid "transfer rate \"%s\" is out of range"
 msgstr "la tasa de transferencia «%s» está fuera de rango"
 
-#: pg_basebackup.c:1030
+#: pg_basebackup.c:995
 #, c-format
 msgid "could not get COPY data stream: %s"
 msgstr "no se pudo obtener un flujo de datos COPY: %s"
 
-#: pg_basebackup.c:1047 pg_recvlogical.c:438 pg_recvlogical.c:610
-#: receivelog.c:981
+#: pg_basebackup.c:1012 pg_recvlogical.c:436 pg_recvlogical.c:608
+#: receivelog.c:973
 #, c-format
 msgid "could not read COPY data: %s"
 msgstr "no fue posible leer datos COPY: %s"
 
-#: pg_basebackup.c:1051
+#: pg_basebackup.c:1016
 #, c-format
 msgid "background process terminated unexpectedly"
 msgstr "un proceso en segundo plano terminó inesperadamente"
 
-#: pg_basebackup.c:1122
+#: pg_basebackup.c:1087
 #, c-format
-#| msgid "cannot inject manifest into a compressed tarfile"
 msgid "cannot inject manifest into a compressed tar file"
 msgstr "no se pueden inyectar un manifiesto en un archivo tar comprimido"
 
-#: pg_basebackup.c:1123
+#: pg_basebackup.c:1088
 #, c-format
-#| msgid "use client-side compression, send the output to a directory rather than standard output, or use --no-manifest"
 msgid "Use client-side compression, send the output to a directory rather than standard output, or use %s."
 msgstr "Use compresión del lado del cliente, envíe la salida a un directorio en lugar de a salida estándar, o use %s."
 
-#: pg_basebackup.c:1139
+#: pg_basebackup.c:1104
 #, c-format
-#| msgid "unable to parse archive: %s"
 msgid "cannot parse archive \"%s\""
 msgstr "no se pudo interpretar el archivo «%s»"
 
-#: pg_basebackup.c:1140
+#: pg_basebackup.c:1105
 #, c-format
 msgid "Only tar archives can be parsed."
 msgstr "Sólo los archivos tar pueden ser interpretados."
 
-#: pg_basebackup.c:1142
+#: pg_basebackup.c:1107
 #, c-format
 msgid "Plain format requires pg_basebackup to parse the archive."
 msgstr "El formato plano requiere que pg_basebackup interprete el archivo."
 
-#: pg_basebackup.c:1144
+#: pg_basebackup.c:1109
 #, c-format
 msgid "Using - as the output directory requires pg_basebackup to parse the archive."
 msgstr "Usar - como directorio de salida requiere que pg_basebackup interprete el archivo."
 
-#: pg_basebackup.c:1146
+#: pg_basebackup.c:1111
 #, c-format
 msgid "The -R option requires pg_basebackup to parse the archive."
 msgstr "La opción -R requiere que pg_basebackup interprete el archivo."
 
-#: pg_basebackup.c:1357
+#: pg_basebackup.c:1330
 #, c-format
-#| msgid "archives should precede manifest"
 msgid "archives must precede manifest"
 msgstr "los archivos deben preceder al manifiesto"
 
-#: pg_basebackup.c:1372
+#: pg_basebackup.c:1345
 #, c-format
 msgid "invalid archive name: \"%s\""
 msgstr "nombre de archivo no válido: «%s»"
 
-#: pg_basebackup.c:1444
+#: pg_basebackup.c:1417
 #, c-format
 msgid "unexpected payload data"
 msgstr "datos inesperados"
 
-#: pg_basebackup.c:1587
+#: pg_basebackup.c:1560
 #, c-format
 msgid "empty COPY message"
 msgstr "mensaje COPY vacío"
 
-#: pg_basebackup.c:1589
+#: pg_basebackup.c:1562
 #, c-format
 msgid "malformed COPY message of type %d, length %zu"
 msgstr "mensaje COPY mal formado de tipo %d, largo %zu"
 
-#: pg_basebackup.c:1787
+#: pg_basebackup.c:1760
 #, c-format
 msgid "incompatible server version %s"
 msgstr "versión del servidor %s incompatible"
 
-#: pg_basebackup.c:1803
+#: pg_basebackup.c:1776
 #, c-format
-#| msgid "HINT: use -X none or -X fetch to disable log streaming"
 msgid "Use -X none or -X fetch to disable log streaming."
 msgstr "Use -X none o -X fetch para deshabilitar el flujo de log."
 
-#: pg_basebackup.c:1871
+#: pg_basebackup.c:1844
 #, c-format
 msgid "backup targets are not supported by this server version"
 msgstr "los destinos de respaldo no están soportados por esta versión de servidor"
 
-#: pg_basebackup.c:1874
+#: pg_basebackup.c:1847
 #, c-format
 msgid "recovery configuration cannot be written when a backup target is used"
 msgstr "la configuración de recuperación no puede ser escrita cuando se usa un destino de respaldo base"
 
-#: pg_basebackup.c:1901
+#: pg_basebackup.c:1874
 #, c-format
 msgid "server does not support server-side compression"
 msgstr "el servidor no soporta compresión del lado del servidor"
 
-#: pg_basebackup.c:1911
+#: pg_basebackup.c:1884
 #, 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:1915
+#: pg_basebackup.c:1888
 #, c-format
-#| msgid "Logs each checkpoint."
 msgid "waiting for checkpoint"
 msgstr "esperando al checkpoint"
 
-#: pg_basebackup.c:1928 pg_recvlogical.c:262 receivelog.c:549 receivelog.c:588
-#: streamutil.c:291 streamutil.c:364 streamutil.c:416 streamutil.c:504
-#: streamutil.c:656 streamutil.c:701
+#: pg_basebackup.c:1901 pg_recvlogical.c:260 receivelog.c:543 receivelog.c:582
+#: streamutil.c:288 streamutil.c:361 streamutil.c:413 streamutil.c:501
+#: streamutil.c:653 streamutil.c:698
 #, 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:1936
+#: pg_basebackup.c:1909
 #, c-format
 msgid "could not initiate base backup: %s"
 msgstr "no se pudo iniciar el respaldo base: %s"
 
-#: pg_basebackup.c:1939
+#: pg_basebackup.c:1912
 #, 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:1945
+#: pg_basebackup.c:1918
 #, c-format
 msgid "checkpoint completed"
 msgstr "el checkpoint se ha completado"
 
-#: pg_basebackup.c:1960
+#: pg_basebackup.c:1932
 #, 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:1968
+#: pg_basebackup.c:1940
 #, c-format
 msgid "could not get backup header: %s"
 msgstr "no se pudo obtener la cabecera de respaldo: %s"
 
-#: pg_basebackup.c:1971
+#: pg_basebackup.c:1943
 #, c-format
 msgid "no data returned from server"
 msgstr "el servidor no retornó datos"
 
-#: pg_basebackup.c:2006
+#: pg_basebackup.c:1986
 #, 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:2019
+#: pg_basebackup.c:1999
 #, c-format
 msgid "starting background WAL receiver"
 msgstr "iniciando el receptor de WAL en segundo plano"
 
-#: pg_basebackup.c:2101
+#: pg_basebackup.c:2082
 #, c-format
 msgid "backup failed: %s"
 msgstr "el respaldo falló: %s"
 
-#: pg_basebackup.c:2104
+#: pg_basebackup.c:2085
 #, 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:2107
+#: pg_basebackup.c:2088
 #, c-format
 msgid "write-ahead log end point: %s"
 msgstr "posición final del WAL: %s"
 
-#: pg_basebackup.c:2118
+#: pg_basebackup.c:2099
 #, c-format
 msgid "checksum error occurred"
 msgstr "ocurrió un error de checksums"
 
-#: pg_basebackup.c:2123
+#: pg_basebackup.c:2104
 #, c-format
 msgid "final receive failed: %s"
 msgstr "la recepción final falló: %s"
 
-#: pg_basebackup.c:2147
+#: pg_basebackup.c:2128
 #, c-format
 msgid "waiting for background process to finish streaming ..."
 msgstr "esperando que el proceso en segundo plano complete el flujo..."
 
-#: pg_basebackup.c:2151
+#: pg_basebackup.c:2132
 #, 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:2156
+#: pg_basebackup.c:2137
 #, c-format
 msgid "could not wait for child process: %m"
 msgstr "no se pudo esperar al proceso hijo: %m"
 
-#: pg_basebackup.c:2158
+#: pg_basebackup.c:2139
 #, c-format
 msgid "child %d died, expected %d"
 msgstr "el hijo %d murió, pero se esperaba al %d"
 
-#: pg_basebackup.c:2160 streamutil.c:91 streamutil.c:197
+#: pg_basebackup.c:2141 streamutil.c:91 streamutil.c:196
 #, c-format
 msgid "%s"
 msgstr "%s"
 
-#: pg_basebackup.c:2180
+#: pg_basebackup.c:2161
 #, c-format
 msgid "could not wait for child thread: %m"
 msgstr "no se pudo esperar el hilo hijo: %m"
 
-#: pg_basebackup.c:2185
+#: pg_basebackup.c:2166
 #, c-format
 msgid "could not get child thread exit status: %m"
 msgstr "no se pudo obtener la cabecera de respaldo: %m"
 
-#: pg_basebackup.c:2188
+#: pg_basebackup.c:2169
 #, c-format
 msgid "child thread exited with error %u"
 msgstr "el hilo hijo terminó con error %u"
 
-#: pg_basebackup.c:2217
+#: pg_basebackup.c:2198
 #, c-format
 msgid "syncing data to disk ..."
 msgstr "sincronizando datos a disco ..."
 
-#: pg_basebackup.c:2242
+#: pg_basebackup.c:2223
 #, c-format
 msgid "renaming backup_manifest.tmp to backup_manifest"
 msgstr "renombrando backup_manifest.tmp a backup_manifest"
 
-#: pg_basebackup.c:2262
+#: pg_basebackup.c:2243
 #, c-format
 msgid "base backup completed"
 msgstr "el respaldo base se ha completado"
 
-#: pg_basebackup.c:2351
+#: pg_basebackup.c:2326
+#, 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:2344
 #, c-format
 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:2395
+#: pg_basebackup.c:2422
 #, 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:2425
-#, 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:2476 pg_basebackup.c:2488 pg_basebackup.c:2510
-#: pg_basebackup.c:2522 pg_basebackup.c:2528 pg_basebackup.c:2580
-#: pg_basebackup.c:2591 pg_basebackup.c:2601 pg_basebackup.c:2607
-#: pg_basebackup.c:2614 pg_basebackup.c:2626 pg_basebackup.c:2638
-#: pg_basebackup.c:2646 pg_basebackup.c:2659 pg_basebackup.c:2665
-#: pg_basebackup.c:2674 pg_basebackup.c:2686 pg_basebackup.c:2697
-#: pg_basebackup.c:2705 pg_receivewal.c:814 pg_receivewal.c:826
-#: pg_receivewal.c:833 pg_receivewal.c:842 pg_receivewal.c:849
-#: pg_receivewal.c:859 pg_recvlogical.c:837 pg_recvlogical.c:849
-#: pg_recvlogical.c:859 pg_recvlogical.c:866 pg_recvlogical.c:873
-#: pg_recvlogical.c:880 pg_recvlogical.c:887 pg_recvlogical.c:894
-#: pg_recvlogical.c:901 pg_recvlogical.c:908
+#: pg_basebackup.c:2457 pg_basebackup.c:2469 pg_basebackup.c:2491
+#: pg_basebackup.c:2503 pg_basebackup.c:2509 pg_basebackup.c:2561
+#: pg_basebackup.c:2572 pg_basebackup.c:2582 pg_basebackup.c:2588
+#: pg_basebackup.c:2595 pg_basebackup.c:2607 pg_basebackup.c:2619
+#: pg_basebackup.c:2627 pg_basebackup.c:2640 pg_basebackup.c:2646
+#: pg_basebackup.c:2655 pg_basebackup.c:2667 pg_basebackup.c:2678
+#: pg_basebackup.c:2686 pg_receivewal.c:748 pg_receivewal.c:760
+#: pg_receivewal.c:767 pg_receivewal.c:776 pg_receivewal.c:783
+#: pg_receivewal.c:793 pg_recvlogical.c:835 pg_recvlogical.c:847
+#: pg_recvlogical.c:857 pg_recvlogical.c:864 pg_recvlogical.c:871
+#: pg_recvlogical.c:878 pg_recvlogical.c:885 pg_recvlogical.c:892
+#: pg_recvlogical.c:899 pg_recvlogical.c:906
 #, c-format
 msgid "Try \"%s --help\" for more information."
 msgstr "Pruebe «%s --help» para mayor información."
 
-#: pg_basebackup.c:2486 pg_receivewal.c:824 pg_recvlogical.c:847
+#: pg_basebackup.c:2467 pg_receivewal.c:758 pg_recvlogical.c:845
 #, 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:2509
+#: pg_basebackup.c:2490
 #, c-format
 msgid "cannot specify both format and backup target"
 msgstr "no se puede especificar un formato junto con un destino de respaldo"
 
-#: pg_basebackup.c:2521
+#: pg_basebackup.c:2502
 #, c-format
 msgid "must specify output directory or backup target"
 msgstr "debe especificar un directorio de salida o destino de respaldo base"
 
-#: pg_basebackup.c:2527
+#: pg_basebackup.c:2508
 #, c-format
 msgid "cannot specify both output directory and backup target"
 msgstr "no se puede especificar un directorio de salida junto con un destino de respaldo"
 
-#: pg_basebackup.c:2557 pg_receivewal.c:868
+#: pg_basebackup.c:2538 pg_receivewal.c:802
 #, c-format
-#| msgid "unrecognized compression algorithm \"%s\""
 msgid "unrecognized compression algorithm: \"%s\""
 msgstr "algoritmo de compresión no reconocido: «%s»"
 
-#: pg_basebackup.c:2563 pg_receivewal.c:875
+#: pg_basebackup.c:2544 pg_receivewal.c:809
 #, c-format
 msgid "invalid compression specification: %s"
 msgstr "especificación de compresión no válida: %s"
 
-#: pg_basebackup.c:2579
+#: pg_basebackup.c:2560
 #, c-format
 msgid "client-side compression is not possible when a backup target is specified"
 msgstr "la compresión del lado del cliente no es posible cuando se especifica un destino del respaldo base"
 
-#: pg_basebackup.c:2590
+#: pg_basebackup.c:2571
 #, c-format
 msgid "only tar mode backups can be compressed"
 msgstr "sólo los respaldos de modo tar pueden ser comprimidos"
 
-#: pg_basebackup.c:2600
+#: pg_basebackup.c:2581
 #, c-format
 msgid "WAL cannot be streamed when a backup target is specified"
 msgstr "no se puede enviar WAL cuando se especifica un destino del respaldo base"
 
-#: pg_basebackup.c:2606
+#: pg_basebackup.c:2587
 #, 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:2613
+#: pg_basebackup.c:2594
 #, 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:2625
+#: pg_basebackup.c:2606
 #, 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:2636 pg_receivewal.c:840
+#: pg_basebackup.c:2617 pg_receivewal.c:774
 #, 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:2644 pg_basebackup.c:2684 pg_basebackup.c:2695
-#: pg_basebackup.c:2703
+#: pg_basebackup.c:2625 pg_basebackup.c:2665 pg_basebackup.c:2676
+#: pg_basebackup.c:2684
 #, c-format
 msgid "%s and %s are incompatible options"
 msgstr "%s y %s son opciones incompatibles"
 
-#: pg_basebackup.c:2658
+#: pg_basebackup.c:2639
 #, c-format
 msgid "WAL directory location cannot be specified along with a backup target"
 msgstr "la ubicación del directorio de WAL no puede especificarse junto con un destino de respaldo"
 
-#: pg_basebackup.c:2664
+#: pg_basebackup.c:2645
 #, 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:2673
+#: pg_basebackup.c:2654
 #, 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:2774
+#: pg_basebackup.c:2754
 #, c-format
 msgid "could not create symbolic link \"%s\": %m"
 msgstr "no se pudo crear el enlace simbólico «%s»: %m"
 
-#: pg_basebackup.c:2776
-#, 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"
@@ -1153,7 +1144,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:82
 #, c-format
 msgid ""
 "\n"
@@ -1162,32 +1153,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:83
 #, 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:87
 #, 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:89
 #, 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:94
 #, c-format
 msgid ""
 "  -s, --status-interval=SECS\n"
@@ -1197,12 +1188,12 @@ 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=METHOD[:DETAIL]\n"
@@ -1211,7 +1202,7 @@ msgstr ""
 "  -Z, --compress=MÉTODO[:DETALLE]\n"
 "                         comprimir como se indica\n"
 
-#: pg_receivewal.c:105
+#: pg_receivewal.c:103
 #, c-format
 msgid ""
 "\n"
@@ -1220,159 +1211,158 @@ msgstr ""
 "\n"
 "Acciones optativas:\n"
 
-#: pg_receivewal.c:106 pg_recvlogical.c:81
+#: pg_receivewal.c:104 pg_recvlogical.c:79
 #, 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:107 pg_recvlogical.c:82
+#: pg_receivewal.c:105 pg_recvlogical.c:80
 #, 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:252
+#: pg_receivewal.c:191
 #, c-format
 msgid "finished segment at %X/%X (timeline %u)"
 msgstr "terminó el segmento en %X/%X (timeline %u)"
 
-#: pg_receivewal.c:259
+#: pg_receivewal.c:198
 #, 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:275
+#: pg_receivewal.c:214
 #, c-format
 msgid "switched to timeline %u at %X/%X"
 msgstr "cambiado al timeline %u en %X/%X"
 
-#: pg_receivewal.c:285
+#: pg_receivewal.c:224
 #, c-format
 msgid "received interrupt signal, exiting"
 msgstr "se recibió una señal de interrupción, saliendo"
 
-#: pg_receivewal.c:317
+#: pg_receivewal.c:256
 #, c-format
 msgid "could not close directory \"%s\": %m"
 msgstr "no se pudo abrir el directorio «%s»: %m"
 
-#: pg_receivewal.c:384
+#: pg_receivewal.c:323
 #, c-format
 msgid "segment file \"%s\" has incorrect size %lld, skipping"
 msgstr "el archivo de segmento «%s» tiene tamaño incorrecto %lld, ignorando"
 
-#: pg_receivewal.c:401
+#: pg_receivewal.c:340
 #, c-format
 msgid "could not open compressed file \"%s\": %m"
 msgstr "no se pudo abrir el archivo comprimido «%s»: %m"
 
-#: pg_receivewal.c:404
+#: pg_receivewal.c:343
 #, 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:410
+#: pg_receivewal.c:349
 #, c-format
 msgid "could not read compressed file \"%s\": %m"
 msgstr "no se pudo leer el archivo comprimido «%s»: %m"
 
-#: pg_receivewal.c:413
+#: pg_receivewal.c:352
 #, 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:423
+#: pg_receivewal.c:362
 #, 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:451
+#: pg_receivewal.c:390
 #, c-format
 msgid "could not create LZ4 decompression context: %s"
 msgstr "no se pudo crear un contexto de descompresión LZ4: %s"
 
-#: pg_receivewal.c:463
+#: pg_receivewal.c:402
 #, c-format
 msgid "could not read file \"%s\": %m"
 msgstr "no se pudo leer el archivo «%s»: %m"
 
-#: pg_receivewal.c:481
+#: pg_receivewal.c:420
 #, c-format
 msgid "could not decompress file \"%s\": %s"
 msgstr "no se pudo descomprimir el archivo «%s»: %s"
 
-#: pg_receivewal.c:504
+#: pg_receivewal.c:443
 #, c-format
 msgid "could not free LZ4 decompression context: %s"
 msgstr "no se pudo liberar el contexto de descompresión LZ4: %s"
 
-#: pg_receivewal.c:509
+#: pg_receivewal.c:448
 #, c-format
 msgid "compressed segment file \"%s\" has incorrect uncompressed size %zu, skipping"
 msgstr "el archivo de segmento «%s» tiene tamaño incorrecto %zu al descomprimirse, ignorando"
 
-#: pg_receivewal.c:514
+#: pg_receivewal.c:453
 #, c-format
-#| msgid "Bonjour is not supported by this build"
 msgid "cannot check file \"%s\": compression with %s not supported by this build"
 msgstr "no se puede verificar el archivo «%s»: la compresión con %s no está soportada en este servidor"
 
-#: pg_receivewal.c:641
+#: pg_receivewal.c:578
 #, 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:783 pg_recvlogical.c:785
+#: pg_receivewal.c:693 pg_recvlogical.c:783
 #, c-format
 msgid "could not parse end position \"%s\""
 msgstr "no se pudo interpretar la posición final «%s»"
 
-#: pg_receivewal.c:832
+#: pg_receivewal.c:766
 #, c-format
 msgid "cannot use --create-slot together with --drop-slot"
 msgstr "no puede usarse --create-slot junto con --drop-slot"
 
-#: pg_receivewal.c:848
+#: pg_receivewal.c:782
 #, c-format
 msgid "cannot use --synchronous together with --no-sync"
 msgstr "no puede usarse --synchronous junto con --no-sync"
 
-#: pg_receivewal.c:858
+#: pg_receivewal.c:792
 #, c-format
 msgid "no target directory specified"
 msgstr "no se especificó un directorio de salida"
 
-#: pg_receivewal.c:882
+#: pg_receivewal.c:816
 #, c-format
 msgid "compression with %s is not yet supported"
 msgstr "el método de compresión %s no está soportado aún"
 
-#: pg_receivewal.c:924
+#: pg_receivewal.c:859
 #, 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:943 pg_recvlogical.c:955
+#: pg_receivewal.c:878 pg_recvlogical.c:954
 #, c-format
 msgid "dropping replication slot \"%s\""
 msgstr "eliminando el slot de replicación «%s»"
 
-#: pg_receivewal.c:954 pg_recvlogical.c:965
+#: pg_receivewal.c:889 pg_recvlogical.c:964
 #, c-format
 msgid "creating replication slot \"%s\""
 msgstr "creando el slot de replicación «%s»"
 
-#: pg_receivewal.c:983 pg_recvlogical.c:989
+#: pg_receivewal.c:918 pg_recvlogical.c:988
 #, c-format
 msgid "disconnected"
 msgstr "desconectado"
 
 #. translator: check source for value for %d
-#: pg_receivewal.c:987 pg_recvlogical.c:993
+#: pg_receivewal.c:922 pg_recvlogical.c:992
 #, 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:74
 #, c-format
 msgid ""
 "%s controls PostgreSQL logical decoding streams.\n"
@@ -1381,7 +1371,7 @@ msgstr ""
 "%s controla flujos de decodificación lógica de PostgreSQL.\n"
 "\n"
 
-#: pg_recvlogical.c:80
+#: pg_recvlogical.c:78
 #, c-format
 msgid ""
 "\n"
@@ -1390,17 +1380,17 @@ msgstr ""
 "\n"
 "Acciones a ejecutar:\n"
 
-#: pg_recvlogical.c:83
+#: pg_recvlogical.c:81
 #, 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:84
 #, 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:85
 #, c-format
 msgid ""
 "  -F  --fsync-interval=SECS\n"
@@ -1409,12 +1399,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:88
 #, 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:90
 #, c-format
 msgid ""
 "  -o, --option=NAME[=VALUE]\n"
@@ -1425,420 +1415,414 @@ msgstr ""
 "                         pasar opción NOMBRE con valor opcional VALOR al\n"
 "                         plugin de salida\n"
 
-#: pg_recvlogical.c:95
+#: pg_recvlogical.c:93
 #, 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:96
 #, 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:99
+#: pg_recvlogical.c:97
 #, c-format
-#| msgid "  -t, --two-phase        enable two-phase decoding when creating a slot\n"
 msgid "  -t, --two-phase        enable decoding of prepared transactions when creating a slot\n"
 msgstr "  -t, --two-phase        activa decodificación de transacciones preparadas al crear un slot\n"
 
-#: pg_recvlogical.c:104
+#: pg_recvlogical.c:102
 #, 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:137
+#: pg_recvlogical.c:135
 #, 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:161 receivelog.c:366
+#: pg_recvlogical.c:159 receivelog.c:360
 #, c-format
 msgid "could not send feedback packet: %s"
 msgstr "no se pudo enviar el paquete de retroalimentación: %s"
 
-#: pg_recvlogical.c:229
+#: pg_recvlogical.c:227
 #, 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:271
+#: pg_recvlogical.c:269
 #, c-format
 msgid "streaming initiated"
 msgstr "flujo iniciado"
 
-#: pg_recvlogical.c:335
+#: pg_recvlogical.c:333
 #, c-format
 msgid "could not open log file \"%s\": %m"
 msgstr "no se pudo abrir el archivo de registro «%s»: %m"
 
-#: pg_recvlogical.c:364 receivelog.c:889
+#: pg_recvlogical.c:362 receivelog.c:882
 #, c-format
 msgid "invalid socket: %s"
 msgstr "el socket no es válido: %s"
 
-#: pg_recvlogical.c:417 receivelog.c:917
+#: pg_recvlogical.c:415 receivelog.c:910
 #, c-format
 msgid "%s() failed: %m"
 msgstr "%s() falló: %m"
 
-#: pg_recvlogical.c:424 receivelog.c:967
+#: pg_recvlogical.c:422 receivelog.c:959
 #, 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:466 pg_recvlogical.c:517 receivelog.c:1011
-#: receivelog.c:1074
+#: pg_recvlogical.c:464 pg_recvlogical.c:515 receivelog.c:1003
+#: receivelog.c:1066
 #, c-format
 msgid "streaming header too small: %d"
 msgstr "cabecera de flujo demasiado pequeña: %d"
 
-#: pg_recvlogical.c:501 receivelog.c:849
+#: pg_recvlogical.c:499 receivelog.c:843
 #, c-format
 msgid "unrecognized streaming header: \"%c\""
 msgstr "cabecera de flujo no reconocida: «%c»"
 
-#: pg_recvlogical.c:555 pg_recvlogical.c:567
+#: pg_recvlogical.c:553 pg_recvlogical.c:565
 #, c-format
 msgid "could not write %d bytes to log file \"%s\": %m"
 msgstr "no se pudo escribir %d bytes al archivo de registro «%s»: %m"
 
-#: pg_recvlogical.c:621 receivelog.c:648 receivelog.c:685
+#: pg_recvlogical.c:619 receivelog.c:642 receivelog.c:679
 #, c-format
 msgid "unexpected termination of replication stream: %s"
 msgstr "término inesperado del flujo de replicación: %s"
 
-#: pg_recvlogical.c:780
+#: pg_recvlogical.c:778
 #, c-format
 msgid "could not parse start position \"%s\""
 msgstr "no se pudo interpretar la posición de inicio «%s»"
 
-#: pg_recvlogical.c:858
+#: pg_recvlogical.c:856
 #, c-format
 msgid "no slot specified"
 msgstr "no se especificó slot"
 
-#: pg_recvlogical.c:865
+#: pg_recvlogical.c:863
 #, c-format
 msgid "no target file specified"
 msgstr "no se especificó un archivo de destino"
 
-#: pg_recvlogical.c:872
+#: pg_recvlogical.c:870
 #, c-format
 msgid "no database specified"
 msgstr "no se especificó una base de datos"
 
-#: pg_recvlogical.c:879
+#: pg_recvlogical.c:877
 #, c-format
 msgid "at least one action needs to be specified"
 msgstr "debe especificarse al menos una operación"
 
-#: pg_recvlogical.c:886
+#: pg_recvlogical.c:884
 #, 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:893
+#: pg_recvlogical.c:891
 #, 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:900
+#: pg_recvlogical.c:898
 #, c-format
 msgid "--endpos may only be specified with --start"
 msgstr "--endpos sólo se puede utilizar con --start"
 
-#: pg_recvlogical.c:907
+#: pg_recvlogical.c:905
 #, c-format
 msgid "--two-phase may only be specified with --create-slot"
 msgstr "--two-phase sólo se puede utilizar con --create-slot"
 
-#: pg_recvlogical.c:939
+#: pg_recvlogical.c:938
 #, 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:1033
+#: pg_recvlogical.c:1032
 #, c-format
 msgid "end position %X/%X reached by keepalive"
 msgstr "ubicación de término %X/%X alcanzado por «keep-alive»"
 
-#: pg_recvlogical.c:1036
+#: pg_recvlogical.c:1035
 #, c-format
 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:68
+#: receivelog.c:66
 #, c-format
 msgid "could not create archive status file \"%s\": %s"
 msgstr "no se pudo crear el archivo de estado «%s»: %s"
 
-#: receivelog.c:75
+#: receivelog.c:73
 #, c-format
 msgid "could not close archive status file \"%s\": %s"
 msgstr "no se pudo cerrar el archivo de estado «%s»: %s"
 
-#: receivelog.c:123
+#: receivelog.c:122
 #, 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:134
+#: receivelog.c:133
 #, 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:143
+#: receivelog.c:142
 #, 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:158
+#: receivelog.c:157
 #, c-format
 msgid "write-ahead log file \"%s\" has %zd byte, should be 0 or %d"
 msgid_plural "write-ahead log file \"%s\" has %zd bytes, should be 0 or %d"
 msgstr[0] "el archivo de WAL «%s» mide %zd byte, debería ser 0 o %d"
 msgstr[1] "el archivo de WAL «%s» mide %zd bytes, debería ser 0 o %d"
 
-#: receivelog.c:174
+#: receivelog.c:175
 #, c-format
 msgid "could not open write-ahead log file \"%s\": %s"
 msgstr "no se pudo abrir archivo de WAL «%s»: %s"
 
-#: receivelog.c:208
-#, 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:223
+#: receivelog.c:216
 #, c-format
 msgid "not renaming \"%s\", segment is not complete"
 msgstr "no se cambiará el nombre a «%s», el segmento no está completo"
 
-#: receivelog.c:234 receivelog.c:323 receivelog.c:694
+#: receivelog.c:227 receivelog.c:317 receivelog.c:688
 #, c-format
 msgid "could not close file \"%s\": %s"
 msgstr "no se pudo cerrar el archivo «%s»: %s"
 
-#: receivelog.c:295
+#: receivelog.c:288
 #, 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:303
+#: receivelog.c:297
 #, 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:310
+#: receivelog.c:304
 #, 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:400
+#: receivelog.c:394
 #, 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:409
+#: receivelog.c:403
 #, 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:514
+#: receivelog.c:508
 #, 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:522
+#: receivelog.c:516
 #, 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:561
+#: receivelog.c:555
 #, 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:632
+#: receivelog.c:626
 #, 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:638
+#: receivelog.c:632
 #, 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:678
+#: receivelog.c:672
 #, 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:724
+#: receivelog.c:718
 #, 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:733
+#: receivelog.c:727
 #, 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:781 receivelog.c:1030 walmethods.c:1205
+#: receivelog.c:775 receivelog.c:1022 walmethods.c:1201
 #, c-format
 msgid "could not fsync file \"%s\": %s"
 msgstr "no se pudo sincronizar (fsync) archivo «%s»: %s"
 
-#: receivelog.c:1091
+#: receivelog.c:1083
 #, 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:1101
+#: receivelog.c:1093
 #, c-format
 msgid "got WAL data offset %08x, expected %08x"
 msgstr "se obtuvo desplazamiento de datos WAL %08x, se esperaba %08x"
 
-#: receivelog.c:1135
+#: receivelog.c:1128
 #, c-format
 msgid "could not write %d bytes to WAL file \"%s\": %s"
 msgstr "no se pudo escribir %d bytes al archivo WAL «%s»: %s"
 
-#: receivelog.c:1160 receivelog.c:1200 receivelog.c:1230
+#: receivelog.c:1153 receivelog.c:1193 receivelog.c:1222
 #, c-format
 msgid "could not send copy-end packet: %s"
 msgstr "no se pudo enviar el paquete copy-end: %s"
 
-#: streamutil.c:159
+#: streamutil.c:158
 msgid "Password: "
 msgstr "Contraseña: "
 
-#: streamutil.c:182
+#: streamutil.c:181
 #, c-format
 msgid "could not connect to server"
 msgstr "no se pudo conectar al servidor"
 
-#: streamutil.c:225
+#: streamutil.c:222
 #, c-format
 msgid "could not clear search_path: %s"
 msgstr "no se pudo limpiar search_path: %s"
 
-#: streamutil.c:241
+#: streamutil.c:238
 #, 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:248
+#: streamutil.c:245
 #, 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:299
+#: streamutil.c:296
 #, 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:309
+#: streamutil.c:306
 #, c-format
 msgid "WAL segment size could not be parsed"
 msgstr "el tamaño de segmento de WAL no pudo ser analizado"
 
-#: streamutil.c:327
+#: streamutil.c:324
 #, 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"
 msgstr[0] "el tamaño de segmento de WAL debe ser una potencia de dos entre 1 MB y 1 GB, pero el servidor remoto reportó un valor de %d byte"
 msgstr[1] "el tamaño de segmento de WAL debe ser una potencia de dos entre 1 MB y 1 GB, pero el servidor remoto reportó un valor de %d bytes"
 
-#: streamutil.c:372
+#: streamutil.c:369
 #, c-format
 msgid "could not fetch group access flag: got %d rows and %d fields, expected %d rows and %d or more fields"
 msgstr "no se pudo obtener el indicador de acceso de grupo: se obtuvo %d filas y %d campos, se esperaban %d filas y %d o más campos"
 
-#: streamutil.c:381
+#: streamutil.c:378
 #, c-format
 msgid "group access flag could not be parsed: %s"
 msgstr "el indicador de acceso de grupo no pudo ser analizado: %s"
 
-#: streamutil.c:424 streamutil.c:461
+#: streamutil.c:421 streamutil.c:458
 #, 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"
 
-#: streamutil.c:513
+#: streamutil.c:510
 #, c-format
 msgid "could not read replication slot \"%s\": got %d rows and %d fields, expected %d rows and %d fields"
 msgstr "no se pudo leer el slot de replicación «%s»: se obtuvieron %d filas y %d campos, se esperaban %d filas y %d campos"
 
-#: streamutil.c:525
+#: streamutil.c:522
 #, c-format
 msgid "replication slot \"%s\" does not exist"
 msgstr "no existe el slot de replicación «%s»"
 
-#: streamutil.c:536
+#: streamutil.c:533
 #, c-format
 msgid "expected a physical replication slot, got type \"%s\" instead"
 msgstr "se esperaba un slot de replicación físico, en cambio se obtuvo tipo «%s»"
 
-#: streamutil.c:550
+#: streamutil.c:547
 #, c-format
 msgid "could not parse restart_lsn \"%s\" for replication slot \"%s\""
 msgstr "no se pudo interpretar restart_lsn de WAL «%s» para el slot de replicación «%s»"
 
-#: streamutil.c:667
+#: streamutil.c:664
 #, c-format
 msgid "could not create replication slot \"%s\": got %d rows and %d fields, expected %d rows and %d fields"
 msgstr "no se pudo create el slot de replicación «%s»: se obtuvieron %d filas y %d campos, se esperaban %d filas y %d campos"
 
-#: streamutil.c:711
+#: streamutil.c:708
 #, c-format
 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:720 walmethods.c:1267
+#: walmethods.c:721 walmethods.c:1264
 msgid "could not compress data"
 msgstr "no se pudo comprimir datos"
 
-#: walmethods.c:749
+#: walmethods.c:750
 msgid "could not reset compression stream"
 msgstr "no se pudo restablecer el flujo comprimido"
 
-#: walmethods.c:880
+#: walmethods.c:888
 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:894
+#: walmethods.c:903
 msgid "could not create tar header"
 msgstr "no se pudo crear la cabecera del archivo tar"
 
-#: walmethods.c:910 walmethods.c:951 walmethods.c:1170 walmethods.c:1183
+#: walmethods.c:920 walmethods.c:961 walmethods.c:1166 walmethods.c:1179
 msgid "could not change compression parameters"
 msgstr "no se pudo cambiar los parámetros de compresión"
 
-#: walmethods.c:1055
+#: walmethods.c:1052
 msgid "unlink not supported with compression"
 msgstr "unlink no soportado con compresión"
 
-#: walmethods.c:1291
+#: walmethods.c:1288
 msgid "could not close compression stream"
 msgstr "no se pudo cerrar el flujo comprimido"
 
 #, c-format
-#~ msgid "unknown compression option \"%s\""
-#~ msgstr "opción de compresión «%s» no válida"
+#~ msgid "this build does not support gzip compression"
+#~ msgstr "esta instalación no soporta compresión gzip"
 
 #, c-format
-#~ msgid "could not check file \"%s\""
-#~ msgstr "no se pudo verificar el archivo «%s»"
+#~ msgid "this build does not support lz4 compression"
+#~ msgstr "esta instalación no soporta compresión lz4"
 
 #, c-format
-#~ msgid "This build does not support compression with %s."
-#~ msgstr "Esta instalación no soporta compresión con %s."
+#~ msgid "this build does not support zstd compression"
+#~ msgstr "esta instalación no soporta compresión zstd"
 
 #, c-format
-#~ msgid "no value specified for --compress, switching to default"
-#~ msgstr "no se especificó valor para --compress, usando el valor por omisión"
+#~ msgid "symlinks are not supported on this platform"
+#~ msgstr "los enlaces simbólicos no están soportados en esta plataforma"
 
 #, c-format
-#~ msgid "could not find replication slot \"%s\""
-#~ msgstr "no se pudo encontrar el slot de replicación «%s»"
+#~ msgid "could not determine seek position in file \"%s\": %s"
+#~ msgstr "no se pudo determinar la posición (seek) en el archivo «%s»: %s"
index 61d1609999542424ea99a98fa9f37f3d1abb2e26..a704ab3aed92f1bc4eb29ebbec3750d2eded7bc8 100644 (file)
@@ -10,7 +10,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: pg_checksums (PostgreSQL) 15\n"
 "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n"
-"POT-Creation-Date: 2022-09-24 23:22+0000\n"
+"POT-Creation-Date: 2023-05-09 09:23+0000\n"
 "PO-Revision-Date: 2022-10-20 09:06+0200\n"
 "Last-Translator: Carlos Chapi <carloswaldo@babelruins.org>\n"
 "Language-Team: pgsql-es-ayuda <pgsql-es-ayuda@lists.postgresql.org>\n"
@@ -206,7 +206,7 @@ msgstr "checksums activados en archivo «%s»"
 msgid "could not open directory \"%s\": %m"
 msgstr "no se pudo abrir el directorio «%s»: %m"
 
-#: pg_checksums.c:342 pg_checksums.c:415
+#: pg_checksums.c:342 pg_checksums.c:411
 #, c-format
 msgid "could not stat file \"%s\": %m"
 msgstr "no se pudo hacer stat al archivo «%s»: %m"
@@ -216,117 +216,117 @@ msgstr "no se pudo hacer stat al archivo «%s»: %m"
 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:512 pg_checksums.c:528 pg_checksums.c:538 pg_checksums.c:546
+#: pg_checksums.c:508 pg_checksums.c:524 pg_checksums.c:534 pg_checksums.c:542
 #, c-format
 msgid "Try \"%s --help\" for more information."
 msgstr "Pruebe «%s --help» para mayor información."
 
-#: pg_checksums.c:527
+#: pg_checksums.c:523
 #, c-format
 msgid "no data directory specified"
 msgstr "no se especificó el directorio de datos"
 
-#: pg_checksums.c:536
+#: pg_checksums.c:532
 #, 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:545
+#: pg_checksums.c:541
 #, c-format
 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:553
+#: pg_checksums.c:549
 #, c-format
 msgid "pg_control CRC value is incorrect"
 msgstr "el valor de CRC de pg_control es incorrecto"
 
-#: pg_checksums.c:556
+#: pg_checksums.c:552
 #, 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:560
+#: pg_checksums.c:556
 #, c-format
 msgid "database cluster is not compatible"
 msgstr "el clúster de bases de datos no es compatible"
 
-#: pg_checksums.c:561
+#: pg_checksums.c:557
 #, c-format
 msgid "The database cluster was initialized with block size %u, but pg_checksums was compiled with block size %u."
 msgstr "El clúster fue inicializado con tamaño de bloque %u, pero pg_checksums fue compilado con tamaño de bloques %u."
 
-#: pg_checksums.c:573
+#: pg_checksums.c:569
 #, c-format
 msgid "cluster must be shut down"
 msgstr "el clúster debe estar apagado"
 
-#: pg_checksums.c:577
+#: pg_checksums.c:573
 #, 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:581
+#: pg_checksums.c:577
 #, 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:585
+#: pg_checksums.c:581
 #, 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:609
+#: pg_checksums.c:605
 #, c-format
 msgid "Checksum operation completed\n"
 msgstr "Operación de checksums completa\n"
 
-#: pg_checksums.c:610
+#: pg_checksums.c:606
 #, c-format
 msgid "Files scanned:   %lld\n"
 msgstr "Archivos recorridos:   %lld\n"
 
-#: pg_checksums.c:611
+#: pg_checksums.c:607
 #, c-format
 msgid "Blocks scanned:  %lld\n"
 msgstr "Bloques recorridos:    %lld\n"
 
-#: pg_checksums.c:614
+#: pg_checksums.c:610
 #, c-format
 msgid "Bad checksums:  %lld\n"
 msgstr "Checksums incorrectos: %lld\n"
 
-#: pg_checksums.c:615 pg_checksums.c:647
+#: pg_checksums.c:611 pg_checksums.c:643
 #, c-format
 msgid "Data checksum version: %u\n"
 msgstr "Versión de checksums de datos: %u\n"
 
-#: pg_checksums.c:622
+#: pg_checksums.c:618
 #, c-format
 msgid "Files written:  %lld\n"
 msgstr "Archivos escritos:   %lld\n"
 
-#: pg_checksums.c:623
+#: pg_checksums.c:619
 #, c-format
 msgid "Blocks written: %lld\n"
 msgstr "Bloques escritos:    %lld\n"
 
-#: pg_checksums.c:639
+#: pg_checksums.c:635
 #, c-format
 msgid "syncing data directory"
 msgstr "sincronizando directorio de datos"
 
-#: pg_checksums.c:643
+#: pg_checksums.c:639
 #, c-format
 msgid "updating control file"
 msgstr "actualizando archivo de control"
 
-#: pg_checksums.c:649
+#: pg_checksums.c:645
 #, c-format
 msgid "Checksums enabled in cluster\n"
 msgstr "Checksums activos en el clúster\n"
 
-#: pg_checksums.c:651
+#: pg_checksums.c:647
 #, c-format
 msgid "Checksums disabled in cluster\n"
 msgstr "Checksums inactivos en el clúster\n"
index 4d3f949535903753ec8980dd453c9b36052749a4..f925f7bdccb56a87281120af6aadb68beb2af17a 100644 (file)
@@ -10,7 +10,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: pg_config (PostgreSQL) 15\n"
 "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n"
-"POT-Creation-Date: 2022-09-24 23:17+0000\n"
+"POT-Creation-Date: 2023-05-09 09:18+0000\n"
 "PO-Revision-Date: 2022-10-20 09:06+0200\n"
 "Last-Translator: Carlos Chapi <carloswaldo@babelruins.org>\n"
 "Language-Team: PgSQL-es-Ayuda <pgsql-es-ayuda@lists.postgresql.org>\n"
@@ -27,42 +27,35 @@ msgstr ""
 msgid "not recorded"
 msgstr "no registrado"
 
-#: ../../common/exec.c:149 ../../common/exec.c:266 ../../common/exec.c:312
-#, c-format
-msgid "could not identify current directory: %m"
-msgstr "no se pudo identificar el directorio actual: %m"
-
-#: ../../common/exec.c:168
-#, c-format
-msgid "invalid binary \"%s\""
+#: ../../common/exec.c:172
+#, fuzzy, c-format
+#| msgid "invalid binary \"%s\""
+msgid "invalid binary \"%s\": %m"
 msgstr "el binario «%s» no es válido"
 
-#: ../../common/exec.c:218
-#, c-format
-msgid "could not read binary \"%s\""
+#: ../../common/exec.c:215
+#, fuzzy, c-format
+#| msgid "could not read binary \"%s\""
+msgid "could not read binary \"%s\": %m"
 msgstr "no se pudo leer el binario «%s»"
 
-#: ../../common/exec.c:226
+#: ../../common/exec.c:223
 #, c-format
 msgid "could not find a \"%s\" to execute"
 msgstr "no se pudo encontrar un «%s» para ejecutar"
 
-#: ../../common/exec.c:282 ../../common/exec.c:321
-#, c-format
-msgid "could not change directory to \"%s\": %m"
-msgstr "no se pudo cambiar al directorio «%s»: %m"
+#: ../../common/exec.c:250
+#, fuzzy, c-format
+#| msgid "could not reopen file \"%s\" as stderr: %m"
+msgid "could not resolve path \"%s\" to absolute form: %m"
+msgstr "no se pudo reabrir «%s» para error estándar: %m"
 
-#: ../../common/exec.c:299
-#, c-format
-msgid "could not read symbolic link \"%s\": %m"
-msgstr "no se pudo leer el enlace simbólico «%s»: %m"
-
-#: ../../common/exec.c:422
+#: ../../common/exec.c:412
 #, c-format
 msgid "%s() failed: %m"
 msgstr "%s() falló: %m"
 
-#: ../../common/exec.c:560 ../../common/exec.c:605 ../../common/exec.c:697
+#: ../../common/exec.c:550 ../../common/exec.c:595 ../../common/exec.c:687
 msgid "out of memory"
 msgstr "memoria agotada"
 
@@ -287,3 +280,23 @@ msgstr "%s: no se pudo encontrar el ejecutable propio\n"
 #, c-format
 msgid "%s: invalid argument: %s\n"
 msgstr "%s: el argumento no es válido: %s\n"
+
+#, c-format
+#~ msgid "could not identify current directory: %m"
+#~ msgstr "no se pudo identificar el directorio actual: %m"
+
+#, c-format
+#~ msgid "invalid binary \"%s\""
+#~ msgstr "el binario «%s» no es válido"
+
+#, c-format
+#~ msgid "could not read binary \"%s\""
+#~ msgstr "no se pudo leer el binario «%s»"
+
+#, c-format
+#~ msgid "could not change directory to \"%s\": %m"
+#~ msgstr "no se pudo cambiar al directorio «%s»: %m"
+
+#, c-format
+#~ msgid "could not read symbolic link \"%s\": %m"
+#~ msgstr "no se pudo leer el enlace simbólico «%s»: %m"
index 31fea7661e12124bdd2f373f161d48ef1d0ca884..43e6622eebff3c746fa601c05df94d40b55bc63b 100644 (file)
@@ -11,7 +11,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: pg_controldata (PostgreSQL) 15\n"
 "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n"
-"POT-Creation-Date: 2022-09-24 23:21+0000\n"
+"POT-Creation-Date: 2023-05-09 09:22+0000\n"
 "PO-Revision-Date: 2022-10-20 09:06+0200\n"
 "Last-Translator: Carlos Chapi <carlos.chapi@2ndquadrant.com>\n"
 "Language-Team: PgSQL-es-Ayuda <pgsql-es-ayuda@lists.postgresql.org>\n"
@@ -37,7 +37,7 @@ msgstr "no se pudo leer el archivo «%s»: %m"
 msgid "could not read file \"%s\": read %d of %zu"
 msgstr "no se pudo leer el archivo «%s»: leídos %d de %zu"
 
-#: ../../common/controldata_utils.c:108 ../../common/controldata_utils.c:244
+#: ../../common/controldata_utils.c:108 ../../common/controldata_utils.c:236
 #, c-format
 msgid "could not close file \"%s\": %m"
 msgstr "no se pudo cerrar el archivo «%s»: %m"
@@ -60,17 +60,17 @@ msgstr ""
 "serían erróneos, y la instalación de PostgreSQL sería incompatible con este\n"
 "directorio de datos."
 
-#: ../../common/controldata_utils.c:194
+#: ../../common/controldata_utils.c:186
 #, c-format
 msgid "could not open file \"%s\": %m"
 msgstr "no se pudo abrir el archivo «%s»: %m"
 
-#: ../../common/controldata_utils.c:213
+#: ../../common/controldata_utils.c:205
 #, c-format
 msgid "could not write file \"%s\": %m"
 msgstr "no se pudo escribir el archivo «%s»: %m"
 
-#: ../../common/controldata_utils.c:232
+#: ../../common/controldata_utils.c:224
 #, c-format
 msgid "could not fsync file \"%s\": %m"
 msgstr "no se pudo sincronizar (fsync) archivo «%s»: %m"
index 0f8e782563699f699302bd4dd30f93b00a6d9598..f9e6db3f65d999325264efcaadcdb0a6c47bc96b 100644 (file)
@@ -11,7 +11,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: pg_ctl (PostgreSQL) 15\n"
 "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n"
-"POT-Creation-Date: 2023-04-24 03:48+0000\n"
+"POT-Creation-Date: 2023-05-09 09:19+0000\n"
 "PO-Revision-Date: 2023-04-24 09:05+0200\n"
 "Last-Translator: Carlos Chapi <carloswaldo@babelruins.org>\n"
 "Language-Team: PgSQL-es-Ayuda <pgsql-es-ayuda@lists.postgresql.org>\n"
index 47b76a238d827ae31b04090a7ee3be47c8fcb59b..83a2fe1f96b7834a48f310adccdd73d79b7bfe43 100644 (file)
@@ -11,7 +11,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: pg_dump (PostgreSQL) 15\n"
 "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n"
-"POT-Creation-Date: 2022-09-24 23:20+0000\n"
+"POT-Creation-Date: 2023-05-09 09:21+0000\n"
 "PO-Revision-Date: 2022-10-20 09:06+0200\n"
 "Last-Translator: Carlos Chapi <carloswaldo@babelruins.org>\n"
 "Language-Team: PgSQL-es-Ayuda <pgsql-es-ayuda@lists.postgresql.org>\n"
@@ -42,82 +42,129 @@ msgstr "detalle: "
 msgid "hint: "
 msgstr "consejo: "
 
-#: ../../common/exec.c:149 ../../common/exec.c:266 ../../common/exec.c:312
+#: ../../common/compression.c:132 ../../common/compression.c:141
+#: ../../common/compression.c:150 compress_gzip.c:413 compress_gzip.c:420
+#: compress_io.c:109 compress_lz4.c:768 compress_lz4.c:775 compress_zstd.c:25
+#: compress_zstd.c:31
 #, c-format
-msgid "could not identify current directory: %m"
-msgstr "no se pudo identificar el directorio actual: %m"
+msgid "this build does not support compression with %s"
+msgstr "esta instalación no soporta compresión con %s"
 
-#: ../../common/exec.c:168
+#: ../../common/compression.c:205
+msgid "found empty string where a compression option was expected"
+msgstr "se encontró una cadena vacía donde se esperaba una opción de compresión"
+
+#: ../../common/compression.c:244
 #, c-format
-msgid "invalid binary \"%s\""
-msgstr "el binario «%s» no es válido"
+msgid "unrecognized compression option: \"%s\""
+msgstr "opción de compresión no reconocida: «%s»"
 
-#: ../../common/exec.c:218
+#: ../../common/compression.c:283
 #, c-format
-msgid "could not read binary \"%s\""
-msgstr "no se pudo leer el binario «%s»"
+msgid "compression option \"%s\" requires a value"
+msgstr "la opción de compresión «%s» requiere un valor"
 
-#: ../../common/exec.c:226
+#: ../../common/compression.c:292
 #, c-format
-msgid "could not find a \"%s\" to execute"
-msgstr "no se pudo encontrar un «%s» para ejecutar"
+msgid "value for compression option \"%s\" must be an integer"
+msgstr "el valor para la opción de compresión «%s» debe ser un entero"
 
-#: ../../common/exec.c:282 ../../common/exec.c:321
+#: ../../common/compression.c:331
+#, fuzzy, c-format
+#| msgid "value for compression option \"%s\" must be an integer"
+msgid "value for compression option \"%s\" must be a boolean"
+msgstr "el valor para la opción de compresión «%s» debe ser un entero"
+
+#: ../../common/compression.c:379
 #, c-format
-msgid "could not change directory to \"%s\": %m"
-msgstr "no se pudo cambiar al directorio «%s»: %m"
+msgid "compression algorithm \"%s\" does not accept a compression level"
+msgstr "el algoritmo de compresión «%s» no acepta un nivel de compresión"
 
-#: ../../common/exec.c:299
+#: ../../common/compression.c:386
 #, c-format
-msgid "could not read symbolic link \"%s\": %m"
-msgstr "no se pudo leer el enlace simbólico «%s»: %m"
+msgid "compression algorithm \"%s\" expects a compression level between %d and %d (default at %d)"
+msgstr "el algoritmo de compresión «%s» espera un nivel de compresión entre %d y %d (por omisión %d)"
 
-#: ../../common/exec.c:422 parallel.c:1611
+#: ../../common/compression.c:397
+#, c-format
+msgid "compression algorithm \"%s\" does not accept a worker count"
+msgstr "el algoritmo de compresión «%s» no acepta una cantidad de procesos ayudantes"
+
+#: ../../common/compression.c:408
+#, fuzzy, c-format
+#| msgid "compression algorithm \"%s\" does not accept a worker count"
+msgid "compression algorithm \"%s\" does not support long-distance mode"
+msgstr "el algoritmo de compresión «%s» no acepta una cantidad de procesos ayudantes"
+
+#: ../../common/exec.c:172
+#, fuzzy, c-format
+#| msgid "invalid binary \"%s\""
+msgid "invalid binary \"%s\": %m"
+msgstr "el binario «%s» no es válido"
+
+#: ../../common/exec.c:215
+#, fuzzy, c-format
+#| msgid "could not read binary \"%s\""
+msgid "could not read binary \"%s\": %m"
+msgstr "no se pudo leer el binario «%s»"
+
+#: ../../common/exec.c:223
+#, c-format
+msgid "could not find a \"%s\" to execute"
+msgstr "no se pudo encontrar un «%s» para ejecutar"
+
+#: ../../common/exec.c:250
+#, fuzzy, c-format
+#| msgid "could not reopen file \"%s\" as stderr: %m"
+msgid "could not resolve path \"%s\" to absolute form: %m"
+msgstr "no se pudo reabrir «%s» para error estándar: %m"
+
+#: ../../common/exec.c:412 parallel.c:1609
 #, c-format
 msgid "%s() failed: %m"
 msgstr "%s() falló: %m"
 
-#: ../../common/exec.c:560 ../../common/exec.c:605 ../../common/exec.c:697
+#: ../../common/exec.c:550 ../../common/exec.c:595 ../../common/exec.c:687
 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:162
+#: ../../common/fe_memutils.c:98 ../../common/fe_memutils.c:161
 #, c-format
 msgid "out of memory\n"
 msgstr "memoria agotada\n"
 
-#: ../../common/fe_memutils.c:92 ../../common/fe_memutils.c:154
+#: ../../common/fe_memutils.c:92 ../../common/fe_memutils.c:153
 #, c-format
 msgid "cannot duplicate null pointer (internal error)\n"
 msgstr "no se puede duplicar un puntero nulo (error interno)\n"
 
-#: ../../common/wait_error.c:45
+#: ../../common/wait_error.c:55
 #, c-format
 msgid "command not executable"
 msgstr "la orden no es ejecutable"
 
-#: ../../common/wait_error.c:49
+#: ../../common/wait_error.c:59
 #, c-format
 msgid "command not found"
 msgstr "orden no encontrada"
 
-#: ../../common/wait_error.c:54
+#: ../../common/wait_error.c:64
 #, c-format
 msgid "child process exited with exit code %d"
 msgstr "el proceso hijo terminó con código de salida %d"
 
-#: ../../common/wait_error.c:62
+#: ../../common/wait_error.c:72
 #, c-format
 msgid "child process was terminated by exception 0x%X"
 msgstr "el proceso hijo fue terminado por una excepción 0x%X"
 
-#: ../../common/wait_error.c:66
+#: ../../common/wait_error.c:76
 #, c-format
 msgid "child process was terminated by signal %d: %s"
 msgstr "el proceso hijo fue terminado por una señal %d: %s"
 
-#: ../../common/wait_error.c:72
+#: ../../common/wait_error.c:82
 #, c-format
 msgid "child process exited with unrecognized status %d"
 msgstr "el proceso hijo terminó con código no reconocido %d"
@@ -132,299 +179,363 @@ msgstr "el valor «%s» no es válido para la opción %s"
 msgid "%s must be in range %d..%d"
 msgstr "%s debe estar en el rango %d..%d"
 
-#: common.c:134
+#: common.c:132
 #, c-format
 msgid "reading extensions"
 msgstr "leyendo las extensiones"
 
-#: common.c:137
+#: common.c:135
 #, c-format
 msgid "identifying extension members"
 msgstr "identificando miembros de extensión"
 
-#: common.c:140
+#: common.c:138
 #, c-format
 msgid "reading schemas"
 msgstr "leyendo esquemas"
 
-#: common.c:149
+#: common.c:147
 #, c-format
 msgid "reading user-defined tables"
 msgstr "leyendo las tablas definidas por el usuario"
 
-#: common.c:154
+#: common.c:152
 #, c-format
 msgid "reading user-defined functions"
 msgstr "leyendo las funciones definidas por el usuario"
 
-#: common.c:158
+#: common.c:156
 #, c-format
 msgid "reading user-defined types"
 msgstr "leyendo los tipos definidos por el usuario"
 
-#: common.c:162
+#: common.c:160
 #, c-format
 msgid "reading procedural languages"
 msgstr "leyendo los lenguajes procedurales"
 
-#: common.c:165
+#: common.c:163
 #, c-format
 msgid "reading user-defined aggregate functions"
 msgstr "leyendo las funciones de agregación definidas por el usuario"
 
-#: common.c:168
+#: common.c:166
 #, c-format
 msgid "reading user-defined operators"
 msgstr "leyendo los operadores definidos por el usuario"
 
-#: common.c:171
+#: common.c:169
 #, c-format
 msgid "reading user-defined access methods"
 msgstr "leyendo los métodos de acceso definidos por el usuario"
 
-#: common.c:174
+#: common.c:172
 #, c-format
 msgid "reading user-defined operator classes"
 msgstr "leyendo las clases de operadores definidos por el usuario"
 
-#: common.c:177
+#: common.c:175
 #, c-format
 msgid "reading user-defined operator families"
 msgstr "leyendo las familias de operadores definidas por el usuario"
 
-#: common.c:180
+#: common.c:178
 #, 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:183
+#: common.c:181
 #, c-format
 msgid "reading user-defined text search templates"
 msgstr "leyendo las plantillas de búsqueda en texto definidas por el usuario"
 
-#: common.c:186
+#: common.c:184
 #, c-format
 msgid "reading user-defined text search dictionaries"
 msgstr "leyendo los diccionarios de búsqueda en texto definidos por el usuario"
 
-#: common.c:189
+#: common.c:187
 #, c-format
 msgid "reading user-defined text search configurations"
 msgstr "leyendo las configuraciones de búsqueda en texto definidas por el usuario"
 
-#: common.c:192
+#: common.c:190
 #, c-format
 msgid "reading user-defined foreign-data wrappers"
 msgstr "leyendo los conectores de datos externos definidos por el usuario"
 
-#: common.c:195
+#: common.c:193
 #, c-format
 msgid "reading user-defined foreign servers"
 msgstr "leyendo los servidores foráneos definidas por el usuario"
 
-#: common.c:198
+#: common.c:196
 #, c-format
 msgid "reading default privileges"
 msgstr "leyendo los privilegios por omisión"
 
-#: common.c:201
+#: common.c:199
 #, c-format
 msgid "reading user-defined collations"
 msgstr "leyendo los ordenamientos definidos por el usuario"
 
-#: common.c:204
+#: common.c:202
 #, c-format
 msgid "reading user-defined conversions"
 msgstr "leyendo las conversiones definidas por el usuario"
 
-#: common.c:207
+#: common.c:205
 #, c-format
 msgid "reading type casts"
 msgstr "leyendo conversiones de tipo"
 
-#: common.c:210
+#: common.c:208
 #, c-format
 msgid "reading transforms"
 msgstr "leyendo las transformaciones"
 
-#: common.c:213
+#: common.c:211
 #, c-format
 msgid "reading table inheritance information"
 msgstr "leyendo la información de herencia de las tablas"
 
-#: common.c:216
+#: common.c:214
 #, c-format
 msgid "reading event triggers"
 msgstr "leyendo los disparadores por eventos"
 
-#: common.c:220
+#: common.c:218
 #, c-format
 msgid "finding extension tables"
 msgstr "buscando tablas de extensión"
 
-#: common.c:224
+#: common.c:222
 #, c-format
 msgid "finding inheritance relationships"
 msgstr "buscando relaciones de herencia"
 
-#: common.c:227
+#: common.c:225
 #, c-format
 msgid "reading column info for interesting tables"
 msgstr "leyendo la información de columnas para las tablas interesantes"
 
-#: common.c:230
+#: common.c:228
 #, c-format
 msgid "flagging inherited columns in subtables"
 msgstr "marcando las columnas heredadas en las subtablas"
 
-#: common.c:233
+#: common.c:231
+#, fuzzy, c-format
+#| msgid "reading dependency data"
+msgid "reading partitioning data"
+msgstr "obteniendo datos de dependencias"
+
+#: common.c:234
 #, c-format
 msgid "reading indexes"
 msgstr "leyendo los índices"
 
-#: common.c:236
+#: common.c:237
 #, c-format
 msgid "flagging indexes in partitioned tables"
 msgstr "marcando índices en las tablas particionadas"
 
-#: common.c:239
+#: common.c:240
 #, c-format
 msgid "reading extended statistics"
 msgstr "leyendo estadísticas extendidas"
 
-#: common.c:242
+#: common.c:243
 #, c-format
 msgid "reading constraints"
 msgstr "leyendo las restricciones"
 
-#: common.c:245
+#: common.c:246
 #, c-format
 msgid "reading triggers"
 msgstr "leyendo los disparadores (triggers)"
 
-#: common.c:248
+#: common.c:249
 #, c-format
 msgid "reading rewrite rules"
 msgstr "leyendo las reglas de reescritura"
 
-#: common.c:251
+#: common.c:252
 #, c-format
 msgid "reading policies"
 msgstr "leyendo políticas"
 
-#: common.c:254
+#: common.c:255
 #, c-format
 msgid "reading publications"
 msgstr "leyendo publicaciones"
 
-#: common.c:257
+#: common.c:258
 #, c-format
 msgid "reading publication membership of tables"
 msgstr "leyendo membresía de tablas en publicaciones"
 
-#: common.c:260
+#: common.c:261
 #, c-format
 msgid "reading publication membership of schemas"
 msgstr "leyendo membresía de esquemas en publicaciones"
 
-#: common.c:263
+#: common.c:264
 #, c-format
 msgid "reading subscriptions"
 msgstr "leyendo las suscripciones"
 
-#: common.c:343
-#, 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"
-
-#: common.c:1004
+#: common.c:327
 #, 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:1043
+#: common.c:369
+#, 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"
+
+#: common.c:1049
 #, 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:1055
+#: common.c:1061
 #, 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"
 
-#: compress_io.c:111
-#, c-format
-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:504
-#: compress_io.c:547
-#, c-format
-msgid "not built with zlib support"
-msgstr "no contiene soporte zlib"
-
-#: compress_io.c:236 compress_io.c:333
+#: compress_gzip.c:69 compress_gzip.c:183
 #, c-format
 msgid "could not initialize compression library: %s"
 msgstr "no se pudo inicializar la biblioteca de compresión: %s"
 
-#: compress_io.c:256
+#: compress_gzip.c:93
 #, c-format
 msgid "could not close compression stream: %s"
 msgstr "no se pudo cerrar el flujo comprimido: %s"
 
-#: compress_io.c:273
+#: compress_gzip.c:113 compress_zstd.c:109
 #, c-format
 msgid "could not compress data: %s"
 msgstr "no se pudo comprimir datos: %s"
 
-#: compress_io.c:349 compress_io.c:364
+#: compress_gzip.c:199 compress_gzip.c:214
 #, c-format
 msgid "could not uncompress data: %s"
 msgstr "no se pudo descomprimir datos: %s"
 
-#: compress_io.c:371
+#: compress_gzip.c:221
 #, c-format
 msgid "could not close compression library: %s"
 msgstr "no se pudo cerrar la biblioteca de compresión: %s"
 
-#: compress_io.c:584 compress_io.c:621
+#: compress_gzip.c:266 compress_gzip.c:295 compress_lz4.c:602
+#: compress_lz4.c:622 compress_lz4.c:641 compress_none.c:97 compress_none.c:140
 #, c-format
 msgid "could not read from input file: %s"
 msgstr "no se pudo leer el archivo de entrada: %s"
 
-#: compress_io.c:623 pg_backup_custom.c:643 pg_backup_directory.c:553
-#: pg_backup_tar.c:726 pg_backup_tar.c:749
+#: compress_gzip.c:297 compress_lz4.c:624 compress_none.c:142
+#: compress_zstd.c:371 pg_backup_custom.c:653 pg_backup_directory.c:558
+#: pg_backup_tar.c:725 pg_backup_tar.c:748
 #, 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:253
+#: compress_lz4.c:157
+#, c-format
+msgid "could not create LZ4 decompression context: %s"
+msgstr "no se pudo crear un contexto de descompresión LZ4: %s"
+
+#: compress_lz4.c:180
+#, fuzzy, c-format
+#| msgid "could not decompress data: %s"
+msgid "could not decompress: %s"
+msgstr "no se pudo descomprimir datos: %s"
+
+#: compress_lz4.c:193
+#, c-format
+msgid "could not free LZ4 decompression context: %s"
+msgstr "no se pudo liberar el contexto de descompresión LZ4: %s"
+
+#: compress_lz4.c:227
+#, fuzzy, c-format
+#| msgid "could not compress data: %s"
+msgid "failed to LZ4 compress data: %s"
+msgstr "no se pudo comprimir datos: %s"
+
+#: compress_lz4.c:259 compress_lz4.c:266 compress_lz4.c:668 compress_lz4.c:678
+#, fuzzy, c-format
+#| msgid "could not end lz4 compression: %s"
+msgid "failed to end compression: %s"
+msgstr "no se pudo terminar la compresión lz4: %s"
+
+#: compress_lz4.c:301
+#, fuzzy, c-format
+#| msgid "could not initialize compression library: %s"
+msgid "could not initialize LZ4 compression: %s"
+msgstr "no se pudo inicializar la biblioteca de compresión: %s"
+
+#: compress_lz4.c:685
+#, fuzzy, c-format
+#| msgid "could not end lz4 compression: %s"
+msgid "failed to end decompression: %s"
+msgstr "no se pudo terminar la compresión lz4: %s"
+
+#: compress_zstd.c:66
+#, fuzzy, c-format
+#| msgid "could not set compression level %d: %s"
+msgid "could not set compression parameter: \"%s\": %s"
+msgstr "no se pudo definir el nivel de compresión %d: %s"
+
+#: compress_zstd.c:78 compress_zstd.c:231 compress_zstd.c:490
+#: compress_zstd.c:498
+#, c-format
+msgid "could not initialize compression library"
+msgstr "no se pudo inicializar la biblioteca de compresión"
+
+#: compress_zstd.c:194 compress_zstd.c:308
+#, c-format
+msgid "could not decompress data: %s"
+msgstr "no se pudo descomprimir datos: %s"
+
+#: compress_zstd.c:373 pg_backup_custom.c:655
+#, c-format
+msgid "could not read from input file: %m"
+msgstr "no se pudo leer el archivo de entrada: %m"
+
+#: compress_zstd.c:501
+#, c-format
+msgid "unhandled mode"
+msgstr ""
+
+#: parallel.c:251
 #, c-format
 msgid "%s() failed: error code %d"
 msgstr "%s() falló: código de error %d"
 
-#: parallel.c:961
+#: parallel.c:959
 #, c-format
 msgid "could not create communication channels: %m"
 msgstr "no se pudo crear los canales de comunicación: %m"
 
-#: parallel.c:1018
+#: parallel.c:1016
 #, c-format
 msgid "could not create worker process: %m"
 msgstr "no se pudo crear el proceso hijo: %m"
 
-#: parallel.c:1148
+#: parallel.c:1146
 #, c-format
 msgid "unrecognized command received from leader: \"%s\""
 msgstr "orden no reconocida recibida del servidor principal: «%s»"
 
-#: parallel.c:1191 parallel.c:1429
+#: parallel.c:1189 parallel.c:1427
 #, c-format
 msgid "invalid message received from worker: \"%s\""
 msgstr "mensaje no válido recibido del proceso hijo: «%s»"
 
-#: parallel.c:1323
+#: parallel.c:1321
 #, c-format
 msgid ""
 "could not obtain lock on relation \"%s\"\n"
@@ -433,445 +544,453 @@ 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:1412
+#: parallel.c:1410
 #, c-format
 msgid "a worker process died unexpectedly"
 msgstr "un proceso hijo murió inesperadamente"
 
-#: parallel.c:1534 parallel.c:1652
+#: parallel.c:1532 parallel.c:1650
 #, c-format
 msgid "could not write to the communication channel: %m"
 msgstr "no se pudo escribir al canal de comunicación: %m"
 
-#: parallel.c:1736
+#: parallel.c:1734
 #, 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:1747
+#: parallel.c:1745
 #, c-format
 msgid "pgpipe: could not bind: error code %d"
 msgstr "pgpipe: no se pudo enlazar: código de error %d"
 
-#: parallel.c:1754
+#: parallel.c:1752
 #, c-format
 msgid "pgpipe: could not listen: error code %d"
 msgstr "pgpipe: no se pudo escuchar: código de error %d"
 
-#: parallel.c:1761
+#: parallel.c:1759
 #, c-format
 msgid "pgpipe: %s() failed: error code %d"
 msgstr "pgpipe: %s() falló: código de error %d"
 
-#: parallel.c:1772
+#: parallel.c:1770
 #, 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:1781
+#: parallel.c:1779
 #, 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:1790
+#: parallel.c:1788
 #, 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:279 pg_backup_archiver.c:1576
+#: pg_backup_archiver.c:276 pg_backup_archiver.c:1602
 #, c-format
 msgid "could not close output file: %m"
 msgstr "no se pudo cerrar el archivo de salida: %m"
 
-#: pg_backup_archiver.c:323 pg_backup_archiver.c:327
+#: pg_backup_archiver.c:320 pg_backup_archiver.c:324
 #, 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:333
+#: pg_backup_archiver.c:330
 #, c-format
 msgid "unexpected section code %d"
 msgstr "código de sección %d inesperado"
 
-#: pg_backup_archiver.c:370
+#: pg_backup_archiver.c:367
 #, 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:374
+#: pg_backup_archiver.c:371
 #, 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:392
-#, 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:391
+#, fuzzy, c-format
+#| msgid "cannot parse archive \"%s\""
+msgid "cannot restore from compressed archive (%s)"
+msgstr "no se pudo interpretar el archivo «%s»"
 
-#: pg_backup_archiver.c:409
+#: pg_backup_archiver.c:411
 #, c-format
 msgid "connecting to database for restore"
 msgstr "conectando a la base de datos para reestablecimiento"
 
-#: pg_backup_archiver.c:411
+#: pg_backup_archiver.c:413
 #, 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:454
+#: pg_backup_archiver.c:456
 #, c-format
 msgid "implied data-only restore"
 msgstr "asumiendo reestablecimiento de sólo datos"
 
-#: pg_backup_archiver.c:520
+#: pg_backup_archiver.c:522
 #, c-format
 msgid "dropping %s %s"
 msgstr "eliminando %s %s"
 
-#: pg_backup_archiver.c:615
+#: pg_backup_archiver.c:622
 #, 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:771 pg_backup_archiver.c:773
+#: pg_backup_archiver.c:777 pg_backup_archiver.c:779
 #, c-format
 msgid "warning from original dump file: %s"
 msgstr "precaución desde el archivo original: %s"
 
-#: pg_backup_archiver.c:788
+#: pg_backup_archiver.c:794
 #, c-format
 msgid "creating %s \"%s.%s\""
 msgstr "creando %s «%s.%s»"
 
-#: pg_backup_archiver.c:791
+#: pg_backup_archiver.c:797
 #, c-format
 msgid "creating %s \"%s\""
 msgstr "creando %s «%s»"
 
-#: pg_backup_archiver.c:841
+#: pg_backup_archiver.c:847
 #, c-format
 msgid "connecting to new database \"%s\""
 msgstr "conectando a nueva base de datos «%s»"
 
-#: pg_backup_archiver.c:868
+#: pg_backup_archiver.c:874
 #, c-format
 msgid "processing %s"
 msgstr "procesando %s"
 
-#: pg_backup_archiver.c:888
+#: pg_backup_archiver.c:896
 #, c-format
 msgid "processing data for table \"%s.%s\""
 msgstr "procesando datos de la tabla «%s.%s»"
 
-#: pg_backup_archiver.c:947
+#: pg_backup_archiver.c:966
 #, c-format
 msgid "executing %s %s"
 msgstr "ejecutando %s %s"
 
-#: pg_backup_archiver.c:986
+#: pg_backup_archiver.c:1007
 #, c-format
 msgid "disabling triggers for %s"
 msgstr "deshabilitando disparadores (triggers) para %s"
 
-#: pg_backup_archiver.c:1012
+#: pg_backup_archiver.c:1033
 #, c-format
 msgid "enabling triggers for %s"
 msgstr "habilitando disparadores (triggers) para %s"
 
-#: pg_backup_archiver.c:1040
+#: pg_backup_archiver.c:1098
 #, 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:1223
+#: pg_backup_archiver.c:1286
 #, 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:1281
+#: pg_backup_archiver.c:1344
 #, 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:1302 pg_backup_tar.c:669
+#: pg_backup_archiver.c:1365 pg_backup_tar.c:668
 #, c-format
 msgid "restoring large object with OID %u"
 msgstr "reestableciendo objeto grande con OID %u"
 
-#: pg_backup_archiver.c:1314
+#: pg_backup_archiver.c:1377
 #, c-format
 msgid "could not create large object %u: %s"
 msgstr "no se pudo crear el objeto grande %u: %s"
 
-#: pg_backup_archiver.c:1319 pg_dump.c:3568
+#: pg_backup_archiver.c:1382 pg_dump.c:3735
 #, c-format
 msgid "could not open large object %u: %s"
 msgstr "no se pudo abrir el objeto grande %u: %s"
 
-#: pg_backup_archiver.c:1375
+#: pg_backup_archiver.c:1438
 #, c-format
 msgid "could not open TOC file \"%s\": %m"
 msgstr "no se pudo abrir el archivo TOC «%s»: %m"
 
-#: pg_backup_archiver.c:1403
+#: pg_backup_archiver.c:1466
 #, c-format
 msgid "line ignored: %s"
 msgstr "línea ignorada: %s"
 
-#: pg_backup_archiver.c:1410
+#: pg_backup_archiver.c:1473
 #, 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:1433 pg_backup_directory.c:222
-#: pg_backup_directory.c:599
+#: pg_backup_archiver.c:1496 pg_backup_directory.c:221
+#: pg_backup_directory.c:606
 #, c-format
 msgid "could not close TOC file: %m"
 msgstr "no se pudo cerrar el archivo TOC: %m"
 
-#: pg_backup_archiver.c:1547 pg_backup_custom.c:156 pg_backup_directory.c:332
-#: pg_backup_directory.c:586 pg_backup_directory.c:649
-#: pg_backup_directory.c:668 pg_dumpall.c:476
+#: pg_backup_archiver.c:1583 pg_backup_custom.c:156 pg_backup_directory.c:332
+#: pg_backup_directory.c:593 pg_backup_directory.c:658
+#: pg_backup_directory.c:676 pg_dumpall.c:501
 #, 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:1549 pg_backup_custom.c:162
+#: pg_backup_archiver.c:1585 pg_backup_custom.c:162
 #, c-format
 msgid "could not open output file: %m"
 msgstr "no se pudo abrir el archivo de salida: %m"
 
-#: pg_backup_archiver.c:1643
+#: pg_backup_archiver.c:1668
 #, c-format
 msgid "wrote %zu byte of large object data (result = %d)"
 msgid_plural "wrote %zu bytes of large object data (result = %d)"
 msgstr[0] "se escribió %zu byte de los datos del objeto grande (resultado = %d)"
 msgstr[1] "se escribieron %zu bytes de los datos del objeto grande (resultado = %d)"
 
-#: pg_backup_archiver.c:1649
+#: pg_backup_archiver.c:1674
 #, c-format
 msgid "could not write to large object: %s"
 msgstr "no se pudo escribir en objeto grande: %s"
 
-#: pg_backup_archiver.c:1739
+#: pg_backup_archiver.c:1764
 #, c-format
 msgid "while INITIALIZING:"
 msgstr "durante INICIALIZACIÓN:"
 
-#: pg_backup_archiver.c:1744
+#: pg_backup_archiver.c:1769
 #, c-format
 msgid "while PROCESSING TOC:"
 msgstr "durante PROCESAMIENTO DE TABLA DE CONTENIDOS:"
 
-#: pg_backup_archiver.c:1749
+#: pg_backup_archiver.c:1774
 #, c-format
 msgid "while FINALIZING:"
 msgstr "durante FINALIZACIÓN:"
 
-#: pg_backup_archiver.c:1754
+#: pg_backup_archiver.c:1779
 #, 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:1830
+#: pg_backup_archiver.c:1855
 #, c-format
 msgid "bad dumpId"
 msgstr "dumpId incorrecto"
 
-#: pg_backup_archiver.c:1851
+#: pg_backup_archiver.c:1876
 #, c-format
 msgid "bad table dumpId for TABLE DATA item"
 msgstr "dumpId de tabla incorrecto para elemento TABLE DATA"
 
-#: pg_backup_archiver.c:1943
+#: pg_backup_archiver.c:1968
 #, c-format
 msgid "unexpected data offset flag %d"
 msgstr "bandera de posición inesperada %d"
 
-#: pg_backup_archiver.c:1956
+#: pg_backup_archiver.c:1981
 #, 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:2094 pg_backup_archiver.c:2104
+#: pg_backup_archiver.c:2092
 #, c-format
 msgid "directory name too long: \"%s\""
 msgstr "nombre de directorio demasiado largo: «%s»"
 
-#: pg_backup_archiver.c:2112
+#: pg_backup_archiver.c:2142
 #, 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:2120 pg_backup_custom.c:173 pg_backup_custom.c:807
-#: pg_backup_directory.c:207 pg_backup_directory.c:395
+#: pg_backup_archiver.c:2150 pg_backup_custom.c:173 pg_backup_custom.c:816
+#: pg_backup_directory.c:206 pg_backup_directory.c:395
 #, 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:2127 pg_backup_custom.c:179
+#: pg_backup_archiver.c:2157 pg_backup_custom.c:179
 #, c-format
 msgid "could not open input file: %m"
 msgstr "no se pudo abrir el archivo de entrada: %m"
 
-#: pg_backup_archiver.c:2133
+#: pg_backup_archiver.c:2163
 #, c-format
 msgid "could not read input file: %m"
 msgstr "no se pudo leer el archivo de entrada: %m"
 
-#: pg_backup_archiver.c:2135
+#: pg_backup_archiver.c:2165
 #, 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:2167
+#: pg_backup_archiver.c:2197
 #, 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:2173
+#: pg_backup_archiver.c:2203
 #, 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:2179
+#: pg_backup_archiver.c:2209
 #, 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:2188
+#: pg_backup_archiver.c:2218
 #, c-format
 msgid "could not close input file: %m"
 msgstr "no se pudo cerrar el archivo de entrada: %m"
 
-#: pg_backup_archiver.c:2305
+#: pg_backup_archiver.c:2296
+#, fuzzy, c-format
+#| msgid "could not open file \"%s\" for reading: %m"
+msgid "could not open stdout for appending: %m"
+msgstr "no se pudo abrir archivo «%s» para lectura: %m"
+
+#: pg_backup_archiver.c:2341
 #, c-format
 msgid "unrecognized file format \"%d\""
 msgstr "formato de archivo no reconocido «%d»"
 
-#: pg_backup_archiver.c:2387 pg_backup_archiver.c:4445
+#: pg_backup_archiver.c:2422 pg_backup_archiver.c:4445
 #, c-format
 msgid "finished item %d %s %s"
 msgstr "terminó el elemento %d %s %s"
 
-#: pg_backup_archiver.c:2391 pg_backup_archiver.c:4458
+#: pg_backup_archiver.c:2426 pg_backup_archiver.c:4458
 #, c-format
 msgid "worker process failed: exit code %d"
 msgstr "el proceso hijo falló: código de salida %d"
 
-#: pg_backup_archiver.c:2512
+#: pg_backup_archiver.c:2547
 #, 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:2592
+#: pg_backup_archiver.c:2627
 #, c-format
 msgid "restoring tables WITH OIDS is not supported anymore"
 msgstr "restaurar tablas WITH OIDS ya no está soportado"
 
-#: pg_backup_archiver.c:2674
+#: pg_backup_archiver.c:2709
 #, c-format
 msgid "unrecognized encoding \"%s\""
 msgstr "no se reconoce la codificación: «%s»"
 
-#: pg_backup_archiver.c:2679
+#: pg_backup_archiver.c:2714
 #, c-format
 msgid "invalid ENCODING item: %s"
 msgstr "elemento ENCODING no válido: %s"
 
-#: pg_backup_archiver.c:2697
+#: pg_backup_archiver.c:2732
 #, c-format
 msgid "invalid STDSTRINGS item: %s"
 msgstr "elemento STDSTRINGS no válido: %s"
 
-#: pg_backup_archiver.c:2722
+#: pg_backup_archiver.c:2757
 #, c-format
 msgid "schema \"%s\" not found"
 msgstr "esquema «%s» no encontrado"
 
-#: pg_backup_archiver.c:2729
+#: pg_backup_archiver.c:2764
 #, c-format
 msgid "table \"%s\" not found"
 msgstr "tabla «%s» no encontrada"
 
-#: pg_backup_archiver.c:2736
+#: pg_backup_archiver.c:2771
 #, c-format
 msgid "index \"%s\" not found"
 msgstr "índice «%s» no encontrado"
 
-#: pg_backup_archiver.c:2743
+#: pg_backup_archiver.c:2778
 #, c-format
 msgid "function \"%s\" not found"
 msgstr "función «%s» no encontrada"
 
-#: pg_backup_archiver.c:2750
+#: pg_backup_archiver.c:2785
 #, c-format
 msgid "trigger \"%s\" not found"
 msgstr "disparador «%s» no encontrado"
 
-#: pg_backup_archiver.c:3143
+#: pg_backup_archiver.c:3182
 #, 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:3280
+#: pg_backup_archiver.c:3314
 #, c-format
 msgid "could not set search_path to \"%s\": %s"
 msgstr "no se pudo definir search_path a «%s»: %s"
 
-#: pg_backup_archiver.c:3342
+#: pg_backup_archiver.c:3375
 #, c-format
 msgid "could not set default_tablespace to %s: %s"
 msgstr "no se pudo definir default_tablespace a %s: %s"
 
-#: pg_backup_archiver.c:3392
+#: pg_backup_archiver.c:3424
 #, c-format
 msgid "could not set default_table_access_method: %s"
 msgstr "no se pudo definir default_table_access_method: %s"
 
-#: pg_backup_archiver.c:3486 pg_backup_archiver.c:3651
+#: pg_backup_archiver.c:3528
 #, 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:3754
+#: pg_backup_archiver.c:3749
 #, 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:3768
+#: pg_backup_archiver.c:3763
 #, 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:3773
+#: pg_backup_archiver.c:3768
 #, 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:3777
+#: pg_backup_archiver.c:3772
 #, 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:3787
+#: pg_backup_archiver.c:3782
 #, 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:3802
-#, c-format
-msgid "archive is compressed, but this installation does not support compression -- no data will be available"
+#: pg_backup_archiver.c:3804
+#, fuzzy, c-format
+#| msgid "archive is compressed, but this installation does not support compression -- no data will be available"
+msgid "archive is compressed, but this installation does not support compression (%s) -- 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:3836
+#: pg_backup_archiver.c:3840
 #, 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:3970
+#: pg_backup_archiver.c:3974
 #, c-format
 msgid "processing item %d %s %s"
 msgstr "procesando el elemento %d %s %s"
@@ -906,84 +1025,79 @@ msgstr "procesando el elemento saltado %d %s %s"
 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:376 pg_backup_null.c:147
+#: pg_backup_custom.c:380 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:439 pg_backup_custom.c:505 pg_backup_custom.c:629
-#: pg_backup_custom.c:865 pg_backup_tar.c:1016 pg_backup_tar.c:1021
+#: pg_backup_custom.c:445 pg_backup_custom.c:511 pg_backup_custom.c:640
+#: pg_backup_custom.c:874 pg_backup_tar.c:1014 pg_backup_tar.c:1019
 #, c-format
 msgid "error during file seek: %m"
 msgstr "error durante el posicionamiento (seek) en el archivo: %m"
 
-#: pg_backup_custom.c:478
+#: pg_backup_custom.c:484
 #, c-format
 msgid "data block %d has wrong seek position"
 msgstr "el bloque de datos %d tiene una posición de búsqueda incorrecta"
 
-#: pg_backup_custom.c:495
+#: pg_backup_custom.c:501
 #, 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:517
+#: pg_backup_custom.c:523
 #, 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:522
+#: pg_backup_custom.c:528
 #, 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:529
+#: pg_backup_custom.c:535
 #, 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:543
+#: pg_backup_custom.c:549
 #, 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:645
-#, c-format
-msgid "could not read from input file: %m"
-msgstr "no se pudo leer el archivo de entrada: %m"
-
-#: pg_backup_custom.c:746 pg_backup_custom.c:798 pg_backup_custom.c:943
-#: pg_backup_tar.c:1019
+#: pg_backup_custom.c:755 pg_backup_custom.c:807 pg_backup_custom.c:952
+#: pg_backup_tar.c:1017
 #, 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:762 pg_backup_custom.c:802
+#: pg_backup_custom.c:771 pg_backup_custom.c:811
 #, c-format
 msgid "could not close archive file: %m"
 msgstr "no se pudo cerrar el archivo del archivador: %m"
 
-#: pg_backup_custom.c:785
+#: pg_backup_custom.c:794
 #, c-format
 msgid "can only reopen input archives"
 msgstr "sólo se pueden reabrir archivos de entrada"
 
-#: pg_backup_custom.c:792
+#: pg_backup_custom.c:801
 #, 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:794
+#: pg_backup_custom.c:803
 #, 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:810
+#: pg_backup_custom.c:819
 #, 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:889
+#: pg_backup_custom.c:898
 #, c-format
 msgid "compressor active"
 msgstr "compresor activo"
@@ -993,12 +1107,12 @@ msgstr "compresor activo"
 msgid "could not get server_version from libpq"
 msgstr "no se pudo obtener server_version desde libpq"
 
-#: pg_backup_db.c:53 pg_dumpall.c:1646
+#: pg_backup_db.c:53 pg_dumpall.c:1817
 #, 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:54 pg_dumpall.c:1647
+#: pg_backup_db.c:54 pg_dumpall.c:1818
 #, c-format
 msgid "server version: %s; %s version: %s"
 msgstr "versión del servidor: %s; versión de %s: %s"
@@ -1008,7 +1122,7 @@ msgstr "versión del servidor: %s; versión de %s: %s"
 msgid "already connected to a database"
 msgstr "ya está conectado a una base de datos"
 
-#: pg_backup_db.c:128 pg_backup_db.c:178 pg_dumpall.c:1490 pg_dumpall.c:1595
+#: pg_backup_db.c:128 pg_backup_db.c:178 pg_dumpall.c:1664 pg_dumpall.c:1766
 msgid "Password: "
 msgstr "Contraseña: "
 
@@ -1022,92 +1136,93 @@ msgstr "no se pudo hacer la conexión a la base de datos"
 msgid "reconnection failed: %s"
 msgstr "falló la reconexión: %s"
 
-#: pg_backup_db.c:190 pg_backup_db.c:265 pg_dumpall.c:1520 pg_dumpall.c:1604
+#: pg_backup_db.c:190 pg_backup_db.c:264 pg_dump.c:756 pg_dumpall.c:1691
+#: pg_dumpall.c:1775
 #, c-format
 msgid "%s"
 msgstr "%s"
 
-#: pg_backup_db.c:272 pg_dumpall.c:1709 pg_dumpall.c:1732
+#: pg_backup_db.c:271 pg_dumpall.c:1880 pg_dumpall.c:1903
 #, c-format
 msgid "query failed: %s"
 msgstr "la consulta falló: %s"
 
-#: pg_backup_db.c:274 pg_dumpall.c:1710 pg_dumpall.c:1733
+#: pg_backup_db.c:273 pg_dumpall.c:1881 pg_dumpall.c:1904
 #, c-format
 msgid "Query was: %s"
 msgstr "La consulta era: %s"
 
-#: pg_backup_db.c:316
+#: pg_backup_db.c:315
 #, 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:352
+#: pg_backup_db.c:351
 #, c-format
 msgid "%s: %sCommand was: %s"
 msgstr "%s: %sLa orden era: %s"
 
-#: pg_backup_db.c:408 pg_backup_db.c:482 pg_backup_db.c:489
+#: pg_backup_db.c:407 pg_backup_db.c:481 pg_backup_db.c:488
 msgid "could not execute query"
 msgstr "no se pudo ejecutar la consulta"
 
-#: pg_backup_db.c:461
+#: pg_backup_db.c:460
 #, c-format
 msgid "error returned by PQputCopyData: %s"
 msgstr "PQputCopyData regresó un error: %s"
 
-#: pg_backup_db.c:510
+#: pg_backup_db.c:509
 #, c-format
 msgid "error returned by PQputCopyEnd: %s"
 msgstr "PQputCopyEnd regresó un error: %s"
 
-#: pg_backup_db.c:516
+#: pg_backup_db.c:515
 #, c-format
 msgid "COPY failed for table \"%s\": %s"
 msgstr "COPY falló para la tabla «%s»: %s"
 
-#: pg_backup_db.c:522 pg_dump.c:2105
+#: pg_backup_db.c:521 pg_dump.c:2202
 #, 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:534
+#: pg_backup_db.c:533
 msgid "could not start database transaction"
 msgstr "no se pudo iniciar la transacción en la base de datos"
 
-#: pg_backup_db.c:542
+#: pg_backup_db.c:541
 msgid "could not commit database transaction"
 msgstr "no se pudo terminar la transacción a la base de datos"
 
-#: pg_backup_directory.c:156
+#: pg_backup_directory.c:155
 #, c-format
 msgid "no output directory specified"
 msgstr "no se especificó un directorio de salida"
 
-#: pg_backup_directory.c:185
+#: pg_backup_directory.c:184
 #, c-format
 msgid "could not read directory \"%s\": %m"
 msgstr "no se pudo leer el directorio «%s»: %m"
 
-#: pg_backup_directory.c:189
+#: pg_backup_directory.c:188
 #, c-format
 msgid "could not close directory \"%s\": %m"
 msgstr "no se pudo abrir el directorio «%s»: %m"
 
-#: pg_backup_directory.c:195
+#: pg_backup_directory.c:194
 #, c-format
 msgid "could not create directory \"%s\": %m"
 msgstr "no se pudo crear el directorio «%s»: %m"
 
-#: pg_backup_directory.c:355 pg_backup_directory.c:497
-#: pg_backup_directory.c:533
+#: pg_backup_directory.c:356 pg_backup_directory.c:499
+#: pg_backup_directory.c:537
 #, c-format
 msgid "could not write to output file: %s"
 msgstr "no se pudo escribir al archivo de salida: %s"
 
-#: pg_backup_directory.c:373
+#: pg_backup_directory.c:374
 #, c-format
 msgid "could not close data file: %m"
 msgstr "no se pudo cerrar el archivo de datos: %m"
@@ -1117,42 +1232,45 @@ msgstr "no se pudo cerrar el archivo de datos: %m"
 msgid "could not close data file \"%s\": %m"
 msgstr "no se pudo cerrar el archivo de datos «%s»: %m"
 
-#: pg_backup_directory.c:447
+#: pg_backup_directory.c:448
 #, 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:458
+#: pg_backup_directory.c:459
 #, 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:467
+#: pg_backup_directory.c:468
 #, 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:471
+#: pg_backup_directory.c:472
 #, 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:685
-#, c-format
-msgid "could not close blob data file: %m"
-msgstr "no se pudo cerrar el archivo de datos de objetos grandes: %m"
+#: pg_backup_directory.c:694
+#, fuzzy, c-format
+#| msgid "could not close data file: %m"
+msgid "could not close LO data file: %m"
+msgstr "no se pudo cerrar el archivo de datos: %m"
 
-#: pg_backup_directory.c:691
-#, c-format
-msgid "could not write to blobs TOC file"
+#: pg_backup_directory.c:700
+#, fuzzy, c-format
+#| msgid "could not write to blobs TOC file"
+msgid "could not write to LOs TOC file"
 msgstr "no se pudo escribir al archivo de la tabla de contenidos de objetos grandes"
 
-#: pg_backup_directory.c:705
-#, c-format
-msgid "could not close blobs TOC file: %m"
-msgstr "no se pudo cerrar el archivo de la tabla de contenidos de objetos grandes: %m"
+#: pg_backup_directory.c:714
+#, fuzzy, c-format
+#| msgid "could not close TOC file: %m"
+msgid "could not close LOs TOC file: %m"
+msgstr "no se pudo cerrar el archivo TOC: %m"
 
-#: pg_backup_directory.c:724
+#: pg_backup_directory.c:733
 #, c-format
 msgid "file name too long: \"%s\""
 msgstr "nombre de archivo demasiado largo: «%s»"
@@ -1173,7 +1291,7 @@ msgid "could not open TOC file for output: %m"
 msgstr "no se pudo abrir la tabla de contenido para escribir: %m"
 
 #: pg_backup_tar.c:198 pg_backup_tar.c:334 pg_backup_tar.c:389
-#: pg_backup_tar.c:405 pg_backup_tar.c:893
+#: pg_backup_tar.c:405 pg_backup_tar.c:891
 #, c-format
 msgid "compression is not supported by tar archive format"
 msgstr "la compresión no está soportada por el formato de salida tar"
@@ -1198,44 +1316,44 @@ msgstr "no se pudo encontrar el archivo «%s» en el archivador"
 msgid "could not generate temporary file name: %m"
 msgstr "no se pudo generar el nombre de archivo temporal: %m"
 
-#: pg_backup_tar.c:624
+#: pg_backup_tar.c:623
 #, c-format
 msgid "unexpected COPY statement syntax: \"%s\""
 msgstr "sintaxis de sentencia COPY inesperada: «%s»"
 
-#: pg_backup_tar.c:890
+#: pg_backup_tar.c:888
 #, c-format
 msgid "invalid OID for large object (%u)"
 msgstr "el OID del objeto grande no es válido (%u)"
 
-#: pg_backup_tar.c:1035
+#: pg_backup_tar.c:1033
 #, c-format
 msgid "could not close temporary file: %m"
 msgstr "no se pudo abrir archivo temporal: %m"
 
-#: pg_backup_tar.c:1038
+#: pg_backup_tar.c:1036
 #, c-format
 msgid "actual file length (%lld) does not match expected (%lld)"
 msgstr "el tamaño real del archivo (%lld) no coincide con el esperado (%lld)"
 
-#: pg_backup_tar.c:1084 pg_backup_tar.c:1115
+#: pg_backup_tar.c:1082 pg_backup_tar.c:1113
 #, 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:1102
+#: pg_backup_tar.c:1100
 #, 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:1149
+#: pg_backup_tar.c:1147
 #, 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:1188
+#: pg_backup_tar.c:1186
 #, c-format
 msgid "corrupt tar header found in %s (expected %d, computed %d) file position %llu"
 msgstr "se encontró un encabezado corrupto en %s (esperado %d, calculado %d) en la posición %llu"
@@ -1245,9 +1363,9 @@ 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:627 pg_dump.c:644 pg_dumpall.c:340
-#: pg_dumpall.c:350 pg_dumpall.c:358 pg_dumpall.c:366 pg_dumpall.c:373
-#: pg_dumpall.c:383 pg_dumpall.c:458 pg_restore.c:291 pg_restore.c:307
+#: pg_backup_utils.c:55 pg_dump.c:662 pg_dump.c:679 pg_dumpall.c:365
+#: pg_dumpall.c:375 pg_dumpall.c:383 pg_dumpall.c:391 pg_dumpall.c:398
+#: pg_dumpall.c:408 pg_dumpall.c:483 pg_restore.c:291 pg_restore.c:307
 #: pg_restore.c:321
 #, c-format
 msgid "Try \"%s --help\" for more information."
@@ -1258,72 +1376,83 @@ msgstr "Pruebe «%s --help» para mayor información."
 msgid "out of on_exit_nicely slots"
 msgstr "elementos on_exit_nicely agotados"
 
-#: pg_dump.c:642 pg_dumpall.c:348 pg_restore.c:305
+#: pg_dump.c:677 pg_dumpall.c:373 pg_restore.c:305
 #, 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:661 pg_restore.c:328
+#: pg_dump.c:696 pg_restore.c:328
 #, 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:664
+#: pg_dump.c:699
 #, c-format
 msgid "options -s/--schema-only and --include-foreign-data cannot be used together"
 msgstr "las opciones -s/--schema-only y --include-foreign-data no pueden usarse juntas"
 
-#: pg_dump.c:667
+#: pg_dump.c:702
 #, c-format
 msgid "option --include-foreign-data is not supported with parallel backup"
 msgstr "la opción --include-foreign-data no está soportado con respaldo en paralelo"
 
-#: pg_dump.c:670 pg_restore.c:331
+#: pg_dump.c:705 pg_restore.c:331
 #, 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:673 pg_dumpall.c:378 pg_restore.c:356
+#: pg_dump.c:708 pg_dumpall.c:403 pg_restore.c:356
 #, 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:680
+#: pg_dump.c:715
 #, c-format
 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:702
+#: pg_dump.c:744
 #, 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"
+msgid "unrecognized compression algorithm: \"%s\""
+msgstr "algoritmo de compresión no reconocido: «%s»"
 
-#: pg_dump.c:715
+#: pg_dump.c:751
+#, c-format
+msgid "invalid compression specification: %s"
+msgstr "especificación de compresión no válida: %s"
+
+#: pg_dump.c:764
+#, fuzzy, c-format
+#| msgid "compression with %s is not yet supported"
+msgid "compression option \"%s\" is not currently supported by pg_dump"
+msgstr "el método de compresión %s no está soportado aún"
+
+#: pg_dump.c:776
 #, 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:761
+#: pg_dump.c:822
 #, c-format
 msgid "last built-in OID is %u"
 msgstr "el último OID interno es %u"
 
-#: pg_dump.c:770
+#: pg_dump.c:831
 #, c-format
 msgid "no matching schemas were found"
 msgstr "no se encontraron esquemas coincidentes"
 
-#: pg_dump.c:784
+#: pg_dump.c:848
 #, c-format
 msgid "no matching tables were found"
 msgstr "no se encontraron tablas coincidentes"
 
-#: pg_dump.c:806
+#: pg_dump.c:876
 #, c-format
 msgid "no matching extensions were found"
 msgstr "no se encontraron extensiones coincidentes"
 
-#: pg_dump.c:989
+#: pg_dump.c:1056
 #, c-format
 msgid ""
 "%s dumps a database as a text file or to other formats.\n"
@@ -1332,17 +1461,17 @@ msgstr ""
 "%s extrae una base de datos en formato de texto o en otros formatos.\n"
 "\n"
 
-#: pg_dump.c:990 pg_dumpall.c:605 pg_restore.c:433
+#: pg_dump.c:1057 pg_dumpall.c:630 pg_restore.c:433
 #, c-format
 msgid "Usage:\n"
 msgstr "Empleo:\n"
 
-#: pg_dump.c:991
+#: pg_dump.c:1058
 #, c-format
 msgid "  %s [OPTION]... [DBNAME]\n"
 msgstr "  %s [OPCIÓN]... [NOMBREDB]\n"
 
-#: pg_dump.c:993 pg_dumpall.c:608 pg_restore.c:436
+#: pg_dump.c:1060 pg_dumpall.c:633 pg_restore.c:436
 #, c-format
 msgid ""
 "\n"
@@ -1351,12 +1480,12 @@ msgstr ""
 "\n"
 "Opciones generales:\n"
 
-#: pg_dump.c:994
+#: pg_dump.c:1061
 #, 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:995
+#: pg_dump.c:1062
 #, c-format
 msgid ""
 "  -F, --format=c|d|t|p         output file format (custom, directory, tar,\n"
@@ -1365,42 +1494,49 @@ 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:997
+#: pg_dump.c:1064
 #, 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:998 pg_dumpall.c:610
+#: pg_dump.c:1065 pg_dumpall.c:635
 #, c-format
 msgid "  -v, --verbose                verbose mode\n"
 msgstr "  -v, --verbose            modo verboso\n"
 
-#: pg_dump.c:999 pg_dumpall.c:611
+#: pg_dump.c:1066 pg_dumpall.c:636
 #, 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:1000
-#, 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:1067
+#, fuzzy, c-format
+#| msgid ""
+#| "  -Z, --compress=METHOD[:DETAIL]\n"
+#| "                         compress as specified\n"
+msgid ""
+"  -Z, --compress=METHOD[:LEVEL]\n"
+"                               compress as specified\n"
+msgstr ""
+"  -Z, --compress=MÉTODO[:DETALLE]\n"
+"                         comprimir como se indica\n"
 
-#: pg_dump.c:1001 pg_dumpall.c:612
+#: pg_dump.c:1069 pg_dumpall.c:637
 #, 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:1002 pg_dumpall.c:639
+#: pg_dump.c:1070 pg_dumpall.c:664
 #, 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:1003 pg_dumpall.c:613
+#: pg_dump.c:1071 pg_dumpall.c:638
 #, c-format
 msgid "  -?, --help                   show this help, then exit\n"
 msgstr "  -?, --help               mostrar esta ayuda y salir\n"
 
-#: pg_dump.c:1005 pg_dumpall.c:614
+#: pg_dump.c:1073 pg_dumpall.c:639
 #, c-format
 msgid ""
 "\n"
@@ -1409,54 +1545,58 @@ msgstr ""
 "\n"
 "Opciones que controlan el contenido de la salida:\n"
 
-#: pg_dump.c:1006 pg_dumpall.c:615
+#: pg_dump.c:1074 pg_dumpall.c:640
 #, 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:1007
+#: pg_dump.c:1075
 #, c-format
-msgid "  -b, --blobs                  include large objects in dump\n"
-msgstr "  -b, --blobs                  incluye objetos grandes en la extracción\n"
+msgid ""
+"  -b, --large-objects          include large objects in dump\n"
+"  --blobs                      (same as --large-objects, deprecated)\n"
+msgstr ""
 
-#: pg_dump.c:1008
+#: pg_dump.c:1077
 #, c-format
-msgid "  -B, --no-blobs               exclude large objects in dump\n"
-msgstr "  -B, --no-blobs               excluye objetos grandes en la extracción\n"
+msgid ""
+"  -B, --no-large-objects       exclude large objects in dump\n"
+"  --no-blobs                   (same as --no-large-objects, deprecated)\n"
+msgstr ""
 
-#: pg_dump.c:1009 pg_restore.c:447
+#: pg_dump.c:1079 pg_restore.c:447
 #, 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:1010
+#: pg_dump.c:1080
 #, 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:1011
+#: pg_dump.c:1081
 #, c-format
 msgid "  -e, --extension=PATTERN      dump the specified extension(s) only\n"
 msgstr "  -e, --extension=PATRÓN       extrae sólo la o las extensiones nombradas\n"
 
-#: pg_dump.c:1012 pg_dumpall.c:617
+#: pg_dump.c:1082 pg_dumpall.c:642
 #, 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:1013
+#: pg_dump.c:1083
 #, c-format
 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:1014
+#: pg_dump.c:1084
 #, c-format
 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:1015
+#: pg_dump.c:1085
 #, c-format
 msgid ""
 "  -O, --no-owner               skip restoration of object ownership in\n"
@@ -1465,58 +1605,59 @@ msgstr ""
 "  -O, --no-owner               en formato de sólo texto, no reestablece\n"
 "                               los dueños de los objetos\n"
 
-#: pg_dump.c:1017 pg_dumpall.c:621
+#: pg_dump.c:1087 pg_dumpall.c:646
 #, 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:1018
+#: pg_dump.c:1088
 #, 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:1019
-#, c-format
-msgid "  -t, --table=PATTERN          dump the specified table(s) only\n"
+#: pg_dump.c:1089
+#, fuzzy, c-format
+#| msgid "  -t, --table=PATTERN          dump the specified table(s) only\n"
+msgid "  -t, --table=PATTERN          dump only the specified table(s)\n"
 msgstr "  -t, --table=PATRÓN           extrae sólo la o las tablas nombradas\n"
 
-#: pg_dump.c:1020
+#: pg_dump.c:1090
 #, c-format
 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:1021 pg_dumpall.c:624
+#: pg_dump.c:1091 pg_dumpall.c:649
 #, 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:1022 pg_dumpall.c:625
+#: pg_dump.c:1092 pg_dumpall.c:650
 #, 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:1023 pg_dumpall.c:626
+#: pg_dump.c:1093 pg_dumpall.c:651
 #, 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:1024 pg_dumpall.c:627
+#: pg_dump.c:1094 pg_dumpall.c:652
 #, 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:1025 pg_dumpall.c:628 pg_restore.c:464
+#: pg_dump.c:1095 pg_dumpall.c:653 pg_restore.c:464
 #, 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:1026
+#: pg_dump.c:1096
 #, c-format
 msgid ""
 "  --enable-row-security        enable row security (dump only content user has\n"
@@ -1525,22 +1666,52 @@ msgstr ""
 "  --enable-row-security        activa seguridad de filas (volcar sólo el\n"
 "                               contenido al que el usuario tiene acceso)\n"
 
-#: pg_dump.c:1028
+#: pg_dump.c:1098
+#, fuzzy, c-format
+#| msgid ""
+#| "  --include-foreign-data=PATTERN\n"
+#| "                               include data of foreign tables on foreign\n"
+#| "                               servers matching PATTERN\n"
+msgid ""
+"  --exclude-table-and-children=PATTERN\n"
+"                               do NOT dump the specified table(s),\n"
+"                               including child and partition tables\n"
+msgstr ""
+"  --include-foreign-data=PATRÓN\n"
+"                               incluye datos de tablas foráneas en servidores\n"
+"                               que coinciden con PATRÓN\n"
+
+#: pg_dump.c:1101
 #, c-format
 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:1029 pg_dumpall.c:630
+#: pg_dump.c:1102
+#, fuzzy, c-format
+#| msgid ""
+#| "  --include-foreign-data=PATTERN\n"
+#| "                               include data of foreign tables on foreign\n"
+#| "                               servers matching PATTERN\n"
+msgid ""
+"  --exclude-table-data-and-children=PATTERN\n"
+"                               do NOT dump data for the specified table(s),\n"
+"                               including child and partition tables\n"
+msgstr ""
+"  --include-foreign-data=PATRÓN\n"
+"                               incluye datos de tablas foráneas en servidores\n"
+"                               que coinciden con PATRÓN\n"
+
+#: pg_dump.c:1105 pg_dumpall.c:655
 #, 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:1030 pg_dumpall.c:631 pg_restore.c:466
+#: pg_dump.c:1106 pg_dumpall.c:656 pg_restore.c:466
 #, 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:1031
+#: pg_dump.c:1107
 #, c-format
 msgid ""
 "  --include-foreign-data=PATTERN\n"
@@ -1551,93 +1722,93 @@ msgstr ""
 "                               incluye datos de tablas foráneas en servidores\n"
 "                               que coinciden con PATRÓN\n"
 
-#: pg_dump.c:1034 pg_dumpall.c:632
+#: pg_dump.c:1110 pg_dumpall.c:657
 #, 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:1035 pg_dumpall.c:633
+#: pg_dump.c:1111 pg_dumpall.c:658
 #, 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:1036 pg_dumpall.c:634
+#: pg_dump.c:1112 pg_dumpall.c:659
 #, c-format
 msgid "  --no-comments                do not dump comments\n"
 msgstr "  --no-comments                no volcar los comentarios\n"
 
-#: pg_dump.c:1037 pg_dumpall.c:635
+#: pg_dump.c:1113 pg_dumpall.c:660
 #, c-format
 msgid "  --no-publications            do not dump publications\n"
 msgstr "  --no-publications            no volcar las publicaciones\n"
 
-#: pg_dump.c:1038 pg_dumpall.c:637
+#: pg_dump.c:1114 pg_dumpall.c:662
 #, 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:1039 pg_dumpall.c:638
+#: pg_dump.c:1115 pg_dumpall.c:663
 #, c-format
 msgid "  --no-subscriptions           do not dump subscriptions\n"
 msgstr "  --no-subscriptions           no volcar las suscripciones\n"
 
-#: pg_dump.c:1040 pg_dumpall.c:640
+#: pg_dump.c:1116 pg_dumpall.c:665
 #, c-format
 msgid "  --no-table-access-method     do not dump table access methods\n"
 msgstr "  --no-tablespaces             no volcar métodos de acceso de tablas\n"
 
-#: pg_dump.c:1041 pg_dumpall.c:641
+#: pg_dump.c:1117 pg_dumpall.c:666
 #, c-format
 msgid "  --no-tablespaces             do not dump tablespace assignments\n"
 msgstr "  --no-tablespaces             no volcar asignaciones de tablespace\n"
 
-#: pg_dump.c:1042 pg_dumpall.c:642
+#: pg_dump.c:1118 pg_dumpall.c:667
 #, c-format
 msgid "  --no-toast-compression       do not dump TOAST compression methods\n"
 msgstr "  --no-toast-compression       no volcar métodos de compresión TOAST\n"
 
-#: pg_dump.c:1043 pg_dumpall.c:643
+#: pg_dump.c:1119 pg_dumpall.c:668
 #, 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:1044 pg_dumpall.c:644
+#: pg_dump.c:1120 pg_dumpall.c:669
 #, c-format
 msgid "  --on-conflict-do-nothing     add ON CONFLICT DO NOTHING to INSERT commands\n"
 msgstr "  --on-conflict-do-nothing     agregar ON CONFLICT DO NOTHING a órdenes INSERT\n"
 
-#: pg_dump.c:1045 pg_dumpall.c:645
+#: pg_dump.c:1121 pg_dumpall.c:670
 #, 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:1046 pg_dumpall.c:646
+#: pg_dump.c:1122 pg_dumpall.c:671
 #, 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:1047
+#: pg_dump.c:1123
 #, 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:1048
+#: pg_dump.c:1124
 #, 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:1049
+#: pg_dump.c:1125
 #, 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:1050 pg_restore.c:476
+#: pg_dump.c:1126 pg_restore.c:476
 #, c-format
 msgid ""
 "  --strict-names               require table and/or schema include patterns to\n"
@@ -1646,7 +1817,14 @@ msgstr ""
 "  --strict-names               requerir al menos una coincidencia para cada patrón\n"
 "                               de nombre de tablas y esquemas\n"
 
-#: pg_dump.c:1052 pg_dumpall.c:647 pg_restore.c:478
+#: pg_dump.c:1128
+#, c-format
+msgid ""
+"  --table-and-children=PATTERN dump only the specified table(s),\n"
+"                               including child and partition tables\n"
+msgstr ""
+
+#: pg_dump.c:1130 pg_dumpall.c:672 pg_restore.c:478
 #, c-format
 msgid ""
 "  --use-set-session-authorization\n"
@@ -1657,7 +1835,7 @@ msgstr ""
 "                               usa órdenes SESSION AUTHORIZATION en lugar de\n"
 "                               ALTER OWNER para cambiar los dueño de los objetos\n"
 
-#: pg_dump.c:1056 pg_dumpall.c:651 pg_restore.c:482
+#: pg_dump.c:1134 pg_dumpall.c:676 pg_restore.c:482
 #, c-format
 msgid ""
 "\n"
@@ -1666,46 +1844,46 @@ msgstr ""
 "\n"
 "Opciones de conexión:\n"
 
-#: pg_dump.c:1057
+#: pg_dump.c:1135
 #, 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:1058 pg_dumpall.c:653 pg_restore.c:483
+#: pg_dump.c:1136 pg_dumpall.c:678 pg_restore.c:483
 #, 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:1059 pg_dumpall.c:655 pg_restore.c:484
+#: pg_dump.c:1137 pg_dumpall.c:680 pg_restore.c:484
 #, 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:1060 pg_dumpall.c:656 pg_restore.c:485
+#: pg_dump.c:1138 pg_dumpall.c:681 pg_restore.c:485
 #, 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:1061 pg_dumpall.c:657 pg_restore.c:486
+#: pg_dump.c:1139 pg_dumpall.c:682 pg_restore.c:486
 #, c-format
 msgid "  -w, --no-password        never prompt for password\n"
 msgstr "  -w, --no-password        nunca pedir una contraseña\n"
 
-#: pg_dump.c:1062 pg_dumpall.c:658 pg_restore.c:487
+#: pg_dump.c:1140 pg_dumpall.c:683 pg_restore.c:487
 #, 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:1063 pg_dumpall.c:659
+#: pg_dump.c:1141 pg_dumpall.c:684
 #, c-format
 msgid "  --role=ROLENAME          do SET ROLE before dump\n"
 msgstr "  --role=ROL               ejecuta SET ROLE antes del volcado\n"
 
-#: pg_dump.c:1065
+#: pg_dump.c:1143
 #, c-format
 msgid ""
 "\n"
@@ -1718,443 +1896,449 @@ msgstr ""
 "de la variable de ambiente PGDATABASE.\n"
 "\n"
 
-#: pg_dump.c:1067 pg_dumpall.c:663 pg_restore.c:494
+#: pg_dump.c:1145 pg_dumpall.c:688 pg_restore.c:494
 #, c-format
 msgid "Report bugs to <%s>.\n"
 msgstr "Reporte errores a <%s>.\n"
 
-#: pg_dump.c:1068 pg_dumpall.c:664 pg_restore.c:495
+#: pg_dump.c:1146 pg_dumpall.c:689 pg_restore.c:495
 #, c-format
 msgid "%s home page: <%s>\n"
 msgstr "Sitio web de %s: <%s>\n"
 
-#: pg_dump.c:1087 pg_dumpall.c:488
+#: pg_dump.c:1165 pg_dumpall.c:513
 #, c-format
 msgid "invalid client encoding \"%s\" specified"
 msgstr "la codificación de cliente especificada «%s» no es válida"
 
-#: pg_dump.c:1225
+#: pg_dump.c:1303
 #, c-format
 msgid "parallel dumps from standby servers are not supported by this server version"
 msgstr "Los volcados en paralelo desde servidores standby no están soportados por esta versión de servidor."
 
-#: pg_dump.c:1290
+#: pg_dump.c:1368
 #, c-format
 msgid "invalid output format \"%s\" specified"
 msgstr "el formato de salida especificado «%s» no es válido"
 
-#: pg_dump.c:1331 pg_dump.c:1387 pg_dump.c:1440 pg_dumpall.c:1282
+#: pg_dump.c:1409 pg_dump.c:1465 pg_dump.c:1518 pg_dumpall.c:1457
 #, c-format
 msgid "improper qualified name (too many dotted names): %s"
 msgstr "el nombre no es válido (demasiados puntos): %s"
 
-#: pg_dump.c:1339
+#: pg_dump.c:1417
 #, 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:1392
+#: pg_dump.c:1470
 #, c-format
 msgid "no matching extensions were found for pattern \"%s\""
 msgstr "no se encontraron extensiones coincidentes para el patrón «%s»"
 
-#: pg_dump.c:1445
+#: pg_dump.c:1523
 #, c-format
 msgid "no matching foreign servers were found for pattern \"%s\""
 msgstr "no se encontraron servidores foráneos coincidentes para el patrón «%s»"
 
-#: pg_dump.c:1508
+#: pg_dump.c:1594
 #, c-format
 msgid "improper relation name (too many dotted names): %s"
 msgstr "el nombre de relación no es válido (demasiados puntos): %s"
 
-#: pg_dump.c:1519
+#: pg_dump.c:1616
 #, 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:1546
+#: pg_dump.c:1643
 #, c-format
 msgid "You are currently not connected to a database."
 msgstr "No está conectado a una base de datos."
 
-#: pg_dump.c:1549
+#: pg_dump.c:1646
 #, c-format
 msgid "cross-database references are not implemented: %s"
 msgstr "no están implementadas las referencias entre bases de datos: %s"
 
-#: pg_dump.c:1980
+#: pg_dump.c:2077
 #, c-format
 msgid "dumping contents of table \"%s.%s\""
 msgstr "extrayendo el contenido de la tabla «%s.%s»"
 
-#: pg_dump.c:2086
+#: pg_dump.c:2183
 #, 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:2087 pg_dump.c:2097
+#: pg_dump.c:2184 pg_dump.c:2194
 #, c-format
 msgid "Error message from server: %s"
 msgstr "Mensaje de error del servidor: %s"
 
-#: pg_dump.c:2088 pg_dump.c:2098
+#: pg_dump.c:2185 pg_dump.c:2195
 #, c-format
 msgid "Command was: %s"
 msgstr "La orden era: % s"
 
-#: pg_dump.c:2096
+#: pg_dump.c:2193
 #, 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:2178
+#: pg_dump.c:2275
 #, c-format
 msgid "wrong number of fields retrieved from table \"%s\""
 msgstr "se obtuvo un número incorrecto de campos de la tabla «%s»"
 
-#: pg_dump.c:2836
+#: pg_dump.c:2973
 #, c-format
 msgid "saving database definition"
 msgstr "salvando las definiciones de la base de datos"
 
-#: pg_dump.c:2932
+#: pg_dump.c:3078
 #, c-format
 msgid "unrecognized locale provider: %s"
 msgstr "proveedor de configuración regional no reconocido: %s"
 
-#: pg_dump.c:3278
+#: pg_dump.c:3446
 #, c-format
 msgid "saving encoding = %s"
 msgstr "salvando codificaciones = %s"
 
-#: pg_dump.c:3303
+#: pg_dump.c:3471
 #, c-format
 msgid "saving standard_conforming_strings = %s"
 msgstr "salvando standard_conforming_strings = %s"
 
-#: pg_dump.c:3342
+#: pg_dump.c:3510
 #, c-format
 msgid "could not parse result of current_schemas()"
 msgstr "no se pudo interpretar la salida de current_schemas()"
 
-#: pg_dump.c:3361
+#: pg_dump.c:3529
 #, c-format
 msgid "saving search_path = %s"
 msgstr "salvando search_path = %s"
 
-#: pg_dump.c:3399
+#: pg_dump.c:3566
 #, c-format
 msgid "reading large objects"
 msgstr "leyendo objetos grandes"
 
-#: pg_dump.c:3537
+#: pg_dump.c:3704
 #, c-format
 msgid "saving large objects"
 msgstr "salvando objetos grandes"
 
-#: pg_dump.c:3578
+#: pg_dump.c:3745
 #, c-format
 msgid "error reading large object %u: %s"
 msgstr "error al leer el objeto grande %u: %s"
 
-#: pg_dump.c:3684
+#: pg_dump.c:3851
 #, c-format
 msgid "reading row-level security policies"
 msgstr "leyendo políticas de seguridad a nivel de registros"
 
-#: pg_dump.c:3825
+#: pg_dump.c:3992
 #, c-format
 msgid "unexpected policy command type: %c"
 msgstr "tipo de orden inesperada en política: %c"
 
-#: pg_dump.c:4275 pg_dump.c:4593 pg_dump.c:11724 pg_dump.c:17575
-#: pg_dump.c:17577 pg_dump.c:18198
+#: pg_dump.c:4442 pg_dump.c:4777 pg_dump.c:11999 pg_dump.c:17866
+#: pg_dump.c:17868 pg_dump.c:18489
 #, c-format
 msgid "could not parse %s array"
 msgstr "no se pudo interpretar el arreglo %s"
 
-#: pg_dump.c:4461
+#: pg_dump.c:4630
 #, 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:4975
+#: pg_dump.c:5166
 #, 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:5120
+#: pg_dump.c:5311
 #, c-format
 msgid "schema with OID %u does not exist"
 msgstr "no existe el esquema con OID %u"
 
-#: pg_dump.c:6574 pg_dump.c:16839
+#: pg_dump.c:6791 pg_dump.c:17130
 #, 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:6878 pg_dump.c:7145 pg_dump.c:7616 pg_dump.c:8283 pg_dump.c:8404
-#: pg_dump.c:8558
+#: pg_dump.c:6934
+#, fuzzy, c-format
+#| msgid "failed sanity check, parent OID %u of table \"%s\" (OID %u) not found"
+msgid "failed sanity check, table OID %u appearing in pg_partitioned_table not found"
+msgstr "falló la revisión de integridad, el OID %u del padre de la tabla «%s» (OID %u) no se encontró"
+
+#: pg_dump.c:7165 pg_dump.c:7432 pg_dump.c:7903 pg_dump.c:8567 pg_dump.c:8686
+#: pg_dump.c:8834
 #, c-format
 msgid "unrecognized table OID %u"
 msgstr "OID de tabla %u no reconocido"
 
-#: pg_dump.c:6882
+#: pg_dump.c:7169
 #, c-format
 msgid "unexpected index data for table \"%s\""
 msgstr "datos de índice inesperados para la tabla «%s»"
 
-#: pg_dump.c:7377
+#: pg_dump.c:7664
 #, 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:7668
+#: pg_dump.c:7955
 #, 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:8287
+#: pg_dump.c:8571
 #, c-format
 msgid "unexpected column data for table \"%s\""
 msgstr "información de columnas para la tabla «%s» inesperada"
 
-#: pg_dump.c:8317
+#: pg_dump.c:8600
 #, c-format
 msgid "invalid column numbering in table \"%s\""
 msgstr "numeración de columnas no válida en la tabla «%s»"
 
-#: pg_dump.c:8366
+#: pg_dump.c:8648
 #, c-format
 msgid "finding table default expressions"
 msgstr "encontrando expresiones default de tablas"
 
-#: pg_dump.c:8408
+#: pg_dump.c:8690
 #, 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:8508
+#: pg_dump.c:8784
 #, c-format
 msgid "finding table check constraints"
 msgstr "encontrando restricciones CHECK de tablas"
 
-#: pg_dump.c:8562
+#: pg_dump.c:8838
 #, 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:8566
+#: pg_dump.c:8842
 #, c-format
 msgid "The system catalogs might be corrupted."
 msgstr "Los catálogos del sistema podrían estar corruptos."
 
-#: pg_dump.c:9256
+#: pg_dump.c:9532
 #, c-format
 msgid "role with OID %u does not exist"
 msgstr "no existe el rol con OID %u"
 
-#: pg_dump.c:9368 pg_dump.c:9397
+#: pg_dump.c:9644 pg_dump.c:9673
 #, c-format
 msgid "unsupported pg_init_privs entry: %u %u %d"
 msgstr "entrada en pg_init_privs no soportada: %u %u %d"
 
-#: pg_dump.c:10218
+#: pg_dump.c:10494
 #, 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:11793
+#: pg_dump.c:12068
 #, 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:11843 pg_dump.c:13668
+#: pg_dump.c:12118 pg_dump.c:13962
 #, 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:11974 pg_dump.c:12080 pg_dump.c:12087
+#: pg_dump.c:12247 pg_dump.c:12353 pg_dump.c:12360
 #, 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:12013
+#: pg_dump.c:12286
 #, 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:12016
+#: pg_dump.c:12289
 #, c-format
 msgid "bogus value in pg_cast.castmethod field"
 msgstr "valor no válido en el campo pg_cast.castmethod"
 
-#: pg_dump.c:12106
+#: pg_dump.c:12379
 #, 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 y trftosql debe ser distinto de cero"
 
-#: pg_dump.c:12123
+#: pg_dump.c:12396
 #, c-format
 msgid "bogus value in pg_transform.trffromsql field"
 msgstr "valor erróneo en el campo pg_transform.trffromsql"
 
-#: pg_dump.c:12144
+#: pg_dump.c:12417
 #, c-format
 msgid "bogus value in pg_transform.trftosql field"
 msgstr "valor erróneo en el campo pg_transform.trftosql"
 
-#: pg_dump.c:12289
+#: pg_dump.c:12562
 #, c-format
 msgid "postfix operators are not supported anymore (operator \"%s\")"
 msgstr "los operadores postfix ya no están soportados (operador «%s»)"
 
-#: pg_dump.c:12459
+#: pg_dump.c:12732
 #, c-format
 msgid "could not find operator with OID %s"
 msgstr "no se pudo encontrar el operador con OID %s"
 
-#: pg_dump.c:12527
+#: pg_dump.c:12800
 #, 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:13169
+#: pg_dump.c:13457
 #, c-format
 msgid "unrecognized collation provider: %s"
 msgstr "proveedor de ordenamiento no reconocido: %s"
 
-#: pg_dump.c:13587
+#: pg_dump.c:13881
 #, c-format
 msgid "unrecognized aggfinalmodify value for aggregate \"%s\""
 msgstr "valor de aggfinalmodify no reconocido para la agregación «%s»"
 
-#: pg_dump.c:13643
+#: pg_dump.c:13937
 #, c-format
 msgid "unrecognized aggmfinalmodify value for aggregate \"%s\""
 msgstr "valor de aggmfinalmodify no reconocido para la agregación «%s»"
 
-#: pg_dump.c:14361
+#: pg_dump.c:14654
 #, c-format
 msgid "unrecognized object type in default privileges: %d"
 msgstr "tipo de objeto desconocido en privilegios por omisión: %d"
 
-#: pg_dump.c:14377
+#: pg_dump.c:14670
 #, c-format
 msgid "could not parse default ACL list (%s)"
 msgstr "no se pudo interpretar la lista de ACL (%s)"
 
-#: pg_dump.c:14459
+#: pg_dump.c:14752
 #, c-format
 msgid "could not parse initial ACL list (%s) or default (%s) for object \"%s\" (%s)"
 msgstr "no se pudo interpretar la lista ACL inicial (%s) o por defecto (%s) para el objeto «%s» (%s)"
 
-#: pg_dump.c:14484
+#: pg_dump.c:14777
 #, c-format
 msgid "could not parse ACL list (%s) or default (%s) for object \"%s\" (%s)"
 msgstr "no se pudo interpretar la lista de ACL (%s) o por defecto (%s) para el objeto «%s» (%s)"
 
-#: pg_dump.c:15022
+#: pg_dump.c:15315
 #, 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:15025
+#: pg_dump.c:15318
 #, 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:15032
+#: pg_dump.c:15325
 #, 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:15116
+#: pg_dump.c:15409
 #, c-format
 msgid "WITH OIDS is not supported anymore (table \"%s\")"
 msgstr "WITH OIDS ya no está soportado (tabla «%s»)"
 
-#: pg_dump.c:16045
+#: pg_dump.c:16333
 #, 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:16123
+#: pg_dump.c:16411
 #, c-format
 msgid "could not parse index statistic columns"
 msgstr "no se pudieron interpretar columnas de estadísticas de índices"
 
-#: pg_dump.c:16125
+#: pg_dump.c:16413
 #, c-format
 msgid "could not parse index statistic values"
 msgstr "no se pudieron interpretar valores de estadísticas de índices"
 
-#: pg_dump.c:16127
+#: pg_dump.c:16415
 #, c-format
 msgid "mismatched number of columns and values for index statistics"
 msgstr "no coincide el número de columnas con el de valores para estadísticas de índices"
 
-#: pg_dump.c:16345
+#: pg_dump.c:16631
 #, c-format
 msgid "missing index for constraint \"%s\""
 msgstr "falta un índice para restricción «%s»"
 
-#: pg_dump.c:16573
+#: pg_dump.c:16864
 #, c-format
 msgid "unrecognized constraint type: %c"
 msgstr "tipo de restricción inesperado: %c"
 
-#: pg_dump.c:16674 pg_dump.c:16903
+#: pg_dump.c:16965 pg_dump.c:17194
 #, 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:16706
+#: pg_dump.c:16997
 #, c-format
 msgid "unrecognized sequence type: %s"
 msgstr "tipo no reconocido de secuencia: %s"
 
-#: pg_dump.c:16995
+#: pg_dump.c:17286
 #, c-format
 msgid "unexpected tgtype value: %d"
 msgstr "tgtype no esperado: %d"
 
-#: pg_dump.c:17067
+#: pg_dump.c:17358
 #, 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:17336
+#: pg_dump.c:17627
 #, 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:17489
+#: pg_dump.c:17780
 #, c-format
 msgid "could not find referenced extension %u"
 msgstr "no se pudo encontrar la extensión referenciada %u"
 
-#: pg_dump.c:17579
+#: pg_dump.c:17870
 #, c-format
 msgid "mismatched number of configurations and conditions for extension"
 msgstr "no coincide el número de configuraciones con el de condiciones para extensión"
 
-#: pg_dump.c:17711
+#: pg_dump.c:18002
 #, c-format
 msgid "reading dependency data"
 msgstr "obteniendo datos de dependencias"
 
-#: pg_dump.c:17797
+#: pg_dump.c:18088
 #, c-format
 msgid "no referencing object %u %u"
 msgstr "no existe el objeto referenciante %u %u"
 
-#: pg_dump.c:17808
+#: pg_dump.c:18099
 #, c-format
 msgid "no referenced object %u %u"
 msgstr "no existe el objeto referenciado %u %u"
@@ -2201,42 +2385,42 @@ msgstr "Considere usar un volcado completo en lugar de --data-only para evitar e
 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:205
+#: pg_dumpall.c:230
 #, c-format
 msgid "program \"%s\" is needed by %s but was not found in the same directory as \"%s\""
 msgstr "el programa «%s» es requerido por %s, pero no fue encontrado en el mismo directorio que «%s»"
 
-#: pg_dumpall.c:208
+#: pg_dumpall.c:233
 #, c-format
 msgid "program \"%s\" was found by \"%s\" but was not the same version as %s"
 msgstr "el programa «%s» fue encontrado por «%s», pero no es de la misma versión que %s"
 
-#: pg_dumpall.c:357
+#: pg_dumpall.c:382
 #, c-format
 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:365
+#: pg_dumpall.c:390
 #, 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:372
+#: pg_dumpall.c:397
 #, 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:382
+#: pg_dumpall.c:407
 #, 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:444 pg_dumpall.c:1587
+#: pg_dumpall.c:469 pg_dumpall.c:1758
 #, 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:456
+#: pg_dumpall.c:481
 #, c-format
 msgid ""
 "could not connect to databases \"postgres\" or \"template1\"\n"
@@ -2245,7 +2429,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:604
+#: pg_dumpall.c:629
 #, c-format
 msgid ""
 "%s extracts a PostgreSQL database cluster into an SQL script file.\n"
@@ -2255,73 +2439,73 @@ msgstr ""
 "guión (script) SQL.\n"
 "\n"
 
-#: pg_dumpall.c:606
+#: pg_dumpall.c:631
 #, c-format
 msgid "  %s [OPTION]...\n"
 msgstr "  %s [OPCIÓN]...\n"
 
-#: pg_dumpall.c:609
+#: pg_dumpall.c:634
 #, c-format
 msgid "  -f, --file=FILENAME          output file name\n"
 msgstr "  -f, --file=ARCHIVO       nombre del archivo de salida\n"
 
-#: pg_dumpall.c:616
+#: pg_dumpall.c:641
 #, 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:618
+#: pg_dumpall.c:643
 #, 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:619 pg_restore.c:456
+#: pg_dumpall.c:644 pg_restore.c:456
 #, 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:620
+#: pg_dumpall.c:645
 #, 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:622
+#: pg_dumpall.c:647
 #, 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:623
+#: pg_dumpall.c:648
 #, 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:629
+#: pg_dumpall.c:654
 #, 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:636
+#: pg_dumpall.c:661
 #, 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:652
+#: pg_dumpall.c:677
 #, 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:654
+#: pg_dumpall.c:679
 #, 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:661
+#: pg_dumpall.c:686
 #, c-format
 msgid ""
 "\n"
@@ -2333,57 +2517,63 @@ msgstr ""
 "Si no se usa -f/--file, el volcado de SQL será escrito a la salida estándar.\n"
 "\n"
 
-#: pg_dumpall.c:803
+#: pg_dumpall.c:828
 #, c-format
 msgid "role name starting with \"pg_\" skipped (%s)"
 msgstr "omitido nombre de rol que empieza con «pg_» (%s)"
 
-#: pg_dumpall.c:1018
+#: pg_dumpall.c:1050
+#, fuzzy, c-format
+#| msgid "could not find suitable encoding for locale \"%s\""
+msgid "could not find a legal dump ordering for memberships in role \"%s\""
+msgstr "no se pudo encontrar una codificación apropiada para la configuración regional «%s»"
+
+#: pg_dumpall.c:1185
 #, c-format
 msgid "could not parse ACL list (%s) for parameter \"%s\""
 msgstr "no se pudo interpretar la lista de control de acceso (%s) del parámetro «%s»"
 
-#: pg_dumpall.c:1136
+#: pg_dumpall.c:1303
 #, c-format
 msgid "could not parse ACL list (%s) for tablespace \"%s\""
 msgstr "no se pudo interpretar la lista de control de acceso (%s) del tablespace «%s»"
 
-#: pg_dumpall.c:1343
+#: pg_dumpall.c:1518
 #, c-format
 msgid "excluding database \"%s\""
 msgstr "excluyendo base de datos «%s»"
 
-#: pg_dumpall.c:1347
+#: pg_dumpall.c:1522
 #, c-format
 msgid "dumping database \"%s\""
 msgstr "extrayendo base de datos «%s»"
 
-#: pg_dumpall.c:1378
+#: pg_dumpall.c:1553
 #, c-format
 msgid "pg_dump failed on database \"%s\", exiting"
 msgstr "pg_dump falló en la base de datos «%s», saliendo"
 
-#: pg_dumpall.c:1384
+#: pg_dumpall.c:1559
 #, c-format
 msgid "could not re-open the output file \"%s\": %m"
 msgstr "no se pudo reabrir el archivo de salida «%s»: %m"
 
-#: pg_dumpall.c:1425
+#: pg_dumpall.c:1600
 #, c-format
 msgid "running \"%s\""
 msgstr "ejecutando «%s»"
 
-#: pg_dumpall.c:1630
+#: pg_dumpall.c:1801
 #, c-format
 msgid "could not get server version"
 msgstr "no se pudo obtener la versión del servidor"
 
-#: pg_dumpall.c:1633
+#: pg_dumpall.c:1804
 #, c-format
 msgid "could not parse server version \"%s\""
 msgstr "no se pudo interpretar la versión del servidor «%s»"
 
-#: pg_dumpall.c:1703 pg_dumpall.c:1726
+#: pg_dumpall.c:1874 pg_dumpall.c:1897
 #, c-format
 msgid "executing %s"
 msgstr "ejecutando %s"
@@ -2639,3 +2829,59 @@ msgstr ""
 "\n"
 "Si no se especifica un archivo de entrada, se usa la entrada estándar.\n"
 "\n"
+
+#, c-format
+#~ msgid "could not identify current directory: %m"
+#~ msgstr "no se pudo identificar el directorio actual: %m"
+
+#, c-format
+#~ msgid "invalid binary \"%s\""
+#~ msgstr "el binario «%s» no es válido"
+
+#, c-format
+#~ msgid "could not read binary \"%s\""
+#~ msgstr "no se pudo leer el binario «%s»"
+
+#, c-format
+#~ msgid "could not change directory to \"%s\": %m"
+#~ msgstr "no se pudo cambiar al directorio «%s»: %m"
+
+#, c-format
+#~ msgid "could not read symbolic link \"%s\": %m"
+#~ msgstr "no se pudo leer el enlace simbólico «%s»: %m"
+
+#, c-format
+#~ msgid "invalid compression code: %d"
+#~ msgstr "código de compresión no válido: %d"
+
+#, c-format
+#~ msgid "not built with zlib support"
+#~ msgstr "no contiene soporte zlib"
+
+#, 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)"
+
+#, c-format
+#~ msgid "could not close blob data file: %m"
+#~ msgstr "no se pudo cerrar el archivo de datos de objetos grandes: %m"
+
+#, c-format
+#~ msgid "could not close blobs TOC file: %m"
+#~ msgstr "no se pudo cerrar el archivo de la tabla de contenidos de objetos grandes: %m"
+
+#, 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"
+
+#, 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"
+
+#, c-format
+#~ msgid "  -b, --blobs                  include large objects in dump\n"
+#~ msgstr "  -b, --blobs                  incluye objetos grandes en la extracción\n"
+
+#, c-format
+#~ msgid "  -B, --no-blobs               exclude large objects in dump\n"
+#~ msgstr "  -B, --no-blobs               excluye objetos grandes en la extracción\n"
index 8643a30f27ff8ddf57523f5808d3889f90ec4148..39d03bdae0cd2a0ded8ce79d1751ba404babde19 100644 (file)
@@ -12,7 +12,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: pg_resetwal (PostgreSQL) 15\n"
 "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n"
-"POT-Creation-Date: 2022-09-24 23:19+0000\n"
+"POT-Creation-Date: 2023-05-09 09:20+0000\n"
 "PO-Revision-Date: 2022-10-20 09:06+0200\n"
 "Last-Translator: Carlos Chapi <carlos.chapi@2ndquadrant.com>\n"
 "Language-Team: PgSQL-es-Ayuda <pgsql-es-ayuda@lists.postgresql.org>\n"
@@ -43,42 +43,32 @@ msgstr "detalle: "
 msgid "hint: "
 msgstr "consejo: "
 
-#: ../../common/restricted_token.c:64
-#, c-format
-msgid "could not load library \"%s\": error code %lu"
-msgstr "no se pudo cargar la biblioteca «%s»: código de error %lu"
-
-#: ../../common/restricted_token.c:73
-#, c-format
-msgid "cannot create restricted tokens on this platform: error code %lu"
-msgstr "no se pueden crear tokens restrigidos en esta plataforma: código de error %lu"
-
-#: ../../common/restricted_token.c:82
+#: ../../common/restricted_token.c:60
 #, 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:97
+#: ../../common/restricted_token.c:74
 #, 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:119
+#: ../../common/restricted_token.c:94
 #, 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:140
+#: ../../common/restricted_token.c:115
 #, 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:178
+#: ../../common/restricted_token.c:153
 #, 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:193
+#: ../../common/restricted_token.c:168
 #, 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"
@@ -518,42 +508,42 @@ msgstr "oldestCommitTsXid:                    %u\n"
 msgid "newestCommitTsXid:                    %u\n"
 msgstr "newestCommitTsXid:                    %u\n"
 
-#: pg_resetwal.c:922 pg_resetwal.c:981 pg_resetwal.c:1016
+#: pg_resetwal.c:921 pg_resetwal.c:974 pg_resetwal.c:1009
 #, c-format
 msgid "could not open directory \"%s\": %m"
 msgstr "no se pudo abrir el directorio «%s»: %m"
 
-#: pg_resetwal.c:954 pg_resetwal.c:995 pg_resetwal.c:1033
+#: pg_resetwal.c:947 pg_resetwal.c:988 pg_resetwal.c:1026
 #, c-format
 msgid "could not read directory \"%s\": %m"
 msgstr "no se pudo leer el directorio «%s»: %m"
 
-#: pg_resetwal.c:957 pg_resetwal.c:998 pg_resetwal.c:1036
+#: pg_resetwal.c:950 pg_resetwal.c:991 pg_resetwal.c:1029
 #, c-format
 msgid "could not close directory \"%s\": %m"
 msgstr "no se pudo abrir el directorio «%s»: %m"
 
-#: pg_resetwal.c:990 pg_resetwal.c:1028
+#: pg_resetwal.c:983 pg_resetwal.c:1021
 #, c-format
 msgid "could not delete file \"%s\": %m"
 msgstr "no se pudo borrar el archivo «%s»: %m"
 
-#: pg_resetwal.c:1100
+#: pg_resetwal.c:1093
 #, c-format
 msgid "could not open file \"%s\": %m"
 msgstr "no se pudo abrir el archivo «%s»: %m"
 
-#: pg_resetwal.c:1108 pg_resetwal.c:1120
+#: pg_resetwal.c:1101 pg_resetwal.c:1113
 #, c-format
 msgid "could not write file \"%s\": %m"
 msgstr "no se pudo escribir el archivo «%s»: %m"
 
-#: pg_resetwal.c:1125
+#: pg_resetwal.c:1118
 #, c-format
 msgid "fsync error: %m"
 msgstr "error de fsync: %m"
 
-#: pg_resetwal.c:1134
+#: pg_resetwal.c:1127
 #, c-format
 msgid ""
 "%s resets the PostgreSQL write-ahead log.\n"
@@ -562,7 +552,7 @@ msgstr ""
 "%s restablece el WAL («write-ahead log») de PostgreSQL.\n"
 "\n"
 
-#: pg_resetwal.c:1135
+#: pg_resetwal.c:1128
 #, c-format
 msgid ""
 "Usage:\n"
@@ -573,12 +563,12 @@ msgstr ""
 "   %s [OPCIÓN]... DATADIR\n"
 "\n"
 
-#: pg_resetwal.c:1136
+#: pg_resetwal.c:1129
 #, c-format
 msgid "Options:\n"
 msgstr "Opciones:\n"
 
-#: pg_resetwal.c:1137
+#: pg_resetwal.c:1130
 #, c-format
 msgid ""
 "  -c, --commit-timestamp-ids=XID,XID\n"
@@ -590,29 +580,29 @@ msgstr ""
 "                           que llevan timestamp de commit (cero significa no\n"
 "                           cambiar)\n"
 
-#: pg_resetwal.c:1140
+#: pg_resetwal.c:1133
 #, c-format
 msgid " [-D, --pgdata=]DATADIR            data directory\n"
 msgstr " [-D, --pgdata=]DATADIR    directorio de datos\n"
 
-#: pg_resetwal.c:1141
+#: pg_resetwal.c:1134
 #, 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:1142
+#: pg_resetwal.c:1135
 #, 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:1143
+#: pg_resetwal.c:1136
 #, 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:1144
+#: pg_resetwal.c:1137
 #, c-format
 msgid "  -m, --multixact-ids=MXID,MXID    set next and oldest multitransaction ID\n"
 msgstr ""
@@ -620,53 +610,53 @@ msgstr ""
 "                           asigna el siguiente ID de multitransacción y\n"
 "                           el más antiguo\n"
 
-#: pg_resetwal.c:1145
+#: pg_resetwal.c:1138
 #, 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:1146
+#: pg_resetwal.c:1139
 #, c-format
 msgid "  -o, --next-oid=OID               set next OID\n"
 msgstr "  -o, --next-oid=OID       asigna el siguiente OID\n"
 
-#: pg_resetwal.c:1147
+#: pg_resetwal.c:1140
 #, 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:1148
+#: pg_resetwal.c:1141
 #, c-format
 msgid "  -u, --oldest-transaction-id=XID  set oldest transaction ID\n"
 msgstr ""
 "  -u, --oldest-transaction-id=XID\n"
 "                           asigna el ID de transacción más antiguo\n"
 
-#: pg_resetwal.c:1149
+#: pg_resetwal.c:1142
 #, 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:1150
+#: pg_resetwal.c:1143
 #, 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:1151
+#: pg_resetwal.c:1144
 #, 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:1152
+#: pg_resetwal.c:1145
 #, c-format
 msgid "  -?, --help                       show this help, then exit\n"
 msgstr "  -?, --help               mostrar esta ayuda y salir\n"
 
-#: pg_resetwal.c:1153
+#: pg_resetwal.c:1146
 #, c-format
 msgid ""
 "\n"
@@ -675,7 +665,15 @@ msgstr ""
 "\n"
 "Reporte errores a <%s>.\n"
 
-#: pg_resetwal.c:1154
+#: pg_resetwal.c:1147
 #, c-format
 msgid "%s home page: <%s>\n"
 msgstr "Sitio web de %s: <%s>\n"
+
+#, c-format
+#~ msgid "could not load library \"%s\": error code %lu"
+#~ msgstr "no se pudo cargar la biblioteca «%s»: código de error %lu"
+
+#, c-format
+#~ msgid "cannot create restricted tokens on this platform: error code %lu"
+#~ msgstr "no se pueden crear tokens restrigidos en esta plataforma: código de error %lu"
index fa793d025b451c53e4c40ad6ebf1f8e506c0cbf3..7029c5ca81ac7764aafc3ab680ba5a13248b942b 100644 (file)
@@ -10,7 +10,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: pg_rewind (PostgreSQL) 15\n"
 "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n"
-"POT-Creation-Date: 2022-09-24 23:21+0000\n"
+"POT-Creation-Date: 2023-05-09 09:22+0000\n"
 "PO-Revision-Date: 2022-10-20 09:06+0200\n"
 "Last-Translator: Carlos Chapi <carloswaldo@babelruins.org>\n"
 "Language-Team: PgSQL-es-Ayuda <pgsql-es-ayuda@lists.postgresql.org>\n"
@@ -42,82 +42,84 @@ msgid "hint: "
 msgstr "consejo: "
 
 #: ../../common/fe_memutils.c:35 ../../common/fe_memutils.c:75
-#: ../../common/fe_memutils.c:98 ../../common/fe_memutils.c:162
+#: ../../common/fe_memutils.c:98 ../../common/fe_memutils.c:161
 #, c-format
 msgid "out of memory\n"
 msgstr "memoria agotada\n"
 
-#: ../../common/fe_memutils.c:92 ../../common/fe_memutils.c:154
+#: ../../common/fe_memutils.c:92 ../../common/fe_memutils.c:153
 #, c-format
 msgid "cannot duplicate null pointer (internal error)\n"
 msgstr "no se puede duplicar un puntero nulo (error interno)\n"
 
-#: ../../common/restricted_token.c:64
+#: ../../common/percentrepl.c:79 ../../common/percentrepl.c:118
 #, c-format
-msgid "could not load library \"%s\": error code %lu"
-msgstr "no se pudo cargar la biblioteca «%s»: código de error %lu"
+msgid "invalid value for parameter \"%s\": \"%s\""
+msgstr "valor no válido para el parámetro «%s»: «%s»"
 
-#: ../../common/restricted_token.c:73
-#, c-format
-msgid "cannot create restricted tokens on this platform: error code %lu"
-msgstr "no se pueden crear tokens restrigidos en esta plataforma: código de error %lu"
+#: ../../common/percentrepl.c:80
+#, fuzzy, c-format
+#| msgid "there is no escaped character: \"%s\""
+msgid "String ends unexpectedly after escape character \"%%\"."
+msgstr "no hay carácter escapado: «%s»"
+
+#: ../../common/percentrepl.c:119
+#, fuzzy, c-format
+#| msgid "index \"%s\" contains unexpected zero page at block %u"
+msgid "String contains unexpected escape sequence \"%c\"."
+msgstr "índice «%s» contiene páginas vacías no esperadas en el bloque %u"
 
-#: ../../common/restricted_token.c:82
+#: ../../common/restricted_token.c:60
 #, 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:97
+#: ../../common/restricted_token.c:74
 #, 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:119
+#: ../../common/restricted_token.c:94
 #, 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:140
+#: ../../common/restricted_token.c:115
 #, 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:178
+#: ../../common/restricted_token.c:153
 #, 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:193
+#: ../../common/restricted_token.c:168
 #, 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"
 
-#: ../../fe_utils/archive.c:52
-#, c-format
-msgid "cannot use restore_command with %%r placeholder"
-msgstr "no se puede usar restore_command con el marcador %%r"
-
-#: ../../fe_utils/archive.c:70
+#: ../../fe_utils/archive.c:69
 #, c-format
 msgid "unexpected file size for \"%s\": %lld instead of %lld"
 msgstr "el archivo «%s» tiene tamaño inesperado: %lld en lugar de %lld"
 
-#: ../../fe_utils/archive.c:78
+#: ../../fe_utils/archive.c:77
 #, c-format
 msgid "could not open file \"%s\" restored from archive: %m"
 msgstr "no se pudo abrir el archivo «%s» restaurado del archivo: %m"
 
-#: ../../fe_utils/archive.c:87 file_ops.c:417
+#: ../../fe_utils/archive.c:86 file_ops.c:417
 #, c-format
 msgid "could not stat file \"%s\": %m"
 msgstr "no se pudo hacer stat al archivo «%s»: %m"
 
-#: ../../fe_utils/archive.c:99
+#: ../../fe_utils/archive.c:98
 #, c-format
 msgid "restore_command failed: %s"
 msgstr "restore_command falló: %s"
 
-#: ../../fe_utils/archive.c:106
+#: ../../fe_utils/archive.c:105
 #, c-format
 msgid "could not restore file \"%s\" from archive"
 msgstr "no se pudo recuperar el archivo «%s» del archivo"
@@ -229,27 +231,22 @@ msgstr "no se pudo leer el archivo «%s»: leídos %d de %zu"
 msgid "could not open directory \"%s\": %m"
 msgstr "no se pudo abrir el directorio «%s»: %m"
 
-#: file_ops.c:446
+#: file_ops.c:441
 #, c-format
 msgid "could not read symbolic link \"%s\": %m"
 msgstr "no se pudo leer el enlace simbólico «%s»: %m"
 
-#: file_ops.c:449
+#: file_ops.c:444
 #, c-format
 msgid "symbolic link \"%s\" target is too long"
 msgstr "la ruta «%s» del enlace simbólico es demasiado larga"
 
-#: file_ops.c:464
-#, c-format
-msgid "\"%s\" is a symbolic link, but symbolic links are not supported on this platform"
-msgstr "«%s» es un link simbólico, pero los links simbólicos no están soportados en esta plataforma"
-
-#: file_ops.c:471
+#: file_ops.c:462
 #, c-format
 msgid "could not read directory \"%s\": %m"
 msgstr "no se pudo leer el directorio «%s»: %m"
 
-#: file_ops.c:475
+#: file_ops.c:466
 #, c-format
 msgid "could not close directory \"%s\": %m"
 msgstr "no se pudo abrir el directorio «%s»: %m"
@@ -469,7 +466,7 @@ msgstr "no se pudo posicionar (seek) el archivo «%s»: %m"
 msgid "WAL record modifies a relation, but record type is not recognized: lsn: %X/%X, rmid: %d, rmgr: %s, info: %02X"
 msgstr "el registro WAL modifica una relación, pero el tipo de registro no es reconocido: lsn: %X/%X, rmid: %d, rmgr: %s, info: %02X"
 
-#: pg_rewind.c:86
+#: pg_rewind.c:92
 #, c-format
 msgid ""
 "%s resynchronizes a PostgreSQL cluster with another copy of the cluster.\n"
@@ -478,7 +475,7 @@ msgstr ""
 "%s resincroniza un cluster PostgreSQL con otra copia del cluster.\n"
 "\n"
 
-#: pg_rewind.c:87
+#: pg_rewind.c:93
 #, c-format
 msgid ""
 "Usage:\n"
@@ -489,12 +486,12 @@ msgstr ""
 "  %s [OPCION]...\n"
 "\n"
 
-#: pg_rewind.c:88
+#: pg_rewind.c:94
 #, c-format
 msgid "Options:\n"
 msgstr "Opciones:\n"
 
-#: pg_rewind.c:89
+#: pg_rewind.c:95
 #, c-format
 msgid ""
 "  -c, --restore-target-wal       use restore_command in target configuration to\n"
@@ -503,39 +500,39 @@ msgstr ""
 "  -c, --restore-target-wal       utilizar restore_command de la configuración\n"
 "                                 de destino para obtener archivos WAL\n"
 
-#: pg_rewind.c:91
+#: pg_rewind.c:97
 #, 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:92
+#: pg_rewind.c:98
 #, 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:93
+#: pg_rewind.c:99
 #, 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:94
+#: pg_rewind.c:100
 #, c-format
 msgid "  -n, --dry-run                  stop before modifying anything\n"
 msgstr "  -n, --dry-run                  detener antes de modificar nada\n"
 
-#: pg_rewind.c:95
+#: pg_rewind.c:101
 #, 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:97
+#: pg_rewind.c:103
 #, c-format
 msgid "  -P, --progress                 write progress messages\n"
 msgstr "  -P, --progress                 escribir mensajes de progreso\n"
 
-#: pg_rewind.c:98
+#: pg_rewind.c:104
 #, c-format
 msgid ""
 "  -R, --write-recovery-conf      write configuration for replication\n"
@@ -544,7 +541,7 @@ msgstr ""
 "  -R, --write-recovery-conf      escribe configuración para replicación\n"
 "                                 (requiere --source-server)\n"
 
-#: pg_rewind.c:100
+#: pg_rewind.c:106
 #, c-format
 msgid ""
 "      --config-file=FILENAME     use specified main server configuration\n"
@@ -553,29 +550,29 @@ msgstr ""
 "      --config-file=ARCHIVO      utilizar el archivo de configuración del servidor\n"
 "                                 principal especificado al ejecutar el clúster de destino\n"
 
-#: pg_rewind.c:102
+#: pg_rewind.c:108
 #, c-format
 msgid "      --debug                    write a lot of debug messages\n"
 msgstr "      --debug                    escribir muchos mensajes de depuración\n"
 
-#: pg_rewind.c:103
+#: pg_rewind.c:109
 #, c-format
 msgid "      --no-ensure-shutdown       do not automatically fix unclean shutdown\n"
 msgstr ""
 "  --no-ensure-shutdown           no corregir automáticamente un apagado\n"
 "                                 no-limpio\n"
 
-#: pg_rewind.c:104
+#: pg_rewind.c:110
 #, 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:105
+#: pg_rewind.c:111
 #, c-format
 msgid "  -?, --help                     show this help, then exit\n"
 msgstr "  -?, --help                     mostrar esta ayuda y salir\n"
 
-#: pg_rewind.c:106
+#: pg_rewind.c:112
 #, c-format
 msgid ""
 "\n"
@@ -584,225 +581,220 @@ msgstr ""
 "\n"
 "Reporte errores a <%s>.\n"
 
-#: pg_rewind.c:107
+#: pg_rewind.c:113
 #, c-format
 msgid "%s home page: <%s>\n"
 msgstr "Sitio web de %s: <%s>\n"
 
-#: pg_rewind.c:215 pg_rewind.c:223 pg_rewind.c:230 pg_rewind.c:237
-#: pg_rewind.c:244 pg_rewind.c:252
+#: pg_rewind.c:223 pg_rewind.c:231 pg_rewind.c:238 pg_rewind.c:245
+#: pg_rewind.c:252 pg_rewind.c:260
 #, c-format
 msgid "Try \"%s --help\" for more information."
 msgstr "Pruebe «%s --help» para mayor información."
 
-#: pg_rewind.c:222
+#: pg_rewind.c:230
 #, c-format
 msgid "no source specified (--source-pgdata or --source-server)"
 msgstr "no se especificó origen (--source-pgdata o --source-server)"
 
-#: pg_rewind.c:229
+#: pg_rewind.c:237
 #, 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:236
+#: pg_rewind.c:244
 #, c-format
 msgid "no target data directory specified (--target-pgdata)"
 msgstr "no se especificó directorio de datos de destino (--target-pgdata)"
 
-#: pg_rewind.c:243
+#: pg_rewind.c:251
 #, c-format
 msgid "no source server information (--source-server) specified for --write-recovery-conf"
 msgstr "no se especificó información de servidor de origen (--source-server) para --write-recovery-conf"
 
-#: pg_rewind.c:250
+#: pg_rewind.c:258
 #, 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:265
+#: pg_rewind.c:273
 #, c-format
 msgid "cannot be executed by \"root\""
 msgstr "no puede ser ejecutado por «root»"
 
-#: pg_rewind.c:266
+#: pg_rewind.c:274
 #, c-format
 msgid "You must run %s as the PostgreSQL superuser."
 msgstr "Debe ejecutar %s con el superusuario de PostgreSQL."
 
-#: pg_rewind.c:276
+#: pg_rewind.c:284
 #, 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:294
+#: pg_rewind.c:302
 #, c-format
 msgid "%s"
 msgstr "%s"
 
-#: pg_rewind.c:297
+#: pg_rewind.c:305
 #, c-format
 msgid "connected to server"
 msgstr "conectado al servidor"
 
-#: pg_rewind.c:344
+#: pg_rewind.c:366
 #, 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:353
+#: pg_rewind.c:387
 #, 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:401
+#: pg_rewind.c:442
 #, c-format
 msgid "no rewind required"
 msgstr "no se requiere rebobinar"
 
-#: pg_rewind.c:410
+#: pg_rewind.c:451
 #, 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:420
+#: pg_rewind.c:461
 #, c-format
 msgid "reading source file list"
 msgstr "leyendo la lista de archivos de origen"
 
-#: pg_rewind.c:424
+#: pg_rewind.c:465
 #, c-format
 msgid "reading target file list"
 msgstr "leyendo la lista de archivos de destino"
 
-#: pg_rewind.c:433
+#: pg_rewind.c:474
 #, c-format
 msgid "reading WAL in target"
 msgstr "leyendo WAL en destino"
 
-#: pg_rewind.c:454
+#: pg_rewind.c:495
 #, 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:472
+#: pg_rewind.c:513
 #, c-format
 msgid "syncing target data directory"
 msgstr "sincronizando directorio de datos de destino"
 
-#: pg_rewind.c:488
+#: pg_rewind.c:529
 #, c-format
 msgid "Done!"
 msgstr "¡Listo!"
 
-#: pg_rewind.c:568
+#: pg_rewind.c:609
 #, c-format
 msgid "no action decided for file \"%s\""
 msgstr "no se decidió una acción para el archivo «%s»"
 
-#: pg_rewind.c:600
+#: pg_rewind.c:641
 #, c-format
 msgid "source system was modified while pg_rewind was running"
 msgstr "el sistema origen fue modificado mientras pg_rewind estaba en ejecución"
 
-#: pg_rewind.c:604
+#: pg_rewind.c:645
 #, c-format
 msgid "creating backup label and updating control file"
 msgstr "creando etiqueta de respaldo y actualizando archivo de control"
 
-#: pg_rewind.c:654
+#: pg_rewind.c:695
 #, c-format
 msgid "source system was in unexpected state at end of rewind"
 msgstr "el sistema origen estaba en un estado inesperado al final del rebobinado"
 
-#: pg_rewind.c:685
+#: pg_rewind.c:727
 #, c-format
 msgid "source and target clusters are from different systems"
 msgstr "clusters de origen y destino son de sistemas diferentes"
 
-#: pg_rewind.c:693
+#: pg_rewind.c:735
 #, 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:703
+#: pg_rewind.c:745
 #, 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:714
+#: pg_rewind.c:756
 #, c-format
 msgid "target server must be shut down cleanly"
 msgstr "el directorio de destino debe estar apagado limpiamente"
 
-#: pg_rewind.c:724
+#: pg_rewind.c:766
 #, c-format
 msgid "source data directory must be shut down cleanly"
 msgstr "el directorio de origen debe estar apagado limpiamente"
 
-#: pg_rewind.c:771
+#: pg_rewind.c:813
 #, c-format
 msgid "%*s/%s kB (%d%%) copied"
 msgstr "%*s/%s kB (%d%%) copiados"
 
-#: pg_rewind.c:834
-#, c-format
-msgid "invalid control file"
-msgstr "archivo de control no válido"
-
-#: pg_rewind.c:918
+#: pg_rewind.c:941
 #, 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:959
+#: pg_rewind.c:982
 #, c-format
 msgid "backup label buffer too small"
 msgstr "el búfer del backup label es demasiado pequeño"
 
-#: pg_rewind.c:982
+#: pg_rewind.c:1005
 #, c-format
 msgid "unexpected control file CRC"
 msgstr "CRC de archivo de control inesperado"
 
-#: pg_rewind.c:994
+#: pg_rewind.c:1017
 #, 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:1003
+#: pg_rewind.c:1026
 #, 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"
 
-#: pg_rewind.c:1042 pg_rewind.c:1112
+#: pg_rewind.c:1065 pg_rewind.c:1135
 #, c-format
 msgid "program \"%s\" is needed by %s but was not found in the same directory as \"%s\""
 msgstr "el programa «%s» es requerido por %s, pero no se encontró en el mismo directorio que «%s»"
 
-#: pg_rewind.c:1045 pg_rewind.c:1115
+#: pg_rewind.c:1068 pg_rewind.c:1138
 #, c-format
 msgid "program \"%s\" was found by \"%s\" but was not the same version as %s"
 msgstr "el programa «%s» fue encontrado por «%s» pero no es de la misma versión que %s"
 
-#: pg_rewind.c:1078
+#: pg_rewind.c:1101
 #, c-format
 msgid "restore_command is not set in the target cluster"
 msgstr "restore_command no está definido en el clúster de destino"
 
-#: pg_rewind.c:1119
+#: pg_rewind.c:1142
 #, c-format
 msgid "executing \"%s\" for target server to complete crash recovery"
 msgstr "ejecutando «%s» en el servidor de destino para completar la recuperación de caídas"
 
-#: pg_rewind.c:1156
+#: pg_rewind.c:1180
 #, c-format
 msgid "postgres single-user mode in target cluster failed"
 msgstr "el modo «single-user» en el servidor de destino falló"
 
-#: pg_rewind.c:1157
+#: pg_rewind.c:1181
 #, c-format
 msgid "Command was: %s"
 msgstr "La orden era: % s"
@@ -842,178 +834,202 @@ msgstr "datos no válidos en archivo de historia"
 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:625
-#, c-format
-msgid "invalid record offset at %X/%X"
-msgstr "posición de registro no válida en %X/%X"
+#: xlogreader.c:626
+#, fuzzy, c-format
+#| msgid "invalid record length at %X/%X: wanted %u, got %u"
+msgid "invalid record offset at %X/%X: expected at least %u, got %u"
+msgstr "largo de registro no válido en %X/%X: se esperaba %u, se obtuvo %u"
 
-#: xlogreader.c:633
+#: xlogreader.c:635
 #, c-format
 msgid "contrecord is requested by %X/%X"
 msgstr "contrecord solicitado por %X/%X"
 
-#: xlogreader.c:674 xlogreader.c:1121
-#, c-format
-msgid "invalid record length at %X/%X: wanted %u, got %u"
+#: xlogreader.c:676 xlogreader.c:1123
+#, fuzzy, c-format
+#| msgid "invalid record length at %X/%X: wanted %u, got %u"
+msgid "invalid record length at %X/%X: expected at least %u, got %u"
 msgstr "largo de registro no válido en %X/%X: se esperaba %u, se obtuvo %u"
 
-#: xlogreader.c:703
+#: xlogreader.c:705
 #, c-format
 msgid "out of memory while trying to decode a record of length %u"
 msgstr "memoria agotada mientras se intentaba decodificar un registro de largo %u"
 
-#: xlogreader.c:725
+#: xlogreader.c:727
 #, c-format
 msgid "record length %u at %X/%X too long"
 msgstr "largo de registro %u en %X/%X demasiado largo"
 
-#: xlogreader.c:774
+#: xlogreader.c:776
 #, c-format
 msgid "there is no contrecord flag at %X/%X"
 msgstr "no hay bandera de contrecord en %X/%X"
 
-#: xlogreader.c:787
+#: xlogreader.c:789
 #, c-format
 msgid "invalid contrecord length %u (expected %lld) at %X/%X"
 msgstr "largo de contrecord %u no válido (se esperaba %lld) en %X/%X"
 
-#: xlogreader.c:922
+#: xlogreader.c:924
 #, c-format
-#| msgid "there is no contrecord flag at %X/%X"
 msgid "missing contrecord at %X/%X"
 msgstr "falta un contrecord en %X/%X"
 
-#: xlogreader.c:1129
+#: xlogreader.c:1131
 #, 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:1142 xlogreader.c:1158
+#: xlogreader.c:1144 xlogreader.c:1160
 #, 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:1194
+#: xlogreader.c:1196
 #, 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:1231
-#, c-format
-msgid "invalid magic number %04X in log segment %s, offset %u"
+#: xlogreader.c:1230
+#, fuzzy, c-format
+#| msgid "invalid magic number %04X in log segment %s, offset %u"
+msgid "invalid magic number %04X in WAL segment %s, LSN %X/%X, offset %u"
 msgstr "número mágico %04X no válido en archivo %s, posición %u"
 
-#: xlogreader.c:1245 xlogreader.c:1286
-#, c-format
-msgid "invalid info bits %04X in log segment %s, offset %u"
+#: xlogreader.c:1245 xlogreader.c:1287
+#, fuzzy, c-format
+#| msgid "invalid info bits %04X in log segment %s, offset %u"
+msgid "invalid info bits %04X in WAL segment %s, LSN %X/%X, offset %u"
 msgstr "info bits %04X no válidos en archivo %s, posición %u"
 
-#: xlogreader.c:1260
+#: xlogreader.c:1261
 #, c-format
 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 %llu, identificador en pg_control es %llu"
 
-#: xlogreader.c:1268
+#: xlogreader.c:1269
 #, 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:1274
+#: xlogreader.c:1275
 #, 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:1305
-#, c-format
-msgid "unexpected pageaddr %X/%X in log segment %s, offset %u"
+#: xlogreader.c:1307
+#, fuzzy, c-format
+#| msgid "unexpected pageaddr %X/%X in log segment %s, offset %u"
+msgid "unexpected pageaddr %X/%X in WAL segment %s, LSN %X/%X, offset %u"
 msgstr "pageaddr %X/%X inesperado en archivo %s, posición %u"
 
-#: xlogreader.c:1330
-#, c-format
-msgid "out-of-sequence timeline ID %u (after %u) in log segment %s, offset %u"
+#: xlogreader.c:1333
+#, fuzzy, c-format
+#| msgid "out-of-sequence timeline ID %u (after %u) in log segment %s, offset %u"
+msgid "out-of-sequence timeline ID %u (after %u) in WAL segment %s, LSN %X/%X, offset %u"
 msgstr "ID de timeline %u fuera de secuencia (después de %u) en archivo %s, posición %u"
 
-#: xlogreader.c:1735
+#: xlogreader.c:1739
 #, c-format
 msgid "out-of-order block_id %u at %X/%X"
 msgstr "block_id %u fuera de orden en %X/%X"
 
-#: xlogreader.c:1759
+#: xlogreader.c:1763
 #, 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:1766
+#: xlogreader.c:1770
 #, 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:1802
+#: xlogreader.c:1806
 #, 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:1818
+#: xlogreader.c:1822
 #, 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:1832
+#: xlogreader.c:1836
 #, c-format
 msgid "BKPIMAGE_COMPRESSED set, but block image length %u at %X/%X"
 msgstr "BKPIMAGE_COMPRESSED definido, pero largo de imagen de bloque es %u en %X/%X"
 
-#: xlogreader.c:1847
+#: xlogreader.c:1851
 #, c-format
 msgid "neither BKPIMAGE_HAS_HOLE nor BKPIMAGE_COMPRESSED set, but block image length is %u at %X/%X"
 msgstr "ni BKPIMAGE_HAS_HOLE ni BKPIMAGE_COMPRESSED están definidos, pero el largo de imagen de bloque es %u en %X/%X"
 
-#: xlogreader.c:1863
+#: xlogreader.c:1867
 #, 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:1875
+#: xlogreader.c:1879
 #, c-format
 msgid "invalid block_id %u at %X/%X"
 msgstr "block_id %u no válido en %X/%X"
 
-#: xlogreader.c:1942
+#: xlogreader.c:1946
 #, c-format
 msgid "record with invalid length at %X/%X"
 msgstr "registro con largo no válido en %X/%X"
 
-#: xlogreader.c:1967
+#: xlogreader.c:1972
 #, c-format
-#| msgid "failed to locate backup block with ID %d in WAL record"
 msgid "could not locate backup block with ID %d in WAL record"
 msgstr "no se pudo localizar un bloque de respaldo con ID %d en el registro WAL"
 
-#: xlogreader.c:2051
+#: xlogreader.c:2056
 #, c-format
 msgid "could not restore image at %X/%X with invalid block %d specified"
 msgstr "no se pudo restaurar la imagen en %X/%X con bloque especificado %d no válido"
 
-#: xlogreader.c:2058
+#: xlogreader.c:2063
 #, c-format
-#| msgid "invalid compressed image at %X/%X, block %d"
 msgid "could not restore image at %X/%X with invalid state, block %d"
 msgstr "no se pudo restaurar la imagen en %X/%X con estado no válido, bloque %d"
 
-#: xlogreader.c:2085 xlogreader.c:2102
+#: xlogreader.c:2090 xlogreader.c:2107
 #, c-format
-#| msgid "image at %X/%X compressed with %s not supported by build, block %d"
 msgid "could not restore image at %X/%X compressed with %s not supported by build, block %d"
 msgstr "no se pudo restaurar la imagen en %X/%X comprimida con %s que no está soportado por esta instalación, bloque %d"
 
-#: xlogreader.c:2111
+#: xlogreader.c:2116
 #, c-format
-#| msgid "image at %X/%X compressed with unknown method, block %d"
 msgid "could not restore image at %X/%X compressed with unknown method, block %d"
 msgstr "no se pudo restaurar la imagen en %X/%X comprimida con un método desconocido, bloque %d"
 
-#: xlogreader.c:2119
+#: xlogreader.c:2124
 #, c-format
-#| msgid "invalid compressed image at %X/%X, block %d"
 msgid "could not decompress image at %X/%X, block %d"
 msgstr "no se pudo descomprimir la imagen en %X/%X, bloque %d"
+
+#, c-format
+#~ msgid "could not load library \"%s\": error code %lu"
+#~ msgstr "no se pudo cargar la biblioteca «%s»: código de error %lu"
+
+#, c-format
+#~ msgid "cannot create restricted tokens on this platform: error code %lu"
+#~ msgstr "no se pueden crear tokens restrigidos en esta plataforma: código de error %lu"
+
+#, c-format
+#~ msgid "cannot use restore_command with %%r placeholder"
+#~ msgstr "no se puede usar restore_command con el marcador %%r"
+
+#, c-format
+#~ msgid "\"%s\" is a symbolic link, but symbolic links are not supported on this platform"
+#~ msgstr "«%s» es un link simbólico, pero los links simbólicos no están soportados en esta plataforma"
+
+#, c-format
+#~ msgid "invalid control file"
+#~ msgstr "archivo de control no válido"
+
+#, c-format
+#~ msgid "invalid record offset at %X/%X"
+#~ msgstr "posición de registro no válida en %X/%X"
index 719bb1c202956e2704d2df923598f2df083eadf4..620917353cc96fe52789058d8c20914a64d16718 100644 (file)
@@ -9,7 +9,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: pg_test_fsync (PostgreSQL) 15\n"
 "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n"
-"POT-Creation-Date: 2022-09-24 23:21+0000\n"
+"POT-Creation-Date: 2023-05-09 09:22+0000\n"
 "PO-Revision-Date: 2022-10-20 09:06+0200\n"
 "Last-Translator: Carlos Chapi <carloswaldo@babelruins.org>\n"
 "Language-Team: PgSQL-es-Ayuda <pgsql-es-ayuda@lists.postgresql.org>\n"
@@ -103,21 +103,21 @@ msgstr "F_NOCACHE tiene soporte en esta plataforma para open_datasync y open_syn
 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:245 pg_test_fsync.c:336 pg_test_fsync.c:361
-#: pg_test_fsync.c:385 pg_test_fsync.c:529 pg_test_fsync.c:541
-#: pg_test_fsync.c:557 pg_test_fsync.c:563 pg_test_fsync.c:585
+#: pg_test_fsync.c:245 pg_test_fsync.c:335 pg_test_fsync.c:357
+#: pg_test_fsync.c:381 pg_test_fsync.c:525 pg_test_fsync.c:537
+#: pg_test_fsync.c:553 pg_test_fsync.c:559 pg_test_fsync.c:581
 msgid "could not open output file"
 msgstr "no se pudo abrir el archivo de salida"
 
-#: pg_test_fsync.c:249 pg_test_fsync.c:319 pg_test_fsync.c:345
-#: pg_test_fsync.c:370 pg_test_fsync.c:394 pg_test_fsync.c:433
-#: pg_test_fsync.c:492 pg_test_fsync.c:531 pg_test_fsync.c:559
-#: pg_test_fsync.c:590
+#: pg_test_fsync.c:249 pg_test_fsync.c:319 pg_test_fsync.c:344
+#: pg_test_fsync.c:366 pg_test_fsync.c:390 pg_test_fsync.c:429
+#: pg_test_fsync.c:488 pg_test_fsync.c:527 pg_test_fsync.c:555
+#: pg_test_fsync.c:586
 msgid "write failed"
 msgstr "escritura falló"
 
-#: pg_test_fsync.c:253 pg_test_fsync.c:372 pg_test_fsync.c:396
-#: pg_test_fsync.c:533 pg_test_fsync.c:565
+#: pg_test_fsync.c:253 pg_test_fsync.c:368 pg_test_fsync.c:392
+#: pg_test_fsync.c:529 pg_test_fsync.c:561
 msgid "fsync failed"
 msgstr "fsync falló"
 
@@ -144,16 +144,16 @@ msgstr ""
 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:306 pg_test_fsync.c:413 pg_test_fsync.c:480
+#: pg_test_fsync.c:306 pg_test_fsync.c:409 pg_test_fsync.c:476
 msgid "n/a*"
 msgstr "n/a*"
 
-#: pg_test_fsync.c:325 pg_test_fsync.c:351 pg_test_fsync.c:401
-#: pg_test_fsync.c:439 pg_test_fsync.c:498
+#: pg_test_fsync.c:325 pg_test_fsync.c:397 pg_test_fsync.c:435
+#: pg_test_fsync.c:494
 msgid "n/a"
 msgstr "n/a"
 
-#: pg_test_fsync.c:444
+#: pg_test_fsync.c:440
 #, c-format
 msgid ""
 "* This file system and its mount options do not support direct\n"
@@ -162,7 +162,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:452
+#: pg_test_fsync.c:448
 #, c-format
 msgid ""
 "\n"
@@ -171,7 +171,7 @@ msgstr ""
 "\n"
 "Comparar open_sync con diferentes tamaños de escritura:\n"
 
-#: pg_test_fsync.c:453
+#: pg_test_fsync.c:449
 #, c-format
 msgid ""
 "(This is designed to compare the cost of writing 16kB in different write\n"
@@ -180,27 +180,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:456
+#: pg_test_fsync.c:452
 msgid " 1 * 16kB open_sync write"
 msgstr " 1 * 16kB escritura open_sync"
 
-#: pg_test_fsync.c:457
+#: pg_test_fsync.c:453
 msgid " 2 *  8kB open_sync writes"
 msgstr " 2 *  8kB escrituras open_sync"
 
-#: pg_test_fsync.c:458
+#: pg_test_fsync.c:454
 msgid " 4 *  4kB open_sync writes"
 msgstr " 4 *  4kB escrituras open_sync"
 
-#: pg_test_fsync.c:459
+#: pg_test_fsync.c:455
 msgid " 8 *  2kB open_sync writes"
 msgstr " 8 *  2kB escrituras open_sync"
 
-#: pg_test_fsync.c:460
+#: pg_test_fsync.c:456
 msgid "16 *  1kB open_sync writes"
 msgstr "16 *  1kB escrituras open_sync"
 
-#: pg_test_fsync.c:514
+#: pg_test_fsync.c:510
 #, c-format
 msgid ""
 "\n"
@@ -209,7 +209,7 @@ msgstr ""
 "\n"
 "Probar si se respeta fsync en un descriptor de archivo que no es de escritura:\n"
 
-#: pg_test_fsync.c:515
+#: pg_test_fsync.c:511
 #, c-format
 msgid ""
 "(If the times are similar, fsync() can sync data written on a different\n"
@@ -218,7 +218,7 @@ msgstr ""
 "(Si los tiempos son similares, fsync() puede sincronizar datos escritos\n"
 "en un descriptor diferente.)\n"
 
-#: pg_test_fsync.c:580
+#: pg_test_fsync.c:576
 #, c-format
 msgid ""
 "\n"
index 88d388edf395863177b9927c1d186d57f31a048d..a32b34029dd0f4a89857a877b6de95aba4f21aa1 100644 (file)
@@ -9,7 +9,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: pg_test_timing (PostgreSQL) 15\n"
 "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n"
-"POT-Creation-Date: 2022-09-24 23:19+0000\n"
+"POT-Creation-Date: 2023-05-09 09:20+0000\n"
 "PO-Revision-Date: 2022-10-20 09:06+0200\n"
 "Last-Translator: Carlos Chapi <carloswaldo@babelruins.org>\n"
 "Language-Team: PgSQL-es-Ayuda <pgsql-es-ayuda@lists.postgresql.org>\n"
index bc1e54dc78ad217ac7bcf492a60b51454e50a0b0..d9e59f2c9ec300fe86ca88e75f70607586c55d13 100644 (file)
@@ -10,7 +10,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: pg_upgrade (PostgreSQL) 15\n"
 "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n"
-"POT-Creation-Date: 2022-09-24 23:19+0000\n"
+"POT-Creation-Date: 2023-05-09 09:19+0000\n"
 "PO-Revision-Date: 2022-10-20 09:06+0200\n"
 "Last-Translator: Carlos Chapi <carloswaldo@babelruins.org>\n"
 "Language-Team: PgSQL-es-Ayuda <pgsql-es-ayuda@lists.postgresql.org>\n"
@@ -20,235 +20,264 @@ msgstr ""
 "Content-Transfer-Encoding: 8bit\n"
 "X-Generator: BlackCAT 1.1\n"
 
-#: check.c:72
-#, c-format
+#: check.c:69
+#, fuzzy, c-format
+#| msgid ""
+#| "Performing Consistency Checks on Old Live Server\n"
+#| "------------------------------------------------\n"
 msgid ""
 "Performing Consistency Checks on Old Live Server\n"
-"------------------------------------------------\n"
+"------------------------------------------------"
 msgstr ""
 "Verificando Consistencia en Vivo en el Servidor Antiguo\n"
 "-------------------------------------------------------\n"
 
-#: check.c:78
-#, c-format
+#: check.c:75
+#, fuzzy, c-format
+#| msgid ""
+#| "Performing Consistency Checks\n"
+#| "-----------------------------\n"
 msgid ""
 "Performing Consistency Checks\n"
-"-----------------------------\n"
+"-----------------------------"
 msgstr ""
 "Verificando Consistencia\n"
 "------------------------\n"
 
-#: check.c:218
-#, c-format
+#: check.c:221
+#, fuzzy, c-format
+#| msgid ""
+#| "\n"
+#| "*Clusters are compatible*\n"
 msgid ""
 "\n"
-"*Clusters are compatible*\n"
+"*Clusters are compatible*"
 msgstr ""
 "\n"
 "*Los clústers son compatibles*\n"
 
-#: check.c:226
-#, c-format
+#: check.c:229
+#, fuzzy, c-format
+#| msgid ""
+#| "\n"
+#| "If pg_upgrade fails after this point, you must re-initdb the\n"
+#| "new cluster before continuing.\n"
 msgid ""
 "\n"
 "If pg_upgrade fails after this point, you must re-initdb the\n"
-"new cluster before continuing.\n"
+"new cluster before continuing."
 msgstr ""
 "\n"
 "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:267
-#, c-format
+#: check.c:270
+#, fuzzy, c-format
+#| msgid ""
+#| "Optimizer statistics are not transferred by pg_upgrade.\n"
+#| "Once you start the new server, consider running:\n"
+#| "    %s/vacuumdb %s--all --analyze-in-stages\n"
+#| "\n"
 msgid ""
 "Optimizer statistics are not transferred by pg_upgrade.\n"
 "Once you start the new server, consider running:\n"
-"    %s/vacuumdb %s--all --analyze-in-stages\n"
-"\n"
+"    %s/vacuumdb %s--all --analyze-in-stages"
 msgstr ""
 "Las estadísticas para el optimizador no son transferidas por pg_upgrade.\n"
 "Una vez que inicie el servidor nuevo, considere ejecutar:\n"
 "    %s/vacuumdb %s--all --analyze-in-stages\n"
 "\n"
 
-#: check.c:273
-#, c-format
+#: check.c:276
+#, fuzzy, c-format
+#| msgid ""
+#| "Running this script will delete the old cluster's data files:\n"
+#| "    %s\n"
 msgid ""
 "Running this script will delete the old cluster's data files:\n"
-"    %s\n"
+"    %s"
 msgstr ""
 "Ejecutando este script se borrarán los archivos de datos del servidor antiguo:\n"
 "    %s\n"
 
-#: check.c:278
-#, c-format
+#: check.c:281
+#, fuzzy, c-format
+#| msgid ""
+#| "Could not create a script to delete the old cluster's data files\n"
+#| "because user-defined tablespaces or the new cluster's data directory\n"
+#| "exist in the old cluster directory.  The old cluster's contents must\n"
+#| "be deleted manually.\n"
 msgid ""
 "Could not create a script to delete the old cluster's data files\n"
 "because user-defined tablespaces or the new cluster's data directory\n"
 "exist in the old cluster directory.  The old cluster's contents must\n"
-"be deleted manually.\n"
+"be deleted manually."
 msgstr ""
 "No se pudo crear un script para borrar los archivos de datos del servidor\n"
 "antiguo, porque el directorio del clúster antiguo contiene tablespaces\n"
 "o el directorio de datos del servidor nuevo.  El contenido del servidor\n"
 "antiguo debe ser borrado manualmente.\n"
 
-#: check.c:290
+#: check.c:293
 #, c-format
 msgid "Checking cluster versions"
 msgstr "Verificando las versiones de los clústers"
 
-#: check.c:302
-#, c-format
-msgid "This utility can only upgrade from PostgreSQL version %s and later.\n"
+#: check.c:305
+#, fuzzy, c-format
+#| msgid "This utility can only upgrade from PostgreSQL version %s and later.\n"
+msgid "This utility can only upgrade from PostgreSQL version %s and later."
 msgstr "Este programa sólo puede actualizar desde PostgreSQL versión %s y posterior.\n"
 
-#: check.c:307
-#, c-format
-msgid "This utility can only upgrade to PostgreSQL version %s.\n"
+#: check.c:310
+#, fuzzy, c-format
+#| msgid "This utility can only upgrade to PostgreSQL version %s.\n"
+msgid "This utility can only upgrade to PostgreSQL version %s."
 msgstr "Este programa sólo puede actualizar a PostgreSQL versión %s.\n"
 
-#: check.c:316
-#, c-format
-msgid "This utility cannot be used to downgrade to older major PostgreSQL versions.\n"
+#: check.c:319
+#, fuzzy, c-format
+#| msgid "This utility cannot be used to downgrade to older major PostgreSQL versions.\n"
+msgid "This utility cannot be used to downgrade to older major PostgreSQL versions."
 msgstr "Este programa no puede usarse para volver a versiones anteriores de PostgreSQL.\n"
 
-#: check.c:321
-#, c-format
-msgid "Old cluster data and binary directories are from different major versions.\n"
+#: check.c:324
+#, fuzzy, c-format
+#| msgid "Old cluster data and binary directories are from different major versions.\n"
+msgid "Old cluster data and binary directories are from different major versions."
 msgstr ""
 "El directorio de datos antiguo y el directorio de binarios antiguo son de\n"
 "versiones diferentes.\n"
 
-#: check.c:324
-#, c-format
-msgid "New cluster data and binary directories are from different major versions.\n"
+#: check.c:327
+#, fuzzy, c-format
+#| msgid "New cluster data and binary directories are from different major versions.\n"
+msgid "New cluster data and binary directories are from different major versions."
 msgstr ""
 "El directorio de datos nuevo y el directorio de binarios nuevo son de\n"
 "versiones diferentes.\n"
 
-#: check.c:339
-#, c-format
-msgid "When checking a live server, the old and new port numbers must be different.\n"
+#: check.c:342
+#, fuzzy, c-format
+#| msgid "When checking a live server, the old and new port numbers must be different.\n"
+msgid "When checking a live server, the old and new port numbers must be different."
 msgstr "Al verificar servidores en caliente, los números de port antiguo y nuevo deben ser diferentes.\n"
 
-#: check.c:354
-#, 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:359
-#, 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:362
-#, 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:365
-#, c-format
-msgid "locale providers for database \"%s\" do not match:  old \"%s\", new \"%s\"\n"
-msgstr "proveedores de configuración regional de la base de datos «%s» no coinciden: antigua «%s», nueva «%s»\n"
-
-#: check.c:372
-#, c-format
-msgid "ICU locale values for database \"%s\" do not match:  old \"%s\", new \"%s\"\n"
-msgstr "valores de configuración regional ICU de la base de datos «%s» no coinciden: antigua «%s», nueva «%s»\n"
-
-#: check.c:447
-#, c-format
-msgid "New cluster database \"%s\" is not empty: found relation \"%s.%s\"\n"
+#, fuzzy, c-format
+#| msgid "New cluster database \"%s\" is not empty: found relation \"%s.%s\"\n"
+msgid "New cluster database \"%s\" is not empty: found relation \"%s.%s\""
 msgstr "La base de datos «%s» del clúster nuevo no está vacía: se encontró la relación «%s.%s»\n"
 
-#: check.c:499
+#: check.c:385
 #, c-format
 msgid "Checking for new cluster tablespace directories"
 msgstr "Verificando los directorios de tablespaces para el nuevo clúster"
 
-#: check.c:510
-#, c-format
-msgid "new cluster tablespace directory already exists: \"%s\"\n"
+#: check.c:396
+#, fuzzy, c-format
+#| msgid "new cluster tablespace directory already exists: \"%s\"\n"
+msgid "new cluster tablespace directory already exists: \"%s\""
 msgstr "directorio de tablespace para el nuevo clúster ya existe: «%s»\n"
 
-#: check.c:543
-#, c-format
+#: check.c:429
+#, fuzzy, c-format
+#| msgid ""
+#| "\n"
+#| "WARNING:  new data directory should not be inside the old data directory, i.e. %s\n"
 msgid ""
 "\n"
-"WARNING:  new data directory should not be inside the old data directory, i.e. %s\n"
+"WARNING:  new data directory should not be inside the old data directory, i.e. %s"
 msgstr ""
 "\n"
 "ADVERTENCIA: el directorio de datos nuevo no debería estar dentro del directorio antiguo,\n"
 "esto es, %s\n"
 
-#: check.c:567
-#, c-format
+#: check.c:453
+#, fuzzy, c-format
+#| msgid ""
+#| "\n"
+#| "WARNING:  user-defined tablespace locations should not be inside the data directory, i.e. %s\n"
 msgid ""
 "\n"
-"WARNING:  user-defined tablespace locations should not be inside the data directory, i.e. %s\n"
+"WARNING:  user-defined tablespace locations should not be inside the data directory, i.e. %s"
 msgstr ""
 "\n"
 "ADVERTENCIA: las ubicaciones de tablespaces definidos por el usuario\n"
 "no deberían estar dentro del directorio de datos,\n"
 "esto es, %s\n"
 
-#: check.c:577
+#: check.c:463
 #, c-format
 msgid "Creating script to delete old cluster"
 msgstr "Creando un script para borrar el clúster antiguo"
 
-#: check.c:580 check.c:755 check.c:875 check.c:974 check.c:1105 check.c:1184
-#: check.c:1453 file.c:338 function.c:165 option.c:465 version.c:116
-#: version.c:292 version.c:429
+#: check.c:466 check.c:639 check.c:755 check.c:850 check.c:979 check.c:1056
+#: check.c:1299 check.c:1373 file.c:339 function.c:163 option.c:476
+#: version.c:116 version.c:292 version.c:426
 #, c-format
-msgid "could not open file \"%s\": %s\n"
-msgstr "no se pudo abrir el archivo «%s»: %s\n"
+msgid "could not open file \"%s\": %s"
+msgstr "no se pudo abrir el archivo «%s»: %s"
 
-#: check.c:631
-#, c-format
-msgid "could not add execute permission to file \"%s\": %s\n"
+#: check.c:517
+#, fuzzy, c-format
+#| msgid "could not add execute permission to file \"%s\": %s\n"
+msgid "could not add execute permission to file \"%s\": %s"
 msgstr "no se pudo agregar permisos de ejecución al archivo «%s»: %s\n"
 
-#: check.c:651
+#: check.c:537
 #, 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:667
-#, c-format
-msgid "database user \"%s\" is not the install user\n"
+#: check.c:553
+#, fuzzy, c-format
+#| msgid "database user \"%s\" is not the install user\n"
+msgid "database user \"%s\" is not the install user"
 msgstr "el usuario de base de datos «%s» no es el usuario de instalación\n"
 
-#: check.c:678
-#, c-format
-msgid "could not determine the number of users\n"
+#: check.c:564
+#, fuzzy, c-format
+#| msgid "could not determine the number of users\n"
+msgid "could not determine the number of users"
 msgstr "no se pudo determinar el número de usuarios\n"
 
-#: check.c:686
-#, c-format
-msgid "Only the install user can be defined in the new cluster.\n"
+#: check.c:572
+#, fuzzy, c-format
+#| msgid "Only the install user can be defined in the new cluster.\n"
+msgid "Only the install user can be defined in the new cluster."
 msgstr "Sólo el usuario de instalación puede estar definido en el nuevo clúster.\n"
 
-#: check.c:716
+#: check.c:601
 #, c-format
 msgid "Checking database connection settings"
 msgstr "Verificando los parámetros de conexión de bases de datos"
 
-#: check.c:742
-#, c-format
-msgid "template0 must not allow connections, i.e. its pg_database.datallowconn must be false\n"
+#: check.c:627
+#, fuzzy, c-format
+#| msgid "template0 must not allow connections, i.e. its pg_database.datallowconn must be false\n"
+msgid "template0 must not allow connections, i.e. its pg_database.datallowconn must be false"
 msgstr "template0 no debe permitir conexiones, es decir su pg_database.datallowconn debe ser «false»\n"
 
-#: check.c:772 check.c:897 check.c:999 check.c:1125 check.c:1206 check.c:1265
-#: check.c:1326 check.c:1357 check.c:1476 function.c:187 version.c:192
-#: version.c:232 version.c:378
-#, c-format
-msgid "fatal\n"
+#: check.c:654 check.c:775 check.c:873 check.c:999 check.c:1076 check.c:1135
+#: check.c:1196 check.c:1224 check.c:1254 check.c:1313 check.c:1394
+#: function.c:185 version.c:192 version.c:232 version.c:378
+#, fuzzy, c-format
+#| msgid "fatal\n"
+msgid "fatal"
 msgstr "fatal\n"
 
-#: check.c:773
-#, c-format
+#: check.c:655
+#, fuzzy, c-format
+#| msgid ""
+#| "All non-template0 databases must allow connections, i.e. their\n"
+#| "pg_database.datallowconn must be true.  Your installation contains\n"
+#| "non-template0 databases with their pg_database.datallowconn set to\n"
+#| "false.  Consider allowing connection for all non-template0 databases\n"
+#| "or drop the databases which do not allow connections.  A list of\n"
+#| "databases with the problem is in the file:\n"
+#| "    %s\n"
+#| "\n"
 msgid ""
 "All non-template0 databases must allow connections, i.e. their\n"
 "pg_database.datallowconn must be true.  Your installation contains\n"
@@ -256,8 +285,7 @@ msgid ""
 "false.  Consider allowing connection for all non-template0 databases\n"
 "or drop the databases which do not allow connections.  A list of\n"
 "databases with the problem is in the file:\n"
-"    %s\n"
-"\n"
+"    %s"
 msgstr ""
 "Todas las bases de datos que no son template0 deben permitir conexiones,\n"
 "es decir, pg_database.datallowconn debe ser true. Su instalación contiene\n"
@@ -268,28 +296,39 @@ msgstr ""
 "    %s\n"
 "\n"
 
-#: check.c:798
+#: check.c:680
 #, c-format
 msgid "Checking for prepared transactions"
 msgstr "Verificando transacciones preparadas"
 
-#: check.c:807
-#, c-format
-msgid "The source cluster contains prepared transactions\n"
+#: check.c:689
+#, fuzzy, c-format
+#| msgid "The source cluster contains prepared transactions\n"
+msgid "The source cluster contains prepared transactions"
 msgstr "El clúster de origen contiene transacciones preparadas\n"
 
-#: check.c:809
-#, c-format
-msgid "The target cluster contains prepared transactions\n"
+#: check.c:691
+#, fuzzy, c-format
+#| msgid "The target cluster contains prepared transactions\n"
+msgid "The target cluster contains prepared transactions"
 msgstr "El clúster de destino contiene transacciones preparadas\n"
 
-#: check.c:835
+#: check.c:716
 #, 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:898
-#, c-format
+#: check.c:776
+#, 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 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"
 msgid ""
 "Your installation contains \"contrib/isn\" functions which rely on the\n"
 "bigint data type.  Your old and new clusters pass bigint values\n"
@@ -297,8 +336,7 @@ msgid ""
 "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"
+"    %s"
 msgstr ""
 "Su instalación contiene funciones de «contrib/isn» que usan el tip de dato\n"
 "bigint.  Sus clústers nuevo y antiguo pasar el tipo bigint de distinta forma,\n"
@@ -309,20 +347,26 @@ msgstr ""
 "    %s\n"
 "\n"
 
-#: check.c:921
+#: check.c:798
 #, c-format
 msgid "Checking for user-defined postfix operators"
 msgstr "Verificando operadores postfix definidos por el usuario"
 
-#: check.c:1000
-#, c-format
+#: check.c:874
+#, fuzzy, c-format
+#| msgid ""
+#| "Your installation contains user-defined postfix operators, which are not\n"
+#| "supported anymore.  Consider dropping the postfix operators and replacing\n"
+#| "them with prefix operators or function calls.\n"
+#| "A list of user-defined postfix operators is in the file:\n"
+#| "    %s\n"
+#| "\n"
 msgid ""
 "Your installation contains user-defined postfix operators, which are not\n"
 "supported anymore.  Consider dropping the postfix operators and replacing\n"
 "them with prefix operators or function calls.\n"
 "A list of user-defined postfix operators is in the file:\n"
-"    %s\n"
-"\n"
+"    %s"
 msgstr ""
 "Su instalación contiene operadores postfix definidos por el usuario, los\n"
 "cuales ya no están soportados. Considere eliminar los operadores postfix\n"
@@ -331,13 +375,22 @@ msgstr ""
 "    %s\n"
 "\n"
 
-#: check.c:1024
+#: check.c:898
 #, c-format
 msgid "Checking for incompatible polymorphic functions"
 msgstr "Verificando funciones polimórficas incompatibles"
 
-#: check.c:1126
-#, c-format
+#: check.c:1000
+#, fuzzy, c-format
+#| msgid ""
+#| "Your installation contains user-defined objects that refer to internal\n"
+#| "polymorphic functions with arguments of type \"anyarray\" or \"anyelement\".\n"
+#| "These user-defined objects must be dropped before upgrading and restored\n"
+#| "afterwards, changing them to refer to the new corresponding functions with\n"
+#| "arguments of type \"anycompatiblearray\" and \"anycompatible\".\n"
+#| "A list of the problematic objects is in the file:\n"
+#| "    %s\n"
+#| "\n"
 msgid ""
 "Your installation contains user-defined objects that refer to internal\n"
 "polymorphic functions with arguments of type \"anyarray\" or \"anyelement\".\n"
@@ -345,8 +398,7 @@ msgid ""
 "afterwards, changing them to refer to the new corresponding functions with\n"
 "arguments of type \"anycompatiblearray\" and \"anycompatible\".\n"
 "A list of the problematic objects is in the file:\n"
-"    %s\n"
-"\n"
+"    %s"
 msgstr ""
 "Su instalación contiene objetos definidos por el usuario que hacen referencia\n"
 "a funciones polimórficas con argumentos de tipo «anyarray» o «anyelement».\n"
@@ -357,20 +409,26 @@ msgstr ""
 "    %s\n"
 "\n"
 
-#: check.c:1151
+#: check.c:1024
 #, c-format
 msgid "Checking for tables WITH OIDS"
 msgstr "Verificando tablas WITH OIDS"
 
-#: check.c:1207
-#, c-format
+#: check.c:1077
+#, fuzzy, c-format
+#| msgid ""
+#| "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"
+#| "\n"
 msgid ""
 "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"
-"\n"
+"    %s"
 msgstr ""
 "Su instalación contiene tablas declaradas WITH OIDS, que ya no está\n"
 "soportado. Considere eliminar la columna oid usando\n"
@@ -379,21 +437,28 @@ msgstr ""
 "    %s\n"
 "\n"
 
-#: check.c:1235
+#: check.c:1105
 #, c-format
 msgid "Checking for system-defined composite types in user tables"
 msgstr "Verificando tipos compuestos definidos por el sistema en tablas de usuario"
 
-#: check.c:1266
-#, c-format
+#: check.c:1136
+#, fuzzy, c-format
+#| msgid ""
+#| "Your installation contains system-defined composite type(s) in user tables.\n"
+#| "These type OIDs are not stable across PostgreSQL versions,\n"
+#| "so this cluster cannot currently be upgraded.  You can\n"
+#| "drop the problem columns and restart the upgrade.\n"
+#| "A list of the problem columns is in the file:\n"
+#| "    %s\n"
+#| "\n"
 msgid ""
 "Your installation contains system-defined composite type(s) in user tables.\n"
 "These type OIDs are not stable across PostgreSQL versions,\n"
 "so this cluster cannot currently be upgraded.  You can\n"
 "drop the problem columns and restart the upgrade.\n"
 "A list of the problem columns is in the file:\n"
-"    %s\n"
-"\n"
+"    %s"
 msgstr ""
 "Su instalación contiene uno o varios tipos compuestos definidos por el sistema en\n"
 "tablas de usuario. Los OIDs de estos tipos no son estables entre diferentes\n"
@@ -403,21 +468,28 @@ msgstr ""
 "    %s\n"
 "\n"
 
-#: check.c:1294
+#: check.c:1164
 #, c-format
 msgid "Checking for reg* data types in user tables"
 msgstr "Verificando tipos de datos reg* en datos de usuario"
 
-#: check.c:1327
-#, c-format
+#: check.c:1197
+#, 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"
+#| "drop the problem columns and restart the upgrade.\n"
+#| "A list of the problem 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"
 "drop the problem columns and restart the upgrade.\n"
 "A list of the problem columns is in the file:\n"
-"    %s\n"
-"\n"
+"    %s"
 msgstr ""
 "Su instalación contiene uno de los tipos reg* en tablas de usuario. Estos tipos\n"
 "de dato hacen referencia a OIDs de sistema que no son preservados por pg_upgrade,\n"
@@ -427,21 +499,60 @@ msgstr ""
 "    %s\n"
 "\n"
 
-#: check.c:1349
+#: check.c:1218
+#, fuzzy, c-format
+#| msgid "Checking for incompatible \"line\" data type"
+msgid "Checking for incompatible aclitem data type in user tables"
+msgstr "Verificando datos de usuario de tipo «line» incompatible"
+
+#: check.c:1225
+#, 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\n"
+#| "cluster cannot currently be upgraded.  You can\n"
+#| "drop the problem columns and restart the upgrade.\n"
+#| "A list of the problem columns is in the file:\n"
+#| "    %s\n"
+#| "\n"
+msgid ""
+"Your installation contains the \"aclitem\" data type in user tables.\n"
+"The internal format of \"aclitem\" changed in PostgreSQL version 16\n"
+"so this cluster cannot currently be upgraded.  You can drop the\n"
+"problem columns and restart the upgrade.  A list of the problem\n"
+"columns is in the file:\n"
+"    %s"
+msgstr ""
+"Su instalación contiene el tipo «jsonb» en tablas de usuario.\n"
+"El formato interno de «jsonb» cambió durante 9.4 beta,\n"
+"por lo que este clúster no puede ser actualizado.\n"
+"Puede eliminar las columnas problemáticas y reiniciar la actualización.\n"
+"Un listado de las columnas problemáticas está en el archivo:\n"
+"    %s\n"
+"\n"
+
+#: check.c:1246
 #, c-format
 msgid "Checking for incompatible \"jsonb\" data type"
 msgstr "Verificando datos de usuario en tipo «jsonb» incompatible"
 
-#: check.c:1358
-#, c-format
+#: check.c:1255
+#, 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\n"
+#| "cluster cannot currently be upgraded.  You can\n"
+#| "drop the problem columns and restart the upgrade.\n"
+#| "A list 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\n"
 "cluster cannot currently be upgraded.  You can\n"
 "drop the problem columns and restart the upgrade.\n"
 "A list of the problem columns is in the file:\n"
-"    %s\n"
-"\n"
+"    %s"
 msgstr ""
 "Su instalación contiene el tipo «jsonb» en tablas de usuario.\n"
 "El formato interno de «jsonb» cambió durante 9.4 beta,\n"
@@ -451,36 +562,43 @@ msgstr ""
 "    %s\n"
 "\n"
 
-#: check.c:1380
+#: check.c:1282
 #, c-format
 msgid "Checking for roles starting with \"pg_\""
 msgstr "Verificando roles que empiecen con «pg_»"
 
-#: check.c:1390
+#: check.c:1314
 #, 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:1392
-#, 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"
+msgid ""
+"Your installation contains roles starting with \"pg_\".\n"
+"\"pg_\" is a reserved prefix for system roles, the cluster\n"
+"cannot be upgraded until these roles are renamed.\n"
+"A list of roles starting with \"pg_\" is in the file:\n"
+"    %s"
+msgstr ""
 
-#: check.c:1413
+#: check.c:1334
 #, c-format
 msgid "Checking for user-defined encoding conversions"
 msgstr "Verificando conversiones de codificación definidas por el usuario"
 
-#: check.c:1477
-#, c-format
+#: check.c:1395
+#, fuzzy, c-format
+#| msgid ""
+#| "Your installation contains user-defined encoding conversions.\n"
+#| "The conversion function parameters changed in PostgreSQL version 14\n"
+#| "so this cluster cannot currently be upgraded.  You can remove the\n"
+#| "encoding conversions in the old cluster and restart the upgrade.\n"
+#| "A list of user-defined encoding conversions is in the file:\n"
+#| "    %s\n"
+#| "\n"
 msgid ""
 "Your installation contains user-defined encoding conversions.\n"
 "The conversion function parameters changed in PostgreSQL version 14\n"
 "so this cluster cannot currently be upgraded.  You can remove the\n"
 "encoding conversions in the old cluster and restart the upgrade.\n"
 "A list of user-defined encoding conversions is in the file:\n"
-"    %s\n"
-"\n"
+"    %s"
 msgstr ""
 "Su instalación contiene conversiones de codificación definidas por el usuario.\n"
 "Los parámetros de la función de conversión cambiaron en PostgreSQL 14\n"
@@ -490,281 +608,319 @@ msgstr ""
 "    %s\n"
 "\n"
 
-#: check.c:1504
-#, c-format
-msgid "failed to get the current locale\n"
-msgstr "no se pudo obtener el «locale» actual\n"
-
-#: check.c:1513
-#, 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:1519
-#, c-format
-msgid "failed to restore old locale \"%s\"\n"
-msgstr "no se pudo restaurar el locale antiguo «%s»\n"
-
-#: controldata.c:128 controldata.c:196
-#, c-format
-msgid "could not get control data using %s: %s\n"
+#: controldata.c:129 controldata.c:175 controldata.c:199 controldata.c:508
+#, fuzzy, c-format
+#| msgid "could not get control data using %s: %s\n"
+msgid "could not get control data using %s: %s"
 msgstr "no se pudo obtener datos de control usando %s: %s\n"
 
-#: controldata.c:139
-#, c-format
-msgid "%d: database cluster state problem\n"
+#: controldata.c:140
+#, fuzzy, c-format
+#| msgid "%d: database cluster state problem\n"
+msgid "%d: database cluster state problem"
 msgstr "%d: problema de estado del clúster\n"
 
-#: controldata.c:157
-#, c-format
-msgid "The source cluster was shut down while in recovery mode.  To upgrade, use \"rsync\" as documented or shut it down as a primary.\n"
+#: controldata.c:158
+#, fuzzy, c-format
+#| msgid "The source cluster was shut down while in recovery mode.  To upgrade, use \"rsync\" as documented or shut it down as a primary.\n"
+msgid "The source cluster was shut down while in recovery mode.  To upgrade, use \"rsync\" as documented or shut it down as a primary."
 msgstr "El clúster de origen fue apagado mientras estaba en modo de recuperación. Para actualizarlo, use «rsync» como está documentado, o apáguelo siendo primario.\n"
 
-#: controldata.c:159
-#, c-format
-msgid "The target cluster was shut down while in recovery mode.  To upgrade, use \"rsync\" as documented or shut it down as a primary.\n"
+#: controldata.c:160
+#, fuzzy, c-format
+#| msgid "The target cluster was shut down while in recovery mode.  To upgrade, use \"rsync\" as documented or shut it down as a primary.\n"
+msgid "The target cluster was shut down while in recovery mode.  To upgrade, use \"rsync\" as documented or shut it down as a primary."
 msgstr "El clúster de destino fue apagado mientras estaba en modo de recuperación. Para actualizarlo, use «rsync» como está documentado, o apáguelo siendo primario.\n"
 
-#: controldata.c:164
-#, c-format
-msgid "The source cluster was not shut down cleanly.\n"
+#: controldata.c:165
+#, fuzzy, c-format
+#| msgid "The source cluster was not shut down cleanly.\n"
+msgid "The source cluster was not shut down cleanly."
 msgstr "El clúster de origen no fue apagado limpiamente.\n"
 
-#: controldata.c:166
-#, c-format
-msgid "The target cluster was not shut down cleanly.\n"
+#: controldata.c:167
+#, fuzzy, c-format
+#| msgid "The target cluster was not shut down cleanly.\n"
+msgid "The target cluster was not shut down cleanly."
 msgstr "El clúster de destino no fue apagado limpiamente.\n"
 
-#: controldata.c:177
-#, c-format
-msgid "The source cluster lacks cluster state information:\n"
+#: controldata.c:181
+#, fuzzy, c-format
+#| msgid "The source cluster lacks cluster state information:\n"
+msgid "The source cluster lacks cluster state information:"
 msgstr "Al clúster de origen le falta información de estado:\n"
 
-#: controldata.c:179
-#, c-format
-msgid "The target cluster lacks cluster state information:\n"
+#: controldata.c:183
+#, fuzzy, c-format
+#| msgid "The target cluster lacks cluster state information:\n"
+msgid "The target cluster lacks cluster state information:"
 msgstr "Al cluster de destino le falta información de estado:\n"
 
-#: controldata.c:209 dump.c:50 pg_upgrade.c:440 pg_upgrade.c:477
-#: relfilenode.c:231 server.c:34
+#: controldata.c:214 dump.c:50 exec.c:119 pg_upgrade.c:517 pg_upgrade.c:554
+#: relfilenumber.c:231 server.c:34 util.c:337
 #, c-format
 msgid "%s"
 msgstr "%s"
 
-#: controldata.c:216
-#, c-format
-msgid "%d: pg_resetwal problem\n"
+#: controldata.c:221
+#, fuzzy, c-format
+#| msgid "%d: pg_resetwal problem\n"
+msgid "%d: pg_resetwal problem"
 msgstr "%d: problema en pg_resetwal\n"
 
-#: controldata.c:226 controldata.c:236 controldata.c:247 controldata.c:258
-#: controldata.c:269 controldata.c:288 controldata.c:299 controldata.c:310
-#: controldata.c:321 controldata.c:332 controldata.c:343 controldata.c:354
-#: controldata.c:357 controldata.c:361 controldata.c:371 controldata.c:383
-#: controldata.c:394 controldata.c:405 controldata.c:416 controldata.c:427
-#: controldata.c:438 controldata.c:449 controldata.c:460 controldata.c:471
-#: controldata.c:482 controldata.c:493
-#, c-format
-msgid "%d: controldata retrieval problem\n"
+#: controldata.c:231 controldata.c:241 controldata.c:252 controldata.c:263
+#: controldata.c:274 controldata.c:293 controldata.c:304 controldata.c:315
+#: controldata.c:326 controldata.c:337 controldata.c:348 controldata.c:359
+#: controldata.c:362 controldata.c:366 controldata.c:376 controldata.c:388
+#: controldata.c:399 controldata.c:410 controldata.c:421 controldata.c:432
+#: controldata.c:443 controldata.c:454 controldata.c:465 controldata.c:476
+#: controldata.c:487 controldata.c:498
+#, fuzzy, c-format
+#| msgid "%d: controldata retrieval problem\n"
+msgid "%d: controldata retrieval problem"
 msgstr "%d: problema de extracción de controldata\n"
 
-#: controldata.c:571
-#, c-format
-msgid "The source cluster lacks some required control information:\n"
+#: controldata.c:579
+#, fuzzy, c-format
+#| msgid "The source cluster lacks some required control information:\n"
+msgid "The source cluster lacks some required control information:"
 msgstr "Al clúster de origen le falta información de control requerida:\n"
 
-#: controldata.c:574
-#, c-format
-msgid "The target cluster lacks some required control information:\n"
+#: controldata.c:582
+#, fuzzy, c-format
+#| msgid "The target cluster lacks some required control information:\n"
+msgid "The target cluster lacks some required control information:"
 msgstr "Al clúster de destino le falta información de control requerida:\n"
 
-#: controldata.c:577
-#, c-format
-msgid "  checkpoint next XID\n"
+#: controldata.c:585
+#, fuzzy, c-format
+#| msgid "  checkpoint next XID\n"
+msgid "  checkpoint next XID"
 msgstr "  siguiente XID del último checkpoint\n"
 
-#: controldata.c:580
-#, c-format
-msgid "  latest checkpoint next OID\n"
+#: controldata.c:588
+#, fuzzy, c-format
+#| msgid "  latest checkpoint next OID\n"
+msgid "  latest checkpoint next OID"
 msgstr "  siguiente OID del último checkpoint\n"
 
-#: controldata.c:583
-#, c-format
-msgid "  latest checkpoint next MultiXactId\n"
+#: controldata.c:591
+#, fuzzy, c-format
+#| msgid "  latest checkpoint next MultiXactId\n"
+msgid "  latest checkpoint next MultiXactId"
 msgstr "  siguiente MultiXactId del último checkpoint\n"
 
-#: controldata.c:587
-#, c-format
-msgid "  latest checkpoint oldest MultiXactId\n"
+#: controldata.c:595
+#, fuzzy, c-format
+#| msgid "  latest checkpoint oldest MultiXactId\n"
+msgid "  latest checkpoint oldest MultiXactId"
 msgstr "  MultiXactId más antiguo del último checkpoint\n"
 
-#: controldata.c:590
-#, c-format
-msgid "  latest checkpoint oldestXID\n"
+#: controldata.c:598
+#, fuzzy, c-format
+#| msgid "  latest checkpoint oldestXID\n"
+msgid "  latest checkpoint oldestXID"
 msgstr "  XID más antiguo del último checkpoint\n"
 
-#: controldata.c:593
-#, c-format
-msgid "  latest checkpoint next MultiXactOffset\n"
+#: controldata.c:601
+#, fuzzy, c-format
+#| msgid "  latest checkpoint next MultiXactOffset\n"
+msgid "  latest checkpoint next MultiXactOffset"
 msgstr "  siguiente MultiXactOffset del siguiente checkpoint\n"
 
-#: controldata.c:596
-#, c-format
-msgid "  first WAL segment after reset\n"
+#: controldata.c:604
+#, fuzzy, c-format
+#| msgid "  first WAL segment after reset\n"
+msgid "  first WAL segment after reset"
 msgstr "  primer segmento de WAL después del reinicio\n"
 
-#: controldata.c:599
-#, c-format
-msgid "  float8 argument passing method\n"
+#: controldata.c:607
+#, fuzzy, c-format
+#| msgid "  float8 argument passing method\n"
+msgid "  float8 argument passing method"
 msgstr "  método de paso de argumentos float8\n"
 
-#: controldata.c:602
-#, c-format
-msgid "  maximum alignment\n"
+#: controldata.c:610
+#, fuzzy, c-format
+#| msgid "  maximum alignment\n"
+msgid "  maximum alignment"
 msgstr "  alineamiento máximo\n"
 
-#: controldata.c:605
-#, c-format
-msgid "  block size\n"
+#: controldata.c:613
+#, fuzzy, c-format
+#| msgid "  block size\n"
+msgid "  block size"
 msgstr "  tamaño de bloques\n"
 
-#: controldata.c:608
-#, c-format
-msgid "  large relation segment size\n"
+#: controldata.c:616
+#, fuzzy, c-format
+#| msgid "  large relation segment size\n"
+msgid "  large relation segment size"
 msgstr "  tamaño de segmento de relación grande\n"
 
-#: controldata.c:611
-#, c-format
-msgid "  WAL block size\n"
+#: controldata.c:619
+#, fuzzy, c-format
+#| msgid "  WAL block size\n"
+msgid "  WAL block size"
 msgstr "  tamaño de bloque de WAL\n"
 
-#: controldata.c:614
-#, c-format
-msgid "  WAL segment size\n"
+#: controldata.c:622
+#, fuzzy, c-format
+#| msgid "  WAL segment size\n"
+msgid "  WAL segment size"
 msgstr "  tamaño de segmento de WAL\n"
 
-#: controldata.c:617
-#, c-format
-msgid "  maximum identifier length\n"
+#: controldata.c:625
+#, fuzzy, c-format
+#| msgid "  maximum identifier length\n"
+msgid "  maximum identifier length"
 msgstr "  máximo largo de identificadores\n"
 
-#: controldata.c:620
-#, c-format
-msgid "  maximum number of indexed columns\n"
+#: controldata.c:628
+#, fuzzy, c-format
+#| msgid "  maximum number of indexed columns\n"
+msgid "  maximum number of indexed columns"
 msgstr "  máximo número de columnas indexadas\n"
 
-#: controldata.c:623
-#, c-format
-msgid "  maximum TOAST chunk size\n"
+#: controldata.c:631
+#, fuzzy, c-format
+#| msgid "  maximum TOAST chunk size\n"
+msgid "  maximum TOAST chunk size"
 msgstr "  tamaño máximo de trozos TOAST\n"
 
-#: controldata.c:627
-#, c-format
-msgid "  large-object chunk size\n"
+#: controldata.c:635
+#, fuzzy, c-format
+#| msgid "  large-object chunk size\n"
+msgid "  large-object chunk size"
 msgstr "  tamaño de trozos de objetos grandes\n"
 
-#: controldata.c:630
-#, c-format
-msgid "  dates/times are integers?\n"
+#: controldata.c:638
+#, fuzzy, c-format
+#| msgid "  dates/times are integers?\n"
+msgid "  dates/times are integers?"
 msgstr "  fechas/horas son enteros?\n"
 
-#: controldata.c:634
-#, c-format
-msgid "  data checksum version\n"
+#: controldata.c:642
+#, fuzzy, c-format
+#| msgid "  data checksum version\n"
+msgid "  data checksum version"
 msgstr "  versión del checksum de datos\n"
 
-#: controldata.c:636
-#, c-format
-msgid "Cannot continue without required control information, terminating\n"
+#: controldata.c:644
+#, fuzzy, c-format
+#| msgid "Cannot continue without required control information, terminating\n"
+msgid "Cannot continue without required control information, terminating"
 msgstr "No se puede continuar sin la información de control requerida. Terminando\n"
 
-#: controldata.c:651
-#, c-format
+#: controldata.c:659
+#, fuzzy, c-format
+#| msgid ""
+#| "old and new pg_controldata alignments are invalid or do not match\n"
+#| "Likely one cluster is a 32-bit install, the other 64-bit\n"
 msgid ""
-"old and new pg_controldata alignments are invalid or do not match\n"
-"Likely one cluster is a 32-bit install, the other 64-bit\n"
+"old and new pg_controldata alignments are invalid or do not match.\n"
+"Likely one cluster is a 32-bit install, the other 64-bit"
 msgstr ""
 "Alineamientos de pg_controldata antiguo y nuevo no son válidos o no coinciden\n"
 "Seguramente un clúster es 32-bit y el otro es 64-bit\n"
 
-#: controldata.c:655
-#, c-format
-msgid "old and new pg_controldata block sizes are invalid or do not match\n"
+#: controldata.c:663
+#, fuzzy, c-format
+#| msgid "old and new pg_controldata block sizes are invalid or do not match\n"
+msgid "old and new pg_controldata block sizes are invalid or do not match"
 msgstr "Los tamaños de bloque antiguo y nuevo no son válidos o no coinciden\n"
 
-#: controldata.c:658
-#, c-format
-msgid "old and new pg_controldata maximum relation segment sizes are invalid or do not match\n"
+#: controldata.c:666
+#, fuzzy, c-format
+#| msgid "old and new pg_controldata maximum relation segment sizes are invalid or do not match\n"
+msgid "old and new pg_controldata maximum relation segment sizes are invalid or do not match"
 msgstr "El tamaño máximo de segmento de relación antiguo y nuevo no son válidos o no coinciden\n"
 
-#: controldata.c:661
-#, c-format
-msgid "old and new pg_controldata WAL block sizes are invalid or do not match\n"
+#: controldata.c:669
+#, fuzzy, c-format
+#| msgid "old and new pg_controldata WAL block sizes are invalid or do not match\n"
+msgid "old and new pg_controldata WAL block sizes are invalid or do not match"
 msgstr "El tamaño de bloques de WAL antiguo y nuevo no son válidos o no coinciden\n"
 
-#: controldata.c:664
-#, c-format
-msgid "old and new pg_controldata WAL segment sizes are invalid or do not match\n"
+#: controldata.c:672
+#, fuzzy, c-format
+#| msgid "old and new pg_controldata WAL segment sizes are invalid or do not match\n"
+msgid "old and new pg_controldata WAL segment sizes are invalid or do not match"
 msgstr "El tamaño de segmentos de WAL antiguo y nuevo no son válidos o no coinciden\n"
 
-#: controldata.c:667
-#, c-format
-msgid "old and new pg_controldata maximum identifier lengths are invalid or do not match\n"
+#: controldata.c:675
+#, fuzzy, c-format
+#| msgid "old and new pg_controldata maximum identifier lengths are invalid or do not match\n"
+msgid "old and new pg_controldata maximum identifier lengths are invalid or do not match"
 msgstr "Los máximos largos de identificador antiguo y nuevo no son válidos o no coinciden\n"
 
-#: controldata.c:670
-#, c-format
-msgid "old and new pg_controldata maximum indexed columns are invalid or do not match\n"
+#: controldata.c:678
+#, fuzzy, c-format
+#| msgid "old and new pg_controldata maximum indexed columns are invalid or do not match\n"
+msgid "old and new pg_controldata maximum indexed columns are invalid or do not match"
 msgstr "La cantidad máxima de columnas indexadas antigua y nueva no son válidos o no coinciden\n"
 
-#: controldata.c:673
-#, c-format
-msgid "old and new pg_controldata maximum TOAST chunk sizes are invalid or do not match\n"
+#: controldata.c:681
+#, fuzzy, c-format
+#| msgid "old and new pg_controldata maximum TOAST chunk sizes are invalid or do not match\n"
+msgid "old and new pg_controldata maximum TOAST chunk sizes are invalid or do not match"
 msgstr "Los máximos de trozos TOAST antiguo y nuevo no son válidos o no coinciden\n"
 
-#: controldata.c:678
-#, c-format
-msgid "old and new pg_controldata large-object chunk sizes are invalid or do not match\n"
+#: controldata.c:686
+#, fuzzy, c-format
+#| msgid "old and new pg_controldata large-object chunk sizes are invalid or do not match\n"
+msgid "old and new pg_controldata large-object chunk sizes are invalid or do not match"
 msgstr "Los tamaños de trozos de objetos grandes antiguo y nuevo no son válidos o no coinciden\n"
 
-#: controldata.c:681
-#, c-format
-msgid "old and new pg_controldata date/time storage types do not match\n"
+#: controldata.c:689
+#, fuzzy, c-format
+#| msgid "old and new pg_controldata date/time storage types do not match\n"
+msgid "old and new pg_controldata date/time storage types do not match"
 msgstr "Los tipos de almacenamiento de fecha/hora antiguo y nuevo no coinciden\n"
 
-#: controldata.c:694
-#, c-format
-msgid "old cluster does not use data checksums but the new one does\n"
+#: controldata.c:702
+#, fuzzy, c-format
+#| msgid "old cluster does not use data checksums but the new one does\n"
+msgid "old cluster does not use data checksums but the new one does"
 msgstr "El clúster antiguo no usa checksums de datos pero el nuevo sí\n"
 
-#: controldata.c:697
-#, c-format
-msgid "old cluster uses data checksums but the new one does not\n"
+#: controldata.c:705
+#, fuzzy, c-format
+#| msgid "old cluster uses data checksums but the new one does not\n"
+msgid "old cluster uses data checksums but the new one does not"
 msgstr "El clúster antiguo usa checksums de datos pero el nuevo no\n"
 
-#: controldata.c:699
-#, c-format
-msgid "old and new cluster pg_controldata checksum versions do not match\n"
+#: controldata.c:707
+#, fuzzy, c-format
+#| msgid "old and new cluster pg_controldata checksum versions do not match\n"
+msgid "old and new cluster pg_controldata checksum versions do not match"
 msgstr "Las versiones de checksum de datos antigua y nueva no coinciden\n"
 
-#: controldata.c:710
+#: controldata.c:718
 #, c-format
 msgid "Adding \".old\" suffix to old global/pg_control"
 msgstr "Agregando el sufijo «.old» a global/pg_control"
 
-#: controldata.c:715
+#: controldata.c:723
 #, c-format
-msgid "Unable to rename %s to %s.\n"
-msgstr "No se pudo renombrar %s a %s.\n"
+msgid "could not rename file \"%s\" to \"%s\": %m"
+msgstr "no se pudo renombrar el archivo de «%s» a «%s»: %m"
 
-#: controldata.c:718
-#, c-format
+#: controldata.c:727
+#, fuzzy, c-format
+#| msgid ""
+#| "\n"
+#| "If you want to start the old cluster, you will need to remove\n"
+#| "the \".old\" suffix from %s/global/pg_control.old.\n"
+#| "Because \"link\" mode was used, the old cluster cannot be safely\n"
+#| "started once the new cluster has been started.\n"
+#| "\n"
 msgid ""
 "\n"
 "If you want to start the old cluster, you will need to remove\n"
 "the \".old\" suffix from %s/global/pg_control.old.\n"
 "Because \"link\" mode was used, the old cluster cannot be safely\n"
-"started once the new cluster has been started.\n"
-"\n"
+"started once the new cluster has been started."
 msgstr ""
 "\n"
 "Si desea iniciar el clúster antiguo, necesitará eliminar el sufijo\n"
@@ -783,32 +939,30 @@ msgstr "Creando el volcado de objetos globales"
 msgid "Creating dump of database schemas"
 msgstr "Creando el volcado de esquemas de bases de datos"
 
-#: exec.c:45
-#, c-format
-msgid "could not get pg_ctl version data using %s: %s\n"
+#: exec.c:47 exec.c:52
+#, fuzzy, c-format
+#| msgid "could not get pg_ctl version data using %s: %s\n"
+msgid "could not get pg_ctl version data using %s: %s"
 msgstr "no se pudo obtener datos de versión de pg_ctl usando %s: %s\n"
 
-#: exec.c:51
-#, c-format
-msgid "could not get pg_ctl version output from %s\n"
+#: exec.c:56
+#, fuzzy, c-format
+#| msgid "could not get pg_ctl version output from %s\n"
+msgid "could not get pg_ctl version output from %s"
 msgstr "no se pudo obtener la salida de versión de pg_ctl de %s\n"
 
-#: exec.c:108 exec.c:112
-#, c-format
-msgid "command too long\n"
+#: exec.c:113 exec.c:117
+#, fuzzy, c-format
+#| msgid "command too long\n"
+msgid "command too long"
 msgstr "orden demasiado larga\n"
 
-#: exec.c:114 util.c:37 util.c:310
+#: exec.c:161 pg_upgrade.c:286
 #, c-format
-msgid "%s\n"
-msgstr "%s\n"
+msgid "could not open log file \"%s\": %m"
+msgstr "no se pudo abrir el archivo de registro «%s»: %m"
 
-#: exec.c:153 pg_upgrade.c:279
-#, c-format
-msgid "could not open log file \"%s\": %m\n"
-msgstr "no se pudo abrir el archivo de registro «%s»: %m\n"
-
-#: exec.c:182
+#: exec.c:193
 #, c-format
 msgid ""
 "\n"
@@ -817,177 +971,210 @@ msgstr ""
 "\n"
 "*falló*"
 
-#: exec.c:185
-#, c-format
-msgid "There were problems executing \"%s\"\n"
+#: exec.c:196
+#, fuzzy, c-format
+#| msgid "There were problems executing \"%s\"\n"
+msgid "There were problems executing \"%s\""
 msgstr "Hubo problemas ejecutando «%s»\n"
 
-#: exec.c:188
-#, c-format
+#: exec.c:199
+#, fuzzy, c-format
+#| msgid ""
+#| "Consult the last few lines of \"%s\" or \"%s\" for\n"
+#| "the probable cause of the failure.\n"
 msgid ""
 "Consult the last few lines of \"%s\" or \"%s\" for\n"
-"the probable cause of the failure.\n"
+"the probable cause of the failure."
 msgstr ""
 "Consulte las últimas línea de «%s» o «%s» para\n"
 "saber la causa probable de la falla.\n"
 
-#: exec.c:193
-#, c-format
+#: exec.c:204
+#, fuzzy, c-format
+#| msgid ""
+#| "Consult the last few lines of \"%s\" for\n"
+#| "the probable cause of the failure.\n"
 msgid ""
 "Consult the last few lines of \"%s\" for\n"
-"the probable cause of the failure.\n"
+"the probable cause of the failure."
 msgstr ""
 "Consulte las últimas líneas de «%s» para saber\n"
 "la causa probable de la falla.\n"
 
-#: exec.c:208 pg_upgrade.c:289
-#, c-format
-msgid "could not write to log file \"%s\": %m\n"
+#: exec.c:219 pg_upgrade.c:296
+#, fuzzy, c-format
+#| msgid "could not write to log file \"%s\": %m\n"
+msgid "could not write to log file \"%s\": %m"
 msgstr "no se pudo escribir al archivo de log «%s»\n"
 
-#: exec.c:234
-#, c-format
-msgid "could not open file \"%s\" for reading: %s\n"
+#: exec.c:245
+#, fuzzy, c-format
+#| msgid "could not open file \"%s\" for reading: %s\n"
+msgid "could not open file \"%s\" for reading: %s"
 msgstr "no se pudo abrir el archivo «%s» para lectura: %s\n"
 
-#: exec.c:261
-#, c-format
-msgid "You must have read and write access in the current directory.\n"
+#: exec.c:272
+#, fuzzy, c-format
+#| msgid "You must have read and write access in the current directory.\n"
+msgid "You must have read and write access in the current directory."
 msgstr "Debe tener privilegios de lectura y escritura en el directorio actual.\n"
 
-#: exec.c:314 exec.c:380
-#, c-format
-msgid "check for \"%s\" failed: %s\n"
+#: exec.c:325 exec.c:391
+#, fuzzy, c-format
+#| msgid "check for \"%s\" failed: %s\n"
+msgid "check for \"%s\" failed: %s"
 msgstr "la comprobación de «%s» falló: %s\n"
 
-#: exec.c:317 exec.c:383
-#, c-format
-msgid "\"%s\" is not a directory\n"
+#: exec.c:328 exec.c:394
+#, fuzzy, c-format
+#| msgid "\"%s\" is not a directory\n"
+msgid "\"%s\" is not a directory"
 msgstr "«%s» no es un directorio\n"
 
-#: exec.c:433
-#, 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:436
-#, 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"
+#: exec.c:441
+#, fuzzy, c-format
+#| msgid "check for \"%s\" failed: %s\n"
+msgid "check for \"%s\" failed: %m"
+msgstr "la comprobación de «%s» falló: %s\n"
 
-#: exec.c:442
-#, c-format
-msgid "check for \"%s\" failed: cannot execute\n"
+#: exec.c:446
+#, fuzzy, c-format
+#| msgid "check for \"%s\" failed: cannot execute\n"
+msgid "check for \"%s\" failed: cannot execute"
 msgstr "La comprobación de «%s» falló: no se puede ejecutar\n"
 
-#: exec.c:452
-#, c-format
-msgid "check for \"%s\" failed: incorrect version: found \"%s\", expected \"%s\"\n"
+#: exec.c:456
+#, fuzzy, c-format
+#| msgid "check for \"%s\" failed: incorrect version: found \"%s\", expected \"%s\"\n"
+msgid "check for \"%s\" failed: incorrect version: found \"%s\", expected \"%s\""
 msgstr "La comprobación de «%s» falló: versión incorrecta: se encontró «%s», se esperaba «%s»\n"
 
-#: file.c:43 file.c:63
-#, c-format
-msgid "error while cloning relation \"%s.%s\" (\"%s\" to \"%s\"): %s\n"
+#: file.c:43 file.c:64
+#, fuzzy, c-format
+#| msgid "error while cloning relation \"%s.%s\" (\"%s\" to \"%s\"): %s\n"
+msgid "error while cloning relation \"%s.%s\" (\"%s\" to \"%s\"): %s"
 msgstr "error mientras se clonaba la relación «%s.%s» («%s» a «%s»): %s\n"
 
 #: file.c:50
-#, c-format
-msgid "error while cloning relation \"%s.%s\": could not open file \"%s\": %s\n"
+#, fuzzy, c-format
+#| msgid "error while cloning relation \"%s.%s\": could not open file \"%s\": %s\n"
+msgid "error while cloning relation \"%s.%s\": could not open file \"%s\": %s"
 msgstr "error mientras se clonaba la relación «%s.%s»: no se pudo abrir el archivo «%s»: %s\n"
 
 #: file.c:55
-#, c-format
-msgid "error while cloning relation \"%s.%s\": could not create file \"%s\": %s\n"
+#, fuzzy, c-format
+#| msgid "error while cloning relation \"%s.%s\": could not create file \"%s\": %s\n"
+msgid "error while cloning relation \"%s.%s\": could not create file \"%s\": %s"
 msgstr "error mientras se clonaba la relación «%s.%s»: no se pudo crear el archivo «%s»: %s\n"
 
-#: file.c:89 file.c:192
-#, c-format
-msgid "error while copying relation \"%s.%s\": could not open file \"%s\": %s\n"
+#: file.c:90 file.c:193
+#, fuzzy, c-format
+#| msgid "error while copying relation \"%s.%s\": could not open file \"%s\": %s\n"
+msgid "error while copying relation \"%s.%s\": could not open file \"%s\": %s"
 msgstr "error mientras se copiaba la relación «%s.%s»: no se pudo leer el archivo «%s»: %s\n"
 
-#: file.c:94 file.c:201
-#, c-format
-msgid "error while copying relation \"%s.%s\": could not create file \"%s\": %s\n"
+#: file.c:95 file.c:202
+#, fuzzy, c-format
+#| msgid "error while copying relation \"%s.%s\": could not create file \"%s\": %s\n"
+msgid "error while copying relation \"%s.%s\": could not create file \"%s\": %s"
 msgstr "error mientras se copiaba la relación «%s.%s»: no se pudo crear el archivo «%s»: %s\n"
 
-#: file.c:108 file.c:225
-#, c-format
-msgid "error while copying relation \"%s.%s\": could not read file \"%s\": %s\n"
+#: file.c:109 file.c:226
+#, fuzzy, c-format
+#| msgid "error while copying relation \"%s.%s\": could not read file \"%s\": %s\n"
+msgid "error while copying relation \"%s.%s\": could not read file \"%s\": %s"
 msgstr "error mientras se copiaba la relación «%s.%s»: no se pudo leer el archivo «%s»: %s\n"
 
-#: file.c:120 file.c:303
-#, c-format
-msgid "error while copying relation \"%s.%s\": could not write file \"%s\": %s\n"
+#: file.c:121 file.c:304
+#, fuzzy, c-format
+#| msgid "error while copying relation \"%s.%s\": could not write file \"%s\": %s\n"
+msgid "error while copying relation \"%s.%s\": could not write file \"%s\": %s"
 msgstr "error mientras se copiaba la relación «%s.%s»: no se pudo escribir el archivo «%s»: %s\n"
 
-#: file.c:134
-#, c-format
-msgid "error while copying relation \"%s.%s\" (\"%s\" to \"%s\"): %s\n"
+#: file.c:135
+#, fuzzy, c-format
+#| msgid "error while copying relation \"%s.%s\" (\"%s\" to \"%s\"): %s\n"
+msgid "error while copying relation \"%s.%s\" (\"%s\" to \"%s\"): %s"
 msgstr "error mientras se copiaba la relación «%s.%s» («%s» a «%s»): %s\n"
 
-#: file.c:153
-#, c-format
-msgid "error while creating link for relation \"%s.%s\" (\"%s\" to \"%s\"): %s\n"
+#: file.c:154
+#, fuzzy, c-format
+#| msgid "error while creating link for relation \"%s.%s\" (\"%s\" to \"%s\"): %s\n"
+msgid "error while creating link for relation \"%s.%s\" (\"%s\" to \"%s\"): %s"
 msgstr "error mientras se creaba el link para la relación «%s.%s» («%s» a «%s»): %s\n"
 
-#: file.c:196
-#, c-format
-msgid "error while copying relation \"%s.%s\": could not stat file \"%s\": %s\n"
+#: file.c:197
+#, fuzzy, c-format
+#| msgid "error while copying relation \"%s.%s\": could not stat file \"%s\": %s\n"
+msgid "error while copying relation \"%s.%s\": could not stat file \"%s\": %s"
 msgstr "error mientras se copiaba la relación «%s.%s»: no se pudo hacer stat a «%s»: %s\n"
 
-#: file.c:228
-#, c-format
-msgid "error while copying relation \"%s.%s\": partial page found in file \"%s\"\n"
+#: file.c:229
+#, fuzzy, c-format
+#| msgid "error while copying relation \"%s.%s\": partial page found in file \"%s\"\n"
+msgid "error while copying relation \"%s.%s\": partial page found in file \"%s\""
 msgstr "error mientras se copiaba la relación «%s.%s»: se encontró una página parcial en el archivo «%s»\n"
 
-#: file.c:330 file.c:347
-#, c-format
-msgid "could not clone file between old and new data directories: %s\n"
+#: file.c:331 file.c:348
+#, fuzzy, c-format
+#| msgid "could not clone file between old and new data directories: %s\n"
+msgid "could not clone file between old and new data directories: %s"
 msgstr "no se pudo clonar el archivo entre los directorios viejo y nuevo: %s\n"
 
-#: file.c:343
-#, c-format
-msgid "could not create file \"%s\": %s\n"
+#: file.c:344
+#, fuzzy, c-format
+#| msgid "could not create file \"%s\": %s\n"
+msgid "could not create file \"%s\": %s"
 msgstr "no se pudo crear el archivo «%s»: %s\n"
 
-#: file.c:354
-#, c-format
-msgid "file cloning not supported on this platform\n"
+#: file.c:355
+#, fuzzy, c-format
+#| msgid "file cloning not supported on this platform\n"
+msgid "file cloning not supported on this platform"
 msgstr "el clonado de archivos no está soportado en esta plataforma\n"
 
-#: file.c:371
-#, c-format
+#: file.c:372
+#, fuzzy, c-format
+#| msgid ""
+#| "could not create hard link between old and new data directories: %s\n"
+#| "In link mode the old and new data directories must be on the same file system.\n"
 msgid ""
 "could not create hard link between old and new data directories: %s\n"
-"In link mode the old and new data directories must be on the same file system.\n"
+"In link mode the old and new data directories must be on the same file system."
 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:129
+#: function.c:128
 #, c-format
 msgid "Checking for presence of required libraries"
 msgstr "Verificando la presencia de las bibliotecas requeridas"
 
-#: function.c:167
+#: function.c:165
 #, c-format
 msgid "could not load library \"%s\": %s"
 msgstr "no se pudo cargar la biblioteca «%s»: %s"
 
-#: function.c:178
+#: function.c:176
 #, c-format
 msgid "In database: %s\n"
 msgstr "En la base de datos: %s\n"
 
-#: function.c:188
-#, c-format
+#: function.c:186
+#, fuzzy, c-format
+#| msgid ""
+#| "Your installation references loadable libraries that are missing from the\n"
+#| "new installation.  You can add these libraries to the new installation,\n"
+#| "or remove the functions using them from the old installation.  A list of\n"
+#| "problem libraries is in the file:\n"
+#| "    %s\n"
+#| "\n"
 msgid ""
 "Your installation references loadable libraries that are missing from the\n"
 "new installation.  You can add these libraries to the new installation,\n"
 "or remove the functions using them from the old installation.  A list of\n"
 "problem libraries is in the file:\n"
-"    %s\n"
-"\n"
+"    %s"
 msgstr ""
 "Su instalación hace referencia a bibliotecas que no están en la nueva\n"
 "instalación.  Puede agregar estar bibliotecas la instalación nueva, o\n"
@@ -996,162 +1183,177 @@ msgstr ""
 "    %s\n"
 "\n"
 
-#: info.c:125
-#, c-format
-msgid "Relation names for OID %u in database \"%s\" do not match: old name \"%s.%s\", new name \"%s.%s\"\n"
+#: info.c:126
+#, fuzzy, c-format
+#| msgid "Relation names for OID %u in database \"%s\" do not match: old name \"%s.%s\", new name \"%s.%s\"\n"
+msgid "Relation names for OID %u in database \"%s\" do not match: old name \"%s.%s\", new name \"%s.%s\""
 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:145
-#, c-format
-msgid "Failed to match up old and new tables in database \"%s\"\n"
+#: info.c:146
+#, fuzzy, c-format
+#| msgid "Failed to match up old and new tables in database \"%s\"\n"
+msgid "Failed to match up old and new tables in database \"%s\""
 msgstr "No hubo coincidencia en las tablas nueva y antigua en la base de datos «%s»\n"
 
-#: info.c:226
+#: info.c:227
 #, c-format
 msgid " which is an index on \"%s.%s\""
 msgstr " que es un índice en «%s.%s»"
 
-#: info.c:236
+#: info.c:237
 #, c-format
 msgid " which is an index on OID %u"
 msgstr " que es un índice en el OID %u"
 
-#: info.c:248
+#: info.c:249
 #, c-format
 msgid " which is the TOAST table for \"%s.%s\""
 msgstr " que es la tabla TOAST para «%s.%s»"
 
-#: info.c:256
+#: info.c:257
 #, c-format
 msgid " which is the TOAST table for OID %u"
 msgstr " que es la tabla TOAST para el OID %u"
 
-#: info.c:260
-#, c-format
-msgid "No match found in old cluster for new relation with OID %u in database \"%s\": %s\n"
+#: info.c:261
+#, fuzzy, c-format
+#| msgid "No match found in old cluster for new relation with OID %u in database \"%s\": %s\n"
+msgid "No match found in old cluster for new relation with OID %u in database \"%s\": %s"
 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:263
-#, c-format
-msgid "No match found in new cluster for old relation with OID %u in database \"%s\": %s\n"
+#: info.c:264
+#, fuzzy, c-format
+#| msgid "No match found in new cluster for old relation with OID %u in database \"%s\": %s\n"
+msgid "No match found in new cluster for old relation with OID %u in database \"%s\": %s"
 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:287
-#, c-format
+#: info.c:289
+#, fuzzy, c-format
+#| msgid ""
+#| "\n"
+#| "source databases:\n"
 msgid ""
 "\n"
-"source databases:\n"
+"source databases:"
 msgstr ""
 "\n"
 "bases de datos de origen:\n"
 
-#: info.c:289
-#, c-format
+#: info.c:291
+#, fuzzy, c-format
+#| msgid ""
+#| "\n"
+#| "target databases:\n"
 msgid ""
 "\n"
-"target databases:\n"
+"target databases:"
 msgstr ""
 "\n"
 "bases de datos de destino:\n"
 
-#: info.c:605
-#, c-format
-msgid "Database: %s\n"
-msgstr "Base de datos: %s\n"
+#: info.c:329
+#, fuzzy, c-format
+#| msgid "case not found"
+msgid "template0 not found"
+msgstr "caso no encontrado"
 
-#: info.c:607
-#, c-format
-msgid ""
-"\n"
-"\n"
-msgstr ""
-"\n"
-"\n"
+#: info.c:645
+#, fuzzy, c-format
+#| msgid "Database: %s\n"
+msgid "Database: %s"
+msgstr "Base de datos: %s\n"
 
-#: info.c:618
-#, c-format
-msgid "relname: %s.%s: reloid: %u reltblspace: %s\n"
+#: info.c:657
+#, fuzzy, c-format
+#| msgid "relname: %s.%s: reloid: %u reltblspace: %s\n"
+msgid "relname: %s.%s: reloid: %u reltblspace: %s"
 msgstr "relname: %s.%s: reloid: %u reltblspace: %s\n"
 
-#: option.c:100
-#, c-format
-msgid "%s: cannot be run as root\n"
+#: option.c:101
+#, fuzzy, c-format
+#| msgid "%s: cannot be run as root\n"
+msgid "%s: cannot be run as root"
 msgstr "%s: no puede ejecutarse como root\n"
 
-#: option.c:167
-#, c-format
-msgid "invalid old port number\n"
+#: option.c:168
+#, fuzzy, c-format
+#| msgid "invalid old port number\n"
+msgid "invalid old port number"
 msgstr "número de puerto antiguo no válido\n"
 
-#: option.c:172
-#, c-format
-msgid "invalid new port number\n"
+#: option.c:173
+#, fuzzy, c-format
+#| msgid "invalid new port number\n"
+msgid "invalid new port number"
 msgstr "número de puerto nuevo no válido\n"
 
-#: option.c:198
+#: option.c:203
 #, c-format
 msgid "Try \"%s --help\" for more information.\n"
 msgstr "Pruebe «%s --help» para mayor información.\n"
 
-#: option.c:205
+#: option.c:210
 #, c-format
-msgid "too many command-line arguments (first is \"%s\")\n"
-msgstr "demasiados argumentos en la línea de órdenes (el primero es «%s»)\n"
+msgid "too many command-line arguments (first is \"%s\")"
+msgstr "demasiados argumentos en la línea de órdenes (el primero es «%s»)"
 
-#: option.c:208
-#, c-format
-msgid "Running in verbose mode\n"
+#: option.c:213
+#, fuzzy, c-format
+#| msgid "Running in verbose mode\n"
+msgid "Running in verbose mode"
 msgstr "Ejecutando en modo verboso\n"
 
-#: option.c:226
+#: option.c:231
 msgid "old cluster binaries reside"
 msgstr "residen los binarios del clúster antiguo"
 
-#: option.c:228
+#: option.c:233
 msgid "new cluster binaries reside"
 msgstr "residen los binarios del clúster nuevo"
 
-#: option.c:230
+#: option.c:235
 msgid "old cluster data resides"
 msgstr "residen los datos del clúster antiguo"
 
-#: option.c:232
+#: option.c:237
 msgid "new cluster data resides"
 msgstr "residen los datos del clúster nuevo"
 
-#: option.c:234
+#: option.c:239
 msgid "sockets will be created"
 msgstr "se crearán los sockets"
 
-#: option.c:251 option.c:350
-#, c-format
-msgid "could not determine current directory\n"
+#: option.c:256 option.c:356
+#, fuzzy, c-format
+#| msgid "could not determine current directory\n"
+msgid "could not determine current directory"
 msgstr "no se pudo identificar el directorio actual\n"
 
-#: option.c:254
-#, c-format
-msgid "cannot run pg_upgrade from inside the new cluster data directory on Windows\n"
+#: option.c:259
+#, fuzzy, c-format
+#| msgid "cannot run pg_upgrade from inside the new cluster data directory on Windows\n"
+msgid "cannot run pg_upgrade from inside the new cluster data directory on Windows"
 msgstr ""
 "no se puede ejecutar pg_upgrade desde dentro del directorio de datos\n"
 "del clúster nuevo en Windows\n"
 
-#: option.c:263
+#: option.c:268
 #, c-format
 msgid ""
 "pg_upgrade upgrades a PostgreSQL cluster to a different major version.\n"
 "\n"
 msgstr "pg_upgrade actualiza un clúster PostgreSQL a una versión «mayor» diferente.\n"
 
-#: option.c:264
+#: option.c:269
 #, c-format
 msgid "Usage:\n"
 msgstr "Empleo:\n"
 
-#: option.c:265
+#: option.c:270
 #, c-format
 msgid ""
 "  pg_upgrade [OPTION]...\n"
@@ -1160,17 +1362,17 @@ msgstr ""
 "  pg_upgrade [OPCIÓN]...\n"
 "\n"
 
-#: option.c:266
+#: option.c:271
 #, c-format
 msgid "Options:\n"
 msgstr "Opciones:\n"
 
-#: option.c:267
+#: option.c:272
 #, 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:268
+#: option.c:273
 #, c-format
 msgid ""
 "  -B, --new-bindir=BINDIR       new cluster executable directory (default\n"
@@ -1179,92 +1381,98 @@ msgstr ""
 "  -B, --new-bindir=BINDIR       directorio de ejecutables del clúster nuevo\n"
 "                                (por omisión el mismo directorio que pg_upgrade)\n"
 
-#: option.c:270
+#: option.c:275
 #, 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:271
+#: option.c:276
 #, 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:272
+#: option.c:277
 #, 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:273
+#: option.c:278
 #, c-format
 msgid "  -j, --jobs=NUM                number of simultaneous processes or threads to use\n"
 msgstr "  -j, --jobs=NUM                máximo de procesos paralelos para restaurar\n"
 
-#: option.c:274
+#: option.c:279
 #, 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:275
+#: option.c:280
 #, 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"
 
-#: option.c:276
+#: option.c:281
 #, 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:277
+#: option.c:282
 #, 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:278
+#: option.c:283
 #, 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:279
+#: option.c:284
 #, 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:280
+#: option.c:285
 #, 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:281
+#: option.c:286
 #, c-format
 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:282
+#: option.c:287
 #, c-format
 msgid "  -U, --username=NAME           cluster superuser (default \"%s\")\n"
 msgstr "  -U, --username=NOMBRE         superusuario del clúster (def. «%s»)\n"
 
-#: option.c:283
+#: option.c:288
 #, c-format
 msgid "  -v, --verbose                 enable verbose internal logging\n"
 msgstr "  -v, --verbose                 activar registro interno verboso\n"
 
-#: option.c:284
+#: option.c:289
 #, 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:285
+#: option.c:290
 #, 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:286
+#: option.c:291
+#, fuzzy, c-format
+#| msgid "  --clone                       clone instead of copying files to new cluster\n"
+msgid "  --copy                        copy files to new cluster (default)\n"
+msgstr "  --clone                       clonar los archivos en vez de copiarlos\n"
+
+#: option.c:292
 #, c-format
 msgid "  -?, --help                    show this help, then exit\n"
 msgstr "  -?, --help                    mostrar esta ayuda y salir\n"
 
-#: option.c:287
+#: option.c:293
 #, c-format
 msgid ""
 "\n"
@@ -1279,7 +1487,7 @@ msgstr ""
 "  apagar el postmaster que atiende al clúster antiguo\n"
 "  apagar el postmaster que atiende al clúster nuevo\n"
 
-#: option.c:292
+#: option.c:298
 #, c-format
 msgid ""
 "\n"
@@ -1296,7 +1504,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:298
+#: option.c:304
 #, c-format
 msgid ""
 "\n"
@@ -1309,7 +1517,7 @@ msgstr ""
 "  pg_upgrade -d oldCluster/data -D newCluster/data -b oldCluster/bin -B newCluster/bin\n"
 "o\n"
 
-#: option.c:303
+#: option.c:309
 #, c-format
 msgid ""
 "  $ export PGDATAOLD=oldCluster/data\n"
@@ -1324,7 +1532,7 @@ msgstr ""
 "  $ export PGBINNEW=clusterNuevo/bin\n"
 "  $ pg_upgrade\n"
 
-#: option.c:309
+#: option.c:315
 #, c-format
 msgid ""
 "  C:\\> set PGDATAOLD=oldCluster/data\n"
@@ -1339,7 +1547,7 @@ msgstr ""
 "  C:\\> set PGBINNEW=clusterNuevo/bin\n"
 "  C:\\> pg_upgrade\n"
 
-#: option.c:315
+#: option.c:321
 #, c-format
 msgid ""
 "\n"
@@ -1348,264 +1556,306 @@ msgstr ""
 "\n"
 "Reporte errores a <%s>.\n"
 
-#: option.c:316
+#: option.c:322
 #, c-format
 msgid "%s home page: <%s>\n"
 msgstr "Sitio web de %s: <%s>\n"
 
-#: option.c:356
-#, c-format
+#: option.c:362
+#, fuzzy, c-format
+#| msgid ""
+#| "You must identify the directory where the %s.\n"
+#| "Please use the %s command-line option or the %s environment variable.\n"
 msgid ""
 "You must identify the directory where the %s.\n"
-"Please use the %s command-line option or the %s environment variable.\n"
+"Please use the %s command-line option or the %s environment variable."
 msgstr ""
 "Debe identificar el directorio donde %s.\n"
 "Por favor use la opción %s o la variable de ambiente %s.\n"
 
-#: option.c:408
+#: option.c:415
 #, 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:410
+#: option.c:417
 #, 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:422
-#, c-format
-msgid "could not get data directory using %s: %s\n"
+#: option.c:430 option.c:435
+#, fuzzy, c-format
+#| msgid "could not get data directory using %s: %s\n"
+msgid "could not get data directory using %s: %s"
 msgstr "no se pudo obtener el directorio de datos usando %s: %s\n"
 
-#: option.c:473
-#, c-format
-msgid "could not read line %d from file \"%s\": %s\n"
+#: option.c:484
+#, fuzzy, c-format
+#| msgid "could not read line %d from file \"%s\": %s\n"
+msgid "could not read line %d from file \"%s\": %s"
 msgstr "no se pudo leer la línea %d del archivo «%s»: %s\n"
 
-#: option.c:490
-#, c-format
-msgid "user-supplied old port number %hu corrected to %hu\n"
+#: option.c:501
+#, fuzzy, c-format
+#| msgid "user-supplied old port number %hu corrected to %hu\n"
+msgid "user-supplied old port number %hu corrected to %hu"
 msgstr "número de port entregado por el usuario %hu corregido a %hu\n"
 
-#: parallel.c:127 parallel.c:238
-#, c-format
-msgid "could not create worker process: %s\n"
+#: parallel.c:127 parallel.c:235
+#, fuzzy, c-format
+#| msgid "could not create worker process: %s\n"
+msgid "could not create worker process: %s"
 msgstr "no se pudo crear el proceso hijo: %s\n"
 
-#: parallel.c:146 parallel.c:259
-#, c-format
-msgid "could not create worker thread: %s\n"
+#: parallel.c:143 parallel.c:253
+#, fuzzy, c-format
+#| msgid "could not create worker thread: %s\n"
+msgid "could not create worker thread: %s"
 msgstr "no se pudo crear el thread: %s\n"
 
-#: parallel.c:300
-#, c-format
-msgid "%s() failed: %s\n"
+#: parallel.c:294
+#, fuzzy, c-format
+#| msgid "%s() failed: %s\n"
+msgid "%s() failed: %s"
 msgstr "%s() falló: %s\n"
 
-#: parallel.c:304
-#, c-format
-msgid "child process exited abnormally: status %d\n"
+#: parallel.c:298
+#, fuzzy, c-format
+#| msgid "child process exited abnormally: status %d\n"
+msgid "child process exited abnormally: status %d"
 msgstr "el proceso hijo terminó anormalmente: estado %d\n"
 
-#: parallel.c:319
-#, c-format
-msgid "child worker exited abnormally: %s\n"
+#: parallel.c:313
+#, fuzzy, c-format
+#| msgid "child worker exited abnormally: %s\n"
+msgid "child worker exited abnormally: %s"
 msgstr "el thread terminó anormalmente: %s\n"
 
-#: pg_upgrade.c:102
-#, c-format
-msgid "could not read permissions of directory \"%s\": %s\n"
+#: pg_upgrade.c:107
+#, fuzzy, c-format
+#| msgid "could not read permissions of directory \"%s\": %s\n"
+msgid "could not read permissions of directory \"%s\": %s"
 msgstr "no se pudo obtener los permisos del directorio «%s»: %s\n"
 
-#: pg_upgrade.c:134
-#, c-format
+#: pg_upgrade.c:139
+#, fuzzy, c-format
+#| msgid ""
+#| "\n"
+#| "Performing Upgrade\n"
+#| "------------------\n"
 msgid ""
 "\n"
 "Performing Upgrade\n"
-"------------------\n"
+"------------------"
 msgstr ""
 "\n"
 "Llevando a cabo el Upgrade\n"
 "--------------------------\n"
 
-#: pg_upgrade.c:177
+#: pg_upgrade.c:184
 #, c-format
 msgid "Setting next OID for new cluster"
 msgstr "Seteando siguiente OID para el nuevo clúster"
 
-#: pg_upgrade.c:186
+#: pg_upgrade.c:193
 #, c-format
 msgid "Sync data directory to disk"
 msgstr "Sincronizando directorio de datos a disco"
 
-#: pg_upgrade.c:198
-#, c-format
+#: pg_upgrade.c:205
+#, fuzzy, c-format
+#| msgid ""
+#| "\n"
+#| "Upgrade Complete\n"
+#| "----------------\n"
 msgid ""
 "\n"
 "Upgrade Complete\n"
-"----------------\n"
+"----------------"
 msgstr ""
 "\n"
 "Actualización Completa\n"
 "----------------------\n"
 
-#: pg_upgrade.c:231 pg_upgrade.c:244 pg_upgrade.c:251 pg_upgrade.c:258
-#: pg_upgrade.c:276 pg_upgrade.c:287
-#, c-format
-msgid "directory path for new cluster is too long\n"
+#: pg_upgrade.c:238 pg_upgrade.c:251 pg_upgrade.c:258 pg_upgrade.c:265
+#: pg_upgrade.c:283 pg_upgrade.c:294
+#, fuzzy, c-format
+#| msgid "directory path for new cluster is too long\n"
+msgid "directory path for new cluster is too long"
 msgstr "nombre de directorio para el nuevo clúster es demasiado largo\n"
 
-#: pg_upgrade.c:265 pg_upgrade.c:267 pg_upgrade.c:269 pg_upgrade.c:271
+#: pg_upgrade.c:272 pg_upgrade.c:274 pg_upgrade.c:276 pg_upgrade.c:278
 #, c-format
-msgid "could not create directory \"%s\": %m\n"
-msgstr "no se pudo crear el directorio «%s»: %m\n"
+msgid "could not create directory \"%s\": %m"
+msgstr "no se pudo crear el directorio «%s»: %m"
 
-#: pg_upgrade.c:320
-#, c-format
-msgid "%s: could not find own program executable\n"
+#: pg_upgrade.c:327
+#, fuzzy, c-format
+#| msgid "%s: could not find own program executable\n"
+msgid "%s: could not find own program executable"
 msgstr "%s: no se pudo encontrar el ejecutable propio\n"
 
-#: pg_upgrade.c:346
-#, c-format
+#: pg_upgrade.c:353
+#, fuzzy, c-format
+#| msgid ""
+#| "There seems to be a postmaster servicing the old cluster.\n"
+#| "Please shutdown that postmaster and try again.\n"
 msgid ""
 "There seems to be a postmaster servicing the old cluster.\n"
-"Please shutdown that postmaster and try again.\n"
+"Please shutdown that postmaster and try again."
 msgstr ""
 "Parece haber un postmaster sirviendo el clúster antiguo.\n"
 "Por favor detenga ese postmaster e inténtelo nuevamente.\n"
 
-#: pg_upgrade.c:359
-#, c-format
+#: pg_upgrade.c:366
+#, fuzzy, c-format
+#| msgid ""
+#| "There seems to be a postmaster servicing the new cluster.\n"
+#| "Please shutdown that postmaster and try again.\n"
 msgid ""
 "There seems to be a postmaster servicing the new cluster.\n"
-"Please shutdown that postmaster and try again.\n"
+"Please shutdown that postmaster and try again."
 msgstr ""
 "Parece haber un postmaster sirviendo el clúster nuevo.\n"
 "Por favor detenga ese postmaster e inténtelo nuevamente.\n"
 
-#: pg_upgrade.c:373
+#: pg_upgrade.c:388
+#, fuzzy, c-format
+#| msgid "Setting oldest XID for new cluster"
+msgid "Setting locale and encoding for new cluster"
+msgstr "Estableciendo XID más antiguo para el nuevo clúster"
+
+#: pg_upgrade.c:450
 #, c-format
 msgid "Analyzing all rows in the new cluster"
 msgstr "Analizando todas las filas en el clúster nuevo"
 
-#: pg_upgrade.c:386
+#: pg_upgrade.c:463
 #, c-format
 msgid "Freezing all rows in the new cluster"
 msgstr "Congelando todas las filas en el nuevo clúster"
 
-#: pg_upgrade.c:406
+#: pg_upgrade.c:483
 #, c-format
 msgid "Restoring global objects in the new cluster"
 msgstr "Restaurando objetos globales en el nuevo clúster"
 
-#: pg_upgrade.c:422
+#: pg_upgrade.c:499
 #, c-format
 msgid "Restoring database schemas in the new cluster"
 msgstr "Restaurando esquemas de bases de datos en el clúster nuevo"
 
-#: pg_upgrade.c:528
+#: pg_upgrade.c:605
 #, c-format
 msgid "Deleting files from new %s"
 msgstr "Eliminando archivos del nuevo %s"
 
-#: pg_upgrade.c:532
-#, c-format
-msgid "could not delete directory \"%s\"\n"
+#: pg_upgrade.c:609
+#, fuzzy, c-format
+#| msgid "could not delete directory \"%s\"\n"
+msgid "could not delete directory \"%s\""
 msgstr "no se pudo eliminar directorio «%s»\n"
 
-#: pg_upgrade.c:551
+#: pg_upgrade.c:628
 #, c-format
 msgid "Copying old %s to new server"
 msgstr "Copiando el %s antiguo al nuevo servidor"
 
-#: pg_upgrade.c:577
+#: pg_upgrade.c:654
 #, c-format
 msgid "Setting oldest XID for new cluster"
 msgstr "Estableciendo XID más antiguo para el nuevo clúster"
 
-#: pg_upgrade.c:585
+#: pg_upgrade.c:662
 #, 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:615
+#: pg_upgrade.c:692
 #, 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:639
+#: pg_upgrade.c:716
 #, 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:659
+#: pg_upgrade.c:736
 #, c-format
 msgid "Resetting WAL archives"
 msgstr "Reseteando los archivos de WAL"
 
-#: pg_upgrade.c:702
+#: pg_upgrade.c:779
 #, 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:704
+#: pg_upgrade.c:781
 #, c-format
 msgid "Setting minmxid counter in new cluster"
 msgstr "Seteando contador minmxid en el clúster nuevo"
 
-#: relfilenode.c:35
+#: relfilenumber.c:35
 #, c-format
 msgid "Cloning user relation files"
 msgstr "Clonando archivos de relaciones de usuario"
 
-#: relfilenode.c:38
+#: relfilenumber.c:38
 #, c-format
 msgid "Copying user relation files"
 msgstr "Copiando archivos de relaciones de usuario"
 
-#: relfilenode.c:41
+#: relfilenumber.c:41
 #, c-format
 msgid "Linking user relation files"
 msgstr "Enlazando archivos de relaciones de usuario"
 
-#: relfilenode.c:115
-#, c-format
-msgid "old database \"%s\" not found in the new cluster\n"
+#: relfilenumber.c:115
+#, fuzzy, c-format
+#| msgid "old database \"%s\" not found in the new cluster\n"
+msgid "old database \"%s\" not found in the new cluster"
 msgstr "la base de datos «%s» no se encontró en el clúster nuevo\n"
 
-#: relfilenode.c:218
-#, c-format
-msgid "error while checking for file existence \"%s.%s\" (\"%s\" to \"%s\"): %s\n"
+#: relfilenumber.c:218
+#, fuzzy, c-format
+#| msgid "error while checking for file existence \"%s.%s\" (\"%s\" to \"%s\"): %s\n"
+msgid "error while checking for file existence \"%s.%s\" (\"%s\" to \"%s\"): %s"
 msgstr "error mientras se comprobaba la existencia del archivo «%s.%s» («%s» a «%s»); %s\n"
 
-#: relfilenode.c:236
-#, c-format
-msgid "rewriting \"%s\" to \"%s\"\n"
+#: relfilenumber.c:236
+#, fuzzy, c-format
+#| msgid "rewriting \"%s\" to \"%s\"\n"
+msgid "rewriting \"%s\" to \"%s\""
 msgstr "reescribiendo «%s» a «%s»\n"
 
-#: relfilenode.c:244
-#, c-format
-msgid "cloning \"%s\" to \"%s\"\n"
+#: relfilenumber.c:244
+#, fuzzy, c-format
+#| msgid "cloning \"%s\" to \"%s\"\n"
+msgid "cloning \"%s\" to \"%s\""
 msgstr "clonando «%s» a «%s»\n"
 
-#: relfilenode.c:249
-#, c-format
-msgid "copying \"%s\" to \"%s\"\n"
+#: relfilenumber.c:249
+#, fuzzy, c-format
+#| msgid "copying \"%s\" to \"%s\"\n"
+msgid "copying \"%s\" to \"%s\""
 msgstr "copiando «%s» a «%s»\n"
 
-#: relfilenode.c:254
-#, c-format
-msgid "linking \"%s\" to \"%s\"\n"
+#: relfilenumber.c:254
+#, fuzzy, c-format
+#| msgid "linking \"%s\" to \"%s\"\n"
+msgid "linking \"%s\" to \"%s\""
 msgstr "enlazando «%s» a «%s»\n"
 
-#: server.c:39 server.c:143 util.c:220 util.c:250
+#: server.c:39 server.c:143 util.c:248 util.c:278
 #, c-format
 msgid "Failure, exiting\n"
 msgstr "Falló, saliendo\n"
 
 #: server.c:133
-#, c-format
-msgid "executing: %s\n"
+#, fuzzy, c-format
+#| msgid "executing: %s\n"
+msgid "executing: %s"
 msgstr "ejecutando: %s\n"
 
 #: server.c:139
@@ -1620,16 +1870,18 @@ msgstr ""
 "%s"
 
 #: server.c:169
-#, c-format
-msgid "could not open version file \"%s\": %m\n"
+#, fuzzy, c-format
+#| msgid "could not open version file \"%s\": %m\n"
+msgid "could not open version file \"%s\": %m"
 msgstr "no se pudo abrir el archivo de versión «%s»: %m\n"
 
 #: server.c:173
-#, c-format
-msgid "could not parse version file \"%s\"\n"
+#, fuzzy, c-format
+#| msgid "could not parse version file \"%s\"\n"
+msgid "could not parse version file \"%s\""
 msgstr "no se pudo interpretar el archivo de versión «%s»\n"
 
-#: server.c:291
+#: server.c:288
 #, c-format
 msgid ""
 "\n"
@@ -1638,84 +1890,94 @@ msgstr ""
 "\n"
 "%s"
 
-#: server.c:295
-#, c-format
+#: server.c:292
+#, fuzzy, c-format
+#| msgid ""
+#| "could not connect to source postmaster started with the command:\n"
+#| "%s\n"
 msgid ""
 "could not connect to source postmaster started with the command:\n"
-"%s\n"
+"%s"
 msgstr ""
 "no se pudo conectar al postmaster de origen iniciado con la orden:\n"
 "%s\n"
 
-#: server.c:299
-#, c-format
+#: server.c:296
+#, fuzzy, c-format
+#| msgid ""
+#| "could not connect to target postmaster started with the command:\n"
+#| "%s\n"
 msgid ""
 "could not connect to target postmaster started with the command:\n"
-"%s\n"
+"%s"
 msgstr ""
 "no se pudo conectar al postmaster de destino iniciado con la orden:\n"
 "%s\n"
 
-#: server.c:313
-#, c-format
-msgid "pg_ctl failed to start the source server, or connection failed\n"
+#: server.c:310
+#, fuzzy, c-format
+#| msgid "pg_ctl failed to start the source server, or connection failed\n"
+msgid "pg_ctl failed to start the source server, or connection failed"
 msgstr "pg_ctl no pudo iniciar el servidor de origen, o la conexión falló\n"
 
-#: server.c:315
-#, c-format
-msgid "pg_ctl failed to start the target server, or connection failed\n"
+#: server.c:312
+#, fuzzy, c-format
+#| msgid "pg_ctl failed to start the target server, or connection failed\n"
+msgid "pg_ctl failed to start the target server, or connection failed"
 msgstr "pg_ctl no pudo iniciar el servidor de destino, o la conexión falló\n"
 
-#: server.c:360
+#: server.c:357
 #, c-format
-msgid "out of memory\n"
-msgstr "memoria agotada\n"
+msgid "out of memory"
+msgstr "memoria agotada"
 
-#: server.c:373
-#, c-format
-msgid "libpq environment variable %s has a non-local server value: %s\n"
+#: server.c:370
+#, fuzzy, c-format
+#| msgid "libpq environment variable %s has a non-local server value: %s\n"
+msgid "libpq environment variable %s has a non-local server value: %s"
 msgstr "la variable de ambiente libpq %s tiene un valor de servidor no-local: %s\n"
 
 #: tablespace.c:28
-#, c-format
+#, fuzzy, c-format
+#| msgid ""
+#| "Cannot upgrade to/from the same system catalog version when\n"
+#| "using tablespaces.\n"
 msgid ""
 "Cannot upgrade to/from the same system catalog version when\n"
-"using tablespaces.\n"
+"using tablespaces."
 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:83
-#, c-format
-msgid "tablespace directory \"%s\" does not exist\n"
+#, fuzzy, c-format
+#| msgid "tablespace directory \"%s\" does not exist\n"
+msgid "tablespace directory \"%s\" does not exist"
 msgstr "el directorio de tablespace «%s» no existe\n"
 
 #: tablespace.c:87
-#, c-format
-msgid "could not stat tablespace directory \"%s\": %s\n"
+#, fuzzy, c-format
+#| msgid "could not stat tablespace directory \"%s\": %s\n"
+msgid "could not stat tablespace directory \"%s\": %s"
 msgstr "no se pudo hace stat al directorio de tablespace «%s»: %s\n"
 
 #: tablespace.c:92
-#, c-format
-msgid "tablespace path \"%s\" is not a directory\n"
+#, fuzzy, c-format
+#| msgid "tablespace path \"%s\" is not a directory\n"
+msgid "tablespace path \"%s\" is not a directory"
 msgstr "la ruta de tablespace «%s» no es un directorio\n"
 
-#: util.c:52 util.c:55 util.c:127 util.c:160
+#: util.c:53 util.c:56 util.c:139 util.c:170 util.c:172
 #, c-format
 msgid "%-*s"
 msgstr "%-*s"
 
-#: util.c:95
-#, c-format
-msgid "could not access directory \"%s\": %m\n"
-msgstr "no se pudo acceder al directorio «%s»: %m\n"
-
-#: util.c:158
+#: util.c:107
 #, c-format
-msgid "%-*s\n"
-msgstr "%-*s\n"
+msgid "could not access directory \"%s\": %m"
+msgstr "no se pudo acceder al directorio «%s»: %m"
 
-#: util.c:259
+#: util.c:287
 #, c-format
 msgid "ok"
 msgstr "éxito"
@@ -1726,7 +1988,16 @@ msgid "Checking for incompatible \"line\" data type"
 msgstr "Verificando datos de usuario de tipo «line» incompatible"
 
 #: version.c:193
-#, c-format
+#, fuzzy, c-format
+#| msgid ""
+#| "Your installation contains the \"line\" data type in user tables.\n"
+#| "This data type changed its internal and input/output format\n"
+#| "between your old and new versions so this\n"
+#| "cluster cannot currently be upgraded.  You can\n"
+#| "drop the problem columns and restart the upgrade.\n"
+#| "A list of the problem columns is in the file:\n"
+#| "    %s\n"
+#| "\n"
 msgid ""
 "Your installation contains the \"line\" data type in user tables.\n"
 "This data type changed its internal and input/output format\n"
@@ -1734,8 +2005,7 @@ msgid ""
 "cluster cannot currently be upgraded.  You can\n"
 "drop the problem columns and restart the upgrade.\n"
 "A list of the problem columns is in the file:\n"
-"    %s\n"
-"\n"
+"    %s"
 msgstr ""
 "Su instalación contiene el tipo de dato «line» en tablas de usuario.  Este\n"
 "tipo de dato cambió su formato interno y de entrada/salida entre las\n"
@@ -1752,15 +2022,22 @@ msgid "Checking for invalid \"unknown\" user columns"
 msgstr "Verificando columnas de usuario del tipo no válido «unknown»"
 
 #: version.c:233
-#, c-format
+#, fuzzy, c-format
+#| msgid ""
+#| "Your installation contains the \"unknown\" data type in user tables.\n"
+#| "This data type is no longer allowed in tables, so this\n"
+#| "cluster cannot currently be upgraded.  You can\n"
+#| "drop the problem columns and restart the upgrade.\n"
+#| "A list of the problem columns is in the file:\n"
+#| "    %s\n"
+#| "\n"
 msgid ""
 "Your installation contains the \"unknown\" data type in user tables.\n"
 "This data type is no longer allowed in tables, so this\n"
 "cluster cannot currently be upgraded.  You can\n"
 "drop the problem columns and restart the upgrade.\n"
 "A list of the problem columns is in the file:\n"
-"    %s\n"
-"\n"
+"    %s"
 msgstr ""
 "Su instalación contiene el tipo «unknown» en tablas de usuario.\n"
 "Este tipo ya no es permitido en tablas,\n"
@@ -1781,14 +2058,20 @@ msgid "warning"
 msgstr "atención"
 
 #: version.c:337
-#, c-format
+#, fuzzy, c-format
+#| msgid ""
+#| "\n"
+#| "Your installation contains hash indexes.  These indexes have different\n"
+#| "internal formats between your old and new clusters, so they must be\n"
+#| "reindexed with the REINDEX command.  After upgrading, you will be given\n"
+#| "REINDEX instructions.\n"
+#| "\n"
 msgid ""
 "\n"
 "Your installation contains hash indexes.  These indexes have different\n"
 "internal formats between your old and new clusters, so they must be\n"
 "reindexed with the REINDEX command.  After upgrading, you will be given\n"
-"REINDEX instructions.\n"
-"\n"
+"REINDEX instructions."
 msgstr ""
 "\n"
 "Su instalación contiene índices hash. Estos índices tienen formato interno\n"
@@ -1798,7 +2081,16 @@ msgstr ""
 "\n"
 
 #: version.c:343
-#, c-format
+#, fuzzy, c-format
+#| msgid ""
+#| "\n"
+#| "Your installation contains hash indexes.  These indexes have different\n"
+#| "internal formats between your old and new clusters, so they must be\n"
+#| "reindexed with the REINDEX command.  The file\n"
+#| "    %s\n"
+#| "when executed by psql by the database superuser will recreate all invalid\n"
+#| "indexes; until then, none of these indexes will be used.\n"
+#| "\n"
 msgid ""
 "\n"
 "Your installation contains hash indexes.  These indexes have different\n"
@@ -1806,8 +2098,7 @@ msgid ""
 "reindexed with the REINDEX command.  The file\n"
 "    %s\n"
 "when executed by psql by the database superuser will recreate all invalid\n"
-"indexes; until then, none of these indexes will be used.\n"
-"\n"
+"indexes; until then, none of these indexes will be used."
 msgstr ""
 "\n"
 "Su instalación contiene índices hash. Estos índices tienen formato interno\n"
@@ -1824,15 +2115,22 @@ msgid "Checking for invalid \"sql_identifier\" user columns"
 msgstr "Verificando columnas de usuario del tipo «sql_identifier»"
 
 #: version.c:379
-#, c-format
+#, fuzzy, c-format
+#| msgid ""
+#| "Your installation contains the \"sql_identifier\" data type in user tables.\n"
+#| "The on-disk format for this data type has changed, so this\n"
+#| "cluster cannot currently be upgraded.  You can\n"
+#| "drop the problem columns 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"
 "The on-disk format for this data type has changed, so this\n"
 "cluster cannot currently be upgraded.  You can\n"
 "drop the problem columns and restart the upgrade.\n"
 "A list of the problem columns is in the file:\n"
-"    %s\n"
-"\n"
+"    %s"
 msgstr ""
 "Su instalación contiene el tipo de dato «sql_identifier» en tablas de usuario.\n"
 "El formato en disco para este tipo de dato ha cambiado, por lo que\n"
@@ -1842,26 +2140,33 @@ msgstr ""
 "    %s\n"
 "\n"
 
-#: version.c:403
+#: version.c:402
 #, c-format
 msgid "Checking for extension updates"
 msgstr "Verificando actualizaciones para extensiones"
 
-#: version.c:455
+#: version.c:450
 #, c-format
 msgid "notice"
 msgstr "aviso"
 
-#: version.c:456
-#, c-format
+#: version.c:451
+#, fuzzy, c-format
+#| msgid ""
+#| "\n"
+#| "Your installation contains extensions that should be updated\n"
+#| "with the ALTER EXTENSION command.  The file\n"
+#| "    %s\n"
+#| "when executed by psql by the database superuser will update\n"
+#| "these extensions.\n"
+#| "\n"
 msgid ""
 "\n"
 "Your installation contains extensions that should be updated\n"
 "with the ALTER EXTENSION command.  The file\n"
 "    %s\n"
 "when executed by psql by the database superuser will update\n"
-"these extensions.\n"
-"\n"
+"these extensions."
 msgstr ""
 "\n"
 "Su instalación tiene extensiones que deben ser actualizadas\n"
@@ -1870,3 +2175,99 @@ msgstr ""
 "cuando se ejecute en psql con el superusuario de la base de datos\n"
 "actualizará estas extensiones.\n"
 "\n"
+
+#, 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"
+
+#, 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"
+
+#, 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"
+
+#, c-format
+#~ msgid "locale providers for database \"%s\" do not match:  old \"%s\", new \"%s\"\n"
+#~ msgstr "proveedores de configuración regional de la base de datos «%s» no coinciden: antigua «%s», nueva «%s»\n"
+
+#, c-format
+#~ msgid "ICU locale values for database \"%s\" do not match:  old \"%s\", new \"%s\"\n"
+#~ msgstr "valores de configuración regional ICU de la base de datos «%s» no coinciden: antigua «%s», nueva «%s»\n"
+
+#, c-format
+#~ msgid "could not open file \"%s\": %s\n"
+#~ msgstr "no se pudo abrir el archivo «%s»: %s\n"
+
+#, 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"
+
+#, 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"
+
+#, c-format
+#~ msgid "failed to get the current locale\n"
+#~ msgstr "no se pudo obtener el «locale» actual\n"
+
+#, c-format
+#~ msgid "failed to get system locale name for \"%s\"\n"
+#~ msgstr "no se pudo obtener el nombre del «locale» para «%s»\n"
+
+#, c-format
+#~ msgid "failed to restore old locale \"%s\"\n"
+#~ msgstr "no se pudo restaurar el locale antiguo «%s»\n"
+
+#, c-format
+#~ msgid "Unable to rename %s to %s.\n"
+#~ msgstr "No se pudo renombrar %s a %s.\n"
+
+#, c-format
+#~ msgid "%s\n"
+#~ msgstr "%s\n"
+
+#, c-format
+#~ msgid "could not open log file \"%s\": %m\n"
+#~ msgstr "no se pudo abrir el archivo de registro «%s»: %m\n"
+
+#, 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"
+
+#, 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"
+
+#, c-format
+#~ msgid ""
+#~ "\n"
+#~ "\n"
+#~ msgstr ""
+#~ "\n"
+#~ "\n"
+
+#, c-format
+#~ msgid "too many command-line arguments (first is \"%s\")\n"
+#~ msgstr "demasiados argumentos en la línea de órdenes (el primero es «%s»)\n"
+
+#, c-format
+#~ msgid "%s() failed: %s\n"
+#~ msgstr "%s() falló: %s\n"
+
+#, c-format
+#~ msgid "could not create directory \"%s\": %m\n"
+#~ msgstr "no se pudo crear el directorio «%s»: %m\n"
+
+#, c-format
+#~ msgid "out of memory\n"
+#~ msgstr "memoria agotada\n"
+
+#, c-format
+#~ msgid "could not access directory \"%s\": %m\n"
+#~ msgstr "no se pudo acceder al directorio «%s»: %m\n"
+
+#, c-format
+#~ msgid "%-*s\n"
+#~ msgstr "%-*s\n"
index df8b3e8b06230fa5da4d28444f63806e94d7269e..2263f07af3772756172cc48b4307fd97a809b5d5 100644 (file)
@@ -8,7 +8,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: pg_verifybackup (PostgreSQL) 15\n"
 "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n"
-"POT-Creation-Date: 2022-09-24 23:17+0000\n"
+"POT-Creation-Date: 2023-05-09 09:17+0000\n"
 "PO-Revision-Date: 2022-10-20 09:06+0200\n"
 "Last-Translator: Carlos Chapi <carloswaldo@babelruins.org>\n"
 "Language-Team: PgSQL-es-ayuda <pgsql-es-ayuda@lists.postgresql.org>\n"
@@ -40,92 +40,98 @@ msgid "hint: "
 msgstr "consejo: "
 
 #: ../../common/fe_memutils.c:35 ../../common/fe_memutils.c:75
-#: ../../common/fe_memutils.c:98 ../../common/fe_memutils.c:162
+#: ../../common/fe_memutils.c:98 ../../common/fe_memutils.c:161
 #, c-format
 msgid "out of memory\n"
 msgstr "memoria agotada\n"
 
-#: ../../common/fe_memutils.c:92 ../../common/fe_memutils.c:154
+#: ../../common/fe_memutils.c:92 ../../common/fe_memutils.c:153
 #, c-format
 msgid "cannot duplicate null pointer (internal error)\n"
 msgstr "no se puede duplicar un puntero nulo (error interno)\n"
 
-#: ../../common/jsonapi.c:1075
+#: ../../common/jsonapi.c:1144
 #, c-format
 msgid "Escape sequence \"\\%s\" is invalid."
 msgstr "La secuencia de escape «%s» no es válida."
 
-#: ../../common/jsonapi.c:1078
+#: ../../common/jsonapi.c:1147
 #, c-format
 msgid "Character with value 0x%02x must be escaped."
 msgstr "Los caracteres con valor 0x%02x deben ser escapados."
 
-#: ../../common/jsonapi.c:1081
+#: ../../common/jsonapi.c:1150
 #, c-format
 msgid "Expected end of input, but found \"%s\"."
 msgstr "Se esperaba el fin de la entrada, se encontró «%s»."
 
-#: ../../common/jsonapi.c:1084
+#: ../../common/jsonapi.c:1153
 #, c-format
 msgid "Expected array element or \"]\", but found \"%s\"."
 msgstr "Se esperaba un elemento de array o «]», se encontró «%s»."
 
-#: ../../common/jsonapi.c:1087
+#: ../../common/jsonapi.c:1156
 #, c-format
 msgid "Expected \",\" or \"]\", but found \"%s\"."
 msgstr "Se esperaba «,» o «]», se encontró «%s»."
 
-#: ../../common/jsonapi.c:1090
+#: ../../common/jsonapi.c:1159
 #, c-format
 msgid "Expected \":\", but found \"%s\"."
 msgstr "Se esperaba «:», se encontró «%s»."
 
-#: ../../common/jsonapi.c:1093
+#: ../../common/jsonapi.c:1162
 #, c-format
 msgid "Expected JSON value, but found \"%s\"."
 msgstr "Se esperaba un valor JSON, se encontró «%s»."
 
-#: ../../common/jsonapi.c:1096
+#: ../../common/jsonapi.c:1165
 msgid "The input string ended unexpectedly."
 msgstr "La cadena de entrada terminó inesperadamente."
 
-#: ../../common/jsonapi.c:1098
+#: ../../common/jsonapi.c:1167
 #, c-format
 msgid "Expected string or \"}\", but found \"%s\"."
 msgstr "Se esperaba una cadena o «}», se encontró «%s»."
 
-#: ../../common/jsonapi.c:1101
+#: ../../common/jsonapi.c:1170
 #, c-format
 msgid "Expected \",\" or \"}\", but found \"%s\"."
 msgstr "Se esperaba «,» o «}», se encontró «%s»."
 
-#: ../../common/jsonapi.c:1104
+#: ../../common/jsonapi.c:1173
 #, c-format
 msgid "Expected string, but found \"%s\"."
 msgstr "Se esperaba una cadena, se encontró «%s»."
 
-#: ../../common/jsonapi.c:1107
+#: ../../common/jsonapi.c:1176
 #, c-format
 msgid "Token \"%s\" is invalid."
 msgstr "El elemento «%s» no es válido."
 
-#: ../../common/jsonapi.c:1110
+#: ../../common/jsonapi.c:1179
 msgid "\\u0000 cannot be converted to text."
 msgstr "\\u0000 no puede ser convertido a text."
 
-#: ../../common/jsonapi.c:1112
+#: ../../common/jsonapi.c:1181
 msgid "\"\\u\" must be followed by four hexadecimal digits."
 msgstr "«\\u» debe ser seguido por cuatro dígitos hexadecimales."
 
-#: ../../common/jsonapi.c:1115
+#: ../../common/jsonapi.c:1184
 msgid "Unicode escape values cannot be used for code point values above 007F when the encoding is not UTF8."
 msgstr "Los valores de escape Unicode no se pueden utilizar para valores de código superiores a 007F cuando la codificación no es UTF8."
 
-#: ../../common/jsonapi.c:1117
+#: ../../common/jsonapi.c:1187
+#, fuzzy, c-format
+#| msgid "Unicode escape values cannot be used for code point values above 007F when the encoding is not UTF8."
+msgid "Unicode escape value could not be translated to the server's encoding %s."
+msgstr "Los valores de escape Unicode no se pueden utilizar para valores de código superiores a 007F cuando la codificación no es UTF8."
+
+#: ../../common/jsonapi.c:1190
 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:1119
+#: ../../common/jsonapi.c:1192
 msgid "Unicode low surrogate must follow a high surrogate."
 msgstr "Un «low-surrogate» Unicode debe seguir a un «high-surrogate»."
 
@@ -142,283 +148,294 @@ msgstr "el manifiesto terminó inesperadamente"
 msgid "unexpected object start"
 msgstr "inicio de objeto inesperado"
 
-#: parse_manifest.c:224
+#: parse_manifest.c:226
 msgid "unexpected object end"
 msgstr "fin de objeto inesperado"
 
-#: parse_manifest.c:251
+#: parse_manifest.c:255
 msgid "unexpected array start"
 msgstr "inicio de array inesperado"
 
-#: parse_manifest.c:274
+#: parse_manifest.c:280
 msgid "unexpected array end"
 msgstr "fin de array inesperado"
 
-#: parse_manifest.c:299
+#: parse_manifest.c:307
 msgid "expected version indicator"
 msgstr "se esperaba indicador de versión"
 
-#: parse_manifest.c:328
+#: parse_manifest.c:336
 msgid "unrecognized top-level field"
 msgstr "campo de nivel superior no reconocido"
 
-#: parse_manifest.c:347
+#: parse_manifest.c:355
 msgid "unexpected file field"
 msgstr "campo de archivo inesperado"
 
-#: parse_manifest.c:361
+#: parse_manifest.c:369
 msgid "unexpected WAL range field"
 msgstr "campo de rango de WAL inesperado"
 
-#: parse_manifest.c:367
+#: parse_manifest.c:375
 msgid "unexpected object field"
 msgstr "campo de objeto inesperado"
 
-#: parse_manifest.c:397
+#: parse_manifest.c:407
 msgid "unexpected manifest version"
 msgstr "versión de manifiesto inesperada"
 
-#: parse_manifest.c:448
+#: parse_manifest.c:458
 msgid "unexpected scalar"
 msgstr "escalar inesperado"
 
-#: parse_manifest.c:472
+#: parse_manifest.c:484
 msgid "missing path name"
 msgstr "ruta de archivo faltante"
 
-#: parse_manifest.c:475
+#: parse_manifest.c:487
 msgid "both path name and encoded path name"
 msgstr "hay ambos ruta de archivo (path name) y ruta codificada (encoded path name)"
 
-#: parse_manifest.c:477
+#: parse_manifest.c:489
 msgid "missing size"
 msgstr "tamaño faltante"
 
-#: parse_manifest.c:480
+#: parse_manifest.c:492
 msgid "checksum without algorithm"
 msgstr "suma de comprobación sin algoritmo"
 
-#: parse_manifest.c:494
+#: parse_manifest.c:506
 msgid "could not decode file name"
 msgstr "no se pudo decodificar el nombre del archivo"
 
-#: parse_manifest.c:504
+#: parse_manifest.c:516
 msgid "file size is not an integer"
 msgstr "el tamaño del archivo no es un número entero"
 
-#: parse_manifest.c:510
+#: parse_manifest.c:522
 #, c-format
 msgid "unrecognized checksum algorithm: \"%s\""
 msgstr "algoritmo de suma de comprobación no reconocido: \"%s\""
 
-#: parse_manifest.c:529
+#: parse_manifest.c:541
 #, c-format
 msgid "invalid checksum for file \"%s\": \"%s\""
 msgstr "suma de comprobación no válida para el archivo \"%s\": \"%s\""
 
-#: parse_manifest.c:572
+#: parse_manifest.c:584
 msgid "missing timeline"
 msgstr "falta el timeline"
 
-#: parse_manifest.c:574
+#: parse_manifest.c:586
 msgid "missing start LSN"
 msgstr "falta el LSN de inicio"
 
-#: parse_manifest.c:576
+#: parse_manifest.c:588
 msgid "missing end LSN"
 msgstr "falta el LSN de término"
 
-#: parse_manifest.c:582
+#: parse_manifest.c:594
 msgid "timeline is not an integer"
 msgstr "el timeline no es un número entero"
 
-#: parse_manifest.c:585
+#: parse_manifest.c:597
 msgid "could not parse start LSN"
 msgstr "no se pudo interpretar el LSN de inicio"
 
-#: parse_manifest.c:588
+#: parse_manifest.c:600
 msgid "could not parse end LSN"
 msgstr "no se pudo interpretar el LSN de término"
 
-#: parse_manifest.c:649
+#: parse_manifest.c:661
 msgid "expected at least 2 lines"
 msgstr "esperado al menos 2 líneas"
 
-#: parse_manifest.c:652
+#: parse_manifest.c:664
 msgid "last line not newline-terminated"
 msgstr "última línea no termina en nueva línea"
 
-#: parse_manifest.c:657
+#: parse_manifest.c:669
 #, c-format
 msgid "out of memory"
 msgstr "memoria agotada"
 
-#: parse_manifest.c:659
+#: parse_manifest.c:671
 #, c-format
 msgid "could not initialize checksum of manifest"
 msgstr "no se pudo inicializar la suma de verificación del manifiesto"
 
-#: parse_manifest.c:661
+#: parse_manifest.c:673
 #, c-format
 msgid "could not update checksum of manifest"
 msgstr "no se pudo actualizar la suma de verificación del manifiesto"
 
-#: parse_manifest.c:664
+#: parse_manifest.c:676
 #, c-format
 msgid "could not finalize checksum of manifest"
 msgstr "no se pudo finalizar la suma de verificación del manifiesto"
 
-#: parse_manifest.c:668
+#: parse_manifest.c:680
 #, c-format
 msgid "manifest has no checksum"
 msgstr "el manifiesto no tiene suma de comprobación"
 
-#: parse_manifest.c:672
+#: parse_manifest.c:684
 #, c-format
 msgid "invalid manifest checksum: \"%s\""
 msgstr "suma de comprobación de manifiesto no válida: \"%s\""
 
-#: parse_manifest.c:676
+#: parse_manifest.c:688
 #, c-format
 msgid "manifest checksum mismatch"
 msgstr "discordancia en la suma de comprobación del manifiesto"
 
-#: parse_manifest.c:691
+#: parse_manifest.c:703
 #, c-format
 msgid "could not parse backup manifest: %s"
 msgstr "no se pudo analizar el manifiesto de la copia de seguridad: %s"
 
-#: pg_verifybackup.c:256 pg_verifybackup.c:265 pg_verifybackup.c:276
+#: pg_verifybackup.c:273 pg_verifybackup.c:282 pg_verifybackup.c:293
 #, c-format
 msgid "Try \"%s --help\" for more information."
 msgstr "Pruebe «%s --help» para mayor información."
 
-#: pg_verifybackup.c:264
+#: pg_verifybackup.c:281
 #, c-format
 msgid "no backup directory specified"
 msgstr "no fue especificado el directorio de respaldo"
 
-#: pg_verifybackup.c:274
+#: pg_verifybackup.c:291
 #, 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_verifybackup.c:297
+#: pg_verifybackup.c:299
+#, c-format
+msgid "cannot specify both %s and %s"
+msgstr "no se puede especificar %s junto con %s"
+
+#: pg_verifybackup.c:319
 #, c-format
 msgid "program \"%s\" is needed by %s but was not found in the same directory as \"%s\""
 msgstr "el programa «%s» es requerido por %s, pero no pudo encontrarlo en el mismo directorio que «%s»"
 
-#: pg_verifybackup.c:300
+#: pg_verifybackup.c:322
 #, c-format
 msgid "program \"%s\" was found by \"%s\" but was not the same version as %s"
 msgstr "el programa «%s» fue encontrado por «%s», pero no es de la misma versión que %s"
 
-#: pg_verifybackup.c:356
+#: pg_verifybackup.c:378
 #, c-format
 msgid "backup successfully verified\n"
 msgstr "copia de seguridad verificada correctamente\n"
 
-#: pg_verifybackup.c:382 pg_verifybackup.c:718
+#: pg_verifybackup.c:404 pg_verifybackup.c:748
 #, c-format
 msgid "could not open file \"%s\": %m"
 msgstr "no se pudo abrir el archivo «%s»: %m"
 
-#: pg_verifybackup.c:386
+#: pg_verifybackup.c:408
 #, c-format
 msgid "could not stat file \"%s\": %m"
 msgstr "no se pudo hacer stat al archivo «%s»: %m"
 
-#: pg_verifybackup.c:406 pg_verifybackup.c:745
+#: pg_verifybackup.c:428 pg_verifybackup.c:779
 #, c-format
 msgid "could not read file \"%s\": %m"
 msgstr "no se pudo leer el archivo «%s»: %m"
 
-#: pg_verifybackup.c:409
+#: pg_verifybackup.c:431
 #, c-format
 msgid "could not read file \"%s\": read %d of %lld"
 msgstr "no se pudo leer el archivo «%s»: leídos %d de %lld"
 
-#: pg_verifybackup.c:469
+#: pg_verifybackup.c:491
 #, c-format
 msgid "duplicate path name in backup manifest: \"%s\""
 msgstr "nombre de ruta duplicado en el manifiesto de la copia de seguridad: \"%s\""
 
-#: pg_verifybackup.c:532 pg_verifybackup.c:539
+#: pg_verifybackup.c:554 pg_verifybackup.c:561
 #, c-format
 msgid "could not open directory \"%s\": %m"
 msgstr "no se pudo abrir el directorio «%s»: %m"
 
-#: pg_verifybackup.c:571
+#: pg_verifybackup.c:593
 #, c-format
 msgid "could not close directory \"%s\": %m"
 msgstr "no se pudo abrir el directorio «%s»: %m"
 
-#: pg_verifybackup.c:591
+#: pg_verifybackup.c:613
 #, c-format
 msgid "could not stat file or directory \"%s\": %m"
 msgstr "no se pudo hacer stat al archivo o directorio «%s»: %m"
 
-#: pg_verifybackup.c:614
+#: pg_verifybackup.c:636
 #, c-format
 msgid "\"%s\" is not a file or directory"
 msgstr "\"%s\" no es un archivo o directorio"
 
-#: pg_verifybackup.c:624
+#: pg_verifybackup.c:646
 #, c-format
 msgid "\"%s\" is present on disk but not in the manifest"
 msgstr "\"%s\" está presente en el disco pero no en el manifiesto"
 
-#: pg_verifybackup.c:636
+#: pg_verifybackup.c:658
 #, c-format
 msgid "\"%s\" has size %lld on disk but size %zu in the manifest"
 msgstr "\"%s\" tiene un tamaño %lld en el disco pero un tamaño %zu en el manifiesto"
 
-#: pg_verifybackup.c:663
+#: pg_verifybackup.c:689
 #, c-format
 msgid "\"%s\" is present in the manifest but not on disk"
 msgstr "\"%s\" está presente en el manifiesto pero no en el disco"
 
-#: pg_verifybackup.c:726
+#: pg_verifybackup.c:756
 #, c-format
 msgid "could not initialize checksum of file \"%s\""
 msgstr "no se pudo inicializar la suma de verificación para el archivo «%s»"
 
-#: pg_verifybackup.c:738
+#: pg_verifybackup.c:768
 #, c-format
 msgid "could not update checksum of file \"%s\""
 msgstr "no se pudo actualizar la suma de verificación para el archivo «%s»"
 
-#: pg_verifybackup.c:751
+#: pg_verifybackup.c:785
 #, c-format
 msgid "could not close file \"%s\": %m"
 msgstr "no se pudo cerrar el archivo «%s»: %m"
 
-#: pg_verifybackup.c:770
+#: pg_verifybackup.c:804
 #, c-format
 msgid "file \"%s\" should contain %zu bytes, but read %zu bytes"
 msgstr "el archivo \"%s\" debe contener %zu bytes, pero se leyeron %zu bytes"
 
-#: pg_verifybackup.c:780
+#: pg_verifybackup.c:814
 #, c-format
 msgid "could not finalize checksum of file \"%s\""
 msgstr "no se pudo finalizar la suma de verificación para el archivo «%s»"
 
-#: pg_verifybackup.c:788
+#: pg_verifybackup.c:822
 #, c-format
 msgid "file \"%s\" has checksum of length %d, but expected %d"
 msgstr "el archivo \"%s\" tiene una suma de comprobación de longitud %d, pero se esperaba %d"
 
-#: pg_verifybackup.c:792
+#: pg_verifybackup.c:826
 #, c-format
 msgid "checksum mismatch for file \"%s\""
 msgstr "no coincide la suma de comprobación para el archivo \"%s\""
 
-#: pg_verifybackup.c:816
+#: pg_verifybackup.c:851
 #, c-format
 msgid "WAL parsing failed for timeline %u"
 msgstr "Error al interpretar el WAL para el timeline %u"
 
-#: pg_verifybackup.c:902
+#: pg_verifybackup.c:965
+#, fuzzy, c-format
+#| msgid "%*s/%s kB (%d%%) copied"
+msgid "%*s/%s kB (%d%%) verified"
+msgstr "%*s/%s kB (%d%%) copiados"
+
+#: pg_verifybackup.c:982
 #, c-format
 msgid ""
 "%s verifies a backup against the backup manifest.\n"
@@ -427,7 +444,7 @@ msgstr ""
 "%s verifica una copia de seguridad con el fichero de manifiesto de la copia de seguridad.\n"
 "\n"
 
-#: pg_verifybackup.c:903
+#: pg_verifybackup.c:983
 #, c-format
 msgid ""
 "Usage:\n"
@@ -438,57 +455,63 @@ msgstr ""
 "  %s [OPCIÓN]... BACKUPDIR\n"
 "\n"
 
-#: pg_verifybackup.c:904
+#: pg_verifybackup.c:984
 #, c-format
 msgid "Options:\n"
 msgstr "Opciones:\n"
 
-#: pg_verifybackup.c:905
+#: pg_verifybackup.c:985
 #, c-format
 msgid "  -e, --exit-on-error         exit immediately on error\n"
 msgstr "  -e, --exit-on-error         salir inmediatamente en caso de error\n"
 
-#: pg_verifybackup.c:906
+#: pg_verifybackup.c:986
 #, c-format
 msgid "  -i, --ignore=RELATIVE_PATH  ignore indicated path\n"
 msgstr "  -i, --ignore=RELATIVE_PATH  ignorar la ruta indicada\n"
 
-#: pg_verifybackup.c:907
+#: pg_verifybackup.c:987
 #, c-format
 msgid "  -m, --manifest-path=PATH    use specified path for manifest\n"
 msgstr "  -m, --manifest-path=PATH    usar la ruta especificada para el manifiesto\n"
 
-#: pg_verifybackup.c:908
+#: pg_verifybackup.c:988
 #, c-format
 msgid "  -n, --no-parse-wal          do not try to parse WAL files\n"
 msgstr "  -n, --no-parse-wal          no intentar analizar archivos WAL\n"
 
-#: pg_verifybackup.c:909
+#: pg_verifybackup.c:989
+#, fuzzy, c-format
+#| msgid "  -P, --progress           show progress information\n"
+msgid "  -P, --progress              show progress information\n"
+msgstr "  -P, --progress           mostrar información de progreso\n"
+
+#: pg_verifybackup.c:990
 #, c-format
 msgid "  -q, --quiet                 do not print any output, except for errors\n"
 msgstr "  -q, --quiet                 no escribir ningún mensaje, excepto errores\n"
 
-#: pg_verifybackup.c:910
+#: pg_verifybackup.c:991
 #, c-format
 msgid "  -s, --skip-checksums        skip checksum verification\n"
 msgstr "  -s, --skip-checksums        omitir la verificación de la suma de comprobación\n"
 
-#: pg_verifybackup.c:911
+#: pg_verifybackup.c:992
 #, c-format
 msgid "  -w, --wal-directory=PATH    use specified path for WAL files\n"
 msgstr "  -w, --wal-directory=PATH    utilizar la ruta especificada para los archivos WAL\n"
 
-#: pg_verifybackup.c:912
+#: pg_verifybackup.c:993
 #, c-format
 msgid "  -V, --version               output version information, then exit\n"
 msgstr "  -V, --version               mostrar la información de la versión, luego salir\n"
 
-#: pg_verifybackup.c:913
+#: pg_verifybackup.c:994
 #, c-format
 msgid "  -?, --help                  show this help, then exit\n"
 msgstr "  -?, --help                  muestra esta ayuda, luego salir\n"
 
-#: pg_verifybackup.c:914
+#: pg_verifybackup.c:995
 #, c-format
 msgid ""
 "\n"
@@ -497,7 +520,7 @@ msgstr ""
 "\n"
 "Reporte errores a <%s>.\n"
 
-#: pg_verifybackup.c:915
+#: pg_verifybackup.c:996
 #, c-format
 msgid "%s home page: <%s>\n"
 msgstr "Sitio web de %s: <%s>\n"
index c74b938bf3c1c86f8316f56026bf256a2e685a6c..eb1251b9a46ab2cac2efa971e0e6ab663ead043b 100644 (file)
@@ -9,7 +9,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: pg_waldump (PostgreSQL) 15\n"
 "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n"
-"POT-Creation-Date: 2022-09-25 16:17+0000\n"
+"POT-Creation-Date: 2023-05-09 09:18+0000\n"
 "PO-Revision-Date: 2022-11-04 13:17+0100\n"
 "Last-Translator: Carlos Chapi <carlos.chapi@2ndquadrant.com>\n"
 "Language-Team: PgSQL-es-Ayuda <pgsql-es-ayuda@lists.postgresql.org>\n"
@@ -40,54 +40,90 @@ msgstr "detalle: "
 msgid "hint: "
 msgstr "consejo: "
 
-#: pg_waldump.c:160
+#: pg_waldump.c:137
+#, c-format
+msgid "could not create directory \"%s\": %m"
+msgstr "no se pudo crear el directorio «%s»: %m"
+
+#: pg_waldump.c:146
+#, c-format
+msgid "directory \"%s\" exists but is not empty"
+msgstr "el directorio «%s» existe pero no está vacío"
+
+#: pg_waldump.c:150
+#, c-format
+msgid "could not access directory \"%s\": %m"
+msgstr "no se pudo acceder al directorio «%s»: %m"
+
+#: pg_waldump.c:199 pg_waldump.c:527
 #, c-format
 msgid "could not open file \"%s\": %m"
 msgstr "no se pudo abrir el archivo «%s»: %m"
 
-#: pg_waldump.c:216
+#: pg_waldump.c:255
 #, 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:222
+#: pg_waldump.c:261
 #, c-format
 msgid "could not read file \"%s\": %m"
 msgstr "no se pudo leer el archivo «%s»: %m"
 
-#: pg_waldump.c:225
+#: pg_waldump.c:264
 #, c-format
 msgid "could not read file \"%s\": read %d of %d"
 msgstr "no se pudo leer el archivo «%s»: leídos %d de %d"
 
-#: pg_waldump.c:286
+#: pg_waldump.c:325
 #, c-format
 msgid "could not locate WAL file \"%s\""
 msgstr "no se pudo ubicar el archivo WAL «%s»"
 
-#: pg_waldump.c:288
+#: pg_waldump.c:327
 #, c-format
 msgid "could not find any WAL file"
 msgstr "no se pudo encontrar ningún archivo WAL"
 
-#: pg_waldump.c:329
+#: pg_waldump.c:368
 #, c-format
 msgid "could not find file \"%s\": %m"
 msgstr "no se pudo encontrar el archivo «%s»: %m"
 
-#: pg_waldump.c:378
+#: pg_waldump.c:417
 #, c-format
 msgid "could not read from file %s, offset %d: %m"
 msgstr "no se pudo leer desde el archivo «%s» en la posición %d: %m"
 
-#: pg_waldump.c:382
+#: pg_waldump.c:421
 #, c-format
 msgid "could not read from file %s, offset %d: read %d of %d"
 msgstr "no se pudo leer del archivo %s, posición %d: leídos %d de %d"
 
-#: pg_waldump.c:658
+#: pg_waldump.c:511
+#, c-format
+msgid "%s"
+msgstr "%s"
+
+#: pg_waldump.c:519
+#, fuzzy, c-format
+#| msgid "invalid port number: \"%s\"\n"
+msgid "invalid fork number: %u"
+msgstr "número de puerto no válido: «%s»\n"
+
+#: pg_waldump.c:530
+#, c-format
+msgid "could not write file \"%s\": %m"
+msgstr "no se pudo escribir el archivo «%s»: %m"
+
+#: pg_waldump.c:533
+#, c-format
+msgid "could not close file \"%s\": %m"
+msgstr "no se pudo cerrar el archivo «%s»: %m"
+
+#: pg_waldump.c:753
 #, c-format
 msgid ""
 "%s decodes and displays PostgreSQL write-ahead logs for debugging.\n"
@@ -96,17 +132,17 @@ msgstr ""
 "%s decodifica y muestra segmentos de WAL de PostgreSQL para depuración.\n"
 "\n"
 
-#: pg_waldump.c:660
+#: pg_waldump.c:755
 #, c-format
 msgid "Usage:\n"
 msgstr "Empleo:\n"
 
-#: pg_waldump.c:661
+#: pg_waldump.c:756
 #, c-format
 msgid "  %s [OPTION]... [STARTSEG [ENDSEG]]\n"
 msgstr "  %s [OPCIÓN]... [SEGINICIAL [SEGFINAL]]\n"
 
-#: pg_waldump.c:662
+#: pg_waldump.c:757
 #, c-format
 msgid ""
 "\n"
@@ -115,29 +151,29 @@ msgstr ""
 "\n"
 "Opciones:\n"
 
-#: pg_waldump.c:663
+#: pg_waldump.c:758
 #, 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:664
+#: pg_waldump.c:759
 #, c-format
 msgid "  -B, --block=N          with --relation, only show records that modify block N\n"
 msgstr ""
 "  -B, --block=N            con --relation, sólo mostrar registros que modifican\n"
 "                           el bloque N\n"
 
-#: pg_waldump.c:665
+#: pg_waldump.c:760
 #, 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:666
+#: pg_waldump.c:761
 #, 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:667
+#: pg_waldump.c:762
 #, c-format
 msgid ""
 "  -F, --fork=FORK        only show records that modify blocks in fork FORK;\n"
@@ -146,15 +182,19 @@ msgstr ""
 "  -F, --form=FORK          sólo mostrar registros que modifican bloques en el\n"
 "                           «fork» FORK; nombres válidos son main, fsm, vm, init\n"
 
-#: pg_waldump.c:669
+#: pg_waldump.c:764
 #, 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:670
-#, c-format
+#: pg_waldump.c:765
+#, fuzzy, c-format
+#| msgid ""
+#| "  -p, --path=PATH        directory in which to find log segment files or a\n"
+#| "                         directory with a ./pg_wal that contains such files\n"
+#| "                         (default: current directory, ./pg_wal, $PGDATA/pg_wal)\n"
 msgid ""
-"  -p, --path=PATH        directory in which to find log segment files or a\n"
+"  -p, --path=PATH        directory in which to find WAL segment files or a\n"
 "                         directory with a ./pg_wal that contains such files\n"
 "                         (default: current directory, ./pg_wal, $PGDATA/pg_wal)\n"
 msgstr ""
@@ -162,12 +202,12 @@ 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:673
+#: pg_waldump.c:768
 #, c-format
 msgid "  -q, --quiet            do not print any output, except for errors\n"
 msgstr "  -q, --quiet              no escribir ningún mensaje, excepto errores\n"
 
-#: pg_waldump.c:674
+#: pg_waldump.c:769
 #, c-format
 msgid ""
 "  -r, --rmgr=RMGR        only show records generated by resource manager RMGR;\n"
@@ -176,41 +216,44 @@ 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:676
+#: pg_waldump.c:771
 #, c-format
 msgid "  -R, --relation=T/D/R   only show records that modify blocks in relation T/D/R\n"
 msgstr "  -R, --relation=T/D/R     sólo mostrar registros que modifican bloques en relación T/D/R\n"
 
-#: pg_waldump.c:677
+#: pg_waldump.c:772
 #, 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:678
-#, c-format
+#: pg_waldump.c:773
+#, fuzzy, c-format
+#| msgid ""
+#| "  -t, --timeline=TLI     timeline from which to read log records\n"
+#| "                         (default: 1 or the value used in STARTSEG)\n"
 msgid ""
-"  -t, --timeline=TLI     timeline from which to read log records\n"
+"  -t, --timeline=TLI     timeline from which to read WAL records\n"
 "                         (default: 1 or the value used in STARTSEG)\n"
 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:680
+#: pg_waldump.c:775
 #, 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:681
+#: pg_waldump.c:776
 #, c-format
 msgid "  -w, --fullpage         only show records with a full page write\n"
 msgstr "  -w, --fullpage           sólo mostrar registros con escrituras de página completa\n"
 
-#: pg_waldump.c:682
+#: pg_waldump.c:777
 #, 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:683
+#: pg_waldump.c:778
 #, c-format
 msgid ""
 "  -z, --stats[=record]   show statistics instead of records\n"
@@ -219,12 +262,17 @@ msgstr ""
 "  -z, --stats[=registro]   mostrar estadísticas en lugar de registros\n"
 "                           (opcionalmente, mostrar estadísticas por registro)\n"
 
-#: pg_waldump.c:685
+#: pg_waldump.c:780
+#, c-format
+msgid "  --save-fullpage=DIR    save full page images to DIR\n"
+msgstr ""
+
+#: pg_waldump.c:781
 #, c-format
 msgid "  -?, --help             show this help, then exit\n"
 msgstr "  -?, --help               mostrar esta ayuda, luego salir\n"
 
-#: pg_waldump.c:686
+#: pg_waldump.c:782
 #, c-format
 msgid ""
 "\n"
@@ -233,310 +281,338 @@ msgstr ""
 "\n"
 "Reporte errores a <%s>.\n"
 
-#: pg_waldump.c:687
+#: pg_waldump.c:783
 #, c-format
 msgid "%s home page: <%s>\n"
 msgstr "Sitio web de %s: <%s>\n"
 
-#: pg_waldump.c:781
+#: pg_waldump.c:879
 #, c-format
 msgid "no arguments specified"
 msgstr "no se especificó ningún argumento"
 
-#: pg_waldump.c:797
+#: pg_waldump.c:895
 #, c-format
 msgid "invalid block number: \"%s\""
 msgstr "número de bloque no válido: «%s»"
 
-#: pg_waldump.c:806 pg_waldump.c:904
+#: pg_waldump.c:904 pg_waldump.c:1002
 #, c-format
 msgid "invalid WAL location: \"%s\""
 msgstr "ubicación de WAL no válida: «%s»"
 
-#: pg_waldump.c:819
+#: pg_waldump.c:917
 #, c-format
 msgid "invalid fork name: \"%s\""
 msgstr "nombre de «fork» no válido: «%s»"
 
-#: pg_waldump.c:827
+#: pg_waldump.c:925 pg_waldump.c:1028
 #, c-format
 msgid "invalid value \"%s\" for option %s"
 msgstr "el valor «%s» no es válido para la opción «%s»"
 
-#: pg_waldump.c:858
+#: pg_waldump.c:956
 #, c-format
 msgid "custom resource manager \"%s\" does not exist"
 msgstr "el gestor de recursos personalizado «%s» no existe"
 
-#: pg_waldump.c:879
+#: pg_waldump.c:977
 #, c-format
 msgid "resource manager \"%s\" does not exist"
 msgstr "el gestor de recursos «%s» no existe"
 
-#: pg_waldump.c:894
+#: pg_waldump.c:992
 #, c-format
 msgid "invalid relation specification: \"%s\""
 msgstr "especificación de relación no válida: «%s»"
 
-#: pg_waldump.c:895
+#: pg_waldump.c:993
 #, c-format
 msgid "Expecting \"tablespace OID/database OID/relation filenode\"."
 msgstr "Se esperaba «OID de tablespace/OID de base de datos/filenode de relación»."
 
-#: pg_waldump.c:914
+#: pg_waldump.c:1035
 #, c-format
-msgid "invalid timeline specification: \"%s\""
-msgstr "especificación de timeline no válida: «%s»"
+msgid "%s must be in range %u..%u"
+msgstr "%s debe estar en el rango %u..%u"
 
-#: pg_waldump.c:924
+#: pg_waldump.c:1050
 #, c-format
 msgid "invalid transaction ID specification: \"%s\""
 msgstr "especificación de ID de transacción no válida: «%s»"
 
-#: pg_waldump.c:939
+#: pg_waldump.c:1065
 #, c-format
 msgid "unrecognized value for option %s: %s"
 msgstr "valor no reconocido para la opción %s: %s"
 
-#: pg_waldump.c:953
+#: pg_waldump.c:1082
 #, c-format
 msgid "option %s requires option %s to be specified"
 msgstr "la opción %s requiere que se especifique la opción %s"
 
-#: pg_waldump.c:960
+#: pg_waldump.c:1089
 #, 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:970 pg_waldump.c:990
+#: pg_waldump.c:1099 pg_waldump.c:1122
 #, c-format
 msgid "could not open directory \"%s\": %m"
 msgstr "no se pudo abrir el directorio «%s»: %m"
 
-#: pg_waldump.c:996 pg_waldump.c:1026
+#: pg_waldump.c:1128 pg_waldump.c:1158
 #, c-format
 msgid "could not open file \"%s\""
 msgstr "no se pudo abrir el archivo «%s»"
 
-#: pg_waldump.c:1006
+#: pg_waldump.c:1138
 #, 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:1033
+#: pg_waldump.c:1165
 #, c-format
 msgid "ENDSEG %s is before STARTSEG %s"
 msgstr "SEGFINAL %s está antes del SEGINICIAL %s"
 
-#: pg_waldump.c:1048
+#: pg_waldump.c:1180
 #, 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:1060
+#: pg_waldump.c:1192
 #, c-format
 msgid "no start WAL location given"
 msgstr "no se especificó posición inicial de WAL"
 
-#: pg_waldump.c:1074
+#: pg_waldump.c:1206
 #, c-format
 msgid "out of memory while allocating a WAL reading processor"
 msgstr "se agotó la memoria mientras se emplazaba un procesador de lectura de WAL"
 
-#: pg_waldump.c:1080
+#: pg_waldump.c:1212
 #, 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:1090
+#: pg_waldump.c:1222
 #, 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:1171
+#: pg_waldump.c:1307
 #, c-format
 msgid "error in WAL record at %X/%X: %s"
 msgstr "error en registro de WAL en %X/%X: %s"
 
-#: pg_waldump.c:1180
+#: pg_waldump.c:1316
 #, c-format
 msgid "Try \"%s --help\" for more information."
 msgstr "Pruebe «%s --help» para mayor información."
 
-#: xlogreader.c:625
-#, c-format
-msgid "invalid record offset at %X/%X"
-msgstr "posición de registro no válida en %X/%X"
+#: xlogreader.c:626
+#, fuzzy, c-format
+#| msgid "invalid record length at %X/%X: wanted %u, got %u"
+msgid "invalid record offset at %X/%X: expected at least %u, got %u"
+msgstr "largo de registro no válido en %X/%X: se esperaba %u, se obtuvo %u"
 
-#: xlogreader.c:633
+#: xlogreader.c:635
 #, c-format
 msgid "contrecord is requested by %X/%X"
 msgstr "contrecord solicitado por %X/%X"
 
-#: xlogreader.c:674 xlogreader.c:1121
-#, c-format
-msgid "invalid record length at %X/%X: wanted %u, got %u"
+#: xlogreader.c:676 xlogreader.c:1123
+#, fuzzy, c-format
+#| msgid "invalid record length at %X/%X: wanted %u, got %u"
+msgid "invalid record length at %X/%X: expected at least %u, got %u"
 msgstr "largo de registro no válido en %X/%X: se esperaba %u, se obtuvo %u"
 
-#: xlogreader.c:703
+#: xlogreader.c:705
 #, c-format
 msgid "out of memory while trying to decode a record of length %u"
 msgstr "memoria agotada mientras se intentaba decodificar un registro de largo %u"
 
-#: xlogreader.c:725
+#: xlogreader.c:727
 #, c-format
 msgid "record length %u at %X/%X too long"
 msgstr "largo de registro %u en %X/%X demasiado largo"
 
-#: xlogreader.c:774
+#: xlogreader.c:776
 #, c-format
 msgid "there is no contrecord flag at %X/%X"
 msgstr "no hay bandera de contrecord en %X/%X"
 
-#: xlogreader.c:787
+#: xlogreader.c:789
 #, c-format
 msgid "invalid contrecord length %u (expected %lld) at %X/%X"
 msgstr "largo de contrecord %u no válido (se esperaba %lld) en %X/%X"
 
-#: xlogreader.c:922
+#: xlogreader.c:924
 #, c-format
-#| msgid "there is no contrecord flag at %X/%X"
 msgid "missing contrecord at %X/%X"
 msgstr "falta contrecord en %X/%X"
 
-#: xlogreader.c:1129
+#: xlogreader.c:1131
 #, 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:1142 xlogreader.c:1158
+#: xlogreader.c:1144 xlogreader.c:1160
 #, 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:1194
+#: xlogreader.c:1196
 #, 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:1231
-#, c-format
-msgid "invalid magic number %04X in log segment %s, offset %u"
+#: xlogreader.c:1230
+#, fuzzy, c-format
+#| msgid "invalid magic number %04X in log segment %s, offset %u"
+msgid "invalid magic number %04X in WAL segment %s, LSN %X/%X, offset %u"
 msgstr "número mágico %04X no válido en archivo %s, posición %u"
 
-#: xlogreader.c:1245 xlogreader.c:1286
-#, c-format
-msgid "invalid info bits %04X in log segment %s, offset %u"
+#: xlogreader.c:1245 xlogreader.c:1287
+#, fuzzy, c-format
+#| msgid "invalid info bits %04X in log segment %s, offset %u"
+msgid "invalid info bits %04X in WAL segment %s, LSN %X/%X, offset %u"
 msgstr "info bits %04X no válidos en archivo %s, posición %u"
 
-#: xlogreader.c:1260
+#: xlogreader.c:1261
 #, c-format
 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 %llu, identificador en pg_control es %llu"
 
-#: xlogreader.c:1268
+#: xlogreader.c:1269
 #, 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:1274
+#: xlogreader.c:1275
 #, 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:1305
-#, c-format
-msgid "unexpected pageaddr %X/%X in log segment %s, offset %u"
+#: xlogreader.c:1307
+#, fuzzy, c-format
+#| msgid "unexpected pageaddr %X/%X in log segment %s, offset %u"
+msgid "unexpected pageaddr %X/%X in WAL segment %s, LSN %X/%X, offset %u"
 msgstr "pageaddr %X/%X inesperado en archivo %s, posición %u"
 
-#: xlogreader.c:1330
-#, c-format
-msgid "out-of-sequence timeline ID %u (after %u) in log segment %s, offset %u"
+#: xlogreader.c:1333
+#, fuzzy, c-format
+#| msgid "out-of-sequence timeline ID %u (after %u) in log segment %s, offset %u"
+msgid "out-of-sequence timeline ID %u (after %u) in WAL segment %s, LSN %X/%X, offset %u"
 msgstr "ID de timeline %u fuera de secuencia (después de %u) en archivo %s, posición %u"
 
-#: xlogreader.c:1735
+#: xlogreader.c:1739
 #, c-format
 msgid "out-of-order block_id %u at %X/%X"
 msgstr "block_id %u fuera de orden en %X/%X"
 
-#: xlogreader.c:1759
+#: xlogreader.c:1763
 #, 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:1766
+#: xlogreader.c:1770
 #, 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:1802
+#: xlogreader.c:1806
 #, 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:1818
+#: xlogreader.c:1822
 #, 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:1832
+#: xlogreader.c:1836
 #, c-format
 msgid "BKPIMAGE_COMPRESSED set, but block image length %u at %X/%X"
 msgstr "BKPIMAGE_COMPRESSED definido, pero largo de imagen de bloque es %u en %X/%X"
 
-#: xlogreader.c:1847
+#: xlogreader.c:1851
 #, c-format
 msgid "neither BKPIMAGE_HAS_HOLE nor BKPIMAGE_COMPRESSED set, but block image length is %u at %X/%X"
 msgstr "ni BKPIMAGE_HAS_HOLE ni BKPIMAGE_COMPRESSED están definidos, pero el largo de imagen de bloque es %u en %X/%X"
 
-#: xlogreader.c:1863
+#: xlogreader.c:1867
 #, 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:1875
+#: xlogreader.c:1879
 #, c-format
 msgid "invalid block_id %u at %X/%X"
 msgstr "block_id %u no válido en %X/%X"
 
-#: xlogreader.c:1942
+#: xlogreader.c:1946
 #, c-format
 msgid "record with invalid length at %X/%X"
 msgstr "registro con largo no válido en %X/%X"
 
-#: xlogreader.c:1967
+#: xlogreader.c:1972
 #, c-format
-#| msgid "failed to locate backup block with ID %d in WAL record"
 msgid "could not locate backup block with ID %d in WAL record"
 msgstr "no se pudo localizar un bloque de respaldo con ID %d en el registro WAL"
 
-#: xlogreader.c:2051
+#: xlogreader.c:2056
 #, c-format
 msgid "could not restore image at %X/%X with invalid block %d specified"
 msgstr "no se pudo restaurar imagen en %X/%X con bloque especificado %d no válido"
 
-#: xlogreader.c:2058
+#: xlogreader.c:2063
 #, c-format
-#| msgid "invalid compressed image at %X/%X, block %d"
 msgid "could not restore image at %X/%X with invalid state, block %d"
 msgstr "no se pudo restaurar imagen en %X/%X con estado no válido, bloque %d"
 
-#: xlogreader.c:2085 xlogreader.c:2102
+#: xlogreader.c:2090 xlogreader.c:2107
 #, c-format
-#| msgid "image at %X/%X compressed with %s not supported by build, block %d"
 msgid "could not restore image at %X/%X compressed with %s not supported by build, block %d"
 msgstr "no se pudo restaurar imagen en %X/%X comprimida con %s no soportado por esta instalación, bloque %d"
 
-#: xlogreader.c:2111
+#: xlogreader.c:2116
 #, c-format
-#| msgid "image at %X/%X compressed with unknown method, block %d"
 msgid "could not restore image at %X/%X compressed with unknown method, block %d"
 msgstr "no se pudo restaurar imagen en %X/%X comprimida método desconocido, bloque %d"
 
-#: xlogreader.c:2119
+#: xlogreader.c:2124
 #, c-format
-#| msgid "invalid compressed image at %X/%X, block %d"
 msgid "could not decompress image at %X/%X, block %d"
 msgstr "no se pudo descomprimir imagen en %X/%X, bloque %d"
+
+#, c-format
+#~ msgid "invalid timeline specification: \"%s\""
+#~ msgstr "especificación de timeline no válida: «%s»"
+
+#, c-format
+#~ msgid "invalid record offset at %X/%X"
+#~ msgstr "posición de registro no válida en %X/%X"
+
+#, 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"
+
+#, 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"
+
+#, 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"
+
+#, c-format
+#~ msgid "unexpected pageaddr %X/%X in log segment %s, offset %u"
+#~ msgstr "pageaddr %X/%X inesperado en archivo %s, posición %u"
+
+#, 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"
index 80326f6c3633f4de231ce45c346d0afe1d59145b..03bc73251fe23f22499b0ea92916c4410a37373d 100644 (file)
@@ -12,7 +12,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: pgscripts (PostgreSQL) 15\n"
 "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n"
-"POT-Creation-Date: 2022-09-24 23:20+0000\n"
+"POT-Creation-Date: 2023-05-09 09:20+0000\n"
 "PO-Revision-Date: 2022-11-04 13:14+0100\n"
 "Last-Translator: Carlos Chapi <carloswaldo@babelruins.org>\n"
 "Language-Team: PgSQL-es-Ayuda <pgsql-es-ayuda@lists.postgresql.org>\n"
@@ -44,12 +44,12 @@ msgid "hint: "
 msgstr "consejo: "
 
 #: ../../common/fe_memutils.c:35 ../../common/fe_memutils.c:75
-#: ../../common/fe_memutils.c:98 ../../common/fe_memutils.c:162
+#: ../../common/fe_memutils.c:98 ../../common/fe_memutils.c:161
 #, c-format
 msgid "out of memory\n"
 msgstr "memoria agotada\n"
 
-#: ../../common/fe_memutils.c:92 ../../common/fe_memutils.c:154
+#: ../../common/fe_memutils.c:92 ../../common/fe_memutils.c:153
 #, c-format
 msgid "cannot duplicate null pointer (internal error)\n"
 msgstr "no se puede duplicar un puntero nulo (error interno)\n"
@@ -76,7 +76,7 @@ msgstr "Petición de cancelación enviada\n"
 msgid "Could not send cancel request: "
 msgstr "No se pudo enviar el paquete de cancelación: "
 
-#: ../../fe_utils/connect_utils.c:49 ../../fe_utils/connect_utils.c:104
+#: ../../fe_utils/connect_utils.c:49 ../../fe_utils/connect_utils.c:103
 msgid "Password: "
 msgstr "Contraseña: "
 
@@ -85,7 +85,7 @@ msgstr "Contraseña: "
 msgid "could not connect to database %s: out of memory"
 msgstr "no se pudo conectar a la base de datos %s: memoria agotada"
 
-#: ../../fe_utils/connect_utils.c:117 pg_isready.c:146
+#: ../../fe_utils/connect_utils.c:116 pg_isready.c:146
 #, c-format
 msgid "%s"
 msgstr "%s"
@@ -100,12 +100,12 @@ msgstr "el valor «%s» no es válido para la opción %s"
 msgid "%s must be in range %d..%d"
 msgstr "%s debe estar en el rango %d..%d"
 
-#: ../../fe_utils/parallel_slot.c:301
+#: ../../fe_utils/parallel_slot.c:299
 #, c-format
 msgid "too many jobs for this platform"
 msgstr "demasiados procesos para esta plataforma"
 
-#: ../../fe_utils/parallel_slot.c:519
+#: ../../fe_utils/parallel_slot.c:520
 #, c-format
 msgid "processing of database \"%s\" failed: %s"
 msgstr "falló el procesamiento de la base de datos «%s»: %s"
@@ -117,22 +117,22 @@ msgid_plural "(%lu rows)"
 msgstr[0] "(%lu fila)"
 msgstr[1] "(%lu filas)"
 
-#: ../../fe_utils/print.c:3109
+#: ../../fe_utils/print.c:3153
 #, c-format
 msgid "Interrupted\n"
 msgstr "Interrumpido\n"
 
-#: ../../fe_utils/print.c:3173
+#: ../../fe_utils/print.c:3217
 #, 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:3213
+#: ../../fe_utils/print.c:3257
 #, 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:3471
+#: ../../fe_utils/print.c:3515
 #, c-format
 msgid "invalid output format (internal error): %d"
 msgstr "formato de salida no válido (error interno): %d"
@@ -147,16 +147,16 @@ msgstr "la consulta falló: %s"
 msgid "Query was: %s"
 msgstr "La consulta era: %s"
 
-#: clusterdb.c:113 clusterdb.c:132 createdb.c:139 createdb.c:158
-#: createuser.c:170 createuser.c:185 dropdb.c:104 dropdb.c:113 dropdb.c:121
+#: clusterdb.c:113 clusterdb.c:132 createdb.c:144 createdb.c:163
+#: createuser.c:194 createuser.c:209 dropdb.c:104 dropdb.c:113 dropdb.c:121
 #: dropuser.c:95 dropuser.c:110 dropuser.c:123 pg_isready.c:97 pg_isready.c:111
-#: reindexdb.c:174 reindexdb.c:193 vacuumdb.c:241 vacuumdb.c:260
+#: reindexdb.c:174 reindexdb.c:193 vacuumdb.c:277 vacuumdb.c:297
 #, c-format
 msgid "Try \"%s --help\" for more information."
 msgstr "Pruebe «%s --help» para mayor información."
 
-#: clusterdb.c:130 createdb.c:156 createuser.c:183 dropdb.c:119 dropuser.c:108
-#: pg_isready.c:109 reindexdb.c:191 vacuumdb.c:258
+#: clusterdb.c:130 createdb.c:161 createuser.c:207 dropdb.c:119 dropuser.c:108
+#: pg_isready.c:109 reindexdb.c:191 vacuumdb.c:295
 #, c-format
 msgid "too many command-line arguments (first is \"%s\")"
 msgstr "demasiados argumentos en la línea de órdenes (el primero es «%s»)"
@@ -196,19 +196,19 @@ msgstr ""
 "en una base de datos.\n"
 "\n"
 
-#: clusterdb.c:263 createdb.c:281 createuser.c:346 dropdb.c:172 dropuser.c:170
-#: pg_isready.c:226 reindexdb.c:760 vacuumdb.c:964
+#: clusterdb.c:263 createdb.c:291 createuser.c:414 dropdb.c:172 dropuser.c:170
+#: pg_isready.c:226 reindexdb.c:748 vacuumdb.c:1127
 #, c-format
 msgid "Usage:\n"
 msgstr "Empleo:\n"
 
-#: clusterdb.c:264 reindexdb.c:761 vacuumdb.c:965
+#: clusterdb.c:264 reindexdb.c:749 vacuumdb.c:1128
 #, c-format
 msgid "  %s [OPTION]... [DBNAME]\n"
 msgstr "  %s [OPCIÓN]... [BASE-DE-DATOS]\n"
 
-#: clusterdb.c:265 createdb.c:283 createuser.c:348 dropdb.c:174 dropuser.c:172
-#: pg_isready.c:229 reindexdb.c:762 vacuumdb.c:966
+#: clusterdb.c:265 createdb.c:293 createuser.c:416 dropdb.c:174 dropuser.c:172
+#: pg_isready.c:229 reindexdb.c:750 vacuumdb.c:1129
 #, c-format
 msgid ""
 "\n"
@@ -227,7 +227,7 @@ msgstr "  -a, --all                 reordenar todas las bases de datos\n"
 msgid "  -d, --dbname=DBNAME       database to cluster\n"
 msgstr "  -d, --dbname=BASE         base de datos a reordenar\n"
 
-#: clusterdb.c:268 createuser.c:352 dropdb.c:175 dropuser.c:173
+#: clusterdb.c:268 createuser.c:422 dropdb.c:175 dropuser.c:173
 #, 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"
@@ -247,18 +247,18 @@ msgstr "  -t, --table=TABLA         reordenar sólo esta(s) tabla(s)\n"
 msgid "  -v, --verbose             write a lot of output\n"
 msgstr "  -v, --verbose             desplegar varios mensajes informativos\n"
 
-#: clusterdb.c:272 createuser.c:364 dropdb.c:178 dropuser.c:176
+#: clusterdb.c:272 createuser.c:437 dropdb.c:178 dropuser.c:176
 #, 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:273 createuser.c:369 dropdb.c:180 dropuser.c:178
+#: clusterdb.c:273 createuser.c:445 dropdb.c:180 dropuser.c:178
 #, c-format
 msgid "  -?, --help                show this help, then exit\n"
 msgstr "  -?, --help                mostrar esta ayuda y salir\n"
 
-#: clusterdb.c:274 createdb.c:298 createuser.c:370 dropdb.c:181 dropuser.c:179
-#: pg_isready.c:235 reindexdb.c:777 vacuumdb.c:991
+#: clusterdb.c:274 createdb.c:309 createuser.c:446 dropdb.c:181 dropuser.c:179
+#: pg_isready.c:235 reindexdb.c:765 vacuumdb.c:1158
 #, c-format
 msgid ""
 "\n"
@@ -267,32 +267,32 @@ msgstr ""
 "\n"
 "Opciones de conexión:\n"
 
-#: clusterdb.c:275 createuser.c:371 dropdb.c:182 dropuser.c:180 vacuumdb.c:992
+#: clusterdb.c:275 createuser.c:447 dropdb.c:182 dropuser.c:180 vacuumdb.c:1159
 #, 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:276 createuser.c:372 dropdb.c:183 dropuser.c:181 vacuumdb.c:993
+#: clusterdb.c:276 createuser.c:448 dropdb.c:183 dropuser.c:181 vacuumdb.c:1160
 #, c-format
 msgid "  -p, --port=PORT           database server port\n"
 msgstr "  -p, --port=PUERTO         puerto del servidor\n"
 
-#: clusterdb.c:277 dropdb.c:184 vacuumdb.c:994
+#: clusterdb.c:277 dropdb.c:184 vacuumdb.c:1161
 #, 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:278 createuser.c:374 dropdb.c:185 dropuser.c:183 vacuumdb.c:995
+#: clusterdb.c:278 createuser.c:450 dropdb.c:185 dropuser.c:183 vacuumdb.c:1162
 #, c-format
 msgid "  -w, --no-password         never prompt for password\n"
 msgstr "  -w, --no-password         nunca pedir contraseña\n"
 
-#: clusterdb.c:279 createuser.c:375 dropdb.c:186 dropuser.c:184 vacuumdb.c:996
+#: clusterdb.c:279 createuser.c:451 dropdb.c:186 dropuser.c:184 vacuumdb.c:1163
 #, c-format
 msgid "  -W, --password            force password prompt\n"
 msgstr "  -W, --password            forzar la petición de contraseña\n"
 
-#: clusterdb.c:280 dropdb.c:187 vacuumdb.c:997
+#: clusterdb.c:280 dropdb.c:187 vacuumdb.c:1164
 #, c-format
 msgid "  --maintenance-db=DBNAME   alternate maintenance database\n"
 msgstr "  --maintenance-db=BASE     base de datos de mantención alternativa\n"
@@ -306,8 +306,8 @@ msgstr ""
 "\n"
 "Lea la descripción de la orden CLUSTER de SQL para obtener mayores detalles.\n"
 
-#: clusterdb.c:282 createdb.c:306 createuser.c:376 dropdb.c:188 dropuser.c:185
-#: pg_isready.c:240 reindexdb.c:785 vacuumdb.c:999
+#: clusterdb.c:282 createdb.c:317 createuser.c:452 dropdb.c:188 dropuser.c:185
+#: pg_isready.c:240 reindexdb.c:773 vacuumdb.c:1166
 #, c-format
 msgid ""
 "\n"
@@ -316,8 +316,8 @@ msgstr ""
 "\n"
 "Reporte errores a <%s>.\n"
 
-#: clusterdb.c:283 createdb.c:307 createuser.c:377 dropdb.c:189 dropuser.c:186
-#: pg_isready.c:241 reindexdb.c:786 vacuumdb.c:1000
+#: clusterdb.c:283 createdb.c:318 createuser.c:453 dropdb.c:189 dropuser.c:186
+#: pg_isready.c:241 reindexdb.c:774 vacuumdb.c:1167
 #, c-format
 msgid "%s home page: <%s>\n"
 msgstr "Sitio web de %s: <%s>\n"
@@ -351,22 +351,22 @@ msgstr "%s (%s/%s) "
 msgid "Please answer \"%s\" or \"%s\".\n"
 msgstr "Por favor conteste «%s» o «%s».\n"
 
-#: createdb.c:173
+#: createdb.c:178
 #, c-format
 msgid "\"%s\" is not a valid encoding name"
 msgstr "«%s» no es un nombre válido de codificación"
 
-#: createdb.c:243
+#: createdb.c:253
 #, c-format
 msgid "database creation failed: %s"
 msgstr "falló la creación de la base de datos: %s"
 
-#: createdb.c:262
+#: createdb.c:272
 #, 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:280
+#: createdb.c:290
 #, c-format
 msgid ""
 "%s creates a PostgreSQL database.\n"
@@ -375,47 +375,53 @@ msgstr ""
 "%s crea una base de datos PostgreSQL.\n"
 "\n"
 
-#: createdb.c:282
+#: createdb.c:292
 #, c-format
 msgid "  %s [OPTION]... [DBNAME] [DESCRIPTION]\n"
 msgstr "  %s [OPCIÓN]... [NOMBRE] [DESCRIPCIÓN]\n"
 
-#: createdb.c:284
+#: createdb.c:294
 #, 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:285 reindexdb.c:766
+#: createdb.c:295 reindexdb.c:754
 #, 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:286
+#: createdb.c:296
 #, 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:287
+#: createdb.c:297
 #, 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:288
+#: createdb.c:298
 #, 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:289
+#: createdb.c:299
 #, 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:290
+#: createdb.c:300
 #, c-format
 msgid "      --icu-locale=LOCALE      ICU locale setting for the database\n"
 msgstr "      --icu-locale=LOCALE   configuración regional ICU para la base de datos\n"
 
-#: createdb.c:291
+#: createdb.c:301
+#, fuzzy, c-format
+#| msgid "      --icu-locale=LOCALE      ICU locale setting for the database\n"
+msgid "      --icu-rules=RULES        ICU rules setting for the database\n"
+msgstr "      --icu-locale=LOCALE   configuración regional ICU para la base de datos\n"
+
+#: createdb.c:302
 #, c-format
 msgid ""
 "      --locale-provider={libc|icu}\n"
@@ -425,64 +431,64 @@ msgstr ""
 "                            proveedor de configuración regional para el ordenamiento\n"
 "                            por omisión de las bases de datos\n"
 
-#: createdb.c:293
+#: createdb.c:304
 #, 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:294
+#: createdb.c:305
 #, c-format
 msgid "  -S, --strategy=STRATEGY      database creation strategy wal_log or file_copy\n"
 msgstr ""
 "  -S, --strategy=ESTRATEGIA estrategia de creación de bases de datos\n"
 "                            wal_log o file_copy\n"
 
-#: createdb.c:295
+#: createdb.c:306
 #, 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:296 reindexdb.c:775
+#: createdb.c:307 reindexdb.c:763
 #, 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:297 reindexdb.c:776
+#: createdb.c:308 reindexdb.c:764
 #, c-format
 msgid "  -?, --help                   show this help, then exit\n"
 msgstr "  -?, --help                mostrar esta ayuda y salir\n"
 
-#: createdb.c:299 reindexdb.c:778
+#: createdb.c:310 reindexdb.c:766
 #, 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:300 reindexdb.c:779
+#: createdb.c:311 reindexdb.c:767
 #, c-format
 msgid "  -p, --port=PORT              database server port\n"
 msgstr "  -p, --port=PUERTO         puerto del servidor\n"
 
-#: createdb.c:301 reindexdb.c:780
+#: createdb.c:312 reindexdb.c:768
 #, 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:302 reindexdb.c:781
+#: createdb.c:313 reindexdb.c:769
 #, c-format
 msgid "  -w, --no-password            never prompt for password\n"
 msgstr "  -w, --no-password         nunca pedir contraseña\n"
 
-#: createdb.c:303 reindexdb.c:782
+#: createdb.c:314 reindexdb.c:770
 #, c-format
 msgid "  -W, --password               force password prompt\n"
 msgstr "  -W, --password            forzar la petición de contraseña\n"
 
-#: createdb.c:304 reindexdb.c:783
+#: createdb.c:315 reindexdb.c:771
 #, c-format
 msgid "  --maintenance-db=DBNAME      alternate maintenance database\n"
 msgstr "  --maintenance-db=BASE     base de datos de mantención alternativa\n"
 
-#: createdb.c:305
+#: createdb.c:316
 #, c-format
 msgid ""
 "\n"
@@ -492,46 +498,46 @@ msgstr ""
 "Si no se especifica, se creará una base de datos con el mismo nombre que\n"
 "el usuario actual.\n"
 
-#: createuser.c:193
+#: createuser.c:217
 msgid "Enter name of role to add: "
 msgstr "Ingrese el nombre del rol a agregar: "
 
-#: createuser.c:208
+#: createuser.c:232
 msgid "Enter password for new role: "
 msgstr "Ingrese la contraseña para el nuevo rol: "
 
-#: createuser.c:209
+#: createuser.c:233
 msgid "Enter it again: "
 msgstr "Ingrésela nuevamente: "
 
-#: createuser.c:212
+#: createuser.c:236
 #, c-format
 msgid "Passwords didn't match.\n"
 msgstr "Las contraseñas no coinciden.\n"
 
-#: createuser.c:220
+#: createuser.c:244
 msgid "Shall the new role be a superuser?"
 msgstr "¿Será el nuevo rol un superusuario?"
 
-#: createuser.c:235
+#: createuser.c:259
 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:243
+#: createuser.c:267
 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:278
+#: createuser.c:308
 #, c-format
 msgid "password encryption failed: %s"
 msgstr "el cifrado de la contraseña falló: %s"
 
-#: createuser.c:331
+#: createuser.c:399
 #, c-format
 msgid "creation of new role failed: %s"
 msgstr "falló la creación del nuevo rol: %s"
 
-#: createuser.c:345
+#: createuser.c:413
 #, c-format
 msgid ""
 "%s creates a new PostgreSQL role.\n"
@@ -540,34 +546,46 @@ msgstr ""
 "%s crea un nuevo rol de PostgreSQL.\n"
 "\n"
 
-#: createuser.c:347 dropuser.c:171
+#: createuser.c:415 dropuser.c:171
 #, c-format
 msgid "  %s [OPTION]... [ROLENAME]\n"
 msgstr "  %s [OPCIÓN]... [ROL]\n"
 
-#: createuser.c:349
+#: createuser.c:417
+#, fuzzy, c-format
+#| msgid ""
+#| "  -i, --inherit             role inherits privileges of roles it is a\n"
+#| "                            member of (default)\n"
+msgid ""
+"  -a, --admin=ROLE          this role will be a member of new role with admin\n"
+"                            option\n"
+msgstr ""
+"  -i, --inherit             el rol heredará los privilegios de los roles de\n"
+"                            los cuales es miembro (predeterminado)\n"
+
+#: createuser.c:419
 #, 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:350
+#: createuser.c:420
 #, c-format
 msgid "  -d, --createdb            role can create new databases\n"
 msgstr "  -d, --createdb            el rol podrá crear bases de datos\n"
 
-#: createuser.c:351
+#: createuser.c:421
 #, 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:353
+#: createuser.c:423
 #, 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:354
+#: createuser.c:424
 #, c-format
 msgid ""
 "  -i, --inherit             role inherits privileges of roles it is a\n"
@@ -576,47 +594,60 @@ msgstr ""
 "  -i, --inherit             el rol heredará los privilegios de los roles de\n"
 "                            los cuales es miembro (predeterminado)\n"
 
-#: createuser.c:356
+#: createuser.c:426
 #, c-format
 msgid "  -I, --no-inherit          role does not inherit privileges\n"
 msgstr "  -I, --no-inherit          rol no heredará privilegios\n"
 
-#: createuser.c:357
+#: createuser.c:427
 #, c-format
 msgid "  -l, --login               role can login (default)\n"
 msgstr "  -l, --login               el rol podrá conectarse (predeterminado)\n"
 
-#: createuser.c:358
+#: createuser.c:428
 #, c-format
 msgid "  -L, --no-login            role cannot login\n"
 msgstr "  -L, --no-login            el rol no podrá conectarse\n"
 
-#: createuser.c:359
+#: createuser.c:429
+#, fuzzy, c-format
+#| msgid "  -g, --role=ROLE           new role will be a member of this role\n"
+msgid "  -m, --member=ROLE         this role will be a member of new role\n"
+msgstr "  -g, --role=ROL            el nuevo rol será un miembro de este rol\n"
+
+#: createuser.c:430
 #, 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:360
+#: createuser.c:431
 #, c-format
 msgid "  -r, --createrole          role can create new roles\n"
 msgstr "  -r, --createrole          el rol podrá crear otros roles\n"
 
-#: createuser.c:361
+#: createuser.c:432
 #, 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:362
+#: createuser.c:433
 #, c-format
 msgid "  -s, --superuser           role will be superuser\n"
 msgstr "  -s, --superuser           el rol será un superusuario\n"
 
-#: createuser.c:363
+#: createuser.c:434
 #, 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:365
+#: createuser.c:435
+#, c-format
+msgid ""
+"  -v, --valid-until=TIMESTAMP\n"
+"                            password expiration date for role\n"
+msgstr ""
+
+#: createuser.c:438
 #, c-format
 msgid ""
 "  --interactive             prompt for missing role name and attributes rather\n"
@@ -625,17 +656,35 @@ msgstr ""
 "  --interactive             preguntar los nombres y atributos de rol faltantes\n"
 "                            en lugar de asumir los valores por omisión\n"
 
-#: createuser.c:367
+#: createuser.c:440
+#, c-format
+msgid "  --bypassrls               role can bypass row-level security (RLS) policy\n"
+msgstr ""
+
+#: createuser.c:441
+#, fuzzy, c-format
+#| msgid ""
+#| "  -i, --inherit             role inherits privileges of roles it is a\n"
+#| "                            member of (default)\n"
+msgid ""
+"  --no-bypassrls            role cannot bypass row-level security (RLS) policy\n"
+"                            (default)\n"
+msgstr ""
+"  -i, --inherit             el rol heredará los privilegios de los roles de\n"
+"                            los cuales es miembro (predeterminado)\n"
+
+#: createuser.c:443
 #, c-format
 msgid "  --replication             role can initiate replication\n"
 msgstr "  --replication             el rol podrá iniciar replicación\n"
 
-#: createuser.c:368
-#, c-format
-msgid "  --no-replication          role cannot initiate replication\n"
+#: createuser.c:444
+#, fuzzy, c-format
+#| msgid "  --no-replication          role cannot initiate replication\n"
+msgid "  --no-replication          role cannot initiate replication (default)\n"
 msgstr "  --no-replication          el rol no podrá iniciar replicación\n"
 
-#: createuser.c:373
+#: createuser.c:449
 #, c-format
 msgid "  -U, --username=USERNAME   user name to connect as (not the one to create)\n"
 msgstr ""
@@ -875,49 +924,44 @@ msgstr "no se pueden usar múltiples procesos para reindexar índices de sistema
 msgid "cannot use multiple jobs to reindex indexes"
 msgstr "no se pueden usar múltiples procesos para reindexar índices"
 
-#: reindexdb.c:323 reindexdb.c:330 vacuumdb.c:425 vacuumdb.c:432 vacuumdb.c:439
-#: vacuumdb.c:446 vacuumdb.c:453 vacuumdb.c:460 vacuumdb.c:465 vacuumdb.c:469
-#: vacuumdb.c:473
+#: reindexdb.c:323 reindexdb.c:330 vacuumdb.c:509 vacuumdb.c:516 vacuumdb.c:523
+#: vacuumdb.c:530 vacuumdb.c:537 vacuumdb.c:544 vacuumdb.c:551 vacuumdb.c:556
+#: vacuumdb.c:560 vacuumdb.c:564 vacuumdb.c:568
 #, 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:369
-#, c-format
-msgid "cannot reindex system catalogs concurrently, skipping all"
-msgstr "no se puede reindexar un catálogo de sistema concurrentemente, omitiéndolos todos"
-
-#: reindexdb.c:573
+#: reindexdb.c:561
 #, c-format
 msgid "reindexing of database \"%s\" failed: %s"
 msgstr "falló la reindexación de la base de datos «%s»: %s"
 
-#: reindexdb.c:577
+#: reindexdb.c:565
 #, 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:581
+#: reindexdb.c:569
 #, 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:585
+#: reindexdb.c:573
 #, c-format
 msgid "reindexing of system catalogs in database \"%s\" failed: %s"
 msgstr "falló la reindexación de los catálogos de sistema en la base de datos «%s»: %s"
 
-#: reindexdb.c:589
+#: reindexdb.c:577
 #, 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:742
+#: reindexdb.c:730
 #, c-format
 msgid "%s: reindexing database \"%s\"\n"
 msgstr "%s: reindexando la base de datos «%s»\n"
 
-#: reindexdb.c:759
+#: reindexdb.c:747
 #, c-format
 msgid ""
 "%s reindexes a PostgreSQL database.\n"
@@ -926,62 +970,62 @@ msgstr ""
 "%s reindexa una base de datos PostgreSQL.\n"
 "\n"
 
-#: reindexdb.c:763
+#: reindexdb.c:751
 #, c-format
 msgid "  -a, --all                    reindex all databases\n"
 msgstr "  -a, --all                 reindexar todas las bases de datos\n"
 
-#: reindexdb.c:764
+#: reindexdb.c:752
 #, c-format
 msgid "      --concurrently           reindex concurrently\n"
 msgstr "      --concurrently        reindexar en modo concurrente\n"
 
-#: reindexdb.c:765
+#: reindexdb.c:753
 #, c-format
 msgid "  -d, --dbname=DBNAME          database to reindex\n"
 msgstr "  -d, --dbname=BASE-DATOS   base de datos a reindexar\n"
 
-#: reindexdb.c:767
+#: reindexdb.c:755
 #, c-format
 msgid "  -i, --index=INDEX            recreate specific index(es) only\n"
 msgstr "  -i, --index=ÍNDICE        recrear sólo este o estos índice(s)\n"
 
-#: reindexdb.c:768
+#: reindexdb.c:756
 #, c-format
 msgid "  -j, --jobs=NUM               use this many concurrent connections to reindex\n"
 msgstr "  -j, --jobs=NÚM            usar esta cantidad de conexiones concurrentes\n"
 
-#: reindexdb.c:769
+#: reindexdb.c:757
 #, c-format
 msgid "  -q, --quiet                  don't write any messages\n"
 msgstr "  -q, --quiet               no desplegar mensajes\n"
 
-#: reindexdb.c:770
+#: reindexdb.c:758
 #, c-format
 msgid "  -s, --system                 reindex system catalogs only\n"
 msgstr "  -s, --system              sólo reindexar los catálogos del sistema\n"
 
-#: reindexdb.c:771
+#: reindexdb.c:759
 #, 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:772
+#: reindexdb.c:760
 #, c-format
 msgid "  -t, --table=TABLE            reindex specific table(s) only\n"
 msgstr "  -t, --table=TABLA         reindexar sólo esta(s) tabla(s)\n"
 
-#: reindexdb.c:773
+#: reindexdb.c:761
 #, c-format
 msgid "      --tablespace=TABLESPACE  tablespace where indexes are rebuilt\n"
 msgstr "      --tablespace=TABLESPACE  tablespace donde se reconstruirán los índices\n"
 
-#: reindexdb.c:774
+#: reindexdb.c:762
 #, c-format
 msgid "  -v, --verbose                write a lot of output\n"
 msgstr "  -v, --verbose             desplegar varios mensajes informativos\n"
 
-#: reindexdb.c:784
+#: reindexdb.c:772
 #, c-format
 msgid ""
 "\n"
@@ -990,65 +1034,95 @@ msgstr ""
 "\n"
 "Lea la descripción de la orden REINDEX de SQL para obtener mayores detalles.\n"
 
-#: vacuumdb.c:267 vacuumdb.c:270 vacuumdb.c:273 vacuumdb.c:276 vacuumdb.c:279
-#: vacuumdb.c:282 vacuumdb.c:285 vacuumdb.c:294
+#: vacuumdb.c:310 vacuumdb.c:313 vacuumdb.c:316 vacuumdb.c:319 vacuumdb.c:322
+#: vacuumdb.c:325 vacuumdb.c:328 vacuumdb.c:331 vacuumdb.c:340
 #, 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:297
+#: vacuumdb.c:343
 #, c-format
 msgid "cannot use the \"%s\" option when performing full vacuum"
 msgstr "no se puede usar la opción «%s» cuando se está ejecutando vacuum full"
 
-#: vacuumdb.c:303
+#: vacuumdb.c:349 vacuumdb.c:357
 #, c-format
 msgid "cannot use the \"%s\" option with the \"%s\" option"
 msgstr "no se puede usar la opción «%s» junto con la opción «%s»"
 
-#: vacuumdb.c:322
+#: vacuumdb.c:428
 #, c-format
 msgid "cannot vacuum all databases and a specific one at the same time"
 msgstr "no se pueden limpiar todas las bases de datos y una de ellas en particular simultáneamente"
 
-#: vacuumdb.c:324
+#: vacuumdb.c:432
 #, c-format
 msgid "cannot vacuum specific table(s) in all databases"
 msgstr "no es posible limpiar tablas específicas en todas las bases de datos"
 
-#: vacuumdb.c:412
+#: vacuumdb.c:436
+#, fuzzy, c-format
+#| msgid "cannot vacuum specific table(s) in all databases"
+msgid "cannot vacuum specific schema(s) in all databases"
+msgstr "no es posible limpiar tablas específicas en todas las bases de datos"
+
+#: vacuumdb.c:440
+#, fuzzy, c-format
+#| msgid "cannot reindex specific schema(s) in all databases"
+msgid "cannot exclude specific schema(s) in all databases"
+msgstr "no es posible reindexar esquemas específicos en todas las bases de datos"
+
+#: vacuumdb.c:444
+#, fuzzy, c-format
+#| msgid "cannot vacuum all databases and a specific one at the same time"
+msgid "cannot vacuum all tables in schema(s) and specific table(s) at the same time"
+msgstr "no se pueden limpiar todas las bases de datos y una de ellas en particular simultáneamente"
+
+#: vacuumdb.c:448
+#, fuzzy, c-format
+#| msgid "cannot reindex specific table(s) and system catalogs at the same time"
+msgid "cannot vacuum specific table(s) and exclude schema(s) at the same time"
+msgstr "no es posible reindexar tablas específicas y los catálogos del sistema simultáneamente"
+
+#: vacuumdb.c:452
+#, fuzzy, c-format
+#| msgid "cannot vacuum all databases and a specific one at the same time"
+msgid "cannot vacuum all tables in schema(s) and exclude schema(s) at the same time"
+msgstr "no se pueden limpiar todas las bases de datos y una de ellas en particular simultáneamente"
+
+#: vacuumdb.c:496
 msgid "Generating minimal optimizer statistics (1 target)"
 msgstr "Generando estadísticas mínimas para el optimizador (tamaño = 1)"
 
-#: vacuumdb.c:413
+#: vacuumdb.c:497
 msgid "Generating medium optimizer statistics (10 targets)"
 msgstr "Generando estadísticas medias para el optimizador (tamaño = 10)"
 
-#: vacuumdb.c:414
+#: vacuumdb.c:498
 msgid "Generating default (full) optimizer statistics"
 msgstr "Generando estadísticas predeterminadas (completas) para el optimizador"
 
-#: vacuumdb.c:479
+#: vacuumdb.c:577
 #, c-format
 msgid "%s: processing database \"%s\": %s\n"
 msgstr "%s: procesando la base de datos «%s»: %s\n"
 
-#: vacuumdb.c:482
+#: vacuumdb.c:580
 #, c-format
 msgid "%s: vacuuming database \"%s\"\n"
 msgstr "%s: limpiando la base de datos «%s»\n"
 
-#: vacuumdb.c:952
+#: vacuumdb.c:1115
 #, 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:1118
 #, c-format
 msgid "vacuuming of database \"%s\" failed: %s"
 msgstr "falló la limpieza de la base de datos «%s»: %s"
 
-#: vacuumdb.c:963
+#: vacuumdb.c:1126
 #, c-format
 msgid ""
 "%s cleans and analyzes a PostgreSQL database.\n"
@@ -1057,116 +1131,139 @@ msgstr ""
 "%s limpia (VACUUM) y analiza una base de datos PostgreSQL.\n"
 "\n"
 
-#: vacuumdb.c:967
+#: vacuumdb.c:1130
 #, c-format
 msgid "  -a, --all                       vacuum all databases\n"
 msgstr "  -a, --all                    limpia todas las bases de datos\n"
 
-#: vacuumdb.c:968
+#: vacuumdb.c:1131
+#, c-format
+msgid "      --buffer-usage-limit=SIZE   size of ring buffer used for vacuum\n"
+msgstr ""
+
+#: vacuumdb.c:1132
 #, c-format
 msgid "  -d, --dbname=DBNAME             database to vacuum\n"
 msgstr "  -d, --dbname=BASE            base de datos a limpiar\n"
 
-#: vacuumdb.c:969
+#: vacuumdb.c:1133
 #, 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:970
+#: vacuumdb.c:1134
 #, 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:971
+#: vacuumdb.c:1135
 #, c-format
 msgid "  -f, --full                      do full vacuuming\n"
 msgstr "  -f, --full                   usar «vacuum full»\n"
 
-#: vacuumdb.c:972
+#: vacuumdb.c:1136
 #, c-format
 msgid "  -F, --freeze                    freeze row transaction information\n"
 msgstr "  -F, --freeze                 usar «vacuum freeze»\n"
 
-#: vacuumdb.c:973
+#: vacuumdb.c:1137
 #, c-format
 msgid "      --force-index-cleanup       always remove index entries that point to dead tuples\n"
 msgstr "      --force-index-cleanup    siempre eliminar entradas de índice que apunten a tuplas muertas\n"
 
-#: vacuumdb.c:974
+#: vacuumdb.c:1138
 #, 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:975
+#: vacuumdb.c:1139
 #, 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:976
+#: vacuumdb.c:1140
 #, 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:977
+#: vacuumdb.c:1141
 #, c-format
 msgid "      --no-index-cleanup          don't remove index entries that point to dead tuples\n"
 msgstr "      --no-index-cleanup       no eliminar entradas de índice que apunten a tuplas muertas\n"
 
-#: vacuumdb.c:978
+#: vacuumdb.c:1142
+#, fuzzy, c-format
+#| msgid "  -P, --progress           show progress information\n"
+msgid "      --no-process-main           skip the main relation\n"
+msgstr "  -P, --progress           mostrar información de progreso\n"
+
+#: vacuumdb.c:1143
 #, c-format
 msgid "      --no-process-toast          skip the TOAST table associated with the table to vacuum\n"
 msgstr "      --no-process-toast       omitir la tabla TOAST asociada con la tabla a la que se hará vacuum\n"
 
-#: vacuumdb.c:979
+#: vacuumdb.c:1144
 #, c-format
 msgid "      --no-truncate               don't truncate empty pages at the end of the table\n"
 msgstr "      --no-truncate            no truncar las páginas vacías al final de la tabla\n"
 
-#: vacuumdb.c:980
+#: vacuumdb.c:1145
+#, fuzzy, c-format
+#| msgid "  -n, --schema=PATTERN         dump the specified schema(s) only\n"
+msgid "  -n, --schema=PATTERN            vacuum tables in the specified schema(s) only\n"
+msgstr "  -n, --schema=PATRÓN          extrae sólo el o los esquemas nombrados\n"
+
+#: vacuumdb.c:1146
+#, fuzzy, c-format
+#| msgid "  -N, --exclude-schema=PATTERN do NOT dump the specified schema(s)\n"
+msgid "  -N, --exclude-schema=PATTERN    do not vacuum tables in the specified schema(s)\n"
+msgstr "  -N, --exclude-schema=PATRÓN  NO extrae el o los esquemas nombrados\n"
+
+#: vacuumdb.c:1147
 #, c-format
 msgid "  -P, --parallel=PARALLEL_WORKERS use this many background workers for vacuum, if available\n"
 msgstr "  -P, --parallel=NPROCS        usar esta cantidad de procesos para vacuum, si están disponibles\n"
 
-#: vacuumdb.c:981
+#: vacuumdb.c:1148
 #, c-format
 msgid "  -q, --quiet                     don't write any messages\n"
 msgstr "  -q, --quiet                  no desplegar mensajes\n"
 
-#: vacuumdb.c:982
+#: vacuumdb.c:1149
 #, 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:983
+#: vacuumdb.c:1150
 #, 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:984
+#: vacuumdb.c:1151
 #, c-format
 msgid "  -v, --verbose                   write a lot of output\n"
 msgstr "  -v, --verbose                desplegar varios mensajes informativos\n"
 
-#: vacuumdb.c:985
+#: vacuumdb.c:1152
 #, 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:986
+#: vacuumdb.c:1153
 #, c-format
 msgid "  -z, --analyze                   update optimizer statistics\n"
 msgstr "  -z, --analyze                actualizar las estadísticas del optimizador\n"
 
-#: vacuumdb.c:987
+#: vacuumdb.c:1154
 #, 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:988
+#: vacuumdb.c:1155
 #, c-format
 msgid ""
 "      --analyze-in-stages         only update optimizer statistics, in multiple\n"
@@ -1176,12 +1273,12 @@ msgstr ""
 "                               en múltiples etapas para resultados más rápidos;\n"
 "                               no hacer vacuum\n"
 
-#: vacuumdb.c:990
+#: vacuumdb.c:1157
 #, c-format
 msgid "  -?, --help                      show this help, then exit\n"
 msgstr "  -?, --help                   mostrar esta ayuda y salir\n"
 
-#: vacuumdb.c:998
+#: vacuumdb.c:1165
 #, c-format
 msgid ""
 "\n"
@@ -1191,9 +1288,5 @@ msgstr ""
 "Lea la descripción de la orden VACUUM de SQL para obtener mayores detalles.\n"
 
 #, c-format
-#~ msgid "only one of --locale and --lc-ctype can be specified"
-#~ msgstr "sólo uno de --locale y --lc-ctype puede ser especificado"
-
-#, c-format
-#~ msgid "only one of --locale and --lc-collate can be specified"
-#~ msgstr "sólo uno de --locale y --lc-collate puede ser especificado"
+#~ msgid "cannot reindex system catalogs concurrently, skipping all"
+#~ msgstr "no se puede reindexar un catálogo de sistema concurrentemente, omitiéndolos todos"
index 91aafaf16f6618f92421c25f1243af439af77e7e..c6be0259b2a4cc93688155dbc3502d945b118bb5 100644 (file)
@@ -10,7 +10,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: plperl (PostgreSQL) 15\n"
 "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n"
-"POT-Creation-Date: 2022-09-24 23:09+0000\n"
+"POT-Creation-Date: 2023-05-09 09:08+0000\n"
 "PO-Revision-Date: 2022-10-20 09:06+0200\n"
 "Last-Translator: Carlos Chapi <carlos.chapi@2ndquadrant.com>\n"
 "Language-Team: PgSQL-es-Ayuda <pgsql-es-ayuda@lists.postgresql.org>\n"
@@ -20,210 +20,210 @@ msgstr ""
 "Content-Transfer-Encoding: 8bit\n"
 "X-Generator: Poedit 1.8.7\n"
 
-#: plperl.c:408
+#: 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:422
+#: 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:444
+#: 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:452
+#: 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:646
+#: plperl.c:643
 #, 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:669 plperl.c:853 plperl.c:859 plperl.c:976 plperl.c:988
-#: plperl.c:1031 plperl.c:1054 plperl.c:2138 plperl.c:2246 plperl.c:2314
-#: plperl.c:2377
+#: plperl.c:666 plperl.c:850 plperl.c:856 plperl.c:973 plperl.c:985
+#: plperl.c:1028 plperl.c:1051 plperl.c:2151 plperl.c:2259 plperl.c:2327
+#: plperl.c:2390
 #, c-format
 msgid "%s"
 msgstr "%s"
 
-#: plperl.c:670
+#: plperl.c:667
 #, c-format
 msgid "while executing PostgreSQL::InServer::SPI::bootstrap"
 msgstr "mientras se ejecutaba PostgreSQL::InServer::SPI::bootstrap"
 
-#: plperl.c:854
+#: plperl.c:851
 #, c-format
 msgid "while parsing Perl initialization"
 msgstr "mientras se interpretaba la inicialización de Perl"
 
-#: plperl.c:860
+#: plperl.c:857
 #, c-format
 msgid "while running Perl initialization"
 msgstr "mientras se ejecutaba la inicialización de Perl"
 
-#: plperl.c:977
+#: plperl.c:974
 #, c-format
 msgid "while executing PLC_TRUSTED"
 msgstr "mientras se ejecutaba PLC_TRUSTED"
 
-#: plperl.c:989
+#: plperl.c:986
 #, c-format
 msgid "while executing utf8fix"
 msgstr "mientras se ejecutaba utf8fix"
 
-#: plperl.c:1032
+#: plperl.c:1029
 #, c-format
 msgid "while executing plperl.on_plperl_init"
 msgstr "mientras se ejecutaba plperl.on_plperl_init"
 
-#: plperl.c:1055
+#: plperl.c:1052
 #, c-format
 msgid "while executing plperl.on_plperlu_init"
 msgstr "mientras se ejecutaba plperl.on_plperlu_init"
 
-#: plperl.c:1101 plperl.c:1791
+#: plperl.c:1098 plperl.c:1804
 #, c-format
 msgid "Perl hash contains nonexistent column \"%s\""
 msgstr "el hash de Perl contiene el columna inexistente «%s»"
 
-#: plperl.c:1106 plperl.c:1796
+#: plperl.c:1103 plperl.c:1809
 #, c-format
 msgid "cannot set system attribute \"%s\""
 msgstr "no se puede definir el atributo de sistema «%s»"
 
-#: 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:1206 plperl.c:1223
+#: plperl.c:1199 plperl.c:1214 plperl.c:1231
 #, 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:1259
+#: plperl.c:1204
+#, 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:1274
 #, 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:1362
+#: plperl.c:1375
 #, 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:1384 plperl.c:3304
+#: plperl.c:1397 plperl.c:3315
 #, 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:1445
+#: plperl.c:1458
 #, c-format
 msgid "lookup failed for type %s"
 msgstr "búsqueda del tipo %s falló"
 
-#: plperl.c:1766
+#: plperl.c:1779
 #, c-format
 msgid "$_TD->{new} does not exist"
 msgstr "$_TD->{new} no existe"
 
-#: plperl.c:1770
+#: plperl.c:1783
 #, c-format
 msgid "$_TD->{new} is not a hash reference"
 msgstr "$_TD->{new} no es una referencia a un hash"
 
-#: plperl.c:1801
+#: plperl.c:1814
 #, c-format
 msgid "cannot set generated column \"%s\""
 msgstr "no se puede definir la columna generada «%s»"
 
-#: plperl.c:2013 plperl.c:2854
+#: plperl.c:2026 plperl.c:2867
 #, c-format
 msgid "PL/Perl functions cannot return type %s"
 msgstr "las funciones en PL/Perl no pueden retornar el tipo %s"
 
-#: plperl.c:2026 plperl.c:2893
+#: plperl.c:2039 plperl.c:2906
 #, c-format
 msgid "PL/Perl functions cannot accept type %s"
 msgstr "funciones de PL/Perl no pueden aceptar el tipo %s"
 
-#: plperl.c:2143
+#: plperl.c:2156
 #, 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:2234
+#: plperl.c:2247
 #, 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:2278 plperl.c:2345
+#: plperl.c:2291 plperl.c:2358
 #, c-format
 msgid "couldn't fetch $_TD"
 msgstr "no se pudo obtener $_TD"
 
-#: plperl.c:2302 plperl.c:2365
+#: plperl.c:2315 plperl.c:2378
 #, 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:2423
+#: plperl.c:2436
 #, 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:2428
+#: plperl.c:2441
 #, 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"
 
-#: plperl.c:2472
+#: plperl.c:2485
 #, 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:2593
+#: plperl.c:2606
 #, c-format
 msgid "ignoring modified row in DELETE trigger"
 msgstr "ignorando la tupla modificada en el disparador DELETE"
 
-#: plperl.c:2601
+#: plperl.c:2614
 #, 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:2849
+#: plperl.c:2862
 #, c-format
 msgid "trigger functions can only be called as triggers"
 msgstr "las funciones disparadoras sólo pueden ser llamadas como disparadores"
 
-#: plperl.c:3209
+#: plperl.c:3220
 #, 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:3281
+#: plperl.c:3292
 #, 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:3355
+#: plperl.c:3366
 #, 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:4137
+#: plperl.c:4148
 #, c-format
 msgid "PL/Perl function \"%s\""
 msgstr "función PL/Perl «%s»"
 
-#: plperl.c:4149
+#: plperl.c:4160
 #, c-format
 msgid "compilation of PL/Perl function \"%s\""
 msgstr "compilación de la función PL/Perl «%s»"
 
-#: plperl.c:4158
+#: plperl.c:4169
 #, c-format
 msgid "PL/Perl anonymous code block"
 msgstr "bloque de código anónimo de PL/Perl"
index 589701b1b713834e0a1a04d33c9baeb436ecff50..b32f13356b952360e8901dedb6e37863b8977f57 100644 (file)
@@ -12,7 +12,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: plpgsql (PostgreSQL) 15\n"
 "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n"
-"POT-Creation-Date: 2022-09-24 23:09+0000\n"
+"POT-Creation-Date: 2023-05-09 09:09+0000\n"
 "PO-Revision-Date: 2022-10-20 09:06+0200\n"
 "Last-Translator: Carlos Chapi <carloswaldo@babelruins.org>\n"
 "Language-Team: PgSQL-es-Ayuda <pgsql-es-ayuda@lists.postgresql.org>\n"
@@ -23,159 +23,159 @@ msgstr ""
 "Plural-Forms: nplurals=2; plural=n != 1;\n"
 "X-Generator: BlackCAT 1.1\n"
 
-#: pl_comp.c:438 pl_handler.c:496
+#: pl_comp.c:434 pl_handler.c:496
 #, c-format
 msgid "PL/pgSQL functions cannot accept type %s"
 msgstr "las funciones PL/pgSQL no pueden aceptar el tipo %s"
 
-#: pl_comp.c:530
+#: pl_comp.c:526
 #, c-format
 msgid "could not determine actual return type for polymorphic function \"%s\""
 msgstr "no se pudo determinar el verdadero tipo de resultado para la función polimórfica «%s»"
 
-#: pl_comp.c:560
+#: pl_comp.c:556
 #, c-format
 msgid "trigger functions can only be called as triggers"
 msgstr "las funciones de disparador sólo pueden ser invocadas como disparadores"
 
-#: pl_comp.c:564 pl_handler.c:480
+#: pl_comp.c:560 pl_handler.c:480
 #, c-format
 msgid "PL/pgSQL functions cannot return type %s"
 msgstr "las funciones PL/pgSQL no pueden retornar el tipo %s"
 
-#: pl_comp.c:604
+#: pl_comp.c:600
 #, c-format
 msgid "trigger functions cannot have declared arguments"
 msgstr "las funciones de disparador no pueden tener argumentos declarados"
 
-#: pl_comp.c:605
+#: pl_comp.c:601
 #, c-format
 msgid "The arguments of the trigger can be accessed through TG_NARGS and TG_ARGV instead."
 msgstr "Los argumentos del disparador pueden accederse usando TG_NARGS y TG_ARGV."
 
-#: pl_comp.c:738
+#: pl_comp.c:734
 #, c-format
 msgid "event trigger functions cannot have declared arguments"
 msgstr "las funciones de disparador por eventos no pueden tener argumentos declarados"
 
-#: pl_comp.c:1002
+#: pl_comp.c:998
 #, c-format
 msgid "compilation of PL/pgSQL function \"%s\" near line %d"
 msgstr "compilación de la función PL/pgSQL «%s» cerca de la línea %d"
 
-#: pl_comp.c:1025
+#: pl_comp.c:1021
 #, c-format
 msgid "parameter name \"%s\" used more than once"
 msgstr "el nombre de parámetro «%s» fue usado más de una vez"
 
-#: pl_comp.c:1139
+#: pl_comp.c:1135
 #, c-format
 msgid "column reference \"%s\" is ambiguous"
 msgstr "la referencia a la columna «%s» es ambigua"
 
-#: pl_comp.c:1141
+#: pl_comp.c:1137
 #, c-format
 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:1324 pl_exec.c:5234 pl_exec.c:5407 pl_exec.c:5494 pl_exec.c:5585
-#: pl_exec.c:6606
+#: pl_comp.c:1314 pl_exec.c:5255 pl_exec.c:5428 pl_exec.c:5515 pl_exec.c:5606
+#: pl_exec.c:6624
 #, c-format
 msgid "record \"%s\" has no field \"%s\""
 msgstr "el registro «%s» no tiene un campo «%s»"
 
-#: pl_comp.c:1818
+#: pl_comp.c:1808
 #, c-format
 msgid "relation \"%s\" does not exist"
 msgstr "no existe la relación «%s»"
 
-#: pl_comp.c:1825 pl_comp.c:1867
+#: pl_comp.c:1815 pl_comp.c:1857
 #, c-format
 msgid "relation \"%s\" does not have a composite type"
 msgstr "la relación «%s» no contiene un tipo compuesto"
 
-#: pl_comp.c:1933
+#: pl_comp.c:1923
 #, c-format
 msgid "variable \"%s\" has pseudo-type %s"
 msgstr "la variable «%s» tiene pseudotipo %s"
 
-#: pl_comp.c:2122
+#: pl_comp.c:2112
 #, c-format
 msgid "type \"%s\" is only a shell"
 msgstr "el tipo «%s» está inconcluso"
 
-#: pl_comp.c:2204 pl_exec.c:6907
+#: pl_comp.c:2194 pl_exec.c:6925
 #, c-format
 msgid "type %s is not composite"
 msgstr "el tipo %s no es compuesto"
 
-#: pl_comp.c:2252 pl_comp.c:2305
+#: pl_comp.c:2242 pl_comp.c:2295
 #, c-format
 msgid "unrecognized exception condition \"%s\""
 msgstr "no se reconoce la condición de excepción «%s»"
 
-#: pl_comp.c:2534
+#: pl_comp.c:2524
 #, 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:501 pl_exec.c:940 pl_exec.c:1175
+#: pl_exec.c:511 pl_exec.c:950 pl_exec.c:1185
 msgid "during initialization of execution state"
 msgstr "durante la inicialización del estado de ejecución"
 
-#: pl_exec.c:507
+#: pl_exec.c:517
 msgid "while storing call arguments into local variables"
 msgstr "mientras se almacenaban los argumentos de invocación en variables locales"
 
-#: pl_exec.c:595 pl_exec.c:1013
+#: pl_exec.c:605 pl_exec.c:1023
 msgid "during function entry"
 msgstr "durante el ingreso a la función"
 
-#: pl_exec.c:618
+#: pl_exec.c:628
 #, 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:624
+#: pl_exec.c:634
 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:636 pl_exec.c:3665
+#: pl_exec.c:646 pl_exec.c:3681
 #, 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:641 pl_exec.c:3671
+#: pl_exec.c:651 pl_exec.c:3687
 #, 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"
 
-#: pl_exec.c:768 pl_exec.c:1039 pl_exec.c:1197
+#: pl_exec.c:778 pl_exec.c:1049 pl_exec.c:1207
 msgid "during function exit"
 msgstr "durante la salida de la función"
 
-#: pl_exec.c:823 pl_exec.c:887 pl_exec.c:3464
+#: pl_exec.c:833 pl_exec.c:897 pl_exec.c:3480
 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:1036 pl_exec.c:1194
+#: pl_exec.c:1046 pl_exec.c:1204
 #, 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:1044
+#: pl_exec.c:1054
 #, c-format
 msgid "trigger procedure cannot return a set"
 msgstr "los procedimientos disparadores no pueden retornar conjuntos"
 
-#: pl_exec.c:1083 pl_exec.c:1111
+#: pl_exec.c:1093 pl_exec.c:1121
 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:1252
+#: pl_exec.c:1262
 #, c-format
 msgid "PL/pgSQL function %s line %d %s"
 msgstr "función PL/pgSQL %s en la línea %d %s"
@@ -183,336 +183,336 @@ 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:1263
+#: pl_exec.c:1273
 #, 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:1271
+#: pl_exec.c:1281
 #, 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:1277
+#: pl_exec.c:1287
 #, c-format
 msgid "PL/pgSQL function %s"
 msgstr "función PL/pgSQL %s"
 
-#: pl_exec.c:1648
+#: pl_exec.c:1658
 msgid "during statement block local variable initialization"
 msgstr "durante inicialización de variables locales en el bloque de sentencias"
 
-#: pl_exec.c:1753
+#: pl_exec.c:1763
 msgid "during statement block entry"
 msgstr "durante la entrada al bloque de sentencias"
 
-#: pl_exec.c:1785
+#: pl_exec.c:1795
 msgid "during statement block exit"
 msgstr "durante la salida del bloque de sentencias"
 
-#: pl_exec.c:1823
+#: pl_exec.c:1833
 msgid "during exception cleanup"
 msgstr "durante la finalización por excepción"
 
-#: pl_exec.c:2360
+#: pl_exec.c:2370
 #, 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:2365
+#: pl_exec.c:2375
 #, 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:2399
+#: pl_exec.c:2409
 #, 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:2599
+#: pl_exec.c:2615
 #, c-format
 msgid "case not found"
 msgstr "caso no encontrado"
 
-#: pl_exec.c:2600
+#: pl_exec.c:2616
 #, c-format
 msgid "CASE statement is missing ELSE part."
 msgstr "A la sentencia CASE le falta la parte ELSE."
 
-#: pl_exec.c:2693
+#: pl_exec.c:2709
 #, 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:2709
+#: pl_exec.c:2725
 #, 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:2727
+#: pl_exec.c:2743
 #, 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:2733
+#: pl_exec.c:2749
 #, 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:2867 pl_exec.c:4667
+#: pl_exec.c:2883 pl_exec.c:4688
 #, c-format
 msgid "cursor \"%s\" already in use"
 msgstr "el cursor «%s» ya está en uso"
 
-#: pl_exec.c:2890 pl_exec.c:4737
+#: pl_exec.c:2906 pl_exec.c:4758
 #, c-format
 msgid "arguments given for cursor without arguments"
 msgstr "se dieron argumentos a un cursor sin argumentos"
 
-#: pl_exec.c:2909 pl_exec.c:4756
+#: pl_exec.c:2925 pl_exec.c:4777
 #, c-format
 msgid "arguments required for cursor"
 msgstr "se requieren argumentos para el cursor"
 
-#: pl_exec.c:3000
+#: pl_exec.c:3016
 #, c-format
 msgid "FOREACH expression must not be null"
 msgstr "la expresión FOREACH no debe ser nula"
 
-#: pl_exec.c:3015
+#: pl_exec.c:3031
 #, 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:3032
+#: pl_exec.c:3048
 #, 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:3059
+#: pl_exec.c:3075
 #, 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:3063
+#: pl_exec.c:3079
 #, 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:3225 pl_exec.c:3282 pl_exec.c:3457
+#: pl_exec.c:3241 pl_exec.c:3298 pl_exec.c:3473
 #, 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:3321 pl_gram.y:3319
+#: pl_exec.c:3337 pl_gram.y:3295
 #, 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:3362 pl_exec.c:3494
+#: pl_exec.c:3378 pl_exec.c:3510
 #, c-format
 msgid "wrong result type supplied in RETURN NEXT"
 msgstr "se pasó un tipo incorrecto de resultado a RETURN NEXT"
 
-#: pl_exec.c:3400 pl_exec.c:3421
+#: pl_exec.c:3416 pl_exec.c:3437
 #, c-format
 msgid "wrong record type supplied in RETURN NEXT"
 msgstr "se pasó un tipo de registro incorrecto a RETURN NEXT"
 
-#: pl_exec.c:3513
+#: pl_exec.c:3529
 #, c-format
 msgid "RETURN NEXT must have a parameter"
 msgstr "RETURN NEXT debe tener un parámetro"
 
-#: pl_exec.c:3541 pl_gram.y:3383
+#: pl_exec.c:3557 pl_gram.y:3359
 #, 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:3559
+#: pl_exec.c:3575
 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:3614 pl_exec.c:4444 pl_exec.c:8685
+#: pl_exec.c:3630 pl_exec.c:4465 pl_exec.c:8724
 #, c-format
 msgid "query string argument of EXECUTE is null"
 msgstr "el argumento de consulta a ejecutar en EXECUTE es null"
 
-#: pl_exec.c:3699 pl_exec.c:3837
+#: pl_exec.c:3715 pl_exec.c:3853
 #, c-format
 msgid "RAISE option already specified: %s"
 msgstr "la opción de RAISE ya se especificó: %s"
 
-#: pl_exec.c:3733
+#: pl_exec.c:3749
 #, 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:3827
+#: pl_exec.c:3843
 #, c-format
 msgid "RAISE statement option cannot be null"
 msgstr "la opción de sentencia en RAISE no puede ser null"
 
-#: pl_exec.c:3897
+#: pl_exec.c:3913
 #, c-format
 msgid "%s"
 msgstr "%s"
 
-#: pl_exec.c:3952
+#: pl_exec.c:3968
 #, c-format
 msgid "assertion failed"
 msgstr "aseveración falló"
 
-#: pl_exec.c:4317 pl_exec.c:4506
+#: pl_exec.c:4338 pl_exec.c:4527
 #, 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:4323
+#: pl_exec.c:4344
 #, c-format
 msgid "unsupported transaction command in PL/pgSQL"
 msgstr "orden de transacción no soportada en PL/pgSQL"
 
-#: pl_exec.c:4346 pl_exec.c:4535
+#: pl_exec.c:4367 pl_exec.c:4556
 #, 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:4369 pl_exec.c:4558
+#: pl_exec.c:4390 pl_exec.c:4579
 #, c-format
 msgid "query returned no rows"
 msgstr "la consulta no regresó filas"
 
-#: pl_exec.c:4391 pl_exec.c:4577 pl_exec.c:5729
+#: pl_exec.c:4412 pl_exec.c:4598 pl_exec.c:5750
 #, c-format
 msgid "query returned more than one row"
 msgstr "la consulta regresó más de una fila"
 
-#: pl_exec.c:4393
+#: pl_exec.c:4414
 #, 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:4409
+#: pl_exec.c:4430
 #, 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:4410
+#: pl_exec.c:4431
 #, 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:4498
+#: pl_exec.c:4519
 #, c-format
 msgid "EXECUTE of SELECT ... INTO is not implemented"
 msgstr "no está implementado EXECUTE de un SELECT ... INTO"
 
-#: pl_exec.c:4499
+#: pl_exec.c:4520
 #, 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:4512
+#: pl_exec.c:4533
 #, c-format
 msgid "EXECUTE of transaction commands is not implemented"
 msgstr "no está implementado EXECUTE de órdenes de transacción"
 
-#: pl_exec.c:4822 pl_exec.c:4910
+#: pl_exec.c:4843 pl_exec.c:4931
 #, c-format
 msgid "cursor variable \"%s\" is null"
 msgstr "variable cursor «%s» es null"
 
-#: pl_exec.c:4833 pl_exec.c:4921
+#: pl_exec.c:4854 pl_exec.c:4942
 #, c-format
 msgid "cursor \"%s\" does not exist"
 msgstr "no existe el cursor «%s»"
 
-#: pl_exec.c:4846
+#: pl_exec.c:4867
 #, c-format
 msgid "relative or absolute cursor position is null"
 msgstr "la posición relativa o absoluta del cursor es null"
 
-#: pl_exec.c:5084 pl_exec.c:5179
+#: pl_exec.c:5105 pl_exec.c:5200
 #, 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:5160
+#: pl_exec.c:5181
 #, 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:5192
+#: pl_exec.c:5213
 #, 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:5243
+#: pl_exec.c:5264
 #, c-format
 msgid "cannot assign to system column \"%s\""
 msgstr "no se puede asignar a la columna de sistema «%s»"
 
-#: pl_exec.c:5692
+#: pl_exec.c:5713
 #, c-format
 msgid "query did not return data"
 msgstr "la consulta no retornó datos"
 
-#: pl_exec.c:5693 pl_exec.c:5705 pl_exec.c:5730 pl_exec.c:5806 pl_exec.c:5811
+#: pl_exec.c:5714 pl_exec.c:5726 pl_exec.c:5751 pl_exec.c:5827 pl_exec.c:5832
 #, c-format
 msgid "query: %s"
 msgstr "consulta: %s"
 
-#: pl_exec.c:5701
+#: pl_exec.c:5722
 #, c-format
 msgid "query returned %d column"
 msgid_plural "query returned %d columns"
 msgstr[0] "la consulta retornó %d columna"
 msgstr[1] "la consulta retornó %d columnas"
 
-#: pl_exec.c:5805
+#: pl_exec.c:5826
 #, c-format
 msgid "query is SELECT INTO, but it should be plain SELECT"
 msgstr "la consulta es SELECT INTO, pero debería ser un SELECT simple"
 
-#: pl_exec.c:5810
+#: pl_exec.c:5831
 #, c-format
 msgid "query is not a SELECT"
 msgstr "la consulta no es un SELECT"
 
-#: pl_exec.c:6620 pl_exec.c:6660 pl_exec.c:6700
+#: pl_exec.c:6638 pl_exec.c:6678 pl_exec.c:6718
 #, 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:7111 pl_exec.c:7145 pl_exec.c:7219 pl_exec.c:7245
+#: pl_exec.c:7129 pl_exec.c:7163 pl_exec.c:7237 pl_exec.c:7263
 #, 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:7113 pl_exec.c:7147 pl_exec.c:7221 pl_exec.c:7247
+#: pl_exec.c:7131 pl_exec.c:7165 pl_exec.c:7239 pl_exec.c:7265
 #, c-format
 msgid "%s check of %s is active."
 msgstr "El chequeo %s de %s está activo."
 
-#: pl_exec.c:7117 pl_exec.c:7151 pl_exec.c:7225 pl_exec.c:7251
+#: pl_exec.c:7135 pl_exec.c:7169 pl_exec.c:7243 pl_exec.c:7269
 #, 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:7638
+#: pl_exec.c:7656
 #, c-format
 msgid "record \"%s\" is not assigned yet"
 msgstr "el registro «%s» no ha sido asignado aún"
 
-#: pl_exec.c:7639
+#: pl_exec.c:7657
 #, 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_exec.c:8283 pl_gram.y:3442
+#: pl_exec.c:8322 pl_gram.y:3418
 #, c-format
 msgid "variable \"%s\" is declared CONSTANT"
 msgstr "la variable «%s» esta declarada como CONSTANT"
@@ -549,275 +549,275 @@ msgstr "sentencia SQL"
 msgid "FOR over EXECUTE statement"
 msgstr "bucle FOR en torno a una sentencia EXECUTE"
 
-#: pl_gram.y:487
+#: pl_gram.y:485
 #, c-format
 msgid "block label must be placed before DECLARE, not after"
 msgstr "etiqueta de bloque debe estar antes de DECLARE, no después"
 
-#: pl_gram.y:507
+#: pl_gram.y:505
 #, c-format
 msgid "collations are not supported by type %s"
 msgstr "los ordenamientos (collation) no están soportados por el tipo %s"
 
-#: pl_gram.y:526
+#: pl_gram.y:524
 #, c-format
 msgid "variable \"%s\" must have a default value, since it's declared NOT NULL"
 msgstr "la variable «%s» debe tener valor por omisión, puesto que está declarado NOT NULL"
 
-#: pl_gram.y:674 pl_gram.y:689 pl_gram.y:715
+#: pl_gram.y:645 pl_gram.y:660 pl_gram.y:686
 #, c-format
 msgid "variable \"%s\" does not exist"
 msgstr "no existe la variable «%s»"
 
-#: pl_gram.y:733 pl_gram.y:761
+#: pl_gram.y:704 pl_gram.y:732
 msgid "duplicate declaration"
 msgstr "declaración duplicada"
 
-#: pl_gram.y:744 pl_gram.y:772
+#: pl_gram.y:715 pl_gram.y:743
 #, c-format
 msgid "variable \"%s\" shadows a previously defined variable"
 msgstr "la variable «%s» oculta una variable definida anteriormente"
 
-#: pl_gram.y:1044
+#: pl_gram.y:1016
 #, c-format
 msgid "diagnostics item %s is not allowed in GET STACKED DIAGNOSTICS"
 msgstr "elemento de diagnóstico %s no se permite en GET STACKED DIAGNOSTICS"
 
-#: pl_gram.y:1062
+#: pl_gram.y:1034
 #, c-format
 msgid "diagnostics item %s is not allowed in GET CURRENT DIAGNOSTICS"
 msgstr "elemento de diagnóstico %s no se permite en GET STACKED DIAGNOSTICS"
 
-#: pl_gram.y:1157
+#: pl_gram.y:1132
 msgid "unrecognized GET DIAGNOSTICS item"
 msgstr "elemento de GET DIAGNOSTICS no reconocido"
 
-#: pl_gram.y:1173 pl_gram.y:3558
+#: pl_gram.y:1148 pl_gram.y:3534
 #, c-format
 msgid "\"%s\" is not a scalar variable"
 msgstr "«%s» no es una variable escalar"
 
-#: pl_gram.y:1403 pl_gram.y:1597
+#: pl_gram.y:1378 pl_gram.y:1572
 #, c-format
 msgid "loop variable of loop over rows must be a record variable or list of scalar variables"
 msgstr "la variable de bucle de un bucle sobre filas debe ser una variable de tipo record o una lista de variables escalares"
 
-#: pl_gram.y:1438
+#: pl_gram.y:1413
 #, c-format
 msgid "cursor FOR loop must have only one target variable"
 msgstr "un bucle FOR de un cursor debe tener sólo una variable de destino"
 
-#: pl_gram.y:1445
+#: pl_gram.y:1420
 #, c-format
 msgid "cursor FOR loop must use a bound cursor variable"
 msgstr "un bucle FOR en torno a un cursor debe usar un cursor enlazado (bound)"
 
-#: pl_gram.y:1536
+#: pl_gram.y:1511
 #, c-format
 msgid "integer FOR loop must have only one target variable"
 msgstr "un bucle FOR de un número entero debe tener sólo una variable de destino"
 
-#: pl_gram.y:1570
+#: pl_gram.y:1545
 #, c-format
 msgid "cannot specify REVERSE in query FOR loop"
 msgstr "no se puede especificar REVERSE en un bucle FOR de una consulta"
 
-#: pl_gram.y:1700
+#: pl_gram.y:1675
 #, c-format
 msgid "loop variable of FOREACH must be a known variable or list of variables"
 msgstr "la variable de bucle de FOREACH debe ser una variable conocida o una lista de variables conocidas"
 
-#: pl_gram.y:1742
+#: pl_gram.y:1717
 #, c-format
 msgid "there is no label \"%s\" attached to any block or loop enclosing this statement"
 msgstr "ningún bloque o bucle que contenga esta sentencia tiene una etiqueta «%s»"
 
-#: pl_gram.y:1750
+#: pl_gram.y:1725
 #, c-format
 msgid "block label \"%s\" cannot be used in CONTINUE"
 msgstr "la etiqueta de bloque «%s» no puede usarse en CONTINUE"
 
-#: pl_gram.y:1765
+#: pl_gram.y:1740
 #, c-format
 msgid "EXIT cannot be used outside a loop, unless it has a label"
 msgstr "EXIT no puede usarse fuera de un bucle, a menos que tenga una etiqueta"
 
-#: pl_gram.y:1766
+#: pl_gram.y:1741
 #, c-format
 msgid "CONTINUE cannot be used outside a loop"
 msgstr "CONTINUE no puede usarse fuera de un bucle"
 
-#: pl_gram.y:1790 pl_gram.y:1828 pl_gram.y:1876 pl_gram.y:3005 pl_gram.y:3093
-#: pl_gram.y:3204 pl_gram.y:3957
+#: pl_gram.y:1765 pl_gram.y:1803 pl_gram.y:1851 pl_gram.y:2981 pl_gram.y:3069
+#: pl_gram.y:3180 pl_gram.y:3933
 msgid "unexpected end of function definition"
 msgstr "fin inesperado de la definición de la función"
 
-#: pl_gram.y:1896 pl_gram.y:1920 pl_gram.y:1936 pl_gram.y:1942 pl_gram.y:2067
-#: pl_gram.y:2075 pl_gram.y:2089 pl_gram.y:2184 pl_gram.y:2408 pl_gram.y:2498
-#: pl_gram.y:2656 pl_gram.y:3800 pl_gram.y:3861 pl_gram.y:3938
+#: pl_gram.y:1871 pl_gram.y:1895 pl_gram.y:1911 pl_gram.y:1917 pl_gram.y:2042
+#: pl_gram.y:2050 pl_gram.y:2064 pl_gram.y:2159 pl_gram.y:2383 pl_gram.y:2473
+#: pl_gram.y:2632 pl_gram.y:3776 pl_gram.y:3837 pl_gram.y:3914
 msgid "syntax error"
 msgstr "error de sintaxis"
 
-#: pl_gram.y:1924 pl_gram.y:1926 pl_gram.y:2412 pl_gram.y:2414
+#: pl_gram.y:1899 pl_gram.y:1901 pl_gram.y:2387 pl_gram.y:2389
 msgid "invalid SQLSTATE code"
 msgstr "código SQLSTATE no válido"
 
-#: pl_gram.y:2132
+#: pl_gram.y:2107
 msgid "syntax error, expected \"FOR\""
 msgstr "error de sintaxis, se esperaba «FOR»"
 
-#: pl_gram.y:2193
+#: pl_gram.y:2168
 #, c-format
 msgid "FETCH statement cannot return multiple rows"
 msgstr "la sentencia FETCH no puede retornar múltiples filas"
 
-#: pl_gram.y:2290
+#: pl_gram.y:2265
 #, c-format
 msgid "cursor variable must be a simple variable"
 msgstr "variable de cursor debe ser una variable simple"
 
-#: pl_gram.y:2296
+#: pl_gram.y:2271
 #, c-format
 msgid "variable \"%s\" must be of type cursor or refcursor"
 msgstr "la variable «%s» debe ser de tipo cursor o refcursor"
 
-#: pl_gram.y:2627 pl_gram.y:2638
+#: pl_gram.y:2603 pl_gram.y:2614
 #, c-format
 msgid "\"%s\" is not a known variable"
 msgstr "«%s» no es una variable conocida"
 
-#: pl_gram.y:2744 pl_gram.y:2754 pl_gram.y:2910
+#: pl_gram.y:2720 pl_gram.y:2730 pl_gram.y:2886
 msgid "mismatched parentheses"
 msgstr "no coinciden los paréntesis"
 
-#: pl_gram.y:2758
+#: pl_gram.y:2734
 #, c-format
 msgid "missing \"%s\" at end of SQL expression"
 msgstr "falta «%s» al final de la expresión SQL"
 
-#: pl_gram.y:2764
+#: pl_gram.y:2740
 #, c-format
 msgid "missing \"%s\" at end of SQL statement"
 msgstr "falta «%s» al final de la sentencia SQL"
 
-#: pl_gram.y:2781
+#: pl_gram.y:2757
 msgid "missing expression"
 msgstr "expresión faltante"
 
-#: pl_gram.y:2783
+#: pl_gram.y:2759
 msgid "missing SQL statement"
 msgstr "sentencia SQL faltante"
 
-#: pl_gram.y:2912
+#: pl_gram.y:2888
 msgid "incomplete data type declaration"
 msgstr "declaración de tipo de dato incompleta"
 
-#: pl_gram.y:2935
+#: pl_gram.y:2911
 msgid "missing data type declaration"
 msgstr "declaración de tipo de dato faltante"
 
-#: pl_gram.y:3015
+#: pl_gram.y:2991
 msgid "INTO specified more than once"
 msgstr "INTO fue especificado más de una vez"
 
-#: pl_gram.y:3185
+#: pl_gram.y:3161
 msgid "expected FROM or IN"
 msgstr "se espera FROM o IN"
 
-#: pl_gram.y:3246
+#: pl_gram.y:3222
 #, c-format
 msgid "RETURN cannot have a parameter in function returning set"
 msgstr "RETURN no puede tener un parámetro en una función que retorna un conjunto"
 
-#: pl_gram.y:3247
+#: pl_gram.y:3223
 #, c-format
 msgid "Use RETURN NEXT or RETURN QUERY."
 msgstr "Use RETURN NEXT o RETURN QUERY."
 
-#: pl_gram.y:3257
+#: pl_gram.y:3233
 #, c-format
 msgid "RETURN cannot have a parameter in a procedure"
 msgstr "RETURN no puede tener un parámetro un procedimiento"
 
-#: pl_gram.y:3262
+#: pl_gram.y:3238
 #, c-format
 msgid "RETURN cannot have a parameter in function returning void"
 msgstr "RETURN no puede tener parámetro en una función que retorna void"
 
-#: pl_gram.y:3271
+#: pl_gram.y:3247
 #, c-format
 msgid "RETURN cannot have a parameter in function with OUT parameters"
 msgstr "RETURN no puede tener parámetros en una función con parámetros OUT"
 
-#: pl_gram.y:3334
+#: pl_gram.y:3310
 #, c-format
 msgid "RETURN NEXT cannot have a parameter in function with OUT parameters"
 msgstr "RETURN NEXT no puede tener parámetros en una función con parámetros OUT"
 
-#: pl_gram.y:3500
+#: pl_gram.y:3476
 #, c-format
 msgid "record variable cannot be part of multiple-item INTO list"
 msgstr "una variable de tipo record no puede ser parte de una lista INTO de múltiples elementos"
 
-#: pl_gram.y:3546
+#: pl_gram.y:3522
 #, c-format
 msgid "too many INTO variables specified"
 msgstr "se especificaron demasiadas variables INTO"
 
-#: pl_gram.y:3754
+#: pl_gram.y:3730
 #, c-format
 msgid "end label \"%s\" specified for unlabeled block"
 msgstr "etiqueta de término «%s» especificada para un bloque sin etiqueta"
 
-#: pl_gram.y:3761
+#: pl_gram.y:3737
 #, c-format
 msgid "end label \"%s\" differs from block's label \"%s\""
 msgstr "etiqueta de término «%s» difiere de la etiqueta de bloque «%s»"
 
-#: pl_gram.y:3795
+#: pl_gram.y:3771
 #, c-format
 msgid "cursor \"%s\" has no arguments"
 msgstr "el cursor «%s» no tiene argumentos"
 
-#: pl_gram.y:3809
+#: pl_gram.y:3785
 #, c-format
 msgid "cursor \"%s\" has arguments"
 msgstr "el cursor «%s» tiene argumentos"
 
-#: pl_gram.y:3851
+#: pl_gram.y:3827
 #, c-format
 msgid "cursor \"%s\" has no argument named \"%s\""
 msgstr "el cursor «%s» no tiene un argumento llamado «%s»"
 
-#: pl_gram.y:3871
+#: pl_gram.y:3847
 #, c-format
 msgid "value for parameter \"%s\" of cursor \"%s\" specified more than once"
 msgstr "el valor para el parámetro «%s» del cursor «%s» fue especificado más de una vez"
 
-#: pl_gram.y:3896
+#: pl_gram.y:3872
 #, c-format
 msgid "not enough arguments for cursor \"%s\""
 msgstr "no hay suficientes argumentos para el cursor «%s»"
 
-#: pl_gram.y:3903
+#: pl_gram.y:3879
 #, c-format
 msgid "too many arguments for cursor \"%s\""
 msgstr "demasiados argumentos para el cursor «%s»"
 
-#: pl_gram.y:3989
+#: pl_gram.y:3965
 msgid "unrecognized RAISE statement option"
 msgstr "no se reconoce la opción de sentencia RAISE"
 
-#: pl_gram.y:3993
+#: pl_gram.y:3969
 msgid "syntax error, expected \"=\""
 msgstr "error de sintaxis, se esperaba «=»"
 
-#: pl_gram.y:4034
+#: pl_gram.y:4010
 #, c-format
 msgid "too many parameters specified for RAISE"
 msgstr "se especificaron demasiados parámetros a RAISE"
 
-#: pl_gram.y:4038
+#: pl_gram.y:4014
 #, c-format
 msgid "too few parameters specified for RAISE"
 msgstr "se especificaron muy pocos parámetros a RAISE"
index a611e3ee44eebcebf4265ca5f38be2a38a8fa3d5..fcf33323303d5e766d03d52b814c66b7d5db3772 100644 (file)
@@ -10,7 +10,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: plpython (PostgreSQL) 15\n"
 "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n"
-"POT-Creation-Date: 2022-09-24 23:08+0000\n"
+"POT-Creation-Date: 2023-05-09 09:08+0000\n"
 "PO-Revision-Date: 2022-10-20 09:06+0200\n"
 "Last-Translator: Carlos Chapi <carlos.chapi@2ndquadrant.com>\n"
 "Language-Team: PgSQL-es-Ayuda <pgsql-es-ayuda@lists.postgresql.org>\n"
@@ -108,7 +108,7 @@ msgstr "procedimiento PL/Python no returnó None"
 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:369 plpy_exec.c:395
+#: plpy_exec.c:369 plpy_exec.c:393
 #, c-format
 msgid "unexpected return value from trigger procedure"
 msgstr "valor de retorno no esperado desde el procedimiento disparador"
@@ -118,113 +118,113 @@ msgstr "valor de retorno no esperado desde el procedimiento disparador"
 msgid "Expected None or a string."
 msgstr "Se esperaba None o una cadena."
 
-#: plpy_exec.c:385
+#: plpy_exec.c:383
 #, 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:396
+#: plpy_exec.c:394
 #, c-format
 msgid "Expected None, \"OK\", \"SKIP\", or \"MODIFY\"."
 msgstr "Se esperaba None, «OK», «SKIP» o «MODIFY»."
 
-#: plpy_exec.c:441
+#: plpy_exec.c:444
 #, c-format
 msgid "PyList_SetItem() failed, while setting up arguments"
 msgstr "PyList_SetItem() falló, mientras se inicializaban los argumentos"
 
-#: plpy_exec.c:445
+#: plpy_exec.c:448
 #, c-format
 msgid "PyDict_SetItemString() failed, while setting up arguments"
 msgstr "PyDict_SetItemString() falló, mientras se inicializaban los argumentos"
 
-#: plpy_exec.c:457
+#: plpy_exec.c:460
 #, 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:674
+#: plpy_exec.c:677
 #, c-format
 msgid "while creating return value"
 msgstr "mientras se creaba el valor de retorno"
 
-#: plpy_exec.c:908
+#: plpy_exec.c:924
 #, c-format
 msgid "TD[\"new\"] deleted, cannot modify row"
 msgstr "TD[\"new\"] borrado, no se puede modicar el registro"
 
-#: plpy_exec.c:913
+#: plpy_exec.c:929
 #, c-format
 msgid "TD[\"new\"] is not a dictionary"
 msgstr "TD[\"new\"] no es un diccionario"
 
-#: plpy_exec.c:938
+#: plpy_exec.c:954
 #, 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:945
+#: plpy_exec.c:961
 #, 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:950
+#: plpy_exec.c:966
 #, c-format
 msgid "cannot set system attribute \"%s\""
 msgstr "no se puede definir el atributo de sistema «%s»"
 
-#: plpy_exec.c:955
+#: plpy_exec.c:971
 #, c-format
 msgid "cannot set generated column \"%s\""
 msgstr "no se puede definir el atributo generado «%s»"
 
-#: plpy_exec.c:1013
+#: plpy_exec.c:1029
 #, c-format
 msgid "while modifying trigger row"
 msgstr "mientras se modificaba la fila de disparador"
 
 # FIXME not very happy with this
-#: plpy_exec.c:1071
+#: plpy_exec.c:1087
 #, 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:111
+#: plpy_main.c:109
 #, 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:112
+#: plpy_main.c:110
 #, 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:124
+#: plpy_main.c:122
 #, c-format
 msgid "untrapped error in initialization"
 msgstr "error no capturado en la inicialización"
 
-#: plpy_main.c:147
+#: plpy_main.c:145
 #, c-format
 msgid "could not import \"__main__\" module"
 msgstr "no se pudo importar el módulo «__main__»"
 
-#: plpy_main.c:156
+#: plpy_main.c:154
 #, c-format
 msgid "could not initialize globals"
 msgstr "no se pudo inicializar las globales"
 
-#: plpy_main.c:354
+#: plpy_main.c:352
 #, c-format
 msgid "PL/Python procedure \"%s\""
 msgstr "procedimiento PL/Python «%s»"
 
-#: plpy_main.c:357
+#: plpy_main.c:355
 #, c-format
 msgid "PL/Python function \"%s\""
 msgstr "función PL/Python «%s»"
 
-#: plpy_main.c:365
+#: plpy_main.c:363
 #, c-format
 msgid "PL/Python anonymous code block"
 msgstr "bloque de código anónimo de PL/Python"
@@ -288,12 +288,12 @@ msgstr "las funciones PL/Python no pueden retornar el tipo %s"
 msgid "PL/Python functions cannot accept type %s"
 msgstr "la funciones PL/Python no pueden aceptar el tipo %s"
 
-#: plpy_procedure.c:397
+#: plpy_procedure.c:395
 #, c-format
 msgid "could not compile PL/Python function \"%s\""
 msgstr "no se pudo compilar la función PL/Python «%s»"
 
-#: plpy_procedure.c:400
+#: plpy_procedure.c:398
 #, c-format
 msgid "could not compile anonymous PL/Python code block"
 msgstr "no se pudo compilar el bloque anónimo PL/Python"
@@ -353,102 +353,92 @@ msgstr "no se ha entrado en esta subtransacción"
 msgid "there is no subtransaction to exit from"
 msgstr "no hay una subtransacción de la cual salir"
 
-#: plpy_typeio.c:587
+#: plpy_typeio.c:588
 #, 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:591
+#: plpy_typeio.c:592
 #, c-format
 msgid "no Decimal attribute in module"
 msgstr "no se encontró atributo Decimal en el módulo"
 
-#: plpy_typeio.c:597
+#: plpy_typeio.c:598
 #, c-format
 msgid "conversion from numeric to Decimal failed"
 msgstr "falló la conversión de numeric a Decimal"
 
-#: plpy_typeio.c:911
+#: plpy_typeio.c:912
 #, 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:1048
+#: plpy_typeio.c:1049
 #, 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:1059
+#: plpy_typeio.c:1060
 #, 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:1170
+#: plpy_typeio.c:1157
 #, 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)"
+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:1175
+#: plpy_typeio.c:1202
 #, 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:1180 plpy_typeio.c:1186
-#, c-format
-msgid "array size exceeds the maximum allowed"
-msgstr "el tamaño del array excede el máximo permitido"
-
-#: plpy_typeio.c:1214
-#, 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:1261
+#: plpy_typeio.c:1222 plpy_typeio.c:1237 plpy_typeio.c:1253
 #, 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"
+msgid "multidimensional arrays must have array expressions with matching dimensions"
+msgstr "los arrays multidimensionales deben tener expresiones de arrays con dimensiones coincidentes"
 
-#: plpy_typeio.c:1263
+#: plpy_typeio.c:1227
 #, 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."
+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:1342
+#: plpy_typeio.c:1329
 #, c-format
 msgid "malformed record literal: \"%s\""
 msgstr "literal de record no es válido: «%s»"
 
-#: plpy_typeio.c:1343
+#: plpy_typeio.c:1330
 #, c-format
 msgid "Missing left parenthesis."
 msgstr "Falta paréntesis izquierdo."
 
-#: plpy_typeio.c:1344 plpy_typeio.c:1545
+#: plpy_typeio.c:1331 plpy_typeio.c:1532
 #, 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:1391
+#: plpy_typeio.c:1378
 #, c-format
 msgid "key \"%s\" not found in mapping"
 msgstr "la llave «%s» no fue encontrada en el mapa"
 
-#: plpy_typeio.c:1392
+#: plpy_typeio.c:1379
 #, 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:1445
+#: plpy_typeio.c:1432
 #, 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:1543
+#: plpy_typeio.c:1530
 #, c-format
 msgid "attribute \"%s\" does not exist in Python object"
 msgstr "el atributo «%s» no existe en el objeto Python"
 
-#: plpy_typeio.c:1546
+#: plpy_typeio.c:1533
 #, 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."
@@ -462,3 +452,15 @@ msgstr "no se pudo convertir el objeto Unicode de Python a bytes"
 #, c-format
 msgid "could not extract bytes from encoded string"
 msgstr "no se pudo extraer bytes desde la cadena codificada"
+
+#, c-format
+#~ msgid "array size exceeds the maximum allowed"
+#~ msgstr "el tamaño del array excede el máximo permitido"
+
+#, 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"
+
+#, 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."
index 8955a8fe8af4ec5252ec53264b0c44f6db798420..d398a00e7d8eeb08b6dd3d4a888f4b7ac24d1430 100644 (file)
@@ -10,7 +10,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: pltcl (PostgreSQL) 15\n"
 "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n"
-"POT-Creation-Date: 2022-09-24 23:08+0000\n"
+"POT-Creation-Date: 2023-05-09 09:08+0000\n"
 "PO-Revision-Date: 2022-10-20 09:06+0200\n"
 "Last-Translator: Carlos Chapi <carlos.chapi@2ndquadrant.com>\n"
 "Language-Team: PgSQL-es-Ayuda <pgsql-es-ayuda@lists.postgresql.org>\n"
@@ -20,56 +20,56 @@ msgstr ""
 "Content-Transfer-Encoding: 8bit\n"
 "X-Generator: Poedit 2.0.2\n"
 
-#: pltcl.c:463
+#: pltcl.c:462
 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:470
+#: pltcl.c:469
 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."
 
-#: pltcl.c:637
+#: pltcl.c:636
 #, c-format
 msgid "function \"%s\" is in the wrong language"
 msgstr "la función «%s» está en el lenguaje equivocado"
 
-#: pltcl.c:648
+#: pltcl.c:647
 #, c-format
 msgid "function \"%s\" must not be SECURITY DEFINER"
 msgstr "la función «%s» no debe ser SECURITY DEFINER"
 
 #. translator: %s is "pltcl.start_proc" or "pltclu.start_proc"
-#: pltcl.c:682
+#: pltcl.c:681
 #, c-format
 msgid "processing %s parameter"
 msgstr "procesando el parámetro %s"
 
-#: pltcl.c:835
+#: pltcl.c:834
 #, 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:840
+#: pltcl.c:839
 #, 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"
 
-#: pltcl.c:1013
+#: pltcl.c:1012
 #, 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:1296
+#: pltcl.c:1295
 #, 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:1377 pltcl.c:1807
+#: pltcl.c:1376 pltcl.c:1803
 #, c-format
 msgid "%s"
 msgstr "%s"
 
-#: pltcl.c:1378
+#: pltcl.c:1377
 #, c-format
 msgid ""
 "%s\n"
@@ -78,42 +78,42 @@ msgstr ""
 "%s\n"
 "en función PL/Tcl \"%s\""
 
-#: pltcl.c:1542
+#: pltcl.c:1540
 #, c-format
 msgid "trigger functions can only be called as triggers"
 msgstr "las funciones disparadoras sólo pueden ser invocadas como disparadores"
 
-#: pltcl.c:1546
+#: pltcl.c:1544
 #, c-format
 msgid "PL/Tcl functions cannot return type %s"
 msgstr "las funciones PL/Tcl no pueden retornar tipo %s"
 
-#: pltcl.c:1585
+#: pltcl.c:1583
 #, c-format
 msgid "PL/Tcl functions cannot accept type %s"
 msgstr "las funciones PL/Tcl no pueden aceptar el tipog%s"
 
-#: pltcl.c:1699
+#: pltcl.c:1695
 #, c-format
 msgid "could not create internal procedure \"%s\": %s"
 msgstr "no se pudo crear procedimiento interno «%s»: %s"
 
-#: pltcl.c:3201
+#: 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:3219
+#: 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:3226
+#: pltcl.c:3224
 #, c-format
 msgid "cannot set system attribute \"%s\""
 msgstr "no se puede definir el atributo de sistema «%s»"
 
-#: pltcl.c:3232
+#: pltcl.c:3230
 #, c-format
 msgid "cannot set generated column \"%s\""
 msgstr "no se puede definir el atributo generado «%s»"
index 11b82782f851539dbfdc0e73335e8cabaa65da38..e50a93503364aef059d8f0e438c7267ad819fd23 100644 (file)
@@ -62,7 +62,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: PostgreSQL server 15\n"
 "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n"
-"POT-Creation-Date: 2022-09-24 23:10+0000\n"
+"POT-Creation-Date: 2023-05-09 09:10+0000\n"
 "PO-Revision-Date: 2022-11-04 13:18+0100\n"
 "Last-Translator: Carlos Chapi <carloswaldo@babelruins.org>\n"
 "Language-Team: PgSQL-es-Ayuda <pgsql-es-ayuda@lists.postgresql.org>\n"
@@ -73,48 +73,58 @@ msgstr ""
 "Plural-Forms: nplurals=2; plural=n != 1;\n"
 "X-Generator: BlackCAT 1.1\n"
 
-#: ../common/compression.c:130 ../common/compression.c:139
-#: ../common/compression.c:148
+#: ../common/compression.c:132 ../common/compression.c:141
+#: ../common/compression.c:150
 #, c-format
 msgid "this build does not support compression with %s"
 msgstr "esta instalación no soporta compresión con %s"
 
-#: ../common/compression.c:203
+#: ../common/compression.c:205
 msgid "found empty string where a compression option was expected"
 msgstr "se encontró una cadena vacía donde se esperaba una opción de compresión"
 
-#: ../common/compression.c:237
+#: ../common/compression.c:244
 #, c-format
-#| msgid "unrecognized column option \"%s\""
 msgid "unrecognized compression option: \"%s\""
 msgstr "opción de compresión no reconocida: «%s»"
 
-#: ../common/compression.c:276
+#: ../common/compression.c:283
 #, c-format
 msgid "compression option \"%s\" requires a value"
 msgstr "la opción de compresión «%s» requiere un valor"
 
-#: ../common/compression.c:285
+#: ../common/compression.c:292
 #, c-format
 msgid "value for compression option \"%s\" must be an integer"
 msgstr "el valor para la opción de compresión «%s» debe ser un entero"
 
-#: ../common/compression.c:335
+#: ../common/compression.c:331
+#, fuzzy, c-format
+#| msgid "value for compression option \"%s\" must be an integer"
+msgid "value for compression option \"%s\" must be a boolean"
+msgstr "el valor para la opción de compresión «%s» debe ser un entero"
+
+#: ../common/compression.c:379
 #, c-format
 msgid "compression algorithm \"%s\" does not accept a compression level"
 msgstr "el algoritmo de compresión «%s» no acepta un nivel de compresión"
 
-#: ../common/compression.c:342
+#: ../common/compression.c:386
 #, c-format
-#| msgid "compression algorithm \"%s\" expects a compression level between %d and %d"
 msgid "compression algorithm \"%s\" expects a compression level between %d and %d (default at %d)"
 msgstr "el algoritmo de compresión «%s» espera un nivel de compresión entre %d y %d (por omisión %d)"
 
-#: ../common/compression.c:353
+#: ../common/compression.c:397
 #, c-format
 msgid "compression algorithm \"%s\" does not accept a worker count"
 msgstr "el algoritmo de compresión «%s» no acepta una cantidad de procesos ayudantes"
 
+#: ../common/compression.c:408
+#, fuzzy, c-format
+#| msgid "compression algorithm \"%s\" does not accept a worker count"
+msgid "compression algorithm \"%s\" does not support long-distance mode"
+msgstr "el algoritmo de compresión «%s» no acepta una cantidad de procesos ayudantes"
+
 #: ../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
@@ -123,56 +133,54 @@ msgid "not recorded"
 msgstr "no registrado"
 
 #: ../common/controldata_utils.c:69 ../common/controldata_utils.c:73
-#: commands/copyfrom.c:1515 commands/extension.c:3383 utils/adt/genfile.c:123
+#: commands/copyfrom.c:1669 commands/extension.c:3456 utils/adt/genfile.c:123
 #, 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:84 ../common/controldata_utils.c:86
 #: access/transam/timeline.c:143 access/transam/timeline.c:362
-#: access/transam/twophase.c:1348 access/transam/xlog.c:3207
-#: access/transam/xlog.c:4022 access/transam/xlogrecovery.c:1178
-#: access/transam/xlogrecovery.c:1270 access/transam/xlogrecovery.c:1307
-#: access/transam/xlogrecovery.c:1367 backup/basebackup.c:1842
-#: commands/extension.c:3393 libpq/hba.c:505 replication/logical/origin.c:729
-#: replication/logical/origin.c:765 replication/logical/reorderbuffer.c:4926
-#: replication/logical/snapbuild.c:1848 replication/logical/snapbuild.c:1890
-#: replication/logical/snapbuild.c:1917 replication/slot.c:1772
-#: replication/slot.c:1813 replication/walsender.c:658
-#: storage/file/buffile.c:463 storage/file/copydir.c:195
-#: utils/adt/genfile.c:197 utils/adt/misc.c:863 utils/cache/relmapper.c:813
+#: access/transam/twophase.c:1346 access/transam/xlog.c:3193
+#: access/transam/xlog.c:3996 access/transam/xlogrecovery.c:1199
+#: access/transam/xlogrecovery.c:1291 access/transam/xlogrecovery.c:1328
+#: access/transam/xlogrecovery.c:1388 backup/basebackup.c:1842
+#: commands/extension.c:3466 libpq/hba.c:791 replication/logical/origin.c:745
+#: replication/logical/origin.c:781 replication/logical/reorderbuffer.c:5050
+#: replication/logical/snapbuild.c:2027 replication/slot.c:1946
+#: replication/slot.c:1987 replication/walsender.c:643
+#: storage/file/buffile.c:471 storage/file/copydir.c:185
+#: utils/adt/genfile.c:197 utils/adt/misc.c:984 utils/cache/relmapper.c:827
 #, c-format
 msgid "could not read file \"%s\": %m"
 msgstr "no se pudo leer el archivo «%s»: %m"
 
 #: ../common/controldata_utils.c:92 ../common/controldata_utils.c:95
-#: access/transam/xlog.c:3212 access/transam/xlog.c:4027
-#: backup/basebackup.c:1846 replication/logical/origin.c:734
-#: replication/logical/origin.c:773 replication/logical/snapbuild.c:1853
-#: replication/logical/snapbuild.c:1895 replication/logical/snapbuild.c:1922
-#: replication/slot.c:1776 replication/slot.c:1817 replication/walsender.c:663
-#: utils/cache/relmapper.c:817
+#: access/transam/xlog.c:3198 access/transam/xlog.c:4001
+#: backup/basebackup.c:1846 replication/logical/origin.c:750
+#: replication/logical/origin.c:789 replication/logical/snapbuild.c:2032
+#: replication/slot.c:1950 replication/slot.c:1991 replication/walsender.c:648
+#: utils/cache/relmapper.c:831
 #, 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"
 
 #: ../common/controldata_utils.c:104 ../common/controldata_utils.c:108
-#: ../common/controldata_utils.c:241 ../common/controldata_utils.c:244
-#: access/heap/rewriteheap.c:1178 access/heap/rewriteheap.c:1281
+#: ../common/controldata_utils.c:233 ../common/controldata_utils.c:236
+#: access/heap/rewriteheap.c:1175 access/heap/rewriteheap.c:1280
 #: access/transam/timeline.c:392 access/transam/timeline.c:438
-#: access/transam/timeline.c:516 access/transam/twophase.c:1360
-#: access/transam/twophase.c:1772 access/transam/xlog.c:3054
-#: access/transam/xlog.c:3247 access/transam/xlog.c:3252
-#: access/transam/xlog.c:3390 access/transam/xlog.c:3992
-#: access/transam/xlog.c:4738 commands/copyfrom.c:1575 commands/copyto.c:327
-#: libpq/be-fsstubs.c:455 libpq/be-fsstubs.c:525
-#: replication/logical/origin.c:667 replication/logical/origin.c:806
-#: replication/logical/reorderbuffer.c:4984
-#: replication/logical/snapbuild.c:1757 replication/logical/snapbuild.c:1930
-#: replication/slot.c:1663 replication/slot.c:1824 replication/walsender.c:673
-#: storage/file/copydir.c:218 storage/file/copydir.c:223 storage/file/fd.c:745
-#: storage/file/fd.c:3643 storage/file/fd.c:3749 utils/cache/relmapper.c:828
-#: utils/cache/relmapper.c:956
+#: access/transam/timeline.c:512 access/transam/twophase.c:1358
+#: access/transam/twophase.c:1770 access/transam/xlog.c:3039
+#: access/transam/xlog.c:3233 access/transam/xlog.c:3238
+#: access/transam/xlog.c:3374 access/transam/xlog.c:3966
+#: access/transam/xlog.c:4885 commands/copyfrom.c:1729 commands/copyto.c:332
+#: libpq/be-fsstubs.c:470 libpq/be-fsstubs.c:540
+#: replication/logical/origin.c:683 replication/logical/origin.c:822
+#: replication/logical/reorderbuffer.c:5102
+#: replication/logical/snapbuild.c:1798 replication/logical/snapbuild.c:1922
+#: replication/slot.c:1837 replication/slot.c:1998 replication/walsender.c:658
+#: storage/file/copydir.c:208 storage/file/copydir.c:213 storage/file/fd.c:739
+#: storage/file/fd.c:3650 storage/file/fd.c:3756 utils/cache/relmapper.c:839
+#: utils/cache/relmapper.c:945
 #, c-format
 msgid "could not close file \"%s\": %m"
 msgstr "no se pudo cerrar el archivo «%s»: %m"
@@ -195,102 +203,101 @@ msgstr ""
 "serían erróneos, y la instalación de PostgreSQL sería incompatible con este\n"
 "directorio de datos."
 
-#: ../common/controldata_utils.c:189 ../common/controldata_utils.c:194
-#: ../common/file_utils.c:232 ../common/file_utils.c:291
-#: ../common/file_utils.c:365 access/heap/rewriteheap.c:1264
+#: ../common/controldata_utils.c:181 ../common/controldata_utils.c:186
+#: ../common/file_utils.c:228 ../common/file_utils.c:287
+#: ../common/file_utils.c:361 access/heap/rewriteheap.c:1263
 #: access/transam/timeline.c:111 access/transam/timeline.c:251
-#: access/transam/timeline.c:348 access/transam/twophase.c:1304
-#: access/transam/xlog.c:2941 access/transam/xlog.c:3123
-#: access/transam/xlog.c:3162 access/transam/xlog.c:3357
-#: access/transam/xlog.c:4012 access/transam/xlogrecovery.c:4179
-#: access/transam/xlogrecovery.c:4282 access/transam/xlogutils.c:852
-#: backup/basebackup.c:522 backup/basebackup.c:1519 postmaster/syslogger.c:1560
-#: replication/logical/origin.c:719 replication/logical/reorderbuffer.c:3581
-#: replication/logical/reorderbuffer.c:4130
-#: replication/logical/reorderbuffer.c:4906
-#: replication/logical/snapbuild.c:1712 replication/logical/snapbuild.c:1819
-#: replication/slot.c:1744 replication/walsender.c:631
-#: replication/walsender.c:2722 storage/file/copydir.c:161
-#: storage/file/fd.c:720 storage/file/fd.c:3395 storage/file/fd.c:3630
-#: storage/file/fd.c:3720 storage/smgr/md.c:524 utils/cache/relmapper.c:792
-#: utils/cache/relmapper.c:900 utils/error/elog.c:1933
-#: utils/init/miscinit.c:1366 utils/init/miscinit.c:1500
-#: utils/init/miscinit.c:1577 utils/misc/guc.c:9001 utils/misc/guc.c:9050
+#: access/transam/timeline.c:348 access/transam/twophase.c:1302
+#: access/transam/xlog.c:2946 access/transam/xlog.c:3109
+#: access/transam/xlog.c:3148 access/transam/xlog.c:3341
+#: access/transam/xlog.c:3986 access/transam/xlogrecovery.c:4179
+#: access/transam/xlogrecovery.c:4282 access/transam/xlogutils.c:838
+#: backup/basebackup.c:538 backup/basebackup.c:1512 libpq/hba.c:651
+#: postmaster/syslogger.c:1560 replication/logical/origin.c:735
+#: replication/logical/reorderbuffer.c:3706
+#: replication/logical/reorderbuffer.c:4257
+#: replication/logical/reorderbuffer.c:5030
+#: replication/logical/snapbuild.c:1753 replication/logical/snapbuild.c:1863
+#: replication/slot.c:1918 replication/walsender.c:616
+#: replication/walsender.c:2731 storage/file/copydir.c:151
+#: storage/file/fd.c:714 storage/file/fd.c:3407 storage/file/fd.c:3637
+#: storage/file/fd.c:3727 storage/smgr/md.c:660 utils/cache/relmapper.c:816
+#: utils/cache/relmapper.c:924 utils/error/elog.c:2082
+#: utils/init/miscinit.c:1530 utils/init/miscinit.c:1664
+#: utils/init/miscinit.c:1741 utils/misc/guc.c:4599 utils/misc/guc.c:4649
 #, c-format
 msgid "could not open file \"%s\": %m"
 msgstr "no se pudo abrir el archivo «%s»: %m"
 
-#: ../common/controldata_utils.c:210 ../common/controldata_utils.c:213
-#: access/transam/twophase.c:1745 access/transam/twophase.c:1754
-#: access/transam/xlog.c:8670 access/transam/xlogfuncs.c:600
-#: backup/basebackup_server.c:173 backup/basebackup_server.c:266
-#: postmaster/postmaster.c:5631 postmaster/syslogger.c:1571
+#: ../common/controldata_utils.c:202 ../common/controldata_utils.c:205
+#: access/transam/twophase.c:1743 access/transam/twophase.c:1752
+#: access/transam/xlog.c:8751 access/transam/xlogfuncs.c:707
+#: backup/basebackup_server.c:175 backup/basebackup_server.c:268
+#: postmaster/postmaster.c:5570 postmaster/syslogger.c:1571
 #: postmaster/syslogger.c:1584 postmaster/syslogger.c:1597
-#: utils/cache/relmapper.c:934
+#: utils/cache/relmapper.c:936
 #, c-format
 msgid "could not write file \"%s\": %m"
 msgstr "no se pudo escribir el archivo «%s»: %m"
 
-#: ../common/controldata_utils.c:227 ../common/controldata_utils.c:232
-#: ../common/file_utils.c:303 ../common/file_utils.c:373
-#: access/heap/rewriteheap.c:960 access/heap/rewriteheap.c:1172
-#: access/heap/rewriteheap.c:1275 access/transam/timeline.c:432
-#: access/transam/timeline.c:510 access/transam/twophase.c:1766
-#: access/transam/xlog.c:3047 access/transam/xlog.c:3241
-#: access/transam/xlog.c:3985 access/transam/xlog.c:7973
-#: access/transam/xlog.c:8016 backup/basebackup_server.c:207
-#: replication/logical/snapbuild.c:1750 replication/slot.c:1649
-#: replication/slot.c:1754 storage/file/fd.c:737 storage/file/fd.c:3741
-#: storage/smgr/md.c:975 storage/smgr/md.c:1016 storage/sync/sync.c:453
-#: utils/cache/relmapper.c:949 utils/misc/guc.c:8770
+#: ../common/controldata_utils.c:219 ../common/controldata_utils.c:224
+#: ../common/file_utils.c:299 ../common/file_utils.c:369
+#: access/heap/rewriteheap.c:959 access/heap/rewriteheap.c:1169
+#: access/heap/rewriteheap.c:1274 access/transam/timeline.c:432
+#: access/transam/timeline.c:506 access/transam/twophase.c:1764
+#: access/transam/xlog.c:3032 access/transam/xlog.c:3227
+#: access/transam/xlog.c:3959 access/transam/xlog.c:8141
+#: access/transam/xlog.c:8186 backup/basebackup_server.c:209
+#: replication/logical/snapbuild.c:1791 replication/slot.c:1823
+#: replication/slot.c:1928 storage/file/fd.c:731 storage/file/fd.c:3748
+#: storage/smgr/md.c:1132 storage/smgr/md.c:1177 storage/sync/sync.c:453
+#: utils/misc/guc.c:4369
 #, c-format
 msgid "could not fsync file \"%s\": %m"
 msgstr "no se pudo sincronizar (fsync) archivo «%s»: %m"
 
-#: ../common/cryptohash.c:266 ../common/cryptohash_openssl.c:133
-#: ../common/cryptohash_openssl.c:332 ../common/exec.c:560 ../common/exec.c:605
-#: ../common/exec.c:697 ../common/hmac.c:309 ../common/hmac.c:325
+#: ../common/cryptohash.c:261 ../common/cryptohash_openssl.c:133
+#: ../common/cryptohash_openssl.c:332 ../common/exec.c:550 ../common/exec.c:595
+#: ../common/exec.c:687 ../common/hmac.c:309 ../common/hmac.c:325
 #: ../common/hmac_openssl.c:132 ../common/hmac_openssl.c:327
 #: ../common/md5_common.c:155 ../common/psprintf.c:143
-#: ../common/scram-common.c:247 ../common/stringinfo.c:305 ../port/path.c:751
-#: ../port/path.c:789 ../port/path.c:806 access/transam/twophase.c:1413
-#: access/transam/xlogrecovery.c:568 lib/dshash.c:253 libpq/auth.c:1338
-#: libpq/auth.c:1406 libpq/auth.c:1964 libpq/be-secure-gssapi.c:520
-#: postmaster/bgworker.c:349 postmaster/bgworker.c:931
-#: postmaster/postmaster.c:2584 postmaster/postmaster.c:4170
-#: postmaster/postmaster.c:4842 postmaster/postmaster.c:5556
-#: postmaster/postmaster.c:5927
-#: replication/libpqwalreceiver/libpqwalreceiver.c:296
-#: replication/logical/logical.c:205 replication/walsender.c:701
-#: storage/buffer/localbuf.c:442 storage/file/fd.c:892 storage/file/fd.c:1434
-#: storage/file/fd.c:1595 storage/file/fd.c:2409 storage/ipc/procarray.c:1437
-#: storage/ipc/procarray.c:2249 storage/ipc/procarray.c:2256
-#: storage/ipc/procarray.c:2759 storage/ipc/procarray.c:3390
-#: utils/adt/formatting.c:1732 utils/adt/formatting.c:1854
-#: utils/adt/formatting.c:1977 utils/adt/pg_locale.c:450
-#: utils/adt/pg_locale.c:614 utils/adt/regexp.c:224 utils/fmgr/dfmgr.c:229
-#: utils/hash/dynahash.c:513 utils/hash/dynahash.c:613
-#: utils/hash/dynahash.c:1116 utils/mb/mbutils.c:401 utils/mb/mbutils.c:429
-#: utils/mb/mbutils.c:814 utils/mb/mbutils.c:841 utils/misc/guc.c:5202
-#: utils/misc/guc.c:5218 utils/misc/guc.c:5231 utils/misc/guc.c:8748
-#: utils/misc/tzparser.c:476 utils/mmgr/aset.c:476 utils/mmgr/dsa.c:701
-#: utils/mmgr/dsa.c:723 utils/mmgr/dsa.c:804 utils/mmgr/generation.c:266
-#: utils/mmgr/mcxt.c:888 utils/mmgr/mcxt.c:924 utils/mmgr/mcxt.c:962
-#: utils/mmgr/mcxt.c:1000 utils/mmgr/mcxt.c:1088 utils/mmgr/mcxt.c:1119
-#: utils/mmgr/mcxt.c:1155 utils/mmgr/mcxt.c:1207 utils/mmgr/mcxt.c:1242
-#: utils/mmgr/mcxt.c:1277 utils/mmgr/slab.c:238
+#: ../common/scram-common.c:258 ../common/stringinfo.c:305 ../port/path.c:751
+#: ../port/path.c:789 ../port/path.c:806 access/transam/twophase.c:1411
+#: access/transam/xlogrecovery.c:589 lib/dshash.c:253 libpq/auth.c:1345
+#: libpq/auth.c:1389 libpq/auth.c:1946 libpq/be-secure-gssapi.c:524
+#: postmaster/bgworker.c:352 postmaster/bgworker.c:934
+#: postmaster/postmaster.c:2534 postmaster/postmaster.c:4127
+#: postmaster/postmaster.c:5495 postmaster/postmaster.c:5866
+#: replication/libpqwalreceiver/libpqwalreceiver.c:308
+#: replication/logical/logical.c:208 replication/walsender.c:686
+#: storage/buffer/localbuf.c:601 storage/file/fd.c:823 storage/file/fd.c:1354
+#: storage/file/fd.c:1515 storage/file/fd.c:2428 storage/ipc/procarray.c:1449
+#: storage/ipc/procarray.c:2232 storage/ipc/procarray.c:2239
+#: storage/ipc/procarray.c:2738 storage/ipc/procarray.c:3374
+#: utils/adt/formatting.c:1690 utils/adt/formatting.c:1812
+#: utils/adt/formatting.c:1935 utils/adt/pg_locale.c:469
+#: utils/adt/pg_locale.c:633 utils/fmgr/dfmgr.c:229 utils/hash/dynahash.c:514
+#: utils/hash/dynahash.c:614 utils/hash/dynahash.c:1111 utils/mb/mbutils.c:402
+#: utils/mb/mbutils.c:430 utils/mb/mbutils.c:815 utils/mb/mbutils.c:842
+#: utils/misc/guc.c:639 utils/misc/guc.c:664 utils/misc/guc.c:1052
+#: utils/misc/guc.c:4347 utils/misc/tzparser.c:476 utils/mmgr/aset.c:445
+#: utils/mmgr/dsa.c:713 utils/mmgr/dsa.c:735 utils/mmgr/dsa.c:816
+#: utils/mmgr/generation.c:205 utils/mmgr/mcxt.c:1046 utils/mmgr/mcxt.c:1082
+#: utils/mmgr/mcxt.c:1120 utils/mmgr/mcxt.c:1158 utils/mmgr/mcxt.c:1246
+#: utils/mmgr/mcxt.c:1277 utils/mmgr/mcxt.c:1313 utils/mmgr/mcxt.c:1502
+#: utils/mmgr/mcxt.c:1547 utils/mmgr/mcxt.c:1604 utils/mmgr/slab.c:366
 #, c-format
 msgid "out of memory"
 msgstr "memoria agotada"
 
-#: ../common/cryptohash.c:271 ../common/cryptohash.c:277
+#: ../common/cryptohash.c:266 ../common/cryptohash.c:272
 #: ../common/cryptohash_openssl.c:344 ../common/cryptohash_openssl.c:352
 #: ../common/hmac.c:321 ../common/hmac.c:329 ../common/hmac_openssl.c:339
 #: ../common/hmac_openssl.c:347
 msgid "success"
 msgstr "éxito"
 
-#: ../common/cryptohash.c:273 ../common/cryptohash_openssl.c:346
+#: ../common/cryptohash.c:268 ../common/cryptohash_openssl.c:346
 #: ../common/hmac_openssl.c:341
 msgid "destination buffer too small"
 msgstr "el búfer de destino es demasiado pequeño"
@@ -299,90 +306,83 @@ msgstr "el búfer de destino es demasiado pequeño"
 msgid "OpenSSL failure"
 msgstr "falla de openSSL"
 
-#: ../common/exec.c:149 ../common/exec.c:266 ../common/exec.c:312
-#, c-format
-msgid "could not identify current directory: %m"
-msgstr "no se pudo identificar el directorio actual: %m"
-
-#: ../common/exec.c:168
-#, c-format
-msgid "invalid binary \"%s\""
+#: ../common/exec.c:172
+#, fuzzy, c-format
+#| msgid "invalid binary \"%s\""
+msgid "invalid binary \"%s\": %m"
 msgstr "el binario «%s» no es válido"
 
-#: ../common/exec.c:218
-#, c-format
-msgid "could not read binary \"%s\""
+#: ../common/exec.c:215
+#, fuzzy, c-format
+#| msgid "could not read binary \"%s\""
+msgid "could not read binary \"%s\": %m"
 msgstr "no se pudo leer el binario «%s»"
 
-#: ../common/exec.c:226
+#: ../common/exec.c:223
 #, c-format
 msgid "could not find a \"%s\" to execute"
 msgstr "no se pudo encontrar un «%s» para ejecutar"
 
-#: ../common/exec.c:282 ../common/exec.c:321 utils/init/miscinit.c:439
-#, c-format
-msgid "could not change directory to \"%s\": %m"
-msgstr "no se pudo cambiar al directorio «%s»: %m"
-
-#: ../common/exec.c:299 access/transam/xlog.c:8319 backup/basebackup.c:1339
-#: utils/adt/misc.c:342
-#, c-format
-msgid "could not read symbolic link \"%s\": %m"
-msgstr "no se pudo leer el enlace simbólico «%s»: %m"
+#: ../common/exec.c:250
+#, fuzzy, c-format
+#| msgid "could not reopen file \"%s\" as stderr: %m"
+msgid "could not resolve path \"%s\" to absolute form: %m"
+msgstr "no se pudo reabrir «%s» para error estándar: %m"
 
-#: ../common/exec.c:422 libpq/pqcomm.c:746 storage/ipc/latch.c:1092
-#: storage/ipc/latch.c:1272 storage/ipc/latch.c:1501 storage/ipc/latch.c:1662
-#: storage/ipc/latch.c:1788
+#: ../common/exec.c:412 libpq/pqcomm.c:728 storage/ipc/latch.c:1128
+#: storage/ipc/latch.c:1308 storage/ipc/latch.c:1541 storage/ipc/latch.c:1703
+#: storage/ipc/latch.c:1829
 #, c-format
 msgid "%s() failed: %m"
 msgstr "%s() falló: %m"
 
 #: ../common/fe_memutils.c:35 ../common/fe_memutils.c:75
-#: ../common/fe_memutils.c:98 ../common/fe_memutils.c:162
+#: ../common/fe_memutils.c:98 ../common/fe_memutils.c:161
 #: ../common/psprintf.c:145 ../port/path.c:753 ../port/path.c:791
-#: ../port/path.c:808 utils/misc/ps_status.c:181 utils/misc/ps_status.c:189
-#: utils/misc/ps_status.c:219 utils/misc/ps_status.c:227
+#: ../port/path.c:808 utils/misc/ps_status.c:168 utils/misc/ps_status.c:176
+#: utils/misc/ps_status.c:203 utils/misc/ps_status.c:211
 #, c-format
 msgid "out of memory\n"
 msgstr "memoria agotada\n"
 
-#: ../common/fe_memutils.c:92 ../common/fe_memutils.c:154
+#: ../common/fe_memutils.c:92 ../common/fe_memutils.c:153
 #, c-format
 msgid "cannot duplicate null pointer (internal error)\n"
 msgstr "no se puede duplicar un puntero nulo (error interno)\n"
 
-#: ../common/file_utils.c:87 ../common/file_utils.c:451
-#: ../common/file_utils.c:455 access/transam/twophase.c:1316
-#: access/transam/xlogarchive.c:111 access/transam/xlogarchive.c:230
-#: backup/basebackup.c:338 backup/basebackup.c:528 backup/basebackup.c:599
-#: commands/copyfrom.c:1525 commands/copyto.c:725 commands/extension.c:3372
-#: commands/tablespace.c:826 commands/tablespace.c:917 postmaster/pgarch.c:603
-#: replication/logical/snapbuild.c:1629 storage/file/copydir.c:68
-#: storage/file/copydir.c:107 storage/file/fd.c:1951 storage/file/fd.c:2037
-#: storage/file/fd.c:3243 storage/file/fd.c:3450 utils/adt/dbsize.c:92
-#: utils/adt/dbsize.c:244 utils/adt/dbsize.c:324 utils/adt/genfile.c:413
-#: utils/adt/genfile.c:588 utils/adt/misc.c:327 guc-file.l:1061
+#: ../common/file_utils.c:87 ../common/file_utils.c:447
+#: ../common/file_utils.c:451 access/transam/twophase.c:1314
+#: access/transam/xlogarchive.c:112 access/transam/xlogarchive.c:229
+#: backup/basebackup.c:346 backup/basebackup.c:544 backup/basebackup.c:615
+#: commands/copyfrom.c:1679 commands/copyto.c:702 commands/extension.c:3445
+#: commands/tablespace.c:810 commands/tablespace.c:899 postmaster/pgarch.c:590
+#: replication/logical/snapbuild.c:1649 storage/file/fd.c:1879
+#: storage/file/fd.c:1965 storage/file/fd.c:3461 utils/adt/dbsize.c:106
+#: utils/adt/dbsize.c:258 utils/adt/dbsize.c:338 utils/adt/genfile.c:483
+#: utils/adt/genfile.c:658 utils/adt/misc.c:340
 #, c-format
 msgid "could not stat file \"%s\": %m"
 msgstr "no se pudo hacer stat al archivo «%s»: %m"
 
-#: ../common/file_utils.c:166 ../common/pgfnames.c:48 commands/tablespace.c:749
-#: commands/tablespace.c:759 postmaster/postmaster.c:1576
-#: storage/file/fd.c:2812 storage/file/reinit.c:126 utils/adt/misc.c:235
-#: utils/misc/tzparser.c:338
+#: ../common/file_utils.c:162 ../common/pgfnames.c:48 ../common/rmtree.c:63
+#: commands/tablespace.c:734 commands/tablespace.c:744
+#: postmaster/postmaster.c:1561 storage/file/fd.c:2830
+#: storage/file/reinit.c:126 utils/adt/misc.c:256 utils/misc/tzparser.c:338
 #, c-format
 msgid "could not open directory \"%s\": %m"
 msgstr "no se pudo abrir el directorio «%s»: %m"
 
-#: ../common/file_utils.c:200 ../common/pgfnames.c:69 storage/file/fd.c:2824
+#: ../common/file_utils.c:196 ../common/pgfnames.c:69 ../common/rmtree.c:104
+#: storage/file/fd.c:2842
 #, c-format
 msgid "could not read directory \"%s\": %m"
 msgstr "no se pudo leer el directorio «%s»: %m"
 
-#: ../common/file_utils.c:383 access/transam/xlogarchive.c:419
-#: postmaster/syslogger.c:1608 replication/logical/snapbuild.c:1769
-#: replication/slot.c:693 replication/slot.c:1535 replication/slot.c:1677
-#: storage/file/fd.c:755 storage/file/fd.c:853 utils/time/snapmgr.c:1282
+#: ../common/file_utils.c:379 access/transam/xlogarchive.c:383
+#: postmaster/pgarch.c:746 postmaster/syslogger.c:1608
+#: replication/logical/snapbuild.c:1810 replication/slot.c:723
+#: replication/slot.c:1709 replication/slot.c:1851 storage/file/fd.c:749
+#: utils/time/snapmgr.c:1284
 #, c-format
 msgid "could not rename file \"%s\" to \"%s\": %m"
 msgstr "no se pudo renombrar el archivo de «%s» a «%s»: %m"
@@ -391,85 +391,91 @@ msgstr "no se pudo renombrar el archivo de «%s» a «%s»: %m"
 msgid "internal error"
 msgstr "error interno"
 
-#: ../common/jsonapi.c:1075
+#: ../common/jsonapi.c:1144
 #, c-format
 msgid "Escape sequence \"\\%s\" is invalid."
 msgstr "La secuencia de escape «%s» no es válida."
 
-#: ../common/jsonapi.c:1078
+#: ../common/jsonapi.c:1147
 #, c-format
 msgid "Character with value 0x%02x must be escaped."
 msgstr "Los caracteres con valor 0x%02x deben ser escapados"
 
-#: ../common/jsonapi.c:1081
+#: ../common/jsonapi.c:1150
 #, c-format
 msgid "Expected end of input, but found \"%s\"."
 msgstr "Se esperaba el fin de la entrada, se encontró «%s»."
 
-#: ../common/jsonapi.c:1084
+#: ../common/jsonapi.c:1153
 #, c-format
 msgid "Expected array element or \"]\", but found \"%s\"."
 msgstr "Se esperaba un elemento de array o «]», se encontró «%s»."
 
-#: ../common/jsonapi.c:1087
+#: ../common/jsonapi.c:1156
 #, c-format
 msgid "Expected \",\" or \"]\", but found \"%s\"."
 msgstr "Se esperaba «,» o «]», se encontró «%s»."
 
-#: ../common/jsonapi.c:1090
+#: ../common/jsonapi.c:1159
 #, c-format
 msgid "Expected \":\", but found \"%s\"."
 msgstr "Se esperaba «:», se encontró «%s»."
 
-#: ../common/jsonapi.c:1093
+#: ../common/jsonapi.c:1162
 #, c-format
 msgid "Expected JSON value, but found \"%s\"."
 msgstr "Se esperaba un valor JSON, se encontró «%s»."
 
-#: ../common/jsonapi.c:1096
+#: ../common/jsonapi.c:1165
 msgid "The input string ended unexpectedly."
 msgstr "La cadena de entrada terminó inesperadamente."
 
-#: ../common/jsonapi.c:1098
+#: ../common/jsonapi.c:1167
 #, c-format
 msgid "Expected string or \"}\", but found \"%s\"."
 msgstr "Se esperaba una cadena o «}», se encontró «%s»."
 
-#: ../common/jsonapi.c:1101
+#: ../common/jsonapi.c:1170
 #, c-format
 msgid "Expected \",\" or \"}\", but found \"%s\"."
 msgstr "Se esperaba «,» o «}», se encontró «%s»."
 
-#: ../common/jsonapi.c:1104
+#: ../common/jsonapi.c:1173
 #, c-format
 msgid "Expected string, but found \"%s\"."
 msgstr "Se esperaba una cadena, se encontró «%s»."
 
-#: ../common/jsonapi.c:1107
+#: ../common/jsonapi.c:1176
 #, c-format
 msgid "Token \"%s\" is invalid."
 msgstr "El elemento «%s» no es válido."
 
-#: ../common/jsonapi.c:1110 jsonpath_scan.l:495
+#: ../common/jsonapi.c:1179 jsonpath_scan.l:597
 #, c-format
 msgid "\\u0000 cannot be converted to text."
 msgstr "\\u0000 no puede ser convertido a text."
 
-#: ../common/jsonapi.c:1112
+#: ../common/jsonapi.c:1181
 msgid "\"\\u\" must be followed by four hexadecimal digits."
 msgstr "«\\u» debe ser seguido por cuatro dígitos hexadecimales."
 
-#: ../common/jsonapi.c:1115
+#: ../common/jsonapi.c:1184
 msgid "Unicode escape values cannot be used for code point values above 007F when the encoding is not UTF8."
 msgstr "Los valores de escape Unicode no se pueden utilizar para valores de código superiores a 007F cuando la codificación no es UTF8."
 
-#: ../common/jsonapi.c:1117 jsonpath_scan.l:516
+#: ../common/jsonapi.c:1187
+#, fuzzy, c-format
+#| msgid "Unicode escape values cannot be used for code point values above 007F when the encoding is not UTF8."
+msgid "Unicode escape value could not be translated to the server's encoding %s."
+msgstr "Los valores de escape Unicode no se pueden utilizar para valores de código superiores a 007F cuando la codificación no es UTF8."
+
+#: ../common/jsonapi.c:1190 jsonpath_scan.l:630
 #, 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:1119 jsonpath_scan.l:527 jsonpath_scan.l:537
-#: jsonpath_scan.l:579
+#: ../common/jsonapi.c:1192 jsonpath_scan.l:641 jsonpath_scan.l:651
+#: jsonpath_scan.l:702
 #, c-format
 msgid "Unicode low surrogate must follow a high surrogate."
 msgstr "Un «low-surrogate» Unicode debe seguir a un «high-surrogate»."
@@ -494,6 +500,27 @@ msgstr "detalle: "
 msgid "hint: "
 msgstr "consejo: "
 
+#: ../common/percentrepl.c:79 ../common/percentrepl.c:85
+#: ../common/percentrepl.c:118 ../common/percentrepl.c:124
+#: postmaster/postmaster.c:2208 utils/misc/guc.c:3117 utils/misc/guc.c:3153
+#: utils/misc/guc.c:3223 utils/misc/guc.c:4546 utils/misc/guc.c:6845
+#: utils/misc/guc.c:6886
+#, c-format
+msgid "invalid value for parameter \"%s\": \"%s\""
+msgstr "valor no válido para el parámetro «%s»: «%s»"
+
+#: ../common/percentrepl.c:80 ../common/percentrepl.c:86
+#, fuzzy, c-format
+#| msgid "there is no escaped character: \"%s\""
+msgid "String ends unexpectedly after escape character \"%%\"."
+msgstr "no hay carácter escapado: «%s»"
+
+#: ../common/percentrepl.c:119 ../common/percentrepl.c:125
+#, fuzzy, c-format
+#| msgid "index \"%s\" contains unexpected zero page at block %u"
+msgid "String contains unexpected escape sequence \"%c\"."
+msgstr "índice «%s» contiene páginas vacías no esperadas en el bloque %u"
+
 #: ../common/pgfnames.c:74
 #, c-format
 msgid "could not close directory \"%s\": %m"
@@ -509,65 +536,58 @@ msgstr "nombre de «fork» no válido"
 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:64 libpq/auth.c:1368 libpq/auth.c:2400
-#, c-format
-msgid "could not load library \"%s\": error code %lu"
-msgstr "no se pudo cargar la biblioteca «%s»: código de error %lu"
-
-#: ../common/restricted_token.c:73
-#, c-format
-msgid "cannot create restricted tokens on this platform: error code %lu"
-msgstr "no se pueden crear tokens restrigidos en esta plataforma: código de error %lu"
-
-#: ../common/restricted_token.c:82
+#: ../common/restricted_token.c:60
 #, 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:97
+#: ../common/restricted_token.c:74
 #, 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:119
+#: ../common/restricted_token.c:94
 #, 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:140
+#: ../common/restricted_token.c:115
 #, 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:178
+#: ../common/restricted_token.c:153
 #, 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:193
+#: ../common/restricted_token.c:168
 #, 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 backup/basebackup.c:1099 backup/basebackup.c:1275
-#, c-format
-msgid "could not stat file or directory \"%s\": %m"
-msgstr "no se pudo hacer stat al archivo o directorio «%s»: %m"
+#: ../common/rmtree.c:95
+#, fuzzy, c-format
+#| msgid "could not find file \"%s\": %m"
+msgid "could not unlink file \"%s\": %m"
+msgstr "no se pudo encontrar el archivo «%s»: %m"
 
-#: ../common/rmtree.c:101 ../common/rmtree.c:113
+#: ../common/rmtree.c:122 commands/tablespace.c:773 commands/tablespace.c:786
+#: commands/tablespace.c:821 commands/tablespace.c:911 storage/file/fd.c:3267
+#: storage/file/fd.c:3676
 #, c-format
-msgid "could not remove file or directory \"%s\": %m"
-msgstr "no se pudo borrar el archivo o el directorio «%s»: %m"
+msgid "could not remove directory \"%s\": %m"
+msgstr "no se pudo eliminar el directorio «%s»: %m"
 
-#: ../common/scram-common.c:260
+#: ../common/scram-common.c:271
 msgid "could not encode salt"
 msgstr "no se pudo codificar la sal"
 
-#: ../common/scram-common.c:276
+#: ../common/scram-common.c:287
 msgid "could not encode stored key"
 msgstr "no se pudo codificar la llave almacenada"
 
-#: ../common/scram-common.c:293
+#: ../common/scram-common.c:304
 msgid "could not encode server key"
 msgstr "no se pudo codificar la llave del servidor"
 
@@ -592,7 +612,7 @@ msgstr ""
 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:1900
+#: ../common/username.c:45 libpq/auth.c:1881
 msgid "user does not exist"
 msgstr "usuario no existe"
 
@@ -601,85 +621,85 @@ msgstr "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"
 
-#: ../common/wait_error.c:45
+#: ../common/wait_error.c:55
 #, c-format
 msgid "command not executable"
 msgstr "la orden no es ejecutable"
 
-#: ../common/wait_error.c:49
+#: ../common/wait_error.c:59
 #, c-format
 msgid "command not found"
 msgstr "orden no encontrada"
 
-#: ../common/wait_error.c:54
+#: ../common/wait_error.c:64
 #, c-format
 msgid "child process exited with exit code %d"
 msgstr "el proceso hijo terminó con código de salida %d"
 
-#: ../common/wait_error.c:62
+#: ../common/wait_error.c:72
 #, c-format
 msgid "child process was terminated by exception 0x%X"
 msgstr "el proceso hijo fue terminado por una excepción 0x%X"
 
-#: ../common/wait_error.c:66
+#: ../common/wait_error.c:76
 #, c-format
 msgid "child process was terminated by signal %d: %s"
 msgstr "el proceso hijo fue terminado por una señal %d: %s"
 
-#: ../common/wait_error.c:72
+#: ../common/wait_error.c:82
 #, c-format
 msgid "child process exited with unrecognized status %d"
 msgstr "el proceso hijo terminó con código %d no reconocido"
 
-#: ../port/chklocale.c:306
+#: ../port/chklocale.c:283
 #, 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:427 ../port/chklocale.c:433
+#: ../port/chklocale.c:404 ../port/chklocale.c:410
 #, c-format
 msgid "could not determine encoding for locale \"%s\": codeset is \"%s\""
 msgstr "no se pudo determinar la codificación para la configuración regional «%s»: el codeset es «%s»"
 
-#: ../port/dirmod.c:218
+#: ../port/dirmod.c:284
 #, c-format
 msgid "could not set junction for \"%s\": %s"
 msgstr "no se pudo definir un junction para «%s»: %s"
 
-#: ../port/dirmod.c:221
+#: ../port/dirmod.c:287
 #, c-format
 msgid "could not set junction for \"%s\": %s\n"
 msgstr "no se pudo definir un junction para «%s»: %s\n"
 
-#: ../port/dirmod.c:295
+#: ../port/dirmod.c:364
 #, c-format
 msgid "could not get junction for \"%s\": %s"
 msgstr "no se pudo obtener junction para «%s»: %s"
 
-#: ../port/dirmod.c:298
+#: ../port/dirmod.c:367
 #, c-format
 msgid "could not get junction for \"%s\": %s\n"
 msgstr "no se pudo obtener junction para «%s»: %s\n"
 
-#: ../port/open.c:117
+#: ../port/open.c:115
 #, c-format
 msgid "could not open file \"%s\": %s"
 msgstr "no se pudo abrir el archivo «%s»: %s"
 
-#: ../port/open.c:118
+#: ../port/open.c:116
 msgid "lock violation"
 msgstr "infracción de bloqueo (locking violation)"
 
-#: ../port/open.c:118
+#: ../port/open.c:116
 msgid "sharing violation"
 msgstr "infracción de uso compartido (sharing violation)"
 
-#: ../port/open.c:119
+#: ../port/open.c:117
 #, c-format
 msgid "Continuing to retry for 30 seconds."
 msgstr "Reintentando durante 30 segundos."
 
-#: ../port/open.c:120
+#: ../port/open.c:118
 #, 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."
@@ -694,12 +714,12 @@ msgstr "no se pudo obtener el directorio de trabajo actual: %s\n"
 msgid "operating system error %d"
 msgstr "error %d de sistema operativo"
 
-#: ../port/thread.c:100 ../port/thread.c:136
+#: ../port/thread.c:50 ../port/thread.c:86
 #, c-format
 msgid "could not look up local user ID %d: %s"
 msgstr "no se pudo buscar el usuario local de ID %d: %s"
 
-#: ../port/thread.c:105 ../port/thread.c:141
+#: ../port/thread.c:55 ../port/thread.c:91
 #, c-format
 msgid "local user with ID %d does not exist"
 msgstr "no existe un usuario local con ID %d"
@@ -719,70 +739,71 @@ 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:214
+#: access/brin/brin.c:216
 #, 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:1018 access/brin/brin.c:1119 access/gin/ginfast.c:1035
-#: access/transam/xlogfuncs.c:165 access/transam/xlogfuncs.c:192
-#: access/transam/xlogfuncs.c:231 access/transam/xlogfuncs.c:252
-#: access/transam/xlogfuncs.c:273 access/transam/xlogfuncs.c:343
-#: access/transam/xlogfuncs.c:401
+#: access/brin/brin.c:1025 access/brin/brin.c:1126 access/gin/ginfast.c:1035
+#: access/transam/xlogfuncs.c:189 access/transam/xlogfuncs.c:214
+#: access/transam/xlogfuncs.c:246 access/transam/xlogfuncs.c:285
+#: access/transam/xlogfuncs.c:306 access/transam/xlogfuncs.c:327
+#: access/transam/xlogfuncs.c:397 access/transam/xlogfuncs.c:455
 #, c-format
 msgid "recovery is in progress"
 msgstr "la recuperación está en proceso"
 
-#: access/brin/brin.c:1019 access/brin/brin.c:1120
+#: access/brin/brin.c:1026 access/brin/brin.c:1127
 #, 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:1024 access/brin/brin.c:1125
+#: access/brin/brin.c:1031 access/brin/brin.c:1132
 #, c-format
 msgid "block number out of range: %lld"
 msgstr "número de bloque fuera de rango: %lld"
 
-#: access/brin/brin.c:1068 access/brin/brin.c:1151
+#: access/brin/brin.c:1075 access/brin/brin.c:1158
 #, c-format
 msgid "\"%s\" is not a BRIN index"
 msgstr "«%s» no es un índice BRIN"
 
-#: access/brin/brin.c:1084 access/brin/brin.c:1167
+#: access/brin/brin.c:1091 access/brin/brin.c:1174
 #, 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_bloom.c:750 access/brin/brin_bloom.c:792
-#: access/brin/brin_minmax_multi.c:3008 access/brin/brin_minmax_multi.c:3151
+#: access/brin/brin_minmax_multi.c:3011 access/brin/brin_minmax_multi.c:3148
 #: statistics/dependencies.c:663 statistics/dependencies.c:716
 #: statistics/mcv.c:1484 statistics/mcv.c:1515 statistics/mvdistinct.c:344
 #: statistics/mvdistinct.c:397 utils/adt/pseudotypes.c:43
-#: utils/adt/pseudotypes.c:77 utils/adt/pseudotypes.c:252
+#: utils/adt/pseudotypes.c:77 utils/adt/tsgistidx.c:93
 #, c-format
 msgid "cannot accept a value of type %s"
 msgstr "no se puede aceptar un valor de tipo %s"
 
-#: access/brin/brin_minmax_multi.c:2167 access/brin/brin_minmax_multi.c:2174
-#: access/brin/brin_minmax_multi.c:2181 utils/adt/timestamp.c:938
-#: utils/adt/timestamp.c:1509 utils/adt/timestamp.c:2761
-#: utils/adt/timestamp.c:2778 utils/adt/timestamp.c:2831
-#: utils/adt/timestamp.c:2870 utils/adt/timestamp.c:3115
-#: utils/adt/timestamp.c:3120 utils/adt/timestamp.c:3125
-#: utils/adt/timestamp.c:3175 utils/adt/timestamp.c:3182
-#: utils/adt/timestamp.c:3189 utils/adt/timestamp.c:3209
-#: utils/adt/timestamp.c:3216 utils/adt/timestamp.c:3223
-#: utils/adt/timestamp.c:3253 utils/adt/timestamp.c:3261
-#: utils/adt/timestamp.c:3305 utils/adt/timestamp.c:3731
-#: utils/adt/timestamp.c:3855 utils/adt/timestamp.c:4405
+#: access/brin/brin_minmax_multi.c:2171 access/brin/brin_minmax_multi.c:2178
+#: access/brin/brin_minmax_multi.c:2185 utils/adt/timestamp.c:940
+#: utils/adt/timestamp.c:1517 utils/adt/timestamp.c:2716
+#: utils/adt/timestamp.c:2786 utils/adt/timestamp.c:2803
+#: utils/adt/timestamp.c:2856 utils/adt/timestamp.c:2895
+#: utils/adt/timestamp.c:3192 utils/adt/timestamp.c:3197
+#: utils/adt/timestamp.c:3202 utils/adt/timestamp.c:3252
+#: utils/adt/timestamp.c:3259 utils/adt/timestamp.c:3266
+#: utils/adt/timestamp.c:3286 utils/adt/timestamp.c:3293
+#: utils/adt/timestamp.c:3300 utils/adt/timestamp.c:3330
+#: utils/adt/timestamp.c:3338 utils/adt/timestamp.c:3382
+#: utils/adt/timestamp.c:3804 utils/adt/timestamp.c:3928
+#: utils/adt/timestamp.c:4448
 #, c-format
 msgid "interval out of range"
 msgstr "interval fuera de rango"
 
 #: access/brin/brin_pageops.c:76 access/brin/brin_pageops.c:362
-#: access/brin/brin_pageops.c:848 access/gin/ginentrypage.c:110
-#: access/gist/gist.c:1442 access/spgist/spgdoinsert.c:2001
-#: access/spgist/spgdoinsert.c:2278
+#: access/brin/brin_pageops.c:852 access/gin/ginentrypage.c:110
+#: access/gist/gist.c:1442 access/spgist/spgdoinsert.c:2002
+#: access/spgist/spgdoinsert.c:2279
 #, c-format
 msgid "index row size %zu exceeds maximum %zu for index \"%s\""
 msgstr "el tamaño de fila de índice %zu excede el máximo %zu para el índice «%s»"
@@ -792,7 +813,7 @@ 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:602
+#: access/brin/brin_revmap.c:593
 #, 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"
@@ -865,17 +886,17 @@ msgstr "El tipo retornado %s no coincide con el tipo de registro esperado %s en
 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
+#: access/common/attmap.c:234 access/common/attmap.c:246
 #, c-format
 msgid "could not convert row type"
 msgstr "no se pudo convertir el tipo de registro"
 
-#: access/common/attmap.c:230
+#: access/common/attmap.c:235
 #, c-format
 msgid "Attribute \"%s\" of type %s does not match corresponding attribute of type %s."
 msgstr "El atributo «%s» de tipo %s no coincide con el atributo correspondiente de tipo %s."
 
-#: access/common/attmap.c:242
+#: access/common/attmap.c:247
 #, c-format
 msgid "Attribute \"%s\" of type %s does not exist in type %s."
 msgstr "El atributo «%s» de tipo %s no existe en el tipo %s."
@@ -890,13 +911,13 @@ msgstr "el número de columnas (%d) excede el límite (%d)"
 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:209 access/spgist/spgutils.c:958
+#: access/common/indextuple.c:209 access/spgist/spgutils.c:950
 #, c-format
 msgid "index row requires %zu bytes, maximum size is %zu"
 msgstr "fila de índice requiere %zu bytes, tamaño máximo es %zu"
 
-#: access/common/printtup.c:292 tcop/fastpath.c:106 tcop/fastpath.c:453
-#: tcop/postgres.c:1921
+#: access/common/printtup.c:292 tcop/fastpath.c:107 tcop/fastpath.c:454
+#: tcop/postgres.c:1944
 #, c-format
 msgid "unsupported format code: %d"
 msgstr "código de formato no soportado: %d"
@@ -914,78 +935,96 @@ msgstr "Los valores aceptables son «local» y «cascaded»."
 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:1234
+#: access/common/reloptions.c:1233
 #, c-format
 msgid "RESET must not include values for parameters"
 msgstr "RESET no debe incluir valores de parámetros"
 
-#: access/common/reloptions.c:1266
+#: access/common/reloptions.c:1265
 #, c-format
 msgid "unrecognized parameter namespace \"%s\""
 msgstr "espacio de nombre de parámetro «%s» no reconocido"
 
-#: access/common/reloptions.c:1303 utils/misc/guc.c:12996
+#: access/common/reloptions.c:1302 commands/variable.c:1167
 #, c-format
 msgid "tables declared WITH OIDS are not supported"
 msgstr "las tablas declaradas WITH OIDS no está soportado"
 
-#: access/common/reloptions.c:1473
+#: access/common/reloptions.c:1470
 #, c-format
 msgid "unrecognized parameter \"%s\""
 msgstr "parámetro «%s» no reconocido"
 
-#: access/common/reloptions.c:1585
+#: access/common/reloptions.c:1582
 #, 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:1601
+#: access/common/reloptions.c:1598
 #, 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:1613
+#: access/common/reloptions.c:1610
 #, 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:1619 access/common/reloptions.c:1639
+#: access/common/reloptions.c:1616 access/common/reloptions.c:1636
 #, c-format
 msgid "value %s out of bounds for option \"%s\""
 msgstr "el valor %s está fuera del rango de la opción «%s»"
 
-#: access/common/reloptions.c:1621
+#: access/common/reloptions.c:1618
 #, c-format
 msgid "Valid values are between \"%d\" and \"%d\"."
 msgstr "Los valores aceptables están entre «%d» y «%d»."
 
-#: access/common/reloptions.c:1633
+#: access/common/reloptions.c:1630
 #, 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:1641
+#: access/common/reloptions.c:1638
 #, c-format
 msgid "Valid values are between \"%f\" and \"%f\"."
 msgstr "Valores aceptables están entre «%f» y «%f»."
 
-#: access/common/reloptions.c:1663
+#: access/common/reloptions.c:1660
 #, c-format
 msgid "invalid value for enum option \"%s\": %s"
 msgstr "valor no válido para la opción enum «%s»: %s"
 
-#: access/common/toast_compression.c:32
+#: access/common/reloptions.c:1991
+#, fuzzy, c-format
+#| msgid "cannot truncate only a partitioned table"
+msgid "cannot specify storage parameters for a partitioned table"
+msgstr "no se puede truncar ONLY una tabla particionada"
+
+#: access/common/reloptions.c:1992
+#, c-format
+msgid "Specify storage parameters for its leaf partitions, instead."
+msgstr ""
+
+#: access/common/toast_compression.c:33
 #, c-format
 msgid "compression method lz4 not supported"
 msgstr "el método de compresión lz4 no está soportado"
 
-#: access/common/toast_compression.c:33
+#: access/common/toast_compression.c:34
 #, c-format
 msgid "This functionality requires the server to be built with lz4 support."
 msgstr "Esta funcionalidad requiere que el servidor haya sido construido con soporte lz4."
 
-#: access/common/tupdesc.c:825 parser/parse_clause.c:771
-#: parser/parse_relation.c:1857
+#: access/common/tupdesc.c:837 commands/tablecmds.c:6953
+#: commands/tablecmds.c:12973
+#, fuzzy, c-format
+#| msgid "mismatched array dimensions"
+msgid "too many array dimensions"
+msgstr "las dimensiones de array no coinciden"
+
+#: access/common/tupdesc.c:842 parser/parse_clause.c:772
+#: parser/parse_relation.c:1912
 #, c-format
 msgid "column \"%s\" cannot be declared SETOF"
 msgstr "la columna «%s» no puede ser declarada SETOF"
@@ -1015,7 +1054,7 @@ msgstr "«%s» no es un índice GIN"
 msgid "cannot access temporary indexes of other sessions"
 msgstr "no se pueden acceder índices temporales de otras sesiones"
 
-#: access/gin/ginget.c:271 access/nbtree/nbtinsert.c:760
+#: access/gin/ginget.c:271 access/nbtree/nbtinsert.c:762
 #, c-format
 msgid "failed to re-find tuple within index \"%s\""
 msgstr "no se pudo volver a encontrar la tupla dentro del índice «%s»"
@@ -1030,9 +1069,9 @@ msgstr "los índices GIN antiguos no soportan recorridos del índice completo ni
 msgid "To fix this, do REINDEX INDEX \"%s\"."
 msgstr "Para corregir esto, ejecute REINDEX INDEX \"%s\"."
 
-#: access/gin/ginutil.c:145 executor/execExpr.c:2165
-#: utils/adt/arrayfuncs.c:3819 utils/adt/arrayfuncs.c:6488
-#: utils/adt/rowtypes.c:957
+#: access/gin/ginutil.c:146 executor/execExpr.c:2169
+#: utils/adt/arrayfuncs.c:3997 utils/adt/arrayfuncs.c:6684
+#: utils/adt/rowtypes.c:984
 #, 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"
@@ -1067,8 +1106,8 @@ msgstr "Esto es causado por una división de página incompleta durante una recu
 #: access/gist/gist.c:762 access/gist/gistutil.c:801 access/gist/gistutil.c:812
 #: access/gist/gistvacuum.c:429 access/hash/hashutil.c:227
 #: access/hash/hashutil.c:238 access/hash/hashutil.c:250
-#: access/hash/hashutil.c:271 access/nbtree/nbtpage.c:810
-#: access/nbtree/nbtpage.c:821
+#: access/hash/hashutil.c:271 access/nbtree/nbtpage.c:809
+#: access/nbtree/nbtpage.c:820
 #, c-format
 msgid "Please REINDEX it."
 msgstr "Por favor aplíquele REINDEX."
@@ -1089,13 +1128,13 @@ msgid "The index is not optimal. To optimize it, contact a developer, or try to
 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:798 access/hash/hashutil.c:224
-#: access/nbtree/nbtpage.c:807
+#: access/nbtree/nbtpage.c:806
 #, 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:809 access/hash/hashutil.c:235
-#: access/hash/hashutil.c:247 access/nbtree/nbtpage.c:818
+#: access/hash/hashutil.c:247 access/nbtree/nbtpage.c:817
 #, c-format
 msgid "index \"%s\" contains corrupted page at block %u"
 msgstr "el índice «%s» contiene una página corrupta en el bloque %u"
@@ -1110,30 +1149,30 @@ msgstr "la familia de operadores «%s» del método de acceso %s contiene una es
 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:278 access/hash/hashfunc.c:334
-#: utils/adt/varchar.c:1003 utils/adt/varchar.c:1063
+#: access/hash/hashfunc.c:279 access/hash/hashfunc.c:332
+#: utils/adt/varchar.c:1009 utils/adt/varchar.c:1063
 #, 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:279 access/hash/hashfunc.c:335 catalog/heap.c:668
+#: access/hash/hashfunc.c:280 access/hash/hashfunc.c:333 catalog/heap.c:668
 #: catalog/heap.c:674 commands/createas.c:206 commands/createas.c:515
-#: commands/indexcmds.c:1962 commands/tablecmds.c:17431 commands/view.c:86
-#: regex/regc_pg_locale.c:243 utils/adt/formatting.c:1690
-#: utils/adt/formatting.c:1812 utils/adt/formatting.c:1935 utils/adt/like.c:190
-#: utils/adt/like_support.c:1025 utils/adt/varchar.c:733
-#: utils/adt/varchar.c:1004 utils/adt/varchar.c:1064 utils/adt/varlena.c:1499
+#: commands/indexcmds.c:2023 commands/tablecmds.c:17490 commands/view.c:86
+#: regex/regc_pg_locale.c:243 utils/adt/formatting.c:1648
+#: utils/adt/formatting.c:1770 utils/adt/formatting.c:1893 utils/adt/like.c:191
+#: utils/adt/like_support.c:1025 utils/adt/varchar.c:739
+#: utils/adt/varchar.c:1010 utils/adt/varchar.c:1064 utils/adt/varlena.c:1518
 #, c-format
 msgid "Use the COLLATE clause to set the collation explicitly."
 msgstr "Use la cláusula COLLATE para establecer el ordenamiento explícitamente."
 
-#: access/hash/hashinsert.c:83
+#: access/hash/hashinsert.c:86
 #, c-format
 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:85 access/spgist/spgdoinsert.c:2005
-#: access/spgist/spgdoinsert.c:2282 access/spgist/spgutils.c:1019
+#: access/hash/hashinsert.c:88 access/spgist/spgdoinsert.c:2006
+#: access/spgist/spgdoinsert.c:2283 access/spgist/spgutils.c:1011
 #, c-format
 msgid "Values larger than a buffer page cannot be indexed."
 msgstr "Valores mayores a una página del buffer no pueden ser indexados."
@@ -1173,236 +1212,242 @@ msgstr "la familia de operadores «%s» del método de acceso %s no tiene funci
 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:2226
+#: 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:2697
+#: access/heap/heapam.c:2545
 #, 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:2743
+#: access/heap/heapam.c:2592
 #, c-format
 msgid "attempted to delete invisible tuple"
 msgstr "se intentó eliminar una tupla invisible"
 
-#: access/heap/heapam.c:3183 access/heap/heapam.c:6025
+#: access/heap/heapam.c:3035 access/heap/heapam.c:5902
 #, 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:3307
+#: access/heap/heapam.c:3163
 #, c-format
 msgid "attempted to update invisible tuple"
 msgstr "se intentó actualizar una tupla invisible"
 
-#: access/heap/heapam.c:4669 access/heap/heapam.c:4707
-#: access/heap/heapam.c:4972 access/heap/heapam_handler.c:456
+#: access/heap/heapam.c:4550 access/heap/heapam.c:4588
+#: access/heap/heapam.c:4853 access/heap/heapam_handler.c:467
 #, 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:401
+#: access/heap/heapam_handler.c:412
 #, 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:360 access/heap/rewriteheap.c:660
+#: access/heap/hio.c:517 access/heap/rewriteheap.c:659
 #, 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:920
+#: access/heap/rewriteheap.c:919
 #, 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:1013 access/heap/rewriteheap.c:1131
-#: access/transam/timeline.c:329 access/transam/timeline.c:485
-#: access/transam/xlog.c:2963 access/transam/xlog.c:3176
-#: access/transam/xlog.c:3964 access/transam/xlog.c:8653
-#: access/transam/xlogfuncs.c:594 backup/basebackup_server.c:149
-#: backup/basebackup_server.c:242 commands/dbcommands.c:517
-#: postmaster/postmaster.c:4597 postmaster/postmaster.c:5618
-#: replication/logical/origin.c:587 replication/slot.c:1596
-#: storage/file/copydir.c:167 storage/smgr/md.c:222 utils/time/snapmgr.c:1261
+#: access/heap/rewriteheap.c:1011 access/heap/rewriteheap.c:1128
+#: access/transam/timeline.c:329 access/transam/timeline.c:481
+#: access/transam/xlog.c:2971 access/transam/xlog.c:3162
+#: access/transam/xlog.c:3938 access/transam/xlog.c:8740
+#: access/transam/xlogfuncs.c:701 backup/basebackup_server.c:151
+#: backup/basebackup_server.c:244 commands/dbcommands.c:518
+#: postmaster/postmaster.c:4554 postmaster/postmaster.c:5557
+#: replication/logical/origin.c:603 replication/slot.c:1770
+#: storage/file/copydir.c:157 storage/smgr/md.c:232 utils/time/snapmgr.c:1263
 #, c-format
 msgid "could not create file \"%s\": %m"
 msgstr "no se pudo crear archivo «%s»: %m"
 
-#: access/heap/rewriteheap.c:1141
+#: access/heap/rewriteheap.c:1138
 #, 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:1159 access/transam/timeline.c:384
-#: access/transam/timeline.c:424 access/transam/timeline.c:502
-#: access/transam/xlog.c:3035 access/transam/xlog.c:3232
-#: access/transam/xlog.c:3976 commands/dbcommands.c:529
-#: postmaster/postmaster.c:4607 postmaster/postmaster.c:4617
-#: replication/logical/origin.c:599 replication/logical/origin.c:641
-#: replication/logical/origin.c:660 replication/logical/snapbuild.c:1726
-#: replication/slot.c:1631 storage/file/buffile.c:537
-#: storage/file/copydir.c:207 utils/init/miscinit.c:1441
-#: utils/init/miscinit.c:1452 utils/init/miscinit.c:1460 utils/misc/guc.c:8731
-#: utils/misc/guc.c:8762 utils/misc/guc.c:10751 utils/misc/guc.c:10765
-#: utils/time/snapmgr.c:1266 utils/time/snapmgr.c:1273
+#: access/heap/rewriteheap.c:1156 access/transam/timeline.c:384
+#: access/transam/timeline.c:424 access/transam/timeline.c:498
+#: access/transam/xlog.c:3021 access/transam/xlog.c:3218
+#: access/transam/xlog.c:3950 commands/dbcommands.c:530
+#: postmaster/postmaster.c:4564 postmaster/postmaster.c:4574
+#: replication/logical/origin.c:615 replication/logical/origin.c:657
+#: replication/logical/origin.c:676 replication/logical/snapbuild.c:1767
+#: replication/slot.c:1805 storage/file/buffile.c:546
+#: storage/file/copydir.c:197 utils/init/miscinit.c:1605
+#: utils/init/miscinit.c:1616 utils/init/miscinit.c:1624 utils/misc/guc.c:4330
+#: utils/misc/guc.c:4361 utils/misc/guc.c:5489 utils/misc/guc.c:5507
+#: utils/time/snapmgr.c:1268 utils/time/snapmgr.c:1275
 #, c-format
 msgid "could not write to file \"%s\": %m"
 msgstr "no se pudo escribir a archivo «%s»: %m"
 
-#: access/heap/rewriteheap.c:1249 access/transam/twophase.c:1705
-#: access/transam/xlogarchive.c:119 access/transam/xlogarchive.c:429
-#: postmaster/postmaster.c:1157 postmaster/syslogger.c:1537
-#: replication/logical/origin.c:575 replication/logical/reorderbuffer.c:4399
-#: replication/logical/snapbuild.c:1671 replication/logical/snapbuild.c:2087
-#: replication/slot.c:1728 storage/file/fd.c:795 storage/file/fd.c:3263
-#: storage/file/fd.c:3325 storage/file/reinit.c:262 storage/ipc/dsm.c:317
-#: storage/smgr/md.c:349 storage/smgr/md.c:415 storage/sync/sync.c:250
-#: utils/time/snapmgr.c:1606
+#: access/heap/rewriteheap.c:1248 access/transam/twophase.c:1703
+#: access/transam/xlogarchive.c:120 access/transam/xlogarchive.c:393
+#: postmaster/postmaster.c:1143 postmaster/syslogger.c:1537
+#: replication/logical/origin.c:591 replication/logical/reorderbuffer.c:4526
+#: replication/logical/snapbuild.c:1691 replication/logical/snapbuild.c:2121
+#: replication/slot.c:1902 storage/file/fd.c:789 storage/file/fd.c:3275
+#: storage/file/fd.c:3337 storage/file/reinit.c:262 storage/ipc/dsm.c:316
+#: storage/smgr/md.c:380 storage/smgr/md.c:439 storage/sync/sync.c:250
+#: utils/time/snapmgr.c:1608
 #, c-format
 msgid "could not remove file \"%s\": %m"
 msgstr "no se pudo eliminar el archivo «%s»: %m"
 
-#: access/heap/vacuumlazy.c:407
+#: access/heap/vacuumlazy.c:481
 #, c-format
 msgid "aggressively vacuuming \"%s.%s.%s\""
 msgstr "haciendo vacuum agresivamente a «%s.%s.%s»"
 
-#: access/heap/vacuumlazy.c:412
+#: access/heap/vacuumlazy.c:486
 #, c-format
 msgid "vacuuming \"%s.%s.%s\""
 msgstr "haciendo vacuum a «%s.%s.%s»"
 
-#: access/heap/vacuumlazy.c:663
+#: access/heap/vacuumlazy.c:634
 #, c-format
 msgid "finished vacuuming \"%s.%s.%s\": index scans: %d\n"
 msgstr "se terminó el vacuum de «%s.%s.%s»: recorridos de índice: %d\n"
 
-#: access/heap/vacuumlazy.c:674
+#: access/heap/vacuumlazy.c:645
 #, 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:676
+#: access/heap/vacuumlazy.c:647
 #, c-format
 msgid "automatic vacuum to prevent wraparound of table \"%s.%s.%s\": index scans: %d\n"
 msgstr "vacuum automático para prevenir wraparound de la tabla «%s.%s.%s»: recorridos de índice: %d\n"
 
-#: access/heap/vacuumlazy.c:681
+#: access/heap/vacuumlazy.c:652
 #, 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:683
+#: access/heap/vacuumlazy.c:654
 #, 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:690
+#: access/heap/vacuumlazy.c:661
 #, c-format
 msgid "pages: %u removed, %u remain, %u scanned (%.2f%% of total)\n"
 msgstr "páginas: %u eliminadas, %u quedan, %u recorridas (%.2f%% del total)\n"
 
-#: access/heap/vacuumlazy.c:697
+#: access/heap/vacuumlazy.c:668
 #, c-format
 msgid "tuples: %lld removed, %lld remain, %lld are dead but not yet removable\n"
 msgstr "tuplas: %lld eliminadas, %lld permanecen, %lld están muertas pero aún no se pueden quitar\n"
 
-#: access/heap/vacuumlazy.c:703
+#: access/heap/vacuumlazy.c:674
 #, c-format
 msgid "tuples missed: %lld dead from %u pages not removed due to cleanup lock contention\n"
 msgstr "tuplas faltantes: %lld muertas en %u páginas no eliminadas debido a contención del lock de limpieza\n"
 
-#: access/heap/vacuumlazy.c:708
-#, fuzzy, c-format
+#: access/heap/vacuumlazy.c:680
+#, c-format
 msgid "removable cutoff: %u, which was %d XIDs old when operation ended\n"
-msgstr "punto de corte de eliminables: %u, que tenía %d XIDs de edad cuando la operación terminó\n"
+msgstr ""
 
-#: access/heap/vacuumlazy.c:714
+#: access/heap/vacuumlazy.c:687
 #, c-format
 msgid "new relfrozenxid: %u, which is %d XIDs ahead of previous value\n"
 msgstr "nuevo relfrozenxid: %u, que está %d XIDs más adelante del valor anterior\n"
 
-#: access/heap/vacuumlazy.c:721
+#: access/heap/vacuumlazy.c:695
 #, c-format
 msgid "new relminmxid: %u, which is %d MXIDs ahead of previous value\n"
 msgstr "nuevo relminmxid: %u, que está %d MXIDs más adelante del valor anterior\n"
 
-#: access/heap/vacuumlazy.c:727
+#: access/heap/vacuumlazy.c:698
+#, fuzzy, c-format
+#| msgid "%u pages from table (%.2f%% of total) had %lld dead item identifiers removed\n"
+msgid "frozen: %u pages from table (%.2f%% of total) had %lld tuples frozen\n"
+msgstr "en %u páginas de la tabla (%.2f%% del total) se eliminaron %lld identificadores de elementos muertos\n"
+
+#: access/heap/vacuumlazy.c:706
 msgid "index scan not needed: "
 msgstr "recorrido de índice no necesario: "
 
-#: access/heap/vacuumlazy.c:729
+#: access/heap/vacuumlazy.c:708
 msgid "index scan needed: "
 msgstr "recorrido de índice necesario: "
 
-#: access/heap/vacuumlazy.c:731
+#: access/heap/vacuumlazy.c:710
 #, c-format
 msgid "%u pages from table (%.2f%% of total) had %lld dead item identifiers removed\n"
 msgstr "en %u páginas de la tabla (%.2f%% del total) se eliminaron %lld identificadores de elementos muertos\n"
 
-#: access/heap/vacuumlazy.c:736
+#: access/heap/vacuumlazy.c:715
 msgid "index scan bypassed: "
 msgstr "recorrido de índice pasado por alto: "
 
-#: access/heap/vacuumlazy.c:738
+#: access/heap/vacuumlazy.c:717
 msgid "index scan bypassed by failsafe: "
 msgstr "recorrido de índice pasado por alto debido a modo failsafe: "
 
-#: access/heap/vacuumlazy.c:740
+#: access/heap/vacuumlazy.c:719
 #, c-format
 msgid "%u pages from table (%.2f%% of total) have %lld dead item identifiers\n"
 msgstr "%u páginas de la tabla (%.2f%% del total) tienen %lld identificadores de elementos muertos\n"
 
-#: access/heap/vacuumlazy.c:755
+#: access/heap/vacuumlazy.c:734
 #, c-format
 msgid "index \"%s\": pages: %u in total, %u newly deleted, %u currently deleted, %u reusable\n"
 msgstr "índice «%s»: páginas: %u en total, %u recientemente eliminadas, %u eliminadas hasta ahora, %u reusables\n"
 
-#: access/heap/vacuumlazy.c:767 commands/analyze.c:796
+#: access/heap/vacuumlazy.c:746 commands/analyze.c:795
 #, c-format
 msgid "I/O timings: read: %.3f ms, write: %.3f ms\n"
 msgstr "tiempos de E/S: lectura: %.3f ms, escritura: %.3f ms\n"
 
-#: access/heap/vacuumlazy.c:777 commands/analyze.c:799
+#: access/heap/vacuumlazy.c:756 commands/analyze.c:798
 #, 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:780 commands/analyze.c:801
+#: access/heap/vacuumlazy.c:759 commands/analyze.c:800
 #, c-format
 msgid "buffer usage: %lld hits, %lld misses, %lld dirtied\n"
 msgstr "uso de búfers: %lld aciertos, %lld fallos, %lld ensuciados\n"
 
-#: access/heap/vacuumlazy.c:785
+#: access/heap/vacuumlazy.c:764
 #, c-format
 msgid "WAL usage: %lld records, %lld full page images, %llu bytes\n"
 msgstr "uso de WAL: %lld registros, %lld imágenes de página completa, %llu bytes\n"
 
-#: access/heap/vacuumlazy.c:789 commands/analyze.c:805
+#: access/heap/vacuumlazy.c:768 commands/analyze.c:804
 #, c-format
 msgid "system usage: %s"
 msgstr "uso de sistema: %s"
 
-#: access/heap/vacuumlazy.c:2463
+#: access/heap/vacuumlazy.c:2481
 #, c-format
 msgid "table \"%s\": removed %lld dead item identifiers in %u pages"
 msgstr "tabla «%s»: se eliminaron %lld identificadores de elementos muertos en %u páginas"
 
-#: access/heap/vacuumlazy.c:2629
+#: access/heap/vacuumlazy.c:2641
 #, c-format
 msgid "bypassing nonessential maintenance of table \"%s.%s.%s\" as a failsafe after %d index scans"
 msgstr "pasando por alto el mantenimiento no esencial de la tabla «%s.%s.%s» como mecanismo de seguridad (failsafe) luego de %d recorridos de índice"
 
-#: access/heap/vacuumlazy.c:2634
+#: access/heap/vacuumlazy.c:2644
 #, c-format
 msgid "The table's relfrozenxid or relminmxid is too far in the past."
 msgstr "El relfrozenxid o el relminmxid de la tabla es demasiado antiguo."
 
-#: access/heap/vacuumlazy.c:2635
+#: access/heap/vacuumlazy.c:2645
 #, c-format
 msgid ""
 "Consider increasing configuration parameter \"maintenance_work_mem\" or \"autovacuum_work_mem\".\n"
@@ -1411,67 +1456,67 @@ msgstr ""
 "Considere incrementar el parámetro de configuración «maintenance_work_mem» o «autovacuum_work_mem».\n"
 "Es probable que también deba considerar otras formas para que VACUUM pueda mantener el paso de la asignación de IDs de transacción."
 
-#: access/heap/vacuumlazy.c:2878
+#: access/heap/vacuumlazy.c:2890
 #, 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:2948
+#: access/heap/vacuumlazy.c:2960
 #, c-format
 msgid "table \"%s\": truncated %u to %u pages"
 msgstr "tabla «%s»: truncadas %u a %u páginas"
 
-#: access/heap/vacuumlazy.c:3010
+#: access/heap/vacuumlazy.c:3022
 #, c-format
 msgid "table \"%s\": suspending truncate due to conflicting lock request"
 msgstr "tabla «%s»: suspendiendo el truncado debido a una petición de bloqueo en conflicto"
 
-#: access/heap/vacuumlazy.c:3170
+#: access/heap/vacuumlazy.c:3182
 #, c-format
 msgid "disabling parallel option of vacuum on \"%s\" --- cannot vacuum temporary tables in parallel"
 msgstr "desactivando el comportamiento paralelo de vacuum en «%s» --- no se puede hacer vacuum de tablas temporales en paralelo"
 
-#: access/heap/vacuumlazy.c:3383
+#: access/heap/vacuumlazy.c:3398
 #, c-format
 msgid "while scanning block %u offset %u of relation \"%s.%s\""
 msgstr "recorriendo el bloque %u posición %u de la relación «%s.%s»"
 
-#: access/heap/vacuumlazy.c:3386
+#: access/heap/vacuumlazy.c:3401
 #, c-format
 msgid "while scanning block %u of relation \"%s.%s\""
 msgstr "recorriendo el bloque %u de la relación «%s.%s»"
 
-#: access/heap/vacuumlazy.c:3390
+#: access/heap/vacuumlazy.c:3405
 #, c-format
 msgid "while scanning relation \"%s.%s\""
 msgstr "recorriendo la relación «%s.%s»"
 
-#: access/heap/vacuumlazy.c:3398
+#: access/heap/vacuumlazy.c:3413
 #, c-format
 msgid "while vacuuming block %u offset %u of relation \"%s.%s\""
 msgstr "haciendo «vacuum» al bloque %u posición %u de la relación «%s.%s»"
 
-#: access/heap/vacuumlazy.c:3401
+#: access/heap/vacuumlazy.c:3416
 #, c-format
 msgid "while vacuuming block %u of relation \"%s.%s\""
 msgstr "haciendo «vacuum» al bloque %u de la relación «%s.%s»"
 
-#: access/heap/vacuumlazy.c:3405
+#: access/heap/vacuumlazy.c:3420
 #, c-format
 msgid "while vacuuming relation \"%s.%s\""
 msgstr "mientras se hacía «vacuum» a la relación «%s.%s»"
 
-#: access/heap/vacuumlazy.c:3410 commands/vacuumparallel.c:1058
+#: access/heap/vacuumlazy.c:3425 commands/vacuumparallel.c:1074
 #, c-format
 msgid "while vacuuming index \"%s\" of relation \"%s.%s\""
 msgstr "mientras se hacía «vacuum» al índice «%s» de la relación «%s.%s»"
 
-#: access/heap/vacuumlazy.c:3415 commands/vacuumparallel.c:1064
+#: access/heap/vacuumlazy.c:3430 commands/vacuumparallel.c:1080
 #, c-format
 msgid "while cleaning up index \"%s\" of relation \"%s.%s\""
 msgstr "mientras se limpiaba el índice «%s» de la relación «%s.%s»"
 
-#: access/heap/vacuumlazy.c:3421
+#: access/heap/vacuumlazy.c:3436
 #, c-format
 msgid "while truncating relation \"%s.%s\" to %u blocks"
 msgstr "error mientras se truncaba la relación «%s.%s» a %u bloques"
@@ -1486,70 +1531,70 @@ 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/genam.c:489
+#: access/index/genam.c:490
 #, c-format
 msgid "transaction aborted during system catalog scan"
 msgstr "transacción abortada durante recorrido de catálogos de sistema"
 
-#: access/index/indexam.c:142 catalog/objectaddress.c:1376
-#: commands/indexcmds.c:2790 commands/tablecmds.c:271 commands/tablecmds.c:295
-#: commands/tablecmds.c:17119 commands/tablecmds.c:18887
+#: access/index/indexam.c:142 catalog/objectaddress.c:1394
+#: commands/indexcmds.c:2852 commands/tablecmds.c:272 commands/tablecmds.c:296
+#: commands/tablecmds.c:17191 commands/tablecmds.c:18959
 #, c-format
 msgid "\"%s\" is not an index"
 msgstr "«%s» no es un índice"
 
-#: access/index/indexam.c:973
+#: access/index/indexam.c:979
 #, c-format
 msgid "operator class %s has no options"
 msgstr "clase de operadores «%s» no tiene opciones"
 
-#: access/nbtree/nbtinsert.c:666
+#: access/nbtree/nbtinsert.c:668
 #, c-format
 msgid "duplicate key value violates unique constraint \"%s\""
 msgstr "llave duplicada viola restricción de unicidad «%s»"
 
-#: access/nbtree/nbtinsert.c:668
+#: access/nbtree/nbtinsert.c:670
 #, c-format
 msgid "Key %s already exists."
 msgstr "Ya existe la llave %s."
 
-#: access/nbtree/nbtinsert.c:762
+#: access/nbtree/nbtinsert.c:764
 #, c-format
 msgid "This may be because of a non-immutable index expression."
 msgstr "Esto puede deberse a una expresión de índice no inmutable."
 
-#: access/nbtree/nbtpage.c:159 access/nbtree/nbtpage.c:608
-#: parser/parse_utilcmd.c:2332
+#: access/nbtree/nbtpage.c:158 access/nbtree/nbtpage.c:607
+#: parser/parse_utilcmd.c:2317
 #, c-format
 msgid "index \"%s\" is not a btree"
 msgstr "el índice «%s» no es un btree"
 
-#: access/nbtree/nbtpage.c:166 access/nbtree/nbtpage.c:615
+#: access/nbtree/nbtpage.c:165 access/nbtree/nbtpage.c:614
 #, 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:1874
+#: access/nbtree/nbtpage.c:1862
 #, 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:1876
+#: access/nbtree/nbtpage.c:1864
 #, 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:2669
+#: access/nbtree/nbtutils.c:2663
 #, 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:2675
+#: access/nbtree/nbtutils.c:2669
 #, 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:2679
+#: access/nbtree/nbtutils.c:2673
 #, c-format
 msgid ""
 "Values larger than 1/3 of a buffer page cannot be indexed.\n"
@@ -1563,12 +1608,12 @@ msgstr ""
 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:244
+#: access/spgist/spgutils.c:245
 #, 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:1016
+#: access/spgist/spgutils.c:1008
 #, 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"
@@ -1583,40 +1628,33 @@ msgstr "el tipo de dato hoja SP-GiST %s no coincide con el tipo declarado %s"
 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:83 access/table/table.c:112
-#: access/table/table.c:145 catalog/aclchk.c:1835
-#, c-format
-msgid "\"%s\" is an index"
-msgstr "«%s» es un índice"
-
-#: access/table/table.c:54 access/table/table.c:88 access/table/table.c:117
-#: access/table/table.c:150 catalog/aclchk.c:1842 commands/tablecmds.c:13797
-#: commands/tablecmds.c:17128
-#, c-format
-msgid "\"%s\" is a composite type"
-msgstr "«%s» es un tipo compuesto"
+#: access/table/table.c:145 optimizer/util/plancat.c:145
+#, fuzzy, c-format
+#| msgid "cannot change relation \"%s\""
+msgid "cannot open relation \"%s\""
+msgstr "no se puede cambiar la relación «%s»"
 
-#: access/table/tableam.c:266
+#: access/table/tableam.c:265
 #, 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»"
 
-#: access/table/tableamapi.c:115
+#: access/table/tableamapi.c:116
 #, c-format
 msgid "%s cannot be empty."
 msgstr "%s no puede ser vacío."
 
-#: access/table/tableamapi.c:122 utils/misc/guc.c:12920
+#: access/table/tableamapi.c:123 access/transam/xlogrecovery.c:4774
 #, c-format
 msgid "%s is too long (maximum %d characters)."
 msgstr "%s es demasiado largo (máximo %d caracteres)."
 
-#: access/table/tableamapi.c:145
+#: access/table/tableamapi.c:146
 #, c-format
 msgid "table access method \"%s\" does not exist"
 msgstr "no existe el método de acceso de tabla «%s»"
 
-#: access/table/tableamapi.c:150
+#: access/table/tableamapi.c:151
 #, c-format
 msgid "Table access method \"%s\" does not exist."
 msgstr "No existe el método de acceso de tabla «%s»."
@@ -1626,33 +1664,33 @@ msgstr "No existe el método de acceso de tabla «%s»."
 msgid "sample percentage must be between 0 and 100"
 msgstr "el porcentaje de muestreo debe estar entre 0 y 100"
 
-#: access/transam/commit_ts.c:282
+#: access/transam/commit_ts.c:279
 #, c-format
 msgid "cannot retrieve commit timestamp for transaction %u"
 msgstr "no se puede obtener el timestamp de compromiso de la transacción %u"
 
-#: access/transam/commit_ts.c:380
+#: access/transam/commit_ts.c:377
 #, c-format
 msgid "could not get commit timestamp data"
 msgstr "no se pudo obtener datos de compromiso de transacción"
 
-#: access/transam/commit_ts.c:382
+#: access/transam/commit_ts.c:379
 #, c-format
 msgid "Make sure the configuration parameter \"%s\" is set on the primary server."
 msgstr "Asegúrese que el parámetro de configuración «%s» esté definido en el servidor primario."
 
-#: access/transam/commit_ts.c:384
+#: access/transam/commit_ts.c:381
 #, c-format
 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:1021
+#: access/transam/multixact.c:1023
 #, 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:1023 access/transam/multixact.c:1030
-#: access/transam/multixact.c:1054 access/transam/multixact.c:1063
+#: access/transam/multixact.c:1025 access/transam/multixact.c:1032
+#: access/transam/multixact.c:1056 access/transam/multixact.c:1065
 #, c-format
 msgid ""
 "Execute a database-wide VACUUM in that database.\n"
@@ -1661,60 +1699,60 @@ 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:1028
+#: access/transam/multixact.c:1030
 #, 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:1049 access/transam/multixact.c:2333
+#: access/transam/multixact.c:1051 access/transam/multixact.c:2333
 #, c-format
 msgid "database \"%s\" must be vacuumed before %u more MultiXactId is used"
 msgid_plural "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:1058 access/transam/multixact.c:2342
+#: access/transam/multixact.c:1060 access/transam/multixact.c:2342
 #, c-format
 msgid "database with OID %u must be vacuumed before %u more MultiXactId is used"
 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:1119
+#: access/transam/multixact.c:1121
 #, c-format
 msgid "multixact \"members\" limit exceeded"
 msgstr "límite de miembros de multixact alcanzado"
 
-#: access/transam/multixact.c:1120
+#: access/transam/multixact.c:1122
 #, 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:1125
+#: access/transam/multixact.c:1127
 #, 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:1156
+#: access/transam/multixact.c:1158
 #, 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:1161
+#: access/transam/multixact.c:1163
 #, 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:1300
+#: access/transam/multixact.c:1302
 #, 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:1306
+#: access/transam/multixact.c:1308
 #, 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"
@@ -1730,61 +1768,61 @@ 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:2621
+#: access/transam/multixact.c:2622
 #, 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:2643
+#: access/transam/multixact.c:2644
 #, 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:3030
+#: access/transam/multixact.c:3027
 #, 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:3048
+#: access/transam/multixact.c:3045
 #, 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:3362
+#: access/transam/multixact.c:3359
 #, c-format
 msgid "invalid MultiXactId: %u"
 msgstr "el MultiXactId no es válido: %u"
 
-#: access/transam/parallel.c:718 access/transam/parallel.c:837
+#: access/transam/parallel.c:729 access/transam/parallel.c:848
 #, c-format
 msgid "parallel worker failed to initialize"
 msgstr "el ayudante paralelo no pudo iniciar"
 
-#: access/transam/parallel.c:719 access/transam/parallel.c:838
+#: access/transam/parallel.c:730 access/transam/parallel.c:849
 #, c-format
 msgid "More details may be available in the server log."
 msgstr "Puede haber más detalles disponibles en el log del servidor."
 
-#: access/transam/parallel.c:899
+#: access/transam/parallel.c:910
 #, c-format
 msgid "postmaster exited during a parallel transaction"
 msgstr "postmaster terminó durante una transacción paralela"
 
-#: access/transam/parallel.c:1086
+#: access/transam/parallel.c:1097
 #, c-format
 msgid "lost connection to parallel worker"
 msgstr "se ha perdido la conexión al ayudante paralelo"
 
-#: access/transam/parallel.c:1152 access/transam/parallel.c:1154
+#: access/transam/parallel.c:1163 access/transam/parallel.c:1165
 msgid "parallel worker"
 msgstr "ayudante paralelo"
 
-#: access/transam/parallel.c:1307
+#: access/transam/parallel.c:1319
 #, 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:1312
+#: access/transam/parallel.c:1324
 #, 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"
@@ -1845,60 +1883,60 @@ msgstr "El gestor de recursos con ID %d tiene el mismo nombre."
 msgid "registered custom resource manager \"%s\" with ID %d"
 msgstr "se registró el gestor de recursos «%s» con ID %d"
 
-#: access/transam/slru.c:713
+#: access/transam/slru.c:714
 #, c-format
 msgid "file \"%s\" doesn't exist, reading as zeroes"
 msgstr "el archivo «%s» no existe, leyendo como ceros"
 
-#: access/transam/slru.c:945 access/transam/slru.c:951
-#: access/transam/slru.c:959 access/transam/slru.c:964
-#: access/transam/slru.c:971 access/transam/slru.c:976
-#: access/transam/slru.c:983 access/transam/slru.c:990
+#: access/transam/slru.c:946 access/transam/slru.c:952
+#: access/transam/slru.c:960 access/transam/slru.c:965
+#: access/transam/slru.c:972 access/transam/slru.c:977
+#: access/transam/slru.c:984 access/transam/slru.c:991
 #, 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:946
+#: access/transam/slru.c:947
 #, c-format
 msgid "Could not open file \"%s\": %m."
 msgstr "No se pudo abrir el archivo «%s»: %m."
 
-#: access/transam/slru.c:952
+#: access/transam/slru.c:953
 #, c-format
 msgid "Could not seek in file \"%s\" to offset %d: %m."
 msgstr "No se pudo posicionar (seek) en el archivo «%s» a la posición %d: %m."
 
-#: access/transam/slru.c:960
+#: access/transam/slru.c:961
 #, c-format
 msgid "Could not read from file \"%s\" at offset %d: %m."
 msgstr "No se pudo leer desde el archivo «%s» en la posición %d: %m."
 
-#: access/transam/slru.c:965
+#: access/transam/slru.c:966
 #, c-format
 msgid "Could not read from file \"%s\" at offset %d: read too few bytes."
 msgstr "No se pudo leer desde el archivo «%s» en la posición %d: se leyeron muy pocos bytes."
 
-#: access/transam/slru.c:972
+#: access/transam/slru.c:973
 #, c-format
 msgid "Could not write to file \"%s\" at offset %d: %m."
 msgstr "No se pudo escribir al archivo «%s» en la posición %d: %m."
 
-#: access/transam/slru.c:977
+#: access/transam/slru.c:978
 #, c-format
 msgid "Could not write to file \"%s\" at offset %d: wrote too few bytes."
 msgstr "No se pudo escribir al archivo «%s» en la posición %d: se escribieron muy pocos bytes."
 
-#: access/transam/slru.c:984
+#: access/transam/slru.c:985
 #, c-format
 msgid "Could not fsync file \"%s\": %m."
 msgstr "No se pudo sincronizar (fsync) archivo «%s»: %m."
 
-#: access/transam/slru.c:991
+#: access/transam/slru.c:992
 #, c-format
 msgid "Could not close file \"%s\": %m."
 msgstr "No se pudo cerrar el archivo «%s»: %m."
 
-#: access/transam/slru.c:1252
+#: access/transam/slru.c:1253
 #, c-format
 msgid "could not truncate directory \"%s\": apparent wraparound"
 msgstr "no se pudo truncar el directorio «%s»: aparente problema por reciclaje de transacciones"
@@ -1938,7 +1976,7 @@ msgstr "datos no válidos en archivo de historia «%s»"
 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:597
+#: access/transam/timeline.c:589
 #, 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"
@@ -1963,12 +2001,12 @@ msgstr "Defina max_prepared_transactions a un valor distinto de cero."
 msgid "transaction identifier \"%s\" is already in use"
 msgstr "identificador de transacción «%s» ya está siendo utilizado"
 
-#: access/transam/twophase.c:421 access/transam/twophase.c:2486
+#: access/transam/twophase.c:421 access/transam/twophase.c:2484
 #, c-format
 msgid "maximum number of prepared transactions reached"
 msgstr "se alcanzó el número máximo de transacciones preparadas"
 
-#: access/transam/twophase.c:422 access/transam/twophase.c:2487
+#: access/transam/twophase.c:422 access/transam/twophase.c:2485
 #, c-format
 msgid "Increase max_prepared_transactions (currently %d)."
 msgstr "Incremente max_prepared_transactions (actualmente es %d)."
@@ -2003,107 +2041,107 @@ msgstr "Conéctese a la base de datos donde la transacción fue preparada para t
 msgid "prepared transaction with identifier \"%s\" does not exist"
 msgstr "transacción preparada con identificador «%s» no existe"
 
-#: access/transam/twophase.c:1169
+#: access/transam/twophase.c:1167
 #, 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:1324
+#: access/transam/twophase.c:1322
 #, c-format
 msgid "incorrect size of file \"%s\": %lld byte"
 msgid_plural "incorrect size of file \"%s\": %lld bytes"
 msgstr[0] "tamaño incorrecto de archivo «%s»: %lld byte"
 msgstr[1] "tamaño incorrecto de archivo «%s»: %lld bytes"
 
-#: access/transam/twophase.c:1333
+#: access/transam/twophase.c:1331
 #, 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:1351
+#: access/transam/twophase.c:1349
 #, c-format
 msgid "could not read file \"%s\": read %d of %lld"
 msgstr "no se pudo leer el archivo «%s»: leídos %d de %lld"
 
-#: access/transam/twophase.c:1366
+#: access/transam/twophase.c:1364
 #, 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:1372
+#: access/transam/twophase.c:1370
 #, c-format
 msgid "invalid size stored in file \"%s\""
 msgstr "tamaño no válido en archivo «%s»"
 
-#: access/transam/twophase.c:1384
+#: access/transam/twophase.c:1382
 #, 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:1414 access/transam/xlogrecovery.c:569
-#: replication/logical/logical.c:206 replication/walsender.c:702
+#: access/transam/twophase.c:1412 access/transam/xlogrecovery.c:590
+#: replication/logical/logical.c:209 replication/walsender.c:687
 #, c-format
 msgid "Failed while allocating a WAL reading processor."
 msgstr "Falló mientras se emplazaba un procesador de lectura de WAL."
 
-#: access/transam/twophase.c:1424
+#: access/transam/twophase.c:1422
 #, c-format
 msgid "could not read two-phase state from WAL at %X/%X: %s"
 msgstr "no se pudo leer el archivo de estado de dos fases desde WAL en %X/%X: %s"
 
-#: access/transam/twophase.c:1429
+#: access/transam/twophase.c:1427
 #, 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:1437
+#: access/transam/twophase.c:1435
 #, 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:1733
+#: access/transam/twophase.c:1731
 #, c-format
 msgid "could not recreate file \"%s\": %m"
 msgstr "no se pudo recrear archivo «%s»: %m"
 
-#: access/transam/twophase.c:1860
+#: access/transam/twophase.c:1858
 #, 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:2094
+#: access/transam/twophase.c:2092
 #, c-format
 msgid "recovering prepared transaction %u from shared memory"
 msgstr "recuperando transacción preparada %u desde memoria compartida"
 
-#: access/transam/twophase.c:2187
+#: access/transam/twophase.c:2185
 #, 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:2194
+#: access/transam/twophase.c:2192
 #, 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:2207
+#: access/transam/twophase.c:2205
 #, 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:2214
+#: access/transam/twophase.c:2212
 #, 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:2239
+#: access/transam/twophase.c:2237
 #, 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:2244
+#: access/transam/twophase.c:2242
 #, c-format
 msgid "corrupted two-phase state in memory for transaction %u"
 msgstr "estado de dos fases en memoria corrupto para transacción %u"
@@ -2137,568 +2175,581 @@ msgstr "base de datos «%s» debe ser limpiada dentro de %u transacciones"
 msgid "database with OID %u must be vacuumed within %u transactions"
 msgstr "base de datos con OID %u debe ser limpiada dentro de %u transacciones"
 
-#: access/transam/xact.c:1098
+#: access/transam/xact.c:1102
 #, c-format
 msgid "cannot have more than 2^32-2 commands in a transaction"
 msgstr "no se pueden tener más de 2^32-2 órdenes en una transacción"
 
-#: access/transam/xact.c:1644
+#: access/transam/xact.c:1643
 #, 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:2501
+#: access/transam/xact.c:2513
 #, 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:2511
+#: access/transam/xact.c:2523
 #, 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"
 
 #. translator: %s represents an SQL statement name
-#: access/transam/xact.c:3474
+#: access/transam/xact.c:3490
 #, 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:3484
+#: access/transam/xact.c:3500
 #, 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:3494
+#: access/transam/xact.c:3510
+#, fuzzy, c-format
+#| msgid "%s cannot be executed from a function"
+msgid "%s cannot be executed within a pipeline"
+msgstr "%s no puede ser ejecutado desde una función"
+
+#. translator: %s represents an SQL statement name
+#: access/transam/xact.c:3520
 #, 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:3565 access/transam/xact.c:3878
-#: access/transam/xact.c:3957 access/transam/xact.c:4080
-#: access/transam/xact.c:4231 access/transam/xact.c:4300
-#: access/transam/xact.c:4411
+#: access/transam/xact.c:3591 access/transam/xact.c:3916
+#: access/transam/xact.c:3995 access/transam/xact.c:4118
+#: access/transam/xact.c:4269 access/transam/xact.c:4338
+#: access/transam/xact.c:4449
 #, 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:3764
+#: access/transam/xact.c:3802
 #, c-format
 msgid "there is already a transaction in progress"
 msgstr "ya hay una transacción en curso"
 
-#: access/transam/xact.c:3883 access/transam/xact.c:3962
-#: access/transam/xact.c:4085
+#: access/transam/xact.c:3921 access/transam/xact.c:4000
+#: access/transam/xact.c:4123
 #, c-format
 msgid "there is no transaction in progress"
 msgstr "no hay una transacción en curso"
 
-#: access/transam/xact.c:3973
+#: access/transam/xact.c:4011
 #, 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:4096
+#: access/transam/xact.c:4134
 #, c-format
 msgid "cannot abort during a parallel operation"
 msgstr "no se puede abortar durante una operación paralela"
 
-#: access/transam/xact.c:4195
+#: access/transam/xact.c:4233
 #, 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:4282
+#: access/transam/xact.c:4320
 #, 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:4292 access/transam/xact.c:4343
-#: access/transam/xact.c:4403 access/transam/xact.c:4452
+#: access/transam/xact.c:4330 access/transam/xact.c:4381
+#: access/transam/xact.c:4441 access/transam/xact.c:4490
 #, c-format
 msgid "savepoint \"%s\" does not exist"
 msgstr "no existe el «savepoint» «%s»"
 
-#: access/transam/xact.c:4349 access/transam/xact.c:4458
+#: access/transam/xact.c:4387 access/transam/xact.c:4496
 #, 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:4391
+#: access/transam/xact.c:4429
 #, 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:4519
+#: access/transam/xact.c:4557
 #, 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:4587
+#: access/transam/xact.c:4625
 #, 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:5234
+#: access/transam/xact.c:5271
 #, 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:1463
+#: access/transam/xlog.c:1466
 #, c-format
 msgid "request to flush past end of generated WAL; request %X/%X, current position %X/%X"
 msgstr "petición para sincronizar (flush) más allá del final del WAL generado; petición %X/%X, posición actual %X/%X"
 
-#: access/transam/xlog.c:2224
+#: access/transam/xlog.c:2228
 #, c-format
 msgid "could not write to log file %s at offset %u, length %zu: %m"
 msgstr "no se pudo escribir archivo de registro %s en la posición %u, largo %zu: %m"
 
-#: access/transam/xlog.c:3471 access/transam/xlogutils.c:847
-#: replication/walsender.c:2716
+#: access/transam/xlog.c:3455 access/transam/xlogutils.c:833
+#: replication/walsender.c:2725
 #, c-format
 msgid "requested WAL segment %s has already been removed"
 msgstr "el segmento de WAL solicitado %s ya ha sido eliminado"
 
-#: access/transam/xlog.c:3756
+#: access/transam/xlog.c:3739
 #, c-format
 msgid "could not rename file \"%s\": %m"
 msgstr "no se pudo renombrar el archivo «%s»: %m"
 
-#: access/transam/xlog.c:3798 access/transam/xlog.c:3808
+#: access/transam/xlog.c:3781 access/transam/xlog.c:3791
 #, c-format
 msgid "required WAL directory \"%s\" does not exist"
 msgstr "no existe el directorio WAL «%s»"
 
-#: access/transam/xlog.c:3814
+#: access/transam/xlog.c:3797
 #, c-format
 msgid "creating missing WAL directory \"%s\""
 msgstr "creando el directorio WAL faltante «%s»"
 
-#: access/transam/xlog.c:3817 commands/dbcommands.c:3045
+#: access/transam/xlog.c:3800 commands/dbcommands.c:3095
 #, c-format
 msgid "could not create missing directory \"%s\": %m"
 msgstr "no se pudo crear el directorio faltante «%s»: %m"
 
-#: access/transam/xlog.c:3884
+#: access/transam/xlog.c:3867
 #, c-format
 msgid "could not generate secret authorization token"
 msgstr "no se pudo generar un token de autorización secreto"
 
-#: access/transam/xlog.c:4043 access/transam/xlog.c:4052
+#: access/transam/xlog.c:4017 access/transam/xlog.c:4026
+#: access/transam/xlog.c:4050 access/transam/xlog.c:4057
+#: access/transam/xlog.c:4064 access/transam/xlog.c:4069
 #: access/transam/xlog.c:4076 access/transam/xlog.c:4083
-#: access/transam/xlog.c:4090 access/transam/xlog.c:4095
-#: access/transam/xlog.c:4102 access/transam/xlog.c:4109
-#: access/transam/xlog.c:4116 access/transam/xlog.c:4123
-#: access/transam/xlog.c:4130 access/transam/xlog.c:4137
-#: access/transam/xlog.c:4146 access/transam/xlog.c:4153
-#: utils/init/miscinit.c:1598
+#: access/transam/xlog.c:4090 access/transam/xlog.c:4097
+#: access/transam/xlog.c:4104 access/transam/xlog.c:4111
+#: access/transam/xlog.c:4120 access/transam/xlog.c:4127
+#: utils/init/miscinit.c:1762
 #, c-format
 msgid "database files are incompatible with server"
 msgstr "los archivos de base de datos son incompatibles con el servidor"
 
-#: access/transam/xlog.c:4044
+#: access/transam/xlog.c:4018
 #, c-format
 msgid "The database cluster was initialized with PG_CONTROL_VERSION %d (0x%08x), 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:4048
+#: access/transam/xlog.c:4022
 #, 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:4053
+#: access/transam/xlog.c:4027
 #, 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:4056 access/transam/xlog.c:4080
-#: access/transam/xlog.c:4087 access/transam/xlog.c:4092
+#: access/transam/xlog.c:4030 access/transam/xlog.c:4054
+#: access/transam/xlog.c:4061 access/transam/xlog.c:4066
 #, c-format
 msgid "It looks like you need to initdb."
 msgstr "Parece que necesita ejecutar initdb."
 
-#: access/transam/xlog.c:4067
+#: access/transam/xlog.c:4041
 #, 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:4077
+#: access/transam/xlog.c:4051
 #, 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:4084
+#: access/transam/xlog.c:4058
 #, 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:4091
+#: access/transam/xlog.c:4065
 #, 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:4096
+#: access/transam/xlog.c:4070
 #, 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:4099 access/transam/xlog.c:4106
-#: access/transam/xlog.c:4113 access/transam/xlog.c:4120
-#: access/transam/xlog.c:4127 access/transam/xlog.c:4134
-#: access/transam/xlog.c:4141 access/transam/xlog.c:4149
-#: access/transam/xlog.c:4156
+#: access/transam/xlog.c:4073 access/transam/xlog.c:4080
+#: access/transam/xlog.c:4087 access/transam/xlog.c:4094
+#: access/transam/xlog.c:4101 access/transam/xlog.c:4108
+#: access/transam/xlog.c:4115 access/transam/xlog.c:4123
+#: access/transam/xlog.c:4130
 #, c-format
 msgid "It looks like you need to recompile or initdb."
 msgstr "Parece que necesita recompilar o ejecutar initdb."
 
-#: access/transam/xlog.c:4103
+#: access/transam/xlog.c:4077
 #, c-format
 msgid "The database cluster was initialized with RELSEG_SIZE %d, but the server was 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:4110
+#: access/transam/xlog.c:4084
 #, 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:4117
+#: access/transam/xlog.c:4091
 #, 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:4124
+#: access/transam/xlog.c:4098
 #, 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:4131
+#: access/transam/xlog.c:4105
 #, 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:4138
+#: access/transam/xlog.c:4112
 #, 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:4147
+#: access/transam/xlog.c:4121
 #, 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:4154
+#: access/transam/xlog.c:4128
 #, 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:4163
+#: access/transam/xlog.c:4137
 #, c-format
 msgid "WAL segment size must be a power of two between 1 MB and 1 GB, but the 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:4175
+#: access/transam/xlog.c:4149
 #, 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:4179
+#: access/transam/xlog.c:4153
 #, 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:4620
+#: access/transam/xlog.c:4308 catalog/namespace.c:4335
+#: commands/tablespace.c:1216 commands/user.c:2536 commands/variable.c:72
+#: utils/error/elog.c:2205
+#, c-format
+msgid "List syntax is invalid."
+msgstr "La sintaxis de lista no es válida."
+
+#: access/transam/xlog.c:4354 commands/user.c:2552 commands/variable.c:173
+#: utils/error/elog.c:2231
+#, c-format
+msgid "Unrecognized key word: \"%s\"."
+msgstr "Palabra clave no reconocida: «%s»."
+
+#: access/transam/xlog.c:4768
 #, 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:4628
+#: access/transam/xlog.c:4776
 #, 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:4634
+#: access/transam/xlog.c:4782
 #, 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:4852
+#: access/transam/xlog.c:4999
 #, c-format
 msgid "WAL was generated with wal_level=minimal, cannot continue recovering"
 msgstr "el WAL fue generado con wal_level=minimal, no se puede continuar con la recuperación"
 
-#: access/transam/xlog.c:4853
+#: access/transam/xlog.c:5000
 #, c-format
 msgid "This happens if you temporarily set wal_level=minimal on the server."
 msgstr "Esto sucede si temporalmente define wal_level=minimal en el servidor."
 
-#: access/transam/xlog.c:4854
+#: access/transam/xlog.c:5001
 #, c-format
 msgid "Use a backup taken after setting wal_level to higher than minimal."
 msgstr "Utilice un respaldo tomado después de establecer wal_level a un valor superior a minimal."
 
-#: access/transam/xlog.c:4918
+#: access/transam/xlog.c:5065
 #, c-format
 msgid "control file contains invalid checkpoint location"
 msgstr "el archivo de control contiene una ubicación no válida de punto de control"
 
-#: access/transam/xlog.c:4929
+#: access/transam/xlog.c:5076
 #, 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:4935
+#: access/transam/xlog.c:5082
 #, 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:4941
+#: access/transam/xlog.c:5088
 #, 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:4947
+#: access/transam/xlog.c:5094
 #, 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:4949
+#: access/transam/xlog.c:5096
 #, 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:4955
+#: access/transam/xlog.c:5102
 #, 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:4957
+#: access/transam/xlog.c:5104
 #, 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:4963
+#: access/transam/xlog.c:5110
 #, 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:4969
+#: access/transam/xlog.c:5116
 #, c-format
 msgid "control file contains invalid database cluster state"
 msgstr "el archivo de control contiene un estado no válido del clúster"
 
-#: access/transam/xlog.c:5353
+#: access/transam/xlog.c:5500
 #, 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:5354
+#: access/transam/xlog.c:5501
 #, 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:5357
+#: access/transam/xlog.c:5504
 #, c-format
 msgid "WAL ends before consistent recovery point"
 msgstr "WAL termina antes del punto de recuperación consistente"
 
-#: access/transam/xlog.c:5405
+#: access/transam/xlog.c:5550
 #, c-format
 msgid "selected new timeline ID: %u"
 msgstr "seleccionado nuevo ID de timeline: %u"
 
-#: access/transam/xlog.c:5438
+#: access/transam/xlog.c:5583
 #, c-format
 msgid "archive recovery complete"
 msgstr "recuperación completa"
 
-#: access/transam/xlog.c:6040
+#: access/transam/xlog.c:6185
 #, c-format
 msgid "shutting down"
 msgstr "apagando"
 
 #. translator: the placeholders show checkpoint options
-#: access/transam/xlog.c:6079
+#: access/transam/xlog.c:6224
 #, c-format
 msgid "restartpoint starting:%s%s%s%s%s%s%s%s"
 msgstr "empezando restartpoint:%s%s%s%s%s%s%s%s"
 
 #. translator: the placeholders show checkpoint options
-#: access/transam/xlog.c:6091
+#: access/transam/xlog.c:6236
 #, c-format
 msgid "checkpoint starting:%s%s%s%s%s%s%s%s"
 msgstr "empezando checkpoint:%s%s%s%s%s%s%s%s"
 
-#: access/transam/xlog.c:6151
-#, c-format
-msgid "restartpoint complete: wrote %d buffers (%.1f%%); %d WAL file(s) added, %d removed, %d recycled; write=%ld.%03d s, sync=%ld.%03d s, total=%ld.%03d s; sync files=%d, longest=%ld.%03d s, average=%ld.%03d s; distance=%d kB, estimate=%d kB"
+#: access/transam/xlog.c:6301
+#, fuzzy, c-format
+#| msgid "restartpoint complete: wrote %d buffers (%.1f%%); %d WAL file(s) added, %d removed, %d recycled; write=%ld.%03d s, sync=%ld.%03d s, total=%ld.%03d s; sync files=%d, longest=%ld.%03d s, average=%ld.%03d s; distance=%d kB, estimate=%d kB"
+msgid "restartpoint complete: wrote %d buffers (%.1f%%); %d WAL file(s) added, %d removed, %d recycled; write=%ld.%03d s, sync=%ld.%03d s, total=%ld.%03d s; sync files=%d, longest=%ld.%03d s, average=%ld.%03d s; distance=%d kB, estimate=%d kB; lsn=%X/%X, redo lsn=%X/%X"
 msgstr "restartpoint completado: se escribió %d buffers (%.1f%%); %d archivo(s) de WAL añadido(s), %d eliminado(s), %d reciclado(s); escritura=%ld.%03d s, sincronización=%ld.%03d s, total=%ld.%03d s; archivos sincronizados=%d, más largo=%ld.%03d s, promedio=%ld.%03d s; distancia=%d kB, estimado=%d kB"
 
-#: access/transam/xlog.c:6171
-#, c-format
-msgid "checkpoint complete: wrote %d buffers (%.1f%%); %d WAL file(s) added, %d removed, %d recycled; write=%ld.%03d s, sync=%ld.%03d s, total=%ld.%03d s; sync files=%d, longest=%ld.%03d s, average=%ld.%03d s; distance=%d kB, estimate=%d kB"
+#: access/transam/xlog.c:6324
+#, fuzzy, c-format
+#| msgid "checkpoint complete: wrote %d buffers (%.1f%%); %d WAL file(s) added, %d removed, %d recycled; write=%ld.%03d s, sync=%ld.%03d s, total=%ld.%03d s; sync files=%d, longest=%ld.%03d s, average=%ld.%03d s; distance=%d kB, estimate=%d kB"
+msgid "checkpoint complete: wrote %d buffers (%.1f%%); %d WAL file(s) added, %d removed, %d recycled; write=%ld.%03d s, sync=%ld.%03d s, total=%ld.%03d s; sync files=%d, longest=%ld.%03d s, average=%ld.%03d s; distance=%d kB, estimate=%d kB; lsn=%X/%X, redo lsn=%X/%X"
 msgstr "checkpoint completado: se escribió %d buffers (%.1f%%); %d archivo(s) de WAL añadido(s), %d eliminado(s), %d reciclado(s); escritura=%ld.%03d s, sincronización=%ld.%03d s, total=%ld.%03d s; archivos sincronizados=%d, más largo=%ld.%03d s, promedio=%ld.%03d s; distancia=%d kB, estimado=%d kB"
 
-#: access/transam/xlog.c:6606
+#: access/transam/xlog.c:6762
 #, 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:7163
+#: access/transam/xlog.c:7323
 #, c-format
 msgid "recovery restart point at %X/%X"
 msgstr "restartpoint de recuperación en %X/%X"
 
-#: access/transam/xlog.c:7165
+#: access/transam/xlog.c:7325
 #, 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:7412
+#: access/transam/xlog.c:7573
 #, c-format
 msgid "restore point \"%s\" created at %X/%X"
 msgstr "punto de recuperación «%s» creado en %X/%X"
 
-#: access/transam/xlog.c:7619
+#: access/transam/xlog.c:7780
 #, 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:7676
+#: access/transam/xlog.c:7837
 #, c-format
 msgid "unexpected timeline ID %u (should be %u) in shutdown checkpoint record"
 msgstr "ID de timeline %u inesperado (debería ser %u) en el registro de checkpoint de detención"
 
-#: access/transam/xlog.c:7734
+#: access/transam/xlog.c:7895
 #, c-format
 msgid "unexpected timeline ID %u (should be %u) in online checkpoint record"
 msgstr "ID de timeline %u inesperado (debería ser %u) en el registro de checkpoint «online»"
 
-#: access/transam/xlog.c:7763
+#: access/transam/xlog.c:7924
 #, c-format
 msgid "unexpected timeline ID %u (should be %u) in end-of-recovery record"
 msgstr "ID de timeline %u inesperado (debería ser %u) en el registro de fin-de-recuperación"
 
-#: access/transam/xlog.c:8021
+#: access/transam/xlog.c:8191
 #, 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:8027
+#: access/transam/xlog.c:8196
 #, c-format
 msgid "could not fdatasync file \"%s\": %m"
 msgstr "no se pudo sincronizar (fdatasync) archivo «%s»: %m"
 
-#: access/transam/xlog.c:8122 access/transam/xlog.c:8489
+#: access/transam/xlog.c:8281 access/transam/xlog.c:8604
 #, 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:8123 access/transam/xlog.c:8490
-#: access/transam/xlogfuncs.c:199
+#: access/transam/xlog.c:8282 access/transam/xlog.c:8605
+#: access/transam/xlogfuncs.c:253
 #, 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:8128
+#: access/transam/xlog.c:8287
 #, 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:8244
+#: access/transam/xlog.c:8408
 #, 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:8246 access/transam/xlog.c:8602
+#: access/transam/xlog.c:8410 access/transam/xlog.c:8693
 #, 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 primary, 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 primario, luego trate de ejecutar un respaldo en línea nuevamente."
 
-#: access/transam/xlog.c:8326 backup/basebackup.c:1344 utils/adt/misc.c:347
-#, 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:8376 backup/basebackup.c:1359
-#: commands/tablespace.c:399 commands/tablespace.c:581 utils/adt/misc.c:355
+#: access/transam/xlog.c:8477 backup/basebackup.c:1351 utils/adt/misc.c:354
 #, c-format
-msgid "tablespaces are not supported on this platform"
-msgstr "tablespaces no están soportados en esta plataforma"
+msgid "could not read symbolic link \"%s\": %m"
+msgstr "no se pudo leer el enlace simbólico «%s»: %m"
 
-#: access/transam/xlog.c:8535 access/transam/xlog.c:8548
-#: access/transam/xlogrecovery.c:1192 access/transam/xlogrecovery.c:1199
-#: access/transam/xlogrecovery.c:1258 access/transam/xlogrecovery.c:1338
-#: access/transam/xlogrecovery.c:1362
+#: access/transam/xlog.c:8484 backup/basebackup.c:1356 utils/adt/misc.c:359
 #, c-format
-msgid "invalid data in file \"%s\""
-msgstr "datos no válidos en archivo «%s»"
+msgid "symbolic link \"%s\" target is too long"
+msgstr "la ruta «%s» del enlace simbólico es demasiado larga"
 
-#: access/transam/xlog.c:8552 backup/basebackup.c:1199
+#: access/transam/xlog.c:8643 backup/basebackup.c:1217
 #, 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:8553 backup/basebackup.c:1200
+#: access/transam/xlog.c:8644 backup/basebackup.c:1218
 #, 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:8600
+#: access/transam/xlog.c:8691
 #, 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:8725
+#: access/transam/xlog.c:8807
 #, 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:8739
+#: access/transam/xlog.c:8821
 #, 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:8741
+#: access/transam/xlog.c:8823
 #, 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:8748
+#: access/transam/xlog.c:8830
 #, c-format
 msgid "all required WAL segments have been archived"
 msgstr "todos los segmentos de WAL requeridos han sido archivados"
 
-#: access/transam/xlog.c:8752
+#: access/transam/xlog.c:8834
 #, 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:8801
+#: access/transam/xlog.c:8873
 #, c-format
 msgid "aborting backup due to backend exiting before pg_backup_stop was called"
 msgstr "abortando el backup porque el proceso servidor terminó antes de que pg_backup_stop fuera invocada"
 
-#: access/transam/xlogarchive.c:208
+#: access/transam/xlogarchive.c:207
 #, c-format
 msgid "archive file \"%s\" has wrong size: %lld instead of %lld"
 msgstr "el archivo «%s» tiene tamaño erróneo: %lld en lugar de %lld"
 
-#: access/transam/xlogarchive.c:217
+#: access/transam/xlogarchive.c:216
 #, 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:231
+#: access/transam/xlogarchive.c:230
 #, c-format
 msgid "restore_command returned a zero exit status, but stat() failed."
 msgstr "restore_command retornó un estado de salida cero, pero stat() falló."
 
-#: access/transam/xlogarchive.c:263
+#: access/transam/xlogarchive.c:262
 #, c-format
 msgid "could not restore file \"%s\" from archive: %s"
 msgstr "no se pudo recuperar el archivo «%s»: %s"
@@ -2706,323 +2757,341 @@ 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:376
+#: access/transam/xlogarchive.c:340
 #, c-format
 msgid "%s \"%s\": %s"
 msgstr "%s «%s»: %s"
 
-#: access/transam/xlogarchive.c:486 access/transam/xlogarchive.c:566
+#: access/transam/xlogarchive.c:450 access/transam/xlogarchive.c:530
 #, c-format
 msgid "could not create archive status file \"%s\": %m"
 msgstr "no se pudo crear el archivo de estado «%s»: %m"
 
-#: access/transam/xlogarchive.c:494 access/transam/xlogarchive.c:574
+#: access/transam/xlogarchive.c:458 access/transam/xlogarchive.c:538
 #, c-format
 msgid "could not write archive status file \"%s\": %m"
 msgstr "no se pudo escribir el archivo de estado «%s»: %m"
 
-#: access/transam/xlogfuncs.c:74 backup/basebackup.c:957
+#: access/transam/xlogfuncs.c:75 backup/basebackup.c:973
 #, c-format
 msgid "a backup is already in progress in this session"
 msgstr "ya hay un respaldo en curso en esta sesión"
 
-#: access/transam/xlogfuncs.c:126
+#: access/transam/xlogfuncs.c:146
 #, c-format
 msgid "backup is not in progress"
 msgstr "no hay respaldo en curso"
 
-#: access/transam/xlogfuncs.c:127
+#: access/transam/xlogfuncs.c:147
 #, c-format
 msgid "Did you call pg_backup_start()?"
 msgstr "¿Invocó pg_backup_start()?"
 
-#: access/transam/xlogfuncs.c:166 access/transam/xlogfuncs.c:193
-#: access/transam/xlogfuncs.c:232 access/transam/xlogfuncs.c:253
-#: access/transam/xlogfuncs.c:274
+#: access/transam/xlogfuncs.c:190 access/transam/xlogfuncs.c:247
+#: access/transam/xlogfuncs.c:286 access/transam/xlogfuncs.c:307
+#: access/transam/xlogfuncs.c:328
 #, 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/xlogfuncs.c:198
+#: access/transam/xlogfuncs.c:215
+#, fuzzy, c-format
+#| msgid "%s cannot be executed during recovery."
+msgid "pg_log_standby_snapshot() cannot be executed during recovery."
+msgstr "No se puede ejecutar %s durante la recuperación."
+
+# FIXME see logical.c:81
+#: access/transam/xlogfuncs.c:220
+#, fuzzy, c-format
+#| msgid "replication slots can only be used if wal_level >= replica"
+msgid "pg_log_standby_snapshot() can only be used if wal_level >= replica"
+msgstr "los slots de replicación sólo pueden usarse si wal_level >= replica"
+
+#: access/transam/xlogfuncs.c:252
 #, 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:206
+#: access/transam/xlogfuncs.c:260
 #, 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:344 access/transam/xlogfuncs.c:402
+#: access/transam/xlogfuncs.c:398 access/transam/xlogfuncs.c:456
 #, c-format
 msgid "%s cannot be executed during recovery."
 msgstr "No se puede ejecutar %s durante la recuperación."
 
-#: access/transam/xlogfuncs.c:424 access/transam/xlogfuncs.c:454
-#: access/transam/xlogfuncs.c:478 access/transam/xlogfuncs.c:501
-#: access/transam/xlogfuncs.c:581
+#: access/transam/xlogfuncs.c:495
+#, fuzzy, c-format
+#| msgid "invalid locale name \"%s\""
+msgid "invalid WAL file name \"%s\""
+msgstr "nombre de configuración regional «%s» no es válido"
+
+#: access/transam/xlogfuncs.c:531 access/transam/xlogfuncs.c:561
+#: access/transam/xlogfuncs.c:585 access/transam/xlogfuncs.c:608
+#: access/transam/xlogfuncs.c:688
 #, c-format
 msgid "recovery is not in progress"
 msgstr "la recuperación no está en proceso"
 
-#: access/transam/xlogfuncs.c:425 access/transam/xlogfuncs.c:455
-#: access/transam/xlogfuncs.c:479 access/transam/xlogfuncs.c:502
-#: access/transam/xlogfuncs.c:582
+#: access/transam/xlogfuncs.c:532 access/transam/xlogfuncs.c:562
+#: access/transam/xlogfuncs.c:586 access/transam/xlogfuncs.c:609
+#: access/transam/xlogfuncs.c:689
 #, c-format
 msgid "Recovery 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:430 access/transam/xlogfuncs.c:460
+#: access/transam/xlogfuncs.c:537 access/transam/xlogfuncs.c:567
 #, c-format
 msgid "standby promotion is ongoing"
 msgstr "la promoción del standby está en curso"
 
-#: access/transam/xlogfuncs.c:431 access/transam/xlogfuncs.c:461
+#: access/transam/xlogfuncs.c:538 access/transam/xlogfuncs.c:568
 #, c-format
 msgid "%s cannot be executed after promotion is triggered."
 msgstr "%s no puede ser ejecutado después que una promoción es solicitada."
 
-#: access/transam/xlogfuncs.c:587
+#: access/transam/xlogfuncs.c:694
 #, c-format
 msgid "\"wait_seconds\" must not be negative or zero"
 msgstr "«wait_seconds» no puede ser negativo o cero"
 
-#: access/transam/xlogfuncs.c:607 storage/ipc/signalfuncs.c:252
+#: access/transam/xlogfuncs.c:714 storage/ipc/signalfuncs.c:260
 #, c-format
 msgid "failed to send signal to postmaster: %m"
 msgstr "no se pudo enviar señal a postmaster: %m"
 
-#: access/transam/xlogfuncs.c:643
+#: access/transam/xlogfuncs.c:750
 #, c-format
 msgid "server did not promote within %d second"
 msgid_plural "server did not promote within %d seconds"
 msgstr[0] "el servidor no se promovió en %d segundo"
 msgstr[1] "el servidor no se promovió en %d segundos"
 
-#: access/transam/xlogprefetcher.c:1090
+#: access/transam/xlogprefetcher.c:1092
 #, c-format
-#| msgid "recovery_prefetch not supported on platforms that lack posix_fadvise()."
 msgid "recovery_prefetch is not supported on platforms that lack posix_fadvise()."
 msgstr "recovery_prefetch no está soportado en plataformas que no tienen posix_fadvise()."
 
-#: access/transam/xlogreader.c:625
-#, c-format
-msgid "invalid record offset at %X/%X"
-msgstr "posición de registro no válida en %X/%X"
+#: access/transam/xlogreader.c:626
+#, fuzzy, c-format
+#| msgid "invalid record length at %X/%X: wanted %u, got %u"
+msgid "invalid record offset at %X/%X: expected at least %u, got %u"
+msgstr "largo de registro no válido en %X/%X: se esperaba %u, se obtuvo %u"
 
-#: access/transam/xlogreader.c:633
+#: access/transam/xlogreader.c:635
 #, c-format
 msgid "contrecord is requested by %X/%X"
 msgstr "contrecord solicitado por %X/%X"
 
-#: access/transam/xlogreader.c:674 access/transam/xlogreader.c:1121
-#, c-format
-msgid "invalid record length at %X/%X: wanted %u, got %u"
+#: access/transam/xlogreader.c:676 access/transam/xlogreader.c:1123
+#, fuzzy, c-format
+#| msgid "invalid record length at %X/%X: wanted %u, got %u"
+msgid "invalid record length at %X/%X: expected at least %u, got %u"
 msgstr "largo de registro no válido en %X/%X: se esperaba %u, se obtuvo %u"
 
-#: access/transam/xlogreader.c:703
+#: access/transam/xlogreader.c:705
 #, c-format
 msgid "out of memory while trying to decode a record of length %u"
 msgstr "memoria agotada mientras se intentaba decodificar un registro de largo %u"
 
-#: access/transam/xlogreader.c:725
+#: access/transam/xlogreader.c:727
 #, 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:774
+#: access/transam/xlogreader.c:776
 #, c-format
 msgid "there is no contrecord flag at %X/%X"
 msgstr "no hay bandera de contrecord en %X/%X"
 
-#: access/transam/xlogreader.c:787
+#: access/transam/xlogreader.c:789
 #, c-format
 msgid "invalid contrecord length %u (expected %lld) at %X/%X"
 msgstr "largo de contrecord %u no válido (se esperaba %lld) en %X/%X"
 
-#: access/transam/xlogreader.c:922
-#, fuzzy, c-format
-#| msgid "there is no contrecord flag at %X/%X"
+#: access/transam/xlogreader.c:924
+#, c-format
 msgid "missing contrecord at %X/%X"
-msgstr "no hay bandera de contrecord en %X/%X"
+msgstr "falta un contrecord en %X/%X"
 
-#: access/transam/xlogreader.c:1129
+#: access/transam/xlogreader.c:1131
 #, 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:1142 access/transam/xlogreader.c:1158
+#: access/transam/xlogreader.c:1144 access/transam/xlogreader.c:1160
 #, 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:1194
+#: access/transam/xlogreader.c:1196
 #, 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:1231
-#, c-format
-msgid "invalid magic number %04X in log segment %s, offset %u"
+#: access/transam/xlogreader.c:1230
+#, fuzzy, c-format
+#| msgid "invalid magic number %04X in log segment %s, offset %u"
+msgid "invalid magic number %04X in WAL segment %s, LSN %X/%X, offset %u"
 msgstr "número mágico %04X no válido en archivo %s, posición %u"
 
-#: access/transam/xlogreader.c:1245 access/transam/xlogreader.c:1286
-#, c-format
-msgid "invalid info bits %04X in log segment %s, offset %u"
+#: access/transam/xlogreader.c:1245 access/transam/xlogreader.c:1287
+#, fuzzy, c-format
+#| msgid "invalid info bits %04X in log segment %s, offset %u"
+msgid "invalid info bits %04X in WAL segment %s, LSN %X/%X, offset %u"
 msgstr "info bits %04X no válidos en archivo %s, posición %u"
 
-#: access/transam/xlogreader.c:1260
+#: access/transam/xlogreader.c:1261
 #, c-format
 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 %llu, identificador en pg_control es %llu"
 
-#: access/transam/xlogreader.c:1268
+#: access/transam/xlogreader.c:1269
 #, 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:1274
+#: access/transam/xlogreader.c:1275
 #, 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:1305
-#, c-format
-msgid "unexpected pageaddr %X/%X in log segment %s, offset %u"
+#: access/transam/xlogreader.c:1307
+#, fuzzy, c-format
+#| msgid "unexpected pageaddr %X/%X in log segment %s, offset %u"
+msgid "unexpected pageaddr %X/%X in WAL segment %s, LSN %X/%X, offset %u"
 msgstr "pageaddr %X/%X inesperado en archivo %s, posición %u"
 
-#: access/transam/xlogreader.c:1330
-#, c-format
-msgid "out-of-sequence timeline ID %u (after %u) in log segment %s, offset %u"
+#: access/transam/xlogreader.c:1333
+#, fuzzy, c-format
+#| msgid "out-of-sequence timeline ID %u (after %u) in log segment %s, offset %u"
+msgid "out-of-sequence timeline ID %u (after %u) in WAL segment %s, LSN %X/%X, offset %u"
 msgstr "ID de timeline %u fuera de secuencia (después de %u) en archivo %s, posición %u"
 
-#: access/transam/xlogreader.c:1735
+#: access/transam/xlogreader.c:1739
 #, 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:1759
+#: access/transam/xlogreader.c:1763
 #, 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:1766
+#: access/transam/xlogreader.c:1770
 #, 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:1802
+#: access/transam/xlogreader.c:1806
 #, 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:1818
+#: access/transam/xlogreader.c:1822
 #, 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:1832
+#: access/transam/xlogreader.c:1836
 #, c-format
 msgid "BKPIMAGE_COMPRESSED set, but block image length %u at %X/%X"
 msgstr "BKPIMAGE_COMPRESSED definido, pero largo de imagen de bloque es %u en %X/%X"
 
-#: access/transam/xlogreader.c:1847
+#: access/transam/xlogreader.c:1851
 #, c-format
 msgid "neither BKPIMAGE_HAS_HOLE nor BKPIMAGE_COMPRESSED set, but block image length is %u at %X/%X"
 msgstr "ni BKPIMAGE_HAS_HOLE ni BKPIMAGE_COMPRESSED están definidos, pero el largo de imagen de bloque es %u en %X/%X"
 
-#: access/transam/xlogreader.c:1863
+#: access/transam/xlogreader.c:1867
 #, 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:1875
+#: access/transam/xlogreader.c:1879
 #, c-format
 msgid "invalid block_id %u at %X/%X"
 msgstr "block_id %u no válido en %X/%X"
 
-#: access/transam/xlogreader.c:1942
+#: access/transam/xlogreader.c:1946
 #, c-format
 msgid "record with invalid length at %X/%X"
 msgstr "registro con largo no válido en %X/%X"
 
-#: access/transam/xlogreader.c:1967
-#, fuzzy, c-format
-#| msgid "failed to locate backup block with ID %d in WAL record"
+#: access/transam/xlogreader.c:1972
+#, c-format
 msgid "could not locate backup block with ID %d in WAL record"
 msgstr "no se pudo localizar un bloque de respaldo con ID %d en el registro WAL"
 
-#: access/transam/xlogreader.c:2051
+#: access/transam/xlogreader.c:2056
 #, c-format
 msgid "could not restore image at %X/%X with invalid block %d specified"
 msgstr "no se pudo restaurar la imagen en %X/%X con bloque especifica %d no válido"
 
-#: access/transam/xlogreader.c:2058
-#, fuzzy, c-format
-#| msgid "invalid compressed image at %X/%X, block %d"
+#: access/transam/xlogreader.c:2063
+#, c-format
 msgid "could not restore image at %X/%X with invalid state, block %d"
-msgstr "imagen comprimida no válida en %X/%X, bloque %d"
+msgstr "no se pudo restaurar la imagen en %X/%X con estado no válido, bloque %d"
 
-#: access/transam/xlogreader.c:2085 access/transam/xlogreader.c:2102
-#, fuzzy, c-format
-#| msgid "image at %X/%X compressed with %s not supported by build, block %d"
+#: access/transam/xlogreader.c:2090 access/transam/xlogreader.c:2107
+#, c-format
 msgid "could not restore image at %X/%X compressed with %s not supported by build, block %d"
-msgstr "imagen en %X/%X comprimida con %s que no está soportado por esta instalación, bloque %d"
+msgstr "no se pudo restaurar la imagen en %X/%X comprimida con %s que no está soportado por esta instalación, bloque %d"
 
-#: access/transam/xlogreader.c:2111
-#, fuzzy, c-format
-#| msgid "image at %X/%X compressed with unknown method, block %d"
+#: access/transam/xlogreader.c:2116
+#, c-format
 msgid "could not restore image at %X/%X compressed with unknown method, block %d"
-msgstr "imagen %X/%X comprimida con un método desconocido, bloque %d"
+msgstr "no se pudo restaurar la imagen en %X/%X comprimida con un método desconocido, bloque %d"
 
-#: access/transam/xlogreader.c:2119
-#, fuzzy, c-format
-#| msgid "invalid compressed image at %X/%X, block %d"
+#: access/transam/xlogreader.c:2124
+#, c-format
 msgid "could not decompress image at %X/%X, block %d"
-msgstr "imagen comprimida no válida en %X/%X, bloque %d"
+msgstr "no se pudo descomprimir la imagen en %X/%X, bloque %d"
 
-#: access/transam/xlogrecovery.c:526
+#: access/transam/xlogrecovery.c:547
 #, c-format
 msgid "entering standby mode"
 msgstr "entrando al modo standby"
 
-#: access/transam/xlogrecovery.c:529
+#: access/transam/xlogrecovery.c:550
 #, c-format
 msgid "starting point-in-time recovery to XID %u"
 msgstr "comenzando el proceso de recuperación hasta el XID %u"
 
-#: access/transam/xlogrecovery.c:533
+#: access/transam/xlogrecovery.c:554
 #, c-format
 msgid "starting point-in-time recovery to %s"
 msgstr "comenzando el proceso de recuperación hasta %s"
 
-#: access/transam/xlogrecovery.c:537
+#: access/transam/xlogrecovery.c:558
 #, c-format
 msgid "starting point-in-time recovery to \"%s\""
 msgstr "comenzando el proceso de recuperación hasta «%s»"
 
-#: access/transam/xlogrecovery.c:541
+#: access/transam/xlogrecovery.c:562
 #, c-format
 msgid "starting point-in-time recovery to WAL location (LSN) \"%X/%X\""
 msgstr "comenzando el proceso de recuperación punto-en-el-tiempo a la ubicación (LSN) de WAL «%X/%X»"
 
-#: access/transam/xlogrecovery.c:545
+#: access/transam/xlogrecovery.c:566
 #, c-format
 msgid "starting point-in-time recovery to earliest consistent point"
 msgstr "comenzando recuperación a un punto en el tiempo hasta alcanzar un estado consistente"
 
-#: access/transam/xlogrecovery.c:548
+#: access/transam/xlogrecovery.c:569
 #, c-format
 msgid "starting archive recovery"
 msgstr "comenzando proceso de recuperación"
 
-#: access/transam/xlogrecovery.c:632
+#: access/transam/xlogrecovery.c:653
 #, 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 punto de control"
 
 # Purposefully deviate from quoting convention here, since argument is a shell command.
-#: access/transam/xlogrecovery.c:633 access/transam/xlogrecovery.c:643
+#: access/transam/xlogrecovery.c:654 access/transam/xlogrecovery.c:664
 #, c-format
 msgid ""
 "If you are restoring from a backup, touch \"%s/recovery.signal\" and add required recovery options.\n"
@@ -3033,325 +3102,311 @@ 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/xlogrecovery.c:642
+#: access/transam/xlogrecovery.c:663
 #, c-format
 msgid "could not locate required checkpoint record"
 msgstr "no se pudo localizar el registro del punto de control requerido"
 
-#: access/transam/xlogrecovery.c:671 commands/tablespace.c:685
+#: access/transam/xlogrecovery.c:692 commands/tablespace.c:670
 #, c-format
 msgid "could not create symbolic link \"%s\": %m"
 msgstr "no se pudo crear el enlace simbólico «%s»: %m"
 
-#: access/transam/xlogrecovery.c:703 access/transam/xlogrecovery.c:709
+#: access/transam/xlogrecovery.c:724 access/transam/xlogrecovery.c:730
 #, c-format
 msgid "ignoring file \"%s\" because no file \"%s\" exists"
 msgstr "ignorando el archivo «%s» porque no existe un archivo «%s»"
 
-#: access/transam/xlogrecovery.c:705
+#: access/transam/xlogrecovery.c:726
 #, c-format
 msgid "File \"%s\" was renamed to \"%s\"."
 msgstr "El archivo «%s» fue renombrado a «%s»."
 
-#: access/transam/xlogrecovery.c:711
+#: access/transam/xlogrecovery.c:732
 #, 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/xlogrecovery.c:765
+#: access/transam/xlogrecovery.c:786
 #, 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/xlogrecovery.c:789
+#: access/transam/xlogrecovery.c:810
 #, 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/xlogrecovery.c:791
+#: access/transam/xlogrecovery.c:812
 #, c-format
 msgid "Latest checkpoint is at %X/%X on timeline %u, but in the history of the 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/xlogrecovery.c:805
+#: access/transam/xlogrecovery.c:826
 #, 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/xlogrecovery.c:833
+#: access/transam/xlogrecovery.c:854
 #, c-format
 msgid "invalid next transaction ID"
 msgstr "el siguiente ID de transacción no es válido"
 
-#: access/transam/xlogrecovery.c:838
+#: access/transam/xlogrecovery.c:859
 #, c-format
 msgid "invalid redo in checkpoint record"
 msgstr "redo no es válido en el registro de punto de control"
 
-#: access/transam/xlogrecovery.c:849
+#: access/transam/xlogrecovery.c:870
 #, 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/xlogrecovery.c:878
+#: access/transam/xlogrecovery.c:899
 #, 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/xlogrecovery.c:882
+#: access/transam/xlogrecovery.c:903
 #, 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/xlogrecovery.c:925
+#: access/transam/xlogrecovery.c:946
 #, c-format
 msgid "backup_label contains data inconsistent with control file"
 msgstr "backup_label contiene datos inconsistentes con el archivo de control"
 
-#: access/transam/xlogrecovery.c:926
+#: access/transam/xlogrecovery.c:947
 #, c-format
 msgid "This means that the backup is corrupted and you will have to use another backup for recovery."
 msgstr "Esto significa que el respaldo está corrupto y deberá usar otro respaldo para la recuperación."
 
-#: access/transam/xlogrecovery.c:980
+#: access/transam/xlogrecovery.c:1001
 #, 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/xlogrecovery.c:1045
+#: access/transam/xlogrecovery.c:1066
 #, 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/xlogrecovery.c:1062
+#: access/transam/xlogrecovery.c:1083
 #, c-format
 msgid "specified neither primary_conninfo nor restore_command"
 msgstr "no se especifica primary_conninfo ni restore_command"
 
-#: access/transam/xlogrecovery.c:1063
+#: access/transam/xlogrecovery.c:1084
 #, c-format
 msgid "The database server will regularly poll the pg_wal subdirectory to check for 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/xlogrecovery.c:1071
+#: access/transam/xlogrecovery.c:1092
 #, 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/xlogrecovery.c:1109
+#: access/transam/xlogrecovery.c:1130
 #, c-format
 msgid "recovery target timeline %u does not exist"
 msgstr "no existe el timeline %u especificado como destino de recuperación"
 
-#: access/transam/xlogrecovery.c:1259
+#: access/transam/xlogrecovery.c:1213 access/transam/xlogrecovery.c:1220
+#: access/transam/xlogrecovery.c:1279 access/transam/xlogrecovery.c:1359
+#: access/transam/xlogrecovery.c:1383
+#, c-format
+msgid "invalid data in file \"%s\""
+msgstr "datos no válidos en archivo «%s»"
+
+#: access/transam/xlogrecovery.c:1280
 #, 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/xlogrecovery.c:1641
+#: access/transam/xlogrecovery.c:1662
 #, c-format
 msgid "redo starts at %X/%X"
 msgstr "redo comienza en %X/%X"
 
-#: access/transam/xlogrecovery.c:1654
+#: access/transam/xlogrecovery.c:1675
 #, c-format
 msgid "redo in progress, elapsed time: %ld.%02d s, current LSN: %X/%X"
 msgstr "redo en progreso, tiempo transcurrido: %ld.%02d s, LSN actual: %X/%X"
 
-#: access/transam/xlogrecovery.c:1746
+#: access/transam/xlogrecovery.c:1767
 #, c-format
 msgid "requested recovery stop point is before consistent recovery point"
 msgstr "el punto de detención de recuperación pedido es antes del punto de recuperación consistente"
 
-#: access/transam/xlogrecovery.c:1778
+#: access/transam/xlogrecovery.c:1799
 #, c-format
 msgid "redo done at %X/%X system usage: %s"
 msgstr "redo listo en %X/%X utilización del sistema: %s"
 
-#: access/transam/xlogrecovery.c:1784
+#: access/transam/xlogrecovery.c:1805
 #, c-format
 msgid "last completed transaction was at log time %s"
 msgstr "última transacción completada al tiempo de registro %s"
 
-#: access/transam/xlogrecovery.c:1793
+#: access/transam/xlogrecovery.c:1814
 #, c-format
 msgid "redo is not required"
 msgstr "no se requiere redo"
 
-#: access/transam/xlogrecovery.c:1804
+#: access/transam/xlogrecovery.c:1825
 #, c-format
 msgid "recovery ended before configured recovery target was reached"
 msgstr "la recuperación terminó antes de alcanzar el punto configurado como destino de recuperación"
 
-#: access/transam/xlogrecovery.c:1979
+#: access/transam/xlogrecovery.c:2019
 #, c-format
 msgid "successfully skipped missing contrecord at %X/%X, overwritten at %s"
 msgstr "se omitió con éxito contrecord no encontrado en %X/%X, sobrescrito en %s"
 
-#: access/transam/xlogrecovery.c:2046
+#: access/transam/xlogrecovery.c:2086
 #, c-format
 msgid "unexpected directory entry \"%s\" found in %s"
 msgstr "entrada de directorio inesperada «%s» fue encontrada en %s"
 
-#: access/transam/xlogrecovery.c:2048
+#: access/transam/xlogrecovery.c:2088
 #, c-format
 msgid "All directory entries in pg_tblspc/ should be symbolic links."
 msgstr "Todas las entradas de directorio en pg_tblspc deberían ser enlaces simbólicos"
 
-#: access/transam/xlogrecovery.c:2049
+#: access/transam/xlogrecovery.c:2089
 #, c-format
 msgid "Remove those directories, or set allow_in_place_tablespaces to ON transiently to let recovery complete."
 msgstr "Elimine esos directorios, o defina allow_in_place_tablespaces a ON transitoriamente para permitir que la recuperación pueda completarse."
 
-#: access/transam/xlogrecovery.c:2123
+#: access/transam/xlogrecovery.c:2163
 #, c-format
 msgid "consistent recovery state reached at %X/%X"
 msgstr "el estado de recuperación consistente fue alcanzado en %X/%X"
 
 #. translator: %s is a WAL record description
-#: access/transam/xlogrecovery.c:2161
+#: access/transam/xlogrecovery.c:2201
 #, c-format
 msgid "WAL redo at %X/%X for %s"
 msgstr "redo WAL en %X/%X para %s"
 
-#: access/transam/xlogrecovery.c:2257
+#: access/transam/xlogrecovery.c:2299
 #, c-format
 msgid "unexpected previous timeline ID %u (current timeline ID %u) in checkpoint record"
 msgstr "ID de timeline previo %u inesperado (timeline actual %u) en el registro de punto de control"
 
-#: access/transam/xlogrecovery.c:2266
+#: access/transam/xlogrecovery.c:2308
 #, 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/xlogrecovery.c:2282
+#: access/transam/xlogrecovery.c:2324
 #, 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/xlogrecovery.c:2466 access/transam/xlogrecovery.c:2737
+#: access/transam/xlogrecovery.c:2508 access/transam/xlogrecovery.c:2784
 #, c-format
 msgid "recovery stopping after reaching consistency"
 msgstr "deteniendo recuperación al alcanzar un estado consistente"
 
-#: access/transam/xlogrecovery.c:2487
+#: access/transam/xlogrecovery.c:2529
 #, 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/xlogrecovery.c:2572
+#: access/transam/xlogrecovery.c:2619
 #, 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/xlogrecovery.c:2579
+#: access/transam/xlogrecovery.c:2626
 #, 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/xlogrecovery.c:2632
+#: access/transam/xlogrecovery.c:2679
 #, 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/xlogrecovery.c:2650
+#: access/transam/xlogrecovery.c:2697
 #, 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/xlogrecovery.c:2717
+#: access/transam/xlogrecovery.c:2764
 #, 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/xlogrecovery.c:2725
+#: access/transam/xlogrecovery.c:2772
 #, 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/xlogrecovery.c:2806
+#: access/transam/xlogrecovery.c:2853
 #, c-format
 msgid "pausing at the end of recovery"
 msgstr "pausando al final de la recuperación"
 
-#: access/transam/xlogrecovery.c:2807
+#: access/transam/xlogrecovery.c:2854
 #, c-format
 msgid "Execute pg_wal_replay_resume() to promote."
 msgstr "Ejecute pg_wal_replay_resume() para promover."
 
-#: access/transam/xlogrecovery.c:2810 access/transam/xlogrecovery.c:4614
+#: access/transam/xlogrecovery.c:2857 access/transam/xlogrecovery.c:4594
 #, c-format
 msgid "recovery has paused"
 msgstr "la recuperación está en pausa"
 
-#: access/transam/xlogrecovery.c:2811
+#: access/transam/xlogrecovery.c:2858
 #, c-format
 msgid "Execute pg_wal_replay_resume() to continue."
 msgstr "Ejecute pg_wal_replay_resume() para continuar."
 
-#: access/transam/xlogrecovery.c:3077
-#, c-format
-msgid "unexpected timeline ID %u in log segment %s, offset %u"
+#: access/transam/xlogrecovery.c:3121
+#, fuzzy, c-format
+#| msgid "unexpected timeline ID %u in log segment %s, offset %u"
+msgid "unexpected timeline ID %u in WAL segment %s, LSN %X/%X, offset %u"
 msgstr "ID de timeline %u inesperado en archivo %s, posición %u"
 
 # XXX why talk about "log segment" instead of "file"?
-#: access/transam/xlogrecovery.c:3282
-#, c-format
-msgid "could not read from log segment %s, offset %u: %m"
+#: access/transam/xlogrecovery.c:3329
+#, fuzzy, c-format
+#| msgid "could not read from log segment %s, offset %u: %m"
+msgid "could not read from WAL segment %s, LSN %X/%X, 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/xlogrecovery.c:3288
-#, c-format
-msgid "could not read from log segment %s, offset %u: read %d of %zu"
+#: access/transam/xlogrecovery.c:3336
+#, fuzzy, c-format
+#| msgid "could not read from log segment %s, offset %u: read %d of %zu"
+msgid "could not read from WAL segment %s, LSN %X/%X, offset %u: read %d of %zu"
 msgstr "no se pudo leer del archivo de segmento %s, posición %u: leídos %d de %zu"
 
-#: access/transam/xlogrecovery.c:3931
-#, 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/xlogrecovery.c:3935
-#, 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/xlogrecovery.c:3953
-#, c-format
-msgid "invalid primary checkpoint record"
-msgstr "el registro del punto de control primario no es válido"
+#: access/transam/xlogrecovery.c:3976
+#, fuzzy, c-format
+#| msgid "invalid checkpoint record"
+msgid "invalid checkpoint location"
+msgstr "el registro del punto de control no es válido"
 
-#: access/transam/xlogrecovery.c:3957
+#: access/transam/xlogrecovery.c:3986
 #, c-format
 msgid "invalid checkpoint record"
 msgstr "el registro del punto de control no es válido"
 
-#: access/transam/xlogrecovery.c:3968
-#, 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/xlogrecovery.c:3972
+#: access/transam/xlogrecovery.c:3992
 #, 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/xlogrecovery.c:3985
-#, 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/xlogrecovery.c:3989
+#: access/transam/xlogrecovery.c:4000
 #, 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/xlogrecovery.c:4000
-#, 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/xlogrecovery.c:4004
+#: access/transam/xlogrecovery.c:4006
 #, c-format
 msgid "invalid length of checkpoint record"
 msgstr "la longitud del registro de punto de control no es válida"
@@ -3376,74 +3431,123 @@ msgstr "el nuevo timeline destino es %u"
 msgid "WAL receiver process shutdown requested"
 msgstr "se recibió una petición de apagado para el proceso receptor de wal"
 
-#: access/transam/xlogrecovery.c:4359
+#: access/transam/xlogrecovery.c:4356
 #, c-format
 msgid "received promote request"
 msgstr "se recibió petición de promoción"
 
-#: access/transam/xlogrecovery.c:4372
-#, c-format
-msgid "promote trigger file found: %s"
-msgstr "se encontró el archivo disparador de promoción: %s"
-
-#: access/transam/xlogrecovery.c:4380
-#, 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/xlogrecovery.c:4605
+#: access/transam/xlogrecovery.c:4585
 #, c-format
 msgid "hot standby is not possible because of insufficient parameter settings"
 msgstr "hot standby no es posible porque la configuración de parámetros no es suficiente"
 
-#: access/transam/xlogrecovery.c:4606 access/transam/xlogrecovery.c:4633
-#: access/transam/xlogrecovery.c:4663
+#: access/transam/xlogrecovery.c:4586 access/transam/xlogrecovery.c:4613
+#: access/transam/xlogrecovery.c:4643
 #, c-format
 msgid "%s = %d is a lower setting than on the primary server, where its value was %d."
 msgstr "%s = %d es una configuración menor que en el servidor primario, donde su valor era %d."
 
-#: access/transam/xlogrecovery.c:4615
+#: access/transam/xlogrecovery.c:4595
 #, c-format
 msgid "If recovery is unpaused, the server will shut down."
 msgstr "Si se continúa con la recuperación, el servidor se apagará."
 
-#: access/transam/xlogrecovery.c:4616
+#: access/transam/xlogrecovery.c:4596
 #, c-format
 msgid "You can then restart the server after making the necessary configuration changes."
 msgstr "Luego puede reiniciar el servidor después de hacer los cambios necesarios en la configuración."
 
-#: access/transam/xlogrecovery.c:4627
+#: access/transam/xlogrecovery.c:4607
 #, c-format
 msgid "promotion is not possible because of insufficient parameter settings"
 msgstr "la promoción no es posible porque la configuración de parámetros no es suficiente"
 
-#: access/transam/xlogrecovery.c:4637
+#: access/transam/xlogrecovery.c:4617
 #, c-format
 msgid "Restart the server after making the necessary configuration changes."
 msgstr "Reinicie el servidor luego de hacer los cambios necesarios en la configuración."
 
-#: access/transam/xlogrecovery.c:4661
+#: access/transam/xlogrecovery.c:4641
 #, c-format
 msgid "recovery aborted because of insufficient parameter settings"
 msgstr "se abortó la recuperación porque la configuración de parámetros no es suficiente"
 
-#: access/transam/xlogrecovery.c:4667
+#: access/transam/xlogrecovery.c:4647
 #, c-format
 msgid "You can restart the server after making the necessary configuration changes."
 msgstr "Puede reiniciar el servidor luego de hacer los cambios necesarios en la configuración."
 
-# XXX why talk about "log segment" instead of "file"?
-#: access/transam/xlogutils.c:1053
+#: access/transam/xlogrecovery.c:4689
+#, c-format
+msgid "multiple recovery targets specified"
+msgstr "múltiples valores de destino de recuperación especificados"
+
+#: access/transam/xlogrecovery.c:4690
+#, c-format
+msgid "At most one of recovery_target, recovery_target_lsn, recovery_target_name, recovery_target_time, recovery_target_xid may be set."
+msgstr "A lo más uno de recovery_target, recovery_target_lsn, recovery_target_name, recovery_target_time, recovery_target_xid puede estar definido."
+
+#: access/transam/xlogrecovery.c:4701
+#, c-format
+msgid "The only allowed value is \"immediate\"."
+msgstr "El único valor permitido es «immediate»."
+
+#: access/transam/xlogrecovery.c:4853 utils/adt/timestamp.c:185
+#: utils/adt/timestamp.c:438
+#, c-format
+msgid "timestamp out of range: \"%s\""
+msgstr "timestamp fuera de rango: «%s»"
+
+#: access/transam/xlogrecovery.c:4898
 #, c-format
-msgid "could not read from log segment %s, offset %d: %m"
+msgid "recovery_target_timeline is not a valid number."
+msgstr "recovery_target_timeline no es un número válido."
+
+# XXX why talk about "log segment" instead of "file"?
+#: access/transam/xlogutils.c:1039
+#, fuzzy, c-format
+#| msgid "could not read from log segment %s, offset %d: %m"
+msgid "could not read from WAL segment %s, offset %d: %m"
 msgstr "no se pudo leer del archivo de segmento %s, posición %d: %m"
 
 # XXX why talk about "log segment" instead of "file"?
-#: access/transam/xlogutils.c:1060
-#, c-format
-msgid "could not read from log segment %s, offset %d: read %d of %d"
+#: access/transam/xlogutils.c:1046
+#, fuzzy, c-format
+#| msgid "could not read from log segment %s, offset %d: read %d of %d"
+msgid "could not read from WAL segment %s, offset %d: read %d of %d"
 msgstr "no se pudo leer del archivo de segmento %s, posición %d: leídos %d de %d"
 
+#: archive/shell_archive.c:96
+#, c-format
+msgid "archive command failed with exit code %d"
+msgstr "la orden de archivado falló con código de retorno %d"
+
+#: archive/shell_archive.c:98 archive/shell_archive.c:108
+#: archive/shell_archive.c:114 archive/shell_archive.c:123
+#, c-format
+msgid "The failed archive command was: %s"
+msgstr "La orden fallida era: «%s»"
+
+#: archive/shell_archive.c:105
+#, c-format
+msgid "archive command was terminated by exception 0x%X"
+msgstr "la orden de archivado fue terminada por una excepción 0x%X"
+
+#: archive/shell_archive.c:107 postmaster/postmaster.c:3675
+#, 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."
+
+#: archive/shell_archive.c:112
+#, c-format
+msgid "archive command was terminated by signal %d: %s"
+msgstr "la orden de archivado fue terminada por una señal %d: %s"
+
+#: archive/shell_archive.c:121
+#, c-format
+msgid "archive command exited with unrecognized status %d"
+msgstr "la orden de archivado fue terminada con código %d no reconocido"
+
 #: backup/backup_manifest.c:253
 #, c-format
 msgid "expected end timeline %u but found timeline %u"
@@ -3464,146 +3568,145 @@ msgstr "el timeline de inicio %u no fue encontrado en la historia del timeline %
 msgid "could not rewind temporary file"
 msgstr "no se puede rebobinar el archivo temporal"
 
-#: backup/backup_manifest.c:374
-#, c-format
-msgid "could not read from temporary file: %m"
-msgstr "no se pudo leer del archivo temporal: %m"
-
-#: backup/basebackup.c:454
+#: backup/basebackup.c:470
 #, c-format
 msgid "could not find any WAL files"
 msgstr "no se pudo encontrar ningún archivo de WAL"
 
-#: backup/basebackup.c:469 backup/basebackup.c:484 backup/basebackup.c:493
+#: backup/basebackup.c:485 backup/basebackup.c:500 backup/basebackup.c:509
 #, c-format
 msgid "could not find WAL file \"%s\""
 msgstr "no se pudo encontrar archivo de WAL «%s»"
 
-#: backup/basebackup.c:535 backup/basebackup.c:560
+#: backup/basebackup.c:551 backup/basebackup.c:576
 #, c-format
 msgid "unexpected WAL file size \"%s\""
 msgstr "tamaño del archivo WAL «%s» inesperado"
 
-#: backup/basebackup.c:630
+#: backup/basebackup.c:646
 #, c-format
 msgid "%lld total checksum verification failure"
 msgid_plural "%lld total checksum verification failures"
 msgstr[0] "%lld falla de verificación de suma de comprobación en total"
 msgstr[1] "%lld fallas de verificación de suma de comprobación en total"
 
-#: backup/basebackup.c:637
+#: backup/basebackup.c:653
 #, c-format
 msgid "checksum verification failure during base backup"
 msgstr "falla en verificación de checksums durante respaldo base"
 
-#: backup/basebackup.c:706 backup/basebackup.c:715 backup/basebackup.c:726
-#: backup/basebackup.c:743 backup/basebackup.c:752 backup/basebackup.c:763
-#: backup/basebackup.c:780 backup/basebackup.c:789 backup/basebackup.c:801
-#: backup/basebackup.c:825 backup/basebackup.c:839 backup/basebackup.c:850
-#: backup/basebackup.c:861 backup/basebackup.c:874
+#: backup/basebackup.c:722 backup/basebackup.c:731 backup/basebackup.c:742
+#: backup/basebackup.c:759 backup/basebackup.c:768 backup/basebackup.c:779
+#: backup/basebackup.c:796 backup/basebackup.c:805 backup/basebackup.c:817
+#: backup/basebackup.c:841 backup/basebackup.c:855 backup/basebackup.c:866
+#: backup/basebackup.c:877 backup/basebackup.c:890
 #, c-format
 msgid "duplicate option \"%s\""
 msgstr "nombre de opción «%s» duplicada"
 
-#: backup/basebackup.c:734
+#: backup/basebackup.c:750
 #, fuzzy, c-format
 #| msgid "unrecognized object type \"%s\""
 msgid "unrecognized checkpoint type: \"%s\""
 msgstr "tipo de objeto «%s» no reconocido"
 
-#: backup/basebackup.c:769
+#: backup/basebackup.c:785
 #, 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)"
 
-#: backup/basebackup.c:814
+#: backup/basebackup.c:830
 #, c-format
 msgid "unrecognized manifest option: \"%s\""
 msgstr "opción de manifiesto «%s» no reconocida"
 
-#: backup/basebackup.c:830
+#: backup/basebackup.c:846
 #, c-format
 msgid "unrecognized checksum algorithm: \"%s\""
 msgstr "algoritmo de suma de comprobación no reconocido: \"%s\""
 
-#: backup/basebackup.c:865
-#, fuzzy, c-format
-#| msgid "unrecognized compression algorithm \"%s\""
+#: backup/basebackup.c:881
+#, c-format
 msgid "unrecognized compression algorithm: \"%s\""
-msgstr "algoritmo de compresión no reconocido: \"%s\""
+msgstr "algoritmo de compresión no reconocido: «%s»"
 
-#: backup/basebackup.c:881
+#: backup/basebackup.c:897
 #, fuzzy, c-format
 #| msgid "unrecognized column option \"%s\""
 msgid "unrecognized base backup option: \"%s\""
 msgstr "opción de columna «%s» no reconocida"
 
-#: backup/basebackup.c:892
+#: backup/basebackup.c:908
 #, c-format
 msgid "manifest checksums require a backup manifest"
 msgstr "la suma de comprobación del manifiesto requiere un manifiesto de la copia de seguridad"
 
-#: backup/basebackup.c:901
+#: backup/basebackup.c:917
 #, fuzzy, c-format
 #| msgid "--no-slot cannot be used with slot name"
 msgid "target detail cannot be used without target"
 msgstr "no se puede usar --no-slot junto con nombre de slot"
 
-#: backup/basebackup.c:910 backup/basebackup_target.c:218
+#: backup/basebackup.c:926 backup/basebackup_target.c:218
 #, fuzzy, c-format
-#| msgid "target '%s' does not accept a target detail"
+#| msgid "operator class \"%s\" does not accept data type %s"
 msgid "target \"%s\" does not accept a target detail"
-msgstr "el destino «%s» no acepta un detalle de destino"
+msgstr "la clase de operadores «%s» no acepta el tipo de datos %s"
 
-#: backup/basebackup.c:921
+#: backup/basebackup.c:937
 #, fuzzy, c-format
-#| msgid "-c %s requires a value"
+#| msgid "%s cannot be specified unless locale provider \"%s\" is chosen"
 msgid "compression detail cannot be specified unless compression is enabled"
-msgstr "-c %s requiere un valor"
+msgstr "%s no puede especificarse a menos que el proveedor de locale «%s» sea escogido"
 
-#: backup/basebackup.c:934
+#: backup/basebackup.c:950
 #, c-format
 msgid "invalid compression specification: %s"
 msgstr "especificación de compresión no válida: %s"
 
+#: backup/basebackup.c:1116 backup/basebackup.c:1294
+#, c-format
+msgid "could not stat file or directory \"%s\": %m"
+msgstr "no se pudo hacer stat al archivo o directorio «%s»: %m"
+
 #: backup/basebackup.c:1430
 #, c-format
 msgid "skipping special file \"%s\""
 msgstr "omitiendo el archivo especial «%s»"
 
-#: backup/basebackup.c:1549
+#: backup/basebackup.c:1542
 #, c-format
 msgid "invalid segment number %d in file \"%s\""
 msgstr "número de segmento %d no válido en archivo «%s»"
 
-#: backup/basebackup.c:1589
+#: backup/basebackup.c:1574
 #, c-format
 msgid "could not verify checksum in file \"%s\", block %u: read buffer size %d and page size %d differ"
 msgstr "no se pudo verificar el checksum en el archivo «%s», bloque %u: el tamaño de búfer de lectura %d y el tamaño de página %d difieren"
 
-#: backup/basebackup.c:1663
+#: backup/basebackup.c:1658
 #, c-format
 msgid "checksum verification failed in file \"%s\", block %u: calculated %X but expected %X"
 msgstr "verificación de checksums falló en archivo «%s», bloque %u: calculado %X pero se esperaba %X"
 
-#: backup/basebackup.c:1670
+#: backup/basebackup.c:1665
 #, 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"
 
-#: backup/basebackup.c:1717
+#: backup/basebackup.c:1721
 #, c-format
 msgid "file \"%s\" has a total of %d checksum verification failure"
 msgid_plural "file \"%s\" has a total of %d checksum verification failures"
 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"
 
-#: backup/basebackup.c:1763
+#: backup/basebackup.c:1767
 #, c-format
 msgid "file name too long for tar format: \"%s\""
 msgstr "nombre de archivo demasiado largo para el formato tar: «%s»"
 
-#: backup/basebackup.c:1768
+#: backup/basebackup.c:1772
 #, 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»"
@@ -3627,42 +3730,48 @@ msgstr "Bonjour no está soportado en este servidor"
 
 #: backup/basebackup_server.c:75
 #, fuzzy, c-format
-#| msgid "must be superuser or a member of the pg_write_server_files role to COPY to a file"
-msgid "must be superuser or a role with privileges of the pg_write_server_files role to create backup stored on server"
-msgstr "debe ser superusuario o miembro del rol pg_write_server_files para hacer COPY a un archivo"
+#| msgid "permission denied to create role"
+msgid "permission denied to create backup stored on server"
+msgstr "se ha denegado el permiso para crear el rol"
+
+#: backup/basebackup_server.c:76
+#, c-format
+msgid "Only roles with privileges of the \"%s\" role may create a backup stored on the server."
+msgstr ""
 
-#: backup/basebackup_server.c:89
+#: backup/basebackup_server.c:91
 #, fuzzy, c-format
 #| msgid "relative path not allowed for COPY to file"
 msgid "relative path not allowed for backup stored on server"
 msgstr "no se permiten rutas relativas para COPY hacia un archivo"
 
-#: backup/basebackup_server.c:102 commands/dbcommands.c:500
+#: backup/basebackup_server.c:104 commands/dbcommands.c:501
 #: commands/tablespace.c:163 commands/tablespace.c:179
-#: commands/tablespace.c:614 commands/tablespace.c:659 replication/slot.c:1523
+#: commands/tablespace.c:599 commands/tablespace.c:644 replication/slot.c:1697
 #: storage/file/copydir.c:47
 #, c-format
 msgid "could not create directory \"%s\": %m"
 msgstr "no se pudo crear el directorio «%s»: %m"
 
-#: backup/basebackup_server.c:115
+#: backup/basebackup_server.c:117
 #, c-format
 msgid "directory \"%s\" exists but is not empty"
 msgstr "el directorio «%s» existe pero no está vacío"
 
-#: backup/basebackup_server.c:123 utils/init/postinit.c:1072
+#: backup/basebackup_server.c:125 utils/init/postinit.c:1154
 #, c-format
 msgid "could not access directory \"%s\": %m"
 msgstr "no se pudo acceder al directorio «%s»: %m"
 
-#: backup/basebackup_server.c:175 backup/basebackup_server.c:182
-#: backup/basebackup_server.c:268 backup/basebackup_server.c:275
-#: storage/smgr/md.c:473 storage/smgr/md.c:480 storage/smgr/md.c:771
+#: backup/basebackup_server.c:177 backup/basebackup_server.c:184
+#: backup/basebackup_server.c:270 backup/basebackup_server.c:277
+#: storage/smgr/md.c:501 storage/smgr/md.c:508 storage/smgr/md.c:590
+#: storage/smgr/md.c:612 storage/smgr/md.c:919
 #, c-format
 msgid "Check free disk space."
 msgstr "Verifique el espacio libre en disco."
 
-#: backup/basebackup_server.c:179 backup/basebackup_server.c:272
+#: backup/basebackup_server.c:181 backup/basebackup_server.c:274
 #, fuzzy, c-format
 #| msgid "could not extend file \"%s\": wrote only %d of %d bytes at block %u"
 msgid "could not write file \"%s\": wrote only %d of %d bytes at offset %u"
@@ -3676,9 +3785,9 @@ msgstr "destino de reset no reconocido: «%s»"
 
 #: backup/basebackup_target.c:237
 #, fuzzy, c-format
-#| msgid "%s requires a parameter"
+#| msgid "parameter \"%s\" requires a Boolean value"
 msgid "target \"%s\" requires a target detail"
-msgstr "%s requiere un parámetro"
+msgstr "el parámetro «%s» requiere un valor lógico (booleano)"
 
 #: backup/basebackup_zstd.c:66
 #, fuzzy, c-format
@@ -3691,782 +3800,717 @@ msgstr "Bonjour no está soportado en este servidor"
 msgid "could not set compression worker count to %d: %s"
 msgstr "no se pudo definir la cantidad de procesos ayudantes de compresión a %d: %s"
 
-#: bootstrap/bootstrap.c:263
-#, 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"
+#: backup/basebackup_zstd.c:129
+#, fuzzy, c-format
+#| msgid "could not set compression level %d: %s"
+msgid "could not set compression flag for %s: %s"
+msgstr "no se pudo definir el nivel de compresión %d: %s"
 
-#: bootstrap/bootstrap.c:280 postmaster/postmaster.c:846 tcop/postgres.c:3894
+#: bootstrap/bootstrap.c:243 postmaster/postmaster.c:721 tcop/postgres.c:3819
 #, c-format
 msgid "--%s requires a value"
 msgstr "--%s requiere un valor"
 
-#: bootstrap/bootstrap.c:285 postmaster/postmaster.c:851 tcop/postgres.c:3899
+#: bootstrap/bootstrap.c:248 postmaster/postmaster.c:726 tcop/postgres.c:3824
 #, c-format
 msgid "-c %s requires a value"
 msgstr "-c %s requiere un valor"
 
-#: bootstrap/bootstrap.c:296 postmaster/postmaster.c:863
-#: postmaster/postmaster.c:876
+#: bootstrap/bootstrap.c:289
+#, c-format
+msgid "-X requires a power of two value between 1 MB and 1 GB"
+msgstr "-X require un valor potencia de dos entre 1 MB y 1 GB"
+
+#: bootstrap/bootstrap.c:295 postmaster/postmaster.c:844
+#: postmaster/postmaster.c:857
 #, c-format
 msgid "Try \"%s --help\" for more information.\n"
 msgstr "Pruebe «%s --help» para mayor información.\n"
 
-#: bootstrap/bootstrap.c:305
+#: bootstrap/bootstrap.c:304
 #, c-format
 msgid "%s: invalid command-line arguments\n"
 msgstr "%s: argumentos de línea de órdenes no válidos\n"
 
-#: catalog/aclchk.c:185
+#: catalog/aclchk.c:201
 #, 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:307
+#: catalog/aclchk.c:323
 #, 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:312
+#: catalog/aclchk.c:328
 #, c-format
 msgid "no privileges were granted for \"%s\""
 msgstr "no se otorgaron privilegios para «%s»"
 
-#: catalog/aclchk.c:320
+#: catalog/aclchk.c:336
 #, 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:325
+#: catalog/aclchk.c:341
 #, c-format
 msgid "not all privileges were granted for \"%s\""
 msgstr "no todos los privilegios fueron otorgados para «%s»"
 
-#: catalog/aclchk.c:336
+#: catalog/aclchk.c:352
 #, 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:341
+#: catalog/aclchk.c:357
 #, c-format
 msgid "no privileges could be revoked for \"%s\""
 msgstr "ningún privilegio pudo ser revocado para «%s»"
 
-#: catalog/aclchk.c:349
+#: catalog/aclchk.c:365
 #, c-format
 msgid "not all privileges could be revoked for column \"%s\" of relation \"%s\""
 msgstr "no todos los privilegios pudieron ser revocados para la columna «%s» de la relación «%s»"
 
-#: catalog/aclchk.c:354
+#: catalog/aclchk.c:370
 #, c-format
 msgid "not all privileges could be revoked for \"%s\""
 msgstr "no todos los privilegios pudieron ser revocados para «%s»"
 
-#: catalog/aclchk.c:386
+#: catalog/aclchk.c:402
 #, c-format
 msgid "grantor must be current user"
 msgstr "el cedente (grantor) debe ser el usuario actual"
 
-#: catalog/aclchk.c:454 catalog/aclchk.c:1029
+#: catalog/aclchk.c:470 catalog/aclchk.c:1045
 #, c-format
 msgid "invalid privilege type %s for relation"
 msgstr "el tipo de privilegio %s no es válido para una relación"
 
-#: catalog/aclchk.c:458 catalog/aclchk.c:1033
+#: catalog/aclchk.c:474 catalog/aclchk.c:1049
 #, c-format
 msgid "invalid privilege type %s for sequence"
 msgstr "el tipo de privilegio %s no es válido para una secuencia"
 
-#: catalog/aclchk.c:462
+#: catalog/aclchk.c:478
 #, 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:466
+#: catalog/aclchk.c:482
 #, 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:470 catalog/aclchk.c:1037
+#: catalog/aclchk.c:486 catalog/aclchk.c:1053
 #, 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:474
+#: catalog/aclchk.c:490
 #, 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:478
+#: catalog/aclchk.c:494
 #, 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:482 catalog/aclchk.c:1053
+#: catalog/aclchk.c:498 catalog/aclchk.c:1069
 #, 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:486 catalog/aclchk.c:1041
+#: catalog/aclchk.c:502 catalog/aclchk.c:1057
 #, 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:490 catalog/aclchk.c:1045
+#: catalog/aclchk.c:506 catalog/aclchk.c:1061
 #, 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:494
+#: catalog/aclchk.c:510
 #, 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:498 catalog/aclchk.c:1049
+#: catalog/aclchk.c:514 catalog/aclchk.c:1065
 #, 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:502
+#: catalog/aclchk.c:518
 #, 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:506
+#: catalog/aclchk.c:522
 #, 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:510
+#: catalog/aclchk.c:526
 #, c-format
 msgid "invalid privilege type %s for parameter"
 msgstr "el tipo de privilegio %s no es válido para un parámetro"
 
-#: catalog/aclchk.c:549
+#: catalog/aclchk.c:565
 #, 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:712 catalog/aclchk.c:4486 catalog/aclchk.c:5333
-#: catalog/objectaddress.c:1072 catalog/pg_largeobject.c:116
-#: storage/large_object/inv_api.c:287
+#: catalog/aclchk.c:728 catalog/aclchk.c:3570 catalog/objectaddress.c:1092
+#: catalog/pg_largeobject.c:116 storage/large_object/inv_api.c:287
 #, c-format
 msgid "large object %u does not exist"
 msgstr "no existe el objeto grande %u"
 
-#: catalog/aclchk.c:1086
+#: catalog/aclchk.c:1102
 #, c-format
 msgid "default privileges cannot be set for columns"
 msgstr "los privilegios por omisión no pueden definirse para columnas"
 
-#: catalog/aclchk.c:1246
+#: catalog/aclchk.c:1138
+#, fuzzy, c-format
+#| msgid "permission denied to create role"
+msgid "permission denied to change default privileges"
+msgstr "se ha denegado el permiso para crear el rol"
+
+#: catalog/aclchk.c:1256
 #, 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:1587 catalog/catalog.c:627 catalog/objectaddress.c:1543
-#: catalog/pg_publication.c:510 commands/analyze.c:391 commands/copy.c:776
-#: commands/sequence.c:1663 commands/tablecmds.c:7231 commands/tablecmds.c:7387
-#: commands/tablecmds.c:7437 commands/tablecmds.c:7511
-#: commands/tablecmds.c:7581 commands/tablecmds.c:7693
-#: commands/tablecmds.c:7787 commands/tablecmds.c:7846
-#: commands/tablecmds.c:7935 commands/tablecmds.c:7965
-#: commands/tablecmds.c:8093 commands/tablecmds.c:8175
-#: commands/tablecmds.c:8331 commands/tablecmds.c:8449
-#: commands/tablecmds.c:12135 commands/tablecmds.c:12316
-#: commands/tablecmds.c:12476 commands/tablecmds.c:13640
-#: commands/tablecmds.c:16228 commands/trigger.c:958 parser/analyze.c:2468
-#: parser/parse_relation.c:725 parser/parse_target.c:1063
-#: parser/parse_type.c:144 parser/parse_utilcmd.c:3434
-#: parser/parse_utilcmd.c:3470 parser/parse_utilcmd.c:3512 utils/adt/acl.c:2869
-#: utils/adt/ruleutils.c:2810
+#: catalog/aclchk.c:1595 catalog/catalog.c:631 catalog/objectaddress.c:1561
+#: catalog/pg_publication.c:533 commands/analyze.c:389 commands/copy.c:837
+#: commands/sequence.c:1663 commands/tablecmds.c:7339 commands/tablecmds.c:7495
+#: commands/tablecmds.c:7545 commands/tablecmds.c:7619
+#: commands/tablecmds.c:7689 commands/tablecmds.c:7801
+#: commands/tablecmds.c:7895 commands/tablecmds.c:7954
+#: commands/tablecmds.c:8043 commands/tablecmds.c:8073
+#: commands/tablecmds.c:8201 commands/tablecmds.c:8283
+#: commands/tablecmds.c:8417 commands/tablecmds.c:8525
+#: commands/tablecmds.c:12240 commands/tablecmds.c:12421
+#: commands/tablecmds.c:12582 commands/tablecmds.c:13744
+#: commands/tablecmds.c:16273 commands/trigger.c:949 parser/analyze.c:2480
+#: parser/parse_relation.c:737 parser/parse_target.c:1054
+#: parser/parse_type.c:144 parser/parse_utilcmd.c:3413
+#: parser/parse_utilcmd.c:3449 parser/parse_utilcmd.c:3491 utils/adt/acl.c:2884
+#: utils/adt/ruleutils.c:2783
 #, 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:1850 catalog/objectaddress.c:1383 commands/sequence.c:1172
-#: commands/tablecmds.c:253 commands/tablecmds.c:17092 utils/adt/acl.c:2077
-#: utils/adt/acl.c:2107 utils/adt/acl.c:2139 utils/adt/acl.c:2171
-#: utils/adt/acl.c:2199 utils/adt/acl.c:2229
+#: catalog/aclchk.c:1840
+#, c-format
+msgid "\"%s\" is an index"
+msgstr "«%s» es un índice"
+
+#: catalog/aclchk.c:1847 commands/tablecmds.c:13901 commands/tablecmds.c:17200
+#, c-format
+msgid "\"%s\" is a composite type"
+msgstr "«%s» es un tipo compuesto"
+
+#: catalog/aclchk.c:1855 catalog/objectaddress.c:1401 commands/sequence.c:1171
+#: commands/tablecmds.c:254 commands/tablecmds.c:17164 utils/adt/acl.c:2092
+#: utils/adt/acl.c:2122 utils/adt/acl.c:2154 utils/adt/acl.c:2186
+#: utils/adt/acl.c:2214 utils/adt/acl.c:2244
 #, c-format
 msgid "\"%s\" is not a sequence"
 msgstr "«%s» no es una secuencia"
 
-#: catalog/aclchk.c:1888
+#: catalog/aclchk.c:1893
 #, 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:1905
+#: catalog/aclchk.c:1910
 #, 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:2071
+#: catalog/aclchk.c:2072
 #, 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:2084
+#: catalog/aclchk.c:2085
 #, c-format
 msgid "sequence \"%s\" only supports SELECT column privileges"
 msgstr "la secuencia «%s» sólo soporta el privilegio SELECT"
 
-#: catalog/aclchk.c:2666
+#: catalog/aclchk.c:2275
 #, c-format
 msgid "language \"%s\" is not trusted"
 msgstr "el lenguaje «%s» no es confiable (trusted)"
 
-#: catalog/aclchk.c:2668
+#: catalog/aclchk.c:2277
 #, 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:3182
+#: catalog/aclchk.c:2427
 #, c-format
 msgid "cannot set privileges of array types"
 msgstr "no se puede definir privilegios para tipos de array"
 
-#: catalog/aclchk.c:3183
+#: catalog/aclchk.c:2428
 #, c-format
 msgid "Set the privileges of the element type instead."
 msgstr "Defina los privilegios del tipo elemento en su lugar."
 
-#: catalog/aclchk.c:3190 catalog/objectaddress.c:1649
+#: catalog/aclchk.c:2435 catalog/objectaddress.c:1667
 #, c-format
 msgid "\"%s\" is not a domain"
 msgstr "«%s» no es un dominio"
 
-#: catalog/aclchk.c:3462
+#: catalog/aclchk.c:2621
 #, c-format
 msgid "unrecognized privilege type \"%s\""
 msgstr "tipo de privilegio «%s» no reconocido"
 
-#: catalog/aclchk.c:3527
+#: catalog/aclchk.c:2688
 #, c-format
 msgid "permission denied for aggregate %s"
 msgstr "permiso denegado a la función de agregación %s"
 
-#: catalog/aclchk.c:3530
+#: catalog/aclchk.c:2691
 #, c-format
 msgid "permission denied for collation %s"
 msgstr "permiso denegado al ordenamiento (collation) %s"
 
-#: catalog/aclchk.c:3533
+#: catalog/aclchk.c:2694
 #, c-format
 msgid "permission denied for column %s"
 msgstr "permiso denegado a la columna %s"
 
-#: catalog/aclchk.c:3536
+#: catalog/aclchk.c:2697
 #, c-format
 msgid "permission denied for conversion %s"
 msgstr "permiso denegado a la conversión %s"
 
-#: catalog/aclchk.c:3539
+#: catalog/aclchk.c:2700
 #, c-format
 msgid "permission denied for database %s"
 msgstr "permiso denegado a la base de datos %s"
 
-#: catalog/aclchk.c:3542
+#: catalog/aclchk.c:2703
 #, c-format
 msgid "permission denied for domain %s"
 msgstr "permiso denegado al dominio %s"
 
-#: catalog/aclchk.c:3545
+#: catalog/aclchk.c:2706
 #, c-format
 msgid "permission denied for event trigger %s"
 msgstr "permiso denegado al disparador por eventos %s"
 
-#: catalog/aclchk.c:3548
+#: catalog/aclchk.c:2709
 #, c-format
 msgid "permission denied for extension %s"
 msgstr "permiso denegado a la extensión %s"
 
-#: catalog/aclchk.c:3551
+#: catalog/aclchk.c:2712
 #, c-format
 msgid "permission denied for foreign-data wrapper %s"
 msgstr "permiso denegado al conector de datos externos %s"
 
-#: catalog/aclchk.c:3554
+#: catalog/aclchk.c:2715
 #, c-format
 msgid "permission denied for foreign server %s"
 msgstr "permiso denegado al servidor foráneo %s"
 
-#: catalog/aclchk.c:3557
+#: catalog/aclchk.c:2718
 #, c-format
 msgid "permission denied for foreign table %s"
 msgstr "permiso denegado a la tabla foránea %s"
 
-#: catalog/aclchk.c:3560
+#: catalog/aclchk.c:2721
 #, c-format
 msgid "permission denied for function %s"
 msgstr "permiso denegado a la función %s"
 
-#: catalog/aclchk.c:3563
+#: catalog/aclchk.c:2724
 #, c-format
 msgid "permission denied for index %s"
 msgstr "permiso denegado al índice %s"
 
-#: catalog/aclchk.c:3566
+#: catalog/aclchk.c:2727
 #, c-format
 msgid "permission denied for language %s"
 msgstr "permiso denegado al lenguaje %s"
 
-#: catalog/aclchk.c:3569
+#: catalog/aclchk.c:2730
 #, c-format
 msgid "permission denied for large object %s"
 msgstr "permiso denegado al objeto grande %s"
 
-#: catalog/aclchk.c:3572
+#: catalog/aclchk.c:2733
 #, c-format
 msgid "permission denied for materialized view %s"
 msgstr "permiso denegado a la vista materializada %s"
 
-#: catalog/aclchk.c:3575
+#: catalog/aclchk.c:2736
 #, c-format
 msgid "permission denied for operator class %s"
 msgstr "permiso denegado a la clase de operadores %s"
 
-#: catalog/aclchk.c:3578
+#: catalog/aclchk.c:2739
 #, c-format
 msgid "permission denied for operator %s"
 msgstr "permiso denegado al operador %s"
 
-#: catalog/aclchk.c:3581
+#: catalog/aclchk.c:2742
 #, c-format
 msgid "permission denied for operator family %s"
 msgstr "permiso denegado a la familia de operadores %s"
 
-#: catalog/aclchk.c:3584
+#: catalog/aclchk.c:2745
 #, c-format
 msgid "permission denied for parameter %s"
 msgstr "permiso denegado al parámetro %s"
 
-#: catalog/aclchk.c:3587
+#: catalog/aclchk.c:2748
 #, c-format
 msgid "permission denied for policy %s"
 msgstr "permiso denegado a la política %s"
 
-#: catalog/aclchk.c:3590
+#: catalog/aclchk.c:2751
 #, c-format
 msgid "permission denied for procedure %s"
 msgstr "permiso denegado al procedimiento %s"
 
-#: catalog/aclchk.c:3593
+#: catalog/aclchk.c:2754
 #, c-format
 msgid "permission denied for publication %s"
 msgstr "permiso denegado a la publicación %s"
 
-#: catalog/aclchk.c:3596
+#: catalog/aclchk.c:2757
 #, c-format
 msgid "permission denied for routine %s"
 msgstr "permiso denegado a la rutina %s"
 
-#: catalog/aclchk.c:3599
+#: catalog/aclchk.c:2760
 #, c-format
 msgid "permission denied for schema %s"
 msgstr "permiso denegado al esquema %s"
 
-#: catalog/aclchk.c:3602 commands/sequence.c:660 commands/sequence.c:886
-#: commands/sequence.c:928 commands/sequence.c:969 commands/sequence.c:1761
-#: commands/sequence.c:1825
+#: catalog/aclchk.c:2763 commands/sequence.c:659 commands/sequence.c:885
+#: commands/sequence.c:927 commands/sequence.c:968 commands/sequence.c:1761
+#: commands/sequence.c:1810
 #, c-format
 msgid "permission denied for sequence %s"
 msgstr "permiso denegado a la secuencia %s"
 
-#: catalog/aclchk.c:3605
+#: catalog/aclchk.c:2766
 #, c-format
 msgid "permission denied for statistics object %s"
 msgstr "permiso denegado al objeto de estadísticas %s"
 
-#: catalog/aclchk.c:3608
+#: catalog/aclchk.c:2769
 #, c-format
 msgid "permission denied for subscription %s"
 msgstr "permiso denegado a la suscripción %s"
 
-#: catalog/aclchk.c:3611
+#: catalog/aclchk.c:2772
 #, c-format
 msgid "permission denied for table %s"
 msgstr "permiso denegado a la tabla %s"
 
-#: catalog/aclchk.c:3614
+#: catalog/aclchk.c:2775
 #, c-format
 msgid "permission denied for tablespace %s"
 msgstr "permiso denegado al tablespace %s"
 
-#: catalog/aclchk.c:3617
+#: catalog/aclchk.c:2778
 #, 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:3620
+#: catalog/aclchk.c:2781
 #, 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:3623
+#: catalog/aclchk.c:2784
 #, c-format
 msgid "permission denied for type %s"
 msgstr "permiso denegado al tipo %s"
 
-#: catalog/aclchk.c:3626
+#: catalog/aclchk.c:2787
 #, c-format
 msgid "permission denied for view %s"
 msgstr "permiso denegado a la vista %s"
 
-#: catalog/aclchk.c:3662
+#: catalog/aclchk.c:2823
 #, 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:3665
+#: catalog/aclchk.c:2826
 #, c-format
 msgid "must be owner of collation %s"
 msgstr "debe ser dueño del ordenamiento (collation) %s"
 
-#: catalog/aclchk.c:3668
+#: catalog/aclchk.c:2829
 #, c-format
 msgid "must be owner of conversion %s"
 msgstr "debe ser dueño de la conversión %s"
 
-#: catalog/aclchk.c:3671
+#: catalog/aclchk.c:2832
 #, c-format
 msgid "must be owner of database %s"
 msgstr "debe ser dueño de la base de datos %s"
 
-#: catalog/aclchk.c:3674
+#: catalog/aclchk.c:2835
 #, c-format
 msgid "must be owner of domain %s"
 msgstr "debe ser dueño del dominio %s"
 
-#: catalog/aclchk.c:3677
+#: catalog/aclchk.c:2838
 #, c-format
 msgid "must be owner of event trigger %s"
 msgstr "debe ser dueño del disparador por eventos %s"
 
-#: catalog/aclchk.c:3680
+#: catalog/aclchk.c:2841
 #, c-format
 msgid "must be owner of extension %s"
 msgstr "debe ser dueño de la extensión %s"
 
-#: catalog/aclchk.c:3683
+#: catalog/aclchk.c:2844
 #, 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:3686
+#: catalog/aclchk.c:2847
 #, c-format
 msgid "must be owner of foreign server %s"
 msgstr "debe ser dueño del servidor foráneo %s"
 
-#: catalog/aclchk.c:3689
+#: catalog/aclchk.c:2850
 #, c-format
 msgid "must be owner of foreign table %s"
 msgstr "debe ser dueño de la tabla foránea %s"
 
-#: catalog/aclchk.c:3692
+#: catalog/aclchk.c:2853
 #, c-format
 msgid "must be owner of function %s"
 msgstr "debe ser dueño de la función %s"
 
-#: catalog/aclchk.c:3695
+#: catalog/aclchk.c:2856
 #, c-format
 msgid "must be owner of index %s"
 msgstr "debe ser dueño del índice %s"
 
-#: catalog/aclchk.c:3698
+#: catalog/aclchk.c:2859
 #, c-format
 msgid "must be owner of language %s"
 msgstr "debe ser dueño del lenguaje %s"
 
-#: catalog/aclchk.c:3701
+#: catalog/aclchk.c:2862
 #, c-format
 msgid "must be owner of large object %s"
 msgstr "debe ser dueño del objeto grande %s"
 
-#: catalog/aclchk.c:3704
+#: catalog/aclchk.c:2865
 #, c-format
 msgid "must be owner of materialized view %s"
 msgstr "debe ser dueño de la vista materializada %s"
 
-#: catalog/aclchk.c:3707
+#: catalog/aclchk.c:2868
 #, c-format
 msgid "must be owner of operator class %s"
 msgstr "debe ser dueño de la clase de operadores %s"
 
-#: catalog/aclchk.c:3710
+#: catalog/aclchk.c:2871
 #, c-format
 msgid "must be owner of operator %s"
 msgstr "debe ser dueño del operador %s"
 
-#: catalog/aclchk.c:3713
+#: catalog/aclchk.c:2874
 #, c-format
 msgid "must be owner of operator family %s"
 msgstr "debe ser dueño de la familia de operadores %s"
 
-#: catalog/aclchk.c:3716
+#: catalog/aclchk.c:2877
 #, c-format
 msgid "must be owner of procedure %s"
 msgstr "debe ser dueño del procedimiento %s"
 
-#: catalog/aclchk.c:3719
+#: catalog/aclchk.c:2880
 #, c-format
 msgid "must be owner of publication %s"
 msgstr "debe ser dueño de la publicación %s"
 
-#: catalog/aclchk.c:3722
+#: catalog/aclchk.c:2883
 #, c-format
 msgid "must be owner of routine %s"
 msgstr "debe ser dueño de la rutina %s"
 
-#: catalog/aclchk.c:3725
+#: catalog/aclchk.c:2886
 #, c-format
 msgid "must be owner of sequence %s"
 msgstr "debe ser dueño de la secuencia %s"
 
-#: catalog/aclchk.c:3728
+#: catalog/aclchk.c:2889
 #, c-format
 msgid "must be owner of subscription %s"
 msgstr "debe ser dueño de la suscripción %s"
 
-#: catalog/aclchk.c:3731
+#: catalog/aclchk.c:2892
 #, c-format
 msgid "must be owner of table %s"
 msgstr "debe ser dueño de la tabla %s"
 
-#: catalog/aclchk.c:3734
+#: catalog/aclchk.c:2895
 #, c-format
 msgid "must be owner of type %s"
 msgstr "debe ser dueño del tipo %s"
 
-#: catalog/aclchk.c:3737
+#: catalog/aclchk.c:2898
 #, c-format
 msgid "must be owner of view %s"
 msgstr "debe ser dueño de la vista %s"
 
-#: catalog/aclchk.c:3740
+#: catalog/aclchk.c:2901
 #, c-format
 msgid "must be owner of schema %s"
 msgstr "debe ser dueño del esquema %s"
 
-#: catalog/aclchk.c:3743
+#: catalog/aclchk.c:2904
 #, c-format
 msgid "must be owner of statistics object %s"
 msgstr "debe ser dueño del objeto de estadísticas %s"
 
-#: catalog/aclchk.c:3746
+#: catalog/aclchk.c:2907
 #, c-format
 msgid "must be owner of tablespace %s"
 msgstr "debe ser dueño del tablespace %s"
 
-#: catalog/aclchk.c:3749
+#: catalog/aclchk.c:2910
 #, 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:3752
+#: catalog/aclchk.c:2913
 #, 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:3766
+#: catalog/aclchk.c:2927
 #, c-format
 msgid "must be owner of relation %s"
 msgstr "debe ser dueño de la relación %s"
 
-#: catalog/aclchk.c:3812
+#: catalog/aclchk.c:2973
 #, 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:3957 catalog/aclchk.c:3976
+#: catalog/aclchk.c:3108 catalog/aclchk.c:3994 catalog/aclchk.c:4026
+#, fuzzy, c-format
+#| msgid "schema with OID %u does not exist"
+msgid "%s with OID %u does not exist"
+msgstr "no existe el esquema con OID %u"
+
+#: catalog/aclchk.c:3192 catalog/aclchk.c:3211
 #, 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:4071 catalog/aclchk.c:5184
+#: catalog/aclchk.c:3306
 #, c-format
 msgid "relation with OID %u does not exist"
 msgstr "no existe la relación con OID %u"
 
-#: catalog/aclchk.c:4184 catalog/aclchk.c:5602 commands/dbcommands.c:2581
-#, c-format
-msgid "database with OID %u does not exist"
-msgstr "no existe la base de datos con OID %u"
-
-#: catalog/aclchk.c:4299
+#: catalog/aclchk.c:3491
 #, c-format
 msgid "parameter ACL with OID %u does not exist"
 msgstr "no existe el ACL de parámetro con OID %u"
 
-#: catalog/aclchk.c:4353 catalog/aclchk.c:5262 tcop/fastpath.c:141
-#: utils/fmgr/fmgr.c:2037
-#, c-format
-msgid "function with OID %u does not exist"
-msgstr "no existe la función con OID %u"
-
-#: catalog/aclchk.c:4407 catalog/aclchk.c:5288
-#, c-format
-msgid "language with OID %u does not exist"
-msgstr "no existe el lenguaje con OID %u"
-
-#: catalog/aclchk.c:4571 catalog/aclchk.c:5360 commands/collationcmds.c:595
-#: commands/publicationcmds.c:1748
+#: catalog/aclchk.c:3655 commands/collationcmds.c:808
+#: commands/publicationcmds.c:1746
 #, c-format
 msgid "schema with OID %u does not exist"
 msgstr "no existe el esquema con OID %u"
 
-#: catalog/aclchk.c:4635 catalog/aclchk.c:5387 utils/adt/genfile.c:632
-#, c-format
-msgid "tablespace with OID %u does not exist"
-msgstr "no existe el tablespace con OID %u"
-
-#: catalog/aclchk.c:4694 catalog/aclchk.c:5521 commands/foreigncmds.c:325
-#, c-format
-msgid "foreign-data wrapper with OID %u does not exist"
-msgstr "no existe el conector de datos externos con OID %u"
-
-#: catalog/aclchk.c:4756 catalog/aclchk.c:5548 commands/foreigncmds.c:462
-#, c-format
-msgid "foreign server with OID %u does not exist"
-msgstr "no existe el servidor foráneo con OID %u"
-
-#: catalog/aclchk.c:4816 catalog/aclchk.c:5210 utils/cache/typcache.c:385
-#: utils/cache/typcache.c:440
+#: catalog/aclchk.c:3720 utils/cache/typcache.c:385 utils/cache/typcache.c:440
 #, c-format
 msgid "type with OID %u does not exist"
 msgstr "no existe el tipo con OID %u"
 
-#: catalog/aclchk.c:5236
-#, c-format
-msgid "operator with OID %u does not exist"
-msgstr "no existe el operador con OID %u"
-
-#: catalog/aclchk.c:5413
-#, c-format
-msgid "operator class with OID %u does not exist"
-msgstr "no existe la clase de operadores con OID %u"
-
-#: catalog/aclchk.c:5440
-#, c-format
-msgid "operator family with OID %u does not exist"
-msgstr "no existe la familia de operadores con OID %u"
-
-#: catalog/aclchk.c:5467
-#, 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:5494
-#, 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:5575 commands/event_trigger.c:453
-#, c-format
-msgid "event trigger with OID %u does not exist"
-msgstr "no existe el disparador por eventos con OID %u"
-
-#: catalog/aclchk.c:5628 commands/collationcmds.c:439
-#, c-format
-msgid "collation with OID %u does not exist"
-msgstr "no existe el ordenamiento (collation) con OID %u"
-
-#: catalog/aclchk.c:5654
-#, c-format
-msgid "conversion with OID %u does not exist"
-msgstr "no existe la conversión con OID %u"
-
-#: catalog/aclchk.c:5695
-#, c-format
-msgid "extension with OID %u does not exist"
-msgstr "no existe la extensión con OID %u"
-
-#: catalog/aclchk.c:5722 commands/publicationcmds.c:2002
-#, c-format
-msgid "publication with OID %u does not exist"
-msgstr "no existe la publicación con OID %u"
-
-#: catalog/aclchk.c:5748 commands/subscriptioncmds.c:1737
-#, c-format
-msgid "subscription with OID %u does not exist"
-msgstr "no existe la suscripción con OID %u"
-
-#: catalog/aclchk.c:5774
-#, 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:447
+#: catalog/catalog.c:449
 #, c-format
 msgid "still searching for an unused OID in relation \"%s\""
 msgstr "aún se está buscando algún OID sin utilizar en la relación «%s»"
 
-#: catalog/catalog.c:449
+#: catalog/catalog.c:451
 #, c-format
 msgid "OID candidates have been checked %llu time, but no unused OID has been found yet."
 msgid_plural "OID candidates have been checked %llu times, but no unused OID has been found yet."
 msgstr[0] "se han revisado los OID candidatos %llu vez, pero aún no se ha encontrado algún OID sin utilizar."
 msgstr[1] "se han revisado los OID candidatos %llu veces, pero aún no se ha encontrado algún OID sin utilizar."
 
-#: catalog/catalog.c:474
+#: catalog/catalog.c:476
 #, c-format
 msgid "new OID has been assigned in relation \"%s\" after %llu retry"
 msgid_plural "new OID has been assigned in relation \"%s\" after %llu retries"
 msgstr[0] "se ha asignado un nuevo OID en la relación «%s» luego de %llu reintento"
 msgstr[1] "se ha asignado un nuevo OID en la relación «%s» luego de %llu reintentos"
 
-#: catalog/catalog.c:605 catalog/catalog.c:672
+#: catalog/catalog.c:609 catalog/catalog.c:676
 #, c-format
 msgid "must be superuser to call %s()"
 msgstr "debe ser superusuario para invocar %s()"
 
-#: catalog/catalog.c:614
+#: catalog/catalog.c:618
 #, 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:619 parser/parse_utilcmd.c:2279
+#: catalog/catalog.c:623 parser/parse_utilcmd.c:2264
 #, c-format
 msgid "index \"%s\" does not belong to table \"%s\""
 msgstr "el índice «%s» no pertenece a la tabla «%s»"
 
-#: catalog/catalog.c:636
+#: catalog/catalog.c:640
 #, c-format
 msgid "column \"%s\" is not of type oid"
 msgstr "la columna «%s» no es de tipo oid"
 
-#: catalog/catalog.c:643
+#: catalog/catalog.c:647
 #, 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:538 catalog/pg_shdepend.c:657
+#: catalog/dependency.c:546 catalog/pg_shdepend.c:658
 #, c-format
 msgid "cannot drop %s because it is required by the database system"
 msgstr "no se puede eliminar %s porque es requerido por el sistema"
 
-#: catalog/dependency.c:830 catalog/dependency.c:1057
+#: catalog/dependency.c:838 catalog/dependency.c:1065
 #, c-format
 msgid "cannot drop %s because %s requires it"
 msgstr "no se puede eliminar %s porque %s lo requiere"
 
-#: catalog/dependency.c:832 catalog/dependency.c:1059
+#: catalog/dependency.c:840 catalog/dependency.c:1067
 #, c-format
 msgid "You can drop %s instead."
 msgstr "Puede eliminar %s en su lugar."
 
-#: catalog/dependency.c:1138 catalog/dependency.c:1147
+#: catalog/dependency.c:1146 catalog/dependency.c:1155
 #, c-format
 msgid "%s depends on %s"
 msgstr "%s depende de %s"
 
-#: catalog/dependency.c:1162 catalog/dependency.c:1171
+#: catalog/dependency.c:1170 catalog/dependency.c:1179
 #, c-format
 msgid "drop cascades to %s"
 msgstr "eliminando además %s"
 
-#: catalog/dependency.c:1179 catalog/pg_shdepend.c:822
+#: catalog/dependency.c:1187 catalog/pg_shdepend.c:823
 #, c-format
 msgid ""
 "\n"
@@ -4481,50 +4525,48 @@ msgstr[1] ""
 "\n"
 "y otros %d objetos (vea el registro del servidor para obtener la lista)"
 
-#: catalog/dependency.c:1191
+#: catalog/dependency.c:1199
 #, 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:1193 catalog/dependency.c:1194
-#: catalog/dependency.c:1200 catalog/dependency.c:1201
-#: catalog/dependency.c:1211 catalog/dependency.c:1212
-#: commands/publicationcmds.c:593 commands/tablecmds.c:1328
-#: commands/tablecmds.c:14282 commands/tablespace.c:476 commands/user.c:1008
-#: commands/view.c:522 libpq/auth.c:329 replication/syncrep.c:1043
-#: storage/lmgr/deadlock.c:1152 storage/lmgr/proc.c:1409 utils/adt/acl.c:5333
-#: utils/adt/jsonfuncs.c:618 utils/adt/jsonfuncs.c:624 utils/misc/guc.c:7412
-#: utils/misc/guc.c:7448 utils/misc/guc.c:7518 utils/misc/guc.c:11874
-#: utils/misc/guc.c:11908 utils/misc/guc.c:11942 utils/misc/guc.c:11985
-#: utils/misc/guc.c:12027
+#: catalog/dependency.c:1202 catalog/dependency.c:1209
+#: catalog/dependency.c:1220 commands/tablecmds.c:1335
+#: commands/tablecmds.c:14386 commands/tablespace.c:466 commands/user.c:1309
+#: commands/vacuum.c:212 commands/view.c:446 libpq/auth.c:326
+#: replication/logical/applyparallelworker.c:1044 replication/syncrep.c:1017
+#: storage/lmgr/deadlock.c:1135 storage/lmgr/proc.c:1358 utils/misc/guc.c:3119
+#: utils/misc/guc.c:3155 utils/misc/guc.c:3225 utils/misc/guc.c:6739
+#: utils/misc/guc.c:6773 utils/misc/guc.c:6807 utils/misc/guc.c:6850
+#: utils/misc/guc.c:6892
 #, c-format
 msgid "%s"
 msgstr "%s"
 
-#: catalog/dependency.c:1195 catalog/dependency.c:1202
+#: catalog/dependency.c:1203 catalog/dependency.c:1210
 #, c-format
 msgid "Use DROP ... CASCADE to drop the dependent objects too."
 msgstr "Use DROP ... CASCADE para eliminar además los objetos dependientes."
 
-#: catalog/dependency.c:1199
+#: catalog/dependency.c:1207
 #, 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"
 
-#: catalog/dependency.c:1207
+#: catalog/dependency.c:1215
 #, c-format
 msgid "drop cascades to %d other object"
 msgid_plural "drop cascades to %d other objects"
 msgstr[0] "eliminando además %d objeto más"
 msgstr[1] "eliminando además %d objetos más"
 
-#: catalog/dependency.c:1889
+#: catalog/dependency.c:1899
 #, c-format
 msgid "constant of the type %s cannot be used here"
 msgstr "no se puede usar una constante de tipo %s aquí"
 
-#: catalog/dependency.c:2410 parser/parse_relation.c:3369
-#: parser/parse_relation.c:3379
+#: catalog/dependency.c:2420 parser/parse_relation.c:3403
+#: parser/parse_relation.c:3413
 #, c-format
 msgid "column %d of relation \"%s\" does not exist"
 msgstr "no existe la columna %d en la relación «%s»"
@@ -4539,13 +4581,13 @@ msgstr "se ha denegado el permiso para crear «%s.%s»"
 msgid "System catalog modifications are currently disallowed."
 msgstr "Las modificaciones al catálogo del sistema están actualmente deshabilitadas."
 
-#: catalog/heap.c:466 commands/tablecmds.c:2348 commands/tablecmds.c:2985
-#: commands/tablecmds.c:6821
+#: catalog/heap.c:466 commands/tablecmds.c:2374 commands/tablecmds.c:3047
+#: commands/tablecmds.c:6922
 #, c-format
 msgid "tables can have at most %d columns"
 msgstr "las tablas pueden tener a lo más %d columnas"
 
-#: catalog/heap.c:484 commands/tablecmds.c:7121
+#: catalog/heap.c:484 commands/tablecmds.c:7229
 #, c-format
 msgid "column name \"%s\" conflicts with a system column name"
 msgstr "el nombre de columna «%s» colisiona con nombre de una columna de sistema"
@@ -4582,16 +4624,16 @@ msgstr "no se derivó ningún ordenamiento (collate) para la columna %s de llave
 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:1148 catalog/index.c:874 commands/createas.c:408
-#: commands/tablecmds.c:3890
+#: catalog/heap.c:1148 catalog/index.c:886 commands/createas.c:408
+#: commands/tablecmds.c:3987
 #, c-format
 msgid "relation \"%s\" already exists"
 msgstr "la relación «%s» ya existe"
 
-#: catalog/heap.c:1164 catalog/pg_type.c:436 catalog/pg_type.c:784
-#: catalog/pg_type.c:931 commands/typecmds.c:249 commands/typecmds.c:261
+#: catalog/heap.c:1164 catalog/pg_type.c:434 catalog/pg_type.c:782
+#: catalog/pg_type.c:954 commands/typecmds.c:249 commands/typecmds.c:261
 #: commands/typecmds.c:754 commands/typecmds.c:1169 commands/typecmds.c:1395
-#: commands/typecmds.c:1575 commands/typecmds.c:2547
+#: commands/typecmds.c:1575 commands/typecmds.c:2546
 #, c-format
 msgid "type \"%s\" already exists"
 msgstr "ya existe un tipo «%s»"
@@ -4602,8 +4644,9 @@ msgid "A relation has an associated type of the same name, so you must use a nam
 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:1205
-#, c-format
-msgid "toast relfilenode value not set when in binary upgrade mode"
+#, fuzzy, c-format
+#| msgid "toast relfilenode value not set when in binary upgrade mode"
+msgid "toast relfilenumber value not set when in binary upgrade mode"
 msgstr "el relfilenode de toast no se definió en modo de actualización binaria"
 
 #: catalog/heap.c:1216
@@ -4612,569 +4655,591 @@ 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:1226
-#, c-format
-msgid "relfilenode value not set when in binary upgrade mode"
+#, fuzzy, c-format
+#| msgid "relfilenode value not set when in binary upgrade mode"
+msgid "relfilenumber value not set when in binary upgrade mode"
 msgstr "el valor de relfilende no se definió en modo de actualización binaria"
 
-#: catalog/heap.c:2127
+#: catalog/heap.c:2119
 #, 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:2401
+#: catalog/heap.c:2393
 #, c-format
 msgid "check constraint \"%s\" already exists"
 msgstr "la restricción «check» «%s» ya existe"
 
-#: catalog/heap.c:2571 catalog/index.c:888 catalog/pg_constraint.c:689
-#: commands/tablecmds.c:8823
+#: catalog/heap.c:2563 catalog/index.c:900 catalog/pg_constraint.c:682
+#: commands/tablecmds.c:8900
 #, 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:2578
+#: catalog/heap.c:2570
 #, 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:2589
+#: catalog/heap.c:2581
 #, 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:2599
+#: catalog/heap.c:2591
 #, 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:2604
+#: catalog/heap.c:2596
 #, c-format
 msgid "merging constraint \"%s\" with inherited definition"
 msgstr "mezclando la restricción «%s» con la definición heredada"
 
-#: catalog/heap.c:2709
+#: catalog/heap.c:2622 catalog/pg_constraint.c:811 commands/tablecmds.c:2672
+#: commands/tablecmds.c:3199 commands/tablecmds.c:6858
+#: commands/tablecmds.c:15208 commands/tablecmds.c:15349
+#, fuzzy, c-format
+#| msgid "too many command-line arguments"
+msgid "too many inheritance parents"
+msgstr "demasiados argumentos de línea de órdenes"
+
+#: catalog/heap.c:2706
 #, 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:2711
+#: catalog/heap.c:2708
 #, 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:2717
+#: catalog/heap.c:2714
 #, c-format
 msgid "cannot use whole-row variable in column generation expression"
 msgstr "no se puede usar una variable de fila completa (whole-row) en una expresión de generación de columna"
 
-#: catalog/heap.c:2718
+#: catalog/heap.c:2715
 #, c-format
 msgid "This would cause the generated column to depend on its own value."
 msgstr "Esto causaría que la columna generada dependa de su propio valor."
 
-#: catalog/heap.c:2771
+#: catalog/heap.c:2768
 #, c-format
 msgid "generation expression is not immutable"
 msgstr "la expresión de generación no es inmutable"
 
-#: catalog/heap.c:2799 rewrite/rewriteHandler.c:1268
+#: catalog/heap.c:2796 rewrite/rewriteHandler.c:1295
 #, 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:2804 commands/prepare.c:334 parser/analyze.c:2692
-#: parser/parse_target.c:594 parser/parse_target.c:882
-#: parser/parse_target.c:892 rewrite/rewriteHandler.c:1273
+#: catalog/heap.c:2801 commands/prepare.c:334 parser/analyze.c:2704
+#: parser/parse_target.c:593 parser/parse_target.c:874
+#: parser/parse_target.c:884 rewrite/rewriteHandler.c:1300
 #, 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:2851
+#: catalog/heap.c:2848
 #, 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:3149
+#: catalog/heap.c:3154
 #, 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:3150
+#: catalog/heap.c:3155
 #, 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:3155
+#: catalog/heap.c:3160
 #, 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:3156
+#: catalog/heap.c:3161
 #, c-format
 msgid "Table \"%s\" references \"%s\"."
 msgstr "La tabla «%s» hace referencia a «%s»."
 
-#: catalog/heap.c:3158
+#: catalog/heap.c:3163
 #, 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:223 parser/parse_utilcmd.c:2184
+#: catalog/index.c:224 parser/parse_utilcmd.c:2170
 #, c-format
 msgid "multiple primary keys for table \"%s\" are not allowed"
 msgstr "no se permiten múltiples llaves primarias para la tabla «%s»"
 
-#: catalog/index.c:241
+#: catalog/index.c:238
+#, fuzzy, c-format
+#| msgid "primary keys cannot be expressions"
+msgid "primary keys cannot use NULLS NOT DISTINCT indexes"
+msgstr "las llaves primarias no pueden ser expresiones"
+
+#: catalog/index.c:255
 #, c-format
 msgid "primary keys cannot be expressions"
 msgstr "las llaves primarias no pueden ser expresiones"
 
-#: catalog/index.c:258
+#: catalog/index.c:272
 #, c-format
 msgid "primary key column \"%s\" is not marked NOT NULL"
 msgstr "columna de llave primaria «%s» no está marcada NOT NULL"
 
-#: catalog/index.c:773 catalog/index.c:1932
+#: catalog/index.c:785 catalog/index.c:1941
 #, 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:813
+#: catalog/index.c:825
 #, 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:828
+#: catalog/index.c:840
 #, 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:837 catalog/index.c:1305
+#: catalog/index.c:849 catalog/index.c:1317
 #, 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:846
+#: catalog/index.c:858
 #, c-format
 msgid "shared indexes cannot be created after initdb"
 msgstr "no se pueden crear índices compartidos después de initdb"
 
-#: catalog/index.c:866 commands/createas.c:423 commands/sequence.c:158
-#: parser/parse_utilcmd.c:211
+#: catalog/index.c:878 commands/createas.c:423 commands/sequence.c:158
+#: parser/parse_utilcmd.c:209
 #, c-format
 msgid "relation \"%s\" already exists, skipping"
 msgstr "la relación «%s» ya existe, omitiendo"
 
-#: catalog/index.c:916
+#: catalog/index.c:928
 #, 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:926 utils/cache/relcache.c:3722
-#, c-format
-msgid "index relfilenode value not set when in binary upgrade mode"
+#: catalog/index.c:938 utils/cache/relcache.c:3730
+#, fuzzy, c-format
+#| msgid "index relfilenode value not set when in binary upgrade mode"
+msgid "index relfilenumber value not set when in binary upgrade mode"
 msgstr "el valor de relfilenode de índice no se definió en modo de actualización binaria"
 
-#: catalog/index.c:2231
+#: catalog/index.c:2240
 #, 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:3636
+#: catalog/index.c:3647
 #, 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:3647 commands/indexcmds.c:3543
+#: catalog/index.c:3658 commands/indexcmds.c:3622
 #, c-format
 msgid "cannot reindex invalid index on TOAST table"
 msgstr "no es posible reindexar un índice no válido en tabla TOAST"
 
-#: catalog/index.c:3663 commands/indexcmds.c:3423 commands/indexcmds.c:3567
-#: commands/tablecmds.c:3305
+#: catalog/index.c:3674 commands/indexcmds.c:3502 commands/indexcmds.c:3646
+#: commands/tablecmds.c:3402
 #, c-format
 msgid "cannot move system relation \"%s\""
 msgstr "no se puede mover la relación de sistema «%s»"
 
-#: catalog/index.c:3807
+#: catalog/index.c:3818
 #, c-format
 msgid "index \"%s\" was reindexed"
 msgstr "el índice «%s» fue reindexado"
 
-#: catalog/index.c:3944
+#: catalog/index.c:3955
 #, c-format
 msgid "cannot reindex invalid index \"%s.%s\" on TOAST table, skipping"
 msgstr "no se puede reindexar el índice no válido «%s.%s» en tabla TOAST, omitiendo"
 
-#: catalog/namespace.c:259 catalog/namespace.c:463 catalog/namespace.c:555
-#: commands/trigger.c:5711
+#: catalog/namespace.c:260 catalog/namespace.c:464 catalog/namespace.c:556
+#: commands/trigger.c:5687
 #, 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:316
+#: catalog/namespace.c:317
 #, c-format
 msgid "temporary tables cannot specify a schema name"
 msgstr "las tablas temporales no pueden especificar un nombre de esquema"
 
-#: catalog/namespace.c:397
+#: catalog/namespace.c:398
 #, 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:402 commands/lockcmds.c:144 commands/lockcmds.c:233
+#: catalog/namespace.c:403 commands/lockcmds.c:145 commands/lockcmds.c:225
 #, 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:430 parser/parse_relation.c:1373
+#: catalog/namespace.c:431 parser/parse_relation.c:1429
 #, c-format
 msgid "relation \"%s.%s\" does not exist"
 msgstr "no existe la relación «%s.%s»"
 
-#: catalog/namespace.c:435 parser/parse_relation.c:1386
-#: parser/parse_relation.c:1394
+#: catalog/namespace.c:436 parser/parse_relation.c:1442
+#: parser/parse_relation.c:1450 utils/adt/regproc.c:913
 #, c-format
 msgid "relation \"%s\" does not exist"
 msgstr "no existe la relación «%s»"
 
-#: catalog/namespace.c:501 catalog/namespace.c:3076 commands/extension.c:1535
-#: commands/extension.c:1541
+#: catalog/namespace.c:502 catalog/namespace.c:3073 commands/extension.c:1584
+#: commands/extension.c:1590
 #, 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:653 catalog/namespace.c:666
+#: catalog/namespace.c:654 catalog/namespace.c:667
 #, c-format
 msgid "cannot create relations in temporary schemas of other sessions"
 msgstr "no se pueden crear relaciones en esquemas temporales de otras sesiones"
 
-#: catalog/namespace.c:657
+#: catalog/namespace.c:658
 #, 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:672
+#: catalog/namespace.c:673
 #, 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:2268
+#: catalog/namespace.c:2265
 #, c-format
 msgid "statistics object \"%s\" does not exist"
 msgstr "no existe el objeto de estadísticas «%s»"
 
-#: catalog/namespace.c:2391
+#: catalog/namespace.c:2388
 #, c-format
 msgid "text search parser \"%s\" does not exist"
 msgstr "no existe el analizador de búsqueda en texto «%s»"
 
-#: catalog/namespace.c:2517
+#: catalog/namespace.c:2514 utils/adt/regproc.c:1439
 #, c-format
 msgid "text search dictionary \"%s\" does not exist"
 msgstr "no existe el diccionario de búsqueda en texto «%s»"
 
-#: catalog/namespace.c:2644
+#: catalog/namespace.c:2641
 #, c-format
 msgid "text search template \"%s\" does not exist"
 msgstr "no existe la plantilla de búsqueda en texto «%s»"
 
-#: catalog/namespace.c:2770 commands/tsearchcmds.c:1121
-#: utils/cache/ts_cache.c:613
+#: catalog/namespace.c:2767 commands/tsearchcmds.c:1162
+#: utils/adt/regproc.c:1329 utils/cache/ts_cache.c:635
 #, c-format
 msgid "text search configuration \"%s\" does not exist"
 msgstr "no existe la configuración de búsqueda en texto «%s»"
 
-#: catalog/namespace.c:2883 parser/parse_expr.c:806 parser/parse_target.c:1255
+#: catalog/namespace.c:2880 parser/parse_expr.c:825 parser/parse_target.c:1246
 #, 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:2889 parser/parse_expr.c:813 parser/parse_target.c:1262
-#: gram.y:18258 gram.y:18298
+#: catalog/namespace.c:2886 parser/parse_expr.c:832 parser/parse_target.c:1253
+#: gram.y:18621 gram.y:18661
 #, c-format
 msgid "improper qualified name (too many dotted names): %s"
 msgstr "el nombre no es válido (demasiados puntos): %s"
 
-#: catalog/namespace.c:3019
+#: catalog/namespace.c:3016
 #, 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:3025
+#: catalog/namespace.c:3022
 #, 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:3098 commands/schemacmds.c:245 commands/schemacmds.c:325
-#: commands/tablecmds.c:1273
+#: catalog/namespace.c:3095 commands/schemacmds.c:264 commands/schemacmds.c:344
+#: commands/tablecmds.c:1280 utils/adt/regproc.c:1668
 #, c-format
 msgid "schema \"%s\" does not exist"
 msgstr "no existe el esquema «%s»"
 
-#: catalog/namespace.c:3129
+#: catalog/namespace.c:3126
 #, 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:3692
+#: catalog/namespace.c:3693 utils/adt/regproc.c:1056
 #, 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:3747
+#: catalog/namespace.c:3748
 #, c-format
 msgid "conversion \"%s\" does not exist"
 msgstr "no existe la conversión «%s»"
 
-#: catalog/namespace.c:4011
+#: catalog/namespace.c:4012
 #, 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:4027
+#: catalog/namespace.c:4028
 #, c-format
 msgid "cannot create temporary tables during recovery"
 msgstr "no se pueden crear tablas temporales durante la recuperación"
 
-#: catalog/namespace.c:4033
+#: catalog/namespace.c:4034
 #, 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:4334 commands/tablespace.c:1236 commands/variable.c:64
-#: utils/misc/guc.c:12059 utils/misc/guc.c:12161
-#, c-format
-msgid "List syntax is invalid."
-msgstr "La sintaxis de lista no es válida."
-
-#: catalog/objectaddress.c:1391 commands/policy.c:96 commands/policy.c:376
-#: commands/tablecmds.c:247 commands/tablecmds.c:289 commands/tablecmds.c:2184
-#: commands/tablecmds.c:12252
+#: catalog/objectaddress.c:1409 commands/policy.c:96 commands/policy.c:376
+#: commands/tablecmds.c:248 commands/tablecmds.c:290 commands/tablecmds.c:2206
+#: commands/tablecmds.c:12357
 #, c-format
 msgid "\"%s\" is not a table"
 msgstr "«%s» no es una tabla"
 
-#: catalog/objectaddress.c:1398 commands/tablecmds.c:259
-#: commands/tablecmds.c:17097 commands/view.c:119
+#: catalog/objectaddress.c:1416 commands/tablecmds.c:260
+#: commands/tablecmds.c:17169 commands/view.c:119
 #, c-format
 msgid "\"%s\" is not a view"
 msgstr "«%s» no es una vista"
 
-#: catalog/objectaddress.c:1405 commands/matview.c:186 commands/tablecmds.c:265
-#: commands/tablecmds.c:17102
+#: catalog/objectaddress.c:1423 commands/matview.c:187 commands/tablecmds.c:266
+#: commands/tablecmds.c:17174
 #, c-format
 msgid "\"%s\" is not a materialized view"
 msgstr "«%s» no es una vista materializada"
 
-#: catalog/objectaddress.c:1412 commands/tablecmds.c:283
-#: commands/tablecmds.c:17107
+#: catalog/objectaddress.c:1430 commands/tablecmds.c:284
+#: commands/tablecmds.c:17179
 #, c-format
 msgid "\"%s\" is not a foreign table"
 msgstr "«%s» no es una tabla foránea"
 
-#: catalog/objectaddress.c:1453
+#: catalog/objectaddress.c:1471
 #, c-format
 msgid "must specify relation and object name"
 msgstr "debe especificar nombre de relación y nombre de objeto"
 
-#: catalog/objectaddress.c:1529 catalog/objectaddress.c:1582
+#: catalog/objectaddress.c:1547 catalog/objectaddress.c:1600
 #, c-format
 msgid "column name must be qualified"
 msgstr "el nombre de columna debe ser calificado"
 
-#: catalog/objectaddress.c:1601
+#: catalog/objectaddress.c:1619
 #, 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:1638 commands/functioncmds.c:138
-#: commands/tablecmds.c:275 commands/typecmds.c:274 commands/typecmds.c:3700
-#: parser/parse_type.c:243 parser/parse_type.c:272 parser/parse_type.c:795
-#: utils/adt/acl.c:4434
+#: catalog/objectaddress.c:1656 commands/functioncmds.c:137
+#: commands/tablecmds.c:276 commands/typecmds.c:274 commands/typecmds.c:3689
+#: parser/parse_type.c:243 parser/parse_type.c:272 parser/parse_type.c:801
+#: utils/adt/acl.c:4449
 #, c-format
 msgid "type \"%s\" does not exist"
 msgstr "no existe el tipo «%s»"
 
-#: catalog/objectaddress.c:1757
+#: catalog/objectaddress.c:1775
 #, 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:1788
+#: catalog/objectaddress.c:1806
 #, 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:1839 catalog/objectaddress.c:1865
+#: catalog/objectaddress.c:1857 catalog/objectaddress.c:1883
 #, c-format
 msgid "user mapping for user \"%s\" on server \"%s\" does not exist"
 msgstr "no existe el mapeo para el usuario «%s» en el servidor «%s»"
 
-#: catalog/objectaddress.c:1854 commands/foreigncmds.c:430
-#: commands/foreigncmds.c:993 commands/foreigncmds.c:1356 foreign/foreign.c:691
+#: catalog/objectaddress.c:1872 commands/foreigncmds.c:430
+#: commands/foreigncmds.c:993 commands/foreigncmds.c:1356 foreign/foreign.c:700
 #, c-format
 msgid "server \"%s\" does not exist"
 msgstr "no existe el servidor «%s»"
 
-#: catalog/objectaddress.c:1921
+#: catalog/objectaddress.c:1939
 #, 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:1968
+#: catalog/objectaddress.c:1986
 #, fuzzy, c-format
 #| msgid "publication relation \"%s\" in publication \"%s\" does not exist"
 msgid "publication schema \"%s\" in publication \"%s\" does not exist"
 msgstr "no existe la relación «%s» en la publicación «%s»"
 
-#: catalog/objectaddress.c:2026
+#: catalog/objectaddress.c:2044
 #, c-format
 msgid "unrecognized default ACL object type \"%c\""
 msgstr "tipo de objeto para ACL por omisión «%c» no reconocido"
 
-#: catalog/objectaddress.c:2027
+#: catalog/objectaddress.c:2045
 #, 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:2078
+#: catalog/objectaddress.c:2096
 #, 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:2083
+#: catalog/objectaddress.c:2101
 #, 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:2110 catalog/objectaddress.c:2168
-#: catalog/objectaddress.c:2225
+#: catalog/objectaddress.c:2127 catalog/objectaddress.c:2184
+#: catalog/objectaddress.c:2239
 #, c-format
 msgid "name or argument lists may not contain nulls"
 msgstr "las listas de nombres o argumentos no pueden contener nulls"
 
-#: catalog/objectaddress.c:2144
+#: catalog/objectaddress.c:2161
 #, c-format
 msgid "unsupported object type \"%s\""
 msgstr "tipo de objeto «%s» no soportado"
 
-#: catalog/objectaddress.c:2164 catalog/objectaddress.c:2182
-#: catalog/objectaddress.c:2247 catalog/objectaddress.c:2331
+#: catalog/objectaddress.c:2180 catalog/objectaddress.c:2197
+#: catalog/objectaddress.c:2262 catalog/objectaddress.c:2346
 #, c-format
 msgid "name list length must be exactly %d"
 msgstr "el largo de la lista de nombres debe ser exactamente %d"
 
-#: catalog/objectaddress.c:2186
+#: catalog/objectaddress.c:2201
 #, c-format
 msgid "large object OID may not be null"
 msgstr "el OID de objeto grande no puede ser null"
 
-#: catalog/objectaddress.c:2195 catalog/objectaddress.c:2265
-#: catalog/objectaddress.c:2272
+#: catalog/objectaddress.c:2210 catalog/objectaddress.c:2280
+#: catalog/objectaddress.c:2287
 #, c-format
 msgid "name list length must be at least %d"
 msgstr "el largo de la lista de nombres debe ser al menos %d"
 
-#: catalog/objectaddress.c:2258 catalog/objectaddress.c:2279
+#: catalog/objectaddress.c:2273 catalog/objectaddress.c:2294
 #, c-format
 msgid "argument list length must be exactly %d"
 msgstr "el largo de la lista de argumentos debe ser exactamente %d"
 
-#: catalog/objectaddress.c:2533 libpq/be-fsstubs.c:318
+#: catalog/objectaddress.c:2508 libpq/be-fsstubs.c:329
 #, c-format
 msgid "must be owner of large object %u"
 msgstr "debe ser dueño del objeto grande %u"
 
-#: catalog/objectaddress.c:2548 commands/functioncmds.c:1566
+#: catalog/objectaddress.c:2523 commands/functioncmds.c:1561
 #, c-format
 msgid "must be owner of type %s or type %s"
 msgstr "debe ser dueño del tipo %s o el tipo %s"
 
-#: catalog/objectaddress.c:2598 catalog/objectaddress.c:2616
+#: catalog/objectaddress.c:2550 catalog/objectaddress.c:2559
+#: catalog/objectaddress.c:2565
 #, c-format
-msgid "must be superuser"
-msgstr "debe ser superusuario"
+msgid "permission denied"
+msgstr "permiso denegado"
+
+#: catalog/objectaddress.c:2551 catalog/objectaddress.c:2560
+#, c-format
+msgid "The current user must have the %s attribute."
+msgstr ""
+
+#: catalog/objectaddress.c:2566
+#, fuzzy, c-format
+#| msgid "must have admin option on role \"%s\""
+msgid "The current user must have the %s option on role \"%s\"."
+msgstr "debe tener opción de admin en rol «%s»"
 
-#: catalog/objectaddress.c:2605
+#: catalog/objectaddress.c:2580
 #, c-format
-msgid "must have CREATEROLE privilege"
-msgstr "debe tener privilegio CREATEROLE"
+msgid "must be superuser"
+msgstr "debe ser superusuario"
 
-#: catalog/objectaddress.c:2686
+#: catalog/objectaddress.c:2649
 #, 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:2978
+#: catalog/objectaddress.c:2941
 #, c-format
 msgid "column %s of %s"
 msgstr " columna %s de %s"
 
-#: catalog/objectaddress.c:2993
+#: catalog/objectaddress.c:2956
 #, c-format
 msgid "function %s"
 msgstr "función %s"
 
-#: catalog/objectaddress.c:3006
+#: catalog/objectaddress.c:2969
 #, c-format
 msgid "type %s"
 msgstr "tipo %s"
 
-#: catalog/objectaddress.c:3043
+#: catalog/objectaddress.c:3006
 #, c-format
 msgid "cast from %s to %s"
 msgstr "conversión de %s a %s"
 
-#: catalog/objectaddress.c:3076
+#: catalog/objectaddress.c:3039
 #, c-format
 msgid "collation %s"
 msgstr "ordenamiento (collation) %s"
 
 #. translator: second %s is, e.g., "table %s"
-#: catalog/objectaddress.c:3107
+#: catalog/objectaddress.c:3070
 #, c-format
 msgid "constraint %s on %s"
 msgstr "restricción «%s» en %s"
 
-#: catalog/objectaddress.c:3113
+#: catalog/objectaddress.c:3076
 #, c-format
 msgid "constraint %s"
 msgstr "restricción %s"
 
-#: catalog/objectaddress.c:3145
+#: catalog/objectaddress.c:3108
 #, c-format
 msgid "conversion %s"
 msgstr "conversión %s"
 
 #. translator: %s is typically "column %s of table %s"
-#: catalog/objectaddress.c:3167
+#: catalog/objectaddress.c:3130
 #, c-format
 msgid "default value for %s"
 msgstr "valor por omisión para %s"
 
-#: catalog/objectaddress.c:3178
+#: catalog/objectaddress.c:3141
 #, c-format
 msgid "language %s"
 msgstr "lenguaje %s"
 
-#: catalog/objectaddress.c:3186
+#: catalog/objectaddress.c:3149
 #, c-format
 msgid "large object %u"
 msgstr "objeto grande %u"
 
-#: catalog/objectaddress.c:3199
+#: catalog/objectaddress.c:3162
 #, c-format
 msgid "operator %s"
 msgstr "operador %s"
 
-#: catalog/objectaddress.c:3236
+#: catalog/objectaddress.c:3199
 #, 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:3264
+#: catalog/objectaddress.c:3227
 #, c-format
 msgid "access method %s"
 msgstr "método de acceso %s"
@@ -5183,7 +5248,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:3313
+#: catalog/objectaddress.c:3276
 #, c-format
 msgid "operator %d (%s, %s) of %s: %s"
 msgstr "operador %d (%s, %s) de %s: %s"
@@ -5192,231 +5257,237 @@ 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:3370
+#: catalog/objectaddress.c:3333
 #, 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:3422
+#: catalog/objectaddress.c:3385
 #, c-format
 msgid "rule %s on %s"
 msgstr "regla %s en %s"
 
 #. translator: second %s is, e.g., "table %s"
-#: catalog/objectaddress.c:3468
+#: catalog/objectaddress.c:3431
 #, c-format
 msgid "trigger %s on %s"
 msgstr "disparador %s en %s"
 
-#: catalog/objectaddress.c:3488
+#: catalog/objectaddress.c:3451
 #, c-format
 msgid "schema %s"
 msgstr "esquema %s"
 
-#: catalog/objectaddress.c:3516
+#: catalog/objectaddress.c:3479
 #, c-format
 msgid "statistics object %s"
 msgstr "objeto de estadísticas %s"
 
-#: catalog/objectaddress.c:3547
+#: catalog/objectaddress.c:3510
 #, c-format
 msgid "text search parser %s"
 msgstr "analizador de búsqueda en texto %s"
 
-#: catalog/objectaddress.c:3578
+#: catalog/objectaddress.c:3541
 #, c-format
 msgid "text search dictionary %s"
 msgstr "diccionario de búsqueda en texto %s"
 
-#: catalog/objectaddress.c:3609
+#: catalog/objectaddress.c:3572
 #, c-format
 msgid "text search template %s"
 msgstr "plantilla de búsqueda en texto %s"
 
-#: catalog/objectaddress.c:3640
+#: catalog/objectaddress.c:3603
 #, c-format
 msgid "text search configuration %s"
 msgstr "configuración de búsqueda en texto %s"
 
-#: catalog/objectaddress.c:3653
+#: catalog/objectaddress.c:3616
 #, c-format
 msgid "role %s"
 msgstr "rol %s"
 
-#: catalog/objectaddress.c:3669
+#: catalog/objectaddress.c:3653 catalog/objectaddress.c:5505
+#, fuzzy, c-format
+#| msgid "removal of role \"%s\" failed: %s"
+msgid "membership of role %s in role %s"
+msgstr "falló la eliminación del rol «%s»: %s"
+
+#: catalog/objectaddress.c:3674
 #, c-format
 msgid "database %s"
 msgstr "base de datos %s"
 
-#: catalog/objectaddress.c:3685
+#: catalog/objectaddress.c:3690
 #, c-format
 msgid "tablespace %s"
 msgstr "tablespace %s"
 
-#: catalog/objectaddress.c:3696
+#: catalog/objectaddress.c:3701
 #, c-format
 msgid "foreign-data wrapper %s"
 msgstr "conector de datos externos %s"
 
-#: catalog/objectaddress.c:3706
+#: catalog/objectaddress.c:3711
 #, c-format
 msgid "server %s"
 msgstr "servidor %s"
 
-#: catalog/objectaddress.c:3739
+#: catalog/objectaddress.c:3744
 #, c-format
 msgid "user mapping for %s on server %s"
 msgstr "mapeo para el usuario %s en el servidor %s"
 
-#: catalog/objectaddress.c:3791
+#: catalog/objectaddress.c:3796
 #, c-format
 msgid "default privileges on new relations belonging to role %s in schema %s"
 msgstr "privilegios por omisión en nuevas relaciones pertenecientes al rol %s en el esquema %s"
 
-#: catalog/objectaddress.c:3795
+#: catalog/objectaddress.c:3800
 #, 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:3801
+#: catalog/objectaddress.c:3806
 #, 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:3805
+#: catalog/objectaddress.c:3810
 #, 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:3811
+#: catalog/objectaddress.c:3816
 #, 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:3815
+#: catalog/objectaddress.c:3820
 #, 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:3821
+#: catalog/objectaddress.c:3826
 #, 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:3825
+#: catalog/objectaddress.c:3830
 #, 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:3831
+#: catalog/objectaddress.c:3836
 #, 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:3838
+#: catalog/objectaddress.c:3843
 #, 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:3842
+#: catalog/objectaddress.c:3847
 #, c-format
 msgid "default privileges belonging to role %s"
 msgstr "privilegios por omisión pertenecientes al rol %s"
 
-#: catalog/objectaddress.c:3864
+#: catalog/objectaddress.c:3869
 #, c-format
 msgid "extension %s"
 msgstr "extensión %s"
 
-#: catalog/objectaddress.c:3881
+#: catalog/objectaddress.c:3886
 #, c-format
 msgid "event trigger %s"
 msgstr "disparador por eventos %s"
 
-#: catalog/objectaddress.c:3908
+#: catalog/objectaddress.c:3910
 #, c-format
 msgid "parameter %s"
 msgstr "parámetro %s"
 
 #. translator: second %s is, e.g., "table %s"
-#: catalog/objectaddress.c:3951
+#: catalog/objectaddress.c:3953
 #, c-format
 msgid "policy %s on %s"
 msgstr "política %s en %s"
 
-#: catalog/objectaddress.c:3965
+#: catalog/objectaddress.c:3967
 #, c-format
 msgid "publication %s"
 msgstr "publicación %s"
 
-#: catalog/objectaddress.c:3978
+#: catalog/objectaddress.c:3980
 #, c-format
 msgid "publication of schema %s in publication %s"
 msgstr "publicación de esquema %s en la publicación %s"
 
 #. translator: first %s is, e.g., "table %s"
-#: catalog/objectaddress.c:4009
+#: catalog/objectaddress.c:4011
 #, c-format
 msgid "publication of %s in publication %s"
 msgstr "publicación de %s en la publicación %s"
 
-#: catalog/objectaddress.c:4022
+#: catalog/objectaddress.c:4024
 #, c-format
 msgid "subscription %s"
 msgstr "suscripción %s"
 
-#: catalog/objectaddress.c:4043
+#: catalog/objectaddress.c:4045
 #, c-format
 msgid "transform for %s language %s"
 msgstr "transformación para %s lenguaje %s"
 
-#: catalog/objectaddress.c:4114
+#: catalog/objectaddress.c:4116
 #, c-format
 msgid "table %s"
 msgstr "tabla %s"
 
-#: catalog/objectaddress.c:4119
+#: catalog/objectaddress.c:4121
 #, c-format
 msgid "index %s"
 msgstr "índice %s"
 
-#: catalog/objectaddress.c:4123
+#: catalog/objectaddress.c:4125
 #, c-format
 msgid "sequence %s"
 msgstr "secuencia %s"
 
-#: catalog/objectaddress.c:4127
+#: catalog/objectaddress.c:4129
 #, c-format
 msgid "toast table %s"
 msgstr "tabla toast %s"
 
-#: catalog/objectaddress.c:4131
+#: catalog/objectaddress.c:4133
 #, c-format
 msgid "view %s"
 msgstr "vista %s"
 
-#: catalog/objectaddress.c:4135
+#: catalog/objectaddress.c:4137
 #, c-format
 msgid "materialized view %s"
 msgstr "vista materializada %s"
 
-#: catalog/objectaddress.c:4139
+#: catalog/objectaddress.c:4141
 #, c-format
 msgid "composite type %s"
 msgstr "tipo compuesto %s"
 
-#: catalog/objectaddress.c:4143
+#: catalog/objectaddress.c:4145
 #, c-format
 msgid "foreign table %s"
 msgstr "tabla foránea %s"
 
-#: catalog/objectaddress.c:4148
+#: catalog/objectaddress.c:4150
 #, c-format
 msgid "relation %s"
 msgstr "relación %s"
 
-#: catalog/objectaddress.c:4189
+#: catalog/objectaddress.c:4191
 #, c-format
 msgid "operator family %s for access method %s"
 msgstr "familia de operadores %s para el método de acceso %s"
@@ -5458,7 +5529,7 @@ msgstr "no se puede omitir el valor inicial cuando la función de transición es
 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:352 executor/nodeWindowAgg.c:2978
+#: catalog/pg_aggregate.c:352 executor/nodeWindowAgg.c:3009
 #, 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"
@@ -5473,7 +5544,7 @@ msgstr "la función final con argumentos extra no debe declararse STRICT"
 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:439 executor/nodeAgg.c:3883
+#: catalog/pg_aggregate.c:439 executor/nodeAgg.c:3903
 #, 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"
@@ -5533,13 +5604,13 @@ msgstr "«%s» es una agregación de conjunto hipotético."
 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:858 commands/functioncmds.c:695
-#: commands/typecmds.c:1976 commands/typecmds.c:2022 commands/typecmds.c:2074
-#: commands/typecmds.c:2111 commands/typecmds.c:2145 commands/typecmds.c:2179
-#: commands/typecmds.c:2213 commands/typecmds.c:2242 commands/typecmds.c:2329
-#: commands/typecmds.c:2371 parser/parse_func.c:417 parser/parse_func.c:448
+#: catalog/pg_aggregate.c:858 commands/functioncmds.c:691
+#: commands/typecmds.c:1975 commands/typecmds.c:2021 commands/typecmds.c:2073
+#: commands/typecmds.c:2110 commands/typecmds.c:2144 commands/typecmds.c:2178
+#: commands/typecmds.c:2212 commands/typecmds.c:2241 commands/typecmds.c:2328
+#: commands/typecmds.c:2370 parser/parse_func.c:417 parser/parse_func.c:448
 #: parser/parse_func.c:475 parser/parse_func.c:489 parser/parse_func.c:611
-#: parser/parse_func.c:631 parser/parse_func.c:2173 parser/parse_func.c:2446
+#: parser/parse_func.c:631 parser/parse_func.c:2171 parser/parse_func.c:2444
 #, c-format
 msgid "function %s does not exist"
 msgstr "no existe la función %s"
@@ -5559,7 +5630,7 @@ msgstr "la función %s debe aceptar VARIADIC ANY para usarse en esta agregación
 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:68
+#: catalog/pg_cast.c:75
 #, c-format
 msgid "cast from type %s to type %s already exists"
 msgstr "ya existe una conversión del tipo %s al tipo %s"
@@ -5614,37 +5685,37 @@ msgstr "Esta operación no está soportada en tablas particionadas."
 msgid "This operation is not supported for partitioned indexes."
 msgstr "Esta operación no está soportada en índices particionados."
 
-#: catalog/pg_collation.c:101 catalog/pg_collation.c:159
+#: catalog/pg_collation.c:102 catalog/pg_collation.c:160
 #, c-format
 msgid "collation \"%s\" already exists, skipping"
 msgstr "el ordenamiento «%s» ya existe, omitiendo"
 
-#: catalog/pg_collation.c:103
+#: catalog/pg_collation.c:104
 #, c-format
 msgid "collation \"%s\" for encoding \"%s\" already exists, skipping"
 msgstr "el ordenamiento «%s» para la codificación «%s» ya existe, omitiendo"
 
-#: catalog/pg_collation.c:111 catalog/pg_collation.c:166
+#: catalog/pg_collation.c:112 catalog/pg_collation.c:167
 #, c-format
 msgid "collation \"%s\" already exists"
 msgstr "el ordenamiento «%s» ya existe"
 
-#: catalog/pg_collation.c:113
+#: catalog/pg_collation.c:114
 #, c-format
 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:697
+#: catalog/pg_constraint.c:690
 #, 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:893 catalog/pg_constraint.c:986
+#: catalog/pg_constraint.c:890 catalog/pg_constraint.c:983
 #, c-format
 msgid "constraint \"%s\" for table \"%s\" does not exist"
 msgstr "no existe la restricción «%s» para la tabla «%s»"
 
-#: catalog/pg_constraint.c:1075
+#: catalog/pg_constraint.c:1083
 #, c-format
 msgid "constraint \"%s\" for domain %s does not exist"
 msgstr "no existe la restricción «%s» para el dominio %s"
@@ -5659,12 +5730,12 @@ 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:222 commands/extension.c:3271
+#: catalog/pg_depend.c:222 commands/extension.c:3344
 #, 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:229 catalog/pg_depend.c:280 commands/extension.c:3311
+#: catalog/pg_depend.c:229 catalog/pg_depend.c:280 commands/extension.c:3384
 #, c-format
 msgid "%s is not a member of extension \"%s\""
 msgstr "%s no es un miembro de la extensión «%s»"
@@ -5684,37 +5755,37 @@ msgstr "Una extensión sólo puede usar CREATE ... IF NOT EXISTS para omitir la
 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:230 catalog/pg_enum.c:525
+#: catalog/pg_enum.c:137 catalog/pg_enum.c:259 catalog/pg_enum.c:554
 #, c-format
 msgid "invalid enum label \"%s\""
 msgstr "la etiqueta enum «%s» no es válida"
 
-#: catalog/pg_enum.c:129 catalog/pg_enum.c:231 catalog/pg_enum.c:526
+#: catalog/pg_enum.c:138 catalog/pg_enum.c:260 catalog/pg_enum.c:555
 #, c-format
 msgid "Labels must be %d bytes or less."
 msgstr "Las etiquetas deben ser de %d bytes o menos."
 
-#: catalog/pg_enum.c:259
+#: catalog/pg_enum.c:288
 #, c-format
 msgid "enum label \"%s\" already exists, skipping"
 msgstr "la etiqueta de enum «%s» ya existe, omitiendo"
 
-#: catalog/pg_enum.c:266 catalog/pg_enum.c:569
+#: catalog/pg_enum.c:295 catalog/pg_enum.c:598
 #, c-format
 msgid "enum label \"%s\" already exists"
 msgstr "la etiqueta de enum «%s» ya existe"
 
-#: catalog/pg_enum.c:321 catalog/pg_enum.c:564
+#: catalog/pg_enum.c:350 catalog/pg_enum.c:593
 #, c-format
 msgid "\"%s\" is not an existing enum label"
 msgstr "«%s» no es una etiqueta de enum existente"
 
-#: catalog/pg_enum.c:379
+#: catalog/pg_enum.c:408
 #, c-format
 msgid "pg_enum OID value not set when in binary upgrade mode"
 msgstr "el valor de OID de pg_enum no se definió en modo de actualización binaria"
 
-#: catalog/pg_enum.c:389
+#: catalog/pg_enum.c:418
 #, 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"
@@ -5729,8 +5800,8 @@ msgstr "no se puede desprender la partición «%s»"
 msgid "The partition is being detached concurrently or has an unfinished detach."
 msgstr "La partición está siendo desprendida de forma concurrente o tiene un desprendimiento sin terminar."
 
-#: catalog/pg_inherits.c:596 commands/tablecmds.c:4488
-#: commands/tablecmds.c:15397
+#: catalog/pg_inherits.c:596 commands/tablecmds.c:4583
+#: commands/tablecmds.c:15464
 #, c-format
 msgid "Use ALTER TABLE ... DETACH PARTITION ... FINALIZE to complete the pending detach operation."
 msgstr "Utilice ALTER TABLE ... DETACH PARTITION ... FINALIZE para completar la operación de desprendimiento pendiente."
@@ -5745,7 +5816,7 @@ msgstr "no se puede completar el desprendimiento de la partición «%s»"
 msgid "There's no pending concurrent detach."
 msgstr "No hay desprendimientos concurrentes pendientes."
 
-#: catalog/pg_namespace.c:64 commands/schemacmds.c:254
+#: catalog/pg_namespace.c:64 commands/schemacmds.c:273
 #, c-format
 msgid "schema \"%s\" already exists"
 msgstr "ya existe el esquema «%s»"
@@ -5760,7 +5831,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:507
+#: catalog/pg_operator.c:374 commands/operatorcmds.c:509
 #, c-format
 msgid "only binary operators can have join selectivity"
 msgstr "sólo los operadores binarios pueden tener selectividad de join"
@@ -5780,12 +5851,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:515
+#: catalog/pg_operator.c:397 commands/operatorcmds.c:517
 #, 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:519
+#: catalog/pg_operator.c:401 commands/operatorcmds.c:521
 #, c-format
 msgid "only boolean operators can have join selectivity"
 msgstr "sólo los operadores booleanos pueden tener selectividad de join"
@@ -5810,19 +5881,19 @@ 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_parameter_acl.c:52
+#: catalog/pg_parameter_acl.c:53
 #, fuzzy, c-format
-#| msgid "variable \"%s\" does not exist"
+#| msgid "parameter ACL with OID %u does not exist"
 msgid "parameter ACL \"%s\" does not exist"
-msgstr "no existe la variable «%s»"
+msgstr "no existe el ACL de parámetro con OID %u"
 
-#: catalog/pg_parameter_acl.c:87
+#: catalog/pg_parameter_acl.c:88
 #, fuzzy, c-format
 #| msgid "invalid type name \"%s\""
 msgid "invalid parameter name \"%s\""
 msgstr "el nombre de tipo «%s» no es válido"
 
-#: catalog/pg_proc.c:132 parser/parse_func.c:2235
+#: catalog/pg_proc.c:132 parser/parse_func.c:2233
 #, c-format
 msgid "functions cannot have more than %d argument"
 msgid_plural "functions cannot have more than %d arguments"
@@ -5869,7 +5940,7 @@ msgstr "no se puede cambiar el tipo de retorno de una función existente"
 #.
 #. translator: first %s is DROP FUNCTION or DROP PROCEDURE
 #: catalog/pg_proc.c:421 catalog/pg_proc.c:448 catalog/pg_proc.c:493
-#: catalog/pg_proc.c:519 catalog/pg_proc.c:545
+#: catalog/pg_proc.c:519 catalog/pg_proc.c:543
 #, c-format
 msgid "Use %s %s first."
 msgstr "Use %s %s primero."
@@ -5889,105 +5960,99 @@ msgstr "no se puede cambiar el nombre del parámetro de entrada «%s»"
 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:543
+#: catalog/pg_proc.c:541
 #, 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:757
+#: catalog/pg_proc.c:753
 #, c-format
 msgid "there is no built-in function named \"%s\""
 msgstr "no hay ninguna función interna llamada «%s»"
 
-#: catalog/pg_proc.c:855
+#: 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:870
+#: 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:1000 executor/functions.c:1473
+#: catalog/pg_proc.c:988 executor/functions.c:1466
 #, c-format
 msgid "SQL function \"%s\""
 msgstr "función SQL «%s»"
 
-#: catalog/pg_publication.c:63 catalog/pg_publication.c:71
-#: catalog/pg_publication.c:79 catalog/pg_publication.c:85
+#: catalog/pg_publication.c:71 catalog/pg_publication.c:79
+#: catalog/pg_publication.c:87 catalog/pg_publication.c:93
 #, c-format
 msgid "cannot add relation \"%s\" to publication"
 msgstr "no se puede agregar la relación «%s» a la publicación"
 
-#: catalog/pg_publication.c:73
+#: catalog/pg_publication.c:81
 #, c-format
 msgid "This operation is not supported for system tables."
 msgstr "Esta operación no está soportada en tablas de sistema."
 
-#: catalog/pg_publication.c:81
+#: catalog/pg_publication.c:89
 #, c-format
 msgid "This operation is not supported for temporary tables."
 msgstr "Esta operación no está soportada en tablas temporales."
 
-#: catalog/pg_publication.c:87
+#: catalog/pg_publication.c:95
 #, c-format
 msgid "This operation is not supported for unlogged tables."
 msgstr "Esta característica no está soportada en tablas «unlogged»."
 
-#: catalog/pg_publication.c:101 catalog/pg_publication.c:109
+#: catalog/pg_publication.c:109 catalog/pg_publication.c:117
 #, c-format
 msgid "cannot add schema \"%s\" to publication"
 msgstr "no se puede agregar el esquema «%s» a la partición"
 
-#: catalog/pg_publication.c:103
+#: catalog/pg_publication.c:111
 #, fuzzy, c-format
-#| msgid "The prefix \"pg_\" is reserved for system schemas."
+#| msgid "This operation is not supported for system tables."
 msgid "This operation is not supported for system schemas."
-msgstr "El prefijo «pg_» está reservado para esquemas del sistema."
+msgstr "Esta operación no está soportada en tablas de sistema."
 
-#: catalog/pg_publication.c:111
+#: catalog/pg_publication.c:119
 #, fuzzy, c-format
-#| msgid "Temporary and unlogged relations cannot be replicated."
+#| msgid "Unlogged relations cannot be replicated."
 msgid "Temporary schemas cannot be replicated."
-msgstr "Las tablas temporales o «unlogged» no pueden replicarse."
+msgstr "Las tablas «unlogged» no pueden replicarse."
 
-#: catalog/pg_publication.c:374
+#: catalog/pg_publication.c:397
 #, 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:516
+#: catalog/pg_publication.c:539
 #, fuzzy, c-format
 #| msgid "cannot use system column \"%s\" in partition key"
 msgid "cannot use system column \"%s\" in publication column list"
 msgstr "no se puede usar la columna de sistema «%s» en llave de particionamiento"
 
-#: catalog/pg_publication.c:522
+#: catalog/pg_publication.c:545
 #, fuzzy, c-format
-#| msgid "cannot use generated column \"%s\" in column generation expression"
+#| msgid "cannot use generated column in partition key"
 msgid "cannot use generated column \"%s\" in publication column list"
-msgstr "no se puede usar la columna generada «%s» en una expresión de generación de columna"
+msgstr "no se puede usar una columna generada en llave de particionamiento"
 
-#: catalog/pg_publication.c:528
+#: catalog/pg_publication.c:551
 #, fuzzy, c-format
 #| msgid "publication of %s in publication %s"
 msgid "duplicate column \"%s\" in publication column list"
 msgstr "publicación de %s en la publicación %s"
 
-#: catalog/pg_publication.c:618
+#: catalog/pg_publication.c:641
 #, fuzzy, c-format
 #| msgid "relation \"%s\" is already member of publication \"%s\""
 msgid "schema \"%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:1045 commands/publicationcmds.c:1394
-#: commands/publicationcmds.c:1433 commands/publicationcmds.c:1970
-#, c-format
-msgid "publication \"%s\" does not exist"
-msgstr "no existe la publicación «%s»"
-
-#: catalog/pg_shdepend.c:829
+#: catalog/pg_shdepend.c:830
 #, c-format
 msgid ""
 "\n"
@@ -6002,71 +6067,65 @@ msgstr[1] ""
 "\n"
 "y objetos en otras %d bases de datos (vea el registro del servidor para obtener la lista)"
 
-#: catalog/pg_shdepend.c:1176
+#: catalog/pg_shdepend.c:1177
 #, c-format
 msgid "role %u was concurrently dropped"
 msgstr "el rol %u fue eliminado por una transacción concurrente"
 
-#: catalog/pg_shdepend.c:1188
+#: catalog/pg_shdepend.c:1189
 #, c-format
 msgid "tablespace %u was concurrently dropped"
 msgstr "el tablespace %u fue eliminado por una transacción concurrente"
 
-#: catalog/pg_shdepend.c:1202
+#: catalog/pg_shdepend.c:1203
 #, 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:1253
+#: catalog/pg_shdepend.c:1254
 #, c-format
 msgid "owner of %s"
 msgstr "dueño de %s"
 
-#: catalog/pg_shdepend.c:1255
+#: catalog/pg_shdepend.c:1256
 #, c-format
 msgid "privileges for %s"
 msgstr "privilegios para %s"
 
-#: catalog/pg_shdepend.c:1257
+#: catalog/pg_shdepend.c:1258
 #, c-format
 msgid "target of %s"
 msgstr "destino de %s"
 
-#: catalog/pg_shdepend.c:1259
+#: catalog/pg_shdepend.c:1260
 #, c-format
 msgid "tablespace for %s"
 msgstr "tablespace para %s"
 
 #. translator: %s will always be "database %s"
-#: catalog/pg_shdepend.c:1267
+#: catalog/pg_shdepend.c:1268
 #, c-format
 msgid "%d object in %s"
 msgid_plural "%d objects in %s"
 msgstr[0] "%d objeto en %s"
 msgstr[1] "%d objetos en %s"
 
-#: catalog/pg_shdepend.c:1331
+#: catalog/pg_shdepend.c:1332
 #, c-format
 msgid "cannot drop objects owned by %s because they are required by the database system"
 msgstr "no se puede eliminar objetos de propiedad de %s porque son requeridos por el sistema"
 
-#: catalog/pg_shdepend.c:1477
+#: catalog/pg_shdepend.c:1497
 #, 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:216 commands/subscriptioncmds.c:989
-#: commands/subscriptioncmds.c:1354 commands/subscriptioncmds.c:1705
-#, c-format
-msgid "subscription \"%s\" does not exist"
-msgstr "no existe la suscripción «%s»"
-
-#: catalog/pg_subscription.c:474
+#: catalog/pg_subscription.c:424
 #, c-format
 msgid "could not drop relation mapping for subscription \"%s\""
 msgstr "no se pudo eliminar mapeo de relación para suscripción «%s»"
 
-#: catalog/pg_subscription.c:476
+#: catalog/pg_subscription.c:426
 #, c-format
 msgid "Table synchronization for relation \"%s\" is in progress and is in state \"%c\"."
 msgstr "La sincronización de tabla para la relación «%s» está en progreso y su estado es «%c»."
@@ -6074,218 +6133,227 @@ msgstr "La sincronización de tabla para la relación «%s» está en progreso y
 #. translator: first %s is a SQL ALTER command and second %s is a
 #. SQL DROP command
 #.
-#: catalog/pg_subscription.c:483
+#: catalog/pg_subscription.c:433
 #, c-format
 msgid "Use %s to enable subscription if not already enabled or use %s to drop the subscription."
 msgstr "Utilice %s para activar la suscripción si aún no está activada, o utilice %s para eliminar la suscripción."
 
-#: catalog/pg_type.c:136 catalog/pg_type.c:476
+#: catalog/pg_type.c:134 catalog/pg_type.c:474
 #, c-format
 msgid "pg_type OID value not set when in binary upgrade mode"
 msgstr "el valor de OID de pg_type no se definió en modo de actualización binaria"
 
-#: catalog/pg_type.c:256
+#: catalog/pg_type.c:254
 #, c-format
 msgid "invalid type internal size %d"
 msgstr "el tamaño interno de tipo %d no es válido"
 
-#: catalog/pg_type.c:272 catalog/pg_type.c:280 catalog/pg_type.c:288
-#: catalog/pg_type.c:297
+#: catalog/pg_type.c:270 catalog/pg_type.c:278 catalog/pg_type.c:286
+#: catalog/pg_type.c:295
 #, c-format
 msgid "alignment \"%c\" is invalid for passed-by-value type of size %d"
 msgstr "el alineamiento «%c» no es válido para un tipo pasado por valor de tamaño %d"
 
-#: catalog/pg_type.c:304
+#: catalog/pg_type.c:302
 #, c-format
 msgid "internal size %d is invalid for passed-by-value type"
 msgstr "el tamaño interno %d no es válido para un tipo pasado por valor"
 
-#: catalog/pg_type.c:314 catalog/pg_type.c:320
+#: catalog/pg_type.c:312 catalog/pg_type.c:318
 #, c-format
 msgid "alignment \"%c\" is invalid for variable-length type"
 msgstr "el alineamiento «%c» no es válido para un tipo de largo variable"
 
-#: catalog/pg_type.c:328 commands/typecmds.c:4151
+#: catalog/pg_type.c:326 commands/typecmds.c:4140
 #, c-format
 msgid "fixed-size types must have storage PLAIN"
 msgstr "los tipos de tamaño fijo deben tener almacenamiento PLAIN"
 
-#: catalog/pg_type.c:827
-#, 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/pg_type.c:932
+#: catalog/pg_type.c:955
 #, c-format
 msgid "Failed while creating a multirange type for type \"%s\"."
 msgstr "Falla al crear un tipo de multirango para el tipo «%s»."
 
-#: catalog/pg_type.c:933
+#: catalog/pg_type.c:956
 #, c-format
 msgid "You can manually specify a multirange type name using the \"multirange_type_name\" attribute."
 msgstr "Puede especificar manualmente un nombre para el tipo de multirango usando el atributo «multirange_type_name»."
 
-#: catalog/storage.c:505 storage/buffer/bufmgr.c:1047
+#: catalog/storage.c:505 storage/buffer/bufmgr.c:1146
 #, 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"
 
-#: commands/aggregatecmds.c:170
+#: commands/aggregatecmds.c:171
 #, c-format
 msgid "only ordered-set aggregates can be hypothetical"
 msgstr "sólo las funciones de agregación de conjuntos ordenados pueden ser hipotéticas"
 
-#: commands/aggregatecmds.c:195
+#: commands/aggregatecmds.c:196
 #, c-format
 msgid "aggregate attribute \"%s\" not recognized"
 msgstr "el atributo de la función de agregación «%s» no es reconocido"
 
-#: commands/aggregatecmds.c:205
+#: commands/aggregatecmds.c:206
 #, c-format
 msgid "aggregate stype must be specified"
 msgstr "debe especificarse el tipo de transición (stype) de la función de agregación"
 
-#: commands/aggregatecmds.c:209
+#: commands/aggregatecmds.c:210
 #, c-format
 msgid "aggregate sfunc must be specified"
 msgstr "debe especificarse la función de transición (sfunc) de la función de agregación"
 
-#: commands/aggregatecmds.c:221
+#: commands/aggregatecmds.c:222
 #, c-format
 msgid "aggregate msfunc must be specified when mstype is specified"
 msgstr "debe especificarse la función de transición msfunc cuando se especifica mstype"
 
-#: commands/aggregatecmds.c:225
+#: commands/aggregatecmds.c:226
 #, c-format
 msgid "aggregate minvfunc must be specified when mstype is specified"
 msgstr "debe especificarse la función de transición minvfunc cuando se especifica mstype"
 
-#: commands/aggregatecmds.c:232
+#: commands/aggregatecmds.c:233
 #, c-format
 msgid "aggregate msfunc must not be specified without mstype"
 msgstr "no debe especificarse msfunc sin mstype"
 
-#: commands/aggregatecmds.c:236
+#: commands/aggregatecmds.c:237
 #, c-format
 msgid "aggregate minvfunc must not be specified without mstype"
 msgstr "no debe especificarse minvfunc sin mstype"
 
-#: commands/aggregatecmds.c:240
+#: commands/aggregatecmds.c:241
 #, c-format
 msgid "aggregate mfinalfunc must not be specified without mstype"
 msgstr "no debe especificarse mfinalfunc sin mstype"
 
-#: commands/aggregatecmds.c:244
+#: commands/aggregatecmds.c:245
 #, c-format
 msgid "aggregate msspace must not be specified without mstype"
 msgstr "no debe especificarse msspace sin mstype"
 
-#: commands/aggregatecmds.c:248
+#: commands/aggregatecmds.c:249
 #, c-format
 msgid "aggregate minitcond must not be specified without mstype"
 msgstr "no debe especificarse minitcond sin mstype"
 
-#: commands/aggregatecmds.c:277
+#: commands/aggregatecmds.c:278
 #, c-format
 msgid "aggregate input type must be specified"
 msgstr "debe especificarse el tipo de entrada de la función de agregación"
 
-#: commands/aggregatecmds.c:307
+#: commands/aggregatecmds.c:308
 #, c-format
 msgid "basetype is redundant with aggregate input type specification"
 msgstr "el tipo base es redundante con el tipo de entrada en la función de agregación"
 
-#: commands/aggregatecmds.c:350 commands/aggregatecmds.c:391
+#: commands/aggregatecmds.c:351 commands/aggregatecmds.c:392
 #, c-format
 msgid "aggregate transition data type cannot be %s"
 msgstr "el tipo de transición de la función de agregación no puede ser %s"
 
-#: commands/aggregatecmds.c:362
+#: commands/aggregatecmds.c:363
 #, c-format
 msgid "serialization functions may be specified only when the aggregate transition data type is %s"
 msgstr "las funciones de serialización pueden especificarse sólo cuando el tipo de transición de la función de agregación es %s"
 
-#: commands/aggregatecmds.c:372
+#: commands/aggregatecmds.c:373
 #, c-format
 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:437 commands/functioncmds.c:643
+#: commands/aggregatecmds.c:438 commands/functioncmds.c:639
 #, c-format
 msgid "parameter \"parallel\" must be SAFE, RESTRICTED, or UNSAFE"
 msgstr "el parámetro «parallel» debe ser SAFE, RESTRICTED o UNSAFE"
 
-#: commands/aggregatecmds.c:493
+#: commands/aggregatecmds.c:494
 #, c-format
 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:84 commands/event_trigger.c:174
+#: commands/alter.c:86 commands/event_trigger.c:174
 #, c-format
 msgid "event trigger \"%s\" already exists"
 msgstr "el disparador por eventos «%s» ya existe"
 
-#: commands/alter.c:87 commands/foreigncmds.c:593
+#: commands/alter.c:89 commands/foreigncmds.c:593
 #, c-format
 msgid "foreign-data wrapper \"%s\" already exists"
 msgstr "el conector de datos externos «%s» ya existe"
 
-#: commands/alter.c:90 commands/foreigncmds.c:884
+#: commands/alter.c:92 commands/foreigncmds.c:884
 #, c-format
 msgid "server \"%s\" already exists"
 msgstr "el servidor «%s» ya existe"
 
-#: commands/alter.c:93 commands/proclang.c:133
+#: commands/alter.c:95 commands/proclang.c:133
 #, c-format
 msgid "language \"%s\" already exists"
 msgstr "ya existe el lenguaje «%s»"
 
-#: commands/alter.c:96 commands/publicationcmds.c:771
+#: commands/alter.c:98 commands/publicationcmds.c:771
 #, c-format
 msgid "publication \"%s\" already exists"
 msgstr "la publicación «%s» ya existe"
 
-#: commands/alter.c:99 commands/subscriptioncmds.c:567
+#: commands/alter.c:101 commands/subscriptioncmds.c:655
 #, c-format
 msgid "subscription \"%s\" already exists"
 msgstr "la suscripción «%s» ya existe"
 
-#: commands/alter.c:122
+#: commands/alter.c:124
 #, 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:126
+#: commands/alter.c:128
 #, 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:130
+#: commands/alter.c:132
 #, 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:134
+#: commands/alter.c:136
 #, 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:138
+#: commands/alter.c:140
 #, 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:142
+#: commands/alter.c:144
 #, 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:215
+#: commands/alter.c:217
 #, c-format
 msgid "must be superuser to rename %s"
 msgstr "debe ser superusuario para cambiar el nombre de «%s»"
 
-#: commands/alter.c:746
+#: commands/alter.c:259 commands/subscriptioncmds.c:634
+#: commands/subscriptioncmds.c:1114 commands/subscriptioncmds.c:1196
+#: commands/subscriptioncmds.c:1828
+#, c-format
+msgid "password_required=false is superuser-only"
+msgstr ""
+
+#: commands/alter.c:260 commands/subscriptioncmds.c:635
+#: commands/subscriptioncmds.c:1115 commands/subscriptioncmds.c:1197
+#: commands/subscriptioncmds.c:1829
+#, c-format
+msgid "Subscriptions with the password_required option set to false may only be created or modified by the superuser."
+msgstr ""
+
+#: commands/alter.c:775
 #, c-format
 msgid "must be superuser to set schema of %s"
 msgstr "debe ser superusuario para definir el esquema de %s"
@@ -6305,7 +6373,7 @@ msgstr "Debe ser superusuario para crear un método de acceso."
 msgid "access method \"%s\" already exists"
 msgstr "el método de acceso «%s» ya existe"
 
-#: commands/amcmds.c:154 commands/indexcmds.c:213 commands/indexcmds.c:833
+#: commands/amcmds.c:154 commands/indexcmds.c:217 commands/indexcmds.c:840
 #: commands/opclasscmds.c:375 commands/opclasscmds.c:833
 #, c-format
 msgid "access method \"%s\" does not exist"
@@ -6317,53 +6385,53 @@ msgid "handler function is not specified"
 msgstr "no se ha especificado una función manejadora"
 
 #: commands/amcmds.c:264 commands/event_trigger.c:183
-#: commands/foreigncmds.c:489 commands/proclang.c:80 commands/trigger.c:713
-#: parser/parse_clause.c:940
+#: commands/foreigncmds.c:489 commands/proclang.c:80 commands/trigger.c:709
+#: parser/parse_clause.c:941
 #, c-format
 msgid "function %s must return type %s"
 msgstr "la función %s debe retornar el tipo %s"
 
-#: commands/analyze.c:228
+#: commands/analyze.c:227
 #, c-format
 msgid "skipping \"%s\" --- cannot analyze this foreign table"
 msgstr "omitiendo «%s»: no se puede analizar esta tabla foránea"
 
-#: commands/analyze.c:245
+#: commands/analyze.c:244
 #, 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:325
+#: commands/analyze.c:324
 #, c-format
 msgid "analyzing \"%s.%s\" inheritance tree"
 msgstr "analizando la jerarquía de herencia «%s.%s»"
 
-#: commands/analyze.c:330
+#: commands/analyze.c:329
 #, c-format
 msgid "analyzing \"%s.%s\""
 msgstr "analizando «%s.%s»"
 
-#: commands/analyze.c:396
+#: 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:787
+#: commands/analyze.c:786
 #, c-format
 msgid "automatic analyze of table \"%s.%s.%s\"\n"
 msgstr "análisis automático de la tabla «%s.%s.%s»\n"
 
-#: commands/analyze.c:1334
+#: commands/analyze.c:1333
 #, 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:1414
+#: commands/analyze.c:1417
 #, 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:1512
+#: commands/analyze.c:1515
 #, 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"
@@ -6408,83 +6476,83 @@ msgstr "El proceso servidor con PID %d está entre aquellos con transacciones m
 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:128
+#: commands/cluster.c:131
 #, c-format
 msgid "unrecognized CLUSTER option \"%s\""
 msgstr "opción de CLUSTER «%s» no reconocida"
 
-#: commands/cluster.c:158 commands/cluster.c:431
+#: commands/cluster.c:162 commands/cluster.c:435
 #, c-format
 msgid "cannot cluster temporary tables of other sessions"
 msgstr "no se pueden reordenar tablas temporales de otras sesiones"
 
-#: commands/cluster.c:176
+#: commands/cluster.c:180
 #, 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:190 commands/tablecmds.c:14096 commands/tablecmds.c:15990
+#: commands/cluster.c:194 commands/tablecmds.c:14200 commands/tablecmds.c:16043
 #, c-format
 msgid "index \"%s\" for table \"%s\" does not exist"
 msgstr "no existe el índice «%s» en la tabla «%s»"
 
-#: commands/cluster.c:420
+#: commands/cluster.c:424
 #, c-format
 msgid "cannot cluster a shared catalog"
 msgstr "no se puede reordenar un catálogo compartido"
 
-#: commands/cluster.c:435
+#: commands/cluster.c:439
 #, 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:511 commands/tablecmds.c:16000
+#: commands/cluster.c:515 commands/tablecmds.c:16053
 #, c-format
 msgid "\"%s\" is not an index for table \"%s\""
 msgstr "«%s» no es un índice de la tabla «%s»"
 
-#: commands/cluster.c:519
+#: commands/cluster.c:523
 #, 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:531
+#: commands/cluster.c:535
 #, c-format
 msgid "cannot cluster on partial index \"%s\""
 msgstr "no se puede reordenar en índice parcial «%s»"
 
-#: commands/cluster.c:545
+#: commands/cluster.c:549
 #, c-format
 msgid "cannot cluster on invalid index \"%s\""
 msgstr "no se puede reordenar en el índice no válido «%s»"
 
-#: commands/cluster.c:569
+#: commands/cluster.c:573
 #, 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:948
+#: commands/cluster.c:952
 #, 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:954
+#: commands/cluster.c:958
 #, c-format
 msgid "clustering \"%s.%s\" using sequential scan and sort"
 msgstr "reordenando «%s.%s» usando un recorrido secuencial y ordenamiento"
 
-#: commands/cluster.c:959
+#: commands/cluster.c:963
 #, c-format
 msgid "vacuuming \"%s.%s\""
 msgstr "haciendo vacuum a «%s.%s»"
 
-#: commands/cluster.c:985
+#: commands/cluster.c:990
 #, fuzzy, c-format
-#| msgid "\"%s\": found %.0f removable, %.0f nonremovable row versions in %u pages"
+#| msgid "index \"%s\" now contains %.0f row versions in %u pages"
 msgid "\"%s.%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"
+msgstr "el índice «%s» ahora contiene %.0f versiones de filas en %u páginas"
 
-#: commands/cluster.c:990
+#: commands/cluster.c:995
 #, c-format
 msgid ""
 "%.0f dead row versions cannot be removed yet.\n"
@@ -6493,116 +6561,151 @@ msgstr ""
 "%.0f versiones muertas de filas no pueden ser eliminadas aún.\n"
 "%s."
 
-#: commands/collationcmds.c:106
+#: commands/cluster.c:1728
+#, fuzzy, c-format
+#| msgid "permission denied to set role \"%s\""
+msgid "permission denied to cluster \"%s\", skipping it"
+msgstr "se ha denegado el permiso para definir el rol «%s»"
+
+#: commands/collationcmds.c:112
 #, c-format
 msgid "collation attribute \"%s\" not recognized"
 msgstr "el atributo de ordenamiento (collation) «%s» no es reconocido"
 
-#: commands/collationcmds.c:119 commands/collationcmds.c:125
-#: commands/define.c:356 commands/tablecmds.c:7768
-#: replication/pgoutput/pgoutput.c:311 replication/pgoutput/pgoutput.c:334
-#: replication/pgoutput/pgoutput.c:348 replication/pgoutput/pgoutput.c:358
-#: replication/pgoutput/pgoutput.c:368 replication/pgoutput/pgoutput.c:378
-#: replication/walsender.c:1001 replication/walsender.c:1023
-#: replication/walsender.c:1033
+#: commands/collationcmds.c:125 commands/collationcmds.c:131
+#: commands/define.c:389 commands/tablecmds.c:7876
+#: replication/pgoutput/pgoutput.c:310 replication/pgoutput/pgoutput.c:333
+#: replication/pgoutput/pgoutput.c:347 replication/pgoutput/pgoutput.c:357
+#: replication/pgoutput/pgoutput.c:367 replication/pgoutput/pgoutput.c:377
+#: replication/pgoutput/pgoutput.c:387 replication/walsender.c:996
+#: replication/walsender.c:1018 replication/walsender.c:1028
 #, c-format
 msgid "conflicting or redundant options"
 msgstr "opciones contradictorias o redundantes"
 
-#: commands/collationcmds.c:120
+#: commands/collationcmds.c:126
 #, c-format
 msgid "LOCALE cannot be specified together with LC_COLLATE or LC_CTYPE."
 msgstr "LOCALE no puede configurarse junto con LC_COLLATE o LC_CTYPE."
 
-#: commands/collationcmds.c:126
+#: commands/collationcmds.c:132
 #, fuzzy, c-format
 #| msgid "option \"%s\" cannot be specified with other options"
 msgid "FROM cannot be specified together with any other options."
 msgstr "la opción «%s» no puede ser especificada con otras opciones"
 
-#: commands/collationcmds.c:174
+#: commands/collationcmds.c:191
 #, c-format
 msgid "collation \"default\" cannot be copied"
 msgstr "el ordenamiento «default» no puede copiarse"
 
-#: commands/collationcmds.c:204
+#: commands/collationcmds.c:225
 #, c-format
 msgid "unrecognized collation provider: %s"
 msgstr "proveedor de ordenamiento no reconocido: %s"
 
-#: commands/collationcmds.c:232
+#: commands/collationcmds.c:253
 #, c-format
 msgid "parameter \"lc_collate\" must be specified"
 msgstr "debe especificarse el parámetro «lc_collate»"
 
-#: commands/collationcmds.c:237
+#: commands/collationcmds.c:258
 #, c-format
 msgid "parameter \"lc_ctype\" must be specified"
 msgstr "debe especificarse el parámetro «lc_ctype»"
 
-#: commands/collationcmds.c:244
+#: commands/collationcmds.c:265
 #, fuzzy, c-format
 #| msgid "parameter \"lc_collate\" must be specified"
 msgid "parameter \"locale\" must be specified"
 msgstr "debe especificarse el parámetro «lc_collate»"
 
-#: commands/collationcmds.c:256
+#: commands/collationcmds.c:279 commands/dbcommands.c:1074
+#, fuzzy, c-format
+#| msgid "merging definition of column \"%s\" for child \"%s\""
+msgid "using standard form \"%s\" for locale \"%s\""
+msgstr "mezclando la definición de la columna «%s» en la tabla hija «%s»"
+
+#: commands/collationcmds.c:298
 #, 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:275
+#: commands/collationcmds.c:303 commands/dbcommands.c:1093
+#, fuzzy, c-format
+#| msgid "ICU locale cannot be specified unless locale provider is ICU"
+msgid "ICU rules cannot be specified unless locale provider is ICU"
+msgstr "no se puede especificar una configuración regional ICU a menos que el proveedor de configuración regional sea ICU"
+
+#: commands/collationcmds.c:322
 #, c-format
 msgid "current database's encoding is not supported with this provider"
 msgstr "la codificación de la base de datos actual no está soportada con este proveedor"
 
-#: commands/collationcmds.c:334
+#: commands/collationcmds.c:382
 #, 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:345
+#: commands/collationcmds.c:393
 #, c-format
 msgid "collation \"%s\" already exists in schema \"%s\""
 msgstr "ya existe un ordenamiento llamado «%s» en el esquema «%s»"
 
-#: commands/collationcmds.c:395 commands/dbcommands.c:2398
+#: commands/collationcmds.c:418
+#, fuzzy, c-format
+#| msgid "change the definition of a collation"
+msgid "cannot refresh version of default collation"
+msgstr "cambia la definición de un ordenamiento"
+
+#: commands/collationcmds.c:419
+#, fuzzy, c-format
+#| msgid "Use ALTER TABLE ... ALTER COLUMN ... DROP EXPRESSION instead."
+msgid "Use ALTER DATABASE ... REFRESH COLLATION VERSION instead."
+msgstr "Use ALTER TABLE ... ALTER COLUMN ... DROP EXPRESSION en su lugar."
+
+#: commands/collationcmds.c:446 commands/dbcommands.c:2447
 #, c-format
 msgid "changing version from %s to %s"
 msgstr "cambiando versión de %s a %s"
 
-#: commands/collationcmds.c:410 commands/dbcommands.c:2411
+#: commands/collationcmds.c:461 commands/dbcommands.c:2460
 #, c-format
 msgid "version has not changed"
 msgstr "la versión no ha cambiado"
 
-#: commands/collationcmds.c:532
+#: commands/collationcmds.c:493 commands/dbcommands.c:2626
 #, 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"
+msgid "database with OID %u does not exist"
+msgstr "no existe la base de datos con OID %u"
+
+#: commands/collationcmds.c:513
+#, c-format
+msgid "collation with OID %u does not exist"
+msgstr "no existe el ordenamiento (collation) con OID %u"
 
-#: commands/collationcmds.c:590
+#: commands/collationcmds.c:803
 #, c-format
 msgid "must be superuser to import system collations"
 msgstr "debe ser superusuario para importar ordenamientos del sistema"
 
-#: commands/collationcmds.c:618 commands/copyfrom.c:1499 commands/copyto.c:679
-#: libpq/be-secure-common.c:81
+#: commands/collationcmds.c:831 commands/copyfrom.c:1653 commands/copyto.c:656
+#: libpq/be-secure-common.c:59
 #, c-format
 msgid "could not execute command \"%s\": %m"
 msgstr "no se pudo ejecutar la orden «%s»: %m"
 
-#: commands/collationcmds.c:753
+#: commands/collationcmds.c:923 commands/collationcmds.c:1008
 #, c-format
 msgid "no usable system locales were found"
 msgstr "no se encontraron locales de sistema utilizables"
 
-#: commands/comment.c:61 commands/dbcommands.c:1538 commands/dbcommands.c:1735
-#: commands/dbcommands.c:1848 commands/dbcommands.c:2042
-#: commands/dbcommands.c:2284 commands/dbcommands.c:2371
-#: commands/dbcommands.c:2481 commands/dbcommands.c:2980
-#: utils/init/postinit.c:943 utils/init/postinit.c:1048
-#: utils/init/postinit.c:1065
+#: commands/comment.c:61 commands/dbcommands.c:1594 commands/dbcommands.c:1791
+#: commands/dbcommands.c:1901 commands/dbcommands.c:2099
+#: commands/dbcommands.c:2337 commands/dbcommands.c:2420
+#: commands/dbcommands.c:2530 commands/dbcommands.c:3030
+#: utils/init/postinit.c:1025 utils/init/postinit.c:1130
+#: utils/init/postinit.c:1147
 #, c-format
 msgid "database \"%s\" does not exist"
 msgstr "no existe la base de datos «%s»"
@@ -6613,12 +6716,12 @@ msgstr "no existe la base de datos «%s»"
 msgid "cannot set comment on relation \"%s\""
 msgstr "no se puede modificar la restricción «%s» en la relación «%s»"
 
-#: commands/constraint.c:63 utils/adt/ri_triggers.c:2014
+#: commands/constraint.c:63 utils/adt/ri_triggers.c:2028
 #, c-format
 msgid "function \"%s\" was not called by trigger manager"
 msgstr "la función «%s» no fue ejecutada por el manejador de triggers"
 
-#: commands/constraint.c:70 utils/adt/ri_triggers.c:2023
+#: commands/constraint.c:70 utils/adt/ri_triggers.c:2037
 #, c-format
 msgid "function \"%s\" must be fired AFTER ROW"
 msgstr "la función «%s» debe ser ejecutada AFTER ROW"
@@ -6628,323 +6731,375 @@ 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:67
+#: commands/conversioncmds.c:69
 #, c-format
 msgid "source encoding \"%s\" does not exist"
 msgstr "no existe la codificación fuente «%s»"
 
-#: commands/conversioncmds.c:74
+#: commands/conversioncmds.c:76
 #, c-format
 msgid "destination encoding \"%s\" does not exist"
 msgstr "no existe la codificación de destino «%s»"
 
-#: commands/conversioncmds.c:87
+#: commands/conversioncmds.c:89
 #, c-format
 msgid "encoding conversion to or from \"SQL_ASCII\" is not supported"
 msgstr "la conversión de codificación desde o hacia a «SQL_ASCII» no está soportada"
 
-#: commands/conversioncmds.c:100
+#: commands/conversioncmds.c:102
 #, 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/conversioncmds.c:130
+#: commands/conversioncmds.c:132
 #, c-format
 msgid "encoding conversion function %s returned incorrect result for empty input"
 msgstr "la función de conversión de codificación %s retornó un resultado incorrecto para una entrada vacía"
 
 #: commands/copy.c:86
 #, fuzzy, c-format
-#| msgid "must be superuser or a member of the pg_execute_server_program role to COPY to or from an external program"
-msgid "must be superuser or have privileges 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"
+#| msgid "permission denied to create role"
+msgid "permission denied to COPY to or from an external program"
+msgstr "se ha denegado el permiso para crear el rol"
+
+#: commands/copy.c:87
+#, c-format
+msgid "Only roles with privileges of the \"%s\" role may COPY to or from an external program."
+msgstr ""
 
-#: commands/copy.c:87 commands/copy.c:96 commands/copy.c:103
+#: commands/copy.c:89 commands/copy.c:100 commands/copy.c:109
 #, c-format
 msgid "Anyone can COPY to stdout or from stdin. psql's \\copy command also works 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:95
+#: commands/copy.c:97
 #, fuzzy, c-format
-#| msgid "must be superuser or a member of the pg_read_server_files role to COPY from a file"
-msgid "must be superuser or have privileges 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"
+#| msgid "permission denied to drop role"
+msgid "permission denied to COPY from a file"
+msgstr "se ha denegado el permiso para eliminar el rol"
+
+#: commands/copy.c:98
+#, c-format
+msgid "Only roles with privileges of the \"%s\" role may COPY from a file."
+msgstr ""
 
-#: commands/copy.c:102
+#: commands/copy.c:106
 #, fuzzy, c-format
-#| msgid "must be superuser or a member of the pg_write_server_files role to COPY to a file"
-msgid "must be superuser or have privileges 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"
+#| msgid "permission denied to drop role"
+msgid "permission denied to COPY to a file"
+msgstr "se ha denegado el permiso para eliminar el rol"
+
+#: commands/copy.c:107
+#, c-format
+msgid "Only roles with privileges of the \"%s\" role may COPY to a file."
+msgstr ""
 
-#: commands/copy.c:188
+#: commands/copy.c:195
 #, 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:189
+#: commands/copy.c:196
 #, c-format
 msgid "Use INSERT statements instead."
 msgstr "Use sentencias INSERT en su lugar."
 
-#: commands/copy.c:280
+#: commands/copy.c:290
 #, fuzzy, c-format
 #| msgid "\"EEEE\" not supported for input"
 msgid "MERGE not supported in COPY"
 msgstr "«EEEE» no está soportado en la entrada"
 
-#: commands/copy.c:373
+#: commands/copy.c:383
 #, c-format
 msgid "cannot use \"%s\" with HEADER in COPY TO"
 msgstr "no se puede usar «%s» con HEADER en COPY TO"
 
-#: commands/copy.c:382
+#: commands/copy.c:392
 #, fuzzy, c-format
 #| msgid "%s requires a Boolean value"
 msgid "%s requires a Boolean value or \"match\""
 msgstr "«%s» requiere un valor lógico (booleano)"
 
-#: commands/copy.c:441
+#: commands/copy.c:451
 #, c-format
 msgid "COPY format \"%s\" not recognized"
 msgstr "el formato de COPY «%s» no es reconocido"
 
-#: commands/copy.c:493 commands/copy.c:506 commands/copy.c:519
-#: commands/copy.c:538
+#: commands/copy.c:509 commands/copy.c:522 commands/copy.c:535
+#: commands/copy.c:554
 #, c-format
 msgid "argument to option \"%s\" must be a list of column names"
 msgstr "el argumento de la opción «%s» debe ser una lista de nombres de columna"
 
-#: commands/copy.c:550
+#: commands/copy.c:566
 #, 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:557 commands/dbcommands.c:849 commands/dbcommands.c:2232
+#: commands/copy.c:573 commands/dbcommands.c:859 commands/dbcommands.c:2285
 #, c-format
 msgid "option \"%s\" not recognized"
 msgstr "no se reconoce la opción «%s»"
 
-#: commands/copy.c:569
+#: commands/copy.c:585
 #, c-format
 msgid "cannot specify DELIMITER in BINARY mode"
 msgstr "no se puede especificar DELIMITER en modo BINARY"
 
-#: commands/copy.c:574
+#: commands/copy.c:590
 #, c-format
 msgid "cannot specify NULL in BINARY mode"
 msgstr "no se puede especificar NULL en modo BINARY"
 
-#: commands/copy.c:596
+#: commands/copy.c:595
+#, fuzzy, c-format
+#| msgid "cannot specify NULL in BINARY mode"
+msgid "cannot specify DEFAULT in BINARY mode"
+msgstr "no se puede especificar NULL en modo BINARY"
+
+#: commands/copy.c:617
 #, 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:603
+#: commands/copy.c:624
 #, 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:609
+#: commands/copy.c:630
 #, 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:626
+#: commands/copy.c:640
+#, fuzzy, c-format
+#| msgid "COPY null representation cannot use newline or carriage return"
+msgid "COPY default 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:658
 #, c-format
 msgid "COPY delimiter cannot be \"%s\""
 msgstr "el delimitador de COPY no puede ser «%s»"
 
-#: commands/copy.c:632
+#: commands/copy.c:664
 #, fuzzy, c-format
 #| msgid "cannot specify DELIMITER in BINARY mode"
 msgid "cannot specify HEADER in BINARY mode"
 msgstr "no se puede especificar DELIMITER en modo BINARY"
 
-#: commands/copy.c:638
+#: commands/copy.c:670
 #, 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:643
+#: commands/copy.c:675
 #, 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:648
+#: commands/copy.c:680
 #, 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:654
+#: commands/copy.c:686
 #, c-format
 msgid "COPY escape available only in CSV mode"
 msgstr "escape de COPY disponible sólo en modo CSV"
 
-#: commands/copy.c:659
+#: commands/copy.c:691
 #, 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:665
+#: commands/copy.c:697
 #, 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:669
+#: commands/copy.c:701
 #, 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:675
+#: commands/copy.c:707
 #, 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:679
+#: commands/copy.c:711
 #, 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:685
+#: commands/copy.c:717
 #, 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:690
+#: commands/copy.c:722
 #, 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:696
+#: commands/copy.c:728
 #, 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:703
+#: commands/copy.c:735
 #, 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:764
+#: commands/copy.c:742
+#, fuzzy, c-format
+#| msgid "COPY force null only available using COPY FROM"
+msgid "COPY DEFAULT only available using COPY FROM"
+msgstr "el forzado de nulos en COPY sólo está disponible usando COPY FROM"
+
+#: commands/copy.c:748
+#, fuzzy, c-format
+#| msgid "COPY delimiter must not appear in the NULL specification"
+msgid "COPY delimiter must not appear in the DEFAULT specification"
+msgstr "el delimitador de COPY no debe aparecer en la especificación NULL"
+
+#: commands/copy.c:755
+#, fuzzy, c-format
+#| msgid "CSV quote character must not appear in the NULL specification"
+msgid "CSV quote character must not appear in the DEFAULT specification"
+msgstr "el carácter de «quote» de CSV no debe aparecer en la especificación NULL"
+
+#: commands/copy.c:763
+#, c-format
+msgid "NULL specification and DEFAULT specification cannot be the same"
+msgstr ""
+
+#: commands/copy.c:825
 #, c-format
 msgid "column \"%s\" is a generated column"
 msgstr "la columna «%s» es una columna generada"
 
-#: commands/copy.c:766
+#: commands/copy.c:827
 #, c-format
 msgid "Generated columns cannot be used in COPY."
 msgstr "Las columnas generadas no pueden usarse en COPY."
 
-#: commands/copy.c:781 commands/indexcmds.c:1833 commands/statscmds.c:243
-#: commands/tablecmds.c:2379 commands/tablecmds.c:3035
-#: commands/tablecmds.c:3529 parser/parse_relation.c:3655
-#: parser/parse_relation.c:3675 utils/adt/tsvector_op.c:2685
+#: commands/copy.c:842 commands/indexcmds.c:1894 commands/statscmds.c:242
+#: commands/tablecmds.c:2405 commands/tablecmds.c:3127
+#: commands/tablecmds.c:3626 parser/parse_relation.c:3688
+#: parser/parse_relation.c:3698 parser/parse_relation.c:3716
+#: parser/parse_relation.c:3723 parser/parse_relation.c:3737
+#: utils/adt/tsvector_op.c:2855
 #, c-format
 msgid "column \"%s\" does not exist"
 msgstr "no existe la columna «%s»"
 
-#: commands/copy.c:788 commands/tablecmds.c:2405 commands/trigger.c:967
-#: parser/parse_target.c:1079 parser/parse_target.c:1090
+#: commands/copy.c:849 commands/tablecmds.c:2431 commands/trigger.c:958
+#: parser/parse_target.c:1070 parser/parse_target.c:1081
 #, c-format
 msgid "column \"%s\" specified more than once"
 msgstr "la columna «%s» fue especificada más de una vez"
 
-#: commands/copyfrom.c:123
-#, fuzzy, c-format
-#| msgid "COPY %s, line %s, column %s"
+#: commands/copyfrom.c:122
+#, c-format
+msgid "COPY %s"
+msgstr ""
+
+#: commands/copyfrom.c:130
+#, c-format
 msgid "COPY %s, line %llu, column %s"
-msgstr "COPY %s, línea %s, columna %s"
+msgstr ""
 
-#: commands/copyfrom.c:128 commands/copyfrom.c:174
-#, fuzzy, c-format
-#| msgid "COPY %s, line %s"
+#: commands/copyfrom.c:135 commands/copyfrom.c:181
+#, c-format
 msgid "COPY %s, line %llu"
-msgstr "COPY %s, línea %s"
+msgstr ""
 
-#: commands/copyfrom.c:140
-#, fuzzy, c-format
-#| msgid "COPY %s, line %s, column %s: \"%s\""
+#: commands/copyfrom.c:147
+#, c-format
 msgid "COPY %s, line %llu, column %s: \"%s\""
-msgstr "COPY %s, línea %s, columna %s: «%s»"
+msgstr ""
 
-#: commands/copyfrom.c:150
-#, fuzzy, c-format
-#| msgid "COPY %s, line %s, column %s: null input"
+#: commands/copyfrom.c:157
+#, c-format
 msgid "COPY %s, line %llu, column %s: null input"
-msgstr "COPY %s, línea %s, columna %s: entrada nula"
+msgstr ""
 
-#: commands/copyfrom.c:167
-#, fuzzy, c-format
-#| msgid "COPY %s, line %s: \"%s\""
+#: commands/copyfrom.c:174
+#, c-format
 msgid "COPY %s, line %llu: \"%s\""
-msgstr "COPY %s, línea %s: «%s»"
+msgstr ""
 
-#: commands/copyfrom.c:569
+#: commands/copyfrom.c:673
 #, c-format
 msgid "cannot copy to view \"%s\""
 msgstr "no se puede copiar hacia la vista «%s»"
 
-#: commands/copyfrom.c:571
+#: commands/copyfrom.c:675
 #, c-format
 msgid "To enable copying to a view, provide an INSTEAD OF INSERT trigger."
 msgstr "Para posibilitar «copy» a una vista, provea un disparador INSTEAD OF INSERT."
 
-#: commands/copyfrom.c:575
+#: commands/copyfrom.c:679
 #, c-format
 msgid "cannot copy to materialized view \"%s\""
 msgstr "no se puede copiar hacia la vista materializada «%s»"
 
-#: commands/copyfrom.c:580
+#: commands/copyfrom.c:684
 #, c-format
 msgid "cannot copy to sequence \"%s\""
 msgstr "no se puede copiar hacia la secuencia «%s»"
 
-#: commands/copyfrom.c:585
+#: commands/copyfrom.c:689
 #, 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/copyfrom.c:625
+#: commands/copyfrom.c:729
 #, c-format
 msgid "cannot perform COPY FREEZE on a partitioned table"
 msgstr "no se puede hacer COPY FREEZE a una tabla particionada"
 
-#: commands/copyfrom.c:640
+#: commands/copyfrom.c:744
 #, 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/copyfrom.c:646
+#: commands/copyfrom.c:750
 #, 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/copyfrom.c:1267 commands/copyto.c:611
+#: commands/copyfrom.c:1411
 #, 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/copyfrom.c:1290 commands/copyto.c:634
+#: commands/copyfrom.c:1434
 #, c-format
 msgid "FORCE_NULL column \"%s\" not referenced by COPY"
 msgstr "la columna FORCE_NULL «%s» no es referenciada en COPY"
 
-#: commands/copyfrom.c:1518
+#: commands/copyfrom.c:1672
 #, 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/copyfrom.c:1531 commands/copyto.c:731
+#: commands/copyfrom.c:1685 commands/copyto.c:708
 #, c-format
 msgid "\"%s\" is a directory"
 msgstr "«%s» es un directorio"
 
-#: commands/copyfrom.c:1599 commands/copyto.c:301 libpq/be-secure-common.c:105
+#: commands/copyfrom.c:1753 commands/copyto.c:306 libpq/be-secure-common.c:83
 #, 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/copyfrom.c:1614 commands/copyto.c:306
+#: commands/copyfrom.c:1768 commands/copyto.c:311
 #, c-format
 msgid "program \"%s\" failed"
 msgstr "el programa «%s» falló"
@@ -6985,7 +7140,7 @@ msgid "could not read from COPY file: %m"
 msgstr "no se pudo leer desde archivo COPY: %m"
 
 #: commands/copyfromparse.c:278 commands/copyfromparse.c:303
-#: tcop/postgres.c:358
+#: tcop/postgres.c:377
 #, c-format
 msgid "unexpected EOF on client connection with an open transaction"
 msgstr "se encontró fin de archivo inesperado en una conexión con una transacción abierta"
@@ -7016,194 +7171,206 @@ msgstr "discordancia de nombre de columna en campo %d de la línea de encabezado
 msgid "column name mismatch in header line field %d: got \"%s\", expected \"%s\""
 msgstr "discordancia en nombre de columna en campo %d de la línea de encabezado: se obtuvo «%s», se esperaba «%s»"
 
-#: commands/copyfromparse.c:890 commands/copyfromparse.c:1495
-#: commands/copyfromparse.c:1725
+#: commands/copyfromparse.c:892 commands/copyfromparse.c:1514
+#: commands/copyfromparse.c:1770
 #, c-format
 msgid "extra data after last expected column"
 msgstr "datos extra después de la última columna esperada"
 
-#: commands/copyfromparse.c:904
+#: commands/copyfromparse.c:906
 #, c-format
 msgid "missing data for column \"%s\""
 msgstr "faltan datos en la columna «%s»"
 
-#: commands/copyfromparse.c:982
+#: commands/copyfromparse.c:999
 #, c-format
 msgid "received copy data after EOF marker"
 msgstr "se recibieron datos de copy después del marcador EOF"
 
-#: commands/copyfromparse.c:989
+#: commands/copyfromparse.c:1006
 #, c-format
 msgid "row field count is %d, expected %d"
 msgstr "la cantidad de registros es %d, pero se esperaban %d"
 
-#: commands/copyfromparse.c:1277 commands/copyfromparse.c:1294
+#: commands/copyfromparse.c:1296 commands/copyfromparse.c:1313
 #, c-format
 msgid "literal carriage return found in data"
 msgstr "se encontró un retorno de carro literal en los datos"
 
-#: commands/copyfromparse.c:1278 commands/copyfromparse.c:1295
+#: commands/copyfromparse.c:1297 commands/copyfromparse.c:1314
 #, c-format
 msgid "unquoted carriage return found in data"
 msgstr "se encontró un retorno de carro fuera de comillas en los datos"
 
-#: commands/copyfromparse.c:1280 commands/copyfromparse.c:1297
+#: commands/copyfromparse.c:1299 commands/copyfromparse.c:1316
 #, c-format
 msgid "Use \"\\r\" to represent carriage return."
 msgstr "Use «\\r» para representar el retorno de carro."
 
-#: commands/copyfromparse.c:1281 commands/copyfromparse.c:1298
+#: commands/copyfromparse.c:1300 commands/copyfromparse.c:1317
 #, 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/copyfromparse.c:1310
+#: commands/copyfromparse.c:1329
 #, c-format
 msgid "literal newline found in data"
 msgstr "se encontró un salto de línea literal en los datos"
 
-#: commands/copyfromparse.c:1311
+#: commands/copyfromparse.c:1330
 #, c-format
 msgid "unquoted newline found in data"
 msgstr "se encontró un salto de línea fuera de comillas en los datos"
 
-#: commands/copyfromparse.c:1313
+#: commands/copyfromparse.c:1332
 #, c-format
 msgid "Use \"\\n\" to represent newline."
 msgstr "Use «\\n» para representar un salto de línea."
 
-#: commands/copyfromparse.c:1314
+#: commands/copyfromparse.c:1333
 #, 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/copyfromparse.c:1360 commands/copyfromparse.c:1396
+#: commands/copyfromparse.c:1379 commands/copyfromparse.c:1415
 #, 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/copyfromparse.c:1369 commands/copyfromparse.c:1385
+#: commands/copyfromparse.c:1388 commands/copyfromparse.c:1404
 #, c-format
 msgid "end-of-copy marker corrupt"
 msgstr "marcador fin-de-copy corrupto"
 
-#: commands/copyfromparse.c:1809
+#: commands/copyfromparse.c:1706 commands/copyfromparse.c:1921
+#, fuzzy, c-format
+#| msgid "unexpected EOF in COPY data"
+msgid "unexpected DEFAULT in COPY data"
+msgstr "EOF inesperado en datos de COPY"
+
+#: commands/copyfromparse.c:1707 commands/copyfromparse.c:1922
+#, fuzzy, c-format
+#| msgid "column \"%s\" can only be updated to DEFAULT"
+msgid "Column \"%s\" has no DEFAULT value."
+msgstr "la columna «%s» sólo puede actualizarse a DEFAULT"
+
+#: commands/copyfromparse.c:1854
 #, c-format
 msgid "unterminated CSV quoted field"
 msgstr "un valor entre comillas está inconcluso"
 
-#: commands/copyfromparse.c:1885 commands/copyfromparse.c:1904
+#: commands/copyfromparse.c:1956 commands/copyfromparse.c:1975
 #, c-format
 msgid "unexpected EOF in COPY data"
 msgstr "EOF inesperado en datos de COPY"
 
-#: commands/copyfromparse.c:1894
+#: commands/copyfromparse.c:1965
 #, c-format
 msgid "invalid field size"
 msgstr "el tamaño de campo no es válido"
 
-#: commands/copyfromparse.c:1917
+#: commands/copyfromparse.c:1988
 #, c-format
 msgid "incorrect binary data format"
 msgstr "el formato de datos binarios es incorrecto"
 
-#: commands/copyto.c:234
+#: commands/copyto.c:236
 #, c-format
 msgid "could not write to COPY program: %m"
 msgstr "no se pudo escribir al programa COPY: %m"
 
-#: commands/copyto.c:239
+#: commands/copyto.c:241
 #, c-format
 msgid "could not write to COPY file: %m"
 msgstr "no se pudo escribir archivo COPY: %m"
 
-#: commands/copyto.c:369
+#: commands/copyto.c:386
 #, c-format
 msgid "cannot copy from view \"%s\""
 msgstr "no se puede copiar desde la vista «%s»"
 
-#: commands/copyto.c:371 commands/copyto.c:377 commands/copyto.c:383
-#: commands/copyto.c:394
+#: commands/copyto.c:388 commands/copyto.c:394 commands/copyto.c:400
+#: commands/copyto.c:411
 #, c-format
 msgid "Try the COPY (SELECT ...) TO variant."
 msgstr "Intente la forma COPY (SELECT ...) TO."
 
-#: commands/copyto.c:375
+#: commands/copyto.c:392
 #, c-format
 msgid "cannot copy from materialized view \"%s\""
 msgstr "no se puede copiar desde la vista materializada «%s»"
 
-#: commands/copyto.c:381
+#: commands/copyto.c:398
 #, c-format
 msgid "cannot copy from foreign table \"%s\""
 msgstr "no se puede copiar desde la tabla foránea «%s»"
 
-#: commands/copyto.c:387
+#: commands/copyto.c:404
 #, c-format
 msgid "cannot copy from sequence \"%s\""
 msgstr "no se puede copiar desde la secuencia «%s»"
 
-#: commands/copyto.c:392
+#: commands/copyto.c:409
 #, c-format
 msgid "cannot copy from partitioned table \"%s\""
 msgstr "no se puede hacer copy de la tabla particionada «%s»"
 
-#: commands/copyto.c:398
+#: commands/copyto.c:415
 #, 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/copyto.c:450
+#: commands/copyto.c:467
 #, 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/copyto.c:464
+#: commands/copyto.c:481
 #, 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/copyto.c:468
+#: commands/copyto.c:485
 #, c-format
 msgid "DO ALSO rules are not supported for the COPY"
 msgstr "las reglas DO ALSO no están soportadas para COPY"
 
-#: commands/copyto.c:473
+#: commands/copyto.c:490
 #, 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/copyto.c:483
+#: commands/copyto.c:500
 #, c-format
 msgid "COPY (SELECT INTO) is not supported"
 msgstr "COPY (SELECT INTO) no está soportado"
 
-#: commands/copyto.c:500
+#: commands/copyto.c:517
 #, c-format
 msgid "COPY query must have a RETURNING clause"
 msgstr "la consulta COPY debe tener una cláusula RETURNING"
 
-#: commands/copyto.c:529
+#: commands/copyto.c:546
 #, c-format
 msgid "relation referenced by COPY statement has changed"
 msgstr "la relación referenciada por la sentencia COPY ha cambiado"
 
-#: commands/copyto.c:588
+#: commands/copyto.c:605
 #, c-format
 msgid "FORCE_QUOTE column \"%s\" not referenced by COPY"
 msgstr "la columna FORCE_QUOTE «%s» no es referenciada en COPY"
 
-#: commands/copyto.c:696
+#: commands/copyto.c:673
 #, c-format
 msgid "relative path not allowed for COPY to file"
 msgstr "no se permiten rutas relativas para COPY hacia un archivo"
 
-#: commands/copyto.c:715
+#: commands/copyto.c:692
 #, c-format
 msgid "could not open file \"%s\" for writing: %m"
 msgstr "no se pudo abrir el archivo «%s» para escritura: %m"
 
-#: commands/copyto.c:718
+#: commands/copyto.c:695
 #, c-format
 msgid "COPY TO instructs the PostgreSQL server process to write a file. You may 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."
@@ -7218,358 +7385,370 @@ msgstr "se especificaron demasiados nombres de columna"
 msgid "policies not yet implemented for this command"
 msgstr "las políticas no están implementadas para esta orden"
 
-#: commands/dbcommands.c:812
+#: commands/dbcommands.c:822
 #, c-format
 msgid "LOCATION is not supported anymore"
 msgstr "LOCATION ya no está soportado"
 
-#: commands/dbcommands.c:813
+#: commands/dbcommands.c:823
 #, c-format
 msgid "Consider using tablespaces instead."
 msgstr "Considere usar tablespaces."
 
-#: commands/dbcommands.c:838
+#: commands/dbcommands.c:848
 #, c-format
 msgid "OIDs less than %u are reserved for system objects"
 msgstr "los OIDs menores que %u están reservados para objetos del sistema"
 
-#: commands/dbcommands.c:869 utils/adt/ascii.c:145
+#: commands/dbcommands.c:879 utils/adt/ascii.c:146
 #, c-format
 msgid "%d is not a valid encoding code"
 msgstr "%d no es un código válido de codificación"
 
-#: commands/dbcommands.c:880 utils/adt/ascii.c:127
+#: commands/dbcommands.c:890 utils/adt/ascii.c:128
 #, c-format
 msgid "%s is not a valid encoding name"
 msgstr "%s no es un nombre válido de codificación"
 
-#: commands/dbcommands.c:907
+#: commands/dbcommands.c:919
 #, c-format
 msgid "unrecognized locale provider: %s"
 msgstr "proveedor de ordenamiento no reconocido: %s"
 
-#: commands/dbcommands.c:920 commands/dbcommands.c:2265 commands/user.c:237
-#: commands/user.c:611
+#: commands/dbcommands.c:932 commands/dbcommands.c:2318 commands/user.c:300
+#: commands/user.c:740
 #, c-format
 msgid "invalid connection limit: %d"
 msgstr "límite de conexión no válido: %d"
 
-#: commands/dbcommands.c:941
+#: commands/dbcommands.c:953
 #, c-format
 msgid "permission denied to create database"
 msgstr "se ha denegado el permiso para crear la base de datos"
 
-#: commands/dbcommands.c:965
+#: commands/dbcommands.c:977
 #, c-format
 msgid "template database \"%s\" does not exist"
 msgstr "no existe la base de datos patrón «%s»"
 
-#: commands/dbcommands.c:977
+#: commands/dbcommands.c:989
 #, 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:994
+#: commands/dbcommands.c:1006
 #, fuzzy, c-format
-#| msgid "invalid creation date in header"
+#| msgid "invalid parameter list format: \"%s\""
 msgid "invalid create database strategy \"%s\""
-msgstr "la fecha de creación en el encabezado no es válida"
+msgstr "el formato de la lista de parámetros no es válido: «%s»"
 
-#: commands/dbcommands.c:995
+#: commands/dbcommands.c:1007
 #, fuzzy, c-format
 #| msgid "Valid values are \"local\" and \"cascaded\"."
 msgid "Valid strategies are \"wal_log\", and \"file_copy\"."
 msgstr "Los valores aceptables son «local» y «cascaded»."
 
-#: commands/dbcommands.c:1014
+#: commands/dbcommands.c:1028
 #, c-format
 msgid "invalid server encoding %d"
 msgstr "la codificación de servidor %d no es válida"
 
-#: commands/dbcommands.c:1020 commands/dbcommands.c:1025
+#: commands/dbcommands.c:1034 commands/dbcommands.c:1039
 #, c-format
 msgid "invalid locale name: \"%s\""
 msgstr "nombre de configuración regional no válido: «%s»"
 
-#: commands/dbcommands.c:1035
+#: commands/dbcommands.c:1049
 #, fuzzy, c-format
 #| msgid "encoding \"%s\" not supported by ICU"
 msgid "encoding \"%s\" is not supported with ICU provider"
-msgstr "la codificación Â«%s» no está soportada por ICU"
+msgstr "la codificación Â«%s» no estæ soportada por ICU"
 
-#: commands/dbcommands.c:1045
+#: commands/dbcommands.c:1059
 #, c-format
 msgid "ICU locale must be specified"
 msgstr "el locale ICU debe ser especificado"
 
-#: commands/dbcommands.c:1054
+#: commands/dbcommands.c:1088
 #, c-format
 msgid "ICU locale cannot be specified unless locale provider is ICU"
 msgstr "no se puede especificar una configuración regional ICU a menos que el proveedor de configuración regional sea ICU"
 
-#: commands/dbcommands.c:1072
+#: commands/dbcommands.c:1111
 #, 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:1075
+#: commands/dbcommands.c:1114
 #, 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:1080
+#: commands/dbcommands.c:1119
 #, 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:1082
+#: commands/dbcommands.c:1121
 #, 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:1087
+#: commands/dbcommands.c:1126
 #, 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:1089
+#: commands/dbcommands.c:1128
 #, 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:1094
+#: commands/dbcommands.c:1133
 #, fuzzy, c-format
 #| msgid "new encoding (%s) is incompatible with the encoding of the template database (%s)"
 msgid "new locale provider (%s) does not match locale provider 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:1096
+#: commands/dbcommands.c:1135
 #, fuzzy, c-format
 #| msgid "Use the same encoding as in the template database, or use template0 as template."
 msgid "Use the same locale provider 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:1105
+#: commands/dbcommands.c:1147
 #, fuzzy, c-format
 #| msgid "new collation (%s) is incompatible with the collation of the template database (%s)"
 msgid "new ICU locale (%s) is incompatible with the ICU locale 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:1107
+#: commands/dbcommands.c:1149
 #, fuzzy, c-format
 #| msgid "Use the same collation as in the template database, or use template0 as template."
 msgid "Use the same ICU locale 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:1130
+#: commands/dbcommands.c:1160
 #, fuzzy, c-format
-msgid "template database \"%s\" has a collation version, but no actual collation version could be determined"
-msgstr "la base de datos patrón «%s» tiene una versión de ordenamiento, pero no se pudo determinar una "
+#| msgid "new collation (%s) is incompatible with the collation of the template database (%s)"
+msgid "new ICU collation rules (%s) are incompatible with the ICU collation rules 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:1135
+#: commands/dbcommands.c:1162
 #, fuzzy, c-format
-#| msgid "template database \"%s\" does not exist"
+#| msgid "Use the same collation as in the template database, or use template0 as template."
+msgid "Use the same ICU collation rules 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:1185
+#, c-format
+msgid "template database \"%s\" has a collation version, but no actual collation version could be determined"
+msgstr ""
+
+#: commands/dbcommands.c:1190
+#, fuzzy, c-format
+#| msgid "template database \"%s\" does not exist"
 msgid "template database \"%s\" has a collation version mismatch"
 msgstr "no existe la base de datos patrón «%s»"
 
-#: commands/dbcommands.c:1137
+#: commands/dbcommands.c:1192
 #, fuzzy, c-format
 #| msgid "The collation in the database was created using version %s, but the operating system provides version %s."
 msgid "The template database was created using collation 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."
 
-#: commands/dbcommands.c:1140
+#: commands/dbcommands.c:1195
 #, fuzzy, 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."
 msgid "Rebuild all objects in the template database that use the default collation and run ALTER DATABASE %s REFRESH COLLATION 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."
 
-#: commands/dbcommands.c:1176 commands/dbcommands.c:1894
+#: commands/dbcommands.c:1231 commands/dbcommands.c:1947
 #, 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:1202
+#: commands/dbcommands.c:1257
 #, c-format
 msgid "cannot assign new default tablespace \"%s\""
 msgstr "no se puede asignar el nuevo tablespace por omisión «%s»"
 
-#: commands/dbcommands.c:1204
+#: commands/dbcommands.c:1259
 #, 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:1234 commands/dbcommands.c:1764
+#: commands/dbcommands.c:1289 commands/dbcommands.c:1820
 #, c-format
 msgid "database \"%s\" already exists"
 msgstr "la base de datos «%s» ya existe"
 
-#: commands/dbcommands.c:1248
+#: commands/dbcommands.c:1303
 #, 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:1270
+#: commands/dbcommands.c:1325
 #, fuzzy, c-format
 #| msgid "database \"%s\" already exists"
 msgid "database OID %u is already in use by database \"%s\""
 msgstr "la base de datos «%s» ya existe"
 
-#: commands/dbcommands.c:1276
+#: commands/dbcommands.c:1331
 #, c-format
 msgid "data directory with the specified OID %u already exists"
 msgstr "el directorio de datos con el OID %u especificado ya existe"
 
-#: commands/dbcommands.c:1447 commands/dbcommands.c:1462
+#: commands/dbcommands.c:1503 commands/dbcommands.c:1518
 #, 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:1450
+#: commands/dbcommands.c:1506
 #, 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:1465
+#: commands/dbcommands.c:1521
 #, 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:1545
+#: commands/dbcommands.c:1601
 #, c-format
 msgid "database \"%s\" does not exist, skipping"
 msgstr "no existe la base de datos «%s», omitiendo"
 
-#: commands/dbcommands.c:1569
+#: commands/dbcommands.c:1625
 #, c-format
 msgid "cannot drop a template database"
 msgstr "no se puede borrar una base de datos patrón"
 
-#: commands/dbcommands.c:1575
+#: commands/dbcommands.c:1631
 #, c-format
 msgid "cannot drop the currently open database"
 msgstr "no se puede eliminar la base de datos activa"
 
-#: commands/dbcommands.c:1588
+#: commands/dbcommands.c:1644
 #, 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:1590
+#: commands/dbcommands.c:1646
 #, 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:1604
+#: commands/dbcommands.c:1660
 #, 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:1606
+#: commands/dbcommands.c:1662
 #, 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:1627 commands/dbcommands.c:1786
-#: commands/dbcommands.c:1916
+#: commands/dbcommands.c:1683 commands/dbcommands.c:1842
+#: commands/dbcommands.c:1969
 #, 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:1746
+#: commands/dbcommands.c:1802
 #, 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:1775
+#: commands/dbcommands.c:1831
 #, c-format
 msgid "current database cannot be renamed"
 msgstr "no se puede cambiar el nombre de la base de datos activa"
 
-#: commands/dbcommands.c:1872
+#: commands/dbcommands.c:1925
 #, 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:1978
+#: commands/dbcommands.c:2031
 #, 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:1980
+#: commands/dbcommands.c:2033
 #, 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:2107 commands/dbcommands.c:2818
-#: commands/dbcommands.c:3082 commands/dbcommands.c:3196
+#: commands/dbcommands.c:2160 commands/dbcommands.c:2868
+#: commands/dbcommands.c:3132 commands/dbcommands.c:3245
 #, 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:2168
+#: commands/dbcommands.c:2221
 #, c-format
 msgid "unrecognized DROP DATABASE option \"%s\""
 msgstr "opción de DROP DATABASE «%s» no reconocida"
 
-#: commands/dbcommands.c:2246
+#: commands/dbcommands.c:2299
 #, 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:2302
+#: commands/dbcommands.c:2355
 #, 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:2521
+#: commands/dbcommands.c:2570
 #, 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:2924
+#: commands/dbcommands.c:2974
 #, 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:2927
+#: commands/dbcommands.c:2977
 #, 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:2932 storage/ipc/procarray.c:3814
+#: commands/dbcommands.c:2982 storage/ipc/procarray.c:3798
 #, c-format
 msgid "There is %d prepared transaction using the database."
 msgid_plural "There are %d prepared transactions using the database."
 msgstr[0] "Hay %d otra transacción preparada usando la base de datos."
 msgstr[1] "Hay otras %d transacciones preparadas usando la base de datos."
 
-#: commands/dbcommands.c:3038
+#: commands/dbcommands.c:3088
 #, fuzzy, c-format
 #| msgid "removing WAL directory \"%s\""
 msgid "missing directory \"%s\""
 msgstr "eliminando el directorio de WAL «%s»"
 
-#: commands/dbcommands.c:3098 commands/tablespace.c:190
-#: commands/tablespace.c:654
+#: commands/dbcommands.c:3146 commands/tablespace.c:190
+#: commands/tablespace.c:639
 #, c-format
 msgid "could not stat directory \"%s\": %m"
 msgstr "no se pudo hacer stat al directorio «%s»: %m"
 
-#: commands/define.c:54 commands/define.c:225 commands/define.c:257
-#: commands/define.c:285 commands/define.c:331
+#: commands/define.c:54 commands/define.c:258 commands/define.c:290
+#: commands/define.c:318 commands/define.c:364
 #, c-format
 msgid "%s requires a parameter"
 msgstr "%s requiere un parámetro"
 
 #: commands/define.c:87 commands/define.c:98 commands/define.c:192
-#: commands/define.c:210
+#: commands/define.c:210 commands/define.c:225 commands/define.c:243
 #, c-format
 msgid "%s requires a numeric value"
 msgstr "%s requiere un valor numérico"
@@ -7579,50 +7758,50 @@ msgstr "%s requiere un valor numérico"
 msgid "%s requires a Boolean value"
 msgstr "«%s» requiere un valor lógico (booleano)"
 
-#: commands/define.c:168 commands/define.c:177 commands/define.c:294
+#: commands/define.c:168 commands/define.c:177 commands/define.c:327
 #, c-format
 msgid "%s requires an integer value"
 msgstr "%s requiere valor entero"
 
-#: commands/define.c:239
+#: commands/define.c:272
 #, c-format
 msgid "argument of %s must be a name"
 msgstr "el argumento de %s debe ser un nombre"
 
-#: commands/define.c:269
+#: commands/define.c:302
 #, c-format
 msgid "argument of %s must be a type name"
 msgstr "el argumento de %s debe ser un nombre de tipo"
 
-#: commands/define.c:315
+#: commands/define.c:348
 #, c-format
 msgid "invalid argument for %s: \"%s\""
 msgstr "argumento no válido para %s: «%s»"
 
-#: commands/dropcmds.c:100 commands/functioncmds.c:1394
-#: utils/adt/ruleutils.c:2908
+#: commands/dropcmds.c:101 commands/functioncmds.c:1387
+#: utils/adt/ruleutils.c:2881
 #, c-format
 msgid "\"%s\" is an aggregate function"
 msgstr "«%s» es una función de agregación"
 
-#: commands/dropcmds.c:102
+#: commands/dropcmds.c:103
 #, c-format
 msgid "Use DROP AGGREGATE to drop aggregate functions."
 msgstr "Use DROP AGGREGATE para eliminar funciones de agregación."
 
-#: commands/dropcmds.c:158 commands/sequence.c:475 commands/tablecmds.c:3613
-#: commands/tablecmds.c:3771 commands/tablecmds.c:3823
-#: commands/tablecmds.c:16423 tcop/utility.c:1332
+#: commands/dropcmds.c:158 commands/sequence.c:474 commands/tablecmds.c:3710
+#: commands/tablecmds.c:3868 commands/tablecmds.c:3920
+#: commands/tablecmds.c:16468 tcop/utility.c:1335
 #, c-format
 msgid "relation \"%s\" does not exist, skipping"
 msgstr "no existe la relación «%s», omitiendo"
 
-#: commands/dropcmds.c:188 commands/dropcmds.c:287 commands/tablecmds.c:1278
+#: commands/dropcmds.c:188 commands/dropcmds.c:287 commands/tablecmds.c:1285
 #, c-format
 msgid "schema \"%s\" does not exist, skipping"
 msgstr "el esquema «%s» no existe, omitiendo"
 
-#: commands/dropcmds.c:228 commands/dropcmds.c:267 commands/tablecmds.c:276
+#: commands/dropcmds.c:228 commands/dropcmds.c:267 commands/tablecmds.c:277
 #, c-format
 msgid "type \"%s\" does not exist, skipping"
 msgstr "el tipo «%s» no existe, omitiendo"
@@ -7642,7 +7821,7 @@ msgstr "no existe el ordenamiento (collation) «%s», omitiendo"
 msgid "conversion \"%s\" does not exist, skipping"
 msgstr "no existe la conversión «%s», omitiendo"
 
-#: commands/dropcmds.c:293 commands/statscmds.c:655
+#: commands/dropcmds.c:293 commands/statscmds.c:654
 #, c-format
 msgid "statistics object \"%s\" does not exist, skipping"
 msgstr "no existe el objeto de estadísticas «%s», omitiendo"
@@ -7793,18 +7972,23 @@ msgstr "los disparadores por eventos no están soportados para %s"
 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:377 commands/event_trigger.c:421
-#: commands/event_trigger.c:515
+#: commands/event_trigger.c:376 commands/event_trigger.c:420
+#: commands/event_trigger.c:514
 #, c-format
 msgid "event trigger \"%s\" does not exist"
 msgstr "no existe el disparador por eventos «%s»"
 
-#: commands/event_trigger.c:483
+#: commands/event_trigger.c:452
+#, c-format
+msgid "event trigger with OID %u does not exist"
+msgstr "no existe el disparador por eventos con OID %u"
+
+#: commands/event_trigger.c:482
 #, 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:485
+#: commands/event_trigger.c:484
 #, 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."
@@ -7814,292 +7998,310 @@ msgstr "El dueño de un disparador por eventos debe ser un superusuario."
 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:1400 commands/event_trigger.c:1421
+#: commands/event_trigger.c:1397 commands/event_trigger.c:1418
 #, c-format
 msgid "%s can only be called in a table_rewrite event trigger function"
 msgstr "%s sólo puede invocarse en una función de un disparador en el evento table_rewrite"
 
-#: commands/event_trigger.c:1834
+#: commands/event_trigger.c:1831
 #, c-format
 msgid "%s can only be called in an event trigger function"
 msgstr "%s sólo puede invocarse en una función de un disparador por eventos"
 
-#: commands/explain.c:218
+#: commands/explain.c:220
 #, 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:225
+#: commands/explain.c:227
 #, c-format
 msgid "unrecognized EXPLAIN option \"%s\""
 msgstr "opción de EXPLAIN «%s» no reconocida"
 
-#: commands/explain.c:233
+#: commands/explain.c:236
 #, c-format
 msgid "EXPLAIN option WAL requires ANALYZE"
 msgstr "la opción WAL de EXPLAIN requiere ANALYZE"
 
-#: commands/explain.c:242
+#: commands/explain.c:245
 #, c-format
 msgid "EXPLAIN option TIMING requires ANALYZE"
 msgstr "la opción TIMING de EXPLAIN requiere ANALYZE"
 
-#: commands/extension.c:173 commands/extension.c:2936
+#: commands/explain.c:251
+#, fuzzy, c-format
+#| msgid "options -d/--dbname and -f/--file cannot be used together"
+msgid "EXPLAIN options ANALYZE and GENERIC_PLAN cannot be used together"
+msgstr "las opciones -d/--dbname y -f/--file no pueden usarse juntas"
+
+#: commands/extension.c:177 commands/extension.c:3009
 #, c-format
 msgid "extension \"%s\" does not exist"
 msgstr "no existe la extensión «%s»"
 
-#: commands/extension.c:272 commands/extension.c:281 commands/extension.c:293
-#: commands/extension.c:303
+#: commands/extension.c:276 commands/extension.c:285 commands/extension.c:297
+#: commands/extension.c:307
 #, c-format
 msgid "invalid extension name: \"%s\""
 msgstr "nombre de extensión no válido: «%s»"
 
-#: commands/extension.c:273
+#: commands/extension.c:277
 #, c-format
 msgid "Extension names must not be empty."
 msgstr "Los nombres de extensión no deben ser vacíos."
 
-#: commands/extension.c:282
+#: commands/extension.c:286
 #, c-format
 msgid "Extension names must not contain \"--\"."
 msgstr "Los nombres de extensión no deben contener «--»."
 
-#: commands/extension.c:294
+#: commands/extension.c:298
 #, 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:304
+#: commands/extension.c:308
 #, 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:319 commands/extension.c:328 commands/extension.c:337
-#: commands/extension.c:347
+#: commands/extension.c:323 commands/extension.c:332 commands/extension.c:341
+#: commands/extension.c:351
 #, c-format
 msgid "invalid extension version name: \"%s\""
 msgstr "nombre de versión de extensión no válido: «%s»"
 
-#: commands/extension.c:320
+#: commands/extension.c:324
 #, c-format
 msgid "Version names must not be empty."
 msgstr "Los nombres de versión no deben ser vacíos."
 
-#: commands/extension.c:329
+#: commands/extension.c:333
 #, c-format
 msgid "Version names must not contain \"--\"."
 msgstr "Los nombres de versión no deben contener «--»."
 
-#: commands/extension.c:338
+#: commands/extension.c:342
 #, 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:348
+#: commands/extension.c:352
 #, 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:502
+#: commands/extension.c:506
 #, fuzzy, c-format
 #| msgid "extension \"%s\" does not exist"
 msgid "extension \"%s\" is not available"
 msgstr "no existe la extensión «%s»"
 
-#: commands/extension.c:503
+#: commands/extension.c:507
 #, fuzzy, c-format
 #| msgid "could not open extension control file \"%s\": %m"
 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:505
+#: commands/extension.c:509
 #, c-format
 msgid "The extension must first be installed on the system where PostgreSQL is running."
 msgstr "La extensión debe primero ser instalada en el sistema donde PostgreSQL está ejecutándose."
 
-#: commands/extension.c:509
+#: commands/extension.c:513
 #, 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:531 commands/extension.c:541
+#: commands/extension.c:536 commands/extension.c:546
 #, c-format
 msgid "parameter \"%s\" cannot be set in a secondary extension control file"
 msgstr "el parámetro «%s» no se puede cambiar en un archivo control secundario de extensión"
 
-#: commands/extension.c:563 commands/extension.c:571 commands/extension.c:579
-#: utils/misc/guc.c:7390
+#: commands/extension.c:568 commands/extension.c:576 commands/extension.c:584
+#: utils/misc/guc.c:3097
 #, c-format
 msgid "parameter \"%s\" requires a Boolean value"
 msgstr "el parámetro «%s» requiere un valor lógico (booleano)"
 
-#: commands/extension.c:588
+#: commands/extension.c:593
 #, c-format
 msgid "\"%s\" is not a valid encoding name"
 msgstr "«%s» no es un nombre válido de codificación"
 
-#: commands/extension.c:602
+#: commands/extension.c:607 commands/extension.c:622
 #, c-format
 msgid "parameter \"%s\" must be a list of extension names"
 msgstr "el parámetro «%s» debe ser una lista de nombres de extensión"
 
-#: commands/extension.c:609
+#: commands/extension.c:629
 #, c-format
 msgid "unrecognized parameter \"%s\" in file \"%s\""
 msgstr "parámetro no reconocido «%s» en el archivo «%s»"
 
-#: commands/extension.c:618
+#: commands/extension.c:638
 #, 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:796
+#: commands/extension.c:816
 #, 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:873
+#: commands/extension.c:896
 #, c-format
 msgid "permission denied to create extension \"%s\""
 msgstr "se ha denegado el permiso para crear la extensión «%s»"
 
-#: commands/extension.c:876
+#: commands/extension.c:899
 #, c-format
 msgid "Must have CREATE privilege on current database to create this extension."
 msgstr "Debe tener privilegio CREATE en la base de datos actual para crear esta extensión."
 
-#: commands/extension.c:877
+#: commands/extension.c:900
 #, c-format
 msgid "Must be superuser to create this extension."
 msgstr "Debe ser superusuario para crear esta extensión."
 
-#: commands/extension.c:881
+#: commands/extension.c:904
 #, c-format
 msgid "permission denied to update extension \"%s\""
 msgstr "se ha denegado el permiso para actualizar la extensión «%s»"
 
-#: commands/extension.c:884
+#: commands/extension.c:907
 #, c-format
 msgid "Must have CREATE privilege on current database to update this extension."
 msgstr "Debe tener privilegio CREATE en la base de datos actual para actualizar esta extensión."
 
-#: commands/extension.c:885
+#: commands/extension.c:908
 #, c-format
 msgid "Must be superuser to update this extension."
 msgstr "Debe ser superusuario para actualizar esta extensión."
 
-#: commands/extension.c:1216
+#: commands/extension.c:1265
 #, 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:1424 commands/extension.c:2994
+#: commands/extension.c:1473 commands/extension.c:3067
 #, c-format
 msgid "version to install must be specified"
 msgstr "la versión a instalar debe ser especificada"
 
-#: commands/extension.c:1461
+#: commands/extension.c:1510
 #, 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:1495
+#: commands/extension.c:1544
 #, 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:1655
+#: commands/extension.c:1704
 #, 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:1660
+#: commands/extension.c:1709
 #, c-format
 msgid "installing required extension \"%s\""
 msgstr "instalando la extensión requerida «%s»"
 
-#: commands/extension.c:1683
+#: commands/extension.c:1732
 #, c-format
 msgid "required extension \"%s\" is not installed"
 msgstr "la extensión requerida «%s» no está instalada"
 
-#: commands/extension.c:1686
+#: commands/extension.c:1735
 #, 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:1721
+#: commands/extension.c:1770
 #, c-format
 msgid "extension \"%s\" already exists, skipping"
 msgstr "la extensión «%s» ya existe, omitiendo"
 
-#: commands/extension.c:1728
+#: commands/extension.c:1777
 #, c-format
 msgid "extension \"%s\" already exists"
 msgstr "la extensión «%s» ya existe"
 
-#: commands/extension.c:1739
+#: commands/extension.c:1788
 #, c-format
 msgid "nested CREATE EXTENSION is not supported"
 msgstr "los CREATE EXTENSION anidados no están soportados"
 
-#: commands/extension.c:1903
+#: commands/extension.c:1952
 #, 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:2380
+#: commands/extension.c:2427
 #, 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:2392
+#: commands/extension.c:2439
 #, c-format
 msgid "OID %u does not refer to a table"
 msgstr "el OID %u no hace referencia a una tabla"
 
-#: commands/extension.c:2397
+#: commands/extension.c:2444
 #, 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:2751
+#: commands/extension.c:2790
 #, 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:2792 commands/extension.c:2855
+#: commands/extension.c:2831 commands/extension.c:2928
 #, c-format
 msgid "extension \"%s\" does not support SET SCHEMA"
 msgstr "la extensión «%s» no soporta SET SCHEMA"
 
-#: commands/extension.c:2857
+#: commands/extension.c:2885
+#, fuzzy, c-format
+#| msgid "cannot drop extension \"%s\" because it is being modified"
+msgid "cannot SET SCHEMA of extension \"%s\" because other extensions prevent it"
+msgstr "no se puede eliminar la extensión «%s» porque está siendo modificada"
+
+#: commands/extension.c:2887
+#, fuzzy, c-format
+#| msgid "relation \"%s\" is not a partition of relation \"%s\""
+msgid "Extension \"%s\" requests no relocation of extension \"%s\"."
+msgstr "relación «%s» no es una partición de la relación «%s»"
+
+#: commands/extension.c:2930
 #, 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:2916
+#: commands/extension.c:2989
 #, c-format
 msgid "nested ALTER EXTENSION is not supported"
 msgstr "los ALTER EXTENSION anidados no están soportados"
 
-#: commands/extension.c:3005
+#: commands/extension.c:3078
 #, 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:3217
+#: commands/extension.c:3290
 #, c-format
 msgid "cannot add an object of this type to an extension"
 msgstr "no se puede añadir un objeto de este tipo a una extensión"
 
-#: commands/extension.c:3283
+#: commands/extension.c:3356
 #, 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:3377
+#: commands/extension.c:3450
 #, c-format
 msgid "file \"%s\" is too large"
 msgstr "el archivo «%s» es demasiado grande"
@@ -8129,11 +8331,21 @@ msgstr "Debe ser superusuario para cambiar el dueño de un conector de datos ext
 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:291 commands/foreigncmds.c:707 foreign/foreign.c:669
+#: commands/foreigncmds.c:291 commands/foreigncmds.c:707 foreign/foreign.c:678
 #, c-format
 msgid "foreign-data wrapper \"%s\" does not exist"
 msgstr "no existe el conector de datos externos «%s»"
 
+#: 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"
+
+#: 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"
+
 #: commands/foreigncmds.c:580
 #, c-format
 msgid "permission denied to create foreign-data wrapper \"%s\""
@@ -8189,7 +8401,7 @@ msgstr "no existe el mapeo de usuario «%s» para el servidor «%s»"
 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:1507 foreign/foreign.c:390
+#: commands/foreigncmds.c:1507 foreign/foreign.c:391
 #, c-format
 msgid "foreign-data wrapper \"%s\" has no handler"
 msgstr "el conector de datos externos «%s» no tiene manejador"
@@ -8214,688 +8426,688 @@ msgstr "una función SQL no puede retornar el tipo inconcluso %s"
 msgid "return type %s is only a shell"
 msgstr "el tipo de retorno %s está inconcluso"
 
-#: commands/functioncmds.c:144 parser/parse_type.c:354
+#: commands/functioncmds.c:143 parser/parse_type.c:354
 #, c-format
 msgid "type modifier cannot be specified for shell type \"%s\""
 msgstr "no se puede especificar un modificador de tipo para el tipo inconcluso «%s»"
 
-#: commands/functioncmds.c:150
+#: commands/functioncmds.c:149
 #, c-format
 msgid "type \"%s\" is not yet defined"
 msgstr "el tipo «%s» no ha sido definido aún"
 
-#: commands/functioncmds.c:151
+#: commands/functioncmds.c:150
 #, c-format
 msgid "Creating a shell type definition."
 msgstr "Creando una definición de tipo inconclusa."
 
-#: commands/functioncmds.c:250
+#: commands/functioncmds.c:249
 #, c-format
 msgid "SQL function cannot accept shell type %s"
 msgstr "las funciones SQL no pueden aceptar el tipo inconcluso %s"
 
-#: commands/functioncmds.c:256
+#: commands/functioncmds.c:255
 #, 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:261
+#: commands/functioncmds.c:260
 #, c-format
 msgid "argument type %s is only a shell"
 msgstr "el tipo de argumento %s está inconcluso"
 
-#: commands/functioncmds.c:271
+#: commands/functioncmds.c:270
 #, c-format
 msgid "type %s does not exist"
 msgstr "no existe el tipo %s"
 
-#: commands/functioncmds.c:285
+#: commands/functioncmds.c:284
 #, c-format
 msgid "aggregates cannot accept set arguments"
 msgstr "las funciones de agregación no pueden aceptar argumentos de conjunto"
 
-#: commands/functioncmds.c:289
+#: commands/functioncmds.c:288
 #, c-format
 msgid "procedures cannot accept set arguments"
 msgstr "los procedimientos no pueden aceptar argumentos de conjunto"
 
-#: commands/functioncmds.c:293
+#: commands/functioncmds.c:292
 #, c-format
 msgid "functions cannot accept set arguments"
 msgstr "funciones no pueden aceptar argumentos de conjunto"
 
-#: commands/functioncmds.c:303
+#: commands/functioncmds.c:302
 #, 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:323
+#: commands/functioncmds.c:322
 #, c-format
 msgid "VARIADIC parameter must be the last parameter"
 msgstr "el parámetro VARIADIC debe ser el último parámetro"
 
-#: commands/functioncmds.c:348
+#: commands/functioncmds.c:347
 #, c-format
 msgid "VARIADIC parameter must be an array"
 msgstr "el parámetro VARIADIC debe ser un array"
 
-#: commands/functioncmds.c:393
+#: commands/functioncmds.c:392
 #, 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:411
+#: commands/functioncmds.c:410
 #, 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:426
+#: commands/functioncmds.c:425
 #, 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:450
+#: commands/functioncmds.c:449
 #, 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:460
+#: commands/functioncmds.c:459
 #, c-format
 msgid "procedure OUT parameters cannot appear after one with a default value"
 msgstr "los parámetros OUT no pueden aparecer después de uno que tenga valor por omisión"
 
-#: commands/functioncmds.c:605 commands/functioncmds.c:784
+#: commands/functioncmds.c:601 commands/functioncmds.c:780
 #, c-format
 msgid "invalid attribute in procedure definition"
 msgstr "atributo no válido en definición de procedimiento"
 
-#: commands/functioncmds.c:701
+#: commands/functioncmds.c:697
 #, 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:712
+#: commands/functioncmds.c:708
 #, 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:833 commands/functioncmds.c:1439
+#: commands/functioncmds.c:829 commands/functioncmds.c:1432
 #, c-format
 msgid "COST must be positive"
 msgstr "COST debe ser positivo"
 
-#: commands/functioncmds.c:841 commands/functioncmds.c:1447
+#: commands/functioncmds.c:837 commands/functioncmds.c:1440
 #, c-format
 msgid "ROWS must be positive"
 msgstr "ROWS debe ser positivo"
 
-#: commands/functioncmds.c:870
+#: commands/functioncmds.c:866
 #, c-format
 msgid "no function body specified"
 msgstr "no se ha especificado un cuerpo para la función"
 
-#: commands/functioncmds.c:875
+#: commands/functioncmds.c:871
 #, c-format
 msgid "duplicate function body specified"
 msgstr "se ha especificado por duplicado el cuerpo para la función"
 
-#: commands/functioncmds.c:880
+#: commands/functioncmds.c:876
 #, c-format
 msgid "inline SQL function body only valid for language SQL"
 msgstr "cuerpo de función SQL en línea solo es válido para lenguaje SQL"
 
-#: commands/functioncmds.c:922
+#: commands/functioncmds.c:918
 #, c-format
 msgid "SQL function with unquoted function body cannot have polymorphic arguments"
 msgstr "una función SQL con el cuerpo de la función fuera de comillas no puede tener argumentos polimórficos"
 
-#: commands/functioncmds.c:948 commands/functioncmds.c:967
+#: commands/functioncmds.c:944 commands/functioncmds.c:963
 #, c-format
 msgid "%s is not yet supported in unquoted SQL function body"
 msgstr "%s aún no está soportado en una función SQL con el cuerpo fuera de comillas"
 
-#: commands/functioncmds.c:995
+#: commands/functioncmds.c:991
 #, 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:1100
+#: commands/functioncmds.c:1096
 #, c-format
 msgid "no language specified"
 msgstr "no se ha especificado el lenguaje"
 
-#: commands/functioncmds.c:1108 commands/functioncmds.c:2109
+#: commands/functioncmds.c:1104 commands/functioncmds.c:2105
 #: commands/proclang.c:237
 #, c-format
 msgid "language \"%s\" does not exist"
 msgstr "no existe el lenguaje «%s»"
 
-#: commands/functioncmds.c:1110 commands/functioncmds.c:2111
+#: commands/functioncmds.c:1106 commands/functioncmds.c:2107
 #, c-format
 msgid "Use CREATE EXTENSION to load the language into the database."
 msgstr "Use CREATE EXTENSION para cargar el lenguaje en la base de datos."
 
-#: commands/functioncmds.c:1145 commands/functioncmds.c:1431
+#: commands/functioncmds.c:1139 commands/functioncmds.c:1424
 #, c-format
 msgid "only superuser can define a leakproof function"
 msgstr "sólo un superusuario puede definir funciones «leakproof»"
 
-#: commands/functioncmds.c:1196
+#: commands/functioncmds.c:1190
 #, 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:1209
+#: commands/functioncmds.c:1203
 #, c-format
 msgid "function result type must be specified"
 msgstr "el tipo de retorno de la función debe ser especificado"
 
-#: commands/functioncmds.c:1263 commands/functioncmds.c:1451
+#: commands/functioncmds.c:1256 commands/functioncmds.c:1444
 #, c-format
 msgid "ROWS is not applicable when function does not return a set"
 msgstr "ROWS no es aplicable cuando una función no retorna un conjunto"
 
-#: commands/functioncmds.c:1552
+#: commands/functioncmds.c:1547
 #, c-format
 msgid "source data type %s is a pseudo-type"
 msgstr "el tipo de origen %s es un pseudotipo"
 
-#: commands/functioncmds.c:1558
+#: commands/functioncmds.c:1553
 #, c-format
 msgid "target data type %s is a pseudo-type"
 msgstr "el tipo de retorno %s es un pseudotipo"
 
-#: commands/functioncmds.c:1582
+#: commands/functioncmds.c:1577
 #, 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:1587
+#: commands/functioncmds.c:1582
 #, 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:1612
+#: commands/functioncmds.c:1607
 #, 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:1616
+#: commands/functioncmds.c:1613
 #, 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:1620
+#: commands/functioncmds.c:1617
 #, 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:1625
+#: commands/functioncmds.c:1622
 #, 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:1630
+#: commands/functioncmds.c:1629
 #, 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:1641
+#: commands/functioncmds.c:1640
 #, c-format
 msgid "cast function must not be volatile"
 msgstr "la función de conversión no debe ser volatile"
 
-#: commands/functioncmds.c:1646
+#: commands/functioncmds.c:1645
 #, 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:1650
+#: commands/functioncmds.c:1649
 #, 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:1676
+#: commands/functioncmds.c:1675
 #, 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:1691
+#: commands/functioncmds.c:1690
 #, 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:1706
+#: commands/functioncmds.c:1705
 #, c-format
 msgid "composite data types are not binary-compatible"
 msgstr "los tipos de datos compuestos no son binario-compatibles"
 
-#: commands/functioncmds.c:1712
+#: commands/functioncmds.c:1711
 #, c-format
 msgid "enum data types are not binary-compatible"
 msgstr "los tipos de datos enum no son binario-compatibles"
 
-#: commands/functioncmds.c:1718
+#: commands/functioncmds.c:1717
 #, c-format
 msgid "array data types are not binary-compatible"
 msgstr "los tipos de datos de array no son binario-compatibles"
 
-#: commands/functioncmds.c:1735
+#: commands/functioncmds.c:1734
 #, 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:1745
+#: commands/functioncmds.c:1744
 #, 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:1778
+#: commands/functioncmds.c:1777
 #, c-format
 msgid "transform function must not be volatile"
 msgstr "la función de transformación no debe ser volatile"
 
-#: commands/functioncmds.c:1782
+#: commands/functioncmds.c:1781
 #, 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:1786
+#: commands/functioncmds.c:1785
 #, 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:1790
+#: commands/functioncmds.c:1789
 #, c-format
 msgid "transform function must take one argument"
 msgstr "la función de transformación debe recibir un argumento"
 
-#: commands/functioncmds.c:1794
+#: commands/functioncmds.c:1793
 #, 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:1833
+#: commands/functioncmds.c:1832
 #, c-format
 msgid "data type %s is a pseudo-type"
 msgstr "el tipo de dato %s es un pseudo-tipo"
 
-#: commands/functioncmds.c:1839
+#: commands/functioncmds.c:1838
 #, c-format
 msgid "data type %s is a domain"
 msgstr "tipo de dato «%s» es un dominio"
 
-#: commands/functioncmds.c:1879
+#: commands/functioncmds.c:1878
 #, 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:1905
+#: commands/functioncmds.c:1904
 #, 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:1934
+#: commands/functioncmds.c:1931
 #, 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:2021
+#: commands/functioncmds.c:2017
 #, 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:2045
+#: commands/functioncmds.c:2041
 #, 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:2096
+#: commands/functioncmds.c:2092
 #, c-format
 msgid "no inline code specified"
 msgstr "no se ha especificado código"
 
-#: commands/functioncmds.c:2142
+#: commands/functioncmds.c:2138
 #, 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:2237
+#: commands/functioncmds.c:2233
 #, c-format
 msgid "cannot pass more than %d argument to a procedure"
 msgid_plural "cannot pass more than %d arguments to a procedure"
 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:634
+#: commands/indexcmds.c:641
 #, c-format
 msgid "must specify at least one column"
 msgstr "debe especificar al menos una columna"
 
-#: commands/indexcmds.c:638
+#: commands/indexcmds.c:645
 #, 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:681
+#: commands/indexcmds.c:688
 #, fuzzy, c-format
-#| msgid "cannot create index on foreign table \"%s\""
+#| msgid "cannot change relation \"%s\""
 msgid "cannot create index on relation \"%s\""
-msgstr "no se puede crear un índice en la tabla foránea «%s»"
+msgstr "no se puede cambiar la relación «%s»"
 
-#: commands/indexcmds.c:707
+#: commands/indexcmds.c:714
 #, 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:712
+#: commands/indexcmds.c:719
 #, 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:722
+#: commands/indexcmds.c:729
 #, 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:760 commands/tablecmds.c:781 commands/tablespace.c:1204
+#: commands/indexcmds.c:767 commands/tablecmds.c:784 commands/tablespace.c:1184
 #, 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:792 commands/tablecmds.c:816 commands/tablecmds.c:3312
+#: commands/indexcmds.c:799 commands/tablecmds.c:819 commands/tablecmds.c:3409
 #, 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:825
+#: commands/indexcmds.c:832
 #, 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:846
+#: commands/indexcmds.c:853
 #, 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:851
+#: commands/indexcmds.c:858
 #, 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:856
+#: commands/indexcmds.c:863
 #, 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:861
+#: commands/indexcmds.c:868
 #, 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:986
+#: commands/indexcmds.c:995
 #, c-format
 msgid "cannot match partition key to an index using access method \"%s\""
 msgstr "no se puede hacer coincidir la llave de partición a un índice usando el método de acceso «%s»"
 
-#: commands/indexcmds.c:996
+#: commands/indexcmds.c:1005
 #, 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:998
+#: commands/indexcmds.c:1007
 #, 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:1037
+#: commands/indexcmds.c:1046
 #, c-format
 msgid "unique constraint on partitioned table must include all partitioning columns"
 msgstr "las restricciones unique en tablas particionadas deben incluir todas las columnas de particionamiento"
 
-#: commands/indexcmds.c:1038
+#: commands/indexcmds.c:1047
 #, 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:1057 commands/indexcmds.c:1076
+#: commands/indexcmds.c:1066 commands/indexcmds.c:1085
 #, 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:1276 tcop/utility.c:1518
+#: commands/indexcmds.c:1314 tcop/utility.c:1525
 #, 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:1278 tcop/utility.c:1520
+#: commands/indexcmds.c:1316 tcop/utility.c:1527
 #, 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:1750
+#: commands/indexcmds.c:1811
 #, 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:1828 parser/parse_utilcmd.c:2528
-#: parser/parse_utilcmd.c:2663
+#: commands/indexcmds.c:1889 parser/parse_utilcmd.c:2513
+#: parser/parse_utilcmd.c:2648
 #, c-format
 msgid "column \"%s\" named in key does not exist"
 msgstr "no existe la columna «%s» en la llave"
 
-#: commands/indexcmds.c:1852 parser/parse_utilcmd.c:1825
+#: commands/indexcmds.c:1913 parser/parse_utilcmd.c:1812
 #, c-format
 msgid "expressions are not supported in included columns"
 msgstr "las expresiones no están soportadas en columnas incluidas"
 
-#: commands/indexcmds.c:1893
+#: commands/indexcmds.c:1954
 #, 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:1908
+#: commands/indexcmds.c:1969
 #, c-format
 msgid "including column does not support a collation"
 msgstr "la columna incluida no permite un ordenamiento (collation)"
 
-#: commands/indexcmds.c:1912
+#: commands/indexcmds.c:1973
 #, c-format
 msgid "including column does not support an operator class"
 msgstr "la columna incluida no permite una clase de operadores"
 
-#: commands/indexcmds.c:1916
+#: commands/indexcmds.c:1977
 #, c-format
 msgid "including column does not support ASC/DESC options"
 msgstr "la columna incluida no permite las opciones ASC/DESC"
 
-#: commands/indexcmds.c:1920
+#: commands/indexcmds.c:1981
 #, 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:1961
+#: commands/indexcmds.c:2022
 #, 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:1969 commands/tablecmds.c:17438 commands/typecmds.c:807
-#: parser/parse_expr.c:2690 parser/parse_type.c:570 parser/parse_utilcmd.c:3795
-#: utils/adt/misc.c:601
+#: commands/indexcmds.c:2030 commands/tablecmds.c:17497 commands/typecmds.c:807
+#: parser/parse_expr.c:2662 parser/parse_type.c:568 parser/parse_utilcmd.c:3774
+#: utils/adt/misc.c:586
 #, c-format
 msgid "collations are not supported by type %s"
 msgstr "los ordenamientos (collation) no están soportados por el tipo %s"
 
-#: commands/indexcmds.c:2034
+#: commands/indexcmds.c:2095
 #, c-format
 msgid "operator %s is not commutative"
 msgstr "el operador %s no es conmutativo"
 
-#: commands/indexcmds.c:2036
+#: commands/indexcmds.c:2097
 #, 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:2062
+#: commands/indexcmds.c:2123
 #, 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:2065
+#: commands/indexcmds.c:2126
 #, 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:2100
+#: commands/indexcmds.c:2161
 #, 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:2105
+#: commands/indexcmds.c:2166
 #, 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:2151 commands/tablecmds.c:17463
-#: commands/tablecmds.c:17469 commands/typecmds.c:2302
+#: commands/indexcmds.c:2212 commands/tablecmds.c:17522
+#: commands/tablecmds.c:17528 commands/typecmds.c:2301
 #, 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:2153
+#: commands/indexcmds.c:2214
 #, 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:2182 commands/indexcmds.c:2190
+#: commands/indexcmds.c:2243 commands/indexcmds.c:2251
 #: commands/opclasscmds.c:205
 #, 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:2204 commands/typecmds.c:2290
+#: commands/indexcmds.c:2265 commands/typecmds.c:2289
 #, 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:2294
+#: commands/indexcmds.c:2355
 #, 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:2622
+#: commands/indexcmds.c:2683
 #, c-format
 msgid "unrecognized REINDEX option \"%s\""
 msgstr "opción de REINDEX «%s» no reconocida"
 
-#: commands/indexcmds.c:2846
+#: commands/indexcmds.c:2910
 #, 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:2860
+#: commands/indexcmds.c:2924
 #, c-format
 msgid "table \"%s\" has no indexes to reindex"
 msgstr "la tabla «%s» no tiene índices para reindexar"
 
-#: commands/indexcmds.c:2900 commands/indexcmds.c:3404
-#: commands/indexcmds.c:3532
+#: commands/indexcmds.c:2969 commands/indexcmds.c:3483
+#: commands/indexcmds.c:3611
 #, c-format
 msgid "cannot reindex system catalogs concurrently"
 msgstr "no se pueden reindexar catálogos de sistema concurrentemente"
 
-#: commands/indexcmds.c:2923
+#: commands/indexcmds.c:2993
 #, 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:3011
+#: commands/indexcmds.c:3090
 #, 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:3044
+#: commands/indexcmds.c:3123
 #, c-format
 msgid "cannot move system relations, skipping all"
 msgstr "no se puede mover las relaciones de sistema, omitiendo todas"
 
-#: commands/indexcmds.c:3090
+#: commands/indexcmds.c:3169
 #, c-format
 msgid "while reindexing partitioned table \"%s.%s\""
 msgstr "al reindexar tabla particionada «%s.%s»"
 
-#: commands/indexcmds.c:3093
+#: commands/indexcmds.c:3172
 #, c-format
 msgid "while reindexing partitioned index \"%s.%s\""
 msgstr "al reindexar índice particionado «%s.%s»"
 
-#: commands/indexcmds.c:3284 commands/indexcmds.c:4140
+#: commands/indexcmds.c:3363 commands/indexcmds.c:4219
 #, c-format
 msgid "table \"%s.%s\" was reindexed"
 msgstr "la tabla «%s.%s» fue reindexada"
 
-#: commands/indexcmds.c:3436 commands/indexcmds.c:3488
+#: commands/indexcmds.c:3515 commands/indexcmds.c:3567
 #, 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:3442
+#: commands/indexcmds.c:3521
 #, 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:3597
+#: commands/indexcmds.c:3676
 #, c-format
 msgid "cannot reindex this type of relation concurrently"
 msgstr "no se puede reindexar este tipo de relación concurrentemente"
 
-#: commands/indexcmds.c:3618
+#: commands/indexcmds.c:3697
 #, c-format
 msgid "cannot move non-shared relation to tablespace \"%s\""
 msgstr "no se puede mover relación no compartida al tablespace «%s»"
 
-#: commands/indexcmds.c:4121 commands/indexcmds.c:4133
+#: commands/indexcmds.c:4200 commands/indexcmds.c:4212
 #, c-format
 msgid "index \"%s.%s\" was reindexed"
 msgstr "el índice «%s.%s» fue reindexado"
 
-#: commands/indexcmds.c:4123 commands/indexcmds.c:4142
+#: commands/indexcmds.c:4202 commands/indexcmds.c:4221
 #, c-format
 msgid "%s."
 msgstr "%s."
 
-#: commands/lockcmds.c:92
+#: commands/lockcmds.c:93
 #, fuzzy, c-format
 #| msgid "cannot lock rows in relation \"%s\""
 msgid "cannot lock relation \"%s\""
 msgstr "no se puede bloquear registros en la tabla «%s»"
 
-#: commands/matview.c:193
+#: commands/matview.c:194
 #, c-format
 msgid "CONCURRENTLY cannot be used when the materialized view is not populated"
 msgstr "no se puede usar CONCURRENTLY cuando la vista materializada no contiene datos"
 
-#: commands/matview.c:199 gram.y:17995
+#: commands/matview.c:200 gram.y:18370
 #, c-format
 msgid "%s and %s options cannot be used together"
 msgstr "las opciones %s y %s no pueden usarse juntas"
 
-#: commands/matview.c:256
+#: commands/matview.c:257
 #, c-format
 msgid "cannot refresh materialized view \"%s\" concurrently"
 msgstr "no se puede refrescar la vista materializada «%s» concurrentemente"
 
-#: commands/matview.c:259
+#: commands/matview.c:260
 #, c-format
 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:653
+#: commands/matview.c:654
 #, 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:655
+#: commands/matview.c:656
 #, c-format
 msgid "Row: %s"
 msgstr "Fila: %s"
@@ -9122,63 +9334,63 @@ msgstr "ya existe una clase de operadores «%s» para el método de acceso «%s
 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:111 commands/operatorcmds.c:119
+#: commands/operatorcmds.c:113 commands/operatorcmds.c:121
 #, 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:152 commands/operatorcmds.c:479
+#: commands/operatorcmds.c:154 commands/operatorcmds.c:481
 #, c-format
 msgid "operator attribute \"%s\" not recognized"
 msgstr "el atributo de operador «%s» no es reconocido"
 
-#: commands/operatorcmds.c:163
+#: commands/operatorcmds.c:165
 #, c-format
 msgid "operator function must be specified"
 msgstr "la función del operador debe especificarse"
 
-#: commands/operatorcmds.c:181
+#: commands/operatorcmds.c:183
 #, c-format
 msgid "operator argument types must be specified"
 msgstr "los tipos de los argumentos del operador deben ser especificados"
 
-#: commands/operatorcmds.c:185
+#: commands/operatorcmds.c:187
 #, c-format
 msgid "operator right argument type must be specified"
 msgstr "el tipo del argumento derecho del operador debe ser especificado"
 
-#: commands/operatorcmds.c:186
+#: commands/operatorcmds.c:188
 #, c-format
 msgid "Postfix operators are not supported."
 msgstr "los operadores Postfix no están soportado"
 
-#: commands/operatorcmds.c:290
+#: commands/operatorcmds.c:292
 #, 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:333
+#: commands/operatorcmds.c:335
 #, c-format
 msgid "join estimator function %s has multiple matches"
 msgstr "la función de estimación de join %s tiene múltiples coincidencias"
 
-#: commands/operatorcmds.c:348
+#: commands/operatorcmds.c:350
 #, 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:473
+#: commands/operatorcmds.c:475
 #, c-format
 msgid "operator attribute \"%s\" cannot be changed"
 msgstr "el atributo de operador «%s» no puede ser cambiado"
 
 #: commands/policy.c:89 commands/policy.c:382 commands/statscmds.c:149
-#: commands/tablecmds.c:1609 commands/tablecmds.c:2197
-#: commands/tablecmds.c:3423 commands/tablecmds.c:6312
-#: commands/tablecmds.c:9104 commands/tablecmds.c:17018
-#: commands/tablecmds.c:17053 commands/trigger.c:327 commands/trigger.c:1382
-#: commands/trigger.c:1492 rewrite/rewriteDefine.c:278
-#: rewrite/rewriteDefine.c:945 rewrite/rewriteRemove.c:80
+#: commands/tablecmds.c:1616 commands/tablecmds.c:2219
+#: commands/tablecmds.c:3520 commands/tablecmds.c:6369
+#: commands/tablecmds.c:9181 commands/tablecmds.c:17090
+#: commands/tablecmds.c:17125 commands/trigger.c:323 commands/trigger.c:1339
+#: commands/trigger.c:1449 rewrite/rewriteDefine.c:275
+#: rewrite/rewriteDefine.c:786 rewrite/rewriteRemove.c:80
 #, c-format
 msgid "permission denied: \"%s\" is a system catalog"
 msgstr "permiso denegado: «%s» es un catálogo de sistema"
@@ -9193,27 +9405,27 @@ msgstr "ignorando los roles especificados que no son PUBLIC"
 msgid "All roles are members of the PUBLIC role."
 msgstr "Todos los roles son miembros del rol PUBLIC."
 
-#: commands/policy.c:607
+#: commands/policy.c:606
 #, c-format
 msgid "WITH CHECK cannot be applied to SELECT or DELETE"
 msgstr "WITH CHECK no puede ser aplicado a SELECT o DELETE"
 
-#: commands/policy.c:616 commands/policy.c:921
+#: commands/policy.c:615 commands/policy.c:918
 #, c-format
 msgid "only WITH CHECK expression allowed for INSERT"
 msgstr "sólo se permite una expresión WITH CHECK para INSERT"
 
-#: commands/policy.c:691 commands/policy.c:1144
+#: commands/policy.c:689 commands/policy.c:1141
 #, c-format
 msgid "policy \"%s\" for table \"%s\" already exists"
 msgstr "la política «%s» para la tabla «%s» ya existe"
 
-#: commands/policy.c:893 commands/policy.c:1172 commands/policy.c:1243
+#: commands/policy.c:890 commands/policy.c:1169 commands/policy.c:1240
 #, c-format
 msgid "policy \"%s\" for table \"%s\" does not exist"
 msgstr "no existe la política «%s» para la tabla «%s»"
 
-#: commands/policy.c:911
+#: commands/policy.c:908
 #, c-format
 msgid "only USING expression allowed for SELECT, DELETE"
 msgstr "sólo se permite una expresión USING para SELECT, DELETE"
@@ -9229,7 +9441,7 @@ msgid "cannot create a cursor WITH HOLD within security-restricted operation"
 msgstr "no se puede crear un cursor WITH HOLD dentro de una operación restringida por seguridad"
 
 #: commands/portalcmds.c:189 commands/portalcmds.c:242
-#: executor/execCurrent.c:70 utils/adt/xml.c:2593 utils/adt/xml.c:2763
+#: executor/execCurrent.c:70 utils/adt/xml.c:2844 utils/adt/xml.c:3014
 #, c-format
 msgid "cursor \"%s\" does not exist"
 msgstr "no existe el cursor «%s»"
@@ -9274,236 +9486,241 @@ msgstr "no existe la sentencia preparada «%s»"
 msgid "must be superuser to create custom procedural language"
 msgstr "debe ser superusuario para crear un lenguaje procedural personalizado"
 
-#: commands/publicationcmds.c:128
+#: commands/publicationcmds.c:131 postmaster/postmaster.c:1205
+#: postmaster/postmaster.c:1303 storage/file/fd.c:3861
+#: utils/init/miscinit.c:1815
 #, c-format
-msgid "invalid list syntax for \"publish\" option"
-msgstr "sintaxis de entrada no válida para la opción «publish»"
+msgid "invalid list syntax in parameter \"%s\""
+msgstr "la sintaxis de lista no es válida para el parámetro «%s»"
 
-#: commands/publicationcmds.c:146
-#, c-format
-msgid "unrecognized \"publish\" value: \"%s\""
-msgstr "valor de «publish» no reconocido: «%s»"
+#: commands/publicationcmds.c:150
+#, fuzzy, c-format
+#| msgid "unrecognized value for EXPLAIN option \"%s\": \"%s\""
+msgid "unrecognized value for publication option \"%s\": \"%s\""
+msgstr "valor no reconocido para la opción de EXPLAIN «%s»: «%s»"
 
-#: commands/publicationcmds.c:159
+#: commands/publicationcmds.c:164
 #, c-format
 msgid "unrecognized publication parameter: \"%s\""
 msgstr "parámetro de publicación no reconocido: «%s»"
 
-#: commands/publicationcmds.c:200
+#: commands/publicationcmds.c:205
 #, fuzzy, c-format
 #| msgid "no schema has been selected to create in"
 msgid "no schema has been selected for CURRENT_SCHEMA"
 msgstr "no se ha seleccionado ningún esquema dentro del cual crear"
 
-#: commands/publicationcmds.c:465
+#: commands/publicationcmds.c:502
+#, fuzzy
+#| msgid "System catalog modifications are currently disallowed."
+msgid "System columns are not allowed."
+msgstr "Las modificaciones al catálogo del sistema están actualmente deshabilitadas."
+
+#: commands/publicationcmds.c:509 commands/publicationcmds.c:514
+#: commands/publicationcmds.c:531
+#, fuzzy
+#| msgid "grouping operations are not allowed in %s"
+msgid "User-defined operators are not allowed."
+msgstr "no se permiten operaciones «grouping» en %s"
+
+#: commands/publicationcmds.c:555
+msgid "Only columns, constants, built-in operators, built-in data types, built-in collations, and immutable built-in functions are allowed."
+msgstr ""
+
+#: commands/publicationcmds.c:567
 #, fuzzy
 #| msgid "set-returning functions are not allowed in %s"
 msgid "User-defined types are not allowed."
 msgstr "no se permiten funciones que retornan conjuntos en %s"
 
-#: commands/publicationcmds.c:468
+#: commands/publicationcmds.c:570
 #, fuzzy
 #| msgid "set-returning functions are not allowed in %s"
 msgid "User-defined or built-in mutable functions are not allowed."
 msgstr "no se permiten funciones que retornan conjuntos en %s"
 
-#: commands/publicationcmds.c:471
+#: commands/publicationcmds.c:573
 #, fuzzy
 #| msgid "set-returning functions are not allowed in %s"
 msgid "User-defined collations are not allowed."
 msgstr "no se permiten funciones que retornan conjuntos en %s"
 
-#: commands/publicationcmds.c:525
-#, fuzzy
-#| msgid "System catalog modifications are currently disallowed."
-msgid "System columns are not allowed."
-msgstr "Las modificaciones al catálogo del sistema están actualmente deshabilitadas."
-
-#: commands/publicationcmds.c:532 commands/publicationcmds.c:537
-#: commands/publicationcmds.c:554
-#, fuzzy
-#| msgid "grouping operations are not allowed in %s"
-msgid "User-defined operators are not allowed."
-msgstr "no se permiten operaciones «grouping» en %s"
-
-#: commands/publicationcmds.c:578
-#, fuzzy
-msgid "Only columns, constants, built-in operators, built-in data types, built-in collations, and immutable built-in functions are allowed."
-msgstr "Las expresiones sólo permiten columnas, constantes, operadores ..., tipos de datos ...,"
-
-#: commands/publicationcmds.c:592
+#: commands/publicationcmds.c:583
 #, fuzzy, c-format
 #| msgid "invalid publication_names syntax"
 msgid "invalid publication WHERE expression"
 msgstr "sintaxis de publication_names no válida"
 
-#: commands/publicationcmds.c:645
+#: commands/publicationcmds.c:636
 #, fuzzy, c-format
 #| msgid "cannot alter constraint \"%s\" on relation \"%s\""
 msgid "cannot use publication WHERE clause for relation \"%s\""
 msgstr "no se puede modificar la restricción «%s» en la relación «%s»"
 
-#: commands/publicationcmds.c:647
-#, fuzzy, c-format
-#| msgid "cannot cluster a partitioned table"
+#: commands/publicationcmds.c:638
+#, c-format
 msgid "WHERE clause cannot be used for a partitioned table when %s is false."
-msgstr "no se puede hacer «cluster» a una tabla particionada"
+msgstr ""
 
-#: commands/publicationcmds.c:709
+#: commands/publicationcmds.c:709 commands/publicationcmds.c:723
 #, fuzzy, c-format
-#| msgid "cannot alter inherited column \"%s\" of relation \"%s\""
-msgid "cannot use publication column list for relation \"%s.%s\""
-msgstr "no se puede alterar la columna heredada «%s» de la relación «%s»"
+#| msgid "cannot alter constraint \"%s\" on relation \"%s\""
+msgid "cannot use column list for relation \"%s.%s\" in publication \"%s\""
+msgstr "no se puede modificar la restricción «%s» en la relación «%s»"
 
 #: commands/publicationcmds.c:712
-#, fuzzy, c-format
-#| msgid "Table's schema \"%s\" is already part of the publication or part of the specified schema list."
-msgid "Column list cannot be specified if any schema is part of the publication or specified in the list."
-msgstr "El esquema «%s» de la tabla ya es parte de la publicación o parte de la lista de esquemas especificada."
-
-#: commands/publicationcmds.c:723
-#, fuzzy, c-format
-#| msgid "cannot alter inherited column \"%s\" of relation \"%s\""
-msgid "cannot use publication column list for relation \"%s\""
-msgstr "no se puede alterar la columna heredada «%s» de la relación «%s»"
+#, c-format
+msgid "Column lists cannot be specified in publications containing FOR TABLES IN SCHEMA elements."
+msgstr ""
 
-#: commands/publicationcmds.c:725
-#, fuzzy, c-format
-#| msgid "cannot cluster a partitioned table"
-msgid "Column list cannot be used for a partitioned table when %s is false."
-msgstr "no se puede hacer «cluster» a una tabla particionada"
+#: commands/publicationcmds.c:726
+#, c-format
+msgid "Column lists cannot be specified for partitioned tables when %s is false."
+msgstr ""
 
-#: commands/publicationcmds.c:760
+#: commands/publicationcmds.c:761
 #, 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:833
+#: commands/publicationcmds.c:832
 #, fuzzy, c-format
 #| msgid "must be superuser to create FOR ALL TABLES publication"
 msgid "must be superuser to create FOR TABLES IN SCHEMA publication"
 msgstr "debe ser superusuario para crear publicaciones FOR ALL TABLES"
 
-#: commands/publicationcmds.c:870
+#: commands/publicationcmds.c:868
 #, c-format
 msgid "wal_level is insufficient to publish logical changes"
 msgstr "wal_level es insuficiente para publicar cambios lógicos"
 
-#: commands/publicationcmds.c:871
-#, c-format
-msgid "Set wal_level to logical before creating subscriptions."
+#: commands/publicationcmds.c:869
+#, fuzzy, c-format
+#| msgid "Set wal_level to logical before creating subscriptions."
+msgid "Set wal_level to \"logical\" before creating subscriptions."
 msgstr "Cambie wal_level a logical antes de crear suscripciones."
 
-#: commands/publicationcmds.c:968 commands/publicationcmds.c:976
+#: commands/publicationcmds.c:965 commands/publicationcmds.c:973
 #, fuzzy, c-format
 #| msgid "cannot set parameter \"%s\" within security-definer function"
 msgid "cannot set parameter \"%s\" to false for publication \"%s\""
 msgstr "no se puede definir el parámetro «%s» dentro una función security-definer"
 
-#: commands/publicationcmds.c:971
+#: commands/publicationcmds.c:968
 #, c-format
 msgid "The publication contains a WHERE clause for partitioned table \"%s\", which is not allowed when \"%s\" is false."
 msgstr "La publicación contiene una cláusula WHERE para la tabla particionada «%s», que no está permitido cuando «%s» es falso."
 
-#: commands/publicationcmds.c:979
+#: commands/publicationcmds.c:976
 #, c-format
 msgid "The publication contains a column list for partitioned table \"%s\", which is not allowed when \"%s\" is false."
 msgstr "La publicación contiene una lista de columns para la tabla particionada «%s», que no está permitido cuando «%s» es falso."
 
-#: commands/publicationcmds.c:1302
+#: commands/publicationcmds.c:1299
 #, fuzzy, c-format
 #| msgid "cannot add schema \"%s\" to publication"
-msgid "cannot add schema to the publication"
+msgid "cannot add schema to publication \"%s\""
 msgstr "no se puede agregar el esquema «%s» a la partición"
 
-#: commands/publicationcmds.c:1303
-#, c-format
-msgid "Schema cannot be added if any table that specifies column list is already part of the publication."
+#: commands/publicationcmds.c:1301
+#, fuzzy, c-format
+#| msgid "Schema cannot be added if any table that specifies column list is already part of the publication."
+msgid "Schemas cannot be added if any tables that specify a column list are already part of the publication."
 msgstr "Un esquema no puede añadirse si cualquiera tabla que especifica una lista de columnas es parte de la publicación"
 
-#: commands/publicationcmds.c:1351
+#: commands/publicationcmds.c:1349
 #, c-format
-#| msgid "must be superuser to set schema of %s"
 msgid "must be superuser to add or set schemas"
 msgstr "debe ser superusuario para agregar o definir esquemas"
 
-#: commands/publicationcmds.c:1360 commands/publicationcmds.c:1368
+#: commands/publicationcmds.c:1358 commands/publicationcmds.c:1366
 #, 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:1362
+#: commands/publicationcmds.c:1360
 #, fuzzy, c-format
 #| msgid "Tables cannot be added to or dropped from FOR ALL TABLES publications."
 msgid "Schemas 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:1370
+#: commands/publicationcmds.c:1368
 #, 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:1596 commands/publicationcmds.c:1659
+#: commands/publicationcmds.c:1392 commands/publicationcmds.c:1431
+#: commands/publicationcmds.c:1968 utils/cache/lsyscache.c:3592
+#, c-format
+msgid "publication \"%s\" does not exist"
+msgstr "no existe la publicación «%s»"
+
+#: commands/publicationcmds.c:1594 commands/publicationcmds.c:1657
 #, fuzzy, c-format
 #| msgid "conflicting or redundant NULL / NOT NULL declarations for column \"%s\""
 msgid "conflicting or redundant WHERE clauses for table \"%s\""
 msgstr "declaraciones NULL/NOT NULL en conflicto o redundantes para la columna «%s»"
 
-#: commands/publicationcmds.c:1603 commands/publicationcmds.c:1671
+#: commands/publicationcmds.c:1601 commands/publicationcmds.c:1669
 #, fuzzy, c-format
 #| msgid "conflicting or redundant options"
 msgid "conflicting or redundant column lists for table \"%s\""
 msgstr "opciones contradictorias o redundantes"
 
-#: commands/publicationcmds.c:1805
+#: commands/publicationcmds.c:1803
 #, fuzzy, c-format
 #| msgid "operator argument types must be specified in ALTER OPERATOR FAMILY"
 msgid "column list must not be specified in ALTER PUBLICATION ... DROP"
 msgstr "los tipos de los argumentos de operador deben ser especificados en ALTER OPERATOR FAMILY"
 
-#: commands/publicationcmds.c:1817
+#: commands/publicationcmds.c:1815
 #, 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:1824
+#: commands/publicationcmds.c:1822
 #, c-format
 msgid "cannot use a WHERE clause when removing a table from a publication"
 msgstr "no se puede usar una cláusula WHERE cuando se elimina una tabla de una publicación"
 
-#: commands/publicationcmds.c:1884
+#: commands/publicationcmds.c:1882
 #, fuzzy, c-format
 #| msgid "relation \"%s\" is not part of the publication"
 msgid "tables from schema \"%s\" are not part of the publication"
 msgstr "relación «%s» no es parte de la publicación"
 
-#: commands/publicationcmds.c:1927 commands/publicationcmds.c:1934
+#: commands/publicationcmds.c:1925 commands/publicationcmds.c:1932
 #, 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:1929
+#: commands/publicationcmds.c:1927
 #, 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/publicationcmds.c:1936
+#: commands/publicationcmds.c:1934
 #, fuzzy, c-format
 #| msgid "The owner of a FOR ALL TABLES publication must be a superuser."
 msgid "The owner of a FOR TABLES IN SCHEMA publication must be a superuser."
 msgstr "El dueño de una publicación FOR ALL TABLES debe ser un superusuario."
 
-#: commands/schemacmds.c:105 commands/schemacmds.c:270
+#: commands/publicationcmds.c:2000
+#, c-format
+msgid "publication with OID %u does not exist"
+msgstr "no existe la publicación con OID %u"
+
+#: commands/schemacmds.c:109 commands/schemacmds.c:289
 #, c-format
 msgid "unacceptable schema name \"%s\""
 msgstr "el nombre de esquema «%s» es inaceptable"
 
-#: commands/schemacmds.c:106 commands/schemacmds.c:271
+#: commands/schemacmds.c:110 commands/schemacmds.c:290
 #, c-format
 msgid "The prefix \"pg_\" is reserved for system schemas."
 msgstr "El prefijo «pg_» está reservado para esquemas del sistema."
 
-#: commands/schemacmds.c:130
+#: commands/schemacmds.c:134
 #, c-format
 msgid "schema \"%s\" already exists, skipping"
 msgstr "el esquema «%s» ya existe, omitiendo"
@@ -9534,33 +9751,31 @@ msgstr "las etiquetas de seguirdad no están soportadas para este tipo de objeto
 msgid "cannot set security label on relation \"%s\""
 msgstr "no se puede modificar la restricción «%s» en la relación «%s»"
 
-#: commands/sequence.c:755
-#, fuzzy, c-format
-#| msgid "nextval: reached maximum value of sequence \"%s\" (%s)"
+#: commands/sequence.c:754
+#, c-format
 msgid "nextval: reached maximum value of sequence \"%s\" (%lld)"
-msgstr "nextval: se alcanzó el valor máximo de la secuencia «%s» (%s)"
+msgstr ""
 
-#: commands/sequence.c:774
-#, fuzzy, c-format
-#| msgid "nextval: reached minimum value of sequence \"%s\" (%s)"
+#: commands/sequence.c:773
+#, c-format
 msgid "nextval: reached minimum value of sequence \"%s\" (%lld)"
-msgstr "nextval: se alcanzó el valor mínimo de la secuencia «%s» (%s)"
+msgstr ""
 
-#: commands/sequence.c:892
+#: commands/sequence.c:891
 #, c-format
 msgid "currval of sequence \"%s\" is not yet defined in this session"
 msgstr "currval de la secuencia «%s» no está definido en esta sesión"
 
-#: commands/sequence.c:911 commands/sequence.c:917
+#: commands/sequence.c:910 commands/sequence.c:916
 #, c-format
 msgid "lastval is not yet defined in this session"
 msgstr "lastval no está definido en esta sesión"
 
-#: commands/sequence.c:997
+#: commands/sequence.c:996
 #, fuzzy, c-format
-#| msgid "setval: value %s is out of bounds for sequence \"%s\" (%s..%s)"
+#| msgid "value %s out of bounds for option \"%s\""
 msgid "setval: value %lld is out of bounds for sequence \"%s\" (%lld..%lld)"
-msgstr "setval: el valor %s está fuera del rango de la secuencia «%s» (%s..%s)"
+msgstr "el valor %s está fuera del rango de la opción «%s»"
 
 #: commands/sequence.c:1365
 #, c-format
@@ -9584,51 +9799,46 @@ msgstr "INCREMENT no debe ser cero"
 
 #: commands/sequence.c:1474
 #, fuzzy, c-format
-#| msgid "MAXVALUE (%s) is out of range for sequence data type %s"
+#| msgid "value \"%s\" is out of range for type %s"
 msgid "MAXVALUE (%lld) is out of range for sequence data type %s"
-msgstr "MAXVALUE (%s) está fuera de rango para el tipo de dato de la secuencia %s"
+msgstr "el valor «%s» está fuera de rango para el tipo %s"
 
 #: commands/sequence.c:1506
 #, fuzzy, c-format
-#| msgid "MINVALUE (%s) is out of range for sequence data type %s"
+#| msgid "value \"%s\" is out of range for type %s"
 msgid "MINVALUE (%lld) is out of range for sequence data type %s"
-msgstr "MINVALUE (%s) está fuera de rango para el tipo de dato de la secuencia %s"
+msgstr "el valor «%s» está fuera de rango para el tipo %s"
 
 #: commands/sequence.c:1514
-#, fuzzy, c-format
-#| msgid "MINVALUE (%s) must be less than MAXVALUE (%s)"
+#, c-format
 msgid "MINVALUE (%lld) must be less than MAXVALUE (%lld)"
-msgstr "MINVALUE (%s) debe ser menor que MAXVALUE (%s)"
+msgstr ""
 
 #: commands/sequence.c:1535
-#, fuzzy, c-format
-#| msgid "START value (%s) cannot be less than MINVALUE (%s)"
+#, c-format
 msgid "START value (%lld) cannot be less than MINVALUE (%lld)"
-msgstr "el valor START (%s) no puede ser menor que MINVALUE (%s)"
+msgstr ""
 
 #: commands/sequence.c:1541
-#, fuzzy, c-format
-#| msgid "START value (%s) cannot be greater than MAXVALUE (%s)"
+#, c-format
 msgid "START value (%lld) cannot be greater than MAXVALUE (%lld)"
-msgstr "el valor START (%s) no puede ser mayor que MAXVALUE (%s)"
+msgstr ""
 
 #: commands/sequence.c:1565
-#, fuzzy, c-format
-#| msgid "RESTART value (%s) cannot be less than MINVALUE (%s)"
+#, c-format
 msgid "RESTART value (%lld) cannot be less than MINVALUE (%lld)"
-msgstr "el valor RESTART (%s) no puede ser menor que MINVALUE (%s)"
+msgstr ""
 
 #: commands/sequence.c:1571
-#, fuzzy, c-format
-#| msgid "RESTART value (%s) cannot be greater than MAXVALUE (%s)"
+#, c-format
 msgid "RESTART value (%lld) cannot be greater than MAXVALUE (%lld)"
-msgstr "el valor RESTART (%s) no puede ser mayor que MAXVALUE (%s)"
+msgstr ""
 
 #: commands/sequence.c:1582
 #, fuzzy, c-format
-#| msgid "CACHE (%s) must be greater than zero"
+#| msgid "stride must be greater than zero"
 msgid "CACHE (%lld) must be greater than zero"
-msgstr "CACHE (%s) debe ser mayor que cero"
+msgstr "el intervalo de paso (stride) debe ser mayor que cero"
 
 #: commands/sequence.c:1618
 #, c-format
@@ -9661,13 +9871,13 @@ 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:1679 commands/tablecmds.c:13787
-#: commands/tablecmds.c:16443
+#: commands/sequence.c:1679 commands/tablecmds.c:13891
+#: commands/tablecmds.c:16488
 #, c-format
 msgid "Sequence \"%s\" is linked to table \"%s\"."
 msgstr "La secuencia «%s» está enlazada a la tabla «%s»."
 
-#: commands/statscmds.c:109 commands/statscmds.c:118 tcop/utility.c:1876
+#: commands/statscmds.c:109 commands/statscmds.c:118 tcop/utility.c:1886
 #, c-format
 msgid "only a single relation is allowed in CREATE STATISTICS"
 msgstr "sólo se permite una relación en CREATE STATISTICS"
@@ -9678,2141 +9888,2178 @@ msgstr "sólo se permite una relación en CREATE STATISTICS"
 msgid "cannot define statistics for relation \"%s\""
 msgstr "no se puede reescribir la relación de sistema «%s»"
 
-#: commands/statscmds.c:191
+#: commands/statscmds.c:190
 #, c-format
 msgid "statistics object \"%s\" already exists, skipping"
 msgstr "el objeto de estadísticas «%s» ya existe, omitiendo"
 
-#: commands/statscmds.c:199
+#: commands/statscmds.c:198
 #, c-format
 msgid "statistics object \"%s\" already exists"
 msgstr "el objeto de estadísticas «%s» ya existe"
 
-#: commands/statscmds.c:210
+#: commands/statscmds.c:209
 #, 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:274 commands/statscmds.c:308
+#: commands/statscmds.c:250 commands/statscmds.c:273 commands/statscmds.c:307
 #, c-format
 msgid "statistics creation on system columns is not supported"
 msgstr "la creación de estadísticas en columnas de sistema no está soportada"
 
-#: commands/statscmds.c:258 commands/statscmds.c:281
+#: commands/statscmds.c:257 commands/statscmds.c:280
 #, c-format
 msgid "column \"%s\" cannot be used in statistics because its type %s has no 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:325
+#: commands/statscmds.c:324
 #, c-format
 msgid "expression cannot be used in multivariate statistics because its type %s has no default btree operator class"
 msgstr "la expresión no puede ser usada en estadísticas multivariantes porque su tipo %s no tiene una clase de operadores por omisión para btree"
 
-#: commands/statscmds.c:346
+#: commands/statscmds.c:345
 #, c-format
 msgid "when building statistics on a single expression, statistics kinds may not be specified"
 msgstr "al crear estadísticas sobre una sola expresión, no se deben especificar tipos de estadísticas"
 
-#: commands/statscmds.c:375
+#: commands/statscmds.c:374
 #, c-format
 msgid "unrecognized statistics kind \"%s\""
 msgstr "tipo de estadísticas «%s» no reconocido"
 
-#: commands/statscmds.c:404
+#: commands/statscmds.c:403
 #, c-format
 msgid "extended statistics require at least 2 columns"
 msgstr "las estadísticas extendidas requieren al menos 2 columnas"
 
-#: commands/statscmds.c:422
+#: commands/statscmds.c:421
 #, c-format
 msgid "duplicate column name in statistics definition"
 msgstr "nombre de columna duplicado en definición de estadísticas"
 
-#: commands/statscmds.c:457
+#: commands/statscmds.c:456
 #, c-format
 msgid "duplicate expression in statistics definition"
 msgstr "expresión duplicada en definición de estadísticas"
 
-#: commands/statscmds.c:620 commands/tablecmds.c:8072
+#: commands/statscmds.c:619 commands/tablecmds.c:8180
 #, c-format
 msgid "statistics target %d is too low"
 msgstr "el valor de estadísticas %d es demasiado bajo"
 
-#: commands/statscmds.c:628 commands/tablecmds.c:8080
+#: commands/statscmds.c:627 commands/tablecmds.c:8188
 #, c-format
 msgid "lowering statistics target to %d"
 msgstr "bajando el valor de estadísticas a %d"
 
-#: commands/statscmds.c:651
+#: commands/statscmds.c:650
 #, c-format
 msgid "statistics object \"%s.%s\" does not exist, skipping"
 msgstr "no existe el objeto de estadísticas «%s.%s», omitiendo"
 
-#: commands/subscriptioncmds.c:251 commands/subscriptioncmds.c:298
+#: commands/subscriptioncmds.c:271 commands/subscriptioncmds.c:359
 #, c-format
 msgid "unrecognized subscription parameter: \"%s\""
 msgstr "parámetro de suscripción no reconocido: «%s»"
 
-#: commands/subscriptioncmds.c:289
+#: commands/subscriptioncmds.c:327 replication/pgoutput/pgoutput.c:398
+#, fuzzy, c-format
+#| msgid "unrecognized \"publish\" value: \"%s\""
+msgid "unrecognized origin value: \"%s\""
+msgstr "valor de «publish» no reconocido: «%s»"
+
+#: commands/subscriptioncmds.c:350
 #, fuzzy, c-format
-#| msgid "invalid option \"%s\""
+#| msgid "invalid WAL location: \"%s\""
 msgid "invalid WAL location (LSN): %s"
-msgstr "el nombre de opción «%s» no es válido"
+msgstr "ubicación de WAL no válida: «%s»"
 
 #. translator: both %s are strings of the form "option = value"
-#: commands/subscriptioncmds.c:313 commands/subscriptioncmds.c:320
-#: commands/subscriptioncmds.c:327 commands/subscriptioncmds.c:349
-#: commands/subscriptioncmds.c:365
+#: commands/subscriptioncmds.c:374 commands/subscriptioncmds.c:381
+#: commands/subscriptioncmds.c:388 commands/subscriptioncmds.c:410
+#: commands/subscriptioncmds.c:426
 #, c-format
 msgid "%s and %s are mutually exclusive options"
 msgstr "%s y %s son opciones mutuamente excluyentes"
 
 #. translator: both %s are strings of the form "option = value"
-#: commands/subscriptioncmds.c:355 commands/subscriptioncmds.c:371
+#: commands/subscriptioncmds.c:416 commands/subscriptioncmds.c:432
 #, c-format
 msgid "subscription with %s must also set %s"
 msgstr "suscripción con %s también debe activar %s"
 
-#: commands/subscriptioncmds.c:433
+#: commands/subscriptioncmds.c:494
 #, fuzzy, c-format
 #| msgid "could not receive list of replicated tables from the publisher: %s"
 msgid "could not receive list of publications from the publisher: %s"
 msgstr "no se pudo recibir la lista de tablas replicadas desde el editor (publisher): %s"
 
-#: commands/subscriptioncmds.c:465
+#: commands/subscriptioncmds.c:526
 #, fuzzy, c-format
-#| msgid "publication \"%s\" does not exist, skipping"
+#| msgid "publication \"%s\" does not exist"
 msgid "publication %s does not exist on the publisher"
 msgid_plural "publications %s do not exist on the publisher"
-msgstr[0] "no existe la publicación «%s», omitiendo"
-msgstr[1] "no existe la publicación «%s», omitiendo"
+msgstr[0] "no existe la publicación «%s»"
+msgstr[1] "no existe la publicación «%s»"
 
-#: commands/subscriptioncmds.c:547
-#, c-format
-msgid "must be superuser to create subscriptions"
+#: commands/subscriptioncmds.c:614
+#, fuzzy, c-format
+#| msgid "must be superuser to create subscriptions"
+msgid "must have privileges of pg_create_subscription to create subscriptions"
 msgstr "debe ser superusuario para crear suscripciones"
 
-#: commands/subscriptioncmds.c:648 commands/subscriptioncmds.c:776
-#: replication/logical/tablesync.c:1229 replication/logical/worker.c:3722
+#: commands/subscriptioncmds.c:743 commands/subscriptioncmds.c:876
+#: replication/logical/tablesync.c:1304 replication/logical/worker.c:4616
 #, c-format
 msgid "could not connect to the publisher: %s"
 msgstr "no se pudo connectar con el editor (publisher): %s"
 
-#: commands/subscriptioncmds.c:717
+#: commands/subscriptioncmds.c:814
 #, 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:730
+#: commands/subscriptioncmds.c:826
+#, fuzzy, c-format
+#| msgid "subscription has no replication slot set"
+msgid "subscription was created, but is not connected"
+msgstr "la suscripción no tiene un slot de replicación establecido"
+
+#: commands/subscriptioncmds.c:827
 #, 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"
+msgid "To initiate replication, you must manually create the replication slot, enable the subscription, and refresh the subscription."
+msgstr ""
+
+#: commands/subscriptioncmds.c:1094 commands/subscriptioncmds.c:1500
+#: commands/subscriptioncmds.c:1883 utils/cache/lsyscache.c:3642
+#, c-format
+msgid "subscription \"%s\" does not exist"
+msgstr "no existe la suscripción «%s»"
 
-#: commands/subscriptioncmds.c:1033
+#: commands/subscriptioncmds.c:1150
 #, c-format
 msgid "cannot set %s for enabled subscription"
 msgstr "no se puede establecer %s para la suscripción activada"
 
-#: commands/subscriptioncmds.c:1086
+#: commands/subscriptioncmds.c:1225
 #, 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:1129 commands/subscriptioncmds.c:1181
+#: commands/subscriptioncmds.c:1269 commands/subscriptioncmds.c:1320
 #, 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:1130 commands/subscriptioncmds.c:1182
+#: commands/subscriptioncmds.c:1270
 #, c-format
 msgid "Use ALTER SUBSCRIPTION ... SET PUBLICATION ... WITH (refresh = false)."
 msgstr "Use ALTER SUBSCRIPTION ... SET PUBLICATION ... WITH (refresh = false)."
 
-#: commands/subscriptioncmds.c:1139 commands/subscriptioncmds.c:1191
+#: commands/subscriptioncmds.c:1279 commands/subscriptioncmds.c:1334
 #, fuzzy, c-format
 #| msgid "ALTER SUBSCRIPTION with refresh is not allowed for disabled subscriptions"
 msgid "ALTER SUBSCRIPTION with refresh and copy_data is not allowed when two_phase is enabled"
 msgstr "ALTER SUBSCRIPTION con actualización no está permitido para las suscripciones desactivadas"
 
-#: commands/subscriptioncmds.c:1140 commands/subscriptioncmds.c:1192
+#: commands/subscriptioncmds.c:1280
 #, fuzzy, c-format
-#| msgid "Use ALTER SUBSCRIPTION ... SET PUBLICATION ... WITH (refresh = false)."
-msgid "Use ALTER SUBSCRIPTION ...SET PUBLICATION with refresh = false, or with copy_data = false, or use DROP/CREATE SUBSCRIPTION."
-msgstr "Use ALTER SUBSCRIPTION ... SET PUBLICATION ... WITH (refresh = false)."
+#| msgid "Use ALTER SUBSCRIPTION ... REFRESH with copy_data = false, or use DROP/CREATE SUBSCRIPTION."
+msgid "Use ALTER SUBSCRIPTION ... SET PUBLICATION with refresh = false, or with copy_data = false, or use DROP/CREATE SUBSCRIPTION."
+msgstr "Use ALTER SUBSCRIPTION ... REFRESH con copy_data = false, o use DROP/CREATE SUBSCRIPTION."
+
+#. translator: %s is an SQL ALTER command
+#: commands/subscriptioncmds.c:1322
+#, fuzzy, c-format
+#| msgid "Use views instead."
+msgid "Use %s instead."
+msgstr "Use vistas en su lugar."
+
+#. translator: %s is an SQL ALTER command
+#: commands/subscriptioncmds.c:1336
+#, fuzzy, c-format
+#| msgid "Use ALTER SUBSCRIPTION ... REFRESH with copy_data = false, or use DROP/CREATE SUBSCRIPTION."
+msgid "Use %s with refresh = false, or with copy_data = false, or use DROP/CREATE SUBSCRIPTION."
+msgstr "Use ALTER SUBSCRIPTION ... REFRESH con copy_data = false, o use DROP/CREATE SUBSCRIPTION."
 
-#: commands/subscriptioncmds.c:1212
+#: commands/subscriptioncmds.c:1358
 #, 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:1237
+#: commands/subscriptioncmds.c:1383
 #, fuzzy, c-format
 #| msgid "ALTER SUBSCRIPTION ... REFRESH is not allowed for disabled subscriptions"
 msgid "ALTER SUBSCRIPTION ... REFRESH with copy_data is not allowed when two_phase is enabled"
 msgstr "ALTER SUBSCRIPTION ... REFRESH no está permitido para las suscripciones desactivadas"
 
-#: commands/subscriptioncmds.c:1238
+#: commands/subscriptioncmds.c:1384
 #, c-format
 msgid "Use ALTER SUBSCRIPTION ... REFRESH with copy_data = false, or use DROP/CREATE SUBSCRIPTION."
 msgstr "Use ALTER SUBSCRIPTION ... REFRESH con copy_data = false, o use DROP/CREATE SUBSCRIPTION."
 
-#: commands/subscriptioncmds.c:1258
-#, fuzzy, c-format
-#| msgid "must be superuser to set grantor"
-msgid "must be superuser to skip transaction"
-msgstr "debe ser superusuario para especificar el cedente (grantor)"
-
-#: commands/subscriptioncmds.c:1278
+#: commands/subscriptioncmds.c:1419
 #, c-format
 msgid "skip WAL location (LSN %X/%X) must be greater than origin LSN %X/%X"
 msgstr "la ubicación de WAL a saltar (LSN %X/%X) debe ser mayor que el LSN de origen %X/%X"
 
-#: commands/subscriptioncmds.c:1358
+#: commands/subscriptioncmds.c:1504
 #, c-format
 msgid "subscription \"%s\" does not exist, skipping"
 msgstr "no existe la suscripción «%s», omitiendo"
 
-#: commands/subscriptioncmds.c:1616
+#: commands/subscriptioncmds.c:1773
 #, c-format
 msgid "dropped replication slot \"%s\" on publisher"
 msgstr "eliminando el slot de replicación «%s» en editor (publisher)"
 
-#: commands/subscriptioncmds.c:1625 commands/subscriptioncmds.c:1633
+#: commands/subscriptioncmds.c:1782 commands/subscriptioncmds.c:1790
 #, c-format
 msgid "could not drop replication slot \"%s\" on publisher: %s"
 msgstr "no se pudo eliminar el slot de replicación «%s» en editor (publisher): %s"
 
-#: commands/subscriptioncmds.c:1667
-#, 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:1669
+#: commands/subscriptioncmds.c:1915
 #, c-format
-msgid "The owner of a subscription must be a superuser."
-msgstr "El dueño de una suscripción debe ser un superusuario."
+msgid "subscription with OID %u does not exist"
+msgstr "no existe la suscripción con OID %u"
 
-#: commands/subscriptioncmds.c:1783
+#: commands/subscriptioncmds.c:1986 commands/subscriptioncmds.c:2111
 #, 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/subscriptioncmds.c:1805 replication/logical/tablesync.c:809
-#: replication/pgoutput/pgoutput.c:1062
+#: commands/subscriptioncmds.c:2022
+#, c-format
+msgid "subscription \"%s\" requested copy_data with origin = NONE but might copy data that had a different origin"
+msgstr ""
+
+#: commands/subscriptioncmds.c:2024
+#, fuzzy, c-format
+#| msgid "relation \"%s\" is not part of the publication"
+msgid "Subscribed publication %s is subscribing to other publications."
+msgid_plural "Subscribed publications %s are subscribing to other publications."
+msgstr[0] "relación «%s» no es parte de la publicación"
+msgstr[1] "relación «%s» no es parte de la publicación"
+
+#: commands/subscriptioncmds.c:2027
+#, c-format
+msgid "Verify that initial data copied from the publisher tables did not come from other origins."
+msgstr ""
+
+#: commands/subscriptioncmds.c:2133 replication/logical/tablesync.c:875
+#: replication/pgoutput/pgoutput.c:1115
 #, fuzzy, c-format
 #| msgid "cannot use ONLY for foreign key on partitioned table \"%s\" referencing relation \"%s\""
 msgid "cannot use different column lists for table \"%s.%s\" in different publications"
 msgstr "no se puede usar ONLY para una llave foránea en la tabla particionada «%s» haciendo referencia a la relación «%s»"
 
-#: commands/subscriptioncmds.c:1855
+#: commands/subscriptioncmds.c:2183
 #, c-format
 msgid "could not connect to publisher when attempting to drop replication slot \"%s\": %s"
 msgstr "no se pudo conectar con el editor (publisher) al intentar eliminar el slot de replicación \"%s\": %s"
 
 #. translator: %s is an SQL ALTER command
-#: commands/subscriptioncmds.c:1858
+#: commands/subscriptioncmds.c:2186
 #, 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:1888
+#: commands/subscriptioncmds.c:2216
 #, 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:1932
+#: commands/subscriptioncmds.c:2260
 #, c-format
 msgid "publication \"%s\" is already in subscription \"%s\""
 msgstr "la publicación «%s» ya existe en la suscripción «%s»"
 
-#: commands/subscriptioncmds.c:1946
+#: commands/subscriptioncmds.c:2274
 #, c-format
 msgid "publication \"%s\" is not in subscription \"%s\""
 msgstr "la publicación «%s» no está en la suscripción «%s»"
 
-#: commands/subscriptioncmds.c:1957
+#: commands/subscriptioncmds.c:2285
 #, c-format
 msgid "cannot drop all the publications from a subscription"
 msgstr "no se puede eliminar todas las publicaciones de una suscripción"
 
-#: commands/tablecmds.c:245 commands/tablecmds.c:287
+#: commands/subscriptioncmds.c:2342
+#, fuzzy, c-format
+#| msgid "%s requires a Boolean value"
+msgid "%s requires a Boolean value or \"parallel\""
+msgstr "«%s» requiere un valor lógico (booleano)"
+
+#: commands/tablecmds.c:246 commands/tablecmds.c:288
 #, c-format
 msgid "table \"%s\" does not exist"
 msgstr "no existe la tabla «%s»"
 
-#: commands/tablecmds.c:246 commands/tablecmds.c:288
+#: commands/tablecmds.c:247 commands/tablecmds.c:289
 #, c-format
 msgid "table \"%s\" does not exist, skipping"
 msgstr "la tabla «%s» no existe, omitiendo"
 
-#: commands/tablecmds.c:248 commands/tablecmds.c:290
+#: commands/tablecmds.c:249 commands/tablecmds.c:291
 msgid "Use DROP TABLE to remove a table."
 msgstr "Use DROP TABLE para eliminar una tabla."
 
-#: commands/tablecmds.c:251
+#: commands/tablecmds.c:252
 #, c-format
 msgid "sequence \"%s\" does not exist"
 msgstr "no existe la secuencia «%s»"
 
-#: commands/tablecmds.c:252
+#: commands/tablecmds.c:253
 #, c-format
 msgid "sequence \"%s\" does not exist, skipping"
 msgstr "la secuencia «%s» no existe, omitiendo"
 
-#: commands/tablecmds.c:254
+#: commands/tablecmds.c:255
 msgid "Use DROP SEQUENCE to remove a sequence."
 msgstr "Use DROP SEQUENCE para eliminar una secuencia."
 
-#: commands/tablecmds.c:257
+#: commands/tablecmds.c:258
 #, c-format
 msgid "view \"%s\" does not exist"
 msgstr "no existe la vista «%s»"
 
-#: commands/tablecmds.c:258
+#: commands/tablecmds.c:259
 #, c-format
 msgid "view \"%s\" does not exist, skipping"
 msgstr "la vista «%s» no existe, omitiendo"
 
-#: commands/tablecmds.c:260
+#: commands/tablecmds.c:261
 msgid "Use DROP VIEW to remove a view."
 msgstr "Use DROP VIEW para eliminar una vista."
 
-#: commands/tablecmds.c:263
+#: commands/tablecmds.c:264
 #, c-format
 msgid "materialized view \"%s\" does not exist"
 msgstr "no existe la vista materializada «%s»"
 
-#: commands/tablecmds.c:264
+#: commands/tablecmds.c:265
 #, c-format
 msgid "materialized view \"%s\" does not exist, skipping"
 msgstr "la vista materializada «%s» no existe, omitiendo"
 
-#: commands/tablecmds.c:266
+#: commands/tablecmds.c:267
 msgid "Use DROP MATERIALIZED VIEW to remove a materialized view."
 msgstr "Use DROP MATERIALIZED VIEW para eliminar una vista materializada."
 
-#: commands/tablecmds.c:269 commands/tablecmds.c:293 commands/tablecmds.c:18930
-#: parser/parse_utilcmd.c:2260
+#: commands/tablecmds.c:270 commands/tablecmds.c:294 commands/tablecmds.c:19002
+#: parser/parse_utilcmd.c:2245
 #, c-format
 msgid "index \"%s\" does not exist"
 msgstr "no existe el índice «%s»"
 
-#: commands/tablecmds.c:270 commands/tablecmds.c:294
+#: commands/tablecmds.c:271 commands/tablecmds.c:295
 #, c-format
 msgid "index \"%s\" does not exist, skipping"
 msgstr "el índice «%s» no existe, omitiendo"
 
-#: commands/tablecmds.c:272 commands/tablecmds.c:296
+#: commands/tablecmds.c:273 commands/tablecmds.c:297
 msgid "Use DROP INDEX to remove an index."
 msgstr "Use DROP INDEX para eliminar un índice."
 
-#: commands/tablecmds.c:277
+#: commands/tablecmds.c:278
 #, c-format
 msgid "\"%s\" is not a type"
 msgstr "«%s» no es un tipo"
 
-#: commands/tablecmds.c:278
+#: commands/tablecmds.c:279
 msgid "Use DROP TYPE to remove a type."
 msgstr "Use DROP TYPE para eliminar un tipo."
 
-#: commands/tablecmds.c:281 commands/tablecmds.c:13626
-#: commands/tablecmds.c:16146
+#: commands/tablecmds.c:282 commands/tablecmds.c:13730
+#: commands/tablecmds.c:16193
 #, c-format
 msgid "foreign table \"%s\" does not exist"
 msgstr "no existe la tabla foránea «%s»"
 
-#: commands/tablecmds.c:282
+#: commands/tablecmds.c:283
 #, c-format
 msgid "foreign table \"%s\" does not exist, skipping"
 msgstr "la tabla foránea «%s» no existe, omitiendo"
 
-#: commands/tablecmds.c:284
+#: commands/tablecmds.c:285
 msgid "Use DROP FOREIGN TABLE to remove a foreign table."
 msgstr "Use DROP FOREIGN TABLE para eliminar una tabla foránea."
 
-#: commands/tablecmds.c:697
+#: commands/tablecmds.c:700
 #, 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:728
+#: commands/tablecmds.c:731
 #, 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:764 commands/tablecmds.c:14933
+#: commands/tablecmds.c:767 commands/tablecmds.c:15038
 #, 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:949
+#: commands/tablecmds.c:955
 #, 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:1042
+#: commands/tablecmds.c:1048
 #, c-format
 msgid "\"%s\" is not partitioned"
 msgstr "«%s» no está particionada"
 
-#: commands/tablecmds.c:1137
+#: commands/tablecmds.c:1142
 #, c-format
 msgid "cannot partition using more than %d columns"
 msgstr "no se puede particionar usando más de %d columnas"
 
-#: commands/tablecmds.c:1193
+#: commands/tablecmds.c:1198
 #, 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:1195
+#: commands/tablecmds.c:1200
 #, c-format
 msgid "Table \"%s\" contains indexes that are unique."
 msgstr "La tabla «%s» contiene índices que son únicos."
 
-#: commands/tablecmds.c:1358
+#: commands/tablecmds.c:1365
 #, 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:1362
+#: commands/tablecmds.c:1369
 #, c-format
 msgid "DROP INDEX CONCURRENTLY does not support CASCADE"
 msgstr "DROP INDEX CONCURRENTLY no soporta CASCADE"
 
-#: commands/tablecmds.c:1466
+#: commands/tablecmds.c:1473
 #, c-format
 msgid "cannot drop partitioned index \"%s\" concurrently"
 msgstr "no se puede eliminar el índice particionado «%s» concurrentemente"
 
-#: commands/tablecmds.c:1754
+#: commands/tablecmds.c:1761
 #, c-format
 msgid "cannot truncate only a partitioned table"
 msgstr "no se puede truncar ONLY una tabla particionada"
 
-#: commands/tablecmds.c:1755
+#: commands/tablecmds.c:1762
 #, 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:1827
+#: commands/tablecmds.c:1835
 #, c-format
 msgid "truncate cascades to table \"%s\""
 msgstr "truncando además la tabla «%s»"
 
-#: commands/tablecmds.c:2177
+#: commands/tablecmds.c:2199
 #, c-format
 msgid "cannot truncate foreign table \"%s\""
 msgstr "no se puede truncar la tabla foránea «%s»"
 
-#: commands/tablecmds.c:2234
+#: commands/tablecmds.c:2256
 #, c-format
 msgid "cannot truncate temporary tables of other sessions"
 msgstr "no se pueden truncar tablas temporales de otras sesiones"
 
-#: commands/tablecmds.c:2462 commands/tablecmds.c:14830
+#: commands/tablecmds.c:2488 commands/tablecmds.c:14935
 #, c-format
 msgid "cannot inherit from partitioned table \"%s\""
 msgstr "no se puede heredar de la tabla particionada «%s»"
 
-#: commands/tablecmds.c:2467
+#: commands/tablecmds.c:2493
 #, c-format
 msgid "cannot inherit from partition \"%s\""
 msgstr "no se puede heredar de la partición «%s»"
 
-#: commands/tablecmds.c:2475 parser/parse_utilcmd.c:2490
-#: parser/parse_utilcmd.c:2632
+#: commands/tablecmds.c:2501 parser/parse_utilcmd.c:2475
+#: parser/parse_utilcmd.c:2617
 #, c-format
 msgid "inherited relation \"%s\" is not a table or foreign table"
 msgstr "la relación heredada «%s» no es una tabla o tabla foránea"
 
-#: commands/tablecmds.c:2487
+#: commands/tablecmds.c:2513
 #, 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:2496 commands/tablecmds.c:14809
+#: commands/tablecmds.c:2522 commands/tablecmds.c:14914
 #, c-format
 msgid "cannot inherit from temporary relation \"%s\""
 msgstr "no se puede heredar de la tabla temporal «%s»"
 
-#: commands/tablecmds.c:2506 commands/tablecmds.c:14817
+#: commands/tablecmds.c:2532 commands/tablecmds.c:14922
 #, 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:2560
+#: commands/tablecmds.c:2585
 #, c-format
 msgid "merging multiple inherited definitions of column \"%s\""
 msgstr "mezclando múltiples definiciones heredadas de la columna «%s»"
 
-#: commands/tablecmds.c:2568
+#: commands/tablecmds.c:2597
 #, c-format
 msgid "inherited column \"%s\" has a type conflict"
 msgstr "columna heredada «%s» tiene conflicto de tipos"
 
-#: commands/tablecmds.c:2570 commands/tablecmds.c:2593
-#: commands/tablecmds.c:2610 commands/tablecmds.c:2866
-#: commands/tablecmds.c:2896 commands/tablecmds.c:2910
+#: commands/tablecmds.c:2599 commands/tablecmds.c:2628
+#: commands/tablecmds.c:2647 commands/tablecmds.c:2919
+#: commands/tablecmds.c:2955 commands/tablecmds.c:2971
 #: parser/parse_coerce.c:2155 parser/parse_coerce.c:2175
 #: parser/parse_coerce.c:2195 parser/parse_coerce.c:2216
 #: parser/parse_coerce.c:2271 parser/parse_coerce.c:2305
 #: parser/parse_coerce.c:2381 parser/parse_coerce.c:2412
 #: parser/parse_coerce.c:2451 parser/parse_coerce.c:2518
-#: parser/parse_param.c:227
+#: parser/parse_param.c:223
 #, c-format
 msgid "%s versus %s"
 msgstr "%s versus %s"
 
-#: commands/tablecmds.c:2579
+#: commands/tablecmds.c:2612
 #, c-format
 msgid "inherited column \"%s\" has a collation conflict"
 msgstr "columna heredada «%s» tiene conflicto de ordenamiento (collation)"
 
-#: commands/tablecmds.c:2581 commands/tablecmds.c:2878
-#: commands/tablecmds.c:6752
+#: commands/tablecmds.c:2614 commands/tablecmds.c:2935
+#: commands/tablecmds.c:6849
 #, c-format
 msgid "\"%s\" versus \"%s\""
 msgstr "«%s» versus «%s»"
 
-#: commands/tablecmds.c:2591
+#: commands/tablecmds.c:2626
 #, 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:2608 commands/tablecmds.c:2908
+#: commands/tablecmds.c:2645 commands/tablecmds.c:2969
 #, c-format
 msgid "column \"%s\" has a compression method conflict"
 msgstr "la columna «%s» tiene conflicto de método de compresión"
 
-#: commands/tablecmds.c:2623
+#: commands/tablecmds.c:2661
 #, c-format
 msgid "inherited column \"%s\" has a generation conflict"
 msgstr "columna heredada «%s» tiene conflicto de generación"
 
-#: commands/tablecmds.c:2717 commands/tablecmds.c:2772
-#: commands/tablecmds.c:12350 parser/parse_utilcmd.c:1301
-#: parser/parse_utilcmd.c:1344 parser/parse_utilcmd.c:1753
-#: parser/parse_utilcmd.c:1861
+#: commands/tablecmds.c:2767 commands/tablecmds.c:2822
+#: commands/tablecmds.c:12456 parser/parse_utilcmd.c:1298
+#: parser/parse_utilcmd.c:1341 parser/parse_utilcmd.c:1740
+#: parser/parse_utilcmd.c:1848
 #, c-format
 msgid "cannot convert whole-row table reference"
 msgstr "no se puede convertir una referencia a la fila completa (whole-row)"
 
-#: commands/tablecmds.c:2718 parser/parse_utilcmd.c:1302
+#: commands/tablecmds.c:2768 parser/parse_utilcmd.c:1299
 #, c-format
 msgid "Generation expression for column \"%s\" contains a whole-row reference to 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»."
 
-#: commands/tablecmds.c:2773 parser/parse_utilcmd.c:1345
+#: commands/tablecmds.c:2823 parser/parse_utilcmd.c:1342
 #, c-format
 msgid "Constraint \"%s\" contains a whole-row reference to table \"%s\"."
 msgstr "La restricción «%s» contiene una referencia a la fila completa (whole-row) de la tabla «%s»."
 
-#: commands/tablecmds.c:2852
+#: commands/tablecmds.c:2901
 #, c-format
 msgid "merging column \"%s\" with inherited definition"
 msgstr "mezclando la columna «%s» con la definición heredada"
 
-#: commands/tablecmds.c:2856
+#: commands/tablecmds.c:2905
 #, 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:2857
+#: commands/tablecmds.c:2906
 #, 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:2864
+#: commands/tablecmds.c:2917
 #, c-format
 msgid "column \"%s\" has a type conflict"
 msgstr "la columna «%s» tiene conflicto de tipos"
 
-#: commands/tablecmds.c:2876
+#: commands/tablecmds.c:2933
 #, c-format
 msgid "column \"%s\" has a collation conflict"
 msgstr "la columna «%s» tiene conflicto de ordenamientos (collation)"
 
-#: commands/tablecmds.c:2894
+#: commands/tablecmds.c:2953
 #, c-format
 msgid "column \"%s\" has a storage parameter conflict"
 msgstr "la columna «%s» tiene conflicto de parámetros de almacenamiento"
 
-#: commands/tablecmds.c:2935
-#, c-format
-msgid "child column \"%s\" specifies generation expression"
-msgstr "la columna hija «%s» especifica una expresión de generación de columna"
-
-#: commands/tablecmds.c:2937
-#, c-format
-msgid "Omit the generation expression in the definition of the child table column to inherit the generation expression from the parent table."
-msgstr "Omita la expresión de generación en la definición de la columna en la tabla hija para heredar la expresión de generación de la tabla padre."
-
-#: commands/tablecmds.c:2941
+#: commands/tablecmds.c:2999 commands/tablecmds.c:3086
 #, c-format
 msgid "column \"%s\" inherits from generated column but specifies default"
 msgstr "la columna «%s» hereda de una columna generada pero especifica un valor por omisión"
 
-#: commands/tablecmds.c:2946
+#: commands/tablecmds.c:3004 commands/tablecmds.c:3091
 #, c-format
 msgid "column \"%s\" inherits from generated column but specifies identity"
 msgstr "la columna «%s» hereda de una columna generada pero especifica una identidad"
 
-#: commands/tablecmds.c:3055
+#: commands/tablecmds.c:3012 commands/tablecmds.c:3099
+#, c-format
+msgid "child column \"%s\" specifies generation expression"
+msgstr "la columna hija «%s» especifica una expresión de generación de columna"
+
+#: commands/tablecmds.c:3014 commands/tablecmds.c:3101
+#, fuzzy, c-format
+#| msgid "A generated column cannot reference another generated column."
+msgid "A child table column cannot be generated unless its parent column is."
+msgstr "Una columna generada no puede hacer referencia a otra columna generada."
+
+#: commands/tablecmds.c:3147
 #, c-format
 msgid "column \"%s\" inherits conflicting generation expressions"
 msgstr "la columna «%s» hereda expresiones de generación en conflicto"
 
-#: commands/tablecmds.c:3060
+#: commands/tablecmds.c:3149
+#, fuzzy, c-format
+#| msgid "To resolve the conflict, specify a default explicitly."
+msgid "To resolve the conflict, specify a generation expression explicitly."
+msgstr "Para resolver el conflicto, indique explícitamente un valor por omisión."
+
+#: commands/tablecmds.c:3153
 #, c-format
 msgid "column \"%s\" inherits conflicting default values"
 msgstr "la columna «%s» hereda valores por omisión no coincidentes"
 
-#: commands/tablecmds.c:3062
+#: commands/tablecmds.c:3155
 #, 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:3108
+#: commands/tablecmds.c:3205
 #, 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:3321
+#: commands/tablecmds.c:3418
 #, c-format
 msgid "cannot move temporary tables of other sessions"
 msgstr "no se pueden mover tablas temporales de otras sesiones"
 
-#: commands/tablecmds.c:3391
+#: commands/tablecmds.c:3488
 #, 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:3410
+#: commands/tablecmds.c:3507
 #, fuzzy, c-format
 #| msgid "cannot alter inherited column \"%s\" of relation \"%s\""
 msgid "cannot rename columns of relation \"%s\""
 msgstr "no se puede alterar la columna heredada «%s» de la relación «%s»"
 
-#: commands/tablecmds.c:3505
+#: commands/tablecmds.c:3602
 #, 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:3537
+#: commands/tablecmds.c:3634
 #, c-format
 msgid "cannot rename system column \"%s\""
 msgstr "no se puede cambiar el nombre a la columna de sistema «%s»"
 
-#: commands/tablecmds.c:3552
+#: commands/tablecmds.c:3649
 #, c-format
 msgid "cannot rename inherited column \"%s\""
 msgstr "no se puede cambiar el nombre a la columna heredada «%s»"
 
-#: commands/tablecmds.c:3704
+#: commands/tablecmds.c:3801
 #, 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:3711
+#: commands/tablecmds.c:3808
 #, 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:4008
+#: commands/tablecmds.c:4105
 #, 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:4017
+#: commands/tablecmds.c:4114
 #, 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:4486
+#: commands/tablecmds.c:4581
 #, c-format
 msgid "cannot alter partition \"%s\" with an incomplete detach"
 msgstr "no se puede modificar la partición «%s» teniendo un desprendimiento incompleto"
 
-#: commands/tablecmds.c:4679 commands/tablecmds.c:4694
+#: commands/tablecmds.c:4774 commands/tablecmds.c:4789
 #, c-format
 msgid "cannot change persistence setting twice"
 msgstr "no se puede cambiar la opción de persistencia dos veces"
 
-#: commands/tablecmds.c:4715
+#: commands/tablecmds.c:4810
 #, fuzzy, c-format
 #| msgid "cannot change inheritance of partitioned table"
 msgid "cannot change access method of a partitioned table"
 msgstr "no se puede cambiar la herencia de una tabla particionada"
 
-#: commands/tablecmds.c:4721
+#: commands/tablecmds.c:4816
 #, fuzzy, c-format
 #| msgid "cannot have multiple SET TABLESPACE subcommands"
 msgid "cannot have multiple SET ACCESS METHOD subcommands"
 msgstr "no se pueden tener múltiples subórdenes SET TABLESPACE"
 
-#: commands/tablecmds.c:5476
+#: commands/tablecmds.c:5537
 #, c-format
 msgid "cannot rewrite system relation \"%s\""
 msgstr "no se puede reescribir la relación de sistema «%s»"
 
-#: commands/tablecmds.c:5482
+#: commands/tablecmds.c:5543
 #, 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:5492
+#: commands/tablecmds.c:5553
 #, c-format
 msgid "cannot rewrite temporary tables of other sessions"
 msgstr "no se puede reescribir tablas temporales de otras sesiones"
 
-#: commands/tablecmds.c:5986
+#: commands/tablecmds.c:6048
 #, c-format
 msgid "column \"%s\" of relation \"%s\" contains null values"
 msgstr "la columna «%s» de la relación «%s» contiene valores null"
 
-#: commands/tablecmds.c:6003
+#: commands/tablecmds.c:6065
 #, c-format
 msgid "check constraint \"%s\" of relation \"%s\" is violated by some row"
 msgstr "la restricción check «%s» de la relación «%s» es violada por alguna fila"
 
-#: commands/tablecmds.c:6022 partitioning/partbounds.c:3404
+#: commands/tablecmds.c:6084 partitioning/partbounds.c:3388
 #, c-format
 msgid "updated partition constraint for default partition \"%s\" would be violated 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:6028
+#: commands/tablecmds.c:6090
 #, c-format
 msgid "partition constraint of relation \"%s\" is violated by some row"
 msgstr "la restricción de partición de la relación «%s» es violada por alguna fila"
 
 #. translator: %s is a group of some SQL keywords
-#: commands/tablecmds.c:6295
+#: commands/tablecmds.c:6352
 #, fuzzy, c-format
 #| msgid "relation \"%s\" is not a parent of relation \"%s\""
 msgid "ALTER action %s cannot be performed on relation \"%s\""
 msgstr "relación «%s» no es un padre de la relación «%s»"
 
-#: commands/tablecmds.c:6510 commands/tablecmds.c:6517
+#: commands/tablecmds.c:6607 commands/tablecmds.c:6614
 #, c-format
 msgid "cannot alter type \"%s\" because column \"%s.%s\" uses it"
 msgstr "no se puede alterar el tipo «%s» porque la columna «%s.%s» lo usa"
 
-#: commands/tablecmds.c:6524
+#: commands/tablecmds.c:6621
 #, 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:6531
+#: commands/tablecmds.c:6628
 #, 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:6587
+#: commands/tablecmds.c:6684
 #, 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:6589
+#: commands/tablecmds.c:6686
 #, 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:6635
+#: commands/tablecmds.c:6732
 #, c-format
 msgid "type %s is not a composite type"
 msgstr "el tipo %s no es un tipo compuesto"
 
-#: commands/tablecmds.c:6662
+#: commands/tablecmds.c:6759
 #, c-format
 msgid "cannot add column to typed table"
 msgstr "no se puede agregar una columna a una tabla tipada"
 
-#: commands/tablecmds.c:6715
+#: commands/tablecmds.c:6812
 #, c-format
 msgid "cannot add column to a partition"
 msgstr "no se puede agregar una columna a una partición"
 
-#: commands/tablecmds.c:6744 commands/tablecmds.c:15060
+#: commands/tablecmds.c:6841 commands/tablecmds.c:15165
 #, 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:6750 commands/tablecmds.c:15067
+#: commands/tablecmds.c:6847 commands/tablecmds.c:15172
 #, 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:6764
+#: commands/tablecmds.c:6865
 #, 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:6807
+#: commands/tablecmds.c:6908
 #, 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:7051
+#: commands/tablecmds.c:7159
 #, 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:7129
+#: commands/tablecmds.c:7237
 #, 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:7136
+#: commands/tablecmds.c:7244
 #, c-format
 msgid "column \"%s\" of relation \"%s\" already exists"
 msgstr "ya existe la columna «%s» en la relación «%s»"
 
-#: commands/tablecmds.c:7202 commands/tablecmds.c:11989
+#: commands/tablecmds.c:7310 commands/tablecmds.c:12094
 #, 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:7203 commands/tablecmds.c:7520
-#: commands/tablecmds.c:8517 commands/tablecmds.c:11990
+#: commands/tablecmds.c:7311 commands/tablecmds.c:7628
+#: commands/tablecmds.c:8593 commands/tablecmds.c:12095
 #, c-format
 msgid "Do not specify the ONLY keyword."
 msgstr "No especifique la opción ONLY."
 
-#: commands/tablecmds.c:7240 commands/tablecmds.c:7446
-#: commands/tablecmds.c:7588 commands/tablecmds.c:7702
-#: commands/tablecmds.c:7796 commands/tablecmds.c:7855
-#: commands/tablecmds.c:7974 commands/tablecmds.c:8113
-#: commands/tablecmds.c:8183 commands/tablecmds.c:8339
-#: commands/tablecmds.c:12144 commands/tablecmds.c:13649
-#: commands/tablecmds.c:16237
+#: commands/tablecmds.c:7348 commands/tablecmds.c:7554
+#: commands/tablecmds.c:7696 commands/tablecmds.c:7810
+#: commands/tablecmds.c:7904 commands/tablecmds.c:7963
+#: commands/tablecmds.c:8082 commands/tablecmds.c:8221
+#: commands/tablecmds.c:8291 commands/tablecmds.c:8425
+#: commands/tablecmds.c:12249 commands/tablecmds.c:13753
+#: commands/tablecmds.c:16282
 #, c-format
 msgid "cannot alter system column \"%s\""
 msgstr "no se puede alterar columna de sistema «%s»"
 
-#: commands/tablecmds.c:7246 commands/tablecmds.c:7594
+#: commands/tablecmds.c:7354 commands/tablecmds.c:7702
 #, c-format
 msgid "column \"%s\" of relation \"%s\" is an identity column"
 msgstr "la columna «%s» en la relación «%s» es una columna de identidad"
 
-#: commands/tablecmds.c:7289
+#: commands/tablecmds.c:7397
 #, c-format
 msgid "column \"%s\" is in a primary key"
 msgstr "la columna «%s» está en la llave primaria"
 
-#: commands/tablecmds.c:7294
+#: commands/tablecmds.c:7402
 #, c-format
 msgid "column \"%s\" is in index used as replica identity"
 msgstr "la columna «%s» se encuentra en un índice utilizado como identidad de réplica"
 
-#: commands/tablecmds.c:7317
+#: commands/tablecmds.c:7425
 #, 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:7517 commands/tablecmds.c:9000
+#: commands/tablecmds.c:7625 commands/tablecmds.c:9077
 #, c-format
 msgid "constraint must be added to child tables too"
 msgstr "la restricción debe ser agregada a las tablas hijas también"
 
-#: commands/tablecmds.c:7518
+#: commands/tablecmds.c:7626
 #, 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:7596
+#: commands/tablecmds.c:7704
 #, 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:7601
+#: commands/tablecmds.c:7709
 #, 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:7604
+#: commands/tablecmds.c:7712
 #, c-format
 msgid "Use ALTER TABLE ... ALTER COLUMN ... DROP EXPRESSION instead."
 msgstr "Use ALTER TABLE ... ALTER COLUMN ... DROP EXPRESSION en su lugar."
 
-#: commands/tablecmds.c:7713
+#: commands/tablecmds.c:7821
 #, 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:7719
+#: commands/tablecmds.c:7827
 #, 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:7725
+#: commands/tablecmds.c:7833
 #, 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:7802 commands/tablecmds.c:7863
+#: commands/tablecmds.c:7910 commands/tablecmds.c:7971
 #, c-format
 msgid "column \"%s\" of relation \"%s\" is not an identity column"
 msgstr "la columna «%s» en la relación «%s» no es una columna identidad"
 
-#: commands/tablecmds.c:7868
+#: commands/tablecmds.c:7976
 #, 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:7921
+#: commands/tablecmds.c:8029
 #, c-format
 msgid "ALTER TABLE / DROP EXPRESSION must be applied to child tables too"
 msgstr "ALTER TABLE / DROP EXPRESSION se debe aplicar a las tablas hijas también"
 
-#: commands/tablecmds.c:7943
+#: commands/tablecmds.c:8051
 #, c-format
 msgid "cannot drop generation expression from inherited column"
 msgstr "no se puede eliminar la expresión de generación de una columna heredada"
 
-#: commands/tablecmds.c:7982
+#: commands/tablecmds.c:8090
 #, c-format
 msgid "column \"%s\" of relation \"%s\" is not a stored generated column"
 msgstr "la columna «%s» en la relación «%s» no es una columna generada almacenada"
 
-#: commands/tablecmds.c:7987
+#: commands/tablecmds.c:8095
 #, c-format
 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 generada almacenada, omitiendo"
 
-#: commands/tablecmds.c:8060
+#: commands/tablecmds.c:8168
 #, 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:8103
+#: commands/tablecmds.c:8211
 #, 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:8122
+#: commands/tablecmds.c:8230
 #, 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:8127
+#: commands/tablecmds.c:8235
 #, 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:8129
+#: commands/tablecmds.c:8237
 #, 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:8319
-#, c-format
-msgid "invalid storage type \"%s\""
-msgstr "tipo de almacenamiento no válido «%s»"
-
-#: commands/tablecmds.c:8351
-#, 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:8396
+#: commands/tablecmds.c:8472
 #, c-format
 msgid "cannot drop column from typed table"
 msgstr "no se pueden eliminar columnas de una tabla tipada"
 
-#: commands/tablecmds.c:8455
+#: commands/tablecmds.c:8531
 #, 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:8468
+#: commands/tablecmds.c:8544
 #, c-format
 msgid "cannot drop system column \"%s\""
 msgstr "no se puede eliminar la columna de sistema «%s»"
 
-#: commands/tablecmds.c:8478
+#: commands/tablecmds.c:8554
 #, c-format
 msgid "cannot drop inherited column \"%s\""
 msgstr "no se puede eliminar la columna heredada «%s»"
 
-#: commands/tablecmds.c:8491
+#: commands/tablecmds.c:8567
 #, c-format
 msgid "cannot drop column \"%s\" because it is part of the partition key of 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:8516
+#: commands/tablecmds.c:8592
 #, 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:8720
+#: commands/tablecmds.c:8797
 #, 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:8745
+#: commands/tablecmds.c:8822
 #, c-format
 msgid "ALTER TABLE / ADD CONSTRAINT USING INDEX will rename index \"%s\" to \"%s\""
 msgstr "ALTER TABLE / ADD CONSTRAINT USING INDEX renombrará el índice «%s» a «%s»"
 
-#: commands/tablecmds.c:9082
+#: commands/tablecmds.c:9159
 #, 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:9088
+#: commands/tablecmds.c:9165
 #, 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:9091
+#: commands/tablecmds.c:9168
 #, 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:9098 commands/tablecmds.c:9564
+#: commands/tablecmds.c:9175 commands/tablecmds.c:9631
 #, c-format
 msgid "referenced relation \"%s\" is not a table"
 msgstr "la relación referida «%s» no es una tabla"
 
-#: commands/tablecmds.c:9121
+#: commands/tablecmds.c:9198
 #, 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:9128
+#: commands/tablecmds.c:9205
 #, 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:9134
+#: commands/tablecmds.c:9211
 #, 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:9138
+#: commands/tablecmds.c:9215
 #, 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:9212 commands/tablecmds.c:9218
+#: commands/tablecmds.c:9279 commands/tablecmds.c:9285
 #, c-format
 msgid "invalid %s action for foreign key constraint containing generated column"
 msgstr "acción %s no válida para restricción de llave foránea que contiene columnas generadas"
 
-#: commands/tablecmds.c:9234
+#: commands/tablecmds.c:9301
 #, 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:9341
+#: commands/tablecmds.c:9408
 #, 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:9343
+#: commands/tablecmds.c:9410
 #, 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:9500
+#: commands/tablecmds.c:9567
 #, c-format
 msgid "column \"%s\" referenced in ON DELETE SET action must be part of foreign key"
 msgstr "la columna «%s» referenciada en la acción ON DELETE SET debe ser parte de la llave foránea"
 
-#: commands/tablecmds.c:9773 commands/tablecmds.c:10220
-#: parser/parse_utilcmd.c:795 parser/parse_utilcmd.c:924
+#: commands/tablecmds.c:9841 commands/tablecmds.c:10311
+#: parser/parse_utilcmd.c:791 parser/parse_utilcmd.c:920
 #, c-format
 msgid "foreign key constraints are not supported on foreign tables"
 msgstr "las restricciones de llave foránea no están soportadas en tablas foráneas"
 
-#: commands/tablecmds.c:10761 commands/tablecmds.c:11039
-#: commands/tablecmds.c:11946 commands/tablecmds.c:12021
+#: commands/tablecmds.c:10864 commands/tablecmds.c:11142
+#: commands/tablecmds.c:12051 commands/tablecmds.c:12126
 #, c-format
 msgid "constraint \"%s\" of relation \"%s\" does not exist"
 msgstr "no existe la restricción «%s» en la relación «%s»"
 
-#: commands/tablecmds.c:10768
+#: commands/tablecmds.c:10871
 #, 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 restricción de llave foránea"
 
-#: commands/tablecmds.c:10806
+#: commands/tablecmds.c:10909
 #, c-format
 msgid "cannot alter constraint \"%s\" on relation \"%s\""
 msgstr "no se puede modificar la restricción «%s» en la relación «%s»"
 
-#: commands/tablecmds.c:10809
+#: commands/tablecmds.c:10912
 #, c-format
 msgid "Constraint \"%s\" is derived from constraint \"%s\" of relation \"%s\"."
 msgstr "La restricción «%s» deriva de la restricción «%s» de la relación «%s»."
 
-#: commands/tablecmds.c:10811
+#: commands/tablecmds.c:10914
 #, c-format
 msgid "You may alter the constraint it derives from, instead."
 msgstr "En su lugar, puede modificar la restricción de la cual deriva."
 
-#: commands/tablecmds.c:11047
+#: commands/tablecmds.c:11150
 #, 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:11125
+#: commands/tablecmds.c:11227
 #, 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:11209
+#: commands/tablecmds.c:11314
 #, 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:11214
+#: commands/tablecmds.c:11320
+#, fuzzy, c-format
+#| msgid "Generated columns cannot be used in COPY."
+msgid "system columns cannot be used in foreign keys"
+msgstr "Las columnas generadas no pueden usarse en COPY."
+
+#: commands/tablecmds.c:11324
 #, 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:11280
+#: commands/tablecmds.c:11389
 #, 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:11297
+#: commands/tablecmds.c:11406
 #, 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:11362
+#: commands/tablecmds.c:11470
 #, 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:11456
+#: commands/tablecmds.c:11562
 #, 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:11461
+#: commands/tablecmds.c:11567
 #, 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:11902
+#: commands/tablecmds.c:12007
 #, 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:11952
+#: commands/tablecmds.c:12057
 #, 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:12128
+#: commands/tablecmds.c:12233
 #, 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:12155
+#: commands/tablecmds.c:12260
 #, c-format
 msgid "cannot alter inherited column \"%s\""
 msgstr "no se puede alterar la columna heredada «%s»"
 
-#: commands/tablecmds.c:12164
+#: commands/tablecmds.c:12269
 #, c-format
 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:12214
+#: commands/tablecmds.c:12319
 #, 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:12217
+#: commands/tablecmds.c:12322
 #, c-format
 msgid "You might need to add an explicit cast."
 msgstr "Puede ser necesario agregar un cast explícito."
 
-#: commands/tablecmds.c:12221
+#: commands/tablecmds.c:12326
 #, 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:12224
+#: commands/tablecmds.c:12329
 #, c-format
 msgid "You might need to specify \"USING %s::%s\"."
 msgstr "Puede ser necesario especificar «USING %s::%s»."
 
-#: commands/tablecmds.c:12323
+#: commands/tablecmds.c:12428
 #, 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:12351
+#: commands/tablecmds.c:12457
 #, 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:12362
+#: commands/tablecmds.c:12468
 #, 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:12487
+#: commands/tablecmds.c:12593
 #, 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:12525
+#: commands/tablecmds.c:12631
 #, 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:12530
+#: commands/tablecmds.c:12636
 #, 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:12611
+#: commands/tablecmds.c:12717
 #, 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:12612 commands/tablecmds.c:12631
-#: commands/tablecmds.c:12649
+#: commands/tablecmds.c:12718 commands/tablecmds.c:12737
+#: commands/tablecmds.c:12755
 #, c-format
 msgid "%s depends on column \"%s\""
 msgstr "%s depende de la columna «%s»"
 
-#: commands/tablecmds.c:12630
+#: commands/tablecmds.c:12736
 #, 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:12648
+#: commands/tablecmds.c:12754
 #, 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:12679
+#: commands/tablecmds.c:12785
 #, 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:12680
+#: commands/tablecmds.c:12786
 #, 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:13757 commands/tablecmds.c:13769
+#: commands/tablecmds.c:13861 commands/tablecmds.c:13873
 #, c-format
 msgid "cannot change owner of index \"%s\""
 msgstr "no se puede cambiar el dueño del índice «%s»"
 
-#: commands/tablecmds.c:13759 commands/tablecmds.c:13771
+#: commands/tablecmds.c:13863 commands/tablecmds.c:13875
 #, 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:13785
+#: commands/tablecmds.c:13889
 #, c-format
 msgid "cannot change owner of sequence \"%s\""
 msgstr "no se puede cambiar el dueño de la secuencia «%s»"
 
-#: commands/tablecmds.c:13799 commands/tablecmds.c:17129
-#: commands/tablecmds.c:17148
+#: commands/tablecmds.c:13903 commands/tablecmds.c:17201
+#: commands/tablecmds.c:17220
 #, c-format
 msgid "Use ALTER TYPE instead."
 msgstr "Considere usar ALTER TYPE."
 
-#: commands/tablecmds.c:13808
+#: commands/tablecmds.c:13912
 #, fuzzy, c-format
 #| msgid "cannot change owner of index \"%s\""
 msgid "cannot change owner of relation \"%s\""
 msgstr "no se puede cambiar el dueño del índice «%s»"
 
-#: commands/tablecmds.c:14170
+#: commands/tablecmds.c:14274
 #, c-format
 msgid "cannot have multiple SET TABLESPACE subcommands"
 msgstr "no se pueden tener múltiples subórdenes SET TABLESPACE"
 
-#: commands/tablecmds.c:14247
+#: commands/tablecmds.c:14351
 #, fuzzy, c-format
 #| msgid "cannot alter constraint \"%s\" on relation \"%s\""
 msgid "cannot set options for relation \"%s\""
 msgstr "no se puede modificar la restricción «%s» en la relación «%s»"
 
-#: commands/tablecmds.c:14281 commands/view.c:521
+#: commands/tablecmds.c:14385 commands/view.c:445
 #, c-format
 msgid "WITH CHECK OPTION is supported only on automatically updatable views"
 msgstr "WITH CHECK OPTION sólo puede usarse en vistas automáticamente actualizables"
 
-#: commands/tablecmds.c:14531
+#: commands/tablecmds.c:14635
 #, 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:14543
+#: commands/tablecmds.c:14647
 #, 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:14635
+#: commands/tablecmds.c:14739
 #, 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:14651
+#: commands/tablecmds.c:14755
 #, c-format
 msgid "no matching relations in tablespace \"%s\" found"
 msgstr "no se encontraron relaciones coincidentes en el tablespace «%s»"
 
-#: commands/tablecmds.c:14768
+#: commands/tablecmds.c:14873
 #, c-format
 msgid "cannot change inheritance of typed table"
 msgstr "no se puede cambiar la herencia de una tabla tipada"
 
-#: commands/tablecmds.c:14773 commands/tablecmds.c:15329
+#: commands/tablecmds.c:14878 commands/tablecmds.c:15396
 #, c-format
 msgid "cannot change inheritance of a partition"
 msgstr "no puede cambiar la herencia de una partición"
 
-#: commands/tablecmds.c:14778
+#: commands/tablecmds.c:14883
 #, c-format
 msgid "cannot change inheritance of partitioned table"
 msgstr "no se puede cambiar la herencia de una tabla particionada"
 
-#: commands/tablecmds.c:14824
+#: commands/tablecmds.c:14929
 #, 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:14837
+#: commands/tablecmds.c:14942
 #, c-format
 msgid "cannot inherit from a partition"
 msgstr "no se puede heredar de una partición"
 
-#: commands/tablecmds.c:14859 commands/tablecmds.c:17782
+#: commands/tablecmds.c:14964 commands/tablecmds.c:17841
 #, c-format
 msgid "circular inheritance not allowed"
 msgstr "la herencia circular no está permitida"
 
-#: commands/tablecmds.c:14860 commands/tablecmds.c:17783
+#: commands/tablecmds.c:14965 commands/tablecmds.c:17842
 #, c-format
 msgid "\"%s\" is already a child of \"%s\"."
 msgstr "«%s» ya es un hijo de «%s»."
 
-#: commands/tablecmds.c:14873
+#: commands/tablecmds.c:14978
 #, 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:14875
+#: commands/tablecmds.c:14980
 #, 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:15078
+#: commands/tablecmds.c:15183
 #, 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:15087
+#: commands/tablecmds.c:15192
 #, c-format
 msgid "column \"%s\" in child table must be a generated column"
 msgstr "columna «%s» en tabla hija debe ser una columna generada"
 
-#: commands/tablecmds.c:15137
-#, c-format
-msgid "column \"%s\" in child table has a conflicting generation expression"
-msgstr "la columna «%s» en tabla hija tiene una expresión de generación en conflicto"
+#: commands/tablecmds.c:15197
+#, fuzzy, c-format
+#| msgid "column \"%s\" in child table must be a generated column"
+msgid "column \"%s\" in child table must not be a generated column"
+msgstr "columna «%s» en tabla hija debe ser una columna generada"
 
-#: commands/tablecmds.c:15165
+#: commands/tablecmds.c:15228
 #, c-format
 msgid "child table is missing column \"%s\""
 msgstr "tabla hija no tiene la columna «%s»"
 
-#: commands/tablecmds.c:15253
+#: commands/tablecmds.c:15316
 #, 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:15261
+#: commands/tablecmds.c:15324
 #, 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:15272
+#: commands/tablecmds.c:15335
 #, 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:15307
+#: commands/tablecmds.c:15374
 #, c-format
 msgid "child table is missing constraint \"%s\""
 msgstr "tabla hija no tiene la restricción «%s»"
 
-#: commands/tablecmds.c:15393
+#: commands/tablecmds.c:15460
 #, c-format
 msgid "partition \"%s\" already pending detach in partitioned table \"%s.%s\""
 msgstr "la partición «%s» ya tiene un desprendimiento pendiente en la tabla particionada «%s.%s»"
 
-#: commands/tablecmds.c:15422 commands/tablecmds.c:15470
+#: commands/tablecmds.c:15489 commands/tablecmds.c:15537
 #, 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:15476
+#: commands/tablecmds.c:15543
 #, 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:15704
+#: commands/tablecmds.c:15771
 #, c-format
 msgid "typed tables cannot inherit"
 msgstr "las tablas tipadas no pueden heredar"
 
-#: commands/tablecmds.c:15734
+#: commands/tablecmds.c:15801
 #, c-format
 msgid "table is missing column \"%s\""
 msgstr "la tabla no tiene la columna «%s»"
 
-#: commands/tablecmds.c:15745
+#: commands/tablecmds.c:15812
 #, 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:15754
+#: commands/tablecmds.c:15821
 #, 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:15768
+#: commands/tablecmds.c:15835
 #, c-format
 msgid "table has extra column \"%s\""
 msgstr "tabla tiene la columna extra «%s»"
 
-#: commands/tablecmds.c:15820
+#: commands/tablecmds.c:15887
 #, c-format
 msgid "\"%s\" is not a typed table"
 msgstr "«%s» no es una tabla tipada"
 
-#: commands/tablecmds.c:16008
+#: commands/tablecmds.c:16061
 #, 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:16014
+#: commands/tablecmds.c:16067
 #, 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:16020
+#: commands/tablecmds.c:16073
 #, 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:16026
+#: commands/tablecmds.c:16079
 #, 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:16032
-#, 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:16049
+#: commands/tablecmds.c:16096
 #, 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:16056
+#: commands/tablecmds.c:16103
 #, 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:16303
+#: commands/tablecmds.c:16348
 #, 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:16327
+#: commands/tablecmds.c:16372
 #, 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:16329
+#: commands/tablecmds.c:16374
 #, c-format
 msgid "Unlogged relations cannot be replicated."
 msgstr "Las tablas «unlogged» no pueden replicarse."
 
-#: commands/tablecmds.c:16374
+#: commands/tablecmds.c:16419
 #, 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:16384
+#: commands/tablecmds.c:16429
 #, 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:16442
+#: commands/tablecmds.c:16487
 #, 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:16549
+#: commands/tablecmds.c:16594
 #, 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:16962
+#: commands/tablecmds.c:17006
 #, c-format
 msgid "\"%s\" is not a table or materialized view"
 msgstr "«%s» no es una tabla o vista materializada"
 
-#: commands/tablecmds.c:17112
+#: commands/tablecmds.c:17184
 #, c-format
 msgid "\"%s\" is not a composite type"
 msgstr "«%s» no es un tipo compuesto"
 
-#: commands/tablecmds.c:17140
+#: commands/tablecmds.c:17212
 #, fuzzy, c-format
 #| msgid "cannot change owner of index \"%s\""
 msgid "cannot change schema of index \"%s\""
 msgstr "no se puede cambiar el dueño del índice «%s»"
 
-#: commands/tablecmds.c:17142 commands/tablecmds.c:17154
+#: commands/tablecmds.c:17214 commands/tablecmds.c:17226
 #, fuzzy, c-format
 #| msgid "Change the ownership of the index's table, instead."
 msgid "Change the schema of the table instead."
 msgstr "Considere cambiar el dueño de la tabla en vez de cambiar el dueño del índice."
 
-#: commands/tablecmds.c:17146
+#: commands/tablecmds.c:17218
 #, fuzzy, c-format
 #| msgid "cannot convert Perl hash to non-composite type %s"
 msgid "cannot change schema of composite type \"%s\""
 msgstr "no se puede convertir un hash de Perl al tipo no compuesto %s"
 
-#: commands/tablecmds.c:17152
+#: commands/tablecmds.c:17224
 #, fuzzy, c-format
 #| msgid "cannot change TOAST relation \"%s\""
 msgid "cannot change schema of TOAST table \"%s\""
 msgstr "no se puede cambiar la relación TOAST «%s»"
 
-#: commands/tablecmds.c:17189
-#, c-format
-msgid "unrecognized partitioning strategy \"%s\""
-msgstr "estrategia de particionamiento «%s» no reconocida"
-
-#: commands/tablecmds.c:17197
+#: commands/tablecmds.c:17256
 #, 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:17263
+#: commands/tablecmds.c:17322
 #, 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:17271
+#: commands/tablecmds.c:17330
 #, 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:17282 commands/tablecmds.c:17396
+#: commands/tablecmds.c:17341 commands/tablecmds.c:17455
 #, 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:17283 commands/tablecmds.c:17397 commands/trigger.c:667
-#: rewrite/rewriteHandler.c:907 rewrite/rewriteHandler.c:942
+#: commands/tablecmds.c:17342 commands/tablecmds.c:17456 commands/trigger.c:663
+#: rewrite/rewriteHandler.c:934 rewrite/rewriteHandler.c:969
 #, c-format
 msgid "Column \"%s\" is a generated column."
 msgstr "La columna «%s» es una columna generada."
 
-#: commands/tablecmds.c:17359
+#: commands/tablecmds.c:17418
 #, 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:17379
+#: commands/tablecmds.c:17438
 #, 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:17409
+#: commands/tablecmds.c:17468
 #, c-format
 msgid "cannot use constant expression as partition key"
 msgstr "no se pueden usar expresiones constantes como llave de particionamiento"
 
-#: commands/tablecmds.c:17430
+#: commands/tablecmds.c:17489
 #, 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:17465
+#: commands/tablecmds.c:17524
 #, 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:17471
+#: commands/tablecmds.c:17530
 #, 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:17722
+#: commands/tablecmds.c:17781
 #, c-format
 msgid "\"%s\" is already a partition"
 msgstr "«%s» ya es una partición"
 
-#: commands/tablecmds.c:17728
+#: commands/tablecmds.c:17787
 #, c-format
 msgid "cannot attach a typed table as partition"
 msgstr "no puede adjuntar tabla tipada como partición"
 
-#: commands/tablecmds.c:17744
+#: commands/tablecmds.c:17803
 #, c-format
 msgid "cannot attach inheritance child as partition"
 msgstr "no puede adjuntar hija de herencia como partición"
 
-#: commands/tablecmds.c:17758
+#: commands/tablecmds.c:17817
 #, c-format
 msgid "cannot attach inheritance parent as partition"
 msgstr "no puede adjuntar ancestro de herencia como partición"
 
-#: commands/tablecmds.c:17792
+#: commands/tablecmds.c:17851
 #, 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:17800
+#: commands/tablecmds.c:17859
 #, 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:17808
+#: commands/tablecmds.c:17867
 #, 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:17815
+#: commands/tablecmds.c:17874
 #, 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:17835
+#: commands/tablecmds.c:17894
 #, 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:17838
+#: commands/tablecmds.c:17897
 #, 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:17850
+#: commands/tablecmds.c:17909
 #, 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:17852
+#: commands/tablecmds.c:17911
 #, 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:18031
+#: commands/tablecmds.c:18090
 #, 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:18034
+#: commands/tablecmds.c:18093
 #, c-format
 msgid "Partitioned table \"%s\" contains unique indexes."
 msgstr "La tabla particionada «%s» contiene índices únicos."
 
-#: commands/tablecmds.c:18345
+#: commands/tablecmds.c:18406
 #, c-format
 msgid "cannot detach partitions concurrently when a default partition exists"
 msgstr "no se puede desprender particiones concurrentemente cuando existe una partición por omisión"
 
-#: commands/tablecmds.c:18454
+#: commands/tablecmds.c:18515
 #, c-format
 msgid "partitioned table \"%s\" was removed concurrently"
 msgstr "la tabla particionada «%s» fue eliminada concurrentemente"
 
-#: commands/tablecmds.c:18460
+#: commands/tablecmds.c:18521
 #, c-format
 msgid "partition \"%s\" was removed concurrently"
 msgstr "la partición «%s» fue eliminada concurrentemente"
 
-#: commands/tablecmds.c:18964 commands/tablecmds.c:18984
-#: commands/tablecmds.c:19004 commands/tablecmds.c:19023
-#: commands/tablecmds.c:19065
+#: commands/tablecmds.c:19036 commands/tablecmds.c:19056
+#: commands/tablecmds.c:19077 commands/tablecmds.c:19096
+#: commands/tablecmds.c:19138
 #, 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:18967
+#: commands/tablecmds.c:19039
 #, c-format
 msgid "Index \"%s\" is already attached to another index."
 msgstr "El índice «%s» ya está adjunto a otro índice."
 
-#: commands/tablecmds.c:18987
+#: commands/tablecmds.c:19059
 #, 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:19007
+#: commands/tablecmds.c:19080
 #, c-format
 msgid "The index definitions do not match."
 msgstr "Las definiciones de los índices no coinciden."
 
-#: commands/tablecmds.c:19026
+#: commands/tablecmds.c:19099
 #, 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:19068
+#: commands/tablecmds.c:19141
 #, c-format
 msgid "Another index is already attached for partition \"%s\"."
 msgstr "Otro índice ya está adjunto para la partición «%s»."
 
-#: commands/tablecmds.c:19298
+#: commands/tablecmds.c:19370
 #, c-format
 msgid "column data type %s does not support compression"
 msgstr "el tipo de dato de columna %s no soporta compresión"
 
-#: commands/tablecmds.c:19305
+#: commands/tablecmds.c:19377
 #, c-format
 msgid "invalid compression method \"%s\""
 msgstr "método de compresión «%s» no válido"
 
-#: commands/tablespace.c:199 commands/tablespace.c:665
+#: commands/tablecmds.c:19403
+#, c-format
+msgid "invalid storage type \"%s\""
+msgstr "tipo de almacenamiento no válido «%s»"
+
+#: commands/tablecmds.c:19413
+#, 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/tablespace.c:199 commands/tablespace.c:650
 #, c-format
 msgid "\"%s\" exists but is not a directory"
 msgstr "«%s» existe pero no es un directorio"
 
-#: commands/tablespace.c:231
+#: commands/tablespace.c:230
 #, c-format
 msgid "permission denied to create tablespace \"%s\""
 msgstr "se ha denegado el permiso para crear el tablespace «%s»"
 
-#: commands/tablespace.c:233
+#: commands/tablespace.c:232
 #, c-format
 msgid "Must be superuser to create a tablespace."
 msgstr "Debe ser superusuario para crear tablespaces."
 
-#: commands/tablespace.c:249
+#: commands/tablespace.c:248
 #, c-format
 msgid "tablespace location cannot contain single quotes"
 msgstr "la ruta del tablespace no puede contener comillas simples"
 
-#: commands/tablespace.c:262
+#: commands/tablespace.c:261
 #, c-format
 msgid "tablespace location must be an absolute path"
 msgstr "la ubicación del tablespace debe ser una ruta absoluta"
 
-#: commands/tablespace.c:274
+#: commands/tablespace.c:273
 #, c-format
 msgid "tablespace location \"%s\" is too long"
 msgstr "la ruta «%s» del tablespace es demasiado larga"
 
-#: commands/tablespace.c:281
+#: commands/tablespace.c:280
 #, 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:290 commands/tablespace.c:996
+#: commands/tablespace.c:289 commands/tablespace.c:976
 #, c-format
 msgid "unacceptable tablespace name \"%s\""
 msgstr "el nombre de tablespace «%s» es inaceptable"
 
-#: commands/tablespace.c:292 commands/tablespace.c:997
+#: commands/tablespace.c:291 commands/tablespace.c:977
 #, c-format
 msgid "The prefix \"pg_\" is reserved for system tablespaces."
 msgstr "El prefijo «pg_» está reservado para tablespaces del sistema."
 
-#: commands/tablespace.c:311 commands/tablespace.c:1018
+#: commands/tablespace.c:310 commands/tablespace.c:998
 #, c-format
 msgid "tablespace \"%s\" already exists"
 msgstr "el tablespace «%s» ya existe"
 
-#: commands/tablespace.c:329
+#: commands/tablespace.c:326
 #, fuzzy, c-format
 #| msgid "pg_type OID value not set when in binary upgrade mode"
 msgid "pg_tablespace 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/tablespace.c:441 commands/tablespace.c:979
-#: commands/tablespace.c:1068 commands/tablespace.c:1137
-#: commands/tablespace.c:1283 commands/tablespace.c:1486
+#: commands/tablespace.c:431 commands/tablespace.c:959
+#: commands/tablespace.c:1048 commands/tablespace.c:1117
+#: commands/tablespace.c:1263 commands/tablespace.c:1466
 #, c-format
 msgid "tablespace \"%s\" does not exist"
 msgstr "no existe el tablespace «%s»"
 
-#: commands/tablespace.c:447
+#: commands/tablespace.c:437
 #, c-format
 msgid "tablespace \"%s\" does not exist, skipping"
 msgstr "el tablespace «%s» no existe, omitiendo"
 
-#: commands/tablespace.c:473
+#: commands/tablespace.c:463
 #, c-format
 msgid "tablespace \"%s\" cannot be dropped because some objects depend on it"
 msgstr "no se puede eliminar el tablespace «%s» porque otros objetos dependen de él"
 
-#: commands/tablespace.c:540
+#: commands/tablespace.c:530
 #, c-format
 msgid "tablespace \"%s\" is not empty"
 msgstr "el tablespace «%s» no está vacío"
 
-#: commands/tablespace.c:632
+#: commands/tablespace.c:617
 #, c-format
 msgid "directory \"%s\" does not exist"
 msgstr "no existe el directorio «%s»"
 
-#: commands/tablespace.c:633
+#: commands/tablespace.c:618
 #, 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:638
+#: commands/tablespace.c:623
 #, 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:670
+#: commands/tablespace.c:655
 #, c-format
 msgid "directory \"%s\" already in use as a tablespace"
 msgstr "el directorio «%s» ya está siendo usado como tablespace"
 
-#: commands/tablespace.c:788 commands/tablespace.c:801
-#: commands/tablespace.c:837 commands/tablespace.c:929 storage/file/fd.c:3255
-#: storage/file/fd.c:3669
-#, c-format
-msgid "could not remove directory \"%s\": %m"
-msgstr "no se pudo eliminar el directorio «%s»: %m"
-
-#: commands/tablespace.c:850 commands/tablespace.c:938
+#: commands/tablespace.c:833 commands/tablespace.c:919
 #, c-format
 msgid "could not remove symbolic link \"%s\": %m"
 msgstr "no se pudo eliminar el enlace simbólico «%s»: %m"
 
-#: commands/tablespace.c:860 commands/tablespace.c:947
+#: commands/tablespace.c:842 commands/tablespace.c:927
 #, c-format
 msgid "\"%s\" is not a directory or symbolic link"
 msgstr "«%s» no es un directorio o enlace simbólico"
 
-#: commands/tablespace.c:1142
+#: commands/tablespace.c:1122
 #, c-format
 msgid "Tablespace \"%s\" does not exist."
 msgstr "No existe el tablespace «%s»."
 
-#: commands/tablespace.c:1588
+#: commands/tablespace.c:1568
 #, c-format
 msgid "directories for tablespace %u could not be removed"
 msgstr "algunos directorios para el tablespace %u no pudieron eliminarse"
 
-#: commands/tablespace.c:1590
+#: commands/tablespace.c:1570
 #, c-format
 msgid "You can remove the directories manually if necessary."
 msgstr "Puede eliminar los directorios manualmente, si es necesario."
 
-#: commands/trigger.c:229 commands/trigger.c:240
+#: commands/trigger.c:232 commands/trigger.c:243
 #, c-format
 msgid "\"%s\" is a table"
 msgstr "«%s» es una tabla"
 
-#: commands/trigger.c:231 commands/trigger.c:242
+#: commands/trigger.c:234 commands/trigger.c:245
 #, c-format
 msgid "Tables cannot have INSTEAD OF triggers."
 msgstr "Las tablas no pueden tener disparadores INSTEAD OF."
 
-#: commands/trigger.c:263
+#: commands/trigger.c:266
 #, c-format
 msgid "\"%s\" is a partitioned table"
 msgstr "«%s» es una tabla particionada"
 
-#: commands/trigger.c:265
-#, 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:268
+#, fuzzy, c-format
+#| msgid "ROW triggers with transition tables are not supported on partitions."
+msgid "ROW triggers with transition tables are not supported on partitioned tables."
+msgstr "Los triggers ROW con tablas de transición no están soportados en particiones."
 
-#: commands/trigger.c:277 commands/trigger.c:284 commands/trigger.c:455
+#: commands/trigger.c:280 commands/trigger.c:287 commands/trigger.c:451
 #, c-format
 msgid "\"%s\" is a view"
 msgstr "«%s» es una vista"
 
-#: commands/trigger.c:279
+#: commands/trigger.c:282
 #, 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:286
+#: commands/trigger.c:289
 #, c-format
 msgid "Views cannot have TRUNCATE triggers."
 msgstr "Las vistas no pueden tener disparadores TRUNCATE."
 
-#: commands/trigger.c:294 commands/trigger.c:301 commands/trigger.c:313
-#: commands/trigger.c:448
+#: commands/trigger.c:297 commands/trigger.c:309 commands/trigger.c:444
 #, c-format
 msgid "\"%s\" is a foreign table"
 msgstr "«%s» es una tabla foránea"
 
-#: commands/trigger.c:296
+#: commands/trigger.c:299
 #, c-format
 msgid "Foreign tables cannot have INSTEAD OF triggers."
 msgstr "Las tablas foráneas no pueden tener disparadores INSTEAD OF."
 
-#: commands/trigger.c:303
-#, c-format
-msgid "Foreign tables cannot have TRUNCATE triggers."
-msgstr "Las tablas foráneas no pueden tener disparadores TRUNCATE."
-
-#: commands/trigger.c:315
+#: commands/trigger.c:311
 #, c-format
 msgid "Foreign tables cannot have constraint triggers."
 msgstr "Las tablas foráneas no pueden tener disparadores de restricción."
 
-#: commands/trigger.c:320 commands/trigger.c:1375 commands/trigger.c:1482
+#: commands/trigger.c:316 commands/trigger.c:1332 commands/trigger.c:1439
 #, fuzzy, c-format
 #| msgid "Foreign tables cannot have TRUNCATE triggers."
 msgid "relation \"%s\" cannot have triggers"
 msgstr "Las tablas foráneas no pueden tener disparadores TRUNCATE."
 
-#: commands/trigger.c:391
+#: commands/trigger.c:387
 #, 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:399
+#: commands/trigger.c:395
 #, c-format
 msgid "INSTEAD OF triggers must be FOR EACH ROW"
 msgstr "los disparadores INSTEAD OF deben ser FOR EACH ROW"
 
-#: commands/trigger.c:403
+#: commands/trigger.c:399
 #, c-format
 msgid "INSTEAD OF triggers cannot have WHEN conditions"
 msgstr "los disparadores INSTEAD OF no pueden tener condiciones WHEN"
 
-#: commands/trigger.c:407
+#: commands/trigger.c:403
 #, c-format
 msgid "INSTEAD OF triggers cannot have column lists"
 msgstr "los disparadores INSTEAD OF no pueden tener listas de columnas"
 
-#: commands/trigger.c:436
+#: commands/trigger.c:432
 #, 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:437
+#: commands/trigger.c:433
 #, 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:450
+#: commands/trigger.c:446
 #, 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:457
+#: commands/trigger.c:453
 #, 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:473
+#: commands/trigger.c:469
 #, 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/trigger.c:477
+#: commands/trigger.c:473
 #, 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:483
+#: commands/trigger.c:479
 #, 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:488
+#: commands/trigger.c:484
 #, 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:505
+#: commands/trigger.c:501
 #, 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:516
+#: commands/trigger.c:512
 #, 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:533
+#: commands/trigger.c:529
 #, 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:538
+#: commands/trigger.c:534
 #, c-format
 msgid "NEW TABLE cannot be specified multiple times"
 msgstr "NEW TABLE no se puede especificar varias veces"
 
-#: commands/trigger.c:548
+#: commands/trigger.c:544
 #, c-format
 msgid "OLD TABLE can only be specified for a DELETE or UPDATE trigger"
 msgstr "OLD TABLE sólo se puede especificar para un disparador DELETE o UPDATE"
 
-#: commands/trigger.c:553
+#: commands/trigger.c:549
 #, c-format
 msgid "OLD TABLE cannot be specified multiple times"
 msgstr "OLD TABLE no se puede especificar varias veces"
 
-#: commands/trigger.c:563
+#: commands/trigger.c:559
 #, 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:627 commands/trigger.c:640
+#: commands/trigger.c:623 commands/trigger.c:636
 #, c-format
 msgid "statement trigger's WHEN condition cannot reference column values"
 msgstr "la condición WHEN de un disparador por sentencias no pueden referirse a los valores de las columnas"
 
-#: commands/trigger.c:632
+#: commands/trigger.c:628
 #, 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:645
+#: commands/trigger.c:641
 #, 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:650
+#: commands/trigger.c:646
 #, 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:658 commands/trigger.c:666
+#: commands/trigger.c:654 commands/trigger.c:662
 #, c-format
 msgid "BEFORE trigger's WHEN condition cannot reference NEW generated columns"
 msgstr "la condición WHEN del trigger BEFORE no puede hacer referencia a columnas NEW generadas"
 
-#: commands/trigger.c:659
+#: commands/trigger.c:655
 #, 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:774 commands/trigger.c:1657
+#: commands/trigger.c:770 commands/trigger.c:1614
 #, c-format
 msgid "trigger \"%s\" for relation \"%s\" already exists"
 msgstr "ya existe un trigger «%s» para la relación «%s»"
 
-#: commands/trigger.c:787
+#: commands/trigger.c:783
 #, fuzzy, c-format
-#| msgid "trigger \"%s\" for relation \"%s\" is an internal trigger"
+#| msgid "trigger \"%s\" for relation \"%s\" is a constraint trigger"
 msgid "trigger \"%s\" for relation \"%s\" is an internal or a child trigger"
-msgstr "disparador «%s» para la relación «%s» es un disparador interno"
+msgstr "disparador «%s» para la relación «%s» es un disparador de restricción"
 
-#: commands/trigger.c:806
+#: commands/trigger.c:802
 #, c-format
 msgid "trigger \"%s\" for relation \"%s\" is a constraint trigger"
 msgstr "disparador «%s» para la relación «%s» es un disparador de restricción"
 
-#: commands/trigger.c:1447 commands/trigger.c:1600 commands/trigger.c:1876
+#: commands/trigger.c:1404 commands/trigger.c:1557 commands/trigger.c:1838
 #, c-format
 msgid "trigger \"%s\" for table \"%s\" does not exist"
 msgstr "no existe el trigger «%s» para la tabla «%s»"
 
-#: commands/trigger.c:1572
+#: commands/trigger.c:1529
 #, fuzzy, c-format
 #| msgid "no pg_constraint entry for trigger \"%s\" on table \"%s\""
 msgid "cannot rename trigger \"%s\" on table \"%s\""
 msgstr "no hay una entrada en pg_constraint para el trigger «%s» en tabla «%s»"
 
-#: commands/trigger.c:1574
+#: commands/trigger.c:1531
 #, fuzzy, c-format
-#| msgid "cannot inherit from partitioned table \"%s\""
+#| msgid "Change the ownership of the index's table, instead."
 msgid "Rename the trigger on the partitioned table \"%s\" instead."
-msgstr "no se puede heredar de la tabla particionada «%s»"
+msgstr "Considere cambiar el dueño de la tabla en vez de cambiar el dueño del índice."
 
-#: commands/trigger.c:1674
+#: commands/trigger.c:1631
 #, fuzzy, c-format
 #| msgid "cannot alter constraint \"%s\" on relation \"%s\""
 msgid "renamed trigger \"%s\" on relation \"%s\""
 msgstr "no se puede modificar la restricción «%s» en la relación «%s»"
 
-#: commands/trigger.c:1816
+#: commands/trigger.c:1777
 #, c-format
 msgid "permission denied: \"%s\" is a system trigger"
 msgstr "permiso denegado: «%s» es un trigger de sistema"
 
-#: commands/trigger.c:2437
+#: commands/trigger.c:2386
 #, c-format
 msgid "trigger function %u returned null value"
 msgstr "la función de trigger %u ha retornado un valor null"
 
-#: commands/trigger.c:2497 commands/trigger.c:2715 commands/trigger.c:2965
-#: commands/trigger.c:3298
+#: commands/trigger.c:2446 commands/trigger.c:2664 commands/trigger.c:2917
+#: commands/trigger.c:3252
 #, c-format
 msgid "BEFORE STATEMENT trigger cannot return a value"
 msgstr "un trigger BEFORE STATEMENT no puede retornar un valor"
 
-#: commands/trigger.c:2573
+#: commands/trigger.c:2522
 #, c-format
 msgid "moving row to another partition during a BEFORE FOR EACH ROW trigger is not supported"
 msgstr "mover registros a otra partición durante un trigger BEFORE FOR EACH ROW no está soportado"
 
-#: commands/trigger.c:2574
+#: commands/trigger.c:2523
 #, c-format
 msgid "Before executing trigger \"%s\", the row was to be in partition \"%s.%s\"."
 msgstr "Antes de ejecutar el trigger «%s», la fila iba a estar en la partición «%s.%s»."
 
-#: commands/trigger.c:3372 executor/nodeModifyTable.c:2226
-#: executor/nodeModifyTable.c:2309
+#: commands/trigger.c:3329 executor/nodeModifyTable.c:2363
+#: executor/nodeModifyTable.c:2446
 #, c-format
 msgid "tuple to be updated was already modified by an operation triggered by the current command"
 msgstr "el registro a ser actualizado ya fue modificado por una operación disparada por la orden actual"
 
-#: commands/trigger.c:3373 executor/nodeModifyTable.c:1412
-#: executor/nodeModifyTable.c:1486 executor/nodeModifyTable.c:2227
-#: executor/nodeModifyTable.c:2310 executor/nodeModifyTable.c:2968
+#: commands/trigger.c:3330 executor/nodeModifyTable.c:1531
+#: executor/nodeModifyTable.c:1605 executor/nodeModifyTable.c:2364
+#: executor/nodeModifyTable.c:2447 executor/nodeModifyTable.c:3077
 #, 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:3402 executor/nodeLockRows.c:229
-#: executor/nodeLockRows.c:238 executor/nodeModifyTable.c:329
-#: executor/nodeModifyTable.c:1428 executor/nodeModifyTable.c:2244
-#: executor/nodeModifyTable.c:2454
+#: commands/trigger.c:3371 executor/nodeLockRows.c:229
+#: executor/nodeLockRows.c:238 executor/nodeModifyTable.c:308
+#: executor/nodeModifyTable.c:1547 executor/nodeModifyTable.c:2381
+#: executor/nodeModifyTable.c:2589
 #, c-format
 msgid "could not serialize access due to concurrent update"
 msgstr "no se pudo serializar el acceso debido a un update concurrente"
 
-#: commands/trigger.c:3410 executor/nodeModifyTable.c:1518
-#: executor/nodeModifyTable.c:2327 executor/nodeModifyTable.c:2478
-#: executor/nodeModifyTable.c:2834
+#: commands/trigger.c:3379 executor/nodeModifyTable.c:1637
+#: executor/nodeModifyTable.c:2464 executor/nodeModifyTable.c:2613
+#: executor/nodeModifyTable.c:2965
 #, 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:4586
+#: commands/trigger.c:4555
 #, c-format
 msgid "cannot fire deferred trigger within security-restricted operation"
 msgstr "no se puede ejecutar un disparador postergado dentro de una operación restringida por seguridad"
 
-#: commands/trigger.c:5762
+#: commands/trigger.c:5738
 #, c-format
 msgid "constraint \"%s\" is not deferrable"
 msgstr "la restricción «%s» no es postergable"
 
-#: commands/trigger.c:5785
+#: commands/trigger.c:5761
 #, c-format
 msgid "constraint \"%s\" does not exist"
 msgstr "no existe la restricción «%s»"
@@ -11892,22 +12139,22 @@ msgstr "no se puede especificar simultáneamente las opciones PARSER y COPY"
 msgid "text search parser is required"
 msgstr "el analizador de búsqueda en texto es obligatorio"
 
-#: commands/tsearchcmds.c:1200
+#: commands/tsearchcmds.c:1241
 #, c-format
 msgid "token type \"%s\" does not exist"
 msgstr "no existe el tipo de elemento «%s»"
 
-#: commands/tsearchcmds.c:1427
+#: commands/tsearchcmds.c:1501
 #, 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:1433
+#: commands/tsearchcmds.c:1507
 #, 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:1596 commands/tsearchcmds.c:1711
+#: commands/tsearchcmds.c:1670 commands/tsearchcmds.c:1785
 #, c-format
 msgid "invalid parameter list format: \"%s\""
 msgstr "el formato de la lista de parámetros no es válido: «%s»"
@@ -11922,7 +12169,7 @@ msgstr "debe ser superusuario para crear un tipo base"
 msgid "Create the type as a shell type, then create its I/O functions, then do a full CREATE TYPE."
 msgstr "Cree el tipo como un tipo inconcluso, luego cree sus funciones de I/O, luego haga un CREATE TYPE completo."
 
-#: commands/typecmds.c:327 commands/typecmds.c:1450 commands/typecmds.c:4268
+#: commands/typecmds.c:327 commands/typecmds.c:1450 commands/typecmds.c:4257
 #, c-format
 msgid "type attribute \"%s\" not recognized"
 msgstr "el atributo de tipo «%s» no es reconocido"
@@ -11942,7 +12189,7 @@ msgstr "el tipo de elemento de array no puede ser %s"
 msgid "alignment \"%s\" not recognized"
 msgstr "el alineamiento «%s» no es reconocido"
 
-#: commands/typecmds.c:450 commands/typecmds.c:4142
+#: commands/typecmds.c:450 commands/typecmds.c:4131
 #, c-format
 msgid "storage \"%s\" not recognized"
 msgstr "el almacenamiento «%s» no es reconocido"
@@ -11987,32 +12234,32 @@ msgstr "las restricciones NULL/NOT NULL no coinciden"
 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:976 commands/typecmds.c:2960
+#: commands/typecmds.c:976 commands/typecmds.c:2956
 #, c-format
 msgid "unique constraints not possible for domains"
 msgstr "no se pueden poner restricciones de unicidad a un dominio"
 
-#: commands/typecmds.c:982 commands/typecmds.c:2966
+#: commands/typecmds.c:982 commands/typecmds.c:2962
 #, c-format
 msgid "primary key constraints not possible for domains"
 msgstr "no se pueden poner restricciones de llave primaria a un dominio"
 
-#: commands/typecmds.c:988 commands/typecmds.c:2972
+#: commands/typecmds.c:988 commands/typecmds.c:2968
 #, c-format
 msgid "exclusion constraints not possible for domains"
 msgstr "las restricciones de exclusión no son posibles para los dominios"
 
-#: commands/typecmds.c:994 commands/typecmds.c:2978
+#: commands/typecmds.c:994 commands/typecmds.c:2974
 #, c-format
 msgid "foreign key constraints not possible for domains"
 msgstr "no se pueden poner restricciones de llave foránea a un dominio"
 
-#: commands/typecmds.c:1003 commands/typecmds.c:2987
+#: commands/typecmds.c:1003 commands/typecmds.c:2983
 #, c-format
 msgid "specifying constraint deferrability not supported for domains"
 msgstr "no se puede especificar la postergabilidad de las restricciones a un dominio"
 
-#: commands/typecmds.c:1317 utils/cache/typcache.c:2567
+#: commands/typecmds.c:1317 utils/cache/typcache.c:2561
 #, c-format
 msgid "%s is not an enum"
 msgstr "%s no es un enum"
@@ -12042,517 +12289,662 @@ msgstr "no se puede especificar una función canónica sin antes crear un tipo i
 msgid "Create the type as a shell type, then create its canonicalization function, then do a full CREATE TYPE."
 msgstr "Cree el tipo como un tipo inconcluso, luego cree su función de canonicalización, luego haga un CREATE TYPE completo."
 
-#: commands/typecmds.c:1966
+#: commands/typecmds.c:1965
 #, c-format
 msgid "type input function %s has multiple matches"
 msgstr "la función de entrada %s del tipo tiene múltiples coincidencias"
 
-#: commands/typecmds.c:1984
+#: commands/typecmds.c:1983
 #, 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:2000
+#: commands/typecmds.c:1999
 #, 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:2028
+#: commands/typecmds.c:2027
 #, 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:2035
+#: commands/typecmds.c:2034
 #, 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:2064
+#: commands/typecmds.c:2063
 #, c-format
 msgid "type receive function %s has multiple matches"
 msgstr "la función de recepción %s del tipo tiene múltiples coincidencias"
 
-#: commands/typecmds.c:2082
+#: commands/typecmds.c:2081
 #, 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:2089
+#: commands/typecmds.c:2088
 #, 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:2117
+#: commands/typecmds.c:2116
 #, 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:2124
+#: commands/typecmds.c:2123
 #, c-format
 msgid "type send function %s should not be volatile"
 msgstr "la función «send» %s no debe ser volatile"
 
-#: commands/typecmds.c:2151
+#: commands/typecmds.c:2150
 #, 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:2158
+#: commands/typecmds.c:2157
 #, 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:2185
+#: commands/typecmds.c:2184
 #, 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:2192
+#: commands/typecmds.c:2191
 #, 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:2219
+#: commands/typecmds.c:2218
 #, 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:2248
+#: commands/typecmds.c:2247
 #, c-format
 msgid "type subscripting function %s must return type %s"
 msgstr "la función de subindexación %s del tipo debe retornar %s"
 
-#: commands/typecmds.c:2258
+#: commands/typecmds.c:2257
 #, c-format
 msgid "user-defined types cannot use subscripting function %s"
 msgstr "los tipos definidos por el usuario no pueden usar la función de subindexación %s"
 
-#: commands/typecmds.c:2304
+#: commands/typecmds.c:2303
 #, c-format
 msgid "You must specify an operator class for the range type or define a default 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:2335
+#: commands/typecmds.c:2334
 #, 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:2341
+#: commands/typecmds.c:2340
 #, 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:2377
+#: commands/typecmds.c:2376
 #, 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:2384
+#: commands/typecmds.c:2383
 #, 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:2411
+#: commands/typecmds.c:2410
 #, 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:2444
+#: commands/typecmds.c:2443
 #, c-format
 msgid "pg_type multirange OID value not set when in binary upgrade mode"
 msgstr "el valor de OID de multirango de pg_type no se definió en modo de actualización binaria"
 
-#: commands/typecmds.c:2477
+#: commands/typecmds.c:2476
 #, c-format
 msgid "pg_type multirange array OID value not set when in binary upgrade mode"
 msgstr "el valor de OID de arreglo de multirango de pg_type no se definió en modo de actualización binaria"
 
-#: commands/typecmds.c:2776
+#: commands/typecmds.c:2772
 #, 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:2889 commands/typecmds.c:3091
+#: commands/typecmds.c:2885 commands/typecmds.c:3086
 #, c-format
 msgid "constraint \"%s\" of domain \"%s\" does not exist"
 msgstr "no existe la restricción «%s» en el dominio «%s»"
 
-#: commands/typecmds.c:2893
+#: commands/typecmds.c:2889
 #, 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:3098
+#: commands/typecmds.c:3093
 #, 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:3204
+#: commands/typecmds.c:3194
 #, 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:3433 commands/typecmds.c:3633 commands/typecmds.c:3714
-#: commands/typecmds.c:3900
+#: commands/typecmds.c:3423 commands/typecmds.c:3622 commands/typecmds.c:3703
+#: commands/typecmds.c:3889
 #, c-format
 msgid "%s is not a domain"
 msgstr "%s no es un dominio"
 
-#: commands/typecmds.c:3465
+#: commands/typecmds.c:3455
 #, 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:3516
+#: commands/typecmds.c:3506
 #, 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:3645 commands/typecmds.c:3726 commands/typecmds.c:4017
+#: commands/typecmds.c:3634 commands/typecmds.c:3715 commands/typecmds.c:4006
 #, c-format
 msgid "%s is a table's row type"
 msgstr "%s es el tipo de registro de una tabla"
 
-#: commands/typecmds.c:3647 commands/typecmds.c:3728 commands/typecmds.c:4019
+#: commands/typecmds.c:3636 commands/typecmds.c:3717 commands/typecmds.c:4008
 #, c-format
 msgid "Use ALTER TABLE instead."
 msgstr "Considere usar ALTER TABLE."
 
-#: commands/typecmds.c:3653 commands/typecmds.c:3734 commands/typecmds.c:3932
+#: commands/typecmds.c:3642 commands/typecmds.c:3723 commands/typecmds.c:3921
 #, c-format
 msgid "cannot alter array type %s"
 msgstr "no se puede alterar el tipo de array «%s»"
 
-#: commands/typecmds.c:3655 commands/typecmds.c:3736 commands/typecmds.c:3934
+#: commands/typecmds.c:3644 commands/typecmds.c:3725 commands/typecmds.c:3923
 #, c-format
 msgid "You can alter type %s, which will alter the array type as well."
 msgstr "Puede alterar el tipo %s, lo cual alterará el tipo de array también."
 
-#: commands/typecmds.c:4002
+#: commands/typecmds.c:3991
 #, c-format
 msgid "type \"%s\" already exists in schema \"%s\""
 msgstr "ya existe un tipo llamado «%s» en el esquema «%s»"
 
-#: commands/typecmds.c:4170
+#: commands/typecmds.c:4159
 #, c-format
 msgid "cannot change type's storage to PLAIN"
 msgstr "no se puede cambiar el almacenamiento del tipo a PLAIN"
 
-#: commands/typecmds.c:4263
+#: commands/typecmds.c:4252
 #, c-format
 msgid "type attribute \"%s\" cannot be changed"
 msgstr "el atributo de tipo «%s» no puede ser cambiado"
 
-#: commands/typecmds.c:4281
+#: commands/typecmds.c:4270
 #, c-format
 msgid "must be superuser to alter a type"
 msgstr "debe ser superusuario para alterar un tipo"
 
-#: commands/typecmds.c:4302 commands/typecmds.c:4311
+#: commands/typecmds.c:4291 commands/typecmds.c:4300
 #, c-format
 msgid "%s is not a base type"
 msgstr "«%s» no es un tipo base"
 
-#: commands/user.c:138
+#: commands/user.c:201
 #, c-format
 msgid "SYSID can no longer be specified"
 msgstr "SYSID ya no puede ser especificado"
 
-#: commands/user.c:256
+#: commands/user.c:319 commands/user.c:325 commands/user.c:331
+#: commands/user.c:337 commands/user.c:343
 #, c-format
-msgid "must be superuser to create superusers"
-msgstr "debe ser superusuario para crear superusuarios"
+msgid "permission denied to create role"
+msgstr "se ha denegado el permiso para crear el rol"
 
-#: commands/user.c:263
+#: commands/user.c:320
 #, c-format
-msgid "must be superuser to create replication users"
-msgstr "debe ser superusuario para crear usuarios de replicación"
+msgid "Only roles with the %s attribute may create roles."
+msgstr ""
 
-#: commands/user.c:270
+#: commands/user.c:326 commands/user.c:332 commands/user.c:338
+#: commands/user.c:344
 #, c-format
-msgid "must be superuser to create bypassrls users"
-msgstr "debe ser superusuario para crear usuarios con bypassrls"
+msgid "Only roles with the %s attribute may create roles with %s."
+msgstr ""
 
-#: commands/user.c:277
-#, c-format
-msgid "permission denied to create role"
-msgstr "se ha denegado el permiso para crear el rol"
-
-#: commands/user.c:287 commands/user.c:1139 commands/user.c:1146
-#: utils/adt/acl.c:5331 utils/adt/acl.c:5337 gram.y:16437 gram.y:16483
+#: commands/user.c:355 commands/user.c:1393 commands/user.c:1400
+#: utils/adt/acl.c:5409 utils/adt/acl.c:5415 gram.y:16790 gram.y:16836
 #, c-format
 msgid "role name \"%s\" is reserved"
 msgstr "el nombre de rol «%s» está reservado"
 
-#: commands/user.c:289 commands/user.c:1141 commands/user.c:1148
+#: commands/user.c:357 commands/user.c:1395 commands/user.c:1402
 #, c-format
 msgid "Role names starting with \"pg_\" are reserved."
 msgstr "Los nombres de rol que empiezan con «pg_» están reservados."
 
-#: commands/user.c:310 commands/user.c:1163
+#: commands/user.c:378 commands/user.c:1417
 #, c-format
 msgid "role \"%s\" already exists"
 msgstr "el rol «%s» ya existe"
 
-#: commands/user.c:376 commands/user.c:754
+#: commands/user.c:440 commands/user.c:925
 #, c-format
 msgid "empty string is not a valid password, clearing password"
 msgstr "la cadena vacía no es una contraseña válida, limpiando la contraseña"
 
-#: commands/user.c:405
+#: commands/user.c:469
 #, c-format
 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:638
+#: commands/user.c:653 commands/user.c:1011
+#, fuzzy
+#| msgid "cannot alter inherited column \"%s\""
+msgid "Cannot alter reserved roles."
+msgstr "no se puede alterar la columna heredada «%s»"
+
+#: commands/user.c:760 commands/user.c:766 commands/user.c:782
+#: commands/user.c:790 commands/user.c:804 commands/user.c:810
+#: commands/user.c:816 commands/user.c:825 commands/user.c:870
+#: commands/user.c:1033 commands/user.c:1044
+#, fuzzy, c-format
+#| msgid "permission denied to create role"
+msgid "permission denied to alter role"
+msgstr "se ha denegado el permiso para crear el rol"
+
+#: commands/user.c:761 commands/user.c:1034
 #, c-format
-msgid "must be superuser to alter superuser roles or change superuser attribute"
-msgstr "debe ser superusuario para modificar roles de superusuario o cambiar atributos de superusuario"
+msgid "Only roles with the %s attribute may alter roles with %s."
+msgstr ""
 
-#: commands/user.c:645
+#: commands/user.c:767 commands/user.c:805 commands/user.c:811
+#: commands/user.c:817
 #, c-format
-msgid "must be superuser to alter replication roles or change replication attribute"
-msgstr "debe ser superusuario para modificar roles de replicación o cambiar atributos de replicación"
+msgid "Only roles with the %s attribute may change the %s attribute."
+msgstr ""
 
-#: commands/user.c:652
+#: commands/user.c:783 commands/user.c:1045
 #, c-format
-msgid "must be superuser to change bypassrls attribute"
-msgstr "debe ser superusuario para cambiar el atributo bypassrls"
+msgid "Only roles with the %s attribute and the %s option on role \"%s\" may alter this role."
+msgstr ""
 
-#: commands/user.c:661 commands/user.c:866
+#: commands/user.c:791
 #, c-format
-msgid "permission denied"
-msgstr "permiso denegado"
+msgid "To change another role's password, the current user must have the %s attribute and the %s option on the role."
+msgstr ""
 
-#: commands/user.c:859 commands/user.c:1400 commands/user.c:1573
+#: commands/user.c:826
 #, c-format
-msgid "must be superuser to alter superusers"
-msgstr "debe ser superusuario para alterar superusuarios"
+msgid "Only roles with the %s option on role \"%s\" may add members."
+msgstr ""
 
-#: commands/user.c:896
+#: commands/user.c:871
 #, c-format
-msgid "must be superuser to alter settings globally"
+msgid "The bootstrap user must have the %s attribute."
+msgstr ""
+
+#: commands/user.c:1076
+#, fuzzy, c-format
+#| msgid "permission denied to create role"
+msgid "permission denied to alter setting"
+msgstr "se ha denegado el permiso para crear el rol"
+
+#: commands/user.c:1077
+#, fuzzy, c-format
+#| msgid "must be superuser to alter settings globally"
+msgid "Only roles with the %s attribute may alter settings globally."
 msgstr "debe ser superusuario para alterar parámetros globalmente"
 
-#: commands/user.c:918
+#: commands/user.c:1101 commands/user.c:1173 commands/user.c:1179
 #, c-format
 msgid "permission denied to drop role"
 msgstr "se ha denegado el permiso para eliminar el rol"
 
-#: commands/user.c:943
+#: commands/user.c:1102
+#, c-format
+msgid "Only roles with the %s attribute and the %s option on the target roles may drop roles."
+msgstr ""
+
+#: commands/user.c:1127
 #, 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:953 commands/user.c:1110 commands/variable.c:778
-#: commands/variable.c:781 commands/variable.c:865 commands/variable.c:868
-#: utils/adt/acl.c:5186 utils/adt/acl.c:5234 utils/adt/acl.c:5262
-#: utils/adt/acl.c:5281 utils/init/miscinit.c:725
+#: commands/user.c:1137 commands/user.c:1364 commands/variable.c:836
+#: commands/variable.c:839 commands/variable.c:923 commands/variable.c:926
+#: utils/adt/acl.c:359 utils/adt/acl.c:379 utils/adt/acl.c:5264
+#: utils/adt/acl.c:5312 utils/adt/acl.c:5340 utils/adt/acl.c:5359
+#: utils/adt/regproc.c:1551 utils/init/miscinit.c:757
 #, c-format
 msgid "role \"%s\" does not exist"
 msgstr "no existe el rol «%s»"
 
-#: commands/user.c:958
+#: commands/user.c:1142
 #, c-format
 msgid "role \"%s\" does not exist, skipping"
 msgstr "el rol «%s» no existe, omitiendo"
 
-#: commands/user.c:971 commands/user.c:975
+#: commands/user.c:1155 commands/user.c:1159
 #, c-format
 msgid "current user cannot be dropped"
 msgstr "el usuario activo no puede ser eliminado"
 
-#: commands/user.c:979
+#: commands/user.c:1163
 #, c-format
 msgid "session user cannot be dropped"
 msgstr "no se puede eliminar un usuario de la sesión"
 
-#: commands/user.c:989
+#: commands/user.c:1174
+#, c-format
+msgid "Only roles with the %s attribute may drop roles with %s."
+msgstr ""
+
+#: commands/user.c:1180
 #, c-format
-msgid "must be superuser to drop superusers"
-msgstr "debe ser superusuario para eliminar superusuarios"
+msgid "Only roles with the %s attribute and the %s option on role \"%s\" may drop this role."
+msgstr ""
 
-#: commands/user.c:1005
+#: commands/user.c:1306
 #, 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:1126
+#: commands/user.c:1380
 #, 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:1130
+#: commands/user.c:1384
 #, c-format
 msgid "current user cannot be renamed"
 msgstr "no se puede cambiar el nombre al usuario activo"
 
-#: commands/user.c:1173
-#, c-format
-msgid "must be superuser to rename superusers"
-msgstr "debe ser superusuario para cambiar el nombre a superusuarios"
-
-#: commands/user.c:1180
+#: commands/user.c:1428 commands/user.c:1438
 #, c-format
 msgid "permission denied to rename role"
 msgstr "se ha denegado el permiso para cambiar el nombre al rol"
 
-#: commands/user.c:1201
+#: commands/user.c:1429
+#, c-format
+msgid "Only roles with the %s attribute may rename roles with %s."
+msgstr ""
+
+#: commands/user.c:1439
+#, c-format
+msgid "Only roles with the %s attribute and the %s option on role \"%s\" may rename this role."
+msgstr ""
+
+#: commands/user.c:1461
 #, 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:1261
+#: commands/user.c:1525 gram.y:1261
+#, c-format
+msgid "unrecognized role option \"%s\""
+msgstr "opción de rol «%s» no reconocida"
+
+#: commands/user.c:1530
+#, fuzzy, c-format
+#| msgid "unrecognized value for option %s: %s"
+msgid "unrecognized value for role option \"%s\": \"%s\""
+msgstr "valor no reconocido para la opción %s: %s"
+
+#: commands/user.c:1563
 #, 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:1299
+#: commands/user.c:1603
 #, c-format
 msgid "permission denied to drop objects"
 msgstr "se ha denegado el permiso para eliminar objetos"
 
-#: commands/user.c:1326 commands/user.c:1335
+#: commands/user.c:1604
 #, c-format
-msgid "permission denied to reassign objects"
-msgstr "se ha denegado el permiso para reasignar objetos"
+msgid "Only roles with privileges of role \"%s\" may drop objects owned by it."
+msgstr ""
 
-#: commands/user.c:1408 commands/user.c:1581
+#: commands/user.c:1632 commands/user.c:1643
 #, c-format
-msgid "must have admin option on role \"%s\""
-msgstr "debe tener opción de admin en rol «%s»"
+msgid "permission denied to reassign objects"
+msgstr "se ha denegado el permiso para reasignar objetos"
 
-#: commands/user.c:1422
+#: commands/user.c:1633
 #, c-format
-msgid "role \"%s\" cannot have explicit members"
-msgstr "el rol «%s» no puede tener miembros explícitos"
+msgid "Only roles with privileges of role \"%s\" may reassign objects owned by it."
+msgstr ""
 
-#: commands/user.c:1432
+#: commands/user.c:1644
 #, c-format
-msgid "must be superuser to set grantor"
-msgstr "debe ser superusuario para especificar el cedente (grantor)"
+msgid "Only roles with privileges of role \"%s\" may reassign objects to it."
+msgstr ""
 
-#: commands/user.c:1468
+#: commands/user.c:1740
 #, c-format
 msgid "role \"%s\" cannot be a member of any role"
 msgstr "el rol «%s» no puede ser miembro de ningún rol"
 
-#: commands/user.c:1481
+#: commands/user.c:1753
 #, c-format
 msgid "role \"%s\" is a member of role \"%s\""
 msgstr "el rol «%s» es un miembro del rol «%s»"
 
-#: commands/user.c:1496
-#, c-format
-msgid "role \"%s\" is already a member of role \"%s\""
+#: commands/user.c:1793 commands/user.c:1819
+#, fuzzy, c-format
+#| msgid "grant options cannot be granted back to your own grantor"
+msgid "%s option cannot be granted back to your own grantor"
+msgstr "la opción de grant no puede ser otorgada de vuelta a quien la otorgó"
+
+#: commands/user.c:1896
+#, fuzzy, c-format
+#| msgid "role \"%s\" is already a member of role \"%s\""
+msgid "role \"%s\" has already been granted membership in role \"%s\" by role \"%s\""
 msgstr "el rol «%s» ya es un miembro del rol «%s»"
 
-#: commands/user.c:1603
-#, c-format
-msgid "role \"%s\" is not a member of role \"%s\""
+#: commands/user.c:2031
+#, fuzzy, c-format
+#| msgid "role \"%s\" is not a member of role \"%s\""
+msgid "role \"%s\" has not been granted membership in role \"%s\" by role \"%s\""
 msgstr "el rol «%s» no es un miembro del rol «%s»"
 
-#: commands/vacuum.c:139
+#: commands/user.c:2131
+#, c-format
+msgid "role \"%s\" cannot have explicit members"
+msgstr "el rol «%s» no puede tener miembros explícitos"
+
+#: commands/user.c:2142 commands/user.c:2165
+#, fuzzy, c-format
+#| msgid "permission denied to set role \"%s\""
+msgid "permission denied to grant role \"%s\""
+msgstr "se ha denegado el permiso para definir el rol «%s»"
+
+#: commands/user.c:2144
+#, c-format
+msgid "Only roles with the %s attribute may grant roles with %s."
+msgstr ""
+
+#: commands/user.c:2149 commands/user.c:2172
+#, fuzzy, c-format
+#| msgid "permission denied to set role \"%s\""
+msgid "permission denied to revoke role \"%s\""
+msgstr "se ha denegado el permiso para definir el rol «%s»"
+
+#: commands/user.c:2151
+#, c-format
+msgid "Only roles with the %s attribute may revoke roles with %s."
+msgstr ""
+
+#: commands/user.c:2167
+#, c-format
+msgid "Only roles with the %s option on role \"%s\" may grant this role."
+msgstr ""
+
+#: commands/user.c:2174
+#, c-format
+msgid "Only roles with the %s option on role \"%s\" may revoke this role."
+msgstr ""
+
+#: commands/user.c:2254 commands/user.c:2263
+#, fuzzy, c-format
+#| msgid "permission denied to set role \"%s\""
+msgid "permission denied to grant privileges as role \"%s\""
+msgstr "se ha denegado el permiso para definir el rol «%s»"
+
+#: commands/user.c:2256
+#, c-format
+msgid "Only roles with privileges of role \"%s\" may grant privileges as this role."
+msgstr ""
+
+#: commands/user.c:2265
+#, fuzzy, c-format
+#| msgid "must have admin option on role \"%s\""
+msgid "The grantor must have the %s option on role \"%s\"."
+msgstr "debe tener opción de admin en rol «%s»"
+
+#: commands/user.c:2273
+#, fuzzy, c-format
+#| msgid "permission denied to set role \"%s\""
+msgid "permission denied to revoke privileges granted by role \"%s\""
+msgstr "se ha denegado el permiso para definir el rol «%s»"
+
+#: commands/user.c:2275
+#, c-format
+msgid "Only roles with privileges of role \"%s\" may revoke privileges granted by this role."
+msgstr ""
+
+#: commands/user.c:2498 utils/adt/acl.c:1312
+#, c-format
+msgid "dependent privileges exist"
+msgstr "existen privilegios dependientes"
+
+#: commands/user.c:2499 utils/adt/acl.c:1313
+#, c-format
+msgid "Use CASCADE to revoke them too."
+msgstr "Use CASCADE para revocarlos también."
+
+#: commands/vacuum.c:138
+#, c-format
+msgid "\"vacuum_buffer_usage_limit\" must be 0 or between %d kB and %d kB"
+msgstr ""
+
+#: commands/vacuum.c:210
+#, fuzzy, c-format
+#| msgid "NUMERIC precision %d must be between 1 and %d"
+msgid "BUFFER_USAGE_LIMIT option must be 0 or between %d kB and %d kB"
+msgstr "la precisión %d de NUMERIC debe estar entre 1 y %d"
+
+#: commands/vacuum.c:220
 #, c-format
 msgid "unrecognized ANALYZE option \"%s\""
 msgstr "opción de ANALYZE «%s» no reconocida"
 
-#: commands/vacuum.c:177
+#: commands/vacuum.c:260
 #, c-format
 msgid "parallel option requires a value between 0 and %d"
 msgstr "la opción parallel requiere un valor entre 0 y %d"
 
-#: commands/vacuum.c:189
+#: commands/vacuum.c:272
 #, c-format
 msgid "parallel workers for vacuum must be between 0 and %d"
 msgstr "el número de procesos paralelos para vacuum debe estar entre 0 y %d"
 
-#: commands/vacuum.c:206
+#: commands/vacuum.c:293
 #, c-format
 msgid "unrecognized VACUUM option \"%s\""
 msgstr "opción de VACUUM «%s» no reconocida"
 
-#: commands/vacuum.c:229
+#: commands/vacuum.c:319
 #, c-format
 msgid "VACUUM FULL cannot be performed in parallel"
 msgstr "VACUUM FULL no puede ser ejecutado en paralelo"
 
-#: commands/vacuum.c:245
+#: commands/vacuum.c:330
 #, 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"
+msgid "BUFFER_USAGE_LIMIT cannot be specified for VACUUM FULL"
+msgstr ""
 
-#: commands/vacuum.c:335
+#: commands/vacuum.c:344
 #, c-format
-msgid "%s cannot be executed from VACUUM or ANALYZE"
-msgstr "%s no puede ejecutarse desde VACUUM o ANALYZE"
+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:345
+#: commands/vacuum.c:356
 #, 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:352
+#: commands/vacuum.c:363
 #, c-format
 msgid "PROCESS_TOAST required with VACUUM FULL"
 msgstr "se requiere especificar PROCESS_TOAST al hacer VACUUM FULL"
 
-#: commands/vacuum.c:586
-#, c-format
-msgid "skipping \"%s\" --- only superuser can vacuum it"
-msgstr "omitiendo «%s»: sólo un superusuario puede aplicarle VACUUM"
-
-#: commands/vacuum.c:590
-#, 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:372
+#, fuzzy, c-format
+#| msgid "OLD TABLE cannot be specified multiple times"
+msgid "ONLY_DATABASE_STATS cannot be specified with a list of tables"
+msgstr "OLD TABLE no se puede especificar varias veces"
 
-#: commands/vacuum.c:594
-#, 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:381
+#, fuzzy, c-format
+#| msgid "option \"%s\" cannot be specified with other options"
+msgid "ONLY_DATABASE_STATS cannot be specified with other VACUUM options"
+msgstr "la opción «%s» no puede ser especificada con otras opciones"
 
-#: commands/vacuum.c:609
+#: commands/vacuum.c:516
 #, c-format
-msgid "skipping \"%s\" --- only superuser can analyze it"
-msgstr "omitiendo «%s»: sólo un superusuario puede analizarla"
+msgid "%s cannot be executed from VACUUM or ANALYZE"
+msgstr "%s no puede ejecutarse desde VACUUM o ANALYZE"
 
-#: commands/vacuum.c:613
-#, 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:736
+#, fuzzy, c-format
+#| msgid "permission denied for column %s"
+msgid "permission denied to vacuum \"%s\", skipping it"
+msgstr "permiso denegado a la columna %s"
 
-#: commands/vacuum.c:617
-#, 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:749
+#, fuzzy, c-format
+#| msgid "permission denied to set role \"%s\""
+msgid "permission denied to analyze \"%s\", skipping it"
+msgstr "se ha denegado el permiso para definir el rol «%s»"
 
-#: commands/vacuum.c:696 commands/vacuum.c:792
+#: commands/vacuum.c:827 commands/vacuum.c:924
 #, c-format
 msgid "skipping vacuum of \"%s\" --- lock not available"
 msgstr "omitiendo el vacuum de «%s»: el candado no está disponible"
 
-#: commands/vacuum.c:701
+#: commands/vacuum.c:832
 #, 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:717 commands/vacuum.c:797
+#: commands/vacuum.c:848 commands/vacuum.c:929
 #, c-format
 msgid "skipping analyze of \"%s\" --- lock not available"
 msgstr "omitiendo analyze de «%s»: el candado no está disponible"
 
-#: commands/vacuum.c:722
+#: commands/vacuum.c:853
 #, 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:1041
+#: commands/vacuum.c:1164
 #, c-format
-msgid "oldest xmin is far in the past"
-msgstr "xmin más antiguo es demasiado antiguo"
+msgid "cutoff for removing and freezing tuples is far in the past"
+msgstr ""
 
-#: commands/vacuum.c:1042
+#: commands/vacuum.c:1165 commands/vacuum.c:1170
 #, c-format
 msgid ""
 "Close open transactions soon to avoid wraparound problems.\n"
@@ -12561,177 +12953,179 @@ 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:1085
-#, c-format
-msgid "oldest multixact is far in the past"
+#: commands/vacuum.c:1169
+#, fuzzy, c-format
+#| msgid "oldest multixact is far in the past"
+msgid "cutoff for freezing multixacts is far in the past"
 msgstr "multixact más antiguo es demasiado antiguo"
 
-#: commands/vacuum.c:1086
-#, 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:1792
+#: commands/vacuum.c:1897
 #, 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:1793
+#: commands/vacuum.c:1898
 #, 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:1957
+#: commands/vacuum.c:2063
 #, 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/vacuum.c:2328
+#: commands/vacuum.c:2488
 #, c-format
 msgid "scanned index \"%s\" to remove %d row versions"
 msgstr "se recorrió el índice «%s» para eliminar %d versiones de filas"
 
-#: commands/vacuum.c:2347
+#: commands/vacuum.c:2507
 #, 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"
 
-#: commands/vacuum.c:2351
-#, fuzzy, c-format
-#| msgid ""
-#| "%.0f index row versions were removed.\n"
-#| "%u index pages were newly deleted.\n"
-#| "%u index pages are currently deleted, of which %u are currently reusable.\n"
-#| "%s."
+#: commands/vacuum.c:2511
+#, c-format
 msgid ""
 "%.0f index row versions were removed.\n"
 "%u index pages were newly deleted.\n"
 "%u index pages are currently deleted, of which %u are currently reusable."
 msgstr ""
-"%.0f versiones de filas del índice fueron eliminadas.\n"
-"%u páginas de índice fueron eliminadas recientemente.\n"
-"%u páginas de índices han sido eliminadas hasta ahora, de las cuales %u son reusables.\n"
-"%s."
 
-#: commands/vacuumparallel.c:664
+#: commands/vacuumparallel.c:677
 #, 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] "se lanzó %d proceso asistente para «vacuum» de índices (planeados: %d)"
 msgstr[1] "se lanzaron %d procesos asistentes para «vacuum» índices (planeados: %d)"
 
-#: commands/vacuumparallel.c:670
+#: commands/vacuumparallel.c:683
 #, 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] "se lanzó %d proceso asistente para «cleanup» de índices (planeados: %d)"
 msgstr[1] "se lanzaron %d procesos asistentes para «cleanup» de índices (planeados: %d)"
 
-#: commands/variable.c:165 utils/misc/guc.c:12109 utils/misc/guc.c:12187
-#, c-format
-msgid "Unrecognized key word: \"%s\"."
-msgstr "Palabra clave no reconocida: «%s»."
-
-#: commands/variable.c:177
+#: commands/variable.c:185
 #, c-format
 msgid "Conflicting \"datestyle\" specifications."
 msgstr "Especificaciones contradictorias de «datestyle»."
 
-#: commands/variable.c:299
+#: commands/variable.c:307
 #, c-format
 msgid "Cannot specify months in time zone interval."
 msgstr "No se pueden especificar meses en el intervalo de huso horario."
 
-#: commands/variable.c:305
+#: commands/variable.c:313
 #, c-format
 msgid "Cannot specify days in time zone interval."
 msgstr "No se pueden especificar días en el intervalo de huso horario."
 
-#: commands/variable.c:343 commands/variable.c:425
+#: commands/variable.c:351 commands/variable.c:433
 #, c-format
 msgid "time zone \"%s\" appears to use leap seconds"
 msgstr "el huso horario «%s» parece usar segundos intercalares (bisiestos)"
 
-#: commands/variable.c:345 commands/variable.c:427
+#: commands/variable.c:353 commands/variable.c:435
 #, c-format
 msgid "PostgreSQL does not support leap seconds."
 msgstr "PostgreSQL no soporta segundos intercalares."
 
-#: commands/variable.c:354
+#: commands/variable.c:362
 #, c-format
 msgid "UTC timezone offset is out of range."
 msgstr "El desplazamiento de huso horario UTC está fuera de rango."
 
-#: commands/variable.c:494
+#: commands/variable.c:552
 #, c-format
 msgid "cannot set transaction read-write mode inside a read-only transaction"
 msgstr "no se puede poner en modo de escritura dentro de una transacción de sólo lectura"
 
-#: commands/variable.c:501
+#: commands/variable.c:559
 #, c-format
 msgid "transaction read-write mode must be set before any query"
 msgstr "el modo de escritura debe ser activado antes de cualquier consulta"
 
-#: commands/variable.c:508
+#: commands/variable.c:566
 #, c-format
 msgid "cannot set transaction read-write mode during recovery"
 msgstr "no se puede poner en modo de escritura durante la recuperación"
 
-#: commands/variable.c:534
+#: commands/variable.c:592
 #, c-format
 msgid "SET TRANSACTION ISOLATION LEVEL must be called before any query"
 msgstr "SET TRANSACTION ISOLATION LEVEL debe ser llamado antes de cualquier consulta"
 
-#: commands/variable.c:541
+#: commands/variable.c:599
 #, c-format
 msgid "SET TRANSACTION ISOLATION LEVEL must not be called in a subtransaction"
 msgstr "SET TRANSACTION ISOLATION LEVEL no debe ser llamado en una subtransacción"
 
-#: commands/variable.c:548 storage/lmgr/predicate.c:1694
+#: commands/variable.c:606 storage/lmgr/predicate.c:1629
 #, c-format
 msgid "cannot use serializable mode in a hot standby"
 msgstr "no se puede utilizar el modo serializable en un hot standby"
 
-#: commands/variable.c:549
+#: commands/variable.c:607
 #, c-format
 msgid "You can use REPEATABLE READ instead."
 msgstr "Puede utilizar REPEATABLE READ en su lugar."
 
-#: commands/variable.c:567
+#: commands/variable.c:625
 #, c-format
 msgid "SET TRANSACTION [NOT] DEFERRABLE cannot be called within a subtransaction"
 msgstr "SET TRANSACTION [NOT] DEFERRABLE no puede ser llamado en una subtransacción"
 
-#: commands/variable.c:573
+#: commands/variable.c:631
 #, c-format
 msgid "SET TRANSACTION [NOT] DEFERRABLE must be called before any query"
 msgstr "SET TRANSACTION [NOT] DEFERRABLE debe ser llamado antes de cualquier consulta"
 
-#: commands/variable.c:655
+#: commands/variable.c:713
 #, c-format
 msgid "Conversion between %s and %s is not supported."
 msgstr "La conversión entre %s y %s no está soportada."
 
-#: commands/variable.c:662
+#: commands/variable.c:720
 #, c-format
 msgid "Cannot change \"client_encoding\" now."
 msgstr "No se puede cambiar «client_encoding» ahora."
 
-#: commands/variable.c:723
+#: commands/variable.c:781
 #, c-format
 msgid "cannot change client_encoding during a parallel operation"
 msgstr "no se puede cambiar «client_encoding» durante una operación paralela"
 
-#: commands/variable.c:890
+#: commands/variable.c:948
 #, c-format
 msgid "permission will be denied to set role \"%s\""
 msgstr "se denegará el permiso para definir el rol «%s»"
 
-#: commands/variable.c:895
+#: commands/variable.c:953
 #, c-format
 msgid "permission denied to set role \"%s\""
 msgstr "se ha denegado el permiso para definir el rol «%s»"
 
+#: commands/variable.c:1153
+#, c-format
+msgid "Bonjour is not supported by this build"
+msgstr "Bonjour no está soportado en este servidor"
+
+#: commands/variable.c:1181
+#, c-format
+msgid "effective_io_concurrency must be set to 0 on platforms that lack posix_fadvise()."
+msgstr "effective_io_concurrency debe ser 0 en plataformas que no tienen posix_fadvise()."
+
+#: commands/variable.c:1194
+#, c-format
+msgid "maintenance_io_concurrency must be set to 0 on platforms that lack posix_fadvise()."
+msgstr "maintenance_io_concurrency debe ser 0 en plataformas que no tienen posix_fadvise()."
+
+#: commands/variable.c:1207
+#, c-format
+msgid "SSL is not supported by this build"
+msgstr "SSL no está soportado en este servidor"
+
 #: commands/view.c:84
 #, c-format
 msgid "could not determine which collation to use for view column \"%s\""
@@ -12763,27 +13157,27 @@ msgstr "no se puede cambiar el tipo de dato de la columna «%s» de la vista de
 msgid "cannot change collation 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:468
+#: commands/view.c:392
 #, c-format
 msgid "views must not contain SELECT INTO"
 msgstr "una vista no puede tener SELECT INTO"
 
-#: commands/view.c:480
+#: commands/view.c:404
 #, 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:550
+#: commands/view.c:474
 #, 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:558
+#: commands/view.c:482
 #, 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:572
+#: commands/view.c:496
 #, c-format
 msgid "view \"%s\" will be a temporary view"
 msgstr "la vista «%s» será una vista temporal"
@@ -12819,366 +13213,376 @@ 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:2453
+#: executor/execCurrent.c:280 executor/execExprInterp.c:2485
 #, 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:2465
+#: executor/execCurrent.c:292 executor/execExprInterp.c:2497
 #, c-format
 msgid "no value found for parameter %d"
 msgstr "no se encontró un valor para parámetro %d"
 
-#: executor/execExpr.c:632 executor/execExpr.c:639 executor/execExpr.c:645
-#: executor/execExprInterp.c:4052 executor/execExprInterp.c:4069
-#: executor/execExprInterp.c:4168 executor/nodeModifyTable.c:218
-#: executor/nodeModifyTable.c:229 executor/nodeModifyTable.c:246
-#: executor/nodeModifyTable.c:254
+#: executor/execExpr.c:637 executor/execExpr.c:644 executor/execExpr.c:650
+#: executor/execExprInterp.c:4156 executor/execExprInterp.c:4173
+#: executor/execExprInterp.c:4272 executor/nodeModifyTable.c:197
+#: executor/nodeModifyTable.c:208 executor/nodeModifyTable.c:225
+#: executor/nodeModifyTable.c:233
 #, c-format
 msgid "table row type and query-specified row type do not match"
 msgstr "el tipo de registro de la tabla no coincide con el tipo de registro de la consulta"
 
-#: executor/execExpr.c:633 executor/nodeModifyTable.c:219
+#: executor/execExpr.c:638 executor/nodeModifyTable.c:198
 #, c-format
 msgid "Query has too many columns."
 msgstr "La consulta tiene demasiadas columnas."
 
-#: executor/execExpr.c:640 executor/nodeModifyTable.c:247
+#: executor/execExpr.c:645 executor/nodeModifyTable.c:226
 #, c-format
 msgid "Query provides a value for a dropped column at ordinal position %d."
 msgstr "La consulta entrega un valor para una columna eliminada en la posición %d."
 
-#: executor/execExpr.c:646 executor/execExprInterp.c:4070
-#: executor/nodeModifyTable.c:230
+#: executor/execExpr.c:651 executor/execExprInterp.c:4174
+#: executor/nodeModifyTable.c:209
 #, 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/execExpr.c:1110 parser/parse_agg.c:827
+#: executor/execExpr.c:1099 parser/parse_agg.c:827
 #, c-format
 msgid "window function calls cannot be nested"
 msgstr "no se pueden anidar llamadas a funciones de ventana deslizante"
 
-#: executor/execExpr.c:1614
+#: executor/execExpr.c:1618
 #, c-format
 msgid "target type is not an array"
 msgstr "el tipo de destino no es un array"
 
-#: executor/execExpr.c:1954
+#: executor/execExpr.c:1958
 #, 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:2479 executor/execSRF.c:718 parser/parse_func.c:138
-#: parser/parse_func.c:655 parser/parse_func.c:1031
+#: executor/execExpr.c:2576 executor/execSRF.c:719 parser/parse_func.c:138
+#: parser/parse_func.c:655 parser/parse_func.c:1032
 #, c-format
 msgid "cannot pass more than %d argument to a function"
 msgid_plural "cannot pass more than %d arguments to a function"
 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:2506 executor/execSRF.c:738 executor/functions.c:1073
-#: utils/adt/jsonfuncs.c:3691 utils/fmgr/funcapi.c:89 utils/fmgr/funcapi.c:143
+#: executor/execExpr.c:2603 executor/execSRF.c:739 executor/functions.c:1066
+#: utils/adt/jsonfuncs.c:3780 utils/fmgr/funcapi.c:89 utils/fmgr/funcapi.c:143
 #, c-format
 msgid "set-valued function called in context that cannot accept a set"
 msgstr "se llamó una función que retorna un conjunto en un contexto que no puede aceptarlo"
 
-#: executor/execExpr.c:2865 parser/parse_node.c:276 parser/parse_node.c:326
+#: executor/execExpr.c:3009 parser/parse_node.c:277 parser/parse_node.c:327
 #, c-format
 msgid "cannot subscript type %s because it does not support subscripting"
 msgstr "no se puede poner subíndices al tipo %s porque no soporta subíndices"
 
-#: executor/execExpr.c:2993 executor/execExpr.c:3015
+#: executor/execExpr.c:3137 executor/execExpr.c:3159
 #, c-format
 msgid "type %s does not support subscripted assignment"
 msgstr "el tipo %s no soporta asignación subindexada"
 
-#: executor/execExprInterp.c:1918
+#: executor/execExprInterp.c:1950
 #, c-format
 msgid "attribute %d of type %s has been dropped"
 msgstr "El atributo %d de tipo %s ha sido eliminado"
 
-#: executor/execExprInterp.c:1924
+#: executor/execExprInterp.c:1956
 #, 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:1926 executor/execExprInterp.c:3054
-#: executor/execExprInterp.c:3100
+#: executor/execExprInterp.c:1958 executor/execExprInterp.c:3030
+#: executor/execExprInterp.c:3076
 #, 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:2005 utils/adt/expandedrecord.c:99
-#: utils/adt/expandedrecord.c:231 utils/cache/typcache.c:1749
-#: utils/cache/typcache.c:1908 utils/cache/typcache.c:2055
-#: utils/fmgr/funcapi.c:527
+#: executor/execExprInterp.c:2037 utils/adt/expandedrecord.c:99
+#: utils/adt/expandedrecord.c:231 utils/cache/typcache.c:1743
+#: utils/cache/typcache.c:1902 utils/cache/typcache.c:2049
+#: utils/fmgr/funcapi.c:561
 #, c-format
 msgid "type %s is not composite"
 msgstr "el tipo %s no es compuesto"
 
-#: executor/execExprInterp.c:2543
+#: executor/execExprInterp.c:2514
 #, 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:2756
+#: executor/execExprInterp.c:2727
 #, c-format
 msgid "cannot merge incompatible arrays"
 msgstr "no se puede mezclar arrays incompatibles"
 
-#: executor/execExprInterp.c:2757
+#: executor/execExprInterp.c:2728
 #, 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:2778 utils/adt/arrayfuncs.c:263
-#: utils/adt/arrayfuncs.c:563 utils/adt/arrayfuncs.c:1305
-#: utils/adt/arrayfuncs.c:3375 utils/adt/arrayfuncs.c:5372
-#: utils/adt/arrayfuncs.c:5889 utils/adt/arraysubs.c:150
+#: executor/execExprInterp.c:2749 utils/adt/arrayfuncs.c:265
+#: utils/adt/arrayfuncs.c:575 utils/adt/arrayfuncs.c:1329
+#: utils/adt/arrayfuncs.c:3484 utils/adt/arrayfuncs.c:5568
+#: utils/adt/arrayfuncs.c:6085 utils/adt/arraysubs.c:150
 #: utils/adt/arraysubs.c:488
 #, 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:2798 executor/execExprInterp.c:2828
+#: executor/execExprInterp.c:2769 executor/execExprInterp.c:2804
 #, 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:3053 executor/execExprInterp.c:3099
+#: executor/execExprInterp.c:2781 utils/adt/array_expanded.c:274
+#: utils/adt/arrayfuncs.c:959 utils/adt/arrayfuncs.c:1568
+#: utils/adt/arrayfuncs.c:3285 utils/adt/arrayfuncs.c:3514
+#: utils/adt/arrayfuncs.c:6177 utils/adt/arrayfuncs.c:6518
+#: utils/adt/arrayutils.c:104 utils/adt/arrayutils.c:113
+#: utils/adt/arrayutils.c:120
+#, c-format
+msgid "array size exceeds the maximum allowed (%d)"
+msgstr "el tamaño del array excede el máximo permitido (%d)"
+
+#: executor/execExprInterp.c:3029 executor/execExprInterp.c:3075
 #, c-format
 msgid "attribute %d has wrong type"
 msgstr "el atributo %d tiene tipo erróneo"
 
-#: executor/execExprInterp.c:3681 utils/adt/domains.c:149
+#: executor/execExprInterp.c:3657 utils/adt/domains.c:155
 #, c-format
 msgid "domain %s does not allow null values"
 msgstr "el dominio %s no permite valores null"
 
-#: executor/execExprInterp.c:3696 utils/adt/domains.c:184
+#: executor/execExprInterp.c:3672 utils/adt/domains.c:193
 #, 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:4053
+#: executor/execExprInterp.c:4157
 #, 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:4169 executor/execSRF.c:977
+#: executor/execExprInterp.c:4273 executor/execSRF.c:978
 #, 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."
 
-#: executor/execIndexing.c:571
+#: executor/execIndexing.c:588
 #, c-format
 msgid "ON CONFLICT does not support deferrable unique constraints/exclusion constraints as arbiters"
 msgstr "ON CONFLICT no soporta las restricciones únicas o de exclusión postergables como árbitros"
 
-#: executor/execIndexing.c:848
+#: executor/execIndexing.c:865
 #, c-format
 msgid "could not create exclusion constraint \"%s\""
 msgstr "no se pudo crear la restricción de exclusión «%s»"
 
-#: executor/execIndexing.c:851
+#: executor/execIndexing.c:868
 #, c-format
 msgid "Key %s conflicts with key %s."
 msgstr "La llave %s está en conflicto con la llave %s."
 
-#: executor/execIndexing.c:853
+#: executor/execIndexing.c:870
 #, c-format
 msgid "Key conflicts exist."
 msgstr "Existe un conflicto de llave."
 
-#: executor/execIndexing.c:859
+#: executor/execIndexing.c:876
 #, c-format
 msgid "conflicting key value violates exclusion constraint \"%s\""
 msgstr "llave en conflicto viola la restricción de exclusión «%s»"
 
-#: executor/execIndexing.c:862
+#: executor/execIndexing.c:879
 #, c-format
 msgid "Key %s conflicts with existing key %s."
 msgstr "La llave %s está en conflicto con la llave existente %s."
 
-#: executor/execIndexing.c:864
+#: executor/execIndexing.c:881
 #, c-format
 msgid "Key conflicts with existing key."
 msgstr "La llave está en conflicto con una llave existente."
 
-#: executor/execMain.c:1009
+#: executor/execMain.c:1030
 #, c-format
 msgid "cannot change sequence \"%s\""
 msgstr "no se puede cambiar la secuencia «%s»"
 
-#: executor/execMain.c:1015
+#: executor/execMain.c:1036
 #, c-format
 msgid "cannot change TOAST relation \"%s\""
 msgstr "no se puede cambiar la relación TOAST «%s»"
 
-#: executor/execMain.c:1033 rewrite/rewriteHandler.c:3068
-#: rewrite/rewriteHandler.c:3904
+#: executor/execMain.c:1054 rewrite/rewriteHandler.c:3078
+#: rewrite/rewriteHandler.c:3965
 #, c-format
 msgid "cannot insert into view \"%s\""
 msgstr "no se puede insertar en la vista «%s»"
 
-#: executor/execMain.c:1035 rewrite/rewriteHandler.c:3071
-#: rewrite/rewriteHandler.c:3907
+#: executor/execMain.c:1056 rewrite/rewriteHandler.c:3081
+#: rewrite/rewriteHandler.c:3968
 #, 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:1041 rewrite/rewriteHandler.c:3076
-#: rewrite/rewriteHandler.c:3912
+#: executor/execMain.c:1062 rewrite/rewriteHandler.c:3086
+#: rewrite/rewriteHandler.c:3973
 #, c-format
 msgid "cannot update view \"%s\""
 msgstr "no se puede actualizar la vista «%s»"
 
-#: executor/execMain.c:1043 rewrite/rewriteHandler.c:3079
-#: rewrite/rewriteHandler.c:3915
+#: executor/execMain.c:1064 rewrite/rewriteHandler.c:3089
+#: rewrite/rewriteHandler.c:3976
 #, 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:1049 rewrite/rewriteHandler.c:3084
-#: rewrite/rewriteHandler.c:3920
+#: executor/execMain.c:1070 rewrite/rewriteHandler.c:3094
+#: rewrite/rewriteHandler.c:3981
 #, c-format
 msgid "cannot delete from view \"%s\""
 msgstr "no se puede eliminar de la vista «%s»"
 
-#: executor/execMain.c:1051 rewrite/rewriteHandler.c:3087
-#: rewrite/rewriteHandler.c:3923
+#: executor/execMain.c:1072 rewrite/rewriteHandler.c:3097
+#: rewrite/rewriteHandler.c:3984
 #, 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."
 
-#: executor/execMain.c:1062
+#: executor/execMain.c:1083
 #, c-format
 msgid "cannot change materialized view \"%s\""
 msgstr "no se puede cambiar la vista materializada «%s»"
 
-#: executor/execMain.c:1074
+#: executor/execMain.c:1095
 #, c-format
 msgid "cannot insert into foreign table \"%s\""
 msgstr "no se puede insertar en la tabla foránea «%s»"
 
-#: executor/execMain.c:1080
+#: executor/execMain.c:1101
 #, c-format
 msgid "foreign table \"%s\" does not allow inserts"
 msgstr "la tabla foránea «%s» no permite inserciones"
 
-#: executor/execMain.c:1087
+#: executor/execMain.c:1108
 #, c-format
 msgid "cannot update foreign table \"%s\""
 msgstr "no se puede actualizar la tabla foránea «%s»"
 
-#: executor/execMain.c:1093
+#: executor/execMain.c:1114
 #, c-format
 msgid "foreign table \"%s\" does not allow updates"
 msgstr "la tabla foránea «%s» no permite actualizaciones"
 
-#: executor/execMain.c:1100
+#: executor/execMain.c:1121
 #, c-format
 msgid "cannot delete from foreign table \"%s\""
 msgstr "no se puede eliminar desde la tabla foránea «%s»"
 
-#: executor/execMain.c:1106
+#: executor/execMain.c:1127
 #, c-format
 msgid "foreign table \"%s\" does not allow deletes"
 msgstr "la tabla foránea «%s» no permite eliminaciones"
 
-#: executor/execMain.c:1117
+#: executor/execMain.c:1138
 #, c-format
 msgid "cannot change relation \"%s\""
 msgstr "no se puede cambiar la relación «%s»"
 
-#: executor/execMain.c:1144
+#: executor/execMain.c:1165
 #, c-format
 msgid "cannot lock rows in sequence \"%s\""
 msgstr "no se puede bloquear registros de la secuencia «%s»"
 
-#: executor/execMain.c:1151
+#: executor/execMain.c:1172
 #, c-format
 msgid "cannot lock rows in TOAST relation \"%s\""
 msgstr "no se puede bloquear registros en la relación TOAST «%s»"
 
-#: executor/execMain.c:1158
+#: executor/execMain.c:1179
 #, c-format
 msgid "cannot lock rows in view \"%s\""
 msgstr "no se puede bloquear registros en la vista «%s»"
 
-#: executor/execMain.c:1166
+#: executor/execMain.c:1187
 #, c-format
 msgid "cannot lock rows in materialized view \"%s\""
 msgstr "no se puede bloquear registros en la vista materializada «%s»"
 
-#: executor/execMain.c:1175 executor/execMain.c:2653
+#: executor/execMain.c:1196 executor/execMain.c:2681
 #: executor/nodeLockRows.c:136
 #, c-format
 msgid "cannot lock rows in foreign table \"%s\""
 msgstr "no se puede bloquear registros en la tabla foránea «%s»"
 
-#: executor/execMain.c:1181
+#: executor/execMain.c:1202
 #, c-format
 msgid "cannot lock rows in relation \"%s\""
 msgstr "no se puede bloquear registros en la tabla «%s»"
 
-#: executor/execMain.c:1888
+#: executor/execMain.c:1913
 #, 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:1890 executor/execMain.c:1973 executor/execMain.c:2023
-#: executor/execMain.c:2132
+#: executor/execMain.c:1915 executor/execMain.c:1999 executor/execMain.c:2050
+#: executor/execMain.c:2160
 #, c-format
 msgid "Failing row contains %s."
 msgstr "La fila que falla contiene %s."
 
-#: executor/execMain.c:1970
+#: executor/execMain.c:1996
 #, c-format
 msgid "null value in column \"%s\" of relation \"%s\" violates not-null constraint"
 msgstr "el valor nulo en la columna «%s» de la relación «%s» viola la restricción de no nulo"
 
-#: executor/execMain.c:2021
+#: executor/execMain.c:2048
 #, 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:2130
+#: executor/execMain.c:2158
 #, 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:2140
+#: executor/execMain.c:2168
 #, 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:2145
+#: executor/execMain.c:2173
 #, 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:2153
+#: executor/execMain.c:2181
 #, fuzzy, c-format
 #| msgid "new row violates row-level security policy \"%s\" (USING expression) for table \"%s\""
 msgid "target 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:2158
+#: executor/execMain.c:2186
 #, fuzzy, c-format
 #| msgid "new row violates row-level security policy (USING expression) for table \"%s\""
 msgid "target 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»"
 
-#: executor/execMain.c:2165
+#: executor/execMain.c:2193
 #, 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:2170
+#: executor/execMain.c:2198
 #, 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»"
@@ -13193,131 +13597,131 @@ 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:196 executor/execReplication.c:373
+#: executor/execReplication.c:240 executor/execReplication.c:424
 #, 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:200 executor/execReplication.c:377
+#: executor/execReplication.c:244 executor/execReplication.c:428
 #, c-format
 msgid "concurrent update, retrying"
 msgstr "actualización simultánea, reintentando"
 
-#: executor/execReplication.c:206 executor/execReplication.c:383
+#: executor/execReplication.c:250 executor/execReplication.c:434
 #, c-format
 msgid "concurrent delete, retrying"
 msgstr "eliminacón concurrente, reintentando"
 
-#: executor/execReplication.c:269 parser/parse_cte.c:509
-#: parser/parse_oper.c:233 utils/adt/array_userfuncs.c:720
-#: utils/adt/array_userfuncs.c:859 utils/adt/arrayfuncs.c:3655
-#: utils/adt/arrayfuncs.c:4210 utils/adt/arrayfuncs.c:6202
-#: utils/adt/rowtypes.c:1203
+#: executor/execReplication.c:320 parser/parse_cte.c:308
+#: parser/parse_oper.c:233 utils/adt/array_userfuncs.c:1348
+#: utils/adt/array_userfuncs.c:1491 utils/adt/arrayfuncs.c:3833
+#: utils/adt/arrayfuncs.c:4388 utils/adt/arrayfuncs.c:6398
+#: utils/adt/rowtypes.c:1230
 #, 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:599 executor/execReplication.c:605
+#: executor/execReplication.c:651 executor/execReplication.c:657
 #, fuzzy, c-format
 #| msgid "cannot update foreign table \"%s\""
 msgid "cannot update table \"%s\""
 msgstr "no se puede actualizar la tabla foránea «%s»"
 
-#: executor/execReplication.c:601 executor/execReplication.c:613
+#: executor/execReplication.c:653 executor/execReplication.c:665
 #, c-format
 msgid "Column used in the publication WHERE expression is not part of the replica identity."
 msgstr "La columna usada en la expresión WHERE de la publicación no es parte de la identidad de replicación."
 
-#: executor/execReplication.c:607 executor/execReplication.c:619
+#: executor/execReplication.c:659 executor/execReplication.c:671
 #, c-format
 msgid "Column list used by the publication does not cover the replica identity."
 msgstr "La lista de columnas usada por la publicación no incluye la identidad de replicación."
 
-#: executor/execReplication.c:611 executor/execReplication.c:617
+#: executor/execReplication.c:663 executor/execReplication.c:669
 #, fuzzy, c-format
 #| msgid "cannot delete from foreign table \"%s\""
 msgid "cannot delete from table \"%s\""
 msgstr "no se puede eliminar desde la tabla foránea «%s»"
 
-#: executor/execReplication.c:637
+#: executor/execReplication.c:689
 #, 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:639
+#: executor/execReplication.c:691
 #, 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:643
+#: executor/execReplication.c:695
 #, 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:645
+#: executor/execReplication.c:697
 #, 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:661
+#: executor/execReplication.c:713
 #, 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/execSRF.c:315
+#: executor/execSRF.c:316
 #, 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:365
+#: executor/execSRF.c:366
 #, c-format
 msgid "table-function protocol for value-per-call mode was not followed"
 msgstr "no se siguió el protocolo de función tabular para el modo de valor por llamada"
 
-#: executor/execSRF.c:373 executor/execSRF.c:667
+#: executor/execSRF.c:374 executor/execSRF.c:668
 #, c-format
 msgid "table-function protocol for materialize mode was not followed"
 msgstr "no se siguió el protocolo de función tabular para el modo de materialización"
 
-#: executor/execSRF.c:380 executor/execSRF.c:685
+#: executor/execSRF.c:381 executor/execSRF.c:686
 #, c-format
 msgid "unrecognized table-function returnMode: %d"
 msgstr "modo de retorno de la función tabular no es reconocido: %d"
 
-#: executor/execSRF.c:894
+#: executor/execSRF.c:895
 #, 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:950 executor/execSRF.c:966 executor/execSRF.c:976
+#: executor/execSRF.c:951 executor/execSRF.c:967 executor/execSRF.c:977
 #, c-format
 msgid "function return row and query-specified return row do not match"
 msgstr "la fila de retorno especificada en la consulta no coincide con fila de retorno de la función"
 
-#: executor/execSRF.c:951
+#: executor/execSRF.c:952
 #, c-format
 msgid "Returned row contains %d attribute, but query expects %d."
 msgid_plural "Returned row contains %d attributes, but query expects %d."
 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:967
+#: executor/execSRF.c:968
 #, 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/execTuples.c:146 executor/execTuples.c:353
-#: executor/execTuples.c:521 executor/execTuples.c:712
+#: executor/execTuples.c:521 executor/execTuples.c:713
 #, c-format
 msgid "cannot retrieve a system column in this context"
 msgstr "no se puede obtener una columna de sistema en este contexto"
 
-#: executor/execUtils.c:736
+#: executor/execUtils.c:744
 #, c-format
 msgid "materialized view \"%s\" has not been populated"
 msgstr "la vista materializada «%s» no ha sido poblada"
 
-#: executor/execUtils.c:738
+#: executor/execUtils.c:746
 #, c-format
 msgid "Use the REFRESH MATERIALIZED VIEW command."
 msgstr "Use la orden REFRESH MATERIALIZED VIEW."
@@ -13327,112 +13731,106 @@ msgstr "Use la orden REFRESH MATERIALIZED VIEW."
 msgid "could not determine actual type of argument declared %s"
 msgstr "no se pudo determinar el tipo de argumento declarado %s"
 
-#: executor/functions.c:514
+#: executor/functions.c:512
 #, c-format
 msgid "cannot COPY to/from client in an 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:520
+#: executor/functions.c:518
 #, c-format
 msgid "%s is not allowed in an SQL function"
 msgstr "%s no está permitido en una función SQL"
 
 #. translator: %s is a SQL statement name
-#: executor/functions.c:528 executor/spi.c:1742 executor/spi.c:2631
+#: executor/functions.c:526 executor/spi.c:1742 executor/spi.c:2635
 #, c-format
 msgid "%s is not allowed in a non-volatile function"
 msgstr "%s no está permitido en una función no-«volatile»"
 
-#: executor/functions.c:1457
+#: executor/functions.c:1450
 #, c-format
 msgid "SQL function \"%s\" statement %d"
 msgstr "función SQL «%s» en la sentencia %d"
 
-#: executor/functions.c:1483
+#: executor/functions.c:1476
 #, c-format
 msgid "SQL function \"%s\" during startup"
 msgstr "función SQL «%s» durante el inicio"
 
-#: executor/functions.c:1568
+#: executor/functions.c:1561
 #, c-format
 msgid "calling procedures with output arguments is not supported in SQL functions"
 msgstr "no está permitido invocar procedimientos con argumentos de salida en funciones SQL"
 
-#: executor/functions.c:1701 executor/functions.c:1739
-#: executor/functions.c:1753 executor/functions.c:1843
-#: executor/functions.c:1876 executor/functions.c:1890
+#: executor/functions.c:1694 executor/functions.c:1732
+#: executor/functions.c:1746 executor/functions.c:1836
+#: executor/functions.c:1869 executor/functions.c:1883
 #, c-format
 msgid "return type mismatch in function declared to return %s"
 msgstr "el tipo de retorno de función declarada para retornar %s no concuerda"
 
-#: executor/functions.c:1703
+#: executor/functions.c:1696
 #, 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:1741
+#: executor/functions.c:1734
 #, c-format
 msgid "Final statement must return exactly one column."
 msgstr "La sentencia final debe retornar exactamente una columna."
 
-#: executor/functions.c:1755
+#: executor/functions.c:1748
 #, c-format
 msgid "Actual return type is %s."
 msgstr "El verdadero tipo de retorno es %s."
 
-#: executor/functions.c:1845
+#: executor/functions.c:1838
 #, c-format
 msgid "Final statement returns too many columns."
 msgstr "La sentencia final retorna demasiadas columnas."
 
-#: executor/functions.c:1878
+#: executor/functions.c:1871
 #, 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:1892
+#: executor/functions.c:1885
 #, c-format
 msgid "Final statement returns too few columns."
 msgstr "La sentencia final retorna muy pocas columnas."
 
-#: executor/functions.c:1920
+#: executor/functions.c:1913
 #, 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:3006 executor/nodeAgg.c:3015 executor/nodeAgg.c:3027
-#, fuzzy, c-format
-#| msgid "unexpected EOF for tape %d: requested %zu bytes, read %zu bytes"
+#: executor/nodeAgg.c:3025 executor/nodeAgg.c:3034 executor/nodeAgg.c:3046
+#, c-format
 msgid "unexpected EOF for tape %p: requested %zu bytes, read %zu bytes"
-msgstr "EOF inesperado para la cinta %d: se requerían %zu bytes, se leyeron %zu bytes"
+msgstr ""
 
-#: executor/nodeAgg.c:3917 executor/nodeWindowAgg.c:2962
+#: executor/nodeAgg.c:3937 executor/nodeWindowAgg.c:2993
 #, 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/nodeAgg.c:3947 parser/parse_agg.c:668 parser/parse_agg.c:696
+#: executor/nodeAgg.c:3967 parser/parse_agg.c:669 parser/parse_agg.c:697
 #, c-format
 msgid "aggregate function calls cannot be nested"
 msgstr "no se pueden anidar llamadas a funciones de agregación"
 
-#: executor/nodeCustom.c:145 executor/nodeCustom.c:156
+#: executor/nodeCustom.c:154 executor/nodeCustom.c:165
 #, c-format
 msgid "custom scan \"%s\" does not support MarkPos"
 msgstr "el scan personalizado «%s» no soporta MarkPos"
 
-#: executor/nodeHashjoin.c:1046 executor/nodeHashjoin.c:1076
+#: executor/nodeHashjoin.c:1097 executor/nodeHashjoin.c:1127
 #, c-format
 msgid "could not rewind hash-join temporary file"
 msgstr "no se puede rebobinar el archivo temporal del hash-join"
 
-#: executor/nodeHashjoin.c:1272 executor/nodeHashjoin.c:1283
-#, c-format
-msgid "could not read from hash-join temporary file: read only %zu of %zu bytes"
-msgstr "no se pudo leer el archivo temporal de hash-join: se leyeron sólo %zu de %zu bytes"
-
-#: executor/nodeIndexonlyscan.c:240
+#: executor/nodeIndexonlyscan.c:238
 #, c-format
 msgid "lossy distance functions are not supported in index-only scans"
 msgstr "no se permiten funciones de ventana deslizante en predicados de índice"
@@ -13447,77 +13845,75 @@ msgstr "OFFSET no debe ser negativo"
 msgid "LIMIT must not be negative"
 msgstr "LIMIT no debe ser negativo"
 
-#: executor/nodeMergejoin.c:1570
+#: executor/nodeMergejoin.c:1579
 #, c-format
 msgid "RIGHT JOIN is only supported with merge-joinable join conditions"
 msgstr "RIGHT JOIN sólo está soportado con condiciones que se pueden usar con merge join"
 
-#: executor/nodeMergejoin.c:1588
+#: executor/nodeMergejoin.c:1597
 #, c-format
 msgid "FULL JOIN is only supported with merge-joinable join conditions"
 msgstr "FULL JOIN sólo está soportado con condiciones que se pueden usar con merge join"
 
-#: executor/nodeModifyTable.c:255
+#: executor/nodeModifyTable.c:234
 #, c-format
 msgid "Query has too few columns."
 msgstr "La consulta tiene muy pocas columnas."
 
-#: executor/nodeModifyTable.c:1411 executor/nodeModifyTable.c:1485
+#: executor/nodeModifyTable.c:1530 executor/nodeModifyTable.c:1604
 #, 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:1642
+#: executor/nodeModifyTable.c:1758
 #, c-format
 msgid "invalid ON UPDATE specification"
 msgstr "especificación ON UPDATE no válida"
 
-#: executor/nodeModifyTable.c:1643
+#: executor/nodeModifyTable.c:1759
 #, 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:2084
+#: executor/nodeModifyTable.c:2217
 #, c-format
 msgid "cannot move tuple across partitions when a non-root ancestor of the source partition is directly referenced in a foreign key"
 msgstr "no se puede mover una tupla entre particiones cuando un ancestro no-raíz de la partición de origen es referenciada directamente en una llave foránea"
 
-#: executor/nodeModifyTable.c:2085
-#, fuzzy, c-format
-#| msgid "A foreign key points to ancestor \"%s\", but not the root ancestor \"%s\"."
+#: executor/nodeModifyTable.c:2218
+#, c-format
 msgid "A foreign key points to ancestor \"%s\" but not the root ancestor \"%s\"."
-msgstr "Una llave foránea apunta al ancestro «%s», pero no al ancestro raíz «%s»."
+msgstr ""
 
-#: executor/nodeModifyTable.c:2088
+#: executor/nodeModifyTable.c:2221
 #, fuzzy, c-format
 #| msgid "cannot insert into foreign table \"%s\""
 msgid "Consider defining the foreign key on table \"%s\"."
 msgstr "no se puede insertar en la tabla foránea «%s»"
 
 #. translator: %s is a SQL command name
-#: executor/nodeModifyTable.c:2432 executor/nodeModifyTable.c:2823
-#, fuzzy, c-format
-#| msgid "ON CONFLICT DO UPDATE command cannot affect row a second time"
+#: executor/nodeModifyTable.c:2567 executor/nodeModifyTable.c:2954
+#, c-format
 msgid "%s command cannot affect row a second time"
-msgstr "la orden ON CONFLICT DO UPDATE no puede afectar el registro una segunda vez"
+msgstr ""
 
-#: executor/nodeModifyTable.c:2434
+#: executor/nodeModifyTable.c:2569
 #, 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."
 
-#: executor/nodeModifyTable.c:2825
+#: executor/nodeModifyTable.c:2956
 #, c-format
 msgid "Ensure that not more than one source row matches any one target row."
 msgstr "Asegúrese que no más de un registro de origen coincide con cada registro de destino."
 
-#: executor/nodeModifyTable.c:2928
+#: executor/nodeModifyTable.c:3037
 #, fuzzy, c-format
 #| msgid "tuple to be locked was already moved to another partition due to concurrent update"
 msgid "tuple to be deleted 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"
 
-#: executor/nodeModifyTable.c:2967
+#: executor/nodeModifyTable.c:3076
 #, fuzzy, c-format
 #| msgid "tuple to be updated was already modified by an operation triggered by the current command"
 msgid "tuple to be updated or deleted was already modified by an operation triggered by the current command"
@@ -13533,8 +13929,8 @@ 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:346 executor/nodeSubplan.c:385
-#: executor/nodeSubplan.c:1159
+#: executor/nodeSubplan.c:325 executor/nodeSubplan.c:351
+#: executor/nodeSubplan.c:405 executor/nodeSubplan.c:1174
 #, c-format
 msgid "more than one row returned by a subquery used as an expression"
 msgstr "una subconsulta utilizada como expresión retornó más de un registro"
@@ -13564,32 +13960,32 @@ msgstr "El filtro para la columna «%s» es null."
 msgid "null is not allowed in column \"%s\""
 msgstr "null no está permitido en la columna «%s»"
 
-#: executor/nodeWindowAgg.c:355
+#: executor/nodeWindowAgg.c:356
 #, 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:2080
+#: executor/nodeWindowAgg.c:2083
 #, c-format
 msgid "frame starting offset must not be null"
 msgstr "la posición inicial del marco no debe ser null"
 
-#: executor/nodeWindowAgg.c:2093
+#: executor/nodeWindowAgg.c:2096
 #, c-format
 msgid "frame starting offset must not be negative"
 msgstr "la posición inicial del marco no debe ser negativa"
 
-#: executor/nodeWindowAgg.c:2105
+#: executor/nodeWindowAgg.c:2108
 #, c-format
 msgid "frame ending offset must not be null"
 msgstr "la posición final del marco no debe ser null"
 
-#: executor/nodeWindowAgg.c:2118
+#: executor/nodeWindowAgg.c:2121
 #, c-format
 msgid "frame ending offset must not be negative"
 msgstr "la posición final del marco no debe ser negativa"
 
-#: executor/nodeWindowAgg.c:2878
+#: executor/nodeWindowAgg.c:2909
 #, 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"
@@ -13640,33 +14036,33 @@ 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:1717 parser/analyze.c:2861
+#: executor/spi.c:1717 parser/analyze.c:2874
 #, c-format
 msgid "Scrollable cursors must be READ ONLY."
 msgstr "Los cursores declarados SCROLL deben ser READ ONLY."
 
-#: executor/spi.c:2470
+#: executor/spi.c:2474
 #, c-format
 msgid "empty query does not return tuples"
 msgstr "la consulta vacía no retorna tuplas"
 
 #. translator: %s is name of a SQL command, eg INSERT
-#: executor/spi.c:2544
+#: executor/spi.c:2548
 #, c-format
 msgid "%s query does not return tuples"
 msgstr "la consulta «%s» no retorna tuplas"
 
-#: executor/spi.c:2959
+#: executor/spi.c:2963
 #, c-format
 msgid "SQL expression \"%s\""
 msgstr "expresión SQL «%s»"
 
-#: executor/spi.c:2964
+#: executor/spi.c:2968
 #, c-format
 msgid "PL/pgSQL assignment \"%s\""
 msgstr "asignación PL/pgSQL «%s»"
 
-#: executor/spi.c:2967
+#: executor/spi.c:2971
 #, c-format
 msgid "SQL statement \"%s\""
 msgstr "sentencia SQL: «%s»"
@@ -13676,22 +14072,23 @@ msgstr "sentencia SQL: «%s»"
 msgid "could not send tuple to shared-memory queue"
 msgstr "no se pudo enviar la tupla a la cola en memoria compartida"
 
-#: foreign/foreign.c:221
+#: foreign/foreign.c:222
 #, c-format
 msgid "user mapping not found for \"%s\""
 msgstr "no se encontró un mapeo para el usuario «%s»"
 
-#: foreign/foreign.c:638
+#: foreign/foreign.c:647 storage/file/fd.c:3881
 #, c-format
 msgid "invalid option \"%s\""
 msgstr "el nombre de opción «%s» no es válido"
 
-#: foreign/foreign.c:640
-#, c-format
-msgid "Valid options in this context are: %s"
-msgstr "Las opciones válidas en este contexto son: %s"
+#: foreign/foreign.c:649
+#, fuzzy, c-format
+#| msgid "Perhaps you meant to reference the column \"%s.%s\"."
+msgid "Perhaps you meant the option \"%s\"."
+msgstr "Probablemente quiera hacer referencia a la columna «%s.%s»."
 
-#: foreign/foreign.c:642
+#: foreign/foreign.c:651
 #, fuzzy, c-format
 #| msgid "Valid options in this context are: %s"
 msgid "There are no valid options in this context."
@@ -13702,8 +14099,8 @@ msgstr "Las opciones válidas en este contexto son: %s"
 msgid "could not access file \"%s\": %m"
 msgstr "no se pudo acceder al archivo «%s»: %m"
 
-#: lib/dshash.c:254 utils/mmgr/dsa.c:702 utils/mmgr/dsa.c:724
-#: utils/mmgr/dsa.c:805
+#: lib/dshash.c:254 utils/mmgr/dsa.c:714 utils/mmgr/dsa.c:736
+#: utils/mmgr/dsa.c:817
 #, c-format
 msgid "Failed on DSA request of size %zu."
 msgstr "Falla en petición DSA de tamaño %zu."
@@ -13713,817 +14110,808 @@ msgstr "Falla en petición DSA de tamaño %zu."
 msgid "expected SASL response, got message type %d"
 msgstr "se esperaba una respuesta SASL, se obtuvo mensaje de tipo %d"
 
-#: libpq/auth-scram.c:258
+#: libpq/auth-scram.c:270
 #, 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:279 libpq/auth-scram.c:523 libpq/auth-scram.c:534
+#: libpq/auth-scram.c:294 libpq/auth-scram.c:543 libpq/auth-scram.c:554
 #, c-format
 msgid "invalid SCRAM secret for user \"%s\""
 msgstr "el secreto SCRAM para el usuario «%s» no es válido"
 
-#: libpq/auth-scram.c:290
+#: libpq/auth-scram.c:305
 #, c-format
 msgid "User \"%s\" does not have a valid SCRAM secret."
 msgstr "El usuario «%s» no tiene un secreto SCRAM válido."
 
-#: libpq/auth-scram.c:368 libpq/auth-scram.c:373 libpq/auth-scram.c:714
-#: libpq/auth-scram.c:722 libpq/auth-scram.c:827 libpq/auth-scram.c:840
-#: libpq/auth-scram.c:850 libpq/auth-scram.c:958 libpq/auth-scram.c:965
-#: libpq/auth-scram.c:980 libpq/auth-scram.c:995 libpq/auth-scram.c:1009
-#: libpq/auth-scram.c:1027 libpq/auth-scram.c:1042 libpq/auth-scram.c:1355
-#: libpq/auth-scram.c:1363
+#: libpq/auth-scram.c:385 libpq/auth-scram.c:390 libpq/auth-scram.c:744
+#: libpq/auth-scram.c:752 libpq/auth-scram.c:857 libpq/auth-scram.c:870
+#: libpq/auth-scram.c:880 libpq/auth-scram.c:988 libpq/auth-scram.c:995
+#: libpq/auth-scram.c:1010 libpq/auth-scram.c:1025 libpq/auth-scram.c:1039
+#: libpq/auth-scram.c:1057 libpq/auth-scram.c:1072 libpq/auth-scram.c:1386
+#: libpq/auth-scram.c:1394
 #, c-format
 msgid "malformed SCRAM message"
 msgstr "mensaje SCRAM mal formado"
 
-#: libpq/auth-scram.c:369
+#: libpq/auth-scram.c:386
 #, c-format
 msgid "The message is empty."
 msgstr "El mensaje está vacío."
 
-#: libpq/auth-scram.c:374
+#: libpq/auth-scram.c:391
 #, c-format
 msgid "Message length does not match input length."
 msgstr "El largo del mensaje no coincide con el largo de entrada."
 
-#: libpq/auth-scram.c:406
+#: libpq/auth-scram.c:423
 #, c-format
 msgid "invalid SCRAM response"
 msgstr "respuesta SCRAM no válida"
 
-#: libpq/auth-scram.c:407
+#: libpq/auth-scram.c:424
 #, c-format
 msgid "Nonce does not match."
 msgstr "El «nonce» no coincide."
 
-#: libpq/auth-scram.c:483
+#: libpq/auth-scram.c:500
 #, c-format
 msgid "could not generate random salt"
 msgstr "no se pudo generar una sal aleatoria"
 
-#: libpq/auth-scram.c:715
+#: libpq/auth-scram.c:745
 #, c-format
 msgid "Expected attribute \"%c\" but found \"%s\"."
 msgstr "Se esperaba un atributo «%c» pero se encontró «%s»."
 
-#: libpq/auth-scram.c:723 libpq/auth-scram.c:851
+#: libpq/auth-scram.c:753 libpq/auth-scram.c:881
 #, c-format
 msgid "Expected character \"=\" for attribute \"%c\"."
 msgstr "Se esperaba el carácter «=» para el atributo «%c»."
 
-#: libpq/auth-scram.c:828
+#: libpq/auth-scram.c:858
 #, c-format
 msgid "Attribute expected, but found end of string."
 msgstr "Se esperaba un atributo, se encontró el fin de la cadena."
 
-#: libpq/auth-scram.c:841
+#: libpq/auth-scram.c:871
 #, 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:959 libpq/auth-scram.c:981
+#: libpq/auth-scram.c:989 libpq/auth-scram.c:1011
 #, c-format
 msgid "The client selected SCRAM-SHA-256-PLUS, but the SCRAM message does not 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:966 libpq/auth-scram.c:996
+#: libpq/auth-scram.c:996 libpq/auth-scram.c:1026
 #, c-format
 msgid "Comma expected, but found character \"%s\"."
 msgstr "Se esperaba una coma, se encontró el carácter «%s»."
 
-#: libpq/auth-scram.c:987
+#: libpq/auth-scram.c:1017
 #, c-format
 msgid "SCRAM channel binding negotiation error"
 msgstr "error de negociación de enlazado (binding) de canal SCRAM"
 
-#: libpq/auth-scram.c:988
+#: libpq/auth-scram.c:1018
 #, c-format
 msgid "The client supports SCRAM channel binding but thinks the server does not.  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:1010
+#: libpq/auth-scram.c:1040
 #, 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:1021
+#: libpq/auth-scram.c:1051
 #, c-format
 msgid "unsupported SCRAM channel-binding type \"%s\""
 msgstr "tipo de enlazado de canal SCRAM «%s» no soportado"
 
-#: libpq/auth-scram.c:1028
+#: libpq/auth-scram.c:1058
 #, c-format
 msgid "Unexpected channel-binding flag \"%s\"."
 msgstr "Indicador de enlazado de canal «%s» inesperado."
 
-#: libpq/auth-scram.c:1038
+#: libpq/auth-scram.c:1068
 #, 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:1043
+#: libpq/auth-scram.c:1073
 #, c-format
 msgid "Unexpected attribute \"%s\" in client-first-message."
 msgstr "Atributo inesperado \"%s\" en client-first-message."
 
-#: libpq/auth-scram.c:1059
+#: libpq/auth-scram.c:1089
 #, c-format
 msgid "client requires an unsupported SCRAM extension"
 msgstr "el cliente requiere una extensión SCRAM no soportada"
 
-#: libpq/auth-scram.c:1073
+#: libpq/auth-scram.c:1103
 #, c-format
 msgid "non-printable characters in SCRAM nonce"
 msgstr "caracteres no imprimibles en el «nonce» SCRAM"
 
-#: libpq/auth-scram.c:1203
+#: libpq/auth-scram.c:1234
 #, c-format
 msgid "could not generate random nonce"
 msgstr "no se pudo generar un «nonce» aleatorio"
 
-#: libpq/auth-scram.c:1213
+#: libpq/auth-scram.c:1244
 #, c-format
 msgid "could not encode random nonce"
 msgstr "no se pudo codificar un «nonce» aleatorio"
 
-#: libpq/auth-scram.c:1319
+#: libpq/auth-scram.c:1350
 #, c-format
 msgid "SCRAM channel binding check failed"
 msgstr "la verificación de enlazado (binding) de canal SCRAM falló"
 
-#: libpq/auth-scram.c:1337
+#: libpq/auth-scram.c:1368
 #, 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:1356
+#: libpq/auth-scram.c:1387
 #, c-format
 msgid "Malformed proof in client-final-message."
 msgstr "Prueba (proof) mal formada en client-final-message."
 
-#: libpq/auth-scram.c:1364
+#: libpq/auth-scram.c:1395
 #, c-format
 msgid "Garbage found at the end of client-final-message."
 msgstr "Basura encontrada al final de client-final-message."
 
-#: libpq/auth.c:275
+#: libpq/auth.c:271
 #, 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:278
+#: libpq/auth.c:274
 #, c-format
 msgid "\"trust\" authentication failed for user \"%s\""
 msgstr "la autentificación «trust» falló para el usuario «%s»"
 
-#: libpq/auth.c:281
+#: libpq/auth.c:277
 #, c-format
 msgid "Ident authentication failed for user \"%s\""
 msgstr "la autentificación Ident falló para el usuario «%s»"
 
-#: libpq/auth.c:284
+#: libpq/auth.c:280
 #, c-format
 msgid "Peer authentication failed for user \"%s\""
 msgstr "la autentificación Peer falló para el usuario «%s»"
 
-#: libpq/auth.c:289
+#: libpq/auth.c:285
 #, c-format
 msgid "password authentication failed for user \"%s\""
 msgstr "la autentificación password falló para el usuario «%s»"
 
-#: libpq/auth.c:294
+#: libpq/auth.c:290
 #, c-format
 msgid "GSSAPI authentication failed for user \"%s\""
 msgstr "la autentificación GSSAPI falló para el usuario «%s»"
 
-#: libpq/auth.c:297
+#: libpq/auth.c:293
 #, c-format
 msgid "SSPI authentication failed for user \"%s\""
 msgstr "la autentificación SSPI falló para el usuario «%s»"
 
-#: libpq/auth.c:300
+#: libpq/auth.c:296
 #, c-format
 msgid "PAM authentication failed for user \"%s\""
 msgstr "la autentificación PAM falló para el usuario «%s»"
 
-#: libpq/auth.c:303
+#: libpq/auth.c:299
 #, c-format
 msgid "BSD authentication failed for user \"%s\""
 msgstr "la autentificación BSD falló para el usuario «%s»"
 
-#: libpq/auth.c:306
+#: libpq/auth.c:302
 #, c-format
 msgid "LDAP authentication failed for user \"%s\""
 msgstr "la autentificación LDAP falló para el usuario «%s»"
 
-#: libpq/auth.c:309
+#: libpq/auth.c:305
 #, c-format
 msgid "certificate authentication failed for user \"%s\""
 msgstr "la autentificación por certificado falló para el usuario «%s»"
 
-#: libpq/auth.c:312
+#: libpq/auth.c:308
 #, c-format
 msgid "RADIUS authentication failed for user \"%s\""
 msgstr "la autentificación RADIUS falló para el usuario «%s»"
 
-#: libpq/auth.c:315
+#: libpq/auth.c:311
 #, 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:319
-#, c-format
-msgid "Connection matched pg_hba.conf line %d: \"%s\""
+#: libpq/auth.c:315
+#, fuzzy, c-format
+#| msgid "Connection matched pg_hba.conf line %d: \"%s\""
+msgid "Connection matched %s line %d: \"%s\""
 msgstr "La conexión coincidió con la línea %d de pg_hba.conf: «%s»"
 
-#: libpq/auth.c:362
+#: libpq/auth.c:359
 #, c-format
 msgid "authentication identifier set more than once"
 msgstr "identificador de autentificación establecido más de una vez"
 
-#: libpq/auth.c:363
+#: libpq/auth.c:360
 #, c-format
 msgid "previous identifier: \"%s\"; new identifier: \"%s\""
 msgstr "identificador anterior: «%s»; nuevo identificador: «%s»"
 
-#: libpq/auth.c:372
+#: libpq/auth.c:370
 #, c-format
 msgid "connection authenticated: identity=\"%s\" method=%s (%s:%d)"
 msgstr "conexión autenticada: identidad=«%s» método=%s (%s:%d)"
 
-#: libpq/auth.c:411
+#: libpq/auth.c:410
 #, c-format
 msgid "client certificates can only be checked if a root certificate store is available"
 msgstr "los certificados de cliente sólo pueden verificarse si un almacén de certificado raíz está disponible"
 
-#: libpq/auth.c:422
+#: libpq/auth.c:421
 #, c-format
 msgid "connection requires a valid client certificate"
 msgstr "la conexión requiere un certificado de cliente válido"
 
-#: libpq/auth.c:453 libpq/auth.c:499
+#: libpq/auth.c:452 libpq/auth.c:498
 msgid "GSS encryption"
 msgstr "cifrado GSS"
 
-#: libpq/auth.c:456 libpq/auth.c:502
+#: libpq/auth.c:455 libpq/auth.c:501
 msgid "SSL encryption"
 msgstr "cifrado SSL"
 
-#: libpq/auth.c:458 libpq/auth.c:504
+#: libpq/auth.c:457 libpq/auth.c:503
 msgid "no encryption"
 msgstr "sin cifrado"
 
 #. translator: last %s describes encryption state
-#: libpq/auth.c:464
+#: libpq/auth.c:463
 #, c-format
 msgid "pg_hba.conf rejects replication connection for host \"%s\", user \"%s\", %s"
 msgstr "pg_hba.conf rechaza la conexión de replicación para el servidor «%s», usuario «%s», %s"
 
 #. translator: last %s describes encryption state
-#: libpq/auth.c:471
+#: libpq/auth.c:470
 #, c-format
 msgid "pg_hba.conf rejects connection for host \"%s\", user \"%s\", database \"%s\", %s"
 msgstr "pg_hba.conf rechaza la conexión para el servidor «%s», usuario «%s», base de datos «%s», %s"
 
-#: libpq/auth.c:509
+#: libpq/auth.c:508
 #, 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:512
+#: libpq/auth.c:511
 #, 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:515
+#: libpq/auth.c:514
 #, 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:518
+#: libpq/auth.c:517
 #, 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:523
+#: libpq/auth.c:522
 #, 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."
 
 #. translator: last %s describes encryption state
-#: libpq/auth.c:531
+#: libpq/auth.c:530
 #, c-format
 msgid "no pg_hba.conf entry for replication connection from host \"%s\", user \"%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"
 
 #. translator: last %s describes encryption state
-#: libpq/auth.c:539
+#: libpq/auth.c:538
 #, c-format
 msgid "no pg_hba.conf entry for host \"%s\", user \"%s\", database \"%s\", %s"
 msgstr "no hay una línea en pg_hba.conf para «%s», usuario «%s», base de datos «%s», %s"
 
-#: libpq/auth.c:712
+#: libpq/auth.c:711
 #, 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:733
+#: libpq/auth.c:732
 #, c-format
 msgid "invalid password packet size"
 msgstr "el tamaño del paquete de contraseña no es válido"
 
-#: libpq/auth.c:751
+#: libpq/auth.c:750
 #, c-format
 msgid "empty password returned by client"
 msgstr "el cliente retornó una contraseña vacía"
 
-#: libpq/auth.c:880 libpq/hba.c:1335
+#: libpq/auth.c:879 libpq/hba.c:1749
 #, 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:886
+#: libpq/auth.c:885
 #, c-format
 msgid "could not generate random MD5 salt"
 msgstr "no se pudo generar una sal MD5 aleatoria"
 
-#: libpq/auth.c:935 libpq/be-secure-gssapi.c:535
+#: libpq/auth.c:936 libpq/be-secure-gssapi.c:540
 #, c-format
 msgid "could not set environment: %m"
 msgstr "no se pudo establecer el ambiente: %m"
 
-#: libpq/auth.c:971
+#: libpq/auth.c:975
 #, 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:1031
+#: libpq/auth.c:1041
 msgid "accepting GSS security context failed"
 msgstr "falló la aceptación del contexto de seguridad GSS"
 
-#: libpq/auth.c:1072
+#: libpq/auth.c:1082
 msgid "retrieving GSS user name failed"
 msgstr "falló la obtención del nombre de usuario GSS"
 
-#: libpq/auth.c:1221
+#: libpq/auth.c:1228
 msgid "could not acquire SSPI credentials"
 msgstr "no se pudo obtener las credenciales SSPI"
 
-#: libpq/auth.c:1246
+#: libpq/auth.c:1253
 #, 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:1324
+#: libpq/auth.c:1331
 msgid "could not accept SSPI security context"
 msgstr "no se pudo aceptar un contexto SSPI"
 
-#: libpq/auth.c:1386
+#: libpq/auth.c:1372
 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:1525 libpq/auth.c:1544
+#: libpq/auth.c:1508 libpq/auth.c:1527
 #, c-format
 msgid "could not translate name"
 msgstr "no se pudo traducir el nombre"
 
-#: libpq/auth.c:1557
+#: libpq/auth.c:1540
 #, c-format
 msgid "realm name too long"
 msgstr "nombre de «realm» demasiado largo"
 
-#: libpq/auth.c:1572
+#: libpq/auth.c:1555
 #, c-format
 msgid "translated account name too long"
 msgstr "nombre de cuenta traducido demasiado largo"
 
-#: libpq/auth.c:1753
+#: libpq/auth.c:1734
 #, 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:1768
+#: libpq/auth.c:1749
 #, 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:1780
+#: libpq/auth.c:1761
 #, 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:1802
+#: libpq/auth.c:1783
 #, 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:1819
+#: libpq/auth.c:1800
 #, 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:1829
+#: libpq/auth.c:1810
 #, c-format
 msgid "invalidly formatted response from Ident server: \"%s\""
 msgstr "respuesta del servidor Ident en formato no válido: «%s»"
 
-#: libpq/auth.c:1882
+#: libpq/auth.c:1863
 #, 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:1886
+#: libpq/auth.c:1867
 #, c-format
 msgid "could not get peer credentials: %m"
 msgstr "no se pudo recibir credenciales: %m"
 
-#: libpq/auth.c:1898
+#: libpq/auth.c:1879
 #, 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:1999
+#: libpq/auth.c:1981
 #, c-format
 msgid "error from underlying PAM layer: %s"
 msgstr "se ha recibido un error de la biblioteca PAM: %s"
 
-#: libpq/auth.c:2010
+#: libpq/auth.c:1992
 #, c-format
 msgid "unsupported PAM conversation %d/\"%s\""
 msgstr "conversación PAM no soportada: %d/«%s»"
 
-#: libpq/auth.c:2070
+#: libpq/auth.c:2049
 #, c-format
 msgid "could not create PAM authenticator: %s"
 msgstr "no se pudo crear autenticador PAM: %s"
 
-#: libpq/auth.c:2081
+#: libpq/auth.c:2060
 #, c-format
 msgid "pam_set_item(PAM_USER) failed: %s"
 msgstr "pam_set_item(PAM_USER) falló: %s"
 
-#: libpq/auth.c:2113
+#: libpq/auth.c:2092
 #, c-format
 msgid "pam_set_item(PAM_RHOST) failed: %s"
 msgstr "pam_set_item(PAM_RHOST) falló: %s"
 
-#: libpq/auth.c:2125
+#: libpq/auth.c:2104
 #, c-format
 msgid "pam_set_item(PAM_CONV) failed: %s"
 msgstr "pam_set_item(PAM_CONV) falló: %s"
 
-#: libpq/auth.c:2138
+#: libpq/auth.c:2117
 #, c-format
 msgid "pam_authenticate failed: %s"
 msgstr "pam_authenticate falló: %s"
 
-#: libpq/auth.c:2151
+#: libpq/auth.c:2130
 #, c-format
 msgid "pam_acct_mgmt failed: %s"
 msgstr "pam_acct_mgmt falló: %s"
 
-#: libpq/auth.c:2162
+#: libpq/auth.c:2141
 #, c-format
 msgid "could not release PAM authenticator: %s"
 msgstr "no se pudo liberar autenticador PAM: %s"
 
-#: libpq/auth.c:2242
+#: libpq/auth.c:2221
 #, c-format
 msgid "could not initialize LDAP: error code %d"
 msgstr "no se pudo inicializar LDAP: código de error %d"
 
-#: libpq/auth.c:2279
+#: libpq/auth.c:2258
 #, c-format
 msgid "could not extract domain name from ldapbasedn"
 msgstr "no se pudo extraer el nombre de dominio de ldapbasedn"
 
-#: libpq/auth.c:2287
+#: libpq/auth.c:2266
 #, 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:2289
+#: libpq/auth.c:2268
 #, c-format
 msgid "Set an LDAP server name explicitly."
 msgstr "Defina un nombre de servidor LDAP explícitamente."
 
-#: libpq/auth.c:2341
+#: libpq/auth.c:2320
 #, c-format
 msgid "could not initialize LDAP: %s"
 msgstr "no se pudo inicializar LDAP: %s"
 
-#: libpq/auth.c:2351
+#: libpq/auth.c:2330
 #, c-format
 msgid "ldaps not supported with this LDAP library"
 msgstr "ldaps no está soportado con esta biblioteca LDAP"
 
-#: libpq/auth.c:2359
+#: libpq/auth.c:2338
 #, c-format
 msgid "could not initialize LDAP: %m"
 msgstr "no se pudo inicializar LDAP: %m"
 
-#: libpq/auth.c:2369
+#: libpq/auth.c:2348
 #, 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:2409
-#, 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:2410
-#, 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:2426
+#: libpq/auth.c:2364
 #, c-format
 msgid "could not start LDAP TLS session: %s"
 msgstr "no se pudo iniciar sesión de LDAP TLS: %s"
 
-#: libpq/auth.c:2497
+#: libpq/auth.c:2441
 #, c-format
 msgid "LDAP server not specified, and no ldapbasedn"
 msgstr "servidor LDAP no especificado, y no hay ldapbasedn"
 
-#: libpq/auth.c:2504
+#: libpq/auth.c:2448
 #, c-format
 msgid "LDAP server not specified"
 msgstr "servidor LDAP no especificado"
 
-#: libpq/auth.c:2566
+#: libpq/auth.c:2510
 #, 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:2583
+#: libpq/auth.c:2527
 #, 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:2612
+#: libpq/auth.c:2557
 #, 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:2626
+#: libpq/auth.c:2573
 #, c-format
 msgid "LDAP user \"%s\" does not exist"
 msgstr "no existe el usuario LDAP «%s»"
 
-#: libpq/auth.c:2627
+#: libpq/auth.c:2574
 #, c-format
 msgid "LDAP search for filter \"%s\" on server \"%s\" returned no entries."
 msgstr "La búsqueda LDAP para el filtro «%s» en el servidor «%s» no retornó elementos."
 
-#: libpq/auth.c:2631
+#: libpq/auth.c:2578
 #, c-format
 msgid "LDAP user \"%s\" is not unique"
 msgstr "el usuario LDAP «%s» no es única"
 
-#: libpq/auth.c:2632
+#: libpq/auth.c:2579
 #, 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:2652
+#: libpq/auth.c:2599
 #, 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:2673
+#: libpq/auth.c:2620
 #, 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:2704
+#: libpq/auth.c:2651
 #, 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:2736
+#: libpq/auth.c:2683
 #, c-format
 msgid "LDAP diagnostics: %s"
 msgstr "Diagnóstico LDAP: %s"
 
-#: libpq/auth.c:2774
+#: libpq/auth.c:2721
 #, 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:2795
+#: libpq/auth.c:2742
 #, c-format
 msgid "certificate authentication failed for user \"%s\": unable to retrieve subject DN"
 msgstr "la autentificación por certificado falló para el usuario «%s»: no se pudo obtener el DN del sujeto"
 
-#: libpq/auth.c:2818
+#: libpq/auth.c:2765
 #, c-format
 msgid "certificate validation (clientcert=verify-full) failed for user \"%s\": DN mismatch"
 msgstr "la validación de certificado (clientcert=verify-full) falló para el usuario «%s»: discordancia de DN"
 
-#: libpq/auth.c:2823
+#: libpq/auth.c:2770
 #, 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:2925
+#: libpq/auth.c:2872
 #, c-format
 msgid "RADIUS server not specified"
 msgstr "servidor RADIUS no especificado"
 
-#: libpq/auth.c:2932
+#: libpq/auth.c:2879
 #, c-format
 msgid "RADIUS secret not specified"
 msgstr "secreto RADIUS no especificado"
 
-#: libpq/auth.c:2946
+#: libpq/auth.c:2893
 #, 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:3053 libpq/hba.c:1976
+#: libpq/auth.c:2995 libpq/hba.c:2391
 #, 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:3067
+#: libpq/auth.c:3009
 #, c-format
 msgid "could not generate random encryption vector"
 msgstr "no se pudo generar un vector aleatorio de encriptación"
 
-#: libpq/auth.c:3104
+#: libpq/auth.c:3046
 #, fuzzy, c-format
-#| msgid "could not perform MD5 encryption of password"
+#| msgid "could not encrypt password: %s\n"
 msgid "could not perform MD5 encryption of password: %s"
-msgstr "no se pudo efectuar cifrado MD5 de la contraseña"
+msgstr "no se pudo cifrar contraseña: %s\n"
 
-#: libpq/auth.c:3131
+#: libpq/auth.c:3073
 #, c-format
 msgid "could not create RADIUS socket: %m"
 msgstr "no se pudo crear el socket RADIUS: %m"
 
-#: libpq/auth.c:3153
+#: libpq/auth.c:3089
 #, c-format
 msgid "could not bind local RADIUS socket: %m"
 msgstr "no se pudo enlazar el socket RADIUS local: %m"
 
-#: libpq/auth.c:3163
+#: libpq/auth.c:3099
 #, c-format
 msgid "could not send RADIUS packet: %m"
 msgstr "no se pudo enviar el paquete RADIUS: %m"
 
-#: libpq/auth.c:3197 libpq/auth.c:3223
+#: libpq/auth.c:3133 libpq/auth.c:3159
 #, c-format
 msgid "timeout waiting for RADIUS response from %s"
 msgstr "se agotó el tiempo de espera de la respuesta RADIUS desde %s"
 
-#: libpq/auth.c:3216
+#: libpq/auth.c:3152
 #, 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:3246
+#: libpq/auth.c:3182
 #, c-format
 msgid "could not read RADIUS response: %m"
 msgstr "no se pudo leer la respuesta RADIUS: %m"
 
-#: libpq/auth.c:3259 libpq/auth.c:3263
+#: libpq/auth.c:3190
 #, c-format
 msgid "RADIUS response from %s was sent from incorrect port: %d"
 msgstr "la respuesta RADIUS desde %s fue enviada desde el port incorrecto: %d"
 
-#: libpq/auth.c:3272
+#: libpq/auth.c:3198
 #, c-format
 msgid "RADIUS response from %s too short: %d"
 msgstr "la respuesta RADIUS desde %s es demasiado corta: %d"
 
-#: libpq/auth.c:3279
+#: libpq/auth.c:3205
 #, 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:3287
+#: libpq/auth.c:3213
 #, 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:3312
+#: libpq/auth.c:3238
 #, fuzzy, c-format
-#| msgid "could not perform MD5 encryption of received packet"
+#| msgid "could not send feedback packet: %s"
 msgid "could not perform MD5 encryption of received packet: %s"
-msgstr "no se pudo realizar cifrado MD5 del paquete recibido"
+msgstr "no se pudo enviar el paquete de retroalimentación: %s"
 
-#: libpq/auth.c:3322
+#: libpq/auth.c:3248
 #, c-format
 msgid "RADIUS response from %s has incorrect MD5 signature"
 msgstr "la respuesta RADIUS desde %s tiene firma MD5 incorrecta"
 
-#: libpq/auth.c:3340
+#: libpq/auth.c:3266
 #, 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:128 libpq/be-fsstubs.c:157 libpq/be-fsstubs.c:185
-#: libpq/be-fsstubs.c:211 libpq/be-fsstubs.c:236 libpq/be-fsstubs.c:274
-#: libpq/be-fsstubs.c:297 libpq/be-fsstubs.c:545
+#: libpq/be-fsstubs.c:133 libpq/be-fsstubs.c:162 libpq/be-fsstubs.c:190
+#: libpq/be-fsstubs.c:216 libpq/be-fsstubs.c:241 libpq/be-fsstubs.c:283
+#: libpq/be-fsstubs.c:306 libpq/be-fsstubs.c:560
 #, c-format
 msgid "invalid large-object descriptor: %d"
 msgstr "el descriptor de objeto grande no es válido: %d"
 
-#: libpq/be-fsstubs.c:168
+#: libpq/be-fsstubs.c:173
 #, c-format
 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:192 libpq/be-fsstubs.c:552
+#: libpq/be-fsstubs.c:197 libpq/be-fsstubs.c:567
 #, c-format
 msgid "large object descriptor %d was not opened for writing"
 msgstr "el descriptor de objeto grande %d no fue abierto para escritura"
 
-#: libpq/be-fsstubs.c:219
+#: libpq/be-fsstubs.c:224
 #, c-format
 msgid "lo_lseek result out of range for large-object descriptor %d"
 msgstr "resultado de lo_lseek fuera de rango para el descriptor de objeto grande %d"
 
-#: libpq/be-fsstubs.c:282
+#: libpq/be-fsstubs.c:291
 #, c-format
 msgid "lo_tell result out of range for large-object descriptor %d"
 msgstr "resultado de lo_tell fuera de rango para el descriptor de objeto grande %d"
 
-#: libpq/be-fsstubs.c:424
+#: libpq/be-fsstubs.c:439
 #, c-format
 msgid "could not open server file \"%s\": %m"
 msgstr "no se pudo abrir el archivo de servidor «%s»: %m"
 
-#: libpq/be-fsstubs.c:447
+#: libpq/be-fsstubs.c:462
 #, c-format
 msgid "could not read server file \"%s\": %m"
 msgstr "no se pudo leer el archivo de servidor «%s»: %m"
 
-#: libpq/be-fsstubs.c:506
+#: libpq/be-fsstubs.c:521
 #, 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:518
+#: libpq/be-fsstubs.c:533
 #, 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:758
+#: libpq/be-fsstubs.c:774
 #, 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:800 utils/adt/genfile.c:262 utils/adt/genfile.c:301
-#: utils/adt/genfile.c:337
+#: libpq/be-fsstubs.c:816 utils/adt/genfile.c:262 utils/adt/genfile.c:294
+#: utils/adt/genfile.c:315
 #, c-format
 msgid "requested length cannot be negative"
 msgstr "el tamaño solicitado no puede ser negativo"
 
-#: libpq/be-fsstubs.c:851 storage/large_object/inv_api.c:299
+#: libpq/be-fsstubs.c:871 storage/large_object/inv_api.c:299
 #: storage/large_object/inv_api.c:311 storage/large_object/inv_api.c:508
 #: storage/large_object/inv_api.c:619 storage/large_object/inv_api.c:809
 #, c-format
 msgid "permission denied for large object %u"
 msgstr "permiso denegado al objeto grande %u"
 
-#: libpq/be-secure-common.c:93
+#: libpq/be-secure-common.c:71
 #, 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:113
+#: libpq/be-secure-common.c:91
 #, c-format
 msgid "command \"%s\" failed"
 msgstr "la orden «%s» falló"
 
-#: libpq/be-secure-common.c:141
+#: libpq/be-secure-common.c:119
 #, 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:151
+#: libpq/be-secure-common.c:129
 #, 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:177
+#: libpq/be-secure-common.c:155
 #, 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:165
 #, 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:167
 #, 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."
@@ -14537,7 +14925,7 @@ msgstr "error de «wrap» de GSSAPI"
 msgid "outgoing GSSAPI message would not use confidentiality"
 msgstr "mensaje saliente GSSAPI no proveería confidencialidad"
 
-#: libpq/be-secure-gssapi.c:218 libpq/be-secure-gssapi.c:622
+#: libpq/be-secure-gssapi.c:218 libpq/be-secure-gssapi.c:634
 #, c-format
 msgid "server tried to send oversize GSSAPI packet (%zu > %zu)"
 msgstr "el servidor intentó enviar un paquete GSSAPI demasiado grande (%zu > %zu)"
@@ -14556,221 +14944,236 @@ msgstr "error de «unwrap» de GSSAPI"
 msgid "incoming GSSAPI message did not use confidentiality"
 msgstr "mensaje GSSAPI entrante no usó confidencialidad"
 
-#: libpq/be-secure-gssapi.c:570
+#: libpq/be-secure-gssapi.c:575
 #, c-format
 msgid "oversize GSSAPI packet sent by the client (%zu > %d)"
 msgstr "paquete GSSAPI demasiado grande enviado por el cliente (%zu > %d)"
 
-#: libpq/be-secure-gssapi.c:594
+#: libpq/be-secure-gssapi.c:600
 msgid "could not accept GSSAPI security context"
 msgstr "no se pudo aceptar un contexto de seguridad GSSAPI"
 
-#: libpq/be-secure-gssapi.c:689
+#: libpq/be-secure-gssapi.c:701
 msgid "GSSAPI size check error"
 msgstr "error de verificación de tamaño GSSAPI"
 
-#: libpq/be-secure-openssl.c:122
+#: libpq/be-secure-openssl.c:125
 #, c-format
 msgid "could not create SSL context: %s"
 msgstr "no se pudo crear un contexto SSL: %s"
 
-#: libpq/be-secure-openssl.c:148
+#: libpq/be-secure-openssl.c:151
 #, c-format
 msgid "could not load server certificate file \"%s\": %s"
 msgstr "no se pudo cargar el archivo de certificado de servidor «%s»: %s"
 
-#: libpq/be-secure-openssl.c:168
+#: libpq/be-secure-openssl.c:171
 #, c-format
 msgid "private key file \"%s\" cannot be reloaded because it requires a passphrase"
 msgstr "el archivo de clave privada \"%s\" no se puede volver a cargar porque requiere una contraseña"
 
-#: libpq/be-secure-openssl.c:173
+#: libpq/be-secure-openssl.c:176
 #, 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:182
+#: libpq/be-secure-openssl.c:185
 #, c-format
 msgid "check of private key failed: %s"
 msgstr "falló la revisión de la llave privada: %s"
 
 #. translator: first %s is a GUC option name, second %s is its value
-#: libpq/be-secure-openssl.c:195 libpq/be-secure-openssl.c:218
+#: libpq/be-secure-openssl.c:198 libpq/be-secure-openssl.c:221
 #, c-format
 msgid "\"%s\" setting \"%s\" not supported by this build"
 msgstr "el valor «%2$s» para la opción «%1$s» no está soportado en este servidor"
 
-#: libpq/be-secure-openssl.c:205
+#: libpq/be-secure-openssl.c:208
 #, 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:228
+#: libpq/be-secure-openssl.c:231
 #, 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:247
 #, c-format
 msgid "could not set SSL protocol version range"
 msgstr "no se pudo definir el rango de versión de protocolo SSL"
 
-#: libpq/be-secure-openssl.c:245
+#: libpq/be-secure-openssl.c:248
 #, c-format
 msgid "\"%s\" cannot be higher than \"%s\""
 msgstr "«%s» no puede ser más alto que «%s»"
 
-#: libpq/be-secure-openssl.c:282
+#: libpq/be-secure-openssl.c:285
 #, c-format
 msgid "could not set the cipher list (no valid ciphers available)"
 msgstr "no se pudo establecer la lista de cifrado (no hay cifradores disponibles)"
 
-#: libpq/be-secure-openssl.c:302
+#: libpq/be-secure-openssl.c:305
 #, 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:351
+#: libpq/be-secure-openssl.c:354
 #, 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:359
+#: libpq/be-secure-openssl.c:362
 #, c-format
 msgid "could not load SSL certificate revocation list directory \"%s\": %s"
 msgstr "no se pudo cargar el directorio de lista de revocación de certificados SSL «%s»: %s"
 
-#: libpq/be-secure-openssl.c:367
+#: libpq/be-secure-openssl.c:370
 #, c-format
 msgid "could not load SSL certificate revocation list file \"%s\" or directory \"%s\": %s"
 msgstr "no se pudo cargar el archivo de lista de revocación de certificados SSL «%s» o directorio «%s»: %s"
 
-#: libpq/be-secure-openssl.c:425
+#: libpq/be-secure-openssl.c:428
 #, c-format
 msgid "could not initialize SSL connection: SSL context not set up"
 msgstr "no se pudo inicializar la conexión SSL: el contexto SSL no está instalado"
 
-#: libpq/be-secure-openssl.c:436
+#: libpq/be-secure-openssl.c:439
 #, c-format
 msgid "could not initialize SSL connection: %s"
 msgstr "no se pudo inicializar la conexión SSL: %s"
 
-#: libpq/be-secure-openssl.c:444
+#: libpq/be-secure-openssl.c:447
 #, c-format
 msgid "could not set SSL socket: %s"
 msgstr "no se definir un socket SSL: %s"
 
-#: libpq/be-secure-openssl.c:499
+#: libpq/be-secure-openssl.c:502
 #, c-format
 msgid "could not accept SSL connection: %m"
 msgstr "no se pudo aceptar una conexión SSL: %m"
 
-#: libpq/be-secure-openssl.c:503 libpq/be-secure-openssl.c:556
+#: libpq/be-secure-openssl.c:506 libpq/be-secure-openssl.c:561
 #, c-format
 msgid "could not accept SSL connection: EOF detected"
 msgstr "no se pudo aceptar una conexión SSL: se detectó EOF"
 
-#: libpq/be-secure-openssl.c:542
+#: libpq/be-secure-openssl.c:545
 #, c-format
 msgid "could not accept SSL connection: %s"
 msgstr "no se pudo aceptar una conexión SSL: %s"
 
-#: libpq/be-secure-openssl.c:545
+#: libpq/be-secure-openssl.c:549
 #, c-format
 msgid "This may indicate that the client does not support any SSL protocol version between %s and %s."
 msgstr "Esto puede indicar que el cliente no soporta ninguna versión del protocolo SSL entre %s y %s."
 
-#: libpq/be-secure-openssl.c:561 libpq/be-secure-openssl.c:741
-#: libpq/be-secure-openssl.c:805
+#: libpq/be-secure-openssl.c:566 libpq/be-secure-openssl.c:746
+#: libpq/be-secure-openssl.c:810
 #, c-format
 msgid "unrecognized SSL error code: %d"
 msgstr "código de error SSL no reconocido: %d"
 
-#: libpq/be-secure-openssl.c:607
+#: libpq/be-secure-openssl.c:612
 #, c-format
 msgid "SSL certificate's common name contains embedded null"
 msgstr "el «common name» del certificado SSL contiene un carácter null"
 
-#: libpq/be-secure-openssl.c:647
+#: libpq/be-secure-openssl.c:652
 #, c-format
 msgid "SSL certificate's distinguished name contains embedded null"
 msgstr "el elemento de nombre distinguido en el certificado SSL contiene un carácter null"
 
-#: libpq/be-secure-openssl.c:730 libpq/be-secure-openssl.c:789
+#: libpq/be-secure-openssl.c:735 libpq/be-secure-openssl.c:794
 #, c-format
 msgid "SSL error: %s"
 msgstr "error de SSL: %s"
 
-#: libpq/be-secure-openssl.c:971
+#: libpq/be-secure-openssl.c:976
 #, c-format
 msgid "could not open DH parameters file \"%s\": %m"
 msgstr "no se pudo abrir el archivo de parámetros DH «%s»: %m"
 
-#: libpq/be-secure-openssl.c:983
+#: libpq/be-secure-openssl.c:988
 #, c-format
 msgid "could not load DH parameters file: %s"
 msgstr "no se pudo cargar el archivo de parámetros DH: %s"
 
-#: libpq/be-secure-openssl.c:993
+#: libpq/be-secure-openssl.c:998
 #, c-format
 msgid "invalid DH parameters: %s"
 msgstr "parámetros DH no válidos: %s"
 
-#: libpq/be-secure-openssl.c:1002
+#: libpq/be-secure-openssl.c:1007
 #, 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:1011
+#: libpq/be-secure-openssl.c:1016
 #, 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:1172
+#: libpq/be-secure-openssl.c:1152
+#, fuzzy, c-format
+#| msgid "certificate authentication failed for user \"%s\""
+msgid "Client certificate verification failed at depth %d: %s."
+msgstr "la autentificación por certificado falló para el usuario «%s»"
+
+#: libpq/be-secure-openssl.c:1189
+#, c-format
+msgid "Failed certificate data (unverified): subject \"%s\", serial number %s, issuer \"%s\"."
+msgstr ""
+
+#: libpq/be-secure-openssl.c:1190
+msgid "unknown"
+msgstr "desconocido"
+
+#: libpq/be-secure-openssl.c:1281
 #, c-format
 msgid "DH: could not load DH parameters"
 msgstr "DH: no se pudo cargar los parámetros DH"
 
-#: libpq/be-secure-openssl.c:1180
+#: libpq/be-secure-openssl.c:1289
 #, c-format
 msgid "DH: could not set DH parameters: %s"
 msgstr "DH: no se pudo definir los parámetros DH: %s"
 
-#: libpq/be-secure-openssl.c:1207
+#: libpq/be-secure-openssl.c:1316
 #, c-format
 msgid "ECDH: unrecognized curve name: %s"
 msgstr "ECDH: nombre de curva no reconocida: %s"
 
-#: libpq/be-secure-openssl.c:1216
+#: libpq/be-secure-openssl.c:1325
 #, c-format
 msgid "ECDH: could not create key"
 msgstr "ECDH: no se pudo crear la llave"
 
-#: libpq/be-secure-openssl.c:1244
+#: libpq/be-secure-openssl.c:1353
 msgid "no SSL error reported"
 msgstr "código de error SSL no reportado"
 
-#: libpq/be-secure-openssl.c:1248
+#: libpq/be-secure-openssl.c:1357
 #, c-format
 msgid "SSL error code %lu"
 msgstr "código de error SSL %lu"
 
-#: libpq/be-secure-openssl.c:1402
+#: libpq/be-secure-openssl.c:1516
 #, c-format
 msgid "could not create BIO"
 msgstr "no se pudo crear BIO"
 
-#: libpq/be-secure-openssl.c:1412
+#: libpq/be-secure-openssl.c:1526
 #, c-format
 msgid "could not get NID for ASN1_OBJECT object"
 msgstr "no se pudo obtener NID para objeto ASN1_OBJECT"
 
-#: libpq/be-secure-openssl.c:1420
+#: libpq/be-secure-openssl.c:1534
 #, c-format
 msgid "could not convert NID %d to an ASN1_OBJECT structure"
 msgstr "no se pudo convertir NID %d en una estructura ASN1_OBJECT"
 
-#: libpq/be-secure.c:209 libpq/be-secure.c:305
+#: libpq/be-secure.c:207 libpq/be-secure.c:303
 #, c-format
 msgid "terminating connection due to unexpected postmaster exit"
 msgstr "terminando la conexión debido al término inesperado de postmaster"
@@ -14790,588 +15193,583 @@ msgstr "El usuario «%s» no tiene una contraseña asignada."
 msgid "User \"%s\" has an expired password."
 msgstr "El usuario «%s» tiene contraseña expirada."
 
-#: libpq/crypt.c:181
+#: libpq/crypt.c:183
 #, 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:202 libpq/crypt.c:244 libpq/crypt.c:264
+#: libpq/crypt.c:204 libpq/crypt.c:246 libpq/crypt.c:266
 #, c-format
 msgid "Password does not match for user \"%s\"."
 msgstr "La contraseña no coincide para el usuario «%s»."
 
-#: libpq/crypt.c:283
+#: libpq/crypt.c:285
 #, c-format
 msgid "Password of user \"%s\" is in unrecognized format."
 msgstr "La contraseña del usuario \"%s\" está en un formato no reconocido."
 
-#: libpq/hba.c:209
+#: libpq/hba.c:234
 #, c-format
 msgid "authentication file token too long, skipping: \"%s\""
 msgstr "una palabra en el archivo de autentificación es demasiado larga, omitiendo: «%s»"
 
-#: libpq/hba.c:381
+#: libpq/hba.c:357
+#, c-format
+msgid "invalid regular expression \"%s\": %s"
+msgstr "la expresión regular «%s» no es válida: %s"
+
+#: libpq/hba.c:359 libpq/hba.c:688 libpq/hba.c:1272 libpq/hba.c:1292
+#: libpq/hba.c:1315 libpq/hba.c:1328 libpq/hba.c:1381 libpq/hba.c:1409
+#: libpq/hba.c:1417 libpq/hba.c:1429 libpq/hba.c:1450 libpq/hba.c:1463
+#: libpq/hba.c:1488 libpq/hba.c:1515 libpq/hba.c:1527 libpq/hba.c:1586
+#: libpq/hba.c:1606 libpq/hba.c:1620 libpq/hba.c:1640 libpq/hba.c:1651
+#: libpq/hba.c:1666 libpq/hba.c:1685 libpq/hba.c:1701 libpq/hba.c:1713
+#: libpq/hba.c:1750 libpq/hba.c:1791 libpq/hba.c:1804 libpq/hba.c:1826
+#: libpq/hba.c:1838 libpq/hba.c:1856 libpq/hba.c:1906 libpq/hba.c:1950
+#: libpq/hba.c:1961 libpq/hba.c:1977 libpq/hba.c:1994 libpq/hba.c:2005
+#: libpq/hba.c:2024 libpq/hba.c:2040 libpq/hba.c:2056 libpq/hba.c:2115
+#: libpq/hba.c:2132 libpq/hba.c:2145 libpq/hba.c:2157 libpq/hba.c:2176
+#: libpq/hba.c:2262 libpq/hba.c:2280 libpq/hba.c:2374 libpq/hba.c:2393
+#: libpq/hba.c:2422 libpq/hba.c:2435 libpq/hba.c:2458 libpq/hba.c:2480
+#: libpq/hba.c:2494 tsearch/ts_locale.c:243
 #, c-format
-msgid "could not open secondary authentication file \"@%s\" as \"%s\": %m"
-msgstr "no se pudo abrir el archivo secundario de autentificación «@%s» como «%s»: %m"
+msgid "line %d of configuration file \"%s\""
+msgstr "línea %d del archivo de configuración «%s»"
+
+#: libpq/hba.c:484
+#, fuzzy, c-format
+#| msgid "skipping missing configuration file \"%s\""
+msgid "skipping missing authentication file \"%s\""
+msgstr "omitiendo el archivo de configuración faltante «%s»"
+
+#: libpq/hba.c:636
+#, fuzzy, c-format
+#| msgid "could not open configuration file \"%s\": maximum nesting depth exceeded"
+msgid "could not open file \"%s\": maximum nesting depth exceeded"
+msgstr "no se pudo abrir el archivo de configuración «%s»: nivel de anidamiento máximo excedido"
 
-#: libpq/hba.c:832
+#: libpq/hba.c:1243
 #, c-format
 msgid "error enumerating network interfaces: %m"
 msgstr "error al enumerar interfaces de red: %m"
 
 #. translator: the second %s is a list of auth methods
-#: libpq/hba.c:859
+#: libpq/hba.c:1270
 #, c-format
 msgid "authentication option \"%s\" is only valid for authentication methods %s"
 msgstr "la opción de autentificación «%s» sólo es válida para los métodos de autentificación %s"
 
-#: libpq/hba.c:861 libpq/hba.c:881 libpq/hba.c:916 libpq/hba.c:967
-#: libpq/hba.c:981 libpq/hba.c:1005 libpq/hba.c:1013 libpq/hba.c:1025
-#: libpq/hba.c:1046 libpq/hba.c:1059 libpq/hba.c:1079 libpq/hba.c:1101
-#: libpq/hba.c:1113 libpq/hba.c:1172 libpq/hba.c:1192 libpq/hba.c:1206
-#: libpq/hba.c:1226 libpq/hba.c:1237 libpq/hba.c:1252 libpq/hba.c:1271
-#: libpq/hba.c:1287 libpq/hba.c:1299 libpq/hba.c:1336 libpq/hba.c:1377
-#: libpq/hba.c:1390 libpq/hba.c:1412 libpq/hba.c:1424 libpq/hba.c:1442
-#: libpq/hba.c:1492 libpq/hba.c:1536 libpq/hba.c:1547 libpq/hba.c:1563
-#: libpq/hba.c:1580 libpq/hba.c:1591 libpq/hba.c:1610 libpq/hba.c:1626
-#: libpq/hba.c:1642 libpq/hba.c:1700 libpq/hba.c:1717 libpq/hba.c:1730
-#: libpq/hba.c:1742 libpq/hba.c:1761 libpq/hba.c:1847 libpq/hba.c:1865
-#: libpq/hba.c:1959 libpq/hba.c:1978 libpq/hba.c:2007 libpq/hba.c:2020
-#: libpq/hba.c:2043 libpq/hba.c:2065 libpq/hba.c:2079 tsearch/ts_locale.c:232
-#, c-format
-msgid "line %d of configuration file \"%s\""
-msgstr "línea %d del archivo de configuración «%s»"
-
-#: libpq/hba.c:879
+#: libpq/hba.c:1290
 #, c-format
 msgid "authentication method \"%s\" requires argument \"%s\" to be set"
 msgstr "el método de autentificación «%s» requiere que el argumento «%s» esté definido"
 
-#: libpq/hba.c:903
-#, c-format
-msgid "missing entry in file \"%s\" at end of line %d"
+#: libpq/hba.c:1314
+#, fuzzy, c-format
+#| msgid "missing entry in file \"%s\" at end of line %d"
+msgid "missing entry at end of line"
 msgstr "falta una entrada en el archivo «%s» al final de la línea %d"
 
-#: libpq/hba.c:915
+#: libpq/hba.c:1327
 #, c-format
 msgid "multiple values in ident field"
 msgstr "múltiples valores en campo «ident»"
 
-#: libpq/hba.c:965
+#: libpq/hba.c:1379
 #, c-format
 msgid "multiple values specified for connection type"
 msgstr "múltiples valores especificados para tipo de conexión"
 
-#: libpq/hba.c:966
+#: libpq/hba.c:1380
 #, c-format
 msgid "Specify exactly one connection type per line."
 msgstr "Especifique exactamente un tipo de conexión por línea."
 
-#: libpq/hba.c:980
-#, c-format
-msgid "local connections are not supported by this build"
-msgstr "las conexiones locales no están soportadas en este servidor"
-
-#: libpq/hba.c:1003
+#: libpq/hba.c:1407
 #, c-format
 msgid "hostssl record cannot match because SSL is disabled"
 msgstr "el registro hostssl no puede coincidir porque SSL está deshabilitado"
 
-#: libpq/hba.c:1004
+#: libpq/hba.c:1408
 #, c-format
 msgid "Set ssl = on in postgresql.conf."
 msgstr "Defina «ssl = on» en postgresql.conf."
 
-#: libpq/hba.c:1012
+#: libpq/hba.c:1416
 #, c-format
 msgid "hostssl record cannot match because SSL is not supported by this build"
 msgstr "el registro hostssl no puede coincidir porque SSL no está soportado en esta instalación"
 
-#: libpq/hba.c:1024
+#: libpq/hba.c:1428
 #, c-format
 msgid "hostgssenc record cannot match because GSSAPI is not supported by this build"
 msgstr "el registro hostgssenc no puede coincidir porque GSSAPI no está soportado en esta instalación"
 
-#: libpq/hba.c:1044
+#: libpq/hba.c:1448
 #, c-format
 msgid "invalid connection type \"%s\""
 msgstr "tipo de conexión «%s» no válido"
 
-#: libpq/hba.c:1058
+#: libpq/hba.c:1462
 #, c-format
 msgid "end-of-line before database specification"
 msgstr "fin de línea antes de especificación de base de datos"
 
-#: libpq/hba.c:1078
+#: libpq/hba.c:1487
 #, c-format
 msgid "end-of-line before role specification"
 msgstr "fin de línea antes de especificación de rol"
 
-#: libpq/hba.c:1100
+#: libpq/hba.c:1514
 #, c-format
 msgid "end-of-line before IP address specification"
 msgstr "fin de línea antes de especificación de dirección IP"
 
-#: libpq/hba.c:1111
+#: libpq/hba.c:1525
 #, c-format
 msgid "multiple values specified for host address"
 msgstr "múltiples valores especificados para la dirección de anfitrión"
 
-#: libpq/hba.c:1112
+#: libpq/hba.c:1526
 #, c-format
 msgid "Specify one address range per line."
 msgstr "Especifique un rango de direcciones por línea."
 
-#: libpq/hba.c:1170
+#: libpq/hba.c:1584
 #, c-format
 msgid "invalid IP address \"%s\": %s"
 msgstr "dirección IP «%s» no válida: %s"
 
-#: libpq/hba.c:1190
+#: libpq/hba.c:1604
 #, c-format
 msgid "specifying both host name and CIDR mask is invalid: \"%s\""
 msgstr "especificar tanto el nombre de host como la máscara CIDR no es válido: «%s»"
 
-#: libpq/hba.c:1204
+#: libpq/hba.c:1618
 #, c-format
 msgid "invalid CIDR mask in address \"%s\""
 msgstr "máscara CIDR no válida en dirección «%s»"
 
-#: libpq/hba.c:1224
+#: libpq/hba.c:1638
 #, c-format
 msgid "end-of-line before netmask specification"
 msgstr "fin de línea antes de especificación de máscara de red"
 
-#: libpq/hba.c:1225
+#: libpq/hba.c:1639
 #, c-format
 msgid "Specify an address range in CIDR notation, or provide a separate netmask."
 msgstr "Especifique un rango de direcciones en notación CIDR, o provea una netmask separadamente."
 
-#: libpq/hba.c:1236
+#: libpq/hba.c:1650
 #, c-format
 msgid "multiple values specified for netmask"
 msgstr "múltiples valores especificados para la máscara de red"
 
-#: libpq/hba.c:1250
+#: libpq/hba.c:1664
 #, c-format
 msgid "invalid IP mask \"%s\": %s"
 msgstr "máscara IP «%s» no válida: %s"
 
-#: libpq/hba.c:1270
+#: libpq/hba.c:1684
 #, c-format
 msgid "IP address and mask do not match"
 msgstr "La dirección y máscara IP no coinciden"
 
-#: libpq/hba.c:1286
+#: libpq/hba.c:1700
 #, c-format
 msgid "end-of-line before authentication method"
 msgstr "fin de línea antes de especificación de método de autentificación"
 
-#: libpq/hba.c:1297
+#: libpq/hba.c:1711
 #, c-format
 msgid "multiple values specified for authentication type"
 msgstr "múltiples valores especificados para el tipo de autentificación"
 
-#: libpq/hba.c:1298
+#: libpq/hba.c:1712
 #, c-format
 msgid "Specify exactly one authentication type per line."
 msgstr "Especifique exactamente un tipo de autentificación por línea."
 
-#: libpq/hba.c:1375
+#: libpq/hba.c:1789
 #, c-format
 msgid "invalid authentication method \"%s\""
 msgstr "método de autentificación «%s» no válido"
 
-#: libpq/hba.c:1388
+#: libpq/hba.c:1802
 #, c-format
 msgid "invalid authentication method \"%s\": not supported by this build"
 msgstr "método de autentificación «%s» no válido: este servidor no lo soporta"
 
-#: libpq/hba.c:1411
+#: libpq/hba.c:1825
 #, c-format
 msgid "gssapi authentication is not supported on local sockets"
 msgstr "la autentificación gssapi no está soportada en conexiones locales"
 
-#: libpq/hba.c:1423
+#: libpq/hba.c:1837
 #, c-format
 msgid "peer authentication is only supported on local sockets"
 msgstr "la autentificación peer sólo está soportada en conexiones locales"
 
-#: libpq/hba.c:1441
+#: libpq/hba.c:1855
 #, c-format
 msgid "cert authentication is only supported on hostssl connections"
 msgstr "la autentificación cert sólo está soportada en conexiones hostssl"
 
-#: libpq/hba.c:1491
+#: libpq/hba.c:1905
 #, c-format
 msgid "authentication option not in name=value format: %s"
 msgstr "opción de autentificación en formato nombre=valor: %s"
 
-#: libpq/hba.c:1535
+#: libpq/hba.c:1949
 #, c-format
 msgid "cannot use ldapbasedn, ldapbinddn, ldapbindpasswd, ldapsearchattribute, ldapsearchfilter, or ldapurl together with ldapprefix"
 msgstr "no se puede usar ldapbasedn, ldapbinddn, ldapbindpasswd, ldapsearchattribute, ldapsearchfilter o ldapurl junto con ldapprefix"
 
-#: libpq/hba.c:1546
+#: libpq/hba.c:1960
 #, c-format
 msgid "authentication method \"ldap\" requires argument \"ldapbasedn\", \"ldapprefix\", or \"ldapsuffix\" to be set"
 msgstr "el método de autentificación «ldap» requiere que los argumento «ldapbasedn», «ldapprefix» o «ldapsuffix» estén definidos"
 
-#: libpq/hba.c:1562
+#: libpq/hba.c:1976
 #, c-format
 msgid "cannot use ldapsearchattribute together with ldapsearchfilter"
 msgstr "no se puede usar ldapsearchattribute junto con ldapsearchfilter"
 
-#: libpq/hba.c:1579
+#: libpq/hba.c:1993
 #, c-format
 msgid "list of RADIUS servers cannot be empty"
 msgstr "la lista de servidores RADIUS no puede ser vacía"
 
-#: libpq/hba.c:1590
+#: libpq/hba.c:2004
 #, c-format
 msgid "list of RADIUS secrets cannot be empty"
 msgstr "la lista de secretos RADIUS no puede ser vacía"
 
-#: libpq/hba.c:1607
+#: libpq/hba.c:2021
 #, c-format
 msgid "the number of RADIUS secrets (%d) must be 1 or the same as the number of RADIUS servers (%d)"
 msgstr "el número de secretos RADIUS (%d) debe ser 1 o igual al número de servidores RADIUS (%d)"
 
-#: libpq/hba.c:1623
+#: libpq/hba.c:2037
 #, c-format
 msgid "the number of RADIUS ports (%d) must be 1 or the same as the number of RADIUS servers (%d)"
 msgstr "el número de puertos RADIUS (%d) debe ser 1 o igual al número de servidores RADIUS (%d)"
 
-#: libpq/hba.c:1639
+#: libpq/hba.c:2053
 #, c-format
 msgid "the number of RADIUS identifiers (%d) must be 1 or the same as the number of RADIUS servers (%d)"
 msgstr "el número de identificadores RADIUS (%d) debe ser 1 o igual al número de servidores RADIUS (%d)"
 
-#: libpq/hba.c:1690
+#: libpq/hba.c:2105
 msgid "ident, peer, gssapi, sspi, and cert"
 msgstr "ident, peer, gssapi, sspi y cert"
 
-#: libpq/hba.c:1699
+#: libpq/hba.c:2114
 #, c-format
 msgid "clientcert can only be configured for \"hostssl\" rows"
 msgstr "clientcert sólo puede ser configurado en líneas «hostssl»"
 
-#: libpq/hba.c:1716
+#: libpq/hba.c:2131
 #, c-format
 msgid "clientcert only accepts \"verify-full\" when using \"cert\" authentication"
 msgstr "clientcert solo acepta «verify-full» cuando se emplea autentificación «cert»"
 
-#: libpq/hba.c:1729
+#: libpq/hba.c:2144
 #, c-format
 msgid "invalid value for clientcert: \"%s\""
 msgstr "valor no válido para el parámetro clientcert: «%s»"
 
-#: libpq/hba.c:1741
+#: libpq/hba.c:2156
 #, c-format
 msgid "clientname can only be configured for \"hostssl\" rows"
 msgstr "clientname solo puede ser configurado en líneas «hostssl»"
 
-#: libpq/hba.c:1760
+#: libpq/hba.c:2175
 #, c-format
 msgid "invalid value for clientname: \"%s\""
 msgstr "valor no válido para el parámetro clientname: «%s»"
 
-#: libpq/hba.c:1793
+#: libpq/hba.c:2208
 #, c-format
 msgid "could not parse LDAP URL \"%s\": %s"
 msgstr "no se pudo interpretar la URL LDAP «%s»: %s"
 
-#: libpq/hba.c:1804
+#: libpq/hba.c:2219
 #, c-format
 msgid "unsupported LDAP URL scheme: %s"
 msgstr "esquema de URL LDAP no soportado: %s"
 
-#: libpq/hba.c:1828
+#: libpq/hba.c:2243
 #, c-format
 msgid "LDAP URLs not supported on this platform"
 msgstr "las URLs LDAP no está soportado en esta plataforma"
 
-#: libpq/hba.c:1846
+#: libpq/hba.c:2261
 #, c-format
 msgid "invalid ldapscheme value: \"%s\""
 msgstr "valor ldapscheme no válido: «%s»"
 
-#: libpq/hba.c:1864
+#: libpq/hba.c:2279
 #, c-format
 msgid "invalid LDAP port number: \"%s\""
 msgstr "número de puerto LDAP no válido: «%s»"
 
-#: libpq/hba.c:1910 libpq/hba.c:1917
+#: libpq/hba.c:2325 libpq/hba.c:2332
 msgid "gssapi and sspi"
 msgstr "gssapi y sspi"
 
-#: libpq/hba.c:1926 libpq/hba.c:1935
+#: libpq/hba.c:2341 libpq/hba.c:2350
 msgid "sspi"
 msgstr "sspi"
 
-#: libpq/hba.c:1957
+#: libpq/hba.c:2372
 #, c-format
 msgid "could not parse RADIUS server list \"%s\""
 msgstr "no se pudo interpretar la lista de servidores RADIUS «%s»"
 
-#: libpq/hba.c:2005
+#: libpq/hba.c:2420
 #, c-format
 msgid "could not parse RADIUS port list \"%s\""
 msgstr "no se pudo interpretar la lista de port RADIUS «%s»"
 
-#: libpq/hba.c:2019
+#: libpq/hba.c:2434
 #, c-format
 msgid "invalid RADIUS port number: \"%s\""
 msgstr "número de puerto RADIUS no válido: «%s»"
 
-#: libpq/hba.c:2041
+#: libpq/hba.c:2456
 #, c-format
 msgid "could not parse RADIUS secret list \"%s\""
 msgstr "no se pudo interpretar la lista de secretos RADIUS «%s»"
 
-#: libpq/hba.c:2063
+#: libpq/hba.c:2478
 #, c-format
 msgid "could not parse RADIUS identifiers list \"%s\""
 msgstr "no se pudo interpretar la lista de identificadores RADIUS «%s»"
 
-#: libpq/hba.c:2077
+#: libpq/hba.c:2492
 #, c-format
 msgid "unrecognized authentication option name: \"%s\""
 msgstr "nombre de opción de autentificación desconocido: «%s»"
 
-#: libpq/hba.c:2223 utils/adt/hbafuncs.c:376 guc-file.l:631
-#, c-format
-msgid "could not open configuration file \"%s\": %m"
-msgstr "no se pudo abrir el archivo de configuración «%s»: %m"
-
-#: libpq/hba.c:2274
+#: libpq/hba.c:2684
 #, c-format
 msgid "configuration file \"%s\" contains no entries"
 msgstr "el archivo de configuración «%s» no contiene líneas"
 
-#: libpq/hba.c:2374
-#, c-format
-msgid "invalid regular expression \"%s\": %s"
-msgstr "la expresión regular «%s» no es válida: %s"
-
-#: libpq/hba.c:2437
+#: libpq/hba.c:2837
 #, c-format
 msgid "regular expression match for \"%s\" failed: %s"
 msgstr "la coincidencia de expresión regular para «%s» falló: %s"
 
-#: libpq/hba.c:2456
+#: libpq/hba.c:2861
 #, 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:2552
+#: libpq/hba.c:2964
 #, 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:2572
+#: libpq/hba.c:2984
 #, 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:2605 utils/adt/hbafuncs.c:512
-#, 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:204
+#: libpq/pqcomm.c:200
 #, 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:362
+#: libpq/pqcomm.c:361
 #, 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:383
+#: libpq/pqcomm.c:381
 #, 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:387
+#: libpq/pqcomm.c:385
 #, 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:414
+#: libpq/pqcomm.c:412
 #, 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:423
+#: libpq/pqcomm.c:421
 msgid "IPv4"
 msgstr "IPv4"
 
-#: libpq/pqcomm.c:427
+#: libpq/pqcomm.c:424
 msgid "IPv6"
 msgstr "IPv6"
 
-#: libpq/pqcomm.c:432
+#: libpq/pqcomm.c:427
 msgid "Unix"
 msgstr "Unix"
 
-#: libpq/pqcomm.c:437
+#: libpq/pqcomm.c:431
 #, c-format
 msgid "unrecognized address family %d"
 msgstr "la familia de direcciones %d no reconocida"
 
 #. translator: first %s is IPv4, IPv6, or Unix
-#: libpq/pqcomm.c:463
+#: libpq/pqcomm.c:455
 #, c-format
 msgid "could not create %s socket for address \"%s\": %m"
 msgstr "no se pudo crear el socket %s de escucha para la dirección «%s»: %m"
 
 #. translator: third %s is IPv4, IPv6, or Unix
-#: libpq/pqcomm.c:489 libpq/pqcomm.c:507
+#: libpq/pqcomm.c:481 libpq/pqcomm.c:499
 #, c-format
 msgid "%s(%s) failed for %s address \"%s\": %m"
 msgstr "%s(%s) falló para la dirección %s «%s»: %m"
 
 #. translator: first %s is IPv4, IPv6, or Unix
-#: libpq/pqcomm.c:530
+#: libpq/pqcomm.c:522
 #, c-format
 msgid "could not bind %s address \"%s\": %m"
 msgstr "no se pudo enlazar a la dirección %s «%s»: %m"
 
-#: libpq/pqcomm.c:534
+#: libpq/pqcomm.c:526
 #, c-format
 msgid "Is another postmaster already running on port %d?"
 msgstr "¿Hay otro postmaster en ejecución en el puerto %d?"
 
-#: libpq/pqcomm.c:536
+#: libpq/pqcomm.c:528
 #, c-format
 msgid "Is another postmaster already running on port %d? If not, wait a few seconds and retry."
 msgstr "¿Hay otro postmaster en ejecución en el puerto %d? Si no, aguarde unos segundos y reintente."
 
 #. translator: first %s is IPv4, IPv6, or Unix
-#: libpq/pqcomm.c:569
+#: libpq/pqcomm.c:557
 #, c-format
 msgid "could not listen on %s address \"%s\": %m"
 msgstr "no se pudo escuchar en la dirección %s «%s»: %m"
 
-#: libpq/pqcomm.c:578
+#: libpq/pqcomm.c:565
 #, 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:584
+#: libpq/pqcomm.c:570
 #, 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:659
 #, c-format
 msgid "group \"%s\" does not exist"
 msgstr "no existe el grupo «%s»"
 
-#: libpq/pqcomm.c:685
+#: libpq/pqcomm.c:669
 #, 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:680
 #, 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:708
 #, c-format
 msgid "could not accept new connection: %m"
 msgstr "no se pudo aceptar una nueva conexión: %m"
 
-#: libpq/pqcomm.c:766 libpq/pqcomm.c:775 libpq/pqcomm.c:807 libpq/pqcomm.c:817
-#: libpq/pqcomm.c:1642 libpq/pqcomm.c:1687 libpq/pqcomm.c:1727
-#: libpq/pqcomm.c:1771 libpq/pqcomm.c:1810 libpq/pqcomm.c:1849
-#: libpq/pqcomm.c:1885 libpq/pqcomm.c:1924
+#: libpq/pqcomm.c:748 libpq/pqcomm.c:757 libpq/pqcomm.c:789 libpq/pqcomm.c:799
+#: libpq/pqcomm.c:1624 libpq/pqcomm.c:1669 libpq/pqcomm.c:1709
+#: libpq/pqcomm.c:1753 libpq/pqcomm.c:1792 libpq/pqcomm.c:1831
+#: libpq/pqcomm.c:1867 libpq/pqcomm.c:1906
 #, c-format
 msgid "%s(%s) failed: %m"
 msgstr "%s(%s) falló: %m"
 
-#: libpq/pqcomm.c:921
+#: libpq/pqcomm.c:903
 #, c-format
 msgid "there is no client connection"
 msgstr "no hay conexión de cliente"
 
-#: libpq/pqcomm.c:972 libpq/pqcomm.c:1068
+#: libpq/pqcomm.c:954 libpq/pqcomm.c:1050
 #, c-format
 msgid "could not receive data from client: %m"
 msgstr "no se pudo recibir datos del cliente: %m"
 
-#: libpq/pqcomm.c:1173 tcop/postgres.c:4359
+#: libpq/pqcomm.c:1155 tcop/postgres.c:4403
 #, 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:1239
+#: libpq/pqcomm.c:1221
 #, c-format
 msgid "unexpected EOF within message length word"
 msgstr "EOF inesperado dentro de la palabra de tamaño del mensaje"
 
-#: libpq/pqcomm.c:1249
+#: libpq/pqcomm.c:1231
 #, c-format
 msgid "invalid message length"
 msgstr "el largo de mensaje no es válido"
 
-#: libpq/pqcomm.c:1271 libpq/pqcomm.c:1284
+#: libpq/pqcomm.c:1253 libpq/pqcomm.c:1266
 #, c-format
 msgid "incomplete message from client"
 msgstr "mensaje incompleto del cliente"
 
-#: libpq/pqcomm.c:1395
+#: libpq/pqcomm.c:1377
 #, c-format
 msgid "could not send data to client: %m"
 msgstr "no se pudo enviar datos al cliente: %m"
 
-#: libpq/pqcomm.c:1610
+#: libpq/pqcomm.c:1592
 #, c-format
 msgid "%s(%s) failed: error code %d"
 msgstr "%s(%s) falló: código de error %d"
 
-#: libpq/pqcomm.c:1699
+#: libpq/pqcomm.c:1681
 #, c-format
 msgid "setting the keepalive idle time is not supported"
 msgstr "establecer el tiempo de inactividad para keepalive no está soportado"
 
-#: libpq/pqcomm.c:1783 libpq/pqcomm.c:1858 libpq/pqcomm.c:1933
+#: libpq/pqcomm.c:1765 libpq/pqcomm.c:1840 libpq/pqcomm.c:1915
 #, c-format
 msgid "%s(%s) not supported"
 msgstr "%s(%s) no está soportado"
 
-#: libpq/pqformat.c:406
+#: libpq/pqformat.c:407
 #, c-format
 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:1482 utils/adt/rowtypes.c:588
+#: libpq/pqformat.c:518 libpq/pqformat.c:536 libpq/pqformat.c:557
+#: utils/adt/array_userfuncs.c:799 utils/adt/arrayfuncs.c:1506
+#: utils/adt/rowtypes.c:615
 #, c-format
 msgid "insufficient data left in message"
 msgstr "los datos restantes del mensaje son insuficientes"
 
-#: libpq/pqformat.c:597 libpq/pqformat.c:626
+#: libpq/pqformat.c:598 libpq/pqformat.c:627
 #, c-format
 msgid "invalid string in message"
 msgstr "cadena no válida en el mensaje"
 
-#: libpq/pqformat.c:642
+#: libpq/pqformat.c:643
 #, c-format
 msgid "invalid message format"
 msgstr "formato de mensaje no válido"
 
-#: main/main.c:239
+#: main/main.c:235
 #, c-format
 msgid "%s: WSAStartup failed: %d\n"
 msgstr "%s: WSAStartup falló: %d\n"
 
-#: main/main.c:350
+#: main/main.c:329
 #, c-format
 msgid ""
 "%s is the PostgreSQL server.\n"
@@ -15380,7 +15778,7 @@ msgstr ""
 "%s es el servidor PostgreSQL.\n"
 "\n"
 
-#: main/main.c:351
+#: main/main.c:330
 #, c-format
 msgid ""
 "Usage:\n"
@@ -15391,109 +15789,110 @@ msgstr ""
 "  %s [OPCION]...\n"
 "\n"
 
-#: main/main.c:352
+#: main/main.c:331
 #, c-format
 msgid "Options:\n"
 msgstr "Opciones:\n"
 
-#: main/main.c:353
+#: main/main.c:332
 #, 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:354
+#: main/main.c:333
 #, 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:355
+#: main/main.c:334
 #, 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:356
+#: main/main.c:335
 #, c-format
 msgid "  -d 1-5             debugging level\n"
 msgstr "  -d 1-5          nivel de depuración\n"
 
-#: main/main.c:357
+#: main/main.c:336
 #, c-format
 msgid "  -D DATADIR         database directory\n"
 msgstr "  -D DATADIR      directorio de bases de datos\n"
 
-#: main/main.c:358
+#: main/main.c:337
 #, c-format
 msgid "  -e                 use European date input format (DMY)\n"
 msgstr "  -e              usar estilo europeo de fechas (DMY)\n"
 
-#: main/main.c:359
+#: main/main.c:338
 #, c-format
 msgid "  -F                 turn fsync off\n"
 msgstr "  -F              desactivar fsync\n"
 
-#: main/main.c:360
+#: main/main.c:339
 #, c-format
 msgid "  -h HOSTNAME        host name or IP address to listen on\n"
 msgstr "  -h NOMBRE       nombre de host o dirección IP en que escuchar\n"
 
-#: main/main.c:361
-#, c-format
-msgid "  -i                 enable TCP/IP connections\n"
+#: main/main.c:340
+#, fuzzy, c-format
+#| msgid "  -i                 enable TCP/IP connections\n"
+msgid "  -i                 enable TCP/IP connections (deprecated)\n"
 msgstr "  -i              activar conexiones TCP/IP\n"
 
-#: main/main.c:362
+#: main/main.c:341
 #, c-format
 msgid "  -k DIRECTORY       Unix-domain socket location\n"
 msgstr "  -k DIRECTORIO   ubicación del socket Unix\n"
 
-#: main/main.c:364
+#: main/main.c:343
 #, c-format
 msgid "  -l                 enable SSL connections\n"
 msgstr "  -l              activar conexiones SSL\n"
 
-#: main/main.c:366
+#: main/main.c:345
 #, 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:367
+#: main/main.c:346
 #, 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:368
+#: main/main.c:347
 #, c-format
 msgid "  -s                 show statistics after each query\n"
 msgstr "  -s              mostrar estadísticas después de cada consulta\n"
 
-#: main/main.c:369
+#: main/main.c:348
 #, c-format
 msgid "  -S WORK-MEM        set amount of memory for sorts (in kB)\n"
 msgstr "  -S WORK-MEM     definir cantidad de memoria para ordenamientos (en kB)\n"
 
-#: main/main.c:370
+#: main/main.c:349
 #, 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:371
+#: main/main.c:350
 #, c-format
 msgid "  --NAME=VALUE       set run-time parameter\n"
 msgstr "  --NOMBRE=VALOR  definir parámetro de ejecución\n"
 
-#: main/main.c:372
+#: main/main.c:351
 #, 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:373
+#: main/main.c:352
 #, c-format
 msgid "  -?, --help         show this help, then exit\n"
 msgstr "  -?, --help      muestra esta ayuda, luego sale\n"
 
-#: main/main.c:375
+#: main/main.c:354
 #, c-format
 msgid ""
 "\n"
@@ -15502,45 +15901,40 @@ msgstr ""
 "\n"
 "Opciones de desarrollador:\n"
 
-#: main/main.c:376
-#, fuzzy, c-format
-#| msgid "  -f s|i|n|m|h       forbid use of some plan types\n"
-msgid "  -f s|i|o|b|t|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:377
+#: main/main.c:355
 #, 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"
+msgid "  -f s|i|o|b|t|n|m|h forbid use of some plan types\n"
+msgstr ""
 
-#: main/main.c:378
+#: main/main.c:356
 #, c-format
 msgid "  -O                 allow system table structure changes\n"
 msgstr "  -O              permitir cambios en estructura de tablas de sistema\n"
 
-#: main/main.c:379
+#: main/main.c:357
 #, c-format
 msgid "  -P                 disable system indexes\n"
 msgstr "  -P              desactivar índices de sistema\n"
 
-#: main/main.c:380
+#: main/main.c:358
 #, c-format
 msgid "  -t pa|pl|ex        show timings after each query\n"
 msgstr "  -t pa|pl|ex     mostrar tiempos después de cada consulta\n"
 
-#: main/main.c:381
-#, c-format
-msgid "  -T                 send SIGSTOP to all backend processes if one dies\n"
+#: main/main.c:359
+#, fuzzy, c-format
+#| msgid "  -T                 send SIGSTOP to all backend processes if one dies\n"
+msgid "  -T                 send SIGABRT 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:382
+#: main/main.c:360
 #, 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:384
+#: main/main.c:362
 #, c-format
 msgid ""
 "\n"
@@ -15549,37 +15943,37 @@ msgstr ""
 "\n"
 "Opciones para modo mono-usuario:\n"
 
-#: main/main.c:385
+#: main/main.c:363
 #, 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:386
+#: main/main.c:364
 #, 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:387
+#: main/main.c:365
 #, c-format
 msgid "  -d 0-5             override debugging level\n"
 msgstr "  -d 0-5          nivel de depuración\n"
 
-#: main/main.c:388
+#: main/main.c:366
 #, c-format
 msgid "  -E                 echo statement before execution\n"
 msgstr "  -E              mostrar las consultas antes de su ejecución\n"
 
-#: main/main.c:389
+#: main/main.c:367
 #, 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:390 main/main.c:396
+#: main/main.c:368 main/main.c:374
 #, c-format
 msgid "  -r FILENAME        send stdout and stderr to given file\n"
 msgstr "  -r ARCHIVO      enviar salida estándar y de error a ARCHIVO\n"
 
-#: main/main.c:392
+#: main/main.c:370
 #, c-format
 msgid ""
 "\n"
@@ -15588,23 +15982,23 @@ msgstr ""
 "\n"
 "Opciones para modo de inicio (bootstrapping):\n"
 
-#: main/main.c:393
+#: main/main.c:371
 #, 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:394
+#: main/main.c:372
 #, fuzzy, c-format
 #| msgid "  --single           selects single-user mode (must be first argument)\n"
 msgid "  --check            selects check mode (must be first argument)\n"
-msgstr "  --check        selecciona modo de verificación (debe ser el primer argumento)\n"
+msgstr "  --single        selecciona modo mono-usuario (debe ser el primer argumento)\n"
 
-#: main/main.c:395
+#: main/main.c:373
 #, 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:398
+#: main/main.c:376
 #, c-format
 msgid ""
 "\n"
@@ -15621,12 +16015,12 @@ msgstr ""
 "\n"
 "Reporte errores a <%s>.\n"
 
-#: main/main.c:402
+#: main/main.c:380
 #, c-format
 msgid "%s home page: <%s>\n"
 msgstr "Sitio web de %s: <%s>\n"
 
-#: main/main.c:413
+#: main/main.c:391
 #, c-format
 msgid ""
 "\"root\" execution of the PostgreSQL server is not permitted.\n"
@@ -15640,12 +16034,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:430
+#: main/main.c:408
 #, 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:437
+#: main/main.c:415
 #, c-format
 msgid ""
 "Execution of PostgreSQL by a user with administrative permissions is not\n"
@@ -15670,15 +16064,21 @@ msgstr "el tipo de nodo extensible «%s» ya existe"
 msgid "ExtensibleNodeMethods \"%s\" was not registered"
 msgstr "ExtensibleNodeMethods «%s» no fue registrado"
 
-#: nodes/makefuncs.c:150 statistics/extended_stats.c:2336
+#: nodes/makefuncs.c:153 statistics/extended_stats.c:2335
 #, c-format
 msgid "relation \"%s\" does not have a composite type"
 msgstr "la relación «%s» no tiene un tipo compuesto"
 
-#: nodes/nodeFuncs.c:114 nodes/nodeFuncs.c:145 parser/parse_coerce.c:2567
+#: nodes/makefuncs.c:878
+#, fuzzy, c-format
+#| msgid "unrecognized encoding: \"%s\""
+msgid "unrecognized JSON encoding: %s"
+msgstr "no se reconoce la codificación: «%s»"
+
+#: nodes/nodeFuncs.c:116 nodes/nodeFuncs.c:147 parser/parse_coerce.c:2567
 #: parser/parse_coerce.c:2705 parser/parse_coerce.c:2752
-#: parser/parse_expr.c:2023 parser/parse_func.c:710 parser/parse_oper.c:883
-#: utils/fmgr/funcapi.c:627
+#: parser/parse_expr.c:2042 parser/parse_func.c:710 parser/parse_oper.c:883
+#: utils/fmgr/funcapi.c:661
 #, c-format
 msgid "could not find array type for data type %s"
 msgstr "no se pudo encontrar un tipo de array para el tipo de dato %s"
@@ -15693,521 +16093,528 @@ msgstr "portal «%s» con parámetros: %s"
 msgid "unnamed portal with parameters: %s"
 msgstr "portal sin nombre con parámetros: %s"
 
-#: optimizer/path/joinrels.c:855
+#: optimizer/path/joinrels.c:865
 #, 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"
 
+#: optimizer/plan/createplan.c:7111 parser/parse_merge.c:182
+#: parser/parse_merge.c:189
+#, fuzzy, c-format
+#| msgid "cannot change relation \"%s\""
+msgid "cannot execute MERGE on relation \"%s\""
+msgstr "no se puede cambiar la relación «%s»"
+
 #. translator: %s is a SQL row locking clause such as FOR UPDATE
-#: optimizer/plan/initsplan.c:1192
+#: optimizer/plan/initsplan.c:1392
 #, 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:1341 parser/analyze.c:1714 parser/analyze.c:1970
-#: parser/analyze.c:3152
+#: optimizer/plan/planner.c:1359 parser/analyze.c:1723 parser/analyze.c:1980
+#: parser/analyze.c:3193
 #, c-format
 msgid "%s is not allowed with UNION/INTERSECT/EXCEPT"
 msgstr "%s no está permitido con UNION/INTERSECT/EXCEPT"
 
-#: optimizer/plan/planner.c:2048 optimizer/plan/planner.c:3705
+#: optimizer/plan/planner.c:2080 optimizer/plan/planner.c:4038
 #, c-format
 msgid "could not implement GROUP BY"
 msgstr "no se pudo implementar GROUP BY"
 
-#: optimizer/plan/planner.c:2049 optimizer/plan/planner.c:3706
-#: optimizer/plan/planner.c:4349 optimizer/prep/prepunion.c:1046
+#: optimizer/plan/planner.c:2081 optimizer/plan/planner.c:4039
+#: optimizer/plan/planner.c:4679 optimizer/prep/prepunion.c:1053
 #, 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."
 
-#: optimizer/plan/planner.c:4348
+#: optimizer/plan/planner.c:4678
 #, c-format
 msgid "could not implement DISTINCT"
 msgstr "no se pudo implementar DISTINCT"
 
-#: optimizer/plan/planner.c:5469
+#: optimizer/plan/planner.c:6017
 #, c-format
 msgid "could not implement window PARTITION BY"
 msgstr "No se pudo implementar PARTITION BY de ventana"
 
-#: optimizer/plan/planner.c:5470
+#: optimizer/plan/planner.c:6018
 #, 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:5474
+#: optimizer/plan/planner.c:6022
 #, c-format
 msgid "could not implement window ORDER BY"
 msgstr "no se pudo implementar ORDER BY de ventana"
 
-#: optimizer/plan/planner.c:5475
+#: optimizer/plan/planner.c:6023
 #, 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/prep/prepunion.c:509
+#: optimizer/prep/prepunion.c:516
 #, c-format
 msgid "could not implement recursive UNION"
 msgstr "no se pudo implementar UNION recursivo"
 
-#: optimizer/prep/prepunion.c:510
+#: optimizer/prep/prepunion.c:517
 #, 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:1045
+#: optimizer/prep/prepunion.c:1052
 #, c-format
 msgid "could not implement %s"
 msgstr "no se pudo implementar %s"
 
-#: optimizer/util/clauses.c:4777
+#: optimizer/util/clauses.c:4844
 #, c-format
 msgid "SQL function \"%s\" during inlining"
 msgstr "función SQL «%s», durante expansión en línea"
 
-#: optimizer/util/plancat.c:133
+#: optimizer/util/plancat.c:154
 #, 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:673
+#: optimizer/util/plancat.c:726
 #, 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:690
+#: optimizer/util/plancat.c:743
 #, 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:740
+#: optimizer/util/plancat.c:793
 #, 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:845
+#: optimizer/util/plancat.c:898
 #, 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:780 parser/analyze.c:1494
+#: parser/analyze.c:788 parser/analyze.c:1502
 #, 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:981
+#: parser/analyze.c:990
 #, c-format
 msgid "INSERT has more expressions than target columns"
 msgstr "INSERT tiene más expresiones que columnas de destino"
 
-#: parser/analyze.c:999
+#: parser/analyze.c:1008
 #, c-format
 msgid "INSERT has more target columns than expressions"
 msgstr "INSERT tiene más columnas de destino que expresiones"
 
-#: parser/analyze.c:1003
+#: parser/analyze.c:1012
 #, 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:1302 parser/analyze.c:1687
+#: parser/analyze.c:1309 parser/analyze.c:1696
 #, 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:1617 parser/analyze.c:3363
+#: parser/analyze.c:1625 parser/analyze.c:3425
 #, c-format
 msgid "%s cannot be applied to VALUES"
 msgstr "%s no puede ser aplicado a VALUES"
 
-#: parser/analyze.c:1853
+#: parser/analyze.c:1862
 #, c-format
 msgid "invalid UNION/INTERSECT/EXCEPT ORDER BY clause"
 msgstr "cláusula UNION/INTERSECT/EXCEPT ORDER BY no válida"
 
-#: parser/analyze.c:1854
+#: parser/analyze.c:1863
 #, 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:1855
+#: parser/analyze.c:1864
 #, 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:1960
+#: parser/analyze.c:1970
 #, 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:2032
+#: parser/analyze.c:2042
 #, 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:2119
+#: parser/analyze.c:2129
 #, 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:2523
+#: parser/analyze.c:2535
 #, c-format
 msgid "RETURNING must have at least one column"
 msgstr "RETURNING debe tener al menos una columna"
 
-#: parser/analyze.c:2626
+#: parser/analyze.c:2638
 #, c-format
 msgid "assignment source returned %d column"
 msgid_plural "assignment source returned %d columns"
 msgstr[0] "fuente de asignación retornó %d columna"
 msgstr[1] "fuente de asignación retornó %d columnas"
 
-#: parser/analyze.c:2687
+#: parser/analyze.c:2699
 #, c-format
 msgid "variable \"%s\" is of type %s but expression is of type %s"
 msgstr "la variable «%s» es de tipo %s pero la expresión es de tipo %s"
 
 #. translator: %s is a SQL keyword
-#: parser/analyze.c:2811 parser/analyze.c:2819
+#: parser/analyze.c:2824 parser/analyze.c:2832
 #, c-format
 msgid "cannot specify both %s and %s"
 msgstr "no se puede especificar %s junto con %s"
 
-#: parser/analyze.c:2839
+#: parser/analyze.c:2852
 #, 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:2847
+#: parser/analyze.c:2860
 #, c-format
 msgid "DECLARE CURSOR WITH HOLD ... %s is not supported"
 msgstr "DECLARE CURSOR WITH HOLD ... %s no está soportado"
 
-#: parser/analyze.c:2850
+#: parser/analyze.c:2863
 #, 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:2858
+#: parser/analyze.c:2871
 #, 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:2869
+#: parser/analyze.c:2882
 #, c-format
 msgid "DECLARE INSENSITIVE CURSOR ... %s is not valid"
 msgstr "DECLARE INSENSITIVE CURSOR ... %s no es válido"
 
-#: parser/analyze.c:2872
+#: parser/analyze.c:2885
 #, c-format
 msgid "Insensitive cursors must be READ ONLY."
 msgstr "Los cursores insensitivos deben ser READ ONLY."
 
-#: parser/analyze.c:2938
+#: parser/analyze.c:2979
 #, 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:2948
+#: parser/analyze.c:2989
 #, 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:2958
+#: parser/analyze.c:2999
 #, 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:2970
+#: parser/analyze.c:3011
 #, 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:3159
+#: parser/analyze.c:3200
 #, 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:3166
+#: parser/analyze.c:3207
 #, 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:3173
+#: parser/analyze.c:3214
 #, 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:3180
+#: parser/analyze.c:3221
 #, 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:3187
+#: parser/analyze.c:3228
 #, 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:3194
+#: parser/analyze.c:3235
 #, 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:3286
+#: parser/analyze.c:3334
 #, 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:3336
+#: parser/analyze.c:3398
 #, 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:3345
+#: parser/analyze.c:3407
 #, 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:3354
+#: parser/analyze.c:3416
 #, 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:3372
+#: parser/analyze.c:3434
 #, 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:3381
+#: parser/analyze.c:3443
 #, 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:3401
+#: parser/analyze.c:3463
 #, 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"
 
-#: parser/parse_agg.c:220 parser/parse_oper.c:227
+#: parser/parse_agg.c:221 parser/parse_oper.c:227
 #, c-format
 msgid "could not identify an ordering operator for type %s"
 msgstr "no se pudo identificar un operador de ordenamiento para el tipo %s"
 
-#: parser/parse_agg.c:222
+#: parser/parse_agg.c:223
 #, c-format
 msgid "Aggregates with DISTINCT must be able to sort their inputs."
 msgstr "Las funciones de agregación con DISTINCT deben ser capaces de ordenar sus valores de entrada."
 
-#: parser/parse_agg.c:257
+#: parser/parse_agg.c:258
 #, c-format
 msgid "GROUPING must have fewer than 32 arguments"
 msgstr "GROUPING debe tener menos de 32 argumentos"
 
-#: parser/parse_agg.c:360
+#: parser/parse_agg.c:361
 msgid "aggregate functions are not allowed in JOIN conditions"
 msgstr "no se permiten funciones de agregación en las condiciones de JOIN"
 
-#: parser/parse_agg.c:362
+#: parser/parse_agg.c:363
 msgid "grouping operations are not allowed in JOIN conditions"
 msgstr "no se permiten las operaciones «grouping» en condiciones JOIN"
 
-#: parser/parse_agg.c:374
+#: parser/parse_agg.c:375
 msgid "aggregate functions are not allowed in FROM clause of their own query level"
 msgstr "las funciones de agregación no están permitidas en la cláusula FROM de su mismo nivel de consulta"
 
-#: parser/parse_agg.c:376
+#: parser/parse_agg.c:377
 msgid "grouping operations are not allowed in FROM clause of their own query level"
 msgstr "las operaciones «grouping» no están permitidas en la cláusula FROM de su mismo nivel de consulta"
 
-#: parser/parse_agg.c:381
+#: parser/parse_agg.c:382
 msgid "aggregate functions are not allowed in functions in FROM"
 msgstr "no se permiten funciones de agregación en una función en FROM"
 
-#: parser/parse_agg.c:383
+#: parser/parse_agg.c:384
 msgid "grouping operations are not allowed in functions in FROM"
 msgstr "no se permiten operaciones «grouping» en funciones en FROM"
 
-#: parser/parse_agg.c:391
+#: parser/parse_agg.c:392
 msgid "aggregate functions are not allowed in policy expressions"
 msgstr "no se permiten funciones de agregación en expresiones de políticas"
 
-#: parser/parse_agg.c:393
+#: parser/parse_agg.c:394
 msgid "grouping operations are not allowed in policy expressions"
 msgstr "no se permiten operaciones «grouping» en expresiones de políticas"
 
-#: parser/parse_agg.c:410
+#: parser/parse_agg.c:411
 msgid "aggregate functions are not allowed in window RANGE"
 msgstr "no se permiten funciones de agregación en RANGE de ventana deslizante"
 
-#: parser/parse_agg.c:412
+#: parser/parse_agg.c:413
 msgid "grouping operations are not allowed in window RANGE"
 msgstr "no se permiten operaciones «grouping» en RANGE de ventana deslizante"
 
-#: parser/parse_agg.c:417
+#: parser/parse_agg.c:418
 msgid "aggregate functions are not allowed in window ROWS"
 msgstr "no se permiten funciones de agregación en ROWS de ventana deslizante"
 
-#: parser/parse_agg.c:419
+#: parser/parse_agg.c:420
 msgid "grouping operations are not allowed in window ROWS"
 msgstr "no se permiten operaciones «grouping» en ROWS de ventana deslizante"
 
-#: parser/parse_agg.c:424
+#: parser/parse_agg.c:425
 msgid "aggregate functions are not allowed in window GROUPS"
 msgstr "no se permiten funciones de agregación en GROUPS de ventana deslizante"
 
-#: parser/parse_agg.c:426
+#: parser/parse_agg.c:427
 msgid "grouping operations are not allowed in window GROUPS"
 msgstr "no se permiten operaciones «grouping» en GROUPS de ventana deslizante"
 
-#: parser/parse_agg.c:439
+#: parser/parse_agg.c:440
 #, fuzzy
 #| msgid "aggregate functions are not allowed in trigger WHEN conditions"
 msgid "aggregate functions are not allowed in MERGE WHEN conditions"
 msgstr "no se permiten funciones de agregación en condición WHEN de un disparador"
 
-#: parser/parse_agg.c:441
+#: parser/parse_agg.c:442
 #, fuzzy
 #| msgid "grouping operations are not allowed in trigger WHEN conditions"
 msgid "grouping operations are not allowed in MERGE WHEN conditions"
 msgstr "no se permiten operaciones «grouping» en condiciones WHEN de un disparador"
 
-#: parser/parse_agg.c:467
+#: parser/parse_agg.c:468
 msgid "aggregate functions are not allowed in check constraints"
 msgstr "no se permiten funciones de agregación en restricciones «check»"
 
-#: parser/parse_agg.c:469
+#: parser/parse_agg.c:470
 msgid "grouping operations are not allowed in check constraints"
 msgstr "no se permiten operaciones «grouping» en restricciones «check»"
 
-#: parser/parse_agg.c:476
+#: parser/parse_agg.c:477
 msgid "aggregate functions are not allowed in DEFAULT expressions"
 msgstr "no se permiten funciones de agregación en expresiones DEFAULT"
 
-#: parser/parse_agg.c:478
+#: parser/parse_agg.c:479
 msgid "grouping operations are not allowed in DEFAULT expressions"
 msgstr "no se permiten operaciones «grouping» en expresiones DEFAULT"
 
-#: parser/parse_agg.c:483
+#: parser/parse_agg.c:484
 msgid "aggregate functions are not allowed in index expressions"
 msgstr "no se permiten funciones de agregación en una expresión de índice"
 
-#: parser/parse_agg.c:485
+#: parser/parse_agg.c:486
 msgid "grouping operations are not allowed in index expressions"
 msgstr "no se permiten operaciones «grouping» en expresiones de índice"
 
-#: parser/parse_agg.c:490
+#: parser/parse_agg.c:491
 msgid "aggregate functions are not allowed in index predicates"
 msgstr "no se permiten funciones de agregación en predicados de índice"
 
-#: parser/parse_agg.c:492
+#: parser/parse_agg.c:493
 msgid "grouping operations are not allowed in index predicates"
 msgstr "no se permiten operaciones «grouping» en predicados de índice"
 
-#: parser/parse_agg.c:497
+#: parser/parse_agg.c:498
 msgid "aggregate functions are not allowed in statistics expressions"
 msgstr "no se permiten funciones de agregación en expresiones de estadísticas"
 
-#: parser/parse_agg.c:499
+#: parser/parse_agg.c:500
 msgid "grouping operations are not allowed in statistics expressions"
 msgstr "no se permiten operaciones «grouping» en expresiones de estadísticas"
 
-#: parser/parse_agg.c:504
+#: parser/parse_agg.c:505
 msgid "aggregate functions are not allowed in transform expressions"
 msgstr "no se permiten funciones de agregación en una expresión de transformación"
 
-#: parser/parse_agg.c:506
+#: parser/parse_agg.c:507
 msgid "grouping operations are not allowed in transform expressions"
 msgstr "no se permiten operaciones «grouping» en expresiones de transformación"
 
-#: parser/parse_agg.c:511
+#: parser/parse_agg.c:512
 msgid "aggregate functions are not allowed in EXECUTE parameters"
 msgstr "no se permiten funciones de agregación en un parámetro a EXECUTE"
 
-#: parser/parse_agg.c:513
+#: parser/parse_agg.c:514
 msgid "grouping operations are not allowed in EXECUTE parameters"
 msgstr "no se permiten operaciones «grouping» en parámetros a EXECUTE"
 
-#: parser/parse_agg.c:518
+#: parser/parse_agg.c:519
 msgid "aggregate functions are not allowed in trigger WHEN conditions"
 msgstr "no se permiten funciones de agregación en condición WHEN de un disparador"
 
-#: parser/parse_agg.c:520
+#: parser/parse_agg.c:521
 msgid "grouping operations are not allowed in trigger WHEN conditions"
 msgstr "no se permiten operaciones «grouping» en condiciones WHEN de un disparador"
 
-#: parser/parse_agg.c:525
+#: parser/parse_agg.c:526
 msgid "aggregate functions are not allowed in partition bound"
 msgstr "no se permiten funciones de agregación en borde de partición"
 
-#: parser/parse_agg.c:527
+#: parser/parse_agg.c:528
 msgid "grouping operations are not allowed in partition bound"
 msgstr "no se permiten operaciones «grouping» en borde de partición"
 
-#: parser/parse_agg.c:532
+#: parser/parse_agg.c:533
 msgid "aggregate functions are not allowed in partition key expressions"
 msgstr "no se permiten funciones de agregación en una expresión de llave de particionamiento"
 
-#: parser/parse_agg.c:534
+#: parser/parse_agg.c:535
 msgid "grouping operations are not allowed in partition key expressions"
 msgstr "no se permiten operaciones «grouping» en expresiones de llave de particionamiento"
 
-#: parser/parse_agg.c:540
+#: parser/parse_agg.c:541
 msgid "aggregate functions are not allowed in column generation expressions"
 msgstr "no se permiten funciones de agregación en expresiones de generación de columna"
 
-#: parser/parse_agg.c:542
+#: parser/parse_agg.c:543
 msgid "grouping operations are not allowed in column generation expressions"
 msgstr "no se permiten operaciones «grouping» en expresiones de generación de columna"
 
-#: parser/parse_agg.c:548
+#: parser/parse_agg.c:549
 msgid "aggregate functions are not allowed in CALL arguments"
 msgstr "no se permiten funciones de agregación en argumentos de CALL"
 
-#: parser/parse_agg.c:550
+#: parser/parse_agg.c:551
 msgid "grouping operations are not allowed in CALL arguments"
 msgstr "no se permiten operaciones «grouping» en argumentos de CALL"
 
-#: parser/parse_agg.c:556
+#: parser/parse_agg.c:557
 msgid "aggregate functions are not allowed in COPY FROM WHERE conditions"
 msgstr "no se permiten funciones de agregación en las condiciones WHERE de COPY FROM"
 
-#: parser/parse_agg.c:558
+#: parser/parse_agg.c:559
 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:585 parser/parse_clause.c:1834
+#: parser/parse_agg.c:586 parser/parse_clause.c:1955
 #, c-format
 msgid "aggregate functions are not allowed in %s"
 msgstr "no se permiten funciones de agregación en %s"
 
 #. translator: %s is name of a SQL construct, eg GROUP BY
-#: parser/parse_agg.c:588
+#: parser/parse_agg.c:589
 #, c-format
 msgid "grouping operations are not allowed in %s"
 msgstr "no se permiten operaciones «grouping» en %s"
 
-#: parser/parse_agg.c:689
+#: parser/parse_agg.c:690
 #, c-format
 msgid "outer-level aggregate cannot contain a lower-level variable in its direct arguments"
 msgstr "una función de agregación de nivel exterior no puede contener una variable de nivel inferior en sus argumentos directos"
@@ -16217,8 +16624,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:769 parser/parse_expr.c:1674 parser/parse_expr.c:2156
-#: parser/parse_func.c:883
+#: parser/parse_agg.c:769 parser/parse_expr.c:1693 parser/parse_expr.c:2175
+#: parser/parse_func.c:884
 #, c-format
 msgid "You might be able to move the set-returning function into a LATERAL FROM item."
 msgstr "Puede intentar mover la función que retorna conjuntos a un elemento LATERAL FROM."
@@ -16303,320 +16710,321 @@ 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:974 parser/parse_clause.c:1843
+#: parser/parse_agg.c:974 parser/parse_clause.c:1964
 #, c-format
 msgid "window functions are not allowed in %s"
 msgstr "no se permiten funciones de ventana deslizante en %s"
 
-#: parser/parse_agg.c:1008 parser/parse_clause.c:2676
+#: parser/parse_agg.c:1008 parser/parse_clause.c:2797
 #, c-format
 msgid "window \"%s\" does not exist"
 msgstr "la ventana «%s» no existe"
 
-#: parser/parse_agg.c:1092
+#: parser/parse_agg.c:1096
 #, c-format
 msgid "too many grouping sets present (maximum 4096)"
 msgstr "demasiados conjuntos «grouping» presentes (máximo 4096)"
 
-#: parser/parse_agg.c:1232
+#: parser/parse_agg.c:1236
 #, c-format
 msgid "aggregate functions are not allowed in a recursive query's recursive term"
 msgstr "no se permiten funciones de agregación en el término recursivo de una consulta recursiva"
 
-#: parser/parse_agg.c:1425
+#: parser/parse_agg.c:1429
 #, c-format
 msgid "column \"%s.%s\" must appear in the GROUP BY clause or be used in an aggregate function"
 msgstr "la columna «%s.%s» debe aparecer en la cláusula GROUP BY o ser usada en una función de agregación"
 
-#: parser/parse_agg.c:1428
+#: parser/parse_agg.c:1432
 #, c-format
 msgid "Direct arguments of an ordered-set aggregate must use only grouped columns."
 msgstr "Argumentos directos de una función de agregación de conjuntos ordenados debe usar sólo columnas agrupadas."
 
-#: parser/parse_agg.c:1433
+#: parser/parse_agg.c:1437
 #, c-format
 msgid "subquery uses ungrouped column \"%s.%s\" from outer query"
 msgstr "la subconsulta usa la columna «%s.%s» no agrupada de una consulta exterior"
 
-#: parser/parse_agg.c:1597
+#: parser/parse_agg.c:1601
 #, c-format
 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:190
+#: parser/parse_clause.c:195
 #, 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:570 parser/parse_clause.c:598 parser/parse_func.c:2554
+#: parser/parse_clause.c:571 parser/parse_clause.c:599 parser/parse_func.c:2552
 #, 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:610
+#: 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:643
+#: 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:644
+#: 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:650
+#: 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:651
+#: 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:658
+#: 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:659
+#: 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:759
+#: 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:820
+#: 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:862
+#: 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:872
+#: 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:932
+#: 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:954
+#: 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:988
+#: 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:1137
+#: parser/parse_clause.c:1138
 #, 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:1327
+#: parser/parse_clause.c:1325
 #, 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:1342
+#: parser/parse_clause.c:1340
 #, 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:1351
+#: parser/parse_clause.c:1349
 #, 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:1366
+#: parser/parse_clause.c:1364
 #, 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:1375
+#: parser/parse_clause.c:1373
 #, 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:1779
+#: parser/parse_clause.c:1900
 #, c-format
 msgid "row count cannot be null in FETCH FIRST ... WITH TIES clause"
 msgstr "la cantidad de registros no puede ser NULL en la cláusula FETCH FIRST ... WITH TIES"
 
 #. translator: %s is name of a SQL construct, eg LIMIT
-#: parser/parse_clause.c:1804
+#: parser/parse_clause.c:1925
 #, 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:1969
+#: parser/parse_clause.c:2090
 #, 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:1997
+#: parser/parse_clause.c:2118
 #, 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:2019
+#: parser/parse_clause.c:2140
 #, 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:2458
+#: parser/parse_clause.c:2579
 #, c-format
 msgid "CUBE is limited to 12 elements"
 msgstr "CUBE está limitado a 12 elementos"
 
-#: parser/parse_clause.c:2664
+#: parser/parse_clause.c:2785
 #, c-format
 msgid "window \"%s\" is already defined"
 msgstr "la ventana «%s» ya está definida"
 
-#: parser/parse_clause.c:2725
+#: parser/parse_clause.c:2846
 #, 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:2737
+#: parser/parse_clause.c:2858
 #, 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:2767 parser/parse_clause.c:2773
+#: parser/parse_clause.c:2888 parser/parse_clause.c:2894
 #, 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:2775
+#: parser/parse_clause.c:2896
 #, 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:2795
+#: parser/parse_clause.c:2916
 #, 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:2818
+#: parser/parse_clause.c:2939
 #, c-format
 msgid "GROUPS mode requires an ORDER BY clause"
 msgstr "el modo GROUPS requiere una cláusula ORDER BY"
 
-#: parser/parse_clause.c:2889
+#: parser/parse_clause.c:3010
 #, 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:2890
+#: parser/parse_clause.c:3011
 #, 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:2922
+#: parser/parse_clause.c:3043
 #, 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:2923
+#: parser/parse_clause.c:3044
 #, c-format
 msgid "SELECT DISTINCT must have at least one column"
 msgstr "SELECT DISTINCT debe tener al menos una columna"
 
-#: parser/parse_clause.c:2989 parser/parse_clause.c:3021
+#: parser/parse_clause.c:3110 parser/parse_clause.c:3142
 #, 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:3099
+#: parser/parse_clause.c:3220
 #, 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:3105
+#: parser/parse_clause.c:3226
 #, 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:3184
+#: parser/parse_clause.c:3305
 #, 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:3185
+#: parser/parse_clause.c:3306
 #, c-format
 msgid "For example, ON CONFLICT (column_name)."
 msgstr "Por ejemplo, ON CONFLICT (nombre_de_columna)."
 
-#: parser/parse_clause.c:3196
+#: parser/parse_clause.c:3317
 #, 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:3204
+#: parser/parse_clause.c:3325
 #, 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:3334
+#: parser/parse_clause.c:3456
 #, 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:3336
+#: parser/parse_clause.c:3458
 #, 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:3647
+#: parser/parse_clause.c:3769
 #, 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:3653
+#: parser/parse_clause.c:3775
 #, 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:3656
+#: parser/parse_clause.c:3778
 #, 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:3661
+#: parser/parse_clause.c:3783
 #, 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:3664
+#: parser/parse_clause.c:3786
 #, 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:1050 parser/parse_coerce.c:1088
 #: parser/parse_coerce.c:1106 parser/parse_coerce.c:1121
-#: parser/parse_expr.c:2057 parser/parse_expr.c:2659 parser/parse_target.c:994
+#: parser/parse_expr.c:2076 parser/parse_expr.c:2631 parser/parse_expr.c:3456
+#: parser/parse_target.c:985
 #, c-format
 msgid "cannot cast type %s to %s"
 msgstr "no se puede convertir el tipo %s a %s"
@@ -16675,19 +17083,19 @@ msgid "arguments declared \"%s\" are not all alike"
 msgstr "los argumentos declarados «%s» no son de tipos compatibles"
 
 #: parser/parse_coerce.c:2249 parser/parse_coerce.c:2362
-#: utils/fmgr/funcapi.c:558
+#: utils/fmgr/funcapi.c:592
 #, 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:2282 parser/parse_coerce.c:2432
-#: utils/fmgr/funcapi.c:572
+#: utils/fmgr/funcapi.c:606
 #, 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:2316 parser/parse_coerce.c:2396
-#: parser/parse_coerce.c:2529 utils/fmgr/funcapi.c:590 utils/fmgr/funcapi.c:655
+#: parser/parse_coerce.c:2529 utils/fmgr/funcapi.c:624 utils/fmgr/funcapi.c:689
 #, c-format
 msgid "argument declared %s is not a multirange type but type %s"
 msgstr "el argumento declarado %s no es un tipo de multirango sino tipo %s"
@@ -16813,381 +17221,441 @@ msgstr "la referencia recursiva a la consulta «%s» no debe aparecer dentro de
 
 #: parser/parse_cte.c:133
 #, fuzzy, c-format
-#| msgid "LIKE is not supported for creating foreign tables"
+#| msgid "\"EEEE\" not supported for input"
 msgid "MERGE not supported in WITH query"
-msgstr "LIKE no está soportado para la creación de tablas foráneas"
+msgstr "«EEEE» no está soportado en la entrada"
 
 #: parser/parse_cte.c:143
 #, c-format
 msgid "WITH query name \"%s\" specified more than once"
 msgstr "el nombre de consulta WITH «%s» fue especificado más de una vez"
 
-#: parser/parse_cte.c:275
+#: parser/parse_cte.c:314
+#, c-format
+msgid "could not identify an inequality operator for type %s"
+msgstr "no se pudo identificar un operador de desigualdad para el tipo %s"
+
+#: parser/parse_cte.c:341
 #, c-format
 msgid "WITH clause containing a data-modifying statement must be at the top level"
 msgstr "la cláusula WITH que contiene las sentencias que modifican datos debe estar en el nivel más externo"
 
-#: parser/parse_cte.c:324
+#: parser/parse_cte.c:390
 #, c-format
 msgid "recursive query \"%s\" column %d has type %s in non-recursive term but type %s overall"
 msgstr "la columna %2$d en la consulta recursiva «%1$s» tiene tipo %3$s en el término no recursivo, pero %4$s en general"
 
-#: parser/parse_cte.c:330
+#: parser/parse_cte.c:396
 #, c-format
 msgid "Cast the output of the non-recursive term to the correct type."
 msgstr "Aplique una conversión de tipo a la salida del término no recursivo al tipo correcto."
 
-#: parser/parse_cte.c:335
+#: parser/parse_cte.c:401
 #, c-format
 msgid "recursive query \"%s\" column %d has collation \"%s\" in non-recursive term but collation \"%s\" overall"
 msgstr "la columna %2$d en la consulta recursiva «%1$s» tiene ordenamiento (collation) %3$s en el término no recursivo, pero %4$s en general"
 
-#: parser/parse_cte.c:339
+#: parser/parse_cte.c:405
 #, c-format
 msgid "Use the COLLATE clause to set the collation of the non-recursive term."
 msgstr "Use la clásula COLLATE para definir el ordenamiento del término no-recursivo."
 
-#: parser/parse_cte.c:357
+#: parser/parse_cte.c:426
 #, c-format
 msgid "WITH query is not recursive"
 msgstr "la consulta WITH no es recursiva"
 
-#: parser/parse_cte.c:388
+#: parser/parse_cte.c:457
 #, c-format
 msgid "with a SEARCH or CYCLE clause, the left side of the UNION must be a SELECT"
 msgstr "con una cláusula SEARCH o CYCLE, el lado izquierdo de UNION debe ser un SELECT"
 
-#: parser/parse_cte.c:393
+#: parser/parse_cte.c:462
 #, c-format
 msgid "with a SEARCH or CYCLE clause, the right side of the UNION must be a SELECT"
 msgstr "con una cláusula SEARCH o CYCLE, el lado derecho de UNION debe ser un SELECT"
 
-#: parser/parse_cte.c:408
+#: parser/parse_cte.c:477
 #, c-format
 msgid "search column \"%s\" not in WITH query column list"
 msgstr "columna de búsqueda «%s» no se encuentra en la lista de columnas de la consulta WITH"
 
-#: parser/parse_cte.c:415
+#: parser/parse_cte.c:484
 #, c-format
 msgid "search column \"%s\" specified more than once"
 msgstr "columna de búsqueda «%s» fue especificada más de una vez"
 
-#: parser/parse_cte.c:424
+#: parser/parse_cte.c:493
 #, c-format
 msgid "search sequence column name \"%s\" already used in WITH query column list"
 msgstr "el nombre para la columna de secuencia de búsqueda «%s» ya ha sido utilizado en la lista de columnas de la consulta WITH"
 
-#: parser/parse_cte.c:443
+#: parser/parse_cte.c:510
 #, c-format
 msgid "cycle column \"%s\" not in WITH query column list"
 msgstr "la columna de ciclo «%s» no se encuentra en la lista de columnas de la consulta WITH"
 
-#: parser/parse_cte.c:450
+#: parser/parse_cte.c:517
 #, c-format
 msgid "cycle column \"%s\" specified more than once"
 msgstr "columna de ciclo «%s» fue especificada más de una vez"
 
-#: parser/parse_cte.c:459
+#: parser/parse_cte.c:526
 #, c-format
 msgid "cycle mark column name \"%s\" already used in WITH query column list"
 msgstr "el nombre para la columna de marca de ciclo «%s» ya ha sido utilizada en la lista de columnas de la consulta WITH"
 
-#: parser/parse_cte.c:471
+#: parser/parse_cte.c:533
 #, c-format
 msgid "cycle path column name \"%s\" already used in WITH query column list"
 msgstr "el nombre para la columna de ruta de ciclo «%s» ya ha sido utilizada en la lista de columnas de la consulta WITH"
 
-#: parser/parse_cte.c:479
+#: parser/parse_cte.c:541
 #, c-format
 msgid "cycle mark column name and cycle path column name are the same"
 msgstr "el nombre para la columna de marca de ciclo es igual que el nombre para la columna de ruta de ciclo"
 
-#: parser/parse_cte.c:515
-#, c-format
-msgid "could not identify an inequality operator for type %s"
-msgstr "no se pudo identificar un operador de desigualdad para el tipo %s"
-
-#: parser/parse_cte.c:527
+#: parser/parse_cte.c:551
 #, c-format
 msgid "search sequence column name and cycle mark column name are the same"
 msgstr "el nombre para la columna de secuencia de búsqueda es igual que el nombre para la columna de marca de ciclo"
 
-#: parser/parse_cte.c:534
+#: parser/parse_cte.c:558
 #, c-format
 msgid "search sequence column name and cycle path column name are the same"
 msgstr "el nombre para la columna de secuencia de búsqueda es igual que el nombre para la columna de ruta de ciclo"
 
-#: parser/parse_cte.c:618
+#: parser/parse_cte.c:642
 #, c-format
 msgid "WITH query \"%s\" has %d columns available but %d columns specified"
 msgstr "la consulta WITH «%s» tiene %d columnas disponibles pero se especificaron %d"
 
-#: parser/parse_cte.c:798
+#: parser/parse_cte.c:822
 #, c-format
 msgid "mutual recursion between WITH items is not implemented"
 msgstr "la recursión mutua entre elementos de WITH no está implementada"
 
-#: parser/parse_cte.c:850
+#: parser/parse_cte.c:874
 #, c-format
 msgid "recursive query \"%s\" must not contain data-modifying statements"
 msgstr "la consulta recursiva «%s» no debe contener sentencias que modifiquen datos"
 
-#: parser/parse_cte.c:858
+#: parser/parse_cte.c:882
 #, c-format
 msgid "recursive query \"%s\" does not have the form non-recursive-term UNION [ALL] recursive-term"
 msgstr "la consulta recursiva «%s» no tiene la forma término-no-recursivo UNION [ALL] término-recursivo"
 
-#: parser/parse_cte.c:902
+#: parser/parse_cte.c:926
 #, c-format
 msgid "ORDER BY in a recursive query is not implemented"
 msgstr "ORDER BY no está implementado en una consulta recursiva"
 
-#: parser/parse_cte.c:908
+#: parser/parse_cte.c:932
 #, c-format
 msgid "OFFSET in a recursive query is not implemented"
 msgstr "OFFSET no está implementado en una consulta recursiva"
 
-#: parser/parse_cte.c:914
+#: parser/parse_cte.c:938
 #, c-format
 msgid "LIMIT in a recursive query is not implemented"
 msgstr "LIMIT no está implementado en una consulta recursiva"
 
-#: parser/parse_cte.c:920
+#: parser/parse_cte.c:944
 #, c-format
 msgid "FOR UPDATE/SHARE in a recursive query is not implemented"
 msgstr "FOR UPDATE/SHARE no está implementado en una consulta recursiva"
 
-#: parser/parse_cte.c:977
+#: parser/parse_cte.c:1001
 #, c-format
 msgid "recursive reference to query \"%s\" must not appear more than once"
 msgstr "la referencia recursiva a la consulta «%s» no debe aparecer más de una vez"
 
-#: parser/parse_expr.c:282
+#: parser/parse_expr.c:287
 #, c-format
 msgid "DEFAULT is not allowed in this context"
 msgstr "DEFAULT no está permitido en este contexto"
 
-#: parser/parse_expr.c:335 parser/parse_relation.c:3654
-#: parser/parse_relation.c:3674
+#: parser/parse_expr.c:364 parser/parse_relation.c:3687
+#: parser/parse_relation.c:3697 parser/parse_relation.c:3715
+#: parser/parse_relation.c:3722 parser/parse_relation.c:3736
 #, c-format
 msgid "column %s.%s does not exist"
 msgstr "no existe la columna %s.%s"
 
-#: parser/parse_expr.c:347
+#: parser/parse_expr.c:376
 #, c-format
 msgid "column \"%s\" not found in data type %s"
 msgstr "la columna «%s» no fue encontrado en el tipo %s"
 
-#: parser/parse_expr.c:353
+#: parser/parse_expr.c:382
 #, c-format
 msgid "could not identify column \"%s\" in record data type"
 msgstr "no se pudo identificar la columna «%s» en el tipo de dato record"
 
-#: parser/parse_expr.c:359
+#: parser/parse_expr.c:388
 #, c-format
 msgid "column notation .%s applied to type %s, which is not a composite type"
 msgstr "la notación de columna .%s fue aplicada al tipo %s, que no es un tipo compuesto"
 
-#: parser/parse_expr.c:390 parser/parse_target.c:739
+#: parser/parse_expr.c:419 parser/parse_target.c:733
 #, c-format
 msgid "row expansion via \"*\" is not supported here"
 msgstr "la expansión de filas a través de «*» no está soportado aquí"
 
-#: parser/parse_expr.c:512
+#: parser/parse_expr.c:541
 msgid "cannot use column reference in DEFAULT expression"
 msgstr "no se pueden usar referencias a columnas en una cláusula DEFAULT"
 
-#: parser/parse_expr.c:515
+#: parser/parse_expr.c:544
 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:784 parser/parse_relation.c:818
-#: parser/parse_relation.c:900 parser/parse_target.c:1234
+#: parser/parse_expr.c:803 parser/parse_relation.c:833
+#: parser/parse_relation.c:915 parser/parse_target.c:1225
 #, c-format
 msgid "column reference \"%s\" is ambiguous"
 msgstr "la referencia a la columna «%s» es ambigua"
 
-#: parser/parse_expr.c:840 parser/parse_param.c:110 parser/parse_param.c:142
-#: parser/parse_param.c:208 parser/parse_param.c:307
+#: parser/parse_expr.c:859 parser/parse_param.c:110 parser/parse_param.c:142
+#: parser/parse_param.c:204 parser/parse_param.c:303
 #, c-format
 msgid "there is no parameter $%d"
 msgstr "no hay parámetro $%d"
 
-#: parser/parse_expr.c:1040
+#: parser/parse_expr.c:1059
 #, 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:1046 parser/parse_expr.c:2975
+#: parser/parse_expr.c:1065 parser/parse_expr.c:2947
 #, c-format
 msgid "%s must not return a set"
 msgstr "%s no debe retornar un conjunto"
 
-#: parser/parse_expr.c:1431 parser/parse_expr.c:1463
+#: parser/parse_expr.c:1450 parser/parse_expr.c:1482
 #, 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:1477
+#: parser/parse_expr.c:1496
 #, 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:1672 parser/parse_expr.c:2154 parser/parse_func.c:2679
+#: parser/parse_expr.c:1691 parser/parse_expr.c:2173 parser/parse_func.c:2677
 #, 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:1735
+#: parser/parse_expr.c:1754
 msgid "cannot use subquery in check constraint"
 msgstr "no se pueden usar subconsultas en una restricción «check»"
 
-#: parser/parse_expr.c:1739
+#: parser/parse_expr.c:1758
 msgid "cannot use subquery in DEFAULT expression"
 msgstr "no se puede usar una subconsulta en una expresión DEFAULT"
 
-#: parser/parse_expr.c:1742
+#: parser/parse_expr.c:1761
 msgid "cannot use subquery in index expression"
 msgstr "no se puede usar una subconsulta en una expresión de índice"
 
-#: parser/parse_expr.c:1745
+#: parser/parse_expr.c:1764
 msgid "cannot use subquery in index predicate"
 msgstr "no se puede usar una subconsulta en un predicado de índice"
 
-#: parser/parse_expr.c:1748
+#: parser/parse_expr.c:1767
 msgid "cannot use subquery in statistics expression"
 msgstr "no se puede usar una subconsulta en una expresión de estadísticas"
 
-#: parser/parse_expr.c:1751
+#: parser/parse_expr.c:1770
 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:1754
+#: parser/parse_expr.c:1773
 msgid "cannot use subquery in EXECUTE parameter"
 msgstr "no se puede usar una subconsulta en un parámetro a EXECUTE"
 
-#: parser/parse_expr.c:1757
+#: parser/parse_expr.c:1776
 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:1760
+#: parser/parse_expr.c:1779
 msgid "cannot use subquery in partition bound"
 msgstr "no se puede usar una subconsulta en un borde de partición"
 
-#: parser/parse_expr.c:1763
+#: parser/parse_expr.c:1782
 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:1766
+#: parser/parse_expr.c:1785
 msgid "cannot use subquery in CALL argument"
 msgstr "no se puede usar una subconsulta en un argumento a CALL"
 
-#: parser/parse_expr.c:1769
+#: parser/parse_expr.c:1788
 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:1772
+#: parser/parse_expr.c:1791
 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:1825
+#: parser/parse_expr.c:1844 parser/parse_expr.c:3572
 #, c-format
 msgid "subquery must return only one column"
 msgstr "la subconsulta debe retornar sólo una columna"
 
-#: parser/parse_expr.c:1896
+#: parser/parse_expr.c:1915
 #, c-format
 msgid "subquery has too many columns"
 msgstr "la subconsulta tiene demasiadas columnas"
 
-#: parser/parse_expr.c:1901
+#: parser/parse_expr.c:1920
 #, c-format
 msgid "subquery has too few columns"
 msgstr "la subconsulta tiene muy pocas columnas"
 
-#: parser/parse_expr.c:1997
+#: parser/parse_expr.c:2016
 #, 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:1998
+#: parser/parse_expr.c:2017
 #, 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:2012
+#: parser/parse_expr.c:2031
 #, 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:2095
+#: parser/parse_expr.c:2114
 #, fuzzy, c-format
 #| msgid "target lists can have at most %d entries"
 msgid "ROW expressions can have at most %d entries"
 msgstr "las listas de resultados pueden tener a lo más %d entradas"
 
-#: parser/parse_expr.c:2300
+#: parser/parse_expr.c:2266
 #, 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:2301
+#: parser/parse_expr.c:2267
 #, 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:2316
+#: parser/parse_expr.c:2282
 #, 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:2423
+#: parser/parse_expr.c:2390
 #, c-format
 msgid "cannot cast XMLSERIALIZE result to %s"
 msgstr "no se puede convertir el resultado de XMLSERIALIZE a %s"
 
-#: parser/parse_expr.c:2732 parser/parse_expr.c:2928
+#: parser/parse_expr.c:2704 parser/parse_expr.c:2900
 #, c-format
 msgid "unequal number of entries in row expressions"
 msgstr "número desigual de entradas en expresiones de registro"
 
-#: parser/parse_expr.c:2742
+#: parser/parse_expr.c:2714
 #, c-format
 msgid "cannot compare rows of zero length"
 msgstr "no se pueden comparar registros de largo cero"
 
-#: parser/parse_expr.c:2767
+#: parser/parse_expr.c:2739
 #, 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:2774
+#: parser/parse_expr.c:2746
 #, 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:2833 parser/parse_expr.c:2874
+#: parser/parse_expr.c:2805 parser/parse_expr.c:2846
 #, 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:2835
+#: parser/parse_expr.c:2807
 #, 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:2876
+#: parser/parse_expr.c:2848
 #, c-format
 msgid "There are multiple equally-plausible candidates."
 msgstr "Hay múltiples candidatos igualmente plausibles."
 
-#: parser/parse_expr.c:2969
+#: parser/parse_expr.c:2941
 #, 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:3194
+#, c-format
+msgid "JSON ENCODING clause is only allowed for bytea input type"
+msgstr ""
+
+#: parser/parse_expr.c:3201
+#, c-format
+msgid "FORMAT JSON has no effect for json and jsonb types"
+msgstr ""
+
+#: parser/parse_expr.c:3224
+#, c-format
+msgid "cannot use non-string types with implicit FORMAT JSON clause"
+msgstr ""
+
+#: parser/parse_expr.c:3294
+#, fuzzy, c-format
+#| msgid "cannot cast jsonb string to type %s"
+msgid "cannot use JSON format with non-string output types"
+msgstr "no se puede convertir un string jsonb a tipo %s"
+
+#: parser/parse_expr.c:3307
+#, c-format
+msgid "cannot set JSON encoding for non-bytea output types"
+msgstr ""
+
+#: parser/parse_expr.c:3312
+#, fuzzy, c-format
+#| msgid "unsupported format code: %d"
+msgid "unsupported JSON encoding"
+msgstr "código de formato no soportado: %d"
+
+#: parser/parse_expr.c:3313
+#, c-format
+msgid "Only UTF8 JSON encoding is supported."
+msgstr ""
+
+#: parser/parse_expr.c:3350
+#, fuzzy, c-format
+#| msgid "return type %s is not supported for SQL functions"
+msgid "returning SETOF types is not supported in SQL/JSON functions"
+msgstr "el tipo de retorno %s no es soportado en funciones SQL"
+
+#: parser/parse_expr.c:3651 parser/parse_func.c:865
+#, 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_expr.c:3870
+#, c-format
+msgid "cannot use JSON FORMAT ENCODING clause for non-bytea input types"
+msgstr ""
+
+#: parser/parse_expr.c:3890
+#, fuzzy, c-format
+#| msgid "cannot use subquery in index predicate"
+msgid "cannot use type %s in IS JSON predicate"
+msgstr "no se puede usar una subconsulta en un predicado de índice"
+
 #: parser/parse_func.c:194
 #, c-format
 msgid "argument name \"%s\" used more than once"
@@ -17198,7 +17666,7 @@ msgstr "nombre de argumento «%s» especificado más de una vez"
 msgid "positional argument cannot follow named argument"
 msgstr "un argumento posicional no puede seguir a un argumento con nombre"
 
-#: parser/parse_func.c:287 parser/parse_func.c:2369
+#: parser/parse_func.c:287 parser/parse_func.c:2367
 #, c-format
 msgid "%s is not a procedure"
 msgstr "%s no es un procedimiento"
@@ -17317,7 +17785,7 @@ msgstr "No se pudo escoger la función más adecuada. Puede ser necesario agrega
 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:622 parser/parse_func.c:2412
+#: parser/parse_func.c:622 parser/parse_func.c:2410
 #, c-format
 msgid "procedure %s does not exist"
 msgstr "no existe el procedimiento «%s»"
@@ -17337,195 +17805,190 @@ msgstr "Ninguna función coincide en el nombre y tipos de argumentos. Puede ser
 msgid "VARIADIC argument must be an array"
 msgstr "el parámetro VARIADIC debe ser un array"
 
-#: parser/parse_func.c:790 parser/parse_func.c:854
+#: parser/parse_func.c:791 parser/parse_func.c:855
 #, 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:797
+#: parser/parse_func.c:798
 #, c-format
 msgid "aggregates cannot return sets"
 msgstr "las funciones de agregación no pueden retornar conjuntos"
 
-#: parser/parse_func.c:812
+#: parser/parse_func.c:813
 #, c-format
 msgid "aggregates cannot use named arguments"
 msgstr "las funciones de agregación no pueden usar argumentos con nombre"
 
-#: parser/parse_func.c:844
+#: parser/parse_func.c:845
 #, c-format
 msgid "DISTINCT is not implemented for window functions"
 msgstr "DISTINCT no está implementado para funciones de ventana deslizante"
 
-#: parser/parse_func.c:864
-#, 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:873
+#: parser/parse_func.c:874
 #, 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:882
+#: parser/parse_func.c:883
 #, 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:890
+#: parser/parse_func.c:891
 #, c-format
 msgid "window functions cannot return sets"
 msgstr "las funciones de ventana deslizante no pueden retornar conjuntos"
 
-#: parser/parse_func.c:2168 parser/parse_func.c:2441
+#: parser/parse_func.c:2166 parser/parse_func.c:2439
 #, c-format
 msgid "could not find a function named \"%s\""
 msgstr "no se pudo encontrar una función llamada «%s»"
 
-#: parser/parse_func.c:2182 parser/parse_func.c:2459
+#: parser/parse_func.c:2180 parser/parse_func.c:2457
 #, c-format
 msgid "function name \"%s\" is not unique"
 msgstr "el nombre de función «%s» no es único"
 
-#: parser/parse_func.c:2184 parser/parse_func.c:2462
+#: parser/parse_func.c:2182 parser/parse_func.c:2460
 #, 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:2228
+#: parser/parse_func.c:2226
 #, 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:2359
+#: parser/parse_func.c:2357
 #, c-format
 msgid "%s is not a function"
 msgstr "«%s» no es una función"
 
-#: parser/parse_func.c:2379
+#: parser/parse_func.c:2377
 #, 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:2407
+#: parser/parse_func.c:2405
 #, c-format
 msgid "could not find a procedure named \"%s\""
 msgstr "no se pudo encontrar un procedimiento llamado «%s»"
 
-#: parser/parse_func.c:2421
+#: parser/parse_func.c:2419
 #, 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:2426
+#: parser/parse_func.c:2424
 #, c-format
 msgid "aggregate %s(*) does not exist"
 msgstr "no existe la función de agregación %s(*)"
 
-#: parser/parse_func.c:2431
+#: parser/parse_func.c:2429
 #, c-format
 msgid "aggregate %s does not exist"
 msgstr "no existe la función de agregación %s"
 
-#: parser/parse_func.c:2467
+#: parser/parse_func.c:2465
 #, c-format
 msgid "procedure name \"%s\" is not unique"
 msgstr "el nombre de procedimiento «%s» no es única"
 
-#: parser/parse_func.c:2470
+#: parser/parse_func.c:2468
 #, 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:2475
+#: parser/parse_func.c:2473
 #, 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:2478
+#: parser/parse_func.c:2476
 #, 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:2483
+#: parser/parse_func.c:2481
 #, c-format
 msgid "routine name \"%s\" is not unique"
 msgstr "el nombre de rutina «%s» no es único"
 
-#: parser/parse_func.c:2486
+#: parser/parse_func.c:2484
 #, 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:2541
+#: parser/parse_func.c:2539
 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:2562
+#: parser/parse_func.c:2560
 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:2578
+#: parser/parse_func.c:2576
 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:2615
+#: parser/parse_func.c:2613
 #, fuzzy
 #| msgid "set-returning functions are not allowed in trigger WHEN conditions"
 msgid "set-returning functions are not allowed in MERGE WHEN conditions"
 msgstr "no se permiten funciones que retornan conjuntos en condiciones WHEN de un disparador"
 
-#: parser/parse_func.c:2619
+#: parser/parse_func.c:2617
 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:2623
+#: parser/parse_func.c:2621
 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:2626
+#: parser/parse_func.c:2624
 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:2629
+#: parser/parse_func.c:2627
 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:2632
+#: parser/parse_func.c:2630
 msgid "set-returning functions are not allowed in statistics expressions"
 msgstr "no se permiten funciones que retornan conjuntos en expresiones de estadísticas"
 
-#: parser/parse_func.c:2635
+#: parser/parse_func.c:2633
 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:2638
+#: parser/parse_func.c:2636
 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:2641
+#: parser/parse_func.c:2639
 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:2644
+#: parser/parse_func.c:2642
 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:2647
+#: parser/parse_func.c:2645
 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:2650
+#: parser/parse_func.c:2648
 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:2653
+#: parser/parse_func.c:2651
 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:2656
+#: parser/parse_func.c:2654
 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"
 
@@ -17535,34 +17998,28 @@ msgstr "no se permiten funciones que retornan conjuntos en expresiones de genera
 msgid "WITH RECURSIVE is not supported for MERGE statement"
 msgstr "WHERE CURRENT OF no está soportado para este tipo de tabla"
 
-#: parser/parse_merge.c:163
+#: parser/parse_merge.c:161
 #, c-format
 msgid "unreachable WHEN clause specified after unconditional WHEN clause"
 msgstr "se especificó una cláusula WHEN no alcanzable después de una cláusula WHEN incondicional"
 
-#: parser/parse_merge.c:178 parser/parse_merge.c:184
-#, fuzzy, c-format
-#| msgid "cannot change relation \"%s\""
-msgid "cannot execute MERGE on relation \"%s\""
-msgstr "no se puede cambiar la relación «%s»"
-
-#: parser/parse_merge.c:186
+#: parser/parse_merge.c:191
 #, fuzzy, c-format
 #| msgid "LIKE is not supported for creating foreign tables"
 msgid "MERGE is not supported for relations with rules."
 msgstr "LIKE no está soportado para la creación de tablas foráneas"
 
-#: parser/parse_merge.c:203
+#: parser/parse_merge.c:208
 #, c-format
 msgid "name \"%s\" specified more than once"
 msgstr "el nombre «%s» fue especificado más de una vez"
 
-#: parser/parse_merge.c:205
+#: parser/parse_merge.c:210
 #, c-format
 msgid "The name is used both as MERGE target table and data source."
 msgstr "El nombre es usado tanto como tabla de destino de MERGE como como tabla de origen."
 
-#: parser/parse_node.c:86
+#: parser/parse_node.c:87
 #, c-format
 msgid "target lists can have at most %d entries"
 msgstr "las listas de resultados pueden tener a lo más %d entradas"
@@ -17572,8 +18029,8 @@ msgstr "las listas de resultados pueden tener a lo más %d entradas"
 msgid "postfix operators are not supported"
 msgstr "los operadores postfix no están soportados"
 
-#: parser/parse_oper.c:130 parser/parse_oper.c:649 utils/adt/regproc.c:539
-#: utils/adt/regproc.c:723
+#: parser/parse_oper.c:130 parser/parse_oper.c:649 utils/adt/regproc.c:509
+#: utils/adt/regproc.c:683
 #, c-format
 msgid "operator does not exist: %s"
 msgstr "el operador no existe: %s"
@@ -17628,208 +18085,235 @@ msgstr "op ANY/ALL (array) requiere un operador que entregue boolean"
 msgid "op ANY/ALL (array) requires operator not to return a set"
 msgstr "op ANY/ALL (array) requiere un operador que no retorne un conjunto"
 
-#: parser/parse_param.c:225
+#: parser/parse_param.c:221
 #, c-format
 msgid "inconsistent types deduced for parameter $%d"
 msgstr "para el parámetro $%d se dedujeron tipos de dato inconsistentes"
 
-#: parser/parse_param.c:313 tcop/postgres.c:709
+#: parser/parse_param.c:309 tcop/postgres.c:740
 #, c-format
 msgid "could not determine data type of parameter $%d"
 msgstr "no se pudo determinar el tipo del parámetro $%d"
 
-#: parser/parse_relation.c:201
+#: parser/parse_relation.c:221
 #, c-format
 msgid "table reference \"%s\" is ambiguous"
 msgstr "la referencia a la tabla «%s» es ambigua"
 
-#: parser/parse_relation.c:245
+#: parser/parse_relation.c:265
 #, c-format
 msgid "table reference %u is ambiguous"
 msgstr "la referencia a la tabla %u es ambigua"
 
-#: parser/parse_relation.c:445
+#: parser/parse_relation.c:465
 #, 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:474 parser/parse_relation.c:3594
+#: parser/parse_relation.c:494 parser/parse_relation.c:3629
+#: parser/parse_relation.c:3638
 #, 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:478 parser/parse_relation.c:3599
+#: parser/parse_relation.c:498 parser/parse_relation.c:3640
 #, 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:480
+#: parser/parse_relation.c:500
 #, 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:691
+#: parser/parse_relation.c:703
 #, 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:700
+#: parser/parse_relation.c:712
 #, 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:711
+#: parser/parse_relation.c:723
 #, fuzzy, c-format
 #| msgid "cannot use system column \"%s\" in partition key"
 msgid "cannot use system column \"%s\" in MERGE WHEN condition"
 msgstr "no se puede usar la columna de sistema «%s» en llave de particionamiento"
 
-#: parser/parse_relation.c:1184 parser/parse_relation.c:1636
-#: parser/parse_relation.c:2357
+#: parser/parse_relation.c:1236 parser/parse_relation.c:1690
+#: parser/parse_relation.c:2387
 #, 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:1388
+#: parser/parse_relation.c:1444
 #, 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:1390
+#: parser/parse_relation.c:1446
 #, 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:1778
+#: parser/parse_relation.c:1833
 #, c-format
 msgid "a column definition list is redundant for a function with OUT parameters"
 msgstr "una lista de definición de columnas es redundante para una función con parámetros OUT"
 
-#: parser/parse_relation.c:1784
+#: parser/parse_relation.c:1839
 #, c-format
 msgid "a column definition list is redundant for a function returning a named composite type"
 msgstr "una lista de definición de columnas es redundante para una función que retorna un tipo compuesto especificado"
 
-#: parser/parse_relation.c:1791
+#: parser/parse_relation.c:1846
 #, 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:1802
+#: parser/parse_relation.c:1857
 #, 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:1839
+#: parser/parse_relation.c:1894
 #, fuzzy, c-format
 #| msgid "target lists can have at most %d entries"
 msgid "column definition lists can have at most %d entries"
 msgstr "las listas de resultados pueden tener a lo más %d entradas"
 
-#: parser/parse_relation.c:1899
+#: parser/parse_relation.c:1954
 #, 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:1926 parser/parse_relation.c:2019
+#: parser/parse_relation.c:1981 parser/parse_relation.c:2067
 #, fuzzy, c-format
 #| msgid "joins can have at most %d columns"
 msgid "functions in FROM can return at most %d columns"
 msgstr "los joins pueden tener a lo más %d columnas"
 
-#: parser/parse_relation.c:2049
+#: parser/parse_relation.c:2097
 #, fuzzy, c-format
 #| msgid "table \"%s\" has %d columns available but %d columns specified"
 msgid "%s function has %d columns available but %d columns specified"
 msgstr "la tabla «%s» tiene %d columnas pero se especificaron %d"
 
-#: parser/parse_relation.c:2138
+#: parser/parse_relation.c:2179
 #, 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:2210
+#: parser/parse_relation.c:2245
 #, 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:2235
+#: parser/parse_relation.c:2270
 #, fuzzy, c-format
 #| msgid "table \"%s\" has %d columns available but %d columns specified"
 msgid "join expression \"%s\" has %d columns available but %d columns specified"
 msgstr "la tabla «%s» tiene %d columnas pero se especificaron %d"
 
-#: parser/parse_relation.c:2330
+#: parser/parse_relation.c:2360
 #, 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:3597
+#: parser/parse_relation.c:3631
 #, 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:3605
+#: parser/parse_relation.c:3643
+#, c-format
+msgid "To reference that table, you must mark this subquery with LATERAL."
+msgstr ""
+
+#: parser/parse_relation.c:3649
 #, 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:3657
+#: parser/parse_relation.c:3689
+#, fuzzy, c-format
+#| msgid "There is a column named \"%s\" in table \"%s\", but it cannot be referenced from this part of the query."
+msgid "There are columns named \"%s\", but they are in tables that 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:3691
 #, c-format
-msgid "Perhaps you meant to reference the column \"%s.%s\"."
-msgstr "Probablemente quiera hacer referencia a la columna «%s.%s»."
+msgid "Try using a table-qualified name."
+msgstr ""
 
-#: parser/parse_relation.c:3659
+#: parser/parse_relation.c:3699
 #, 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:3676
+#: parser/parse_relation.c:3702
+#, c-format
+msgid "To reference that column, you must mark this subquery with LATERAL."
+msgstr ""
+
+#: parser/parse_relation.c:3704
+#, c-format
+msgid "To reference that column, you must use a table-qualified name."
+msgstr ""
+
+#: parser/parse_relation.c:3724
+#, 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:3738
 #, 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:482 parser/parse_target.c:803
+#: parser/parse_target.c:481 parser/parse_target.c:796
 #, c-format
 msgid "cannot assign to system column \"%s\""
 msgstr "no se puede asignar a la columna de sistema «%s»"
 
-#: parser/parse_target.c:510
+#: parser/parse_target.c:509
 #, 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:515
+#: parser/parse_target.c:514
 #, c-format
 msgid "cannot set a subfield to DEFAULT"
 msgstr "no se puede definir un subcampo a DEFAULT"
 
-#: parser/parse_target.c:589
+#: parser/parse_target.c:588
 #, 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:787
+#: parser/parse_target.c:780
 #, 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:796
+#: parser/parse_target.c:789
 #, 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:877
+#: parser/parse_target.c:869
 #, c-format
 msgid "subscripted assignment to \"%s\" requires type %s but expression is of type %s"
 msgstr "la asignación subindexada a «%s» requiere tipo %s pero la expresión es de tipo %s"
 
-#: parser/parse_target.c:887
+#: parser/parse_target.c:879
 #, 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:1323
+#: parser/parse_target.c:1314
 #, c-format
 msgid "SELECT * with no tables specified is not valid"
 msgstr "SELECT * sin especificar tablas no es válido"
@@ -17849,7 +18333,7 @@ msgstr "la referencia a %%TYPE es inapropiada (demasiados nombres con punto): %s
 msgid "type reference %s converted to %s"
 msgstr "la referencia al tipo %s convertida a %s"
 
-#: parser/parse_type.c:278 parser/parse_type.c:807 utils/cache/typcache.c:390
+#: parser/parse_type.c:278 parser/parse_type.c:813 utils/cache/typcache.c:390
 #: utils/cache/typcache.c:445
 #, c-format
 msgid "type \"%s\" is only a shell"
@@ -17865,375 +18349,370 @@ msgstr "un modificador de tipo no está permitido para el tipo «%s»"
 msgid "type modifiers must be simple constants or identifiers"
 msgstr "los modificadores de tipo deben ser constantes simples o identificadores"
 
-#: parser/parse_type.c:725 parser/parse_type.c:770
+#: parser/parse_type.c:723 parser/parse_type.c:773
 #, c-format
 msgid "invalid type name \"%s\""
 msgstr "el nombre de tipo «%s» no es válido"
 
-#: parser/parse_utilcmd.c:266
+#: parser/parse_utilcmd.c:264
 #, c-format
 msgid "cannot create partitioned table as inheritance child"
 msgstr "no se puede crear una tabla particionada como hija de herencia"
 
-#: parser/parse_utilcmd.c:579
+#: parser/parse_utilcmd.c:580
 #, c-format
 msgid "array of serial is not implemented"
 msgstr "array de serial no está implementado"
 
-#: parser/parse_utilcmd.c:658 parser/parse_utilcmd.c:670
-#: parser/parse_utilcmd.c:729
+#: parser/parse_utilcmd.c:659 parser/parse_utilcmd.c:671
+#: parser/parse_utilcmd.c:730
 #, 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:682
+#: parser/parse_utilcmd.c:683
 #, 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:699
+#: parser/parse_utilcmd.c:700
 #, 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:703
+#: parser/parse_utilcmd.c:704
 #, c-format
 msgid "identity columns are not supported on partitions"
 msgstr "las columnas identidad no están soportadas en particiones"
 
-#: parser/parse_utilcmd.c:712
+#: parser/parse_utilcmd.c:713
 #, 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:742
+#: parser/parse_utilcmd.c:743
 #, 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:746
-#, c-format
-msgid "generated columns are not supported on partitions"
-msgstr "las columnas generadas no están soportadas en particiones"
-
-#: parser/parse_utilcmd.c:751
+#: parser/parse_utilcmd.c:747
 #, 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:769 parser/parse_utilcmd.c:884
+#: parser/parse_utilcmd.c:765 parser/parse_utilcmd.c:880
 #, 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:778 parser/parse_utilcmd.c:894
+#: parser/parse_utilcmd.c:774 parser/parse_utilcmd.c:890
 #, 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:823
+#: parser/parse_utilcmd.c:819
 #, 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:831
+#: parser/parse_utilcmd.c:827
 #, 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:839
+#: parser/parse_utilcmd.c:835
 #, 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:904
+#: parser/parse_utilcmd.c:900
 #, 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:910
+#: parser/parse_utilcmd.c:906
 #, 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:975
+#: parser/parse_utilcmd.c:971
 #, 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:988
+#: parser/parse_utilcmd.c:984
 #, fuzzy, c-format
 #| msgid "relation \"%s\" in %s clause not found in FROM clause"
 msgid "relation \"%s\" is invalid in LIKE clause"
 msgstr "la relación «%s» en la cláusula %s no fue encontrada en la cláusula FROM"
 
-#: parser/parse_utilcmd.c:1754 parser/parse_utilcmd.c:1862
+#: parser/parse_utilcmd.c:1741 parser/parse_utilcmd.c:1849
 #, 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:2251
+#: parser/parse_utilcmd.c:2236
 #, 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:2271
+#: parser/parse_utilcmd.c:2256
 #, 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:2286
+#: parser/parse_utilcmd.c:2271
 #, c-format
 msgid "index \"%s\" is not valid"
 msgstr "el índice «%s» no es válido"
 
-#: parser/parse_utilcmd.c:2292
+#: parser/parse_utilcmd.c:2277
 #, c-format
 msgid "\"%s\" is not a unique index"
 msgstr "«%s» no es un índice único"
 
-#: parser/parse_utilcmd.c:2293 parser/parse_utilcmd.c:2300
-#: parser/parse_utilcmd.c:2307 parser/parse_utilcmd.c:2384
+#: parser/parse_utilcmd.c:2278 parser/parse_utilcmd.c:2285
+#: parser/parse_utilcmd.c:2292 parser/parse_utilcmd.c:2369
 #, 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:2299
+#: parser/parse_utilcmd.c:2284
 #, c-format
 msgid "index \"%s\" contains expressions"
 msgstr "el índice «%s» contiene expresiones"
 
-#: parser/parse_utilcmd.c:2306
+#: parser/parse_utilcmd.c:2291
 #, c-format
 msgid "\"%s\" is a partial index"
 msgstr "«%s» es un índice parcial"
 
-#: parser/parse_utilcmd.c:2318
+#: parser/parse_utilcmd.c:2303
 #, c-format
 msgid "\"%s\" is a deferrable index"
 msgstr "«%s» no es un índice postergable (deferrable)"
 
-#: parser/parse_utilcmd.c:2319
+#: parser/parse_utilcmd.c:2304
 #, 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:2383
+#: parser/parse_utilcmd.c:2368
 #, 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:2540
+#: parser/parse_utilcmd.c:2525
 #, 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:2546
+#: parser/parse_utilcmd.c:2531
 #, 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:2893
+#: parser/parse_utilcmd.c:2878
 #, 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:2965
+#: parser/parse_utilcmd.c:2950
 #, c-format
 msgid "statistics expressions can refer only to the table being referenced"
 msgstr "las expresiones estadísticas sólo pueden referirse a la tabla que está siendo referida"
 
-#: parser/parse_utilcmd.c:3008
+#: parser/parse_utilcmd.c:2993
 #, c-format
 msgid "rules on materialized views are not supported"
 msgstr "las reglas en vistas materializadas no están soportadas"
 
-#: parser/parse_utilcmd.c:3071
+#: parser/parse_utilcmd.c:3053
 #, 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:3144
+#: parser/parse_utilcmd.c:3125
 #, 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:3162 parser/parse_utilcmd.c:3263
-#: rewrite/rewriteHandler.c:508 rewrite/rewriteManip.c:1018
+#: parser/parse_utilcmd.c:3143 parser/parse_utilcmd.c:3244
+#: rewrite/rewriteHandler.c:537 rewrite/rewriteManip.c:1082
 #, 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:3180
+#: parser/parse_utilcmd.c:3161
 #, c-format
 msgid "ON SELECT rule cannot use OLD"
 msgstr "una regla ON SELECT no puede usar OLD"
 
-#: parser/parse_utilcmd.c:3184
+#: parser/parse_utilcmd.c:3165
 #, c-format
 msgid "ON SELECT rule cannot use NEW"
 msgstr "una regla ON SELECT no puede usar NEW"
 
-#: parser/parse_utilcmd.c:3193
+#: parser/parse_utilcmd.c:3174
 #, c-format
 msgid "ON INSERT rule cannot use OLD"
 msgstr "una regla ON INSERT no puede usar OLD"
 
-#: parser/parse_utilcmd.c:3199
+#: parser/parse_utilcmd.c:3180
 #, c-format
 msgid "ON DELETE rule cannot use NEW"
 msgstr "una regla ON DELETE no puede usar NEW"
 
-#: parser/parse_utilcmd.c:3227
+#: parser/parse_utilcmd.c:3208
 #, 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:3234
+#: parser/parse_utilcmd.c:3215
 #, 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:3688
+#: parser/parse_utilcmd.c:3667
 #, c-format
 msgid "misplaced DEFERRABLE clause"
 msgstr "cláusula DEFERRABLE mal puesta"
 
-#: parser/parse_utilcmd.c:3693 parser/parse_utilcmd.c:3708
+#: parser/parse_utilcmd.c:3672 parser/parse_utilcmd.c:3687
 #, 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:3703
+#: parser/parse_utilcmd.c:3682
 #, c-format
 msgid "misplaced NOT DEFERRABLE clause"
 msgstr "la cláusula NOT DEFERRABLE está mal puesta"
 
-#: parser/parse_utilcmd.c:3716 parser/parse_utilcmd.c:3742 gram.y:5937
+#: parser/parse_utilcmd.c:3695 parser/parse_utilcmd.c:3721 gram.y:6011
 #, c-format
 msgid "constraint declared INITIALLY DEFERRED must be DEFERRABLE"
 msgstr "una restricción declarada INITIALLY DEFERRED debe ser DEFERRABLE"
 
-#: parser/parse_utilcmd.c:3724
+#: parser/parse_utilcmd.c:3703
 #, c-format
 msgid "misplaced INITIALLY DEFERRED clause"
 msgstr "la cláusula INITIALLY DEFERRED está mal puesta"
 
-#: parser/parse_utilcmd.c:3729 parser/parse_utilcmd.c:3755
+#: parser/parse_utilcmd.c:3708 parser/parse_utilcmd.c:3734
 #, 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:3750
+#: parser/parse_utilcmd.c:3729
 #, c-format
 msgid "misplaced INITIALLY IMMEDIATE clause"
 msgstr "la cláusula INITIALLY IMMEDIATE está mal puesta"
 
-#: parser/parse_utilcmd.c:3941
+#: parser/parse_utilcmd.c:3922
 #, 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:3976
+#: parser/parse_utilcmd.c:3957
 #, c-format
 msgid "\"%s\" is not a partitioned table"
 msgstr "«%s» no es una tabla particionada"
 
-#: parser/parse_utilcmd.c:3983
+#: parser/parse_utilcmd.c:3964
 #, c-format
 msgid "table \"%s\" is not partitioned"
 msgstr "«la tabla %s» no está particionada"
 
-#: parser/parse_utilcmd.c:3990
+#: parser/parse_utilcmd.c:3971
 #, c-format
 msgid "index \"%s\" is not partitioned"
 msgstr "el índice «%s» no está particionado"
 
-#: parser/parse_utilcmd.c:4030
+#: parser/parse_utilcmd.c:4011
 #, 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:4047
+#: parser/parse_utilcmd.c:4028
 #, 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:4053 partitioning/partbounds.c:4824
+#: parser/parse_utilcmd.c:4034 partitioning/partbounds.c:4803
 #, c-format
 msgid "modulus for hash partition must be an integer value greater than zero"
 msgstr "el módulo para una partición hash debe ser un valor entero mayor que cero"
 
-#: parser/parse_utilcmd.c:4060 partitioning/partbounds.c:4832
+#: parser/parse_utilcmd.c:4041 partitioning/partbounds.c:4811
 #, 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:4073
+#: parser/parse_utilcmd.c:4054
 #, 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:4126
+#: parser/parse_utilcmd.c:4107
 #, 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:4132
+#: parser/parse_utilcmd.c:4113
 #, 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:4136
+#: parser/parse_utilcmd.c:4117
 #, 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:4250
+#: parser/parse_utilcmd.c:4231
 #, c-format
 msgid "cannot specify NULL in range bound"
 msgstr "no se puede especificar NULL en borde de rango"
 
-#: parser/parse_utilcmd.c:4299
+#: parser/parse_utilcmd.c:4280
 #, 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:4306
+#: parser/parse_utilcmd.c:4287
 #, 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:4349
+#: parser/parse_utilcmd.c:4330
 #, 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/parser.c:247
+#: parser/parser.c:273
 msgid "UESCAPE must be followed by a simple string literal"
 msgstr "UESCAPE debe ser seguido por un literal de cadena simple"
 
-#: parser/parser.c:252
+#: parser/parser.c:278
 msgid "invalid Unicode escape character"
 msgstr "carácter de escape Unicode no válido"
 
-#: parser/parser.c:321 scan.l:1338
+#: parser/parser.c:347 scan.l:1390
 #, c-format
 msgid "invalid Unicode escape value"
 msgstr "valor de escape Unicode no válido"
 
-#: parser/parser.c:468 utils/adt/varlena.c:6529 scan.l:684
+#: parser/parser.c:494 utils/adt/varlena.c:6506 scan.l:701
 #, c-format
 msgid "invalid Unicode escape"
 msgstr "valor de escape Unicode no válido"
 
-#: parser/parser.c:469
+#: parser/parser.c:495
 #, c-format
 msgid "Unicode escapes must be \\XXXX or \\+XXXXXX."
 msgstr "Los escapes Unicode deben ser \\XXXX o \\+XXXXXX."
 
-#: parser/parser.c:497 utils/adt/varlena.c:6554 scan.l:645 scan.l:661
-#: scan.l:677
+#: parser/parser.c:523 utils/adt/varlena.c:6531 scan.l:662 scan.l:678
+#: scan.l:694
 #, c-format
 msgid "invalid Unicode surrogate pair"
 msgstr "par sustituto (surrogate) Unicode no válido"
@@ -18243,89 +18722,89 @@ msgstr "par sustituto (surrogate) Unicode no válido"
 msgid "identifier \"%s\" will be truncated to \"%.*s\""
 msgstr "el identificador «%s» se truncará a «%.*s»"
 
-#: partitioning/partbounds.c:2933
+#: partitioning/partbounds.c:2921
 #, 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:2985 partitioning/partbounds.c:3004
-#: partitioning/partbounds.c:3026
+#: partitioning/partbounds.c:2973 partitioning/partbounds.c:2992
+#: partitioning/partbounds.c:3014
 #, 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:2986 partitioning/partbounds.c:3027
+#: partitioning/partbounds.c:2974 partitioning/partbounds.c:3015
 #, c-format
 msgid "The new modulus %d is not a factor of %d, the modulus of existing partition \"%s\"."
 msgstr "El nuevo módulo %d no es un factor de %d, el módulo de la partición existente «%s»."
 
-#: partitioning/partbounds.c:3005
+#: partitioning/partbounds.c:2993
 #, c-format
 msgid "The new modulus %d is not divisible by %d, the modulus of existing partition \"%s\"."
 msgstr "El nuevo módulo %d no es divisible para %d, el módulo de la partición existente «%s»."
 
-#: partitioning/partbounds.c:3140
+#: partitioning/partbounds.c:3128
 #, c-format
 msgid "empty range bound specified for partition \"%s\""
 msgstr "borde de rango vació especificado para la partición «%s»"
 
-#: partitioning/partbounds.c:3142
+#: partitioning/partbounds.c:3130
 #, 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:3254
+#: partitioning/partbounds.c:3238
 #, c-format
 msgid "partition \"%s\" would overlap partition \"%s\""
 msgstr "la partición «%s» traslaparía con la partición «%s»"
 
-#: partitioning/partbounds.c:3371
+#: partitioning/partbounds.c:3355
 #, 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:4828
+#: partitioning/partbounds.c:4807
 #, c-format
 msgid "remainder for hash partition must be an integer value greater than or equal to zero"
 msgstr "remanente en partición hash debe ser un valor entero mayor que o igual a cero"
 
-#: partitioning/partbounds.c:4852
+#: partitioning/partbounds.c:4831
 #, c-format
 msgid "\"%s\" is not a hash partitioned table"
 msgstr "«%s» es una tabla particionada por hash"
 
-#: partitioning/partbounds.c:4863 partitioning/partbounds.c:4980
+#: partitioning/partbounds.c:4842 partitioning/partbounds.c:4959
 #, 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:4885
+#: partitioning/partbounds.c:4864
 #, 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»"
 
-#: partitioning/partbounds.c:4917
+#: partitioning/partbounds.c:4896
 #, 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:695 port/posix_sema.c:209
-#: port/sysv_sema.c:327 port/sysv_shmem.c:695
+#: port/pg_sema.c:209 port/pg_shmem.c:708 port/posix_sema.c:209
+#: port/sysv_sema.c:323 port/sysv_shmem.c:708
 #, 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:227 port/sysv_shmem.c:227
+#: port/pg_shmem.c:223 port/sysv_shmem.c:223
 #, c-format
 msgid "could not create shared memory segment: %m"
 msgstr "no se pudo crear el segmento de memoria compartida: %m"
 
-#: port/pg_shmem.c:228 port/sysv_shmem.c:228
+#: port/pg_shmem.c:224 port/sysv_shmem.c:224
 #, c-format
 msgid "Failed system call was shmget(key=%lu, size=%zu, 0%o)."
 msgstr "La llamada a sistema fallida fue shmget(key=%lu, size=%zu, 0%o)."
 
-#: port/pg_shmem.c:232 port/sysv_shmem.c:232
+#: port/pg_shmem.c:228 port/sysv_shmem.c:228
 #, c-format
 msgid ""
 "This error usually means that PostgreSQL's request for a shared memory segment exceeded your kernel's SHMMAX parameter, or possibly that it is less than your kernel's SHMMIN parameter.\n"
@@ -18334,7 +18813,7 @@ msgstr ""
 "Este error normalmente significa que la petición de un segmento de memoria compartida de PostgreSQL excedió el parámetro SHMMAX del kernel, o posiblemente que es menor que el parámetro SHMMIN del kernel.\n"
 "La documentación de PostgreSQL contiene más información acerca de la configuración de memoria compartida."
 
-#: port/pg_shmem.c:239 port/sysv_shmem.c:239
+#: port/pg_shmem.c:235 port/sysv_shmem.c:235
 #, c-format
 msgid ""
 "This error usually means that PostgreSQL's request for a shared memory segment exceeded your kernel's SHMALL parameter.  You might need to reconfigure the kernel with larger SHMALL.\n"
@@ -18343,7 +18822,7 @@ msgstr ""
 "Este error normalmente significa que la petición de un segmento de memoria compartida de PostgreSQL excedió el parámetro SHMALL del kernel.  Puede ser necesario reconfigurar el kernel con un SHMALL mayor.\n"
 "La documentación de PostgreSQL contiene más información acerca de la configuración de memoria compartida."
 
-#: port/pg_shmem.c:245 port/sysv_shmem.c:245
+#: port/pg_shmem.c:241 port/sysv_shmem.c:241
 #, c-format
 msgid ""
 "This error does *not* mean that you have run out of disk space.  It occurs either if all available shared memory IDs have been taken, in which case you need to raise the SHMMNI parameter in your kernel, or because the system's overall limit for shared memory has been reached.\n"
@@ -18352,47 +18831,52 @@ 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:633 port/sysv_shmem.c:633
+#: port/pg_shmem.c:583 port/sysv_shmem.c:583 port/win32_shmem.c:641
+#, c-format
+msgid "huge_page_size must be 0 on this platform."
+msgstr "huge_page_size debe ser 0 en esta plataforma."
+
+#: port/pg_shmem.c:646 port/sysv_shmem.c:646
 #, c-format
 msgid "could not map anonymous shared memory: %m"
 msgstr "no se pudo mapear memoria compartida anónima: %m"
 
-#: port/pg_shmem.c:635 port/sysv_shmem.c:635
+#: port/pg_shmem.c:648 port/sysv_shmem.c:648
 #, 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:703 port/sysv_shmem.c:703
+#: port/pg_shmem.c:716 port/sysv_shmem.c:716
 #, c-format
 msgid "huge pages not supported on this platform"
 msgstr "las huge pages no están soportadas en esta plataforma"
 
-#: port/pg_shmem.c:710 port/sysv_shmem.c:710
+#: port/pg_shmem.c:723 port/sysv_shmem.c:723
 #, c-format
 msgid "huge pages not supported with the current shared_memory_type setting"
 msgstr "las huge pages no están soportadas con la configuración actual de shared_memory_type"
 
-#: port/pg_shmem.c:770 port/sysv_shmem.c:770 utils/init/miscinit.c:1187
+#: port/pg_shmem.c:783 port/sysv_shmem.c:783 utils/init/miscinit.c:1351
 #, 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:773 port/sysv_shmem.c:773 utils/init/miscinit.c:1189
+#: port/pg_shmem.c:786 port/sysv_shmem.c:786 utils/init/miscinit.c:1353
 #, 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/sysv_sema.c:124
+#: port/sysv_sema.c:120
 #, c-format
 msgid "could not create semaphores: %m"
 msgstr "no se pudo crear semáforos: %m"
 
-#: port/sysv_sema.c:125
+#: port/sysv_sema.c:121
 #, 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:129
+#: port/sysv_sema.c:125
 #, 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"
@@ -18402,7 +18886,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:159
+#: port/sysv_sema.c:155
 #, 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."
@@ -18432,12 +18916,12 @@ msgstr "se escribió el volcado de caída en el archivo «%s».\n"
 msgid "could not write crash dump to file \"%s\": error code %lu\n"
 msgstr "no se pudo escribir el volcado de caída al archivo «%s»: código de error %lu\n"
 
-#: port/win32/signal.c:206
+#: port/win32/signal.c:240
 #, c-format
 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:261
+#: port/win32/signal.c:295
 #, 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"
@@ -18462,8 +18946,8 @@ msgstr "no se pudo desbloquear semáforo: código de error %lu"
 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"
 
-#: port/win32_shmem.c:144 port/win32_shmem.c:159 port/win32_shmem.c:171
-#: port/win32_shmem.c:187
+#: port/win32_shmem.c:146 port/win32_shmem.c:161 port/win32_shmem.c:173
+#: port/win32_shmem.c:189
 #, c-format
 msgid "could not enable user right \"%s\": error code %lu"
 msgstr "no se pudo habilitar el privilegio de usuario «%s»: código de error %lu"
@@ -18471,154 +18955,154 @@ msgstr "no se pudo habilitar el privilegio de usuario «%s»: código de error %
 #. translator: This is a term from Windows and should be translated to
 #. match the Windows localization.
 #.
-#: port/win32_shmem.c:150 port/win32_shmem.c:159 port/win32_shmem.c:171
-#: port/win32_shmem.c:182 port/win32_shmem.c:184 port/win32_shmem.c:187
+#: port/win32_shmem.c:152 port/win32_shmem.c:161 port/win32_shmem.c:173
+#: port/win32_shmem.c:184 port/win32_shmem.c:186 port/win32_shmem.c:189
 msgid "Lock pages in memory"
 msgstr "Bloquear páginas en la memoria"
 
-#: port/win32_shmem.c:152 port/win32_shmem.c:160 port/win32_shmem.c:172
-#: port/win32_shmem.c:188
+#: port/win32_shmem.c:154 port/win32_shmem.c:162 port/win32_shmem.c:174
+#: port/win32_shmem.c:190
 #, c-format
 msgid "Failed system call was %s."
 msgstr "La llamada a sistema fallida fue %s."
 
-#: port/win32_shmem.c:182
+#: port/win32_shmem.c:184
 #, c-format
 msgid "could not enable user right \"%s\""
 msgstr "no se pudo habilitar el privilegio de usuario «%s»"
 
-#: port/win32_shmem.c:183
+#: port/win32_shmem.c:185
 #, c-format
 msgid "Assign user right \"%s\" to the Windows user account which runs PostgreSQL."
 msgstr "Asigne el privilegio «%s» a la cuenta de usuario de Windows que ejecuta PostgreSQL."
 
-#: port/win32_shmem.c:241
+#: port/win32_shmem.c:244
 #, c-format
 msgid "the processor does not support large pages"
 msgstr "el procesador no soporta páginas grandes"
 
-#: port/win32_shmem.c:310 port/win32_shmem.c:346 port/win32_shmem.c:364
+#: port/win32_shmem.c:313 port/win32_shmem.c:349 port/win32_shmem.c:374
 #, c-format
 msgid "could not create shared memory segment: error code %lu"
 msgstr "no se pudo crear el segmento de memoria compartida: código de error %lu"
 
-#: port/win32_shmem.c:311
+#: port/win32_shmem.c:314
 #, c-format
 msgid "Failed system call was CreateFileMapping(size=%zu, name=%s)."
 msgstr "La llamada a sistema fallida fue CreateFileMapping(size=%zu, name=%s)."
 
-#: port/win32_shmem.c:336
+#: port/win32_shmem.c:339
 #, c-format
 msgid "pre-existing shared memory block is still in use"
 msgstr "el bloque de memoria compartida preexistente aún está en uso"
 
-#: port/win32_shmem.c:337
+#: port/win32_shmem.c:340
 #, c-format
 msgid "Check if there are any old server processes still running, and terminate them."
 msgstr "Verifique si hay procesos de servidor antiguos aún en funcionamiento, y termínelos."
 
-#: port/win32_shmem.c:347
+#: port/win32_shmem.c:350
 #, c-format
 msgid "Failed system call was DuplicateHandle."
 msgstr "La llamada a sistema fallida fue DuplicateHandle."
 
-#: port/win32_shmem.c:365
+#: port/win32_shmem.c:375
 #, c-format
 msgid "Failed system call was MapViewOfFileEx."
 msgstr "La llamada a sistema fallida fue MapViewOfFileEx."
 
-#: postmaster/autovacuum.c:404
+#: postmaster/autovacuum.c:417
 #, c-format
 msgid "could not fork autovacuum launcher process: %m"
 msgstr "no se pudo iniciar el lanzador autovacuum: %m"
 
-#: postmaster/autovacuum.c:752
+#: postmaster/autovacuum.c:764
 #, c-format
 msgid "autovacuum worker took too long to start; canceled"
 msgstr "proceso ayudante autovacuum tomó demasiado tiempo para iniciarse; cancelado"
 
-#: postmaster/autovacuum.c:1482
+#: postmaster/autovacuum.c:1489
 #, c-format
 msgid "could not fork autovacuum worker process: %m"
 msgstr "no se pudo lanzar el proceso «autovacuum worker»: %m"
 
-#: postmaster/autovacuum.c:2265
+#: postmaster/autovacuum.c:2322
 #, c-format
 msgid "autovacuum: dropping orphan temp table \"%s.%s.%s\""
 msgstr "autovacuum: eliminando tabla temporal huérfana «%s.%s.%s»"
 
-#: postmaster/autovacuum.c:2490
+#: postmaster/autovacuum.c:2558
 #, c-format
 msgid "automatic vacuum of table \"%s.%s.%s\""
 msgstr "vacuum automático de la tabla «%s.%s.%s»"
 
-#: postmaster/autovacuum.c:2493
+#: postmaster/autovacuum.c:2561
 #, c-format
 msgid "automatic analyze of table \"%s.%s.%s\""
 msgstr "análisis automático de la tabla «%s.%s.%s»"
 
-#: postmaster/autovacuum.c:2686
+#: postmaster/autovacuum.c:2755
 #, 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:3297
+#: postmaster/autovacuum.c:3369
 #, c-format
 msgid "autovacuum not started because of misconfiguration"
 msgstr "autovacuum no fue iniciado debido a un error de configuración"
 
-#: postmaster/autovacuum.c:3298
+#: postmaster/autovacuum.c:3370
 #, c-format
 msgid "Enable the \"track_counts\" option."
 msgstr "Active la opción «track_counts»."
 
-#: postmaster/bgworker.c:256
+#: postmaster/bgworker.c:259
 #, c-format
 msgid "inconsistent background worker state (max_worker_processes=%d, total_slots=%d)"
 msgstr "estado inconsistente de proceso ayudante (max_worker_processes=%d, total_slots=%d)"
 
-#: postmaster/bgworker.c:666
+#: postmaster/bgworker.c:669
 #, fuzzy, c-format
 #| msgid "background worker \"%s\": only dynamic background workers can request notification"
 msgid "background worker \"%s\": background workers without shared memory access are not supported"
 msgstr "proceso ayudante «%s»: sólo los ayudantes dinámicos pueden pedir notificaciones"
 
-#: postmaster/bgworker.c:677
+#: postmaster/bgworker.c:680
 #, 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:691
+#: postmaster/bgworker.c:694
 #, c-format
 msgid "background worker \"%s\": invalid restart interval"
 msgstr "proceso ayudante «%s»: intervalo de reinicio no válido"
 
-#: postmaster/bgworker.c:706
+#: postmaster/bgworker.c:709
 #, 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:730 tcop/postgres.c:3203
+#: postmaster/bgworker.c:733 tcop/postgres.c:3255
 #, 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:887
+#: postmaster/bgworker.c:890
 #, 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:899
+#: postmaster/bgworker.c:902
 #, 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:914
+#: postmaster/bgworker.c:917
 #, c-format
 msgid "too many background workers"
 msgstr "demasiados procesos ayudantes"
 
-#: postmaster/bgworker.c:915
+#: postmaster/bgworker.c:918
 #, 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."
@@ -18626,12 +19110,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:919
+#: postmaster/bgworker.c:922
 #, 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:432
+#: postmaster/checkpointer.c:431
 #, c-format
 msgid "checkpoints are occurring too frequently (%d second apart)"
 msgid_plural "checkpoints are occurring too frequently (%d seconds apart)"
@@ -18639,190 +19123,195 @@ 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:436
+#: postmaster/checkpointer.c:435
 #, 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:1060
+#: postmaster/checkpointer.c:1059
 #, c-format
 msgid "checkpoint request failed"
 msgstr "falló la petición de punto de control"
 
-#: postmaster/checkpointer.c:1061
+#: postmaster/checkpointer.c:1060
 #, 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/pgarch.c:429
-#, fuzzy, c-format
-#| msgid "archive_mode enabled, yet archive_command is not set"
+#: postmaster/pgarch.c:416
+#, c-format
 msgid "archive_mode enabled, yet archiving is not configured"
-msgstr "archive_mode activado, pero archive_command no está definido"
+msgstr ""
 
-#: postmaster/pgarch.c:451
+#: postmaster/pgarch.c:438
 #, c-format
 msgid "removed orphan archive status file \"%s\""
 msgstr "eliminando archivo de estado huérfano «%s»"
 
-#: postmaster/pgarch.c:461
+#: postmaster/pgarch.c:448
 #, 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:497
+#: postmaster/pgarch.c:484
 #, 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:791 postmaster/pgarch.c:830
+#, c-format
+msgid "both archive_command and archive_library set"
+msgstr ""
+
+#: postmaster/pgarch.c:792 postmaster/pgarch.c:831
+#, c-format
+msgid "Only one of archive_command, archive_library may be set."
+msgstr ""
+
 #: postmaster/pgarch.c:809
 #, c-format
 msgid "restarting archiver process because value of \"archive_library\" was changed"
 msgstr "reiniciando el proceso archivador porque el valor de «archive_library» cambió"
 
-#: postmaster/pgarch.c:842
-#, fuzzy, c-format
-#| msgid "archive modules have to declare the _PG_archive_module_init symbol"
+#: postmaster/pgarch.c:846
+#, c-format
 msgid "archive modules have to define the symbol %s"
-msgstr "los módulos de archivado deben declarar el símbolo _PG_archive_module_init"
+msgstr ""
 
-#: postmaster/pgarch.c:848
+#: postmaster/pgarch.c:852
 #, c-format
 msgid "archive modules must register an archive callback"
 msgstr "los módulos de archivado deben registrar un callback de archivado"
 
-#: postmaster/postmaster.c:744
+#: postmaster/postmaster.c:759
 #, 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:823
+#: postmaster/postmaster.c:832
 #, 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:874
+#: postmaster/postmaster.c:855
 #, c-format
 msgid "%s: invalid argument: \"%s\"\n"
 msgstr "%s: argumento no válido: «%s»\n"
 
-#: postmaster/postmaster.c:942
-#, c-format
-msgid "%s: superuser_reserved_connections (%d) must be less than max_connections (%d)\n"
+#: postmaster/postmaster.c:923
+#, fuzzy, c-format
+#| msgid "%s: superuser_reserved_connections (%d) must be less than max_connections (%d)\n"
+msgid "%s: superuser_reserved_connections (%d) plus 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:949
+#: postmaster/postmaster.c:931
 #, 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:952
+#: postmaster/postmaster.c:934
 #, 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:960
+#: postmaster/postmaster.c:942
 #, 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:1113
+#: postmaster/postmaster.c:1099
 #, 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:1178
+#: postmaster/postmaster.c:1164
 #, c-format
 msgid "ending log output to stderr"
 msgstr "terminando la salida de registro a stderr"
 
-#: postmaster/postmaster.c:1179
+#: postmaster/postmaster.c:1165
 #, 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:1190
+#: postmaster/postmaster.c:1176
 #, c-format
 msgid "starting %s"
 msgstr "iniciando %s"
 
-#: postmaster/postmaster.c:1219 postmaster/postmaster.c:1318
-#: utils/init/miscinit.c:1651
-#, 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:1250
+#: postmaster/postmaster.c:1236
 #, c-format
 msgid "could not create listen socket for \"%s\""
 msgstr "no se pudo crear el socket de escucha para «%s»"
 
-#: postmaster/postmaster.c:1256
+#: postmaster/postmaster.c:1242
 #, c-format
 msgid "could not create any TCP/IP sockets"
 msgstr "no se pudo crear ningún socket TCP/IP"
 
-#: postmaster/postmaster.c:1288
+#: postmaster/postmaster.c:1274
 #, c-format
 msgid "DNSServiceRegister() failed: error code %ld"
 msgstr "DNSServiceRegister() falló: código de error %ld"
 
-#: postmaster/postmaster.c:1340
+#: postmaster/postmaster.c:1325
 #, 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:1346
+#: postmaster/postmaster.c:1331
 #, c-format
 msgid "could not create any Unix-domain sockets"
 msgstr "no se pudo crear ningún socket de dominio Unix"
 
-#: postmaster/postmaster.c:1358
+#: postmaster/postmaster.c:1342
 #, c-format
 msgid "no socket created for listening"
 msgstr "no se creó el socket de atención"
 
-#: postmaster/postmaster.c:1389
+#: postmaster/postmaster.c:1373
 #, 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:1393
+#: postmaster/postmaster.c:1377
 #, 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:1420 utils/init/postinit.c:220
-#, c-format
-msgid "could not load pg_hba.conf"
-msgstr "no se pudo cargar pg_hba.conf"
+#. translator: %s is a configuration file
+#: postmaster/postmaster.c:1405 utils/init/postinit.c:221
+#, fuzzy, c-format
+#| msgid "could not load locale \"%s\""
+msgid "could not load %s"
+msgstr "no se pudo cargar la configuración regional «%s»"
 
-#: postmaster/postmaster.c:1446
+#: postmaster/postmaster.c:1431
 #, c-format
 msgid "postmaster became multithreaded during startup"
 msgstr "postmaster se volvió multi-hilo durante la partida"
 
-#: postmaster/postmaster.c:1447
+#: postmaster/postmaster.c:1432
 #, 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:1548
+#: postmaster/postmaster.c:1533
 #, c-format
 msgid "%s: could not locate my own executable path"
 msgstr "%s: no se pudo localizar la ruta de mi propio ejecutable"
 
-#: postmaster/postmaster.c:1555
+#: postmaster/postmaster.c:1540
 #, c-format
 msgid "%s: could not locate matching postgres executable"
 msgstr "%s: no se pudo localizar el ejecutable postgres correspondiente"
 
-#: postmaster/postmaster.c:1578 utils/misc/tzparser.c:340
+#: postmaster/postmaster.c:1563 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:1605
+#: postmaster/postmaster.c:1590
 #, c-format
 msgid ""
 "%s: could not find the database system\n"
@@ -18833,507 +19322,466 @@ msgstr ""
 "Se esperaba encontrar en el directorio PGDATA «%s»,\n"
 "pero no se pudo abrir el archivo «%s»: %s\n"
 
-#: postmaster/postmaster.c:1782
-#, c-format
-msgid "select() failed in postmaster: %m"
-msgstr "select() falló en postmaster: %m"
-
-#: postmaster/postmaster.c:1913
-#, c-format
-msgid "issuing SIGKILL to recalcitrant children"
+#. translator: %s is SIGKILL or SIGABRT
+#: postmaster/postmaster.c:1887
+#, fuzzy, c-format
+#| msgid "issuing SIGKILL to recalcitrant children"
+msgid "issuing %s to recalcitrant children"
 msgstr "enviando SIGKILL a procesos hijos recalcitrantes"
 
-#: postmaster/postmaster.c:1934
+#: postmaster/postmaster.c:1909
 #, 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:2037 postmaster/postmaster.c:2065
+#: postmaster/postmaster.c:1984 postmaster/postmaster.c:2012
 #, c-format
 msgid "incomplete startup packet"
 msgstr "el paquete de inicio está incompleto"
 
-#: postmaster/postmaster.c:2049
+#: postmaster/postmaster.c:1996 postmaster/postmaster.c:2029
 #, c-format
 msgid "invalid length of startup packet"
 msgstr "el de paquete de inicio tiene largo incorrecto"
 
-#: postmaster/postmaster.c:2104
+#: postmaster/postmaster.c:2058
 #, 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:2122
+#: postmaster/postmaster.c:2076
 #, c-format
 msgid "received unencrypted data after SSL request"
 msgstr "se recibieron datos no cifrados después de petición SSL"
 
-#: postmaster/postmaster.c:2123 postmaster/postmaster.c:2167
+#: postmaster/postmaster.c:2077 postmaster/postmaster.c:2121
 #, c-format
 msgid "This could be either a client-software bug or evidence of an attempted man-in-the-middle attack."
 msgstr "Esto podría ser un error en el software cliente o evidencia de un intento de ataque man-in-the-middle."
 
-#: postmaster/postmaster.c:2148
+#: postmaster/postmaster.c:2102
 #, 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:2166
+#: postmaster/postmaster.c:2120
 #, c-format
 msgid "received unencrypted data after GSSAPI encryption request"
 msgstr "se recibieron datos no cifrados después de petición de cifrado GSSAPI"
 
-#: postmaster/postmaster.c:2190
+#: postmaster/postmaster.c:2144
 #, 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:2254 utils/misc/guc.c:7410 utils/misc/guc.c:7446
-#: utils/misc/guc.c:7516 utils/misc/guc.c:8947 utils/misc/guc.c:11980
-#: utils/misc/guc.c:12021
-#, c-format
-msgid "invalid value for parameter \"%s\": \"%s\""
-msgstr "valor no válido para el parámetro «%s»: «%s»"
-
-#: postmaster/postmaster.c:2257
+#: postmaster/postmaster.c:2211
 #, 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:2302
+#: postmaster/postmaster.c:2252
 #, 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:2319
+#: postmaster/postmaster.c:2269
 #, 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:2383
+#: postmaster/postmaster.c:2333
 #, c-format
 msgid "the database system is starting up"
 msgstr "el sistema de base de datos está iniciándose"
 
-#: postmaster/postmaster.c:2389
+#: postmaster/postmaster.c:2339
 #, c-format
 msgid "the database system is not yet accepting connections"
 msgstr "el sistema de bases de datos aún no está aceptando conexiones"
 
-#: postmaster/postmaster.c:2390
+#: postmaster/postmaster.c:2340
 #, c-format
 msgid "Consistent recovery state has not been yet reached."
 msgstr "Aún no se ha alcanzado un estado de recuperación consistente."
 
-#: postmaster/postmaster.c:2394
+#: postmaster/postmaster.c:2344
 #, c-format
 msgid "the database system is not accepting connections"
 msgstr "el sistema de bases de datos no está aceptando conexiones"
 
-#: postmaster/postmaster.c:2395
+#: postmaster/postmaster.c:2345
 #, c-format
 msgid "Hot standby mode is disabled."
 msgstr "El modo hot standby está desactivado."
 
-#: postmaster/postmaster.c:2400
+#: postmaster/postmaster.c:2350
 #, c-format
 msgid "the database system is shutting down"
 msgstr "el sistema de base de datos está apagándose"
 
-#: postmaster/postmaster.c:2405
+#: postmaster/postmaster.c:2355
 #, 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:2410 storage/ipc/procarray.c:479
-#: storage/ipc/sinvaladt.c:306 storage/lmgr/proc.c:359
+#: postmaster/postmaster.c:2360 storage/ipc/procarray.c:491
+#: storage/ipc/sinvaladt.c:306 storage/lmgr/proc.c:353
 #, c-format
 msgid "sorry, too many clients already"
 msgstr "lo siento, ya tenemos demasiados clientes"
 
-#: postmaster/postmaster.c:2497
+#: postmaster/postmaster.c:2447
 #, 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:2509
+#: postmaster/postmaster.c:2459
 #, 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:2763
+#: postmaster/postmaster.c:2726
 #, 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:2787 postmaster/postmaster.c:2791
+#: postmaster/postmaster.c:2750 postmaster/postmaster.c:2754
 #, c-format
 msgid "%s was not reloaded"
 msgstr "%s no fue vuelto a cargar"
 
-#: postmaster/postmaster.c:2801
+#: postmaster/postmaster.c:2764
 #, c-format
 msgid "SSL configuration was not reloaded"
 msgstr "la configuración SSL no fue vuelta a cargar"
 
-#: postmaster/postmaster.c:2857
+#: postmaster/postmaster.c:2854
 #, c-format
 msgid "received smart shutdown request"
 msgstr "se recibió petición de apagado inteligente"
 
-#: postmaster/postmaster.c:2898
+#: postmaster/postmaster.c:2895
 #, c-format
 msgid "received fast shutdown request"
 msgstr "se recibió petición de apagado rápido"
 
-#: postmaster/postmaster.c:2916
+#: postmaster/postmaster.c:2913
 #, c-format
 msgid "aborting any active transactions"
 msgstr "abortando transacciones activas"
 
-#: postmaster/postmaster.c:2940
+#: postmaster/postmaster.c:2937
 #, c-format
 msgid "received immediate shutdown request"
 msgstr "se recibió petición de apagado inmediato"
 
-#: postmaster/postmaster.c:3017
+#: postmaster/postmaster.c:3013
 #, c-format
 msgid "shutdown at recovery target"
 msgstr "apagándose al alcanzar el destino de recuperación"
 
-#: postmaster/postmaster.c:3035 postmaster/postmaster.c:3071
+#: postmaster/postmaster.c:3031 postmaster/postmaster.c:3067
 msgid "startup process"
 msgstr "proceso de inicio"
 
-#: postmaster/postmaster.c:3038
+#: postmaster/postmaster.c:3034
 #, 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:3111
+#: postmaster/postmaster.c:3107
 #, 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:3132
+#: postmaster/postmaster.c:3128
 msgid "background writer process"
 msgstr "proceso background writer"
 
-#: postmaster/postmaster.c:3179
+#: postmaster/postmaster.c:3175
 msgid "checkpointer process"
 msgstr "proceso checkpointer"
 
-#: postmaster/postmaster.c:3195
+#: postmaster/postmaster.c:3191
 msgid "WAL writer process"
 msgstr "proceso escritor de WAL"
 
-#: postmaster/postmaster.c:3210
+#: postmaster/postmaster.c:3206
 msgid "WAL receiver process"
 msgstr "proceso receptor de WAL"
 
-#: postmaster/postmaster.c:3225
+#: postmaster/postmaster.c:3221
 msgid "autovacuum launcher process"
 msgstr "proceso lanzador de autovacuum"
 
-#: postmaster/postmaster.c:3243
+#: postmaster/postmaster.c:3239
 msgid "archiver process"
 msgstr "proceso de archivado"
 
-#: postmaster/postmaster.c:3256
+#: postmaster/postmaster.c:3252
 msgid "system logger process"
 msgstr "proceso de log"
 
-#: postmaster/postmaster.c:3320
+#: postmaster/postmaster.c:3309
 #, c-format
 msgid "background worker \"%s\""
 msgstr "proceso ayudante «%s»"
 
-#: postmaster/postmaster.c:3399 postmaster/postmaster.c:3419
-#: postmaster/postmaster.c:3426 postmaster/postmaster.c:3444
+#: postmaster/postmaster.c:3388 postmaster/postmaster.c:3408
+#: postmaster/postmaster.c:3415 postmaster/postmaster.c:3433
 msgid "server process"
 msgstr "proceso de servidor"
 
-#: postmaster/postmaster.c:3498
+#: postmaster/postmaster.c:3487
 #, 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:3735
+#: postmaster/postmaster.c:3662
 #, 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:3737 postmaster/postmaster.c:3749
-#: postmaster/postmaster.c:3759 postmaster/postmaster.c:3770
+#: postmaster/postmaster.c:3664 postmaster/postmaster.c:3676
+#: postmaster/postmaster.c:3686 postmaster/postmaster.c:3697
 #, 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:3746
+#: postmaster/postmaster.c:3673
 #, c-format
 msgid "%s (PID %d) was terminated by exception 0x%X"
 msgstr "%s (PID %d) fue terminado por una excepción 0x%X"
 
-#: postmaster/postmaster.c:3748 postmaster/shell_archive.c:132
-#, 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."
-
 #. translator: %s is a noun phrase describing a child process, such as
 #. "server process"
-#: postmaster/postmaster.c:3756
+#: postmaster/postmaster.c:3683
 #, 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:3768
+#: postmaster/postmaster.c:3695
 #, 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:3968
+#: postmaster/postmaster.c:3903
 #, c-format
 msgid "abnormal database system shutdown"
 msgstr "apagado anormal del sistema de bases de datos"
 
-#: postmaster/postmaster.c:3994
+#: postmaster/postmaster.c:3929
 #, c-format
 msgid "shutting down due to startup process failure"
 msgstr "apagando debido a una falla en el procesamiento de inicio"
 
-#: postmaster/postmaster.c:4000
+#: postmaster/postmaster.c:3935
 #, c-format
 msgid "shutting down because restart_after_crash is off"
 msgstr "apagando debido a que restart_after_crash está desactivado"
 
-#: postmaster/postmaster.c:4012
+#: postmaster/postmaster.c:3947
 #, c-format
 msgid "all server processes terminated; reinitializing"
 msgstr "todos los procesos fueron terminados; reinicializando"
 
-#: postmaster/postmaster.c:4184 postmaster/postmaster.c:5520
-#: postmaster/postmaster.c:5918
+#: postmaster/postmaster.c:4141 postmaster/postmaster.c:5459
+#: postmaster/postmaster.c:5857
 #, c-format
 msgid "could not generate random cancel key"
 msgstr "no se pudo generar una llave de cancelación aleatoria"
 
-#: postmaster/postmaster.c:4246
+#: postmaster/postmaster.c:4203
 #, 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:4288
+#: postmaster/postmaster.c:4245
 msgid "could not fork new process for connection: "
 msgstr "no se pudo lanzar el nuevo proceso para la conexión: "
 
-#: postmaster/postmaster.c:4394
+#: postmaster/postmaster.c:4351
 #, c-format
 msgid "connection received: host=%s port=%s"
 msgstr "conexión recibida: host=%s port=%s"
 
-#: postmaster/postmaster.c:4399
+#: postmaster/postmaster.c:4356
 #, c-format
 msgid "connection received: host=%s"
 msgstr "conexión recibida: host=%s"
 
-#: postmaster/postmaster.c:4636
+#: postmaster/postmaster.c:4593
 #, c-format
 msgid "could not execute server process \"%s\": %m"
 msgstr "no se pudo lanzar el proceso servidor «%s»: %m"
 
-#: postmaster/postmaster.c:4694
+#: postmaster/postmaster.c:4651
 #, c-format
 msgid "could not create backend parameter file mapping: error code %lu"
 msgstr "no se pudo crear mapeo de archivo de parámetros de servidor: código de error %lu"
 
-#: postmaster/postmaster.c:4703
+#: postmaster/postmaster.c:4660
 #, c-format
 msgid "could not map backend parameter memory: error code %lu"
 msgstr "no se pudo mapear memoria para parámetros de servidor: código de error %lu"
 
-#: postmaster/postmaster.c:4730
+#: postmaster/postmaster.c:4687
 #, c-format
 msgid "subprocess command line too long"
 msgstr "orden de subproceso demasiado larga"
 
-#: postmaster/postmaster.c:4748
+#: postmaster/postmaster.c:4705
 #, c-format
 msgid "CreateProcess() call failed: %m (error code %lu)"
 msgstr "llamada a CreateProcess() falló: %m (código de error %lu)"
 
-#: postmaster/postmaster.c:4775
+#: postmaster/postmaster.c:4732
 #, c-format
 msgid "could not unmap view of backend parameter file: error code %lu"
 msgstr "no se pudo desmapear la vista del archivo de parámetros de servidor: código de error %lu"
 
-#: postmaster/postmaster.c:4779
+#: postmaster/postmaster.c:4736
 #, c-format
 msgid "could not close handle to backend parameter file: error code %lu"
 msgstr "no se pudo cerrar el archivo de parámetros de servidor: código de error %lu"
 
-#: postmaster/postmaster.c:4801
+#: postmaster/postmaster.c:4758
 #, 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:4802
+#: postmaster/postmaster.c:4759
 #, 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:4983
+#: postmaster/postmaster.c:4932
 #, 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:5108
+#: postmaster/postmaster.c:5057
 #, c-format
 msgid "Please report this to <%s>."
 msgstr "Por favor reporte esto a <%s>."
 
-#: postmaster/postmaster.c:5180
+#: postmaster/postmaster.c:5125
 #, 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:5444
+#: postmaster/postmaster.c:5383
 #, c-format
 msgid "could not fork startup process: %m"
 msgstr "no se pudo lanzar el proceso de inicio: %m"
 
-#: postmaster/postmaster.c:5448
+#: postmaster/postmaster.c:5387
 #, c-format
 msgid "could not fork archiver process: %m"
 msgstr "no se pudo lanzar el proceso de archivado: %m"
 
-#: postmaster/postmaster.c:5452
+#: postmaster/postmaster.c:5391
 #, c-format
 msgid "could not fork background writer process: %m"
 msgstr "no se pudo lanzar el background writer: %m"
 
-#: postmaster/postmaster.c:5456
+#: postmaster/postmaster.c:5395
 #, c-format
 msgid "could not fork checkpointer process: %m"
 msgstr "no se pudo lanzar el checkpointer: %m"
 
-#: postmaster/postmaster.c:5460
+#: postmaster/postmaster.c:5399
 #, c-format
 msgid "could not fork WAL writer process: %m"
 msgstr "no se pudo lanzar el proceso escritor de WAL: %m"
 
-#: postmaster/postmaster.c:5464
+#: postmaster/postmaster.c:5403
 #, c-format
 msgid "could not fork WAL receiver process: %m"
 msgstr "no se pudo lanzar el proceso receptor de WAL: %m"
 
-#: postmaster/postmaster.c:5468
+#: postmaster/postmaster.c:5407
 #, c-format
 msgid "could not fork process: %m"
 msgstr "no se pudo lanzar el proceso: %m"
 
-#: postmaster/postmaster.c:5669 postmaster/postmaster.c:5696
+#: postmaster/postmaster.c:5608 postmaster/postmaster.c:5635
 #, 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:5680 postmaster/postmaster.c:5707
+#: postmaster/postmaster.c:5619 postmaster/postmaster.c:5646
 #, c-format
 msgid "invalid processing mode in background worker"
 msgstr "modo de procesamiento no válido en proceso ayudante"
 
-#: postmaster/postmaster.c:5792
+#: postmaster/postmaster.c:5731
 #, c-format
 msgid "could not fork worker process: %m"
 msgstr "no se pudo lanzar el proceso ayudante: %m"
 
-#: postmaster/postmaster.c:5904
+#: postmaster/postmaster.c:5843
 #, c-format
 msgid "no slot available for new worker process"
 msgstr "no hay slot disponible para un nuevo proceso ayudante"
 
-#: postmaster/postmaster.c:6235
+#: postmaster/postmaster.c:6174
 #, 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:6267
+#: postmaster/postmaster.c:6206
 #, 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:6296
+#: postmaster/postmaster.c:6235
 #, 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:6303
+#: postmaster/postmaster.c:6242
 #, 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:6312
+#: postmaster/postmaster.c:6251
 #, c-format
 msgid "could not remove file \"%s\": %s\n"
 msgstr "no se pudo eliminar el archivo «%s»: %s\n"
 
-#: postmaster/postmaster.c:6329
+#: postmaster/postmaster.c:6268
 #, 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:6338
+#: postmaster/postmaster.c:6277
 #, 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:6345
+#: postmaster/postmaster.c:6284
 #, 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:6519
+#: postmaster/postmaster.c:6443
 #, 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:6524
+#: postmaster/postmaster.c:6485
 #, c-format
 msgid "could not post child completion status\n"
 msgstr "no se pudo publicar el estado de completitud del proceso hijo\n"
 
-#: postmaster/shell_archive.c:121
-#, c-format
-msgid "archive command failed with exit code %d"
-msgstr "la orden de archivado falló con código de retorno %d"
-
-#: postmaster/shell_archive.c:123 postmaster/shell_archive.c:133
-#: postmaster/shell_archive.c:139 postmaster/shell_archive.c:148
-#, c-format
-msgid "The failed archive command was: %s"
-msgstr "La orden fallida era: «%s»"
-
-#: postmaster/shell_archive.c:130
-#, 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/shell_archive.c:137
-#, 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/shell_archive.c:146
-#, c-format
-msgid "archive command exited with unrecognized status %d"
-msgstr "la orden de archivado fue terminada con código %d no reconocido"
-
 #: postmaster/syslogger.c:501 postmaster/syslogger.c:1222
 #, c-format
 msgid "could not read from logger pipe: %m"
@@ -19394,221 +19842,318 @@ 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"
 
-#: replication/libpqwalreceiver/libpqwalreceiver.c:240
+#: replication/libpqwalreceiver/libpqwalreceiver.c:197
+#: replication/libpqwalreceiver/libpqwalreceiver.c:280
+#, fuzzy, c-format
+#| msgid "redo is not required"
+msgid "password is required"
+msgstr "no se requiere redo"
+
+#: replication/libpqwalreceiver/libpqwalreceiver.c:198
+#, c-format
+msgid "Non-superuser cannot connect if the server does not request a password."
+msgstr ""
+
+#: replication/libpqwalreceiver/libpqwalreceiver.c:199
+#, c-format
+msgid "Target server's authentication method must be changed. or set password_required=false in the subscription attributes."
+msgstr ""
+
+#: replication/libpqwalreceiver/libpqwalreceiver.c:211
 #, c-format
 msgid "could not clear search path: %s"
 msgstr "no se pudo limpiar la ruta de búsqueda: %s"
 
-#: replication/libpqwalreceiver/libpqwalreceiver.c:269
+#: replication/libpqwalreceiver/libpqwalreceiver.c:257
 #, c-format
 msgid "invalid connection string syntax: %s"
 msgstr "sintaxis de cadena de conexión no válida: %s"
 
-#: replication/libpqwalreceiver/libpqwalreceiver.c:295
+#: replication/libpqwalreceiver/libpqwalreceiver.c:281
+#, c-format
+msgid "Non-superusers must provide a password in the connection string."
+msgstr ""
+
+#: replication/libpqwalreceiver/libpqwalreceiver.c:307
 #, c-format
 msgid "could not parse connection string: %s"
 msgstr "no se pudo interpretar la cadena de conexión: %s"
 
-#: replication/libpqwalreceiver/libpqwalreceiver.c:368
+#: replication/libpqwalreceiver/libpqwalreceiver.c:380
 #, 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:380
-#: replication/libpqwalreceiver/libpqwalreceiver.c:618
+#: replication/libpqwalreceiver/libpqwalreceiver.c:392
+#: replication/libpqwalreceiver/libpqwalreceiver.c:635
 #, c-format
 msgid "invalid response from primary server"
 msgstr "respuesta no válida del servidor primario"
 
-#: replication/libpqwalreceiver/libpqwalreceiver.c:381
+#: replication/libpqwalreceiver/libpqwalreceiver.c:393
 #, 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:461
-#: replication/libpqwalreceiver/libpqwalreceiver.c:468
-#: replication/libpqwalreceiver/libpqwalreceiver.c:498
+#: replication/libpqwalreceiver/libpqwalreceiver.c:478
+#: replication/libpqwalreceiver/libpqwalreceiver.c:485
+#: replication/libpqwalreceiver/libpqwalreceiver.c:515
 #, c-format
 msgid "could not start WAL streaming: %s"
 msgstr "no se pudo iniciar el flujo de WAL: %s"
 
-#: replication/libpqwalreceiver/libpqwalreceiver.c:522
+#: replication/libpqwalreceiver/libpqwalreceiver.c:539
 #, 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:545
+#: replication/libpqwalreceiver/libpqwalreceiver.c:562
 #, 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:560
+#: replication/libpqwalreceiver/libpqwalreceiver.c:577
 #, 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:570
+#: replication/libpqwalreceiver/libpqwalreceiver.c:587
 #, 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:579
-#: replication/libpqwalreceiver/libpqwalreceiver.c:817
+#: replication/libpqwalreceiver/libpqwalreceiver.c:596
+#: replication/libpqwalreceiver/libpqwalreceiver.c:832
 #, c-format
 msgid "unexpected result after CommandComplete: %s"
 msgstr "resultado inesperado después de CommandComplete: %s"
 
-#: replication/libpqwalreceiver/libpqwalreceiver.c:606
+#: replication/libpqwalreceiver/libpqwalreceiver.c:623
 #, 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:619
+#: replication/libpqwalreceiver/libpqwalreceiver.c:636
 #, 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:780
-#: replication/libpqwalreceiver/libpqwalreceiver.c:833
-#: replication/libpqwalreceiver/libpqwalreceiver.c:840
+#: replication/libpqwalreceiver/libpqwalreceiver.c:795
+#: replication/libpqwalreceiver/libpqwalreceiver.c:848
+#: replication/libpqwalreceiver/libpqwalreceiver.c:855
 #, 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:860
+#: replication/libpqwalreceiver/libpqwalreceiver.c:875
 #, 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:952
+#: replication/libpqwalreceiver/libpqwalreceiver.c:967
 #, 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:998
+#: replication/libpqwalreceiver/libpqwalreceiver.c:1013
 #, c-format
 msgid "invalid query response"
 msgstr "respuesta no válida a consulta"
 
-#: replication/libpqwalreceiver/libpqwalreceiver.c:999
+#: replication/libpqwalreceiver/libpqwalreceiver.c:1014
 #, c-format
 msgid "Expected %d fields, got %d fields."
 msgstr "Se esperaban %d campos, se obtuvieron %d campos."
 
-#: replication/libpqwalreceiver/libpqwalreceiver.c:1069
+#: replication/libpqwalreceiver/libpqwalreceiver.c:1084
 #, 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:1100
+#: replication/libpqwalreceiver/libpqwalreceiver.c:1115
 msgid "empty query"
 msgstr "consulta vacía"
 
-#: replication/libpqwalreceiver/libpqwalreceiver.c:1106
+#: replication/libpqwalreceiver/libpqwalreceiver.c:1121
 msgid "unexpected pipeline mode"
 msgstr "modo pipeline inesperado"
 
-#: replication/logical/launcher.c:285
-#, 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/applyparallelworker.c:719
+#, fuzzy, c-format
+#| msgid "logical replication apply worker for subscription \"%s\" has started"
+msgid "logical replication parallel apply worker for subscription \"%s\" has finished"
+msgstr "el ayudante «apply» de replicación lógica para la suscripción «%s» ha iniciado"
 
-#: replication/logical/launcher.c:365
-#, c-format
-msgid "out of logical replication worker slots"
-msgstr "se agotaron los slots de procesos ayudantes de replicación"
+#: replication/logical/applyparallelworker.c:825
+#, fuzzy, c-format
+#| msgid "lost connection to parallel worker"
+msgid "lost connection to the logical replication apply worker"
+msgstr "se ha perdido la conexión al ayudante paralelo"
 
-#: replication/logical/launcher.c:366
-#, c-format
-msgid "You might need to increase max_logical_replication_workers."
-msgstr "Puede ser necesario incrementar max_logical_replication_workers."
+#: replication/logical/applyparallelworker.c:893
+#, fuzzy, c-format
+#| msgid "could not map dynamic shared memory segment"
+msgid "unable to map dynamic shared memory segment"
+msgstr "no se pudo mapear el segmento de memoria compartida dinámica"
 
-#: replication/logical/launcher.c:422
-#, c-format
-msgid "out of background worker slots"
-msgstr "se acabaron los slots de procesos ayudante"
+#: replication/logical/applyparallelworker.c:899
+#, fuzzy, c-format
+#| msgid "invalid magic number in dynamic shared memory segment"
+msgid "bad magic number in dynamic shared memory segment"
+msgstr "número mágico no válido en segmento de memoria compartida dinámica"
 
-#: replication/logical/launcher.c:423
-#, c-format
-msgid "You might need to increase max_worker_processes."
-msgstr "Puede ser necesario incrementar max_worker_processes."
+#: replication/logical/applyparallelworker.c:1027
+#: replication/logical/applyparallelworker.c:1029
+#: replication/logical/worker.c:447
+#, fuzzy
+#| msgid "lost connection to parallel worker"
+msgid "logical replication parallel apply worker"
+msgstr "se ha perdido la conexión al ayudante paralelo"
 
-#: replication/logical/launcher.c:577
-#, 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/applyparallelworker.c:1043
+#, fuzzy, c-format
+#| msgid "terminating logical replication worker due to timeout"
+msgid "logical replication parallel apply worker exited due to error"
+msgstr "terminando el proceso de replicación lógica debido a que se agotó el tiempo de espera"
+
+#: replication/logical/applyparallelworker.c:1130
+#: replication/logical/applyparallelworker.c:1303
+#, fuzzy, c-format
+#| msgid "lost connection to parallel worker"
+msgid "lost connection to the logical replication parallel apply worker"
+msgstr "se ha perdido la conexión al ayudante paralelo"
+
+#: replication/logical/applyparallelworker.c:1183
+#, fuzzy, c-format
+#| msgid "could not send tuple to shared-memory queue"
+msgid "could not send data to shared-memory queue"
+msgstr "no se pudo enviar la tupla a la cola en memoria compartida"
+
+#: replication/logical/applyparallelworker.c:1218
+#, fuzzy, c-format
+#| msgid "logical replication apply worker for subscription %u will not start because the subscription was removed during startup"
+msgid "logical replication apply worker will serialize the remaining changes of remote transaction %u to a file"
+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"
+
+# FIXME see slot.c:779.  See also  postmaster.c:835
+#: replication/logical/decode.c:180 replication/logical/logical.c:140
+#, fuzzy, c-format
+#| msgid "logical decoding requires wal_level >= logical"
+msgid "logical decoding on standby requires wal_level >= logical on the primary"
+msgstr "la decodificación lógica requiere wal_level >= logical"
+
+#: replication/logical/launcher.c:331
+#, 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:424
+#, c-format
+msgid "out of logical replication worker slots"
+msgstr "se agotaron los slots de procesos ayudantes de replicación"
+
+#: replication/logical/launcher.c:425
+#, 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:498
+#, c-format
+msgid "out of background worker slots"
+msgstr "se acabaron los slots de procesos ayudante"
+
+#: replication/logical/launcher.c:499
+#, c-format
+msgid "You might need to increase max_worker_processes."
+msgstr "Puede ser necesario incrementar max_worker_processes."
+
+#: replication/logical/launcher.c:705
+#, 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:586
+#: replication/logical/launcher.c:714
 #, 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"
 
 # FIXME see slot.c:779.  See also  postmaster.c:835
-#: replication/logical/logical.c:115
+#: replication/logical/logical.c:120
 #, c-format
 msgid "logical decoding requires wal_level >= logical"
 msgstr "la decodificación lógica requiere wal_level >= logical"
 
-#: replication/logical/logical.c:120
+#: replication/logical/logical.c:125
 #, 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:138
-#, 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:348 replication/logical/logical.c:502
+#: replication/logical/logical.c:363 replication/logical/logical.c:517
 #, 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:353 replication/logical/logical.c:507
+#: replication/logical/logical.c:368 replication/logical/logical.c:522
 #, 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"
 
-#: replication/logical/logical.c:360
+#: replication/logical/logical.c:375
 #, c-format
 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:568
+#: replication/logical/logical.c:534 replication/logical/logical.c:541
+#, c-format
+msgid "can no longer get changes from replication slot \"%s\""
+msgstr "ya no se pueden recibir cambios desde el slot de replicación «%s»"
+
+#: replication/logical/logical.c:536
+#, c-format
+msgid "This slot has been invalidated because it exceeded the maximum reserved size."
+msgstr "Este slot ha sido invalidado porque excedió el máximo del tamaño de reserva."
+
+#: replication/logical/logical.c:543
+#, fuzzy, c-format
+#| msgid "This slot has been invalidated because it exceeded the maximum reserved size."
+msgid "This slot has been invalidated because it was conflicting with recovery."
+msgstr "Este slot ha sido invalidado porque excedió el máximo del tamaño de reserva."
+
+#: replication/logical/logical.c:608
 #, c-format
 msgid "starting logical decoding for slot \"%s\""
 msgstr "iniciando la decodificación lógica para el slot «%s»"
 
-#: replication/logical/logical.c:570
+#: replication/logical/logical.c:610
 #, 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."
 
-#: replication/logical/logical.c:718
+#: replication/logical/logical.c:758
 #, c-format
 msgid "slot \"%s\", output plugin \"%s\", in the %s callback, associated LSN %X/%X"
 msgstr "slot «%s», plugin de salida «%s», en el callback %s, LSN asociado %X/%X"
 
 # FIXME must quote callback name?  Need a translator: comment?
-#: replication/logical/logical.c:724
+#: replication/logical/logical.c:764
 #, c-format
 msgid "slot \"%s\", output plugin \"%s\", in the %s callback"
 msgstr "slot «%s», plugin de salida «%s», en el callback %s"
 
-#: replication/logical/logical.c:895 replication/logical/logical.c:940
-#: replication/logical/logical.c:985 replication/logical/logical.c:1031
+#: replication/logical/logical.c:935 replication/logical/logical.c:980
+#: replication/logical/logical.c:1025 replication/logical/logical.c:1071
 #, c-format
 msgid "logical replication at prepare time requires a %s callback"
 msgstr "durante la preparación, la replicación lógica requiere una función callback %s"
 
-#: replication/logical/logical.c:1263 replication/logical/logical.c:1312
-#: replication/logical/logical.c:1353 replication/logical/logical.c:1439
-#: replication/logical/logical.c:1488
+#: replication/logical/logical.c:1303 replication/logical/logical.c:1352
+#: replication/logical/logical.c:1393 replication/logical/logical.c:1479
+#: replication/logical/logical.c:1528
 #, c-format
 msgid "logical streaming requires a %s callback"
 msgstr "el flujo lógico requiere una función callback %s"
 
-#: replication/logical/logical.c:1398
+#: replication/logical/logical.c:1438
 #, c-format
 msgid "logical streaming at prepare time requires a %s callback"
 msgstr "durante la preparación, el flujo lógico requiere una función callback %s"
@@ -19633,840 +20178,919 @@ msgstr "el array debe ser unidimensional"
 msgid "array must not contain nulls"
 msgstr "el array no debe contener nulls"
 
-#: replication/logical/logicalfuncs.c:181 utils/adt/json.c:1128
-#: utils/adt/jsonb.c:1302
+#: replication/logical/logicalfuncs.c:180 utils/adt/json.c:1484
+#: utils/adt/jsonb.c:1403
 #, 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:227
 #, c-format
-msgid "can no longer get changes from replication slot \"%s\""
-msgstr "ya no se pueden recibir cambios desde el slot de replicación «%s»"
-
-#: replication/logical/logicalfuncs.c:229 replication/slotfuncs.c:616
-#, c-format
-msgid "This slot has never previously reserved WAL, or it has been invalidated."
-msgstr "Este slot nunca ha reservado WAL previamente, o ha sido invalidado."
-
-#: replication/logical/logicalfuncs.c:241
-#, 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:189
+#: replication/logical/origin.c:190
 #, 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:194
+#: replication/logical/origin.c:195
 #, 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:228
+#: replication/logical/origin.c:240
 #, c-format
 msgid "replication origin \"%s\" does not exist"
 msgstr "no existe el origen de replicación «%s»"
 
-#: replication/logical/origin.c:319
+#: replication/logical/origin.c:331
 #, fuzzy, c-format
-#| msgid "could not find free replication origin OID"
+#| msgid "could not create replication slot \"%s\": %s"
 msgid "could not find free replication origin ID"
-msgstr "no se pudo encontrar un OID de origen de replicación libre"
+msgstr "no se pudo create el slot de replicación «%s»: %s"
 
-#: replication/logical/origin.c:355
+#: replication/logical/origin.c:365
 #, fuzzy, c-format
-#| msgid "could not drop replication origin with OID %d, in use by PID %d"
+#| msgid "could not drop replication slot \"%s\" on publisher: %s"
 msgid "could not drop replication origin with ID %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"
+msgstr "no se pudo eliminar el slot de replicación «%s» en editor (publisher): %s"
 
-#: replication/logical/origin.c:476
+#: replication/logical/origin.c:492
 #, fuzzy, c-format
-#| msgid "replication origin with OID %u does not exist"
+#| msgid "replication origin \"%s\" does not exist"
 msgid "replication origin with ID %d does not exist"
-msgstr "el origen de replicación con OID %u no existe"
+msgstr "no existe el origen de replicación «%s»"
 
-#: replication/logical/origin.c:741
+#: replication/logical/origin.c:757
 #, 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:782
+#: replication/logical/origin.c:798
 #, 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:790
+#: replication/logical/origin.c:806
 #, fuzzy, c-format
-#| msgid "recovered replication state of node %u to %X/%X"
+#| msgid "recovery restart point at %X/%X"
 msgid "recovered replication state of node %d to %X/%X"
-msgstr "se recuperó estado de replicación de nodo %u a %X/%X"
+msgstr "restartpoint de recuperación en %X/%X"
 
-#: replication/logical/origin.c:800
+#: replication/logical/origin.c:816
 #, 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:928 replication/logical/origin.c:1117
+#: replication/logical/origin.c:944 replication/logical/origin.c:1141
 #, fuzzy, c-format
-#| msgid "replication origin with OID %d is already active for PID %d"
+#| msgid "replication slot \"%s\" is active for PID %d"
 msgid "replication origin with ID %d is already active for PID %d"
-msgstr "el origen de replicación con OID %d ya está activo para el PID %d"
+msgstr "el slot de replicación «%s» está activo para el PID %d"
 
-#: replication/logical/origin.c:939 replication/logical/origin.c:1129
+#: replication/logical/origin.c:955 replication/logical/origin.c:1153
 #, fuzzy, c-format
-#| msgid "could not find free replication state slot for replication origin with OID %u"
+#| msgid "could not find free replication state, increase max_replication_slots"
 msgid "could not find free replication state slot for replication origin with ID %d"
-msgstr "no se pudo encontrar un slot libre para el estado del origen de replicación con OID %u"
+msgstr "no se pudo encontrar una estructura de replicación libre, incremente max_replication_slots"
 
-#: replication/logical/origin.c:941 replication/logical/origin.c:1131
-#: replication/slot.c:1912
+#: replication/logical/origin.c:957 replication/logical/origin.c:1155
+#: replication/slot.c:2086
 #, c-format
 msgid "Increase max_replication_slots and try again."
 msgstr "Aumente max_replication_slots y reintente."
 
-#: replication/logical/origin.c:1088
+#: replication/logical/origin.c:1112
 #, 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:1168 replication/logical/origin.c:1380
-#: replication/logical/origin.c:1400
+#: replication/logical/origin.c:1196 replication/logical/origin.c:1412
+#: replication/logical/origin.c:1432
 #, c-format
 msgid "no replication origin is configured"
 msgstr "no hay un destino de replicación configurado"
 
-#: replication/logical/origin.c:1251
+#: replication/logical/origin.c:1282
 #, c-format
 msgid "replication origin name \"%s\" is reserved"
 msgstr "el nombre de origen de replicación «%s» está reservado"
 
-#: replication/logical/origin.c:1253
-#, c-format
-msgid "Origin names starting with \"pg_\" are reserved."
+#: replication/logical/origin.c:1284
+#, fuzzy, c-format
+#| msgid "Origin names starting with \"pg_\" are reserved."
+msgid "Origin names \"%s\", \"%s\", and names starting with \"pg_\" are reserved."
 msgstr "Los nombres de origen que empiezan con «pg_» están reservados."
 
-#: replication/logical/relation.c:234
+#: replication/logical/relation.c:240
 #, c-format
 msgid "\"%s\""
 msgstr "«%s»"
 
-#: replication/logical/relation.c:237
+#: replication/logical/relation.c:243
 #, c-format
 msgid ", \"%s\""
 msgstr ", «%s»"
 
-#: replication/logical/relation.c:243
+#: replication/logical/relation.c:249
 #, c-format
 msgid "logical replication target relation \"%s.%s\" is missing replicated column: %s"
 msgid_plural "logical replication target relation \"%s.%s\" is missing replicated columns: %s"
 msgstr[0] "a la relación destino de replicación lógica «%s.%s» le falta la columna replicada: %s"
 msgstr[1] "a la relación destino de replicación lógica «%s.%s» le faltan las columnas replicadas: %s"
 
-#: replication/logical/relation.c:298
+#: replication/logical/relation.c:304
 #, 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/relation.c:390
+#: replication/logical/relation.c:396
 #, 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/reorderbuffer.c:3811
+#: replication/logical/reorderbuffer.c:3936
 #, 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:4155
-#: replication/logical/reorderbuffer.c:4180
+#: replication/logical/reorderbuffer.c:4282
+#: replication/logical/reorderbuffer.c:4307
 #, 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:4159
-#: replication/logical/reorderbuffer.c:4184
+#: replication/logical/reorderbuffer.c:4286
+#: replication/logical/reorderbuffer.c:4311
 #, 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:4434
+#: replication/logical/reorderbuffer.c:4561
 #, 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:4933
+#: replication/logical/reorderbuffer.c:5057
 #, 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:627
+#: replication/logical/snapbuild.c:639
 #, 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:681
+#: replication/logical/snapbuild.c:693
 #, 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:1357 replication/logical/snapbuild.c:1464
-#: replication/logical/snapbuild.c:1993
+#: replication/logical/snapbuild.c:1388 replication/logical/snapbuild.c:1480
+#: replication/logical/snapbuild.c:1992
 #, 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:1359
+#: replication/logical/snapbuild.c:1390
 #, c-format
 msgid "There are no running transactions."
 msgstr "No hay transacciones en ejecución."
 
-#: replication/logical/snapbuild.c:1415
+#: replication/logical/snapbuild.c:1432
 #, 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:1417 replication/logical/snapbuild.c:1441
+#: replication/logical/snapbuild.c:1434 replication/logical/snapbuild.c:1458
 #, 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:1439
+#: replication/logical/snapbuild.c:1456
 #, 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:1466
+#: replication/logical/snapbuild.c:1482
 #, c-format
 msgid "There are no old transactions anymore."
 msgstr "Ya no hay transacciones antiguas en ejecución."
 
 # FIXME "snapbuild"?
-#: replication/logical/snapbuild.c:1861
+#: replication/logical/snapbuild.c:1883
 #, 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:1867
+#: replication/logical/snapbuild.c:1889
 #, 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:1938
+#: replication/logical/snapbuild.c:1930
 #, 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:1995
+#: replication/logical/snapbuild.c:1994
 #, 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:2067
+#: replication/logical/snapbuild.c:2101
 #, c-format
 msgid "could not parse file name \"%s\""
 msgstr "no se pudo interpretar el nombre de archivo «%s»"
 
-#: replication/logical/tablesync.c:151
+#: replication/logical/tablesync.c:152
 #, 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:422
+#: replication/logical/tablesync.c:621
 #, fuzzy, c-format
 #| msgid "logical replication apply worker for subscription \"%s\" will restart because of a parameter change"
 msgid "logical replication apply worker for subscription \"%s\" will restart so that two_phase can be enabled"
 msgstr "el ayudante «apply» de replicación lógica para la suscripción «%s» se reiniciará por un cambio de parámetro"
 
-#: replication/logical/tablesync.c:731 replication/logical/tablesync.c:872
+#: replication/logical/tablesync.c:796 replication/logical/tablesync.c:938
 #, 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:738
+#: replication/logical/tablesync.c:803
 #, 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:795
+#: replication/logical/tablesync.c:861
 #, fuzzy, c-format
 #| msgid "could not fetch table info for table \"%s.%s\" from publisher: %s"
 msgid "could not fetch column list 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:974
+#: replication/logical/tablesync.c:1040
 #, fuzzy, c-format
 #| msgid "could not fetch table info for table \"%s.%s\" from publisher: %s"
 msgid "could not fetch table WHERE clause 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:1111
+#: replication/logical/tablesync.c:1191
 #, 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:1323 replication/logical/worker.c:1634
-#, fuzzy, c-format
-#| msgid "\"%s\" cannot replicate into relation with row-level security enabled: \"%s\""
+#: replication/logical/tablesync.c:1398 replication/logical/worker.c:2387
+#, c-format
 msgid "user \"%s\" cannot replicate into relation with row-level security enabled: \"%s\""
-msgstr "«%s» no puede replicar a una relación con seguridad a nivel de filas activada: «%s»"
+msgstr ""
 
-#: replication/logical/tablesync.c:1338
+#: replication/logical/tablesync.c:1413
 #, c-format
 msgid "table copy could not start transaction on publisher: %s"
 msgstr "la copia de la tabla no pudo iniciar una transacción en el editor (publisher): %s"
 
-#: replication/logical/tablesync.c:1387
+#: replication/logical/tablesync.c:1455
 #, c-format
 msgid "replication origin \"%s\" already exists"
 msgstr "el origen de replicación «%s» ya existe"
 
-#: replication/logical/tablesync.c:1400
+#: replication/logical/tablesync.c:1468
 #, c-format
 msgid "table copy could not finish transaction on publisher: %s"
 msgstr "la copia de tabla no pudo terminar la transacción en el editor (publisher): %s"
 
-#: replication/logical/worker.c:671 replication/logical/worker.c:786
+#: replication/logical/worker.c:445
+#, fuzzy
+#| msgid "logical replication table synchronization worker for subscription \"%s\", table \"%s\" has started"
+msgid "logical replication table synchronization worker"
+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:449
+#, fuzzy
+#| msgid "out of logical replication worker slots"
+msgid "logical replication apply worker"
+msgstr "se agotaron los slots de procesos ayudantes de replicación"
+
+#: replication/logical/worker.c:512
+#, fuzzy, c-format
+#| msgid "logical replication apply worker for subscription \"%s\" has started"
+msgid "logical replication parallel apply worker for subscription \"%s\" will stop"
+msgstr "el ayudante «apply» de replicación lógica para la suscripción «%s» ha iniciado"
+
+#: replication/logical/worker.c:514
 #, c-format
-msgid "incorrect binary data format in logical replication column %d"
-msgstr "el formato de datos binarios es incorrecto en columna de replicación lógica %d"
+msgid "Cannot handle streamed replication transactions using parallel apply workers until all tables have been synchronized."
+msgstr ""
 
-#: replication/logical/worker.c:1417 replication/logical/worker.c:1431
+#: replication/logical/worker.c:876 replication/logical/worker.c:991
 #, c-format
-msgid "could not read from streaming transaction's changes file \"%s\": %m"
-msgstr "no se pudo leer el archivo de cambios de transacción en flujo «%s»: %m"
+msgid "incorrect binary data format in logical replication column %d"
+msgstr "el formato de datos binarios es incorrecto en columna de replicación lógica %d"
 
-#: replication/logical/worker.c:1760
+#: replication/logical/worker.c:2526
 #, 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:1767
+#: replication/logical/worker.c:2533
 #, 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:2570
+#: replication/logical/worker.c:3384
 #, fuzzy, c-format
 #| msgid "invalid standby message type \"%c\""
 msgid "invalid logical replication message type \"%c\""
 msgstr "el tipo «%c» de mensaje del standby no es válido"
 
-#: replication/logical/worker.c:2734
+#: replication/logical/worker.c:3556
 #, c-format
 msgid "data stream from publisher has ended"
 msgstr "el flujo de datos del publisher ha terminado"
 
-#: replication/logical/worker.c:2885
+#: replication/logical/worker.c:3707
 #, 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:3047
-#, c-format
-msgid "logical replication apply worker for subscription \"%s\" will stop because the subscription was removed"
+#. translator: first %s is the name of logical replication worker
+#: replication/logical/worker.c:3902
+#, fuzzy, c-format
+#| msgid "logical replication apply worker for subscription \"%s\" will stop because the subscription was removed"
+msgid "%s 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:3058
-#, c-format
-msgid "logical replication apply worker for subscription \"%s\" will stop because the subscription was disabled"
+#. translator: first %s is the name of logical replication worker
+#: replication/logical/worker.c:3916
+#, fuzzy, c-format
+#| msgid "logical replication apply worker for subscription \"%s\" will stop because the subscription was disabled"
+msgid "%s 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:3084
-#, c-format
-msgid "logical replication apply worker for subscription \"%s\" will restart because of a parameter change"
+#: replication/logical/worker.c:3947
+#, fuzzy, c-format
+#| msgid "logical replication apply worker for subscription \"%s\" will restart because of a parameter change"
+msgid "logical replication parallel apply worker for subscription \"%s\" will stop because of a parameter change"
 msgstr "el ayudante «apply» de replicación lógica para la suscripción «%s» se reiniciará por un cambio de parámetro"
 
-#: replication/logical/worker.c:3208 replication/logical/worker.c:3230
-#, c-format
-msgid "could not read from streaming transaction's subxact file \"%s\": %m"
-msgstr "no se pudo leer el archivo subxact de transacción en flujo «%s»: %m"
+#. translator: first %s is the name of logical replication worker
+#: replication/logical/worker.c:3952
+#, fuzzy, c-format
+#| msgid "logical replication apply worker for subscription \"%s\" will restart because of a parameter change"
+msgid "%s for subscription \"%s\" will restart because of a parameter change"
+msgstr "el ayudante «apply» de replicación lógica para la suscripción «%s» se reiniciará por un cambio de parámetro"
 
-#: replication/logical/worker.c:3629
-#, c-format
-msgid "logical replication apply worker for subscription %u will not start because the subscription was removed during startup"
+#. translator: %s is the name of logical replication worker
+#: replication/logical/worker.c:4476
+#, fuzzy, c-format
+#| msgid "logical replication apply worker for subscription %u will not start because the subscription was removed during startup"
+msgid "%s 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:3641
-#, c-format
-msgid "logical replication apply worker for subscription \"%s\" will not start because the subscription was disabled during startup"
+#. translator: first %s is the name of logical replication worker
+#: replication/logical/worker.c:4492
+#, fuzzy, c-format
+#| msgid "logical replication apply worker for subscription \"%s\" will not start because the subscription was disabled during startup"
+msgid "%s 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:3659
+#: replication/logical/worker.c:4509
 #, 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:3663
-#, c-format
-msgid "logical replication apply worker for subscription \"%s\" has started"
+#. translator: first %s is the name of logical replication worker
+#: replication/logical/worker.c:4515
+#, fuzzy, c-format
+#| msgid "logical replication apply worker for subscription \"%s\" has started"
+msgid "%s 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:3704
+#: replication/logical/worker.c:4590
 #, c-format
 msgid "subscription has no replication slot set"
 msgstr "la suscripción no tiene un slot de replicación establecido"
 
-#: replication/logical/worker.c:3840
+#: replication/logical/worker.c:4757
 #, fuzzy, c-format
-#| msgid "logical replication apply worker for subscription \"%s\" has started"
+#| msgid "cursor \"%s\" has been declared but not opened"
 msgid "subscription \"%s\" has been disabled because of an error"
-msgstr "el ayudante «apply» de replicación lógica para la suscripción «%s» ha iniciado"
+msgstr "el cursor «%s» fue declarado pero no abierto"
 
-#: replication/logical/worker.c:3879
+#: replication/logical/worker.c:4805
 #, fuzzy, c-format
+#| msgid "cannot create logical replication slot in transaction that has performed writes"
 msgid "logical replication starts skipping transaction at LSN %X/%X"
-msgstr "iniciando el ignorado de la "
+msgstr "no se puede crear un slot de replicación lógica en una transacción que ha efectuado escrituras"
 
-#: replication/logical/worker.c:3893
-#, fuzzy, c-format
+#: replication/logical/worker.c:4819
+#, c-format
 msgid "logical replication completed skipping transaction at LSN %X/%X"
-msgstr "iniciando el ignorado de la "
+msgstr ""
 
-#: replication/logical/worker.c:3975
+#: replication/logical/worker.c:4901
 #, fuzzy, c-format
-#| msgid "logical replication apply worker for subscription \"%s\" has started"
+#| msgid "subscription \"%s\" already exists"
 msgid "skip-LSN of subscription \"%s\" cleared"
-msgstr "el ayudante «apply» de replicación lógica para la suscripción «%s» ha iniciado"
+msgstr "la suscripción «%s» ya existe"
 
-#: replication/logical/worker.c:3976
-#, fuzzy, c-format
-#| msgid "Remote transaction's finish WAL location (LSN) %X/%X did not match skip-LSN %X/%X."
+#: replication/logical/worker.c:4902
+#, c-format
 msgid "Remote transaction's finish WAL location (LSN) %X/%X did not match skip-LSN %X/%X."
-msgstr "El LSN de término de la transacción remota %X/%X no coincidió con el skip-LSN %X/%X."
+msgstr ""
 
-#: replication/logical/worker.c:4002
-#, fuzzy, c-format
-#| msgid "processing remote data for replication target relation \"%s.%s\" column \"%s\""
+#: replication/logical/worker.c:4928
+#, c-format
 msgid "processing remote data for replication origin \"%s\" during message type \"%s\""
-msgstr "Procesamiento de datos remotos para la relación de destino de replicación \"%s.%s\" columna \"%s\""
+msgstr ""
 
-#: replication/logical/worker.c:4006
-#, fuzzy, c-format
-#| msgid "processing remote data for replication target relation \"%s.%s\" column \"%s\""
+#: replication/logical/worker.c:4932
+#, c-format
 msgid "processing remote data for replication origin \"%s\" during message type \"%s\" in transaction %u"
-msgstr "Procesamiento de datos remotos para la relación de destino de replicación \"%s.%s\" columna \"%s\""
+msgstr ""
 
-#: replication/logical/worker.c:4011
-#, fuzzy, c-format
-#| msgid "processing remote data for replication target relation \"%s.%s\" column \"%s\""
+#: replication/logical/worker.c:4937
+#, c-format
 msgid "processing remote data for replication origin \"%s\" during message type \"%s\" in transaction %u, finished at %X/%X"
-msgstr "Procesamiento de datos remotos para la relación de destino de replicación \"%s.%s\" columna \"%s\""
+msgstr ""
 
-#: replication/logical/worker.c:4018
-#, fuzzy, c-format
-#| msgid "processing remote data for replication target relation \"%s.%s\" column \"%s\""
+#: replication/logical/worker.c:4948
+#, c-format
+msgid "processing remote data for replication origin \"%s\" during message type \"%s\" for replication target relation \"%s.%s\" in transaction %u"
+msgstr ""
+
+#: replication/logical/worker.c:4955
+#, c-format
 msgid "processing remote data for replication origin \"%s\" during message type \"%s\" for replication target relation \"%s.%s\" in transaction %u, finished at %X/%X"
-msgstr "Procesamiento de datos remotos para la relación de destino de replicación \"%s.%s\" columna \"%s\""
+msgstr ""
 
-#: replication/logical/worker.c:4026
-#, fuzzy, c-format
-#| msgid "processing remote data for replication target relation \"%s.%s\" column \"%s\""
+#: replication/logical/worker.c:4966
+#, c-format
+msgid "processing remote data for replication origin \"%s\" during message type \"%s\" for replication target relation \"%s.%s\" column \"%s\" in transaction %u"
+msgstr ""
+
+#: replication/logical/worker.c:4974
+#, c-format
 msgid "processing remote data for replication origin \"%s\" during message type \"%s\" for replication target relation \"%s.%s\" column \"%s\" in transaction %u, finished at %X/%X"
-msgstr "Procesamiento de datos remotos para la relación de destino de replicación \"%s.%s\" columna \"%s\""
+msgstr ""
 
-#: replication/pgoutput/pgoutput.c:319
+#: replication/pgoutput/pgoutput.c:318
 #, c-format
 msgid "invalid proto_version"
 msgstr "proto_version no válido"
 
-#: replication/pgoutput/pgoutput.c:324
+#: replication/pgoutput/pgoutput.c:323
 #, c-format
 msgid "proto_version \"%s\" out of range"
 msgstr "proto_version «%s» fuera de rango"
 
-#: replication/pgoutput/pgoutput.c:341
+#: replication/pgoutput/pgoutput.c:340
 #, c-format
 msgid "invalid publication_names syntax"
 msgstr "sintaxis de publication_names no válida"
 
-#: replication/pgoutput/pgoutput.c:425
-#, c-format
-msgid "client sent proto_version=%d but we only support protocol %d or lower"
+#: replication/pgoutput/pgoutput.c:443
+#, fuzzy, c-format
+#| msgid "client sent proto_version=%d but we only support protocol %d or lower"
+msgid "client sent proto_version=%d but server only supports protocol %d or lower"
 msgstr "el cliente envió proto_version=%d pero sólo soportamos el protocolo %d o inferior"
 
-#: replication/pgoutput/pgoutput.c:431
-#, c-format
-msgid "client sent proto_version=%d but we only support protocol %d or higher"
+#: replication/pgoutput/pgoutput.c:449
+#, fuzzy, c-format
+#| msgid "client sent proto_version=%d but we only support protocol %d or higher"
+msgid "client sent proto_version=%d but server only supports protocol %d or higher"
 msgstr "el cliente envió proto_version=%d pero sólo soportamos el protocolo %d o superior"
 
-#: replication/pgoutput/pgoutput.c:437
+#: replication/pgoutput/pgoutput.c:455
 #, c-format
 msgid "publication_names parameter missing"
 msgstr "parámetro publication_names faltante"
 
-#: replication/pgoutput/pgoutput.c:450
+#: replication/pgoutput/pgoutput.c:469
 #, c-format
 msgid "requested proto_version=%d does not support streaming, need %d or higher"
 msgstr "la proto_version=%d no soporta flujo, se necesita %d o superior"
 
-#: replication/pgoutput/pgoutput.c:455
+#: replication/pgoutput/pgoutput.c:475
+#, fuzzy, c-format
+#| msgid "requested proto_version=%d does not support streaming, need %d or higher"
+msgid "requested proto_version=%d does not support parallel streaming, need %d or higher"
+msgstr "la proto_version=%d no soporta flujo, se necesita %d o superior"
+
+#: replication/pgoutput/pgoutput.c:480
 #, c-format
 msgid "streaming requested, but not supported by output plugin"
 msgstr "se solicitó flujo, pero no está soportado por plugin de salida"
 
-#: replication/pgoutput/pgoutput.c:472
+#: replication/pgoutput/pgoutput.c:497
 #, fuzzy, c-format
 #| msgid "requested proto_version=%d does not support streaming, need %d or higher"
 msgid "requested proto_version=%d does not support two-phase commit, need %d or higher"
 msgstr "la proto_version=%d no soporta flujo, se necesita %d o superior"
 
-#: replication/pgoutput/pgoutput.c:477
+#: replication/pgoutput/pgoutput.c:502
 #, fuzzy, c-format
 #| msgid "streaming requested, but not supported by output plugin"
 msgid "two-phase commit requested, but not supported by output plugin"
 msgstr "se solicitó flujo, pero no está soportado por plugin de salida"
 
-#: replication/slot.c:205
+#: replication/slot.c:207
 #, 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:214
+#: replication/slot.c:216
 #, 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:227
+#: replication/slot.c:229
 #, 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:229
+#: replication/slot.c:231
 #, 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:283
+#: replication/slot.c:285
 #, c-format
 msgid "replication slot \"%s\" already exists"
 msgstr "el slot de replicación «%s» ya existe"
 
-#: replication/slot.c:293
+#: replication/slot.c:295
 #, c-format
 msgid "all replication slots are in use"
 msgstr "todos los slots de replicación están en uso"
 
-#: replication/slot.c:294
+#: replication/slot.c:296
 #, c-format
 msgid "Free one or increase max_replication_slots."
 msgstr "Libere uno o incremente max_replication_slots."
 
-#: replication/slot.c:444 replication/slotfuncs.c:727
-#: utils/activity/pgstat_replslot.c:55 utils/adt/genfile.c:704
+#: replication/slot.c:474 replication/slotfuncs.c:736
+#: utils/activity/pgstat_replslot.c:55 utils/adt/genfile.c:774
 #, c-format
 msgid "replication slot \"%s\" does not exist"
 msgstr "no existe el slot de replicación «%s»"
 
-#: replication/slot.c:490 replication/slot.c:1058
+#: replication/slot.c:520 replication/slot.c:1110
 #, 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:726 replication/slot.c:1464 replication/slot.c:1847
+#: replication/slot.c:756 replication/slot.c:1638 replication/slot.c:2021
 #, c-format
 msgid "could not remove directory \"%s\""
 msgstr "no se pudo eliminar el directorio «%s»"
 
-#: replication/slot.c:1093
+#: replication/slot.c:1145
 #, 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:1098
+#: replication/slot.c:1150
 #, 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:1110
+#: replication/slot.c:1162
+#, fuzzy, c-format
+#| msgid "permission denied for publication %s"
+msgid "permission denied to use replication slots"
+msgstr "permiso denegado a la publicación %s"
+
+#: replication/slot.c:1163
 #, 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"
+msgid "Only roles with the %s attribute may use replication slots."
+msgstr ""
+
+#: replication/slot.c:1267
+#, c-format
+msgid "The slot's restart_lsn %X/%X exceeds the limit by %llu bytes."
+msgstr ""
 
-#: replication/slot.c:1295
+#: replication/slot.c:1272
+#, fuzzy, c-format
+#| msgid "Key %s conflicts with existing key %s."
+msgid "The slot conflicted with xid horizon %u."
+msgstr "La llave %s está en conflicto con la llave existente %s."
+
+# FIXME see slot.c:779.  See also  postmaster.c:835
+#: replication/slot.c:1277
+#, fuzzy
+#| msgid "logical decoding requires wal_level >= logical"
+msgid "Logical decoding on standby requires wal_level >= logical on the primary server."
+msgstr "la decodificación lógica requiere wal_level >= logical"
+
+#: replication/slot.c:1285
 #, c-format
 msgid "terminating process %d to release replication slot \"%s\""
 msgstr "terminando el proceso %d para liberar el slot de replicación «%s»"
 
-#: replication/slot.c:1333
-#, c-format
-msgid "invalidating slot \"%s\" because its restart_lsn %X/%X exceeds max_slot_wal_keep_size"
-msgstr "invalidando el slot «%s» porque su restart_lsn %X/%X excede max_slot_wal_keep_size"
+#: replication/slot.c:1287
+#, fuzzy, c-format
+#| msgid "creating replication slot \"%s\""
+msgid "invalidating obsolete replication slot \"%s\""
+msgstr "creando el slot de replicación «%s»"
+
+#: replication/slot.c:1290
+#, fuzzy, c-format
+#| msgid "You might need to increase max_worker_processes."
+msgid "You might need to increase max_slot_wal_keep_size."
+msgstr "Puede ser necesario incrementar max_worker_processes."
 
-#: replication/slot.c:1785
+#: replication/slot.c:1959
 #, 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:1792
+#: replication/slot.c:1966
 #, 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:1799
+#: replication/slot.c:1973
 #, 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:1835
+#: replication/slot.c:2009
 #, c-format
 msgid "checksum mismatch for replication slot file \"%s\": is %u, should be %u"
 msgstr "suma de verificación no coincidente 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:1869
+#: replication/slot.c:2043
 #, 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:1871
+#: replication/slot.c:2045
 #, 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:1875
+#: replication/slot.c:2049
 #, 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:1877
+#: replication/slot.c:2051
 #, c-format
 msgid "Change wal_level to be replica or higher."
 msgstr "Cambie wal_level a replica o superior."
 
-#: replication/slot.c:1911
+#: replication/slot.c:2085
 #, c-format
 msgid "too many replication slots active before shutdown"
 msgstr "demasiados slots de replicación activos antes del apagado"
 
-#: replication/slotfuncs.c:592
+#: replication/slotfuncs.c:601
 #, c-format
 msgid "invalid target WAL LSN"
 msgstr "el LSN de wal de destino no es válido"
 
-#: replication/slotfuncs.c:614
+#: replication/slotfuncs.c:623
 #, c-format
 msgid "replication slot \"%s\" cannot be advanced"
 msgstr "no se puede avanzar el slot de replicación «%s»"
 
-#: replication/slotfuncs.c:632
+#: replication/slotfuncs.c:625
+#, c-format
+msgid "This slot has never previously reserved WAL, or it has been invalidated."
+msgstr "Este slot nunca ha reservado WAL previamente, o ha sido invalidado."
+
+#: replication/slotfuncs.c:641
 #, 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:739
+#: replication/slotfuncs.c:748
 #, 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:741
+#: replication/slotfuncs.c:750
 #, 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:748
+#: replication/slotfuncs.c:757
 #, 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:825
+#: replication/slotfuncs.c:834
 #, c-format
 msgid "could not copy replication slot \"%s\""
 msgstr "no se pudo copiar el slot de replicación «%s»"
 
-#: replication/slotfuncs.c:827
+#: replication/slotfuncs.c:836
 #, 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/slotfuncs.c:833
+#: replication/slotfuncs.c:842
 #, c-format
 msgid "cannot copy unfinished logical replication slot \"%s\""
 msgstr "no se puede copiar el slot de replicación lógica no terminado «%s»"
 
-#: replication/slotfuncs.c:835
+#: replication/slotfuncs.c:844
 #, c-format
 msgid "Retry when the source replication slot's confirmed_flush_lsn is valid."
 msgstr "Reintente cuando el confirmed_flush_lsn del slot de replicación de origen sea válido."
 
-#: replication/syncrep.c:268
+#: replication/syncrep.c:262
 #, 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:269 replication/syncrep.c:286
+#: replication/syncrep.c:263 replication/syncrep.c:280
 #, 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:285
+#: replication/syncrep.c:279
 #, 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:494
+#: replication/syncrep.c:486
 #, 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:498
+#: replication/syncrep.c:490
 #, 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:1045
+#: replication/syncrep.c:1019
 #, c-format
 msgid "synchronous_standby_names parser failed"
 msgstr "falló la interpretación de synchronous_standby_names"
 
-#: replication/syncrep.c:1051
+#: replication/syncrep.c:1025
 #, 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:164
+#: replication/walreceiver.c:180
 #, c-format
 msgid "terminating walreceiver process due to administrator command"
 msgstr "terminando el proceso walreceiver debido a una orden del administrador"
 
-#: replication/walreceiver.c:292
+#: replication/walreceiver.c:305
 #, c-format
 msgid "could not connect to the primary server: %s"
 msgstr "no se pudo conectar al servidor primario: %s"
 
-#: replication/walreceiver.c:339
+#: replication/walreceiver.c:352
 #, 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:340
+#: replication/walreceiver.c:353
 #, 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:351
+#: replication/walreceiver.c:364
 #, 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:404
+#: replication/walreceiver.c:417
 #, 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:408
+#: replication/walreceiver.c:421
 #, 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:437
+#: replication/walreceiver.c:457
 #, 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:475
+#: replication/walreceiver.c:501
 #, c-format
 msgid "replication terminated by primary server"
 msgstr "replicación terminada por el servidor primario"
 
-#: replication/walreceiver.c:476
+#: replication/walreceiver.c:502
 #, 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:565
+#: replication/walreceiver.c:592
 #, 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:603
+#: replication/walreceiver.c:624
 #, 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:619 replication/walreceiver.c:1045
-#, c-format
-msgid "could not close log segment %s: %m"
+#: replication/walreceiver.c:640 replication/walreceiver.c:1066
+#, fuzzy, c-format
+#| msgid "could not close log segment %s: %m"
+msgid "could not close WAL segment %s: %m"
 msgstr "no se pudo cerrar archivo de segmento %s: %m"
 
-#: replication/walreceiver.c:738
+#: replication/walreceiver.c:759
 #, 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"
 
-#: replication/walreceiver.c:933
-#, c-format
-msgid "could not write to log segment %s at offset %u, length %lu: %m"
+#: replication/walreceiver.c:954
+#, fuzzy, c-format
+#| msgid "could not write to log segment %s at offset %u, length %lu: %m"
+msgid "could not write to WAL 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:521
+#: replication/walsender.c:519
 #, fuzzy, c-format
 #| msgid "cannot read from logical replication slot \"%s\""
 msgid "cannot use %s with a logical replication slot"
 msgstr "no se puede leer del slot de replicación lógica «%s»"
 
-#: replication/walsender.c:638 storage/smgr/md.c:1350
+#: replication/walsender.c:623 storage/smgr/md.c:1526
 #, 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:642
+#: replication/walsender.c:627
 #, 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:719
+#: replication/walsender.c:704
 #, 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:785
+#: replication/walsender.c:770
 #, 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:788
+#: replication/walsender.c:773
 #, 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:832
+#: replication/walsender.c:817
 #, 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"
 
-#: replication/walsender.c:1015
+#: replication/walsender.c:1010
 #, fuzzy, c-format
 #| msgid "unrecognized value for EXPLAIN option \"%s\": \"%s\""
 msgid "unrecognized value for CREATE_REPLICATION_SLOT option \"%s\": \"%s\""
 msgstr "valor no reconocido para la opción de EXPLAIN «%s»: «%s»"
 
 #. translator: %s is a CREATE_REPLICATION_SLOT statement
-#: replication/walsender.c:1100
+#: replication/walsender.c:1095
 #, 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:1110
+#: replication/walsender.c:1105
 #, 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:1116
+#: replication/walsender.c:1111
 #, 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:1116
+#, fuzzy, c-format
+#| msgid "%s must be called inside a transaction"
+msgid "%s must be called in a read only transaction"
+msgstr "%s no debe ser ejecutado dentro de una transacción"
+
 #. translator: %s is a CREATE_REPLICATION_SLOT statement
 #: replication/walsender.c:1122
 #, c-format
@@ -20479,489 +21103,442 @@ msgstr "%s debe ser llamado antes de cualquier consulta"
 msgid "%s must not be called in a subtransaction"
 msgstr "%s no está permitido en una subtransacción"
 
-#: replication/walsender.c:1271
-#, c-format
-msgid "cannot read from logical replication slot \"%s\""
-msgstr "no se puede leer del slot de replicación lógica «%s»"
-
-#: replication/walsender.c:1273
-#, c-format
-msgid "This slot has been invalidated because it exceeded the maximum reserved size."
-msgstr "Este slot ha sido invalidado porque excedió el máximo del tamaño de reserva."
-
-#: replication/walsender.c:1283
+#: replication/walsender.c:1275
 #, c-format
 msgid "terminating walsender process after promotion"
 msgstr "terminando el proceso walsender luego de la promoción"
 
-#: replication/walsender.c:1704
+#: replication/walsender.c:1696
 #, 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:1739
+#: replication/walsender.c:1731
 #, 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:1772
+#: replication/walsender.c:1764
 #, c-format
 msgid "received replication command: %s"
 msgstr "se recibió orden de replicación: %s"
 
-#: replication/walsender.c:1780 tcop/fastpath.c:208 tcop/postgres.c:1114
-#: tcop/postgres.c:1472 tcop/postgres.c:1712 tcop/postgres.c:2181
-#: tcop/postgres.c:2602 tcop/postgres.c:2680
+#: replication/walsender.c:1772 tcop/fastpath.c:209 tcop/postgres.c:1138
+#: tcop/postgres.c:1496 tcop/postgres.c:1736 tcop/postgres.c:2210
+#: tcop/postgres.c:2648 tcop/postgres.c:2726
 #, 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:1922 replication/walsender.c:1957
+#: replication/walsender.c:1914 replication/walsender.c:1949
 #, c-format
 msgid "unexpected EOF on standby connection"
 msgstr "se encontró fin de archivo inesperado en la conexión standby"
 
-#: replication/walsender.c:1945
+#: replication/walsender.c:1937
 #, c-format
 msgid "invalid standby message type \"%c\""
 msgstr "el tipo «%c» de mensaje del standby no es válido"
 
-#: replication/walsender.c:2034
+#: replication/walsender.c:2026
 #, c-format
 msgid "unexpected message type \"%c\""
 msgstr "mensaje de tipo «%c» inesperado"
 
-#: replication/walsender.c:2447
+#: replication/walsender.c:2439
 #, 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"
 
-#: rewrite/rewriteDefine.c:112 rewrite/rewriteDefine.c:1001
+#: rewrite/rewriteDefine.c:111 rewrite/rewriteDefine.c:842
 #, c-format
 msgid "rule \"%s\" for relation \"%s\" already exists"
 msgstr "ya existe una regla llamada «%s» para la relación «%s»"
 
-#: rewrite/rewriteDefine.c:271 rewrite/rewriteDefine.c:939
+#: rewrite/rewriteDefine.c:268 rewrite/rewriteDefine.c:780
 #, fuzzy, c-format
 #| msgid "portal \"%s\" cannot be run"
 msgid "relation \"%s\" cannot have rules"
 msgstr "el portal «%s» no puede ser ejecutado"
 
-#: rewrite/rewriteDefine.c:302
+#: rewrite/rewriteDefine.c:299
 #, c-format
 msgid "rule actions on OLD are not implemented"
 msgstr "las acciones de regla en OLD no están implementadas"
 
-#: rewrite/rewriteDefine.c:303
+#: rewrite/rewriteDefine.c:300
 #, c-format
 msgid "Use views or triggers instead."
 msgstr "Use vistas o triggers en su lugar."
 
-#: rewrite/rewriteDefine.c:307
+#: rewrite/rewriteDefine.c:304
 #, c-format
 msgid "rule actions on NEW are not implemented"
 msgstr "las acciones de regla en NEW no están implementadas"
 
-#: rewrite/rewriteDefine.c:308
+#: rewrite/rewriteDefine.c:305
 #, c-format
 msgid "Use triggers instead."
 msgstr "Use triggers en su lugar."
 
-#: rewrite/rewriteDefine.c:321
+#: rewrite/rewriteDefine.c:319
+#, fuzzy, c-format
+#| msgid "cursor \"%s\" is not a SELECT query"
+msgid "relation \"%s\" cannot have ON SELECT rules"
+msgstr "el cursor «%s» no es una orden SELECT"
+
+#: rewrite/rewriteDefine.c:329
 #, c-format
 msgid "INSTEAD NOTHING rules on SELECT are not implemented"
 msgstr "las reglas INSTEAD NOTHING en SELECT no están implementadas"
 
-#: rewrite/rewriteDefine.c:322
+#: rewrite/rewriteDefine.c:330
 #, c-format
 msgid "Use views instead."
 msgstr "Use vistas en su lugar."
 
-#: rewrite/rewriteDefine.c:330
+#: rewrite/rewriteDefine.c:338
 #, c-format
 msgid "multiple actions for rules on SELECT are not implemented"
 msgstr "las reglas de múltiples acciones en SELECT no están implementadas"
 
-#: rewrite/rewriteDefine.c:340
+#: rewrite/rewriteDefine.c:348
 #, c-format
 msgid "rules on SELECT must have action INSTEAD SELECT"
 msgstr "las reglas en SELECT deben tener una acción INSTEAD SELECT"
 
-#: rewrite/rewriteDefine.c:348
+#: rewrite/rewriteDefine.c:356
 #, c-format
 msgid "rules on SELECT must not contain data-modifying statements in WITH"
 msgstr "las reglas en SELECT no deben contener sentencias que modifiquen datos en WITH"
 
-#: rewrite/rewriteDefine.c:356
+#: rewrite/rewriteDefine.c:364
 #, c-format
 msgid "event qualifications are not implemented for rules on SELECT"
 msgstr "las calificaciones de eventos no están implementadas para las reglas en SELECT"
 
-#: rewrite/rewriteDefine.c:383
+#: rewrite/rewriteDefine.c:391
 #, c-format
 msgid "\"%s\" is already a view"
 msgstr "«%s» ya es una vista"
 
-#: rewrite/rewriteDefine.c:407
+#: rewrite/rewriteDefine.c:415
 #, c-format
 msgid "view rule for \"%s\" must be named \"%s\""
 msgstr "la regla de vista para «%s» debe llamarse «%s»"
 
-#: rewrite/rewriteDefine.c:436
-#, c-format
-msgid "cannot convert partitioned table \"%s\" to a view"
-msgstr "no se puede convertir la tabla particionada «%s» en vista"
-
-#: rewrite/rewriteDefine.c:445
-#, c-format
-msgid "cannot convert partition \"%s\" to a view"
-msgstr "no se puede convertir la partición «%s» en vista"
-
-#: rewrite/rewriteDefine.c:454
-#, c-format
-msgid "could not convert table \"%s\" to a view because it is not empty"
-msgstr "no se pudo convertir la tabla «%s» en vista porque no está vacía"
-
-#: rewrite/rewriteDefine.c:463
-#, c-format
-msgid "could not convert table \"%s\" to a view because it has triggers"
-msgstr "no se pudo convertir la tabla «%s» en vista porque tiene triggers"
-
-#: rewrite/rewriteDefine.c:465
-#, c-format
-msgid "In particular, the table cannot be involved in any foreign key relationships."
-msgstr "En particular, la tabla no puede estar involucrada en relaciones de llave foránea."
-
-#: rewrite/rewriteDefine.c:470
-#, c-format
-msgid "could not convert table \"%s\" to a view because it has indexes"
-msgstr "no se pudo convertir la tabla «%s» en vista porque tiene índices"
-
-#: rewrite/rewriteDefine.c:476
-#, c-format
-msgid "could not convert table \"%s\" to a view because it has child tables"
-msgstr "no se pudo convertir la tabla «%s» en vista porque tiene tablas hijas"
-
-#: rewrite/rewriteDefine.c:482
-#, c-format
-msgid "could not convert table \"%s\" to a view because it has parent tables"
-msgstr "no se pudo convertir la tabla «%s» en vista porque tiene tablas padres"
-
-#: rewrite/rewriteDefine.c:488
-#, c-format
-msgid "could not convert table \"%s\" to a view because it has row security enabled"
-msgstr "no se pudo convertir la tabla «%s» en vista porque tiene seguridad de registros activada"
-
-#: rewrite/rewriteDefine.c:494
-#, c-format
-msgid "could not convert table \"%s\" to a view because it has row security policies"
-msgstr "no se pudo convertir la tabla «%s» en vista porque tiene políticas de seguridad de registros"
-
-#: rewrite/rewriteDefine.c:521
+#: rewrite/rewriteDefine.c:442
 #, c-format
 msgid "cannot have multiple RETURNING lists in a rule"
 msgstr "no se pueden tener múltiples listas RETURNING en una regla"
 
-#: rewrite/rewriteDefine.c:526
+#: rewrite/rewriteDefine.c:447
 #, c-format
 msgid "RETURNING lists are not supported in conditional rules"
 msgstr "listas de RETURNING no están soportadas en reglas condicionales"
 
-#: rewrite/rewriteDefine.c:530
+#: rewrite/rewriteDefine.c:451
 #, c-format
 msgid "RETURNING lists are not supported in non-INSTEAD rules"
 msgstr "listas de RETURNING no están soportadas en reglas que no estén marcadas INSTEAD"
 
-#: rewrite/rewriteDefine.c:694
+#: rewrite/rewriteDefine.c:465
+#, fuzzy, c-format
+#| msgid "view rule for \"%s\" must be named \"%s\""
+msgid "non-view rule for \"%s\" must not be named \"%s\""
+msgstr "la regla de vista para «%s» debe llamarse «%s»"
+
+#: rewrite/rewriteDefine.c:539
 #, c-format
 msgid "SELECT rule's target list has too many entries"
 msgstr "la lista de destinos en la regla de SELECT tiene demasiadas entradas"
 
-#: rewrite/rewriteDefine.c:695
+#: rewrite/rewriteDefine.c:540
 #, c-format
 msgid "RETURNING list has too many entries"
 msgstr "la lista de RETURNING tiene demasiadas entradas"
 
-#: rewrite/rewriteDefine.c:722
+#: rewrite/rewriteDefine.c:567
 #, c-format
 msgid "cannot convert relation containing dropped columns to view"
 msgstr "no se puede convertir en vista una relación que contiene columnas eliminadas"
 
-#: rewrite/rewriteDefine.c:723
+#: rewrite/rewriteDefine.c:568
 #, c-format
 msgid "cannot create a RETURNING list for a relation containing dropped columns"
 msgstr "no se puede crear una lista RETURNING para una relación que contiene columnas eliminadas"
 
-#: rewrite/rewriteDefine.c:729
+#: rewrite/rewriteDefine.c:574
 #, c-format
 msgid "SELECT rule's target entry %d has different column name from column \"%s\""
 msgstr "la entrada de destino %d de la regla de SELECT tiene un nombre de columna diferente de «%s»"
 
-#: rewrite/rewriteDefine.c:731
+#: rewrite/rewriteDefine.c:576
 #, c-format
 msgid "SELECT target entry is named \"%s\"."
 msgstr "La entrada de destino de SELECT tiene nombre «%s»."
 
-#: rewrite/rewriteDefine.c:740
+#: rewrite/rewriteDefine.c:585
 #, c-format
 msgid "SELECT rule's target entry %d has different type from column \"%s\""
 msgstr "el destino %d de la regla de SELECT tiene un tipo diferente de la columna «%s»"
 
-#: rewrite/rewriteDefine.c:742
+#: rewrite/rewriteDefine.c:587
 #, c-format
 msgid "RETURNING list's entry %d has different type from column \"%s\""
 msgstr "el destino %d de la lista de RETURNING tiene un tipo diferente de la columna «%s»"
 
-#: rewrite/rewriteDefine.c:745 rewrite/rewriteDefine.c:769
+#: rewrite/rewriteDefine.c:590 rewrite/rewriteDefine.c:614
 #, c-format
 msgid "SELECT target entry has type %s, but column has type %s."
 msgstr "La entrada de destino de SELECT tiene un tipo «%s», pero la columna tiene tipo «%s»."
 
-#: rewrite/rewriteDefine.c:748 rewrite/rewriteDefine.c:773
+#: rewrite/rewriteDefine.c:593 rewrite/rewriteDefine.c:618
 #, c-format
 msgid "RETURNING list entry has type %s, but column has type %s."
 msgstr "una entrada de la lista RETURNING tiene tipo %s, pero la columna tiene tipo %s."
 
-#: rewrite/rewriteDefine.c:764
+#: rewrite/rewriteDefine.c:609
 #, c-format
 msgid "SELECT rule's target entry %d has different size from column \"%s\""
 msgstr "el destino %d de la regla de SELECT tiene un tamaño diferente de la columna «%s»"
 
-#: rewrite/rewriteDefine.c:766
+#: rewrite/rewriteDefine.c:611
 #, c-format
 msgid "RETURNING list's entry %d has different size from column \"%s\""
 msgstr "el destino %d de la lista RETURNING tiene un tamaño diferente de la columna «%s»"
 
-#: rewrite/rewriteDefine.c:783
+#: rewrite/rewriteDefine.c:628
 #, c-format
 msgid "SELECT rule's target list has too few entries"
 msgstr "la lista de destinos de regla de SELECT tiene muy pocas entradas"
 
-#: rewrite/rewriteDefine.c:784
+#: rewrite/rewriteDefine.c:629
 #, c-format
 msgid "RETURNING list has too few entries"
 msgstr "la lista de RETURNING tiene muy pocas entradas"
 
-#: rewrite/rewriteDefine.c:877 rewrite/rewriteDefine.c:992
+#: rewrite/rewriteDefine.c:718 rewrite/rewriteDefine.c:833
 #: rewrite/rewriteSupport.c:109
 #, c-format
 msgid "rule \"%s\" for relation \"%s\" does not exist"
 msgstr "no existe la regla «%s» para la relación «%s»"
 
-#: rewrite/rewriteDefine.c:1011
+#: rewrite/rewriteDefine.c:852
 #, c-format
 msgid "renaming an ON SELECT rule is not allowed"
 msgstr "no se permite cambiar el nombre de una regla ON SELECT"
 
-#: rewrite/rewriteHandler.c:554
+#: rewrite/rewriteHandler.c:581
 #, 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:581
-#, c-format
-msgid "INSERT...SELECT rule actions are not supported for queries having data-modifying statements in WITH"
+#: rewrite/rewriteHandler.c:608
+#, fuzzy, c-format
+#| msgid "INSERT...SELECT rule actions are not supported for queries having data-modifying statements in WITH"
+msgid "INSERT ... SELECT rule actions are not supported for queries having data-modifying statements in WITH"
 msgstr "las acciones de reglas INSERT...SELECT no están soportadas para consultas que tengan sentencias que modifiquen datos en WITH"
 
-#: rewrite/rewriteHandler.c:634
+#: rewrite/rewriteHandler.c:661
 #, c-format
 msgid "cannot have RETURNING lists in multiple rules"
 msgstr "no se puede usar RETURNING en múltiples reglas"
 
-#: rewrite/rewriteHandler.c:866 rewrite/rewriteHandler.c:905
+#: rewrite/rewriteHandler.c:893 rewrite/rewriteHandler.c:932
 #, c-format
 msgid "cannot insert a non-DEFAULT value into column \"%s\""
 msgstr "no se puede insertar un valor no-predeterminado en la columna «%s»"
 
-#: rewrite/rewriteHandler.c:868 rewrite/rewriteHandler.c:934
+#: rewrite/rewriteHandler.c:895 rewrite/rewriteHandler.c:961
 #, 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:870
+#: rewrite/rewriteHandler.c:897
 #, c-format
 msgid "Use OVERRIDING SYSTEM VALUE to override."
 msgstr "Use OVERRIDING SYSTEM VALUE para controlar manualmente."
 
-#: rewrite/rewriteHandler.c:932 rewrite/rewriteHandler.c:940
+#: rewrite/rewriteHandler.c:959 rewrite/rewriteHandler.c:967
 #, c-format
 msgid "column \"%s\" can only be updated to DEFAULT"
 msgstr "la columna «%s» sólo puede actualizarse a DEFAULT"
 
-#: rewrite/rewriteHandler.c:1087 rewrite/rewriteHandler.c:1105
+#: rewrite/rewriteHandler.c:1114 rewrite/rewriteHandler.c:1132
 #, c-format
 msgid "multiple assignments to same column \"%s\""
 msgstr "hay múltiples asignaciones a la misma columna «%s»"
 
-#: rewrite/rewriteHandler.c:2111 rewrite/rewriteHandler.c:3978
+#: rewrite/rewriteHandler.c:2118 rewrite/rewriteHandler.c:4039
 #, 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»"
 
-#: rewrite/rewriteHandler.c:2196
+#: rewrite/rewriteHandler.c:2203
 #, 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:2516
+#: rewrite/rewriteHandler.c:2523
 msgid "Junk view columns are not updatable."
 msgstr "Las columnas «basura» de vistas no son actualizables."
 
-#: rewrite/rewriteHandler.c:2521
+#: rewrite/rewriteHandler.c:2528
 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:2524
+#: rewrite/rewriteHandler.c:2531
 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:2527
+#: rewrite/rewriteHandler.c:2534
 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:2588
+#: rewrite/rewriteHandler.c:2595
 msgid "Views containing DISTINCT are not automatically updatable."
 msgstr "Las vistas que contienen DISTINCT no son automáticamente actualizables."
 
-#: rewrite/rewriteHandler.c:2591
+#: rewrite/rewriteHandler.c:2598
 msgid "Views containing GROUP BY are not automatically updatable."
 msgstr "Las vistas que contienen GROUP BY no son automáticamente actualizables."
 
-#: rewrite/rewriteHandler.c:2594
+#: rewrite/rewriteHandler.c:2601
 msgid "Views containing HAVING are not automatically updatable."
 msgstr "Las vistas que contienen HAVING no son automáticamente actualizables."
 
-#: rewrite/rewriteHandler.c:2597
+#: rewrite/rewriteHandler.c:2604
 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:2600
+#: rewrite/rewriteHandler.c:2607
 msgid "Views containing WITH are not automatically updatable."
 msgstr "Las vistas que contienen WITH no son automáticamente actualizables."
 
-#: rewrite/rewriteHandler.c:2603
+#: rewrite/rewriteHandler.c:2610
 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:2615
+#: rewrite/rewriteHandler.c:2622
 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:2618
+#: rewrite/rewriteHandler.c:2625
 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:2621
+#: rewrite/rewriteHandler.c:2628
 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:2628 rewrite/rewriteHandler.c:2632
-#: rewrite/rewriteHandler.c:2640
+#: rewrite/rewriteHandler.c:2635 rewrite/rewriteHandler.c:2639
+#: rewrite/rewriteHandler.c:2647
 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:2643
+#: rewrite/rewriteHandler.c:2650
 msgid "Views containing TABLESAMPLE are not automatically updatable."
 msgstr "Las vistas que contienen TABLESAMPLE no son automáticamente actualizables."
 
-#: rewrite/rewriteHandler.c:2667
+#: rewrite/rewriteHandler.c:2674
 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:3144
+#: rewrite/rewriteHandler.c:3154
 #, 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:3152
+#: rewrite/rewriteHandler.c:3162
 #, c-format
 msgid "cannot update column \"%s\" of view \"%s\""
 msgstr "no se puede actualizar la columna «%s» vista «%s»"
 
-#: rewrite/rewriteHandler.c:3639
+#: rewrite/rewriteHandler.c:3666
 #, c-format
 msgid "DO INSTEAD NOTIFY rules are not supported for data-modifying statements in WITH"
 msgstr "las reglas DO INSTEAD NOTIFY no están soportadas para sentencias que modifiquen datos en WITH"
 
-#: rewrite/rewriteHandler.c:3650
+#: rewrite/rewriteHandler.c:3677
 #, 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:3664
+#: rewrite/rewriteHandler.c:3691
 #, 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:3668
+#: rewrite/rewriteHandler.c:3695
 #, 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:3673
+#: rewrite/rewriteHandler.c:3700
 #, 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"
 
 # XXX a %s here would be nice ...
-#: rewrite/rewriteHandler.c:3906 rewrite/rewriteHandler.c:3914
-#: rewrite/rewriteHandler.c:3922
+#: rewrite/rewriteHandler.c:3967 rewrite/rewriteHandler.c:3975
+#: rewrite/rewriteHandler.c:3983
 #, c-format
 msgid "Views with conditional DO INSTEAD rules are not automatically updatable."
 msgstr "Las vistas con reglas DO INSTEAD condicionales no son automáticamente actualizables."
 
-#: rewrite/rewriteHandler.c:4015
+#: rewrite/rewriteHandler.c:4088
 #, 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:4017
+#: rewrite/rewriteHandler.c:4090
 #, 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:4022
+#: rewrite/rewriteHandler.c:4095
 #, 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:4024
+#: rewrite/rewriteHandler.c:4097
 #, 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:4029
+#: rewrite/rewriteHandler.c:4102
 #, 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:4031
+#: rewrite/rewriteHandler.c:4104
 #, 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:4049
+#: rewrite/rewriteHandler.c:4122
 #, 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:4106
+#: rewrite/rewriteHandler.c:4179
 #, 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:1006
+#: rewrite/rewriteManip.c:1070
 #, c-format
 msgid "conditional utility statements are not implemented"
 msgstr "las sentencias condicionales de utilidad no están implementadas"
 
-#: rewrite/rewriteManip.c:1172
+#: rewrite/rewriteManip.c:1414
 #, 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:1507
+#: rewrite/rewriteManip.c:1749
 #, 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"
@@ -21008,204 +21585,233 @@ msgstr "el objeto de estadísticas «%s.%s» no pudo ser calculado para la relac
 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:603 storage/buffer/bufmgr.c:773
+#: storage/buffer/bufmgr.c:612 storage/buffer/bufmgr.c:769
 #, c-format
 msgid "cannot access temporary tables of other sessions"
 msgstr "no se pueden acceder tablas temporales de otras sesiones"
 
-#: storage/buffer/bufmgr.c:851
+#: storage/buffer/bufmgr.c:1138
+#, 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:1932 storage/buffer/localbuf.c:359
 #, c-format
 msgid "cannot extend relation %s beyond %u blocks"
 msgstr "no se puede extender la relación %s más allá de %u bloques"
 
-#: storage/buffer/bufmgr.c:938
+#: storage/buffer/bufmgr.c:1999
 #, 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:940
+#: storage/buffer/bufmgr.c:2001
 #, 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:1039
-#, 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:4669
+#: storage/buffer/bufmgr.c:5213
 #, c-format
 msgid "could not write block %u of %s"
 msgstr "no se pudo escribir el bloque %u de %s"
 
-#: storage/buffer/bufmgr.c:4671
+#: storage/buffer/bufmgr.c:5215
 #, 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:4692 storage/buffer/bufmgr.c:4711
+#: storage/buffer/bufmgr.c:5237 storage/buffer/bufmgr.c:5257
 #, c-format
 msgid "writing block %u of relation %s"
 msgstr "escribiendo el bloque %u de la relación %s"
 
-#: storage/buffer/bufmgr.c:5015
+#: storage/buffer/bufmgr.c:5575
 #, c-format
 msgid "snapshot too old"
 msgstr "snapshot demasiado antiguo"
 
-#: storage/buffer/localbuf.c:205
+#: storage/buffer/localbuf.c:219
 #, c-format
 msgid "no empty local buffer available"
 msgstr "no hay ningún búfer local disponible"
 
-#: storage/buffer/localbuf.c:433
+#: storage/buffer/localbuf.c:592
 #, c-format
 msgid "cannot access temporary tables during a parallel operation"
 msgstr "no se pueden acceder tablas temporales durante una operación paralela"
 
-#: storage/file/buffile.c:333
+#: storage/buffer/localbuf.c:699
+#, 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."
+
+#: storage/file/buffile.c:339
 #, c-format
 msgid "could not open temporary file \"%s\" from BufFile \"%s\": %m"
 msgstr "no se pudo abrir archivo temporal «%s» del BufFile «%s»: %m"
 
-#: storage/file/buffile.c:723 storage/file/buffile.c:844
+#: storage/file/buffile.c:633
+#, fuzzy, c-format
+#| msgid "could not read block %u in file \"%s\": read only %d of %d bytes"
+msgid "could not read from file set \"%s\": read only %zu of %zu bytes"
+msgstr "no se pudo leer el bloque %u del archivo «%s»: se leyeron sólo %d de %d bytes"
+
+#: storage/file/buffile.c:635
+#, fuzzy, c-format
+#| msgid "could not read from hash-join temporary file: read only %zu of %zu bytes"
+msgid "could not read from temporary file: read only %zu of %zu bytes"
+msgstr "no se pudo leer el archivo temporal de hash-join: se leyeron sólo %zu de %zu bytes"
+
+#: storage/file/buffile.c:775 storage/file/buffile.c:896
 #, c-format
 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/buffile.c:923
+#: storage/file/buffile.c:975
 #, fuzzy, c-format
 #| msgid "could not delete file \"%s\": %m"
 msgid "could not delete fileset \"%s\": %m"
 msgstr "no se pudo borrar el archivo «%s»: %m"
 
-#: storage/file/buffile.c:941 storage/smgr/md.c:310 storage/smgr/md.c:890
+#: storage/file/buffile.c:993 storage/smgr/md.c:335 storage/smgr/md.c:1038
 #, c-format
 msgid "could not truncate file \"%s\": %m"
 msgstr "no se pudo truncar el archivo «%s»: %m"
 
-#: storage/file/fd.c:522 storage/file/fd.c:594 storage/file/fd.c:630
+#: storage/file/fd.c:516 storage/file/fd.c:588 storage/file/fd.c:624
 #, c-format
 msgid "could not flush dirty data: %m"
 msgstr "no se pudo sincronizar (flush) datos «sucios»: %m"
 
-#: storage/file/fd.c:552
+#: storage/file/fd.c:546
 #, 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:604
+#: storage/file/fd.c:598
 #, 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:843
-#, 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:967
+#: storage/file/fd.c:894
 #, c-format
 msgid "getrlimit failed: %m"
 msgstr "getrlimit falló: %m"
 
-#: storage/file/fd.c:1057
+#: storage/file/fd.c:984
 #, 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:1058
-#, c-format
-msgid "System allows %d, we need at least %d."
+#: storage/file/fd.c:985
+#, fuzzy, c-format
+#| msgid "System allows %d, we need at least %d."
+msgid "System allows %d, server needs at least %d."
 msgstr "El sistema permite %d, se requieren al menos %d."
 
-#: storage/file/fd.c:1153 storage/file/fd.c:2496 storage/file/fd.c:2606
-#: storage/file/fd.c:2757
+#: storage/file/fd.c:1073 storage/file/fd.c:2515 storage/file/fd.c:2624
+#: storage/file/fd.c:2775
 #, 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:1527
+#: storage/file/fd.c:1447
 #, c-format
 msgid "temporary file: path \"%s\", size %lu"
 msgstr "archivo temporal: ruta «%s», tamaño %lu"
 
-#: storage/file/fd.c:1658
+#: storage/file/fd.c:1586
 #, c-format
 msgid "cannot create temporary directory \"%s\": %m"
 msgstr "no se pudo crear el directorio temporal «%s»: %m"
 
-#: storage/file/fd.c:1665
+#: storage/file/fd.c:1593
 #, c-format
 msgid "cannot create temporary subdirectory \"%s\": %m"
 msgstr "no se pudo crear el subdirectorio temporal «%s»: %m"
 
-#: storage/file/fd.c:1862
+#: storage/file/fd.c:1790
 #, c-format
 msgid "could not create temporary file \"%s\": %m"
 msgstr "no se pudo crear el archivo temporal «%s»: %m"
 
-#: storage/file/fd.c:1898
+#: storage/file/fd.c:1826
 #, c-format
 msgid "could not open temporary file \"%s\": %m"
 msgstr "no se pudo abrir el archivo temporal «%s»: %m"
 
-#: storage/file/fd.c:1939
+#: storage/file/fd.c:1867
 #, c-format
 msgid "could not unlink temporary file \"%s\": %m"
 msgstr "no se pudo eliminar (unlink) el archivo temporal «%s»: %m"
 
-#: storage/file/fd.c:2027
+#: storage/file/fd.c:1955
 #, c-format
 msgid "could not delete file \"%s\": %m"
 msgstr "no se pudo borrar el archivo «%s»: %m"
 
-#: storage/file/fd.c:2207
+#: storage/file/fd.c:2138
 #, 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:2472 storage/file/fd.c:2531
+#: storage/file/fd.c:2491 storage/file/fd.c:2550
 #, 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:2576
+#: storage/file/fd.c:2595
 #, 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:2733
+#: storage/file/fd.c:2751
 #, 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:3269
+#: storage/file/fd.c:3281
 #, c-format
 msgid "unexpected file found in temporary-files directory: \"%s\""
 msgstr "archivo inesperado en directorio de archivos temporales: «%s»"
 
-#: storage/file/fd.c:3387
+#: storage/file/fd.c:3399
 #, c-format
 msgid "syncing data directory (syncfs), elapsed time: %ld.%02d s, current path: %s"
 msgstr "sincronizando el directorio de datos (syncfs), transcurrido: %ld.%02d s, ruta actual: %s"
 
-#: storage/file/fd.c:3401
+#: storage/file/fd.c:3413
 #, c-format
 msgid "could not synchronize file system for file \"%s\": %m"
 msgstr "no se pudo sincronizar el sistema de archivos para el archivo «%s»: %m"
 
-#: storage/file/fd.c:3619
+#: storage/file/fd.c:3626
 #, c-format
 msgid "syncing data directory (pre-fsync), elapsed time: %ld.%02d s, current path: %s"
 msgstr "sincronizando el directorio de datos (pre-fsync), transcurrido: %ld.%02d s, ruta actual: %s"
 
-#: storage/file/fd.c:3651
+#: storage/file/fd.c:3658
 #, c-format
 msgid "syncing data directory (fsync), elapsed time: %ld.%02d s, current path: %s"
 msgstr "sincronizando el directorio de datos (fsync), transcurrido: %ld.%02d s, ruta actual: %s"
 
-#: storage/file/reinit.c:145
+#: storage/file/fd.c:3847
+#, fuzzy, c-format
+#| msgid "Direct I/O is not supported on this platform.\n"
+msgid "io_direct is not supported on this platform."
+msgstr "Direct I/O no está soportado en esta plataforma.\n"
+
+#: storage/file/fd.c:3894
+#, c-format
+msgid "io_direct is not supported for WAL because XLOG_BLCKSZ is too small"
+msgstr ""
+
+#: storage/file/fd.c:3901
+#, c-format
+msgid "io_direct is not supported for data because BLCKSZ is too small"
+msgstr ""
+
+#: storage/file/reinit.c:145
 #, c-format
 msgid "resetting unlogged relations (init), elapsed time: %ld.%02d s, current path: %s"
 msgstr "reseteando relaciones «unlogged» (init), transcurrido: %ld.%02d s, ruta actual: %s"
@@ -21220,94 +21826,102 @@ msgstr "reseteando relaciones «unlogged» (cleanup), transcurrido: %ld.%02d 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:353
+#: storage/ipc/dsm.c:352
 #, 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:418
+#: storage/ipc/dsm.c:417
 #, 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:600
+#: storage/ipc/dsm.c:599
 #, c-format
 msgid "too many dynamic shared memory segments"
 msgstr "demasiados segmentos de memoria compartida dinámica"
 
-#: storage/ipc/dsm_impl.c:235 storage/ipc/dsm_impl.c:544
-#: storage/ipc/dsm_impl.c:648 storage/ipc/dsm_impl.c:819
+#: storage/ipc/dsm_impl.c:231 storage/ipc/dsm_impl.c:536
+#: storage/ipc/dsm_impl.c:640 storage/ipc/dsm_impl.c:811
 #, 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:245 storage/ipc/dsm_impl.c:554
-#: storage/ipc/dsm_impl.c:658 storage/ipc/dsm_impl.c:829
+#: storage/ipc/dsm_impl.c:241 storage/ipc/dsm_impl.c:546
+#: storage/ipc/dsm_impl.c:650 storage/ipc/dsm_impl.c:821
 #, 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:269 storage/ipc/dsm_impl.c:729
-#: storage/ipc/dsm_impl.c:843
+#: storage/ipc/dsm_impl.c:265 storage/ipc/dsm_impl.c:721
+#: storage/ipc/dsm_impl.c:835
 #, 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:294 storage/ipc/dsm_impl.c:570
-#: storage/ipc/dsm_impl.c:774 storage/ipc/dsm_impl.c:867
+#: storage/ipc/dsm_impl.c:290 storage/ipc/dsm_impl.c:562
+#: storage/ipc/dsm_impl.c:766 storage/ipc/dsm_impl.c:859
 #, 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:313 storage/ipc/dsm_impl.c:918
+#: storage/ipc/dsm_impl.c:309 storage/ipc/dsm_impl.c:910
 #, 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:335 storage/ipc/dsm_impl.c:591
-#: storage/ipc/dsm_impl.c:750 storage/ipc/dsm_impl.c:940
+#: storage/ipc/dsm_impl.c:331 storage/ipc/dsm_impl.c:583
+#: storage/ipc/dsm_impl.c:742 storage/ipc/dsm_impl.c:932
 #, 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:526
+#: storage/ipc/dsm_impl.c:518
 #, 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:714
+#: storage/ipc/dsm_impl.c:706
 #, 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:951
+#: storage/ipc/dsm_impl.c:943
 #, 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:991 storage/ipc/dsm_impl.c:1040
+#: storage/ipc/dsm_impl.c:983 storage/ipc/dsm_impl.c:1032
 #, c-format
 msgid "could not duplicate handle for \"%s\": %m"
 msgstr "no se pudo duplicar el «handle» para «%s»: %m"
 
-#: storage/ipc/procarray.c:3812
+#: storage/ipc/procarray.c:3796
 #, c-format
 msgid "database \"%s\" is being used by prepared transactions"
 msgstr "la base de datos «%s» está siendo utilizada por transacciones preparadas"
 
-#: storage/ipc/procarray.c:3844 storage/ipc/signalfuncs.c:226
+#: storage/ipc/procarray.c:3828
 #, c-format
 msgid "must be a superuser to terminate superuser process"
 msgstr "debe ser superusuario para terminar proceso de superusuario"
 
-#: storage/ipc/procarray.c:3851 storage/ipc/signalfuncs.c:231
-#, 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/procarray.c:3835 storage/ipc/signalfuncs.c:230
+#: storage/ipc/signalfuncs.c:237
+#, fuzzy, c-format
+#| msgid "permission denied to create role"
+msgid "permission denied to terminate process"
+msgstr "se ha denegado el permiso para crear el rol"
 
-#: storage/ipc/procsignal.c:419
+#: storage/ipc/procarray.c:3836 storage/ipc/signalfuncs.c:238
 #, c-format
-msgid "still waiting for backend with PID %lu to accept ProcSignalBarrier"
+msgid "Only roles with privileges of the role whose process is being terminated or with privileges of the \"%s\" role may terminate this process."
+msgstr ""
+
+#: storage/ipc/procsignal.c:420
+#, fuzzy, c-format
+#| msgid "still waiting for backend with PID %lu to accept ProcSignalBarrier"
+msgid "still waiting for backend with PID %d to accept ProcSignalBarrier"
 msgstr "aún esperando que el proceso servidor con PID %lu acepte ProcSignalBarrier"
 
 #: storage/ipc/shm_mq.c:384
@@ -21321,11 +21935,11 @@ msgid "invalid message size %zu in shared memory queue"
 msgstr "tamaño no válido de mensaje %zu en cola de memoria compartida"
 
 #: 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:4259
-#: storage/lmgr/lock.c:4324 storage/lmgr/lock.c:4674
-#: storage/lmgr/predicate.c:2472 storage/lmgr/predicate.c:2487
-#: storage/lmgr/predicate.c:3969 storage/lmgr/predicate.c:5081
-#: utils/hash/dynahash.c:1112
+#: storage/lmgr/lock.c:1020 storage/lmgr/lock.c:2810 storage/lmgr/lock.c:4194
+#: storage/lmgr/lock.c:4259 storage/lmgr/lock.c:4609
+#: storage/lmgr/predicate.c:2412 storage/lmgr/predicate.c:2427
+#: storage/lmgr/predicate.c:3824 storage/lmgr/predicate.c:4871
+#: utils/hash/dynahash.c:1107
 #, c-format
 msgid "out of shared memory"
 msgstr "memoria compartida agotada"
@@ -21361,100 +21975,117 @@ msgstr "la petición de tamaño de memoria compartida desborda size_t"
 msgid "PID %d is not a PostgreSQL backend process"
 msgstr "PID %d no es un proceso servidor de PostgreSQL"
 
-#: storage/ipc/signalfuncs.c:104 storage/lmgr/proc.c:1430
+#: storage/ipc/signalfuncs.c:104 storage/lmgr/proc.c:1379
 #: utils/adt/mcxtfuncs.c:190
 #, c-format
 msgid "could not send signal to process %d: %m"
 msgstr "no se pudo enviar la señal al proceso %d: %m"
 
-#: storage/ipc/signalfuncs.c:124
+#: storage/ipc/signalfuncs.c:124 storage/ipc/signalfuncs.c:131
+#, fuzzy, c-format
+#| msgid "permission denied to create role"
+msgid "permission denied to cancel query"
+msgstr "se ha denegado el permiso para crear el rol"
+
+#: storage/ipc/signalfuncs.c:125
 #, c-format
-msgid "must be a superuser to cancel superuser query"
-msgstr "debe ser superusuario para cancelar una consulta de superusuario"
+msgid "Only roles with the %s attribute may cancel queries of roles with %s."
+msgstr ""
 
-#: storage/ipc/signalfuncs.c:129
+#: storage/ipc/signalfuncs.c:132
 #, c-format
-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"
+msgid "Only roles with privileges of the role whose query is being canceled or with privileges of the \"%s\" role may cancel this query."
+msgstr ""
 
-#: storage/ipc/signalfuncs.c:170
+#: storage/ipc/signalfuncs.c:174
 #, c-format
 msgid "could not check the existence of the backend with PID %d: %m"
 msgstr "no se pudo comprobar la existencia del proceso de servidor con PID %d: %m"
 
-#: storage/ipc/signalfuncs.c:188
+#: storage/ipc/signalfuncs.c:192
 #, c-format
 msgid "backend with PID %d did not terminate within %lld millisecond"
 msgid_plural "backend with PID %d did not terminate within %lld milliseconds"
 msgstr[0] "el proceso de servidor con PID %d no terminó dentro de %lld milisegundo"
 msgstr[1] "el proceso de servidor con PID %d no terminó dentro de %lld milisegundos"
 
-#: storage/ipc/signalfuncs.c:219
+#: storage/ipc/signalfuncs.c:223
 #, c-format
 msgid "\"timeout\" must not be negative"
 msgstr "\"timeout\" no debe ser negativo"
 
-#: storage/ipc/signalfuncs.c:271
+#: storage/ipc/signalfuncs.c:231
+#, c-format
+msgid "Only roles with the %s attribute may terminate processes of roles with %s."
+msgstr ""
+
+#: storage/ipc/signalfuncs.c:279
 #, 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:273 utils/adt/genfile.c:250
+#: storage/ipc/signalfuncs.c:281 utils/adt/genfile.c:250
 #, c-format
 msgid "Consider using %s, which is part of core, instead."
 msgstr "Considere usar %s, que es parte del servidor, en su lugar."
 
-#: storage/ipc/signalfuncs.c:279 storage/ipc/signalfuncs.c:299
+#: storage/ipc/signalfuncs.c:287 storage/ipc/signalfuncs.c:307
 #, c-format
 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:307
+#: storage/ipc/standby.c:330
 #, c-format
 msgid "recovery still waiting after %ld.%03d ms: %s"
 msgstr "la recuperación aún está esperando después de %ld.%03d ms: %s"
 
-#: storage/ipc/standby.c:316
+#: storage/ipc/standby.c:339
 #, c-format
 msgid "recovery finished waiting after %ld.%03d ms: %s"
 msgstr "la recuperación terminó de esperar después de %ld.%03d ms: %s"
 
-#: storage/ipc/standby.c:883 tcop/postgres.c:3332
+#: storage/ipc/standby.c:921 tcop/postgres.c:3384
 #, 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:884 tcop/postgres.c:2487
+#: storage/ipc/standby.c:922 tcop/postgres.c:2533
 #, c-format
 msgid "User transaction caused buffer deadlock with recovery."
 msgstr "La transacción del usuario causó un «deadlock» con la recuperación."
 
-#: storage/ipc/standby.c:1423
+#: storage/ipc/standby.c:1479
 msgid "unknown reason"
 msgstr "razón desconocida"
 
-#: storage/ipc/standby.c:1428
+#: storage/ipc/standby.c:1484
 msgid "recovery conflict on buffer pin"
 msgstr "conflicto de recuperación en «pin» de búfer"
 
-#: storage/ipc/standby.c:1431
+#: storage/ipc/standby.c:1487
 msgid "recovery conflict on lock"
 msgstr "conflicto de recuperación en bloqueo"
 
-#: storage/ipc/standby.c:1434
+#: storage/ipc/standby.c:1490
 msgid "recovery conflict on tablespace"
 msgstr "conflicto de recuperación en tablespace"
 
-#: storage/ipc/standby.c:1437
+#: storage/ipc/standby.c:1493
 msgid "recovery conflict on snapshot"
 msgstr "conflicto de recuperación en snapshot"
 
-#: storage/ipc/standby.c:1440
+#: storage/ipc/standby.c:1496
+#, fuzzy
+#| msgid "recovery conflict on snapshot"
+msgid "recovery conflict on replication slot"
+msgstr "conflicto de recuperación en snapshot"
+
+#: storage/ipc/standby.c:1499
 msgid "recovery conflict on buffer deadlock"
 msgstr "conflicto de recuperación en deadlock de búfer"
 
-#: storage/ipc/standby.c:1443
+#: storage/ipc/standby.c:1502
 msgid "recovery conflict on database"
 msgstr "conflicto de recuperación en base de datos"
 
@@ -21478,22 +22109,22 @@ msgstr "parámetro «whence» no válido: %d"
 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:1122
+#: storage/lmgr/deadlock.c:1105
 #, 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:1141
+#: storage/lmgr/deadlock.c:1124
 #, c-format
 msgid "Process %d: %s"
 msgstr "Proceso %d: %s"
 
-#: storage/lmgr/deadlock.c:1150
+#: storage/lmgr/deadlock.c:1133
 #, c-format
 msgid "deadlock detected"
 msgstr "se ha detectado un deadlock"
 
-#: storage/lmgr/deadlock.c:1153
+#: storage/lmgr/deadlock.c:1136
 #, c-format
 msgid "See server log for query details."
 msgstr "Vea el registro del servidor para obtener detalles de las consultas."
@@ -21538,63 +22169,69 @@ 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:1135
+#: storage/lmgr/lmgr.c:1174
 #, c-format
 msgid "relation %u of database %u"
 msgstr "relación %u de la base de datos %u"
 
-#: storage/lmgr/lmgr.c:1141
+#: storage/lmgr/lmgr.c:1180
 #, 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:1147
+#: storage/lmgr/lmgr.c:1186
 #, c-format
 msgid "pg_database.datfrozenxid of database %u"
 msgstr "pg_database.datfrozenxid de la base de datos %u"
 
-#: storage/lmgr/lmgr.c:1152
+#: storage/lmgr/lmgr.c:1191
 #, 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:1159
+#: storage/lmgr/lmgr.c:1198
 #, 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:1167
+#: storage/lmgr/lmgr.c:1206
 #, c-format
 msgid "transaction %u"
 msgstr "transacción %u"
 
-#: storage/lmgr/lmgr.c:1172
+#: storage/lmgr/lmgr.c:1211
 #, c-format
 msgid "virtual transaction %d/%u"
 msgstr "transacción virtual %d/%u"
 
-#: storage/lmgr/lmgr.c:1178
+#: storage/lmgr/lmgr.c:1217
 #, c-format
 msgid "speculative token %u of transaction %u"
 msgstr "token especulativo %u de la transacción %u"
 
-#: storage/lmgr/lmgr.c:1184
+#: storage/lmgr/lmgr.c:1223
 #, 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:1192
+#: storage/lmgr/lmgr.c:1231
 #, 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:1199
+#: storage/lmgr/lmgr.c:1238
 #, c-format
 msgid "advisory lock [%u,%u,%u,%u]"
 msgstr "candado consultivo [%u,%u,%u,%u]"
 
-#: storage/lmgr/lmgr.c:1207
+#: storage/lmgr/lmgr.c:1246
+#, fuzzy, c-format
+#| msgid "extension of relation %u of database %u"
+msgid "remote transaction %u of subscription %u of database %u"
+msgstr "extensión de la relación %u de la base de datos %u"
+
+#: storage/lmgr/lmgr.c:1253
 #, c-format
 msgid "unrecognized locktag type %d"
 msgstr "tipo de locktag %d no reconocido"
@@ -21609,108 +22246,108 @@ msgstr "no se puede adquirir candado en modo %s en objetos de la base de datos m
 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:983 storage/lmgr/lock.c:1021 storage/lmgr/lock.c:2846
-#: storage/lmgr/lock.c:4260 storage/lmgr/lock.c:4325 storage/lmgr/lock.c:4675
+#: storage/lmgr/lock.c:983 storage/lmgr/lock.c:1021 storage/lmgr/lock.c:2811
+#: storage/lmgr/lock.c:4195 storage/lmgr/lock.c:4260 storage/lmgr/lock.c:4610
 #, 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:3301 storage/lmgr/lock.c:3369 storage/lmgr/lock.c:3485
+#: storage/lmgr/lock.c:3259 storage/lmgr/lock.c:3327 storage/lmgr/lock.c:3443
 #, 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:700
+#: storage/lmgr/predicate.c:649
 #, 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:701 storage/lmgr/predicate.c:729
+#: storage/lmgr/predicate.c:650 storage/lmgr/predicate.c:675
 #, 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:728
+#: storage/lmgr/predicate.c:674
 #, 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:1695
+#: storage/lmgr/predicate.c:1630
 #, c-format
 msgid "\"default_transaction_isolation\" is set to \"serializable\"."
 msgstr "«default_transaction_isolation» está definido a «serializable»."
 
-#: storage/lmgr/predicate.c:1696
+#: storage/lmgr/predicate.c:1631
 #, 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:1747
+#: storage/lmgr/predicate.c:1682
 #, 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:1826 utils/time/snapmgr.c:569
-#: utils/time/snapmgr.c:575
+#: storage/lmgr/predicate.c:1761 utils/time/snapmgr.c:570
+#: utils/time/snapmgr.c:576
 #, c-format
 msgid "could not import the requested snapshot"
 msgstr "no se pudo importar el snapshot solicitado"
 
-#: storage/lmgr/predicate.c:1827 utils/time/snapmgr.c:576
+#: storage/lmgr/predicate.c:1762 utils/time/snapmgr.c:577
 #, 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:2473 storage/lmgr/predicate.c:2488
-#: storage/lmgr/predicate.c:3970
+#: storage/lmgr/predicate.c:2413 storage/lmgr/predicate.c:2428
+#: storage/lmgr/predicate.c:3825
 #, 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:4101 storage/lmgr/predicate.c:4137
-#: storage/lmgr/predicate.c:4170 storage/lmgr/predicate.c:4178
-#: storage/lmgr/predicate.c:4217 storage/lmgr/predicate.c:4459
-#: storage/lmgr/predicate.c:4796 storage/lmgr/predicate.c:4808
-#: storage/lmgr/predicate.c:4851 storage/lmgr/predicate.c:4889
+#: storage/lmgr/predicate.c:3935 storage/lmgr/predicate.c:3971
+#: storage/lmgr/predicate.c:4004 storage/lmgr/predicate.c:4012
+#: storage/lmgr/predicate.c:4051 storage/lmgr/predicate.c:4281
+#: storage/lmgr/predicate.c:4600 storage/lmgr/predicate.c:4612
+#: storage/lmgr/predicate.c:4659 storage/lmgr/predicate.c:4695
 #, 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:4103 storage/lmgr/predicate.c:4139
-#: storage/lmgr/predicate.c:4172 storage/lmgr/predicate.c:4180
-#: storage/lmgr/predicate.c:4219 storage/lmgr/predicate.c:4461
-#: storage/lmgr/predicate.c:4798 storage/lmgr/predicate.c:4810
-#: storage/lmgr/predicate.c:4853 storage/lmgr/predicate.c:4891
+#: storage/lmgr/predicate.c:3937 storage/lmgr/predicate.c:3973
+#: storage/lmgr/predicate.c:4006 storage/lmgr/predicate.c:4014
+#: storage/lmgr/predicate.c:4053 storage/lmgr/predicate.c:4283
+#: storage/lmgr/predicate.c:4602 storage/lmgr/predicate.c:4614
+#: storage/lmgr/predicate.c:4661 storage/lmgr/predicate.c:4697
 #, c-format
 msgid "The transaction might succeed if retried."
 msgstr "La transacción podría tener éxito si es reintentada."
 
-#: storage/lmgr/proc.c:355
+#: storage/lmgr/proc.c:349
 #, 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:1527
+#: storage/lmgr/proc.c:1472
 #, 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:1542
+#: storage/lmgr/proc.c:1487
 #, 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:1551
+#: storage/lmgr/proc.c:1496
 #, 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:1558
+#: storage/lmgr/proc.c:1503
 #, 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:1575
+#: storage/lmgr/proc.c:1520
 #, 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"
@@ -21743,391 +22380,424 @@ msgstr "los largos de ítem están corruptos: total %u, espacio disponible %u"
 msgid "corrupted line pointer: offset = %u, size = %u"
 msgstr "puntero de ítem corrupto: desplazamiento = %u, tamaño = %u"
 
-#: storage/smgr/md.c:456
+#: storage/smgr/md.c:484 storage/smgr/md.c:546
 #, 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:471
+#: storage/smgr/md.c:499 storage/smgr/md.c:610
 #, c-format
 msgid "could not extend file \"%s\": %m"
 msgstr "no se pudo extender el archivo «%s»: %m"
 
-#: storage/smgr/md.c:477
+#: storage/smgr/md.c:505
 #, 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:692
+#: storage/smgr/md.c:588
+#, fuzzy, c-format
+#| msgid "could not extend file \"%s\": %m"
+msgid "could not extend file \"%s\" with FileFallocate(): %m"
+msgstr "no se pudo extender el archivo «%s»: %m"
+
+#: storage/smgr/md.c:836
 #, 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:708
+#: storage/smgr/md.c:852
 #, 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:762
+#: storage/smgr/md.c:910
 #, 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:767
+#: storage/smgr/md.c:915
 #, 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:861
+#: storage/smgr/md.c:1009
 #, 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:916
+#: storage/smgr/md.c:1064
 #, 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:1315
+#: storage/smgr/md.c:1491
 #, 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:1329
+#: storage/smgr/md.c:1505
 #, c-format
 msgid "could not open file \"%s\" (target block %u): %m"
 msgstr "no se pudo abrir el archivo «%s» (bloque buscado %u): %m"
 
-#: tcop/fastpath.c:148
+#: tcop/fastpath.c:142 utils/fmgr/fmgr.c:2133
+#, c-format
+msgid "function with OID %u does not exist"
+msgstr "no existe la función con OID %u"
+
+#: tcop/fastpath.c:149
 #, c-format
 msgid "cannot call function \"%s\" via fastpath interface"
 msgstr "no se puede llamar a la función «%s» mediante la interfaz fastpath"
 
-#: tcop/fastpath.c:233
+#: tcop/fastpath.c:234
 #, c-format
 msgid "fastpath function call: \"%s\" (OID %u)"
 msgstr "llamada a función fastpath: «%s» (OID %u)"
 
-#: tcop/fastpath.c:312 tcop/postgres.c:1341 tcop/postgres.c:1577
-#: tcop/postgres.c:2036 tcop/postgres.c:2268
+#: tcop/fastpath.c:313 tcop/postgres.c:1365 tcop/postgres.c:1601
+#: tcop/postgres.c:2059 tcop/postgres.c:2309
 #, c-format
 msgid "duration: %s ms"
 msgstr "duración: %s ms"
 
-#: tcop/fastpath.c:316
+#: tcop/fastpath.c:317
 #, c-format
 msgid "duration: %s ms  fastpath function call: \"%s\" (OID %u)"
 msgstr "duración: %s ms  llamada a función fastpath: «%s» (OID %u)"
 
-#: tcop/fastpath.c:352
+#: tcop/fastpath.c:353
 #, c-format
 msgid "function call message contains %d arguments but function requires %d"
 msgstr "el mensaje de llamada a función contiene %d argumentos pero la función requiere %d"
 
-#: tcop/fastpath.c:360
+#: tcop/fastpath.c:361
 #, c-format
 msgid "function call message contains %d argument formats but %d arguments"
 msgstr "el mensaje de llamada a función contiene %d formatos de argumento pero %d argumentos"
 
-#: tcop/fastpath.c:384
+#: tcop/fastpath.c:385
 #, c-format
 msgid "invalid argument size %d in function call message"
 msgstr "el tamaño de argumento %d no es válido en el mensaje de llamada a función"
 
-#: tcop/fastpath.c:447
+#: tcop/fastpath.c:448
 #, c-format
 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:444 tcop/postgres.c:4811
+#: tcop/postgres.c:463 tcop/postgres.c:4877
 #, c-format
 msgid "invalid frontend message type %d"
 msgstr "el tipo de mensaje de frontend %d no es válido"
 
-#: tcop/postgres.c:1051
+#: tcop/postgres.c:1072
 #, c-format
 msgid "statement: %s"
 msgstr "sentencia: %s"
 
-#: tcop/postgres.c:1346
+#: tcop/postgres.c:1370
 #, c-format
 msgid "duration: %s ms  statement: %s"
 msgstr "duración: %s ms  sentencia: %s"
 
-#: tcop/postgres.c:1452
+#: tcop/postgres.c:1476
 #, 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:1582
+#: tcop/postgres.c:1606
 #, c-format
 msgid "duration: %s ms  parse %s: %s"
 msgstr "duración: %s ms  parse: %s: %s"
 
-#: tcop/postgres.c:1648 tcop/postgres.c:2583
+#: tcop/postgres.c:1672 tcop/postgres.c:2629
 #, c-format
 msgid "unnamed prepared statement does not exist"
 msgstr "no existe una sentencia preparada sin nombre"
 
-#: tcop/postgres.c:1689
+#: tcop/postgres.c:1713
 #, c-format
 msgid "bind message has %d parameter formats but %d parameters"
 msgstr "el mensaje de «bind» tiene %d formatos de parámetro pero %d parámetros"
 
-#: tcop/postgres.c:1695
+#: tcop/postgres.c:1719
 #, c-format
 msgid "bind message supplies %d parameters, but prepared statement \"%s\" requires %d"
 msgstr "el mensaje de «bind» entrega %d parámetros, pero la sentencia preparada «%s» requiere %d"
 
-#: tcop/postgres.c:1914
+#: tcop/postgres.c:1937
 #, c-format
 msgid "incorrect binary data format in bind parameter %d"
 msgstr "el formato de datos binarios es incorrecto en el parámetro de «bind» %d"
 
-#: tcop/postgres.c:2041
+#: tcop/postgres.c:2064
 #, c-format
 msgid "duration: %s ms  bind %s%s%s: %s"
 msgstr "duración: %s ms  bind %s%s%s: %s"
 
-#: tcop/postgres.c:2091 tcop/postgres.c:2666
+#: tcop/postgres.c:2118 tcop/postgres.c:2712
 #, c-format
 msgid "portal \"%s\" does not exist"
 msgstr "no existe el portal «%s»"
 
-#: tcop/postgres.c:2160
+#: tcop/postgres.c:2189
 #, c-format
 msgid "%s %s%s%s: %s"
 msgstr "%s %s%s%s: %s"
 
-#: tcop/postgres.c:2162 tcop/postgres.c:2276
+#: tcop/postgres.c:2191 tcop/postgres.c:2317
 msgid "execute fetch from"
 msgstr "ejecutar fetch desde"
 
-#: tcop/postgres.c:2163 tcop/postgres.c:2277
+#: tcop/postgres.c:2192 tcop/postgres.c:2318
 msgid "execute"
 msgstr "ejecutar"
 
-#: tcop/postgres.c:2273
+#: tcop/postgres.c:2314
 #, c-format
 msgid "duration: %s ms  %s %s%s%s: %s"
 msgstr "duración: %s ms  %s %s%s%s: %s"
 
-#: tcop/postgres.c:2419
+#: tcop/postgres.c:2462
 #, c-format
 msgid "prepare: %s"
 msgstr "prepare: %s"
 
-#: tcop/postgres.c:2444
+#: tcop/postgres.c:2487
 #, c-format
 msgid "parameters: %s"
 msgstr "parámetros: %s"
 
-#: tcop/postgres.c:2459
+#: tcop/postgres.c:2502
 #, c-format
 msgid "abort reason: recovery conflict"
 msgstr "razón para abortar: conflicto en la recuperación"
 
-#: tcop/postgres.c:2475
+#: tcop/postgres.c:2518
 #, 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:2478
+#: tcop/postgres.c:2521
 #, 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:2481
+#: tcop/postgres.c:2524
 #, 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:2484
+#: tcop/postgres.c:2527
 #, 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:2490
+#: tcop/postgres.c:2530
+#, fuzzy, c-format
+#| msgid "User was connected to a database that must be dropped."
+msgid "User was using a logical slot that must be invalidated."
+msgstr "El usuario estaba conectado a una base de datos que debía ser eliminada."
+
+#: tcop/postgres.c:2536
 #, 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:2529
+#: tcop/postgres.c:2575
 #, c-format
 msgid "portal \"%s\" parameter $%d = %s"
 msgstr "portal «%s» parámetro $%d = %s"
 
-#: tcop/postgres.c:2532
+#: tcop/postgres.c:2578
 #, c-format
 msgid "portal \"%s\" parameter $%d"
 msgstr "portal «%s» parámetro $%d"
 
-#: tcop/postgres.c:2538
+#: tcop/postgres.c:2584
 #, c-format
 msgid "unnamed portal parameter $%d = %s"
 msgstr "portal sin nombre, parámetro %d = %s"
 
-#: tcop/postgres.c:2541
+#: tcop/postgres.c:2587
 #, c-format
 msgid "unnamed portal parameter $%d"
 msgstr "portal sin nombre, parámetro %d"
 
-#: tcop/postgres.c:2886
+#: tcop/postgres.c:2932
 #, c-format
 msgid "terminating connection because of unexpected SIGQUIT signal"
 msgstr "terminando la conexión debido a una señal SIGQUIT inesperada"
 
-#: tcop/postgres.c:2892
+#: tcop/postgres.c:2938
 #, 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:2893
+#: tcop/postgres.c:2939
 #, 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:2897 tcop/postgres.c:3258
+#: tcop/postgres.c:2943 tcop/postgres.c:3310
 #, 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:2904
+#: tcop/postgres.c:2950
 #, c-format
 msgid "terminating connection due to immediate shutdown command"
 msgstr "terminando la conexión debido a una orden de apagado inmediato"
 
-#: tcop/postgres.c:2990
+#: tcop/postgres.c:3036
 #, c-format
 msgid "floating-point exception"
 msgstr "excepción de coma flotante"
 
-#: tcop/postgres.c:2991
+#: tcop/postgres.c:3037
 #, 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:3162
+#: tcop/postgres.c:3214
 #, 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:3166
+#: tcop/postgres.c:3218
 #, c-format
 msgid "terminating autovacuum process due to administrator command"
 msgstr "terminando el proceso autovacuum debido a una orden del administrador"
 
-#: tcop/postgres.c:3170
+#: tcop/postgres.c:3222
 #, 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:3187 tcop/postgres.c:3197 tcop/postgres.c:3256
+#: tcop/postgres.c:3239 tcop/postgres.c:3249 tcop/postgres.c:3308
 #, 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:3208
+#: tcop/postgres.c:3260
 #, c-format
 msgid "terminating connection due to administrator command"
 msgstr "terminando la conexión debido a una orden del administrador"
 
-#: tcop/postgres.c:3239
+#: tcop/postgres.c:3291
 #, c-format
 msgid "connection to client lost"
 msgstr "se ha perdido la conexión al cliente"
 
-#: tcop/postgres.c:3309
+#: tcop/postgres.c:3361
 #, 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:3316
+#: tcop/postgres.c:3368
 #, 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:3323
+#: tcop/postgres.c:3375
 #, c-format
 msgid "canceling autovacuum task"
 msgstr "cancelando tarea de autovacuum"
 
-#: tcop/postgres.c:3346
+#: tcop/postgres.c:3398
 #, c-format
 msgid "canceling statement due to user request"
 msgstr "cancelando la sentencia debido a una petición del usuario"
 
-#: tcop/postgres.c:3360
+#: tcop/postgres.c:3412
 #, 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:3371
+#: tcop/postgres.c:3423
 #, c-format
 msgid "terminating connection due to idle-session timeout"
 msgstr "terminando la conexión debido a que se agotó el tiempo de espera para sesiones abiertas inactivas"
 
-#: tcop/postgres.c:3511
+#: tcop/postgres.c:3514
 #, c-format
 msgid "stack depth limit exceeded"
 msgstr "límite de profundidad de stack alcanzado"
 
-#: tcop/postgres.c:3512
+#: tcop/postgres.c:3515
 #, 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:3575
+#: tcop/postgres.c:3562
 #, c-format
 msgid "\"max_stack_depth\" must not exceed %ldkB."
 msgstr "«max_stack_depth» no debe exceder %ldkB."
 
-#: tcop/postgres.c:3577
+#: tcop/postgres.c:3564
 #, 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:3933
+#: tcop/postgres.c:3587
+#, fuzzy, c-format
+#| msgid "huge_page_size must be 0 on this platform."
+msgid "client_connection_check_interval must be set to 0 on this platform."
+msgstr "huge_page_size debe ser 0 en esta plataforma."
+
+#: tcop/postgres.c:3608
+#, 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."
+
+#: tcop/postgres.c:3623
+#, 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."
+
+#: tcop/postgres.c:3971
 #, 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:3934 tcop/postgres.c:3940
+#: tcop/postgres.c:3972 tcop/postgres.c:3978
 #, c-format
 msgid "Try \"%s --help\" for more information."
 msgstr "Pruebe «%s --help» para mayor información."
 
-#: tcop/postgres.c:3938
+#: tcop/postgres.c:3976
 #, c-format
 msgid "%s: invalid command-line argument: %s"
 msgstr "%s: argumento de línea de órdenes no válido: %s"
 
-#: tcop/postgres.c:3991
+#: tcop/postgres.c:4029
 #, c-format
 msgid "%s: no database nor user name specified"
 msgstr "%s: no se ha especificado base de datos ni usuario"
 
-#: tcop/postgres.c:4713
+#: tcop/postgres.c:4774
 #, c-format
 msgid "invalid CLOSE message subtype %d"
 msgstr "subtipo %d de mensaje CLOSE no válido"
 
-#: tcop/postgres.c:4748
+#: tcop/postgres.c:4811
 #, c-format
 msgid "invalid DESCRIBE message subtype %d"
 msgstr "subtipo %d de mensaje DESCRIBE no válido"
 
-#: tcop/postgres.c:4832
+#: tcop/postgres.c:4898
 #, 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:4836
+#: tcop/postgres.c:4902
 #, 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:5013
+#: tcop/postgres.c:5082
 #, 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"
@@ -22179,11 +22849,17 @@ msgstr "no se puede ejecutar %s dentro de un proceso en segundo plano"
 
 #: tcop/utility.c:953
 #, fuzzy, c-format
-#| msgid "must be superuser to do CHECKPOINT"
-msgid "must be superuser or have privileges of pg_checkpoint to do CHECKPOINT"
-msgstr "debe ser superusuario para ejecutar CHECKPOINT"
+#| msgid "permission denied for sequence %s"
+msgid "permission denied to execute %s command"
+msgstr "permiso denegado a la secuencia %s"
+
+#: tcop/utility.c:955
+#, fuzzy, c-format
+#| msgid "Set the privileges of the element type instead."
+msgid "Only roles with privileges of the \"%s\" role may execute this command."
+msgstr "Defina los privilegios del tipo elemento en su lugar."
 
-#: tsearch/dict_ispell.c:52 tsearch/dict_thesaurus.c:615
+#: tsearch/dict_ispell.c:52 tsearch/dict_thesaurus.c:616
 #, c-format
 msgid "multiple DictFile parameters"
 msgstr "parámetro DictFile duplicado"
@@ -22203,7 +22879,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:639
+#: tsearch/dict_ispell.c:102 tsearch/dict_thesaurus.c:640
 #, c-format
 msgid "missing DictFile parameter"
 msgstr "falta un parámetro DictFile"
@@ -22291,28 +22967,28 @@ msgstr "la palabra sustituta «%s» del tesauro no es reconocida por el subdicci
 msgid "thesaurus substitute phrase is empty (rule %d)"
 msgstr "la frase sustituta del tesauro está vacía (regla %d)"
 
-#: tsearch/dict_thesaurus.c:624
+#: tsearch/dict_thesaurus.c:625
 #, c-format
 msgid "multiple Dictionary parameters"
 msgstr "parámetro Dictionary duplicado"
 
-#: tsearch/dict_thesaurus.c:631
+#: tsearch/dict_thesaurus.c:632
 #, c-format
 msgid "unrecognized Thesaurus parameter: \"%s\""
 msgstr "parámetro no reconocido de tesauro: «%s»"
 
-#: tsearch/dict_thesaurus.c:643
+#: tsearch/dict_thesaurus.c:644
 #, c-format
 msgid "missing Dictionary parameter"
 msgstr "falta un paramétro Dictionary"
 
 #: tsearch/spell.c:381 tsearch/spell.c:398 tsearch/spell.c:407
-#: tsearch/spell.c:1063
+#: tsearch/spell.c:1043
 #, c-format
 msgid "invalid affix flag \"%s\""
 msgstr "marca de afijo «%s» no válida"
 
-#: tsearch/spell.c:385 tsearch/spell.c:1067
+#: tsearch/spell.c:385 tsearch/spell.c:1047
 #, c-format
 msgid "affix flag \"%s\" is out of range"
 msgstr "la marca de afijo «%s» fuera de rango"
@@ -22332,71 +23008,71 @@ msgstr "marca de afijo «%s» no válida con el valor de marca «long»"
 msgid "could not open dictionary file \"%s\": %m"
 msgstr "no se pudo abrir el archivo de diccionario «%s»: %m"
 
-#: tsearch/spell.c:764 utils/adt/regexp.c:209
+#: tsearch/spell.c:749 utils/adt/regexp.c:224 jsonpath_gram.y:559
 #, c-format
 msgid "invalid regular expression: %s"
 msgstr "la expresión regular no es válida: %s"
 
-#: tsearch/spell.c:983 tsearch/spell.c:1000 tsearch/spell.c:1017
-#: tsearch/spell.c:1034 tsearch/spell.c:1099 gram.y:17812 gram.y:17829
+#: tsearch/spell.c:963 tsearch/spell.c:980 tsearch/spell.c:997
+#: tsearch/spell.c:1014 tsearch/spell.c:1079 gram.y:18187 gram.y:18204
 #, c-format
 msgid "syntax error"
 msgstr "error de sintaxis"
 
-#: tsearch/spell.c:1190 tsearch/spell.c:1202 tsearch/spell.c:1762
-#: tsearch/spell.c:1767 tsearch/spell.c:1772
+#: tsearch/spell.c:1170 tsearch/spell.c:1182 tsearch/spell.c:1742
+#: tsearch/spell.c:1747 tsearch/spell.c:1752
 #, c-format
 msgid "invalid affix alias \"%s\""
 msgstr "alias de afijo «%s» no válido"
 
-#: tsearch/spell.c:1243 tsearch/spell.c:1314 tsearch/spell.c:1463
+#: tsearch/spell.c:1223 tsearch/spell.c:1294 tsearch/spell.c:1443
 #, c-format
 msgid "could not open affix file \"%s\": %m"
 msgstr "no se pudo abrir el archivo de afijos «%s»: %m"
 
-#: tsearch/spell.c:1297
+#: tsearch/spell.c:1277
 #, 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:1341
+#: tsearch/spell.c:1321
 #, c-format
 msgid "invalid number of flag vector aliases"
 msgstr "número no válido de alias de opciones"
 
-#: tsearch/spell.c:1364
+#: tsearch/spell.c:1344
 #, 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:1579
+#: tsearch/spell.c:1559
 #, 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:195 utils/adt/tsvector.c:272 utils/adt/tsvector_op.c:1127
+#: tsearch/to_tsany.c:195 utils/adt/tsvector.c:278 utils/adt/tsvector_op.c:1128
 #, 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)"
 
-#: tsearch/ts_locale.c:227
+#: tsearch/ts_locale.c:238
 #, c-format
 msgid "line %d of configuration file \"%s\": \"%s\""
 msgstr "línea %d del archivo de configuración «%s»: «%s»"
 
-#: tsearch/ts_locale.c:307
+#: tsearch/ts_locale.c:317
 #, c-format
 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:386 tsearch/ts_parse.c:393 tsearch/ts_parse.c:562
-#: tsearch/ts_parse.c:569
+#: tsearch/ts_parse.c:387 tsearch/ts_parse.c:394 tsearch/ts_parse.c:573
+#: tsearch/ts_parse.c:580
 #, c-format
 msgid "word is too long to be indexed"
 msgstr "la palabra es demasiado larga para ser indexada"
 
-#: tsearch/ts_parse.c:387 tsearch/ts_parse.c:394 tsearch/ts_parse.c:563
-#: tsearch/ts_parse.c:570
+#: tsearch/ts_parse.c:388 tsearch/ts_parse.c:395 tsearch/ts_parse.c:574
+#: tsearch/ts_parse.c:581
 #, c-format
 msgid "Words longer than %d characters are ignored."
 msgstr "Las palabras más largas que %d caracteres son ignoradas."
@@ -22411,74 +23087,74 @@ 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:313 tsearch/wparser.c:401 tsearch/wparser.c:478
+#: tsearch/wparser.c:308 tsearch/wparser.c:396 tsearch/wparser.c:473
 #, 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:2578
+#: tsearch/wparser_def.c:2648
 #, c-format
 msgid "unrecognized headline parameter: \"%s\""
 msgstr "parámetro de encabezado (headline) no reconocido: «%s»"
 
-#: tsearch/wparser_def.c:2597
+#: tsearch/wparser_def.c:2658
 #, c-format
 msgid "MinWords should be less than MaxWords"
 msgstr "MinWords debería ser menor que MaxWords"
 
-#: tsearch/wparser_def.c:2601
+#: tsearch/wparser_def.c:2662
 #, c-format
 msgid "MinWords should be positive"
 msgstr "MinWords debería ser positivo"
 
-#: tsearch/wparser_def.c:2605
+#: tsearch/wparser_def.c:2666
 #, c-format
 msgid "ShortWord should be >= 0"
 msgstr "ShortWord debería ser >= 0"
 
-#: tsearch/wparser_def.c:2609
+#: tsearch/wparser_def.c:2670
 #, c-format
 msgid "MaxFragments should be >= 0"
 msgstr "MaxFragments debería ser >= 0"
 
-#: utils/activity/pgstat.c:421
+#: utils/activity/pgstat.c:431
 #, fuzzy, c-format
 #| msgid "could not open statistics file \"%s\": %m"
 msgid "could not unlink permanent statistics file \"%s\": %m"
 msgstr "no se pudo abrir el archivo de estadísticas «%s»: %m"
 
-#: utils/activity/pgstat.c:1209
+#: utils/activity/pgstat.c:1224
 #, fuzzy, c-format
 #| msgid "unrecognized statistics kind \"%s\""
 msgid "invalid statistics kind: \"%s\""
 msgstr "tipo de estadísticas «%s» no reconocido"
 
-#: utils/activity/pgstat.c:1289
+#: utils/activity/pgstat.c:1304
 #, c-format
 msgid "could not open temporary statistics file \"%s\": %m"
 msgstr "no se pudo abrir el archivo temporal de estadísticas «%s»: %m"
 
-#: utils/activity/pgstat.c:1395
+#: utils/activity/pgstat.c:1416
 #, c-format
 msgid "could not write temporary statistics file \"%s\": %m"
 msgstr "no se pudo escribir el archivo temporal de estadísticas «%s»: %m"
 
-#: utils/activity/pgstat.c:1404
+#: utils/activity/pgstat.c:1425
 #, c-format
 msgid "could not close temporary statistics file \"%s\": %m"
 msgstr "no se pudo cerrar el archivo temporal de estadísticas «%s»: %m"
 
-#: utils/activity/pgstat.c:1412
+#: utils/activity/pgstat.c:1433
 #, 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"
 
-#: utils/activity/pgstat.c:1461
+#: utils/activity/pgstat.c:1482
 #, c-format
 msgid "could not open statistics file \"%s\": %m"
 msgstr "no se pudo abrir el archivo de estadísticas «%s»: %m"
 
-#: utils/activity/pgstat.c:1617
+#: utils/activity/pgstat.c:1644
 #, c-format
 msgid "corrupted statistics file \"%s\""
 msgstr "el archivo de estadísticas «%s» está corrupto"
@@ -22489,446 +23165,435 @@ msgstr "el archivo de estadísticas «%s» está corrupto"
 msgid "function call to dropped function"
 msgstr "la función de conversión debe ser una función normal"
 
-#: utils/activity/pgstat_xact.c:371
-#, fuzzy, c-format
-#| msgid "resetting existing stats for type %s, db=%u, oid=%u"
+#: utils/activity/pgstat_xact.c:363
+#, c-format
 msgid "resetting existing statistics for kind %s, db=%u, oid=%u"
-msgstr "reseteando datos existentes para el tipo %s, db=%u, oid=%u"
+msgstr ""
 
-#: utils/adt/acl.c:168 utils/adt/name.c:93
+#: utils/adt/acl.c:177 utils/adt/name.c:93
 #, c-format
 msgid "identifier too long"
 msgstr "el identificador es demasiado largo"
 
-#: utils/adt/acl.c:169 utils/adt/name.c:94
+#: utils/adt/acl.c:178 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:252
+#: utils/adt/acl.c:266
 #, c-format
 msgid "unrecognized key word: \"%s\""
 msgstr "palabra clave no reconocida: «%s»"
 
-#: utils/adt/acl.c:253
+#: utils/adt/acl.c:267
 #, 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:258
+#: utils/adt/acl.c:275
 #, c-format
 msgid "missing name"
 msgstr "falta un nombre"
 
-#: utils/adt/acl.c:259
+#: utils/adt/acl.c:276
 #, 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:265
+#: utils/adt/acl.c:282
 #, c-format
 msgid "missing \"=\" sign"
 msgstr "falta un signo «=»"
 
-#: utils/adt/acl.c:324
+#: utils/adt/acl.c:344
 #, 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:374
 #, 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:386
 #, c-format
 msgid "defaulting grantor to user ID %u"
 msgstr "usando el cedente por omisión con ID %u"
 
-#: utils/adt/acl.c:540
+#: utils/adt/acl.c:572
 #, c-format
 msgid "ACL array contains wrong data type"
 msgstr "el array ACL contiene tipo de datos incorrecto"
 
-#: utils/adt/acl.c:544
+#: utils/adt/acl.c:576
 #, c-format
 msgid "ACL arrays must be one-dimensional"
 msgstr "los array de ACL debe ser unidimensional"
 
-#: utils/adt/acl.c:548
+#: utils/adt/acl.c:580
 #, c-format
 msgid "ACL arrays must not contain null values"
 msgstr "los arrays de ACL no pueden contener valores nulos"
 
-#: utils/adt/acl.c:572
+#: utils/adt/acl.c:609
 #, 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:1214
+#: utils/adt/acl.c:1251
 #, 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:1275
-#, c-format
-msgid "dependent privileges exist"
-msgstr "existen privilegios dependientes"
-
-#: utils/adt/acl.c:1276
-#, c-format
-msgid "Use CASCADE to revoke them too."
-msgstr "Use CASCADE para revocarlos también."
-
-#: utils/adt/acl.c:1530
+#: utils/adt/acl.c:1567
 #, c-format
 msgid "aclinsert is no longer supported"
 msgstr "aclinsert ya no está soportado"
 
-#: utils/adt/acl.c:1540
+#: utils/adt/acl.c:1577
 #, c-format
 msgid "aclremove is no longer supported"
 msgstr "aclremove ya no está soportado"
 
-#: utils/adt/acl.c:1630 utils/adt/acl.c:1684
+#: utils/adt/acl.c:1697
 #, c-format
 msgid "unrecognized privilege type: \"%s\""
 msgstr "tipo de privilegio no reconocido: «%s»"
 
-#: utils/adt/acl.c:3469 utils/adt/regproc.c:101 utils/adt/regproc.c:277
+#: utils/adt/acl.c:3484 utils/adt/regproc.c:100 utils/adt/regproc.c:265
 #, c-format
 msgid "function \"%s\" does not exist"
 msgstr "no existe la función «%s»"
 
-#: utils/adt/acl.c:5008
-#, c-format
-msgid "must be member of role \"%s\""
+#: utils/adt/acl.c:5031
+#, fuzzy, c-format
+#| msgid "must be member of role \"%s\""
+msgid "must be able to SET ROLE \"%s\""
 msgstr "debe ser miembro del rol «%s»"
 
-#: utils/adt/array_expanded.c:274 utils/adt/arrayfuncs.c:936
-#: utils/adt/arrayfuncs.c:1544 utils/adt/arrayfuncs.c:3263
-#: utils/adt/arrayfuncs.c:3405 utils/adt/arrayfuncs.c:5981
-#: utils/adt/arrayfuncs.c:6322 utils/adt/arrayutils.c:94
-#: utils/adt/arrayutils.c:103 utils/adt/arrayutils.c:110
-#, 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:467
-#: utils/adt/array_userfuncs.c:547 utils/adt/json.c:645 utils/adt/json.c:740
-#: utils/adt/json.c:778 utils/adt/jsonb.c:1114 utils/adt/jsonb.c:1143
-#: utils/adt/jsonb.c:1537 utils/adt/jsonb.c:1701 utils/adt/jsonb.c:1711
+#: utils/adt/array_userfuncs.c:102 utils/adt/array_userfuncs.c:489
+#: utils/adt/array_userfuncs.c:878 utils/adt/json.c:694 utils/adt/json.c:831
+#: utils/adt/json.c:869 utils/adt/jsonb.c:1139 utils/adt/jsonb.c:1211
+#: utils/adt/jsonb.c:1629 utils/adt/jsonb.c:1817 utils/adt/jsonb.c:1827
 #, c-format
 msgid "could not determine input data type"
 msgstr "no se pudo determinar el tipo de dato de entrada"
 
-#: utils/adt/array_userfuncs.c:85
+#: utils/adt/array_userfuncs.c:107
 #, c-format
 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/float.c:1234 utils/adt/float.c:1308 utils/adt/float.c:4046
-#: utils/adt/float.c:4060 utils/adt/int.c:781 utils/adt/int.c:803
-#: utils/adt/int.c:817 utils/adt/int.c:831 utils/adt/int.c:862
-#: utils/adt/int.c:883 utils/adt/int.c:1000 utils/adt/int.c:1014
-#: utils/adt/int.c:1028 utils/adt/int.c:1061 utils/adt/int.c:1075
-#: utils/adt/int.c:1089 utils/adt/int.c:1120 utils/adt/int.c:1202
-#: utils/adt/int.c:1266 utils/adt/int.c:1334 utils/adt/int.c:1340
-#: utils/adt/int8.c:1257 utils/adt/numeric.c:1830 utils/adt/numeric.c:4265
-#: utils/adt/varbit.c:1195 utils/adt/varbit.c:1596 utils/adt/varlena.c:1113
-#: utils/adt/varlena.c:3391
+#: utils/adt/array_userfuncs.c:151 utils/adt/array_userfuncs.c:203
+#: utils/adt/float.c:1229 utils/adt/float.c:1303 utils/adt/float.c:4118
+#: utils/adt/float.c:4156 utils/adt/int.c:778 utils/adt/int.c:800
+#: utils/adt/int.c:814 utils/adt/int.c:828 utils/adt/int.c:859
+#: utils/adt/int.c:880 utils/adt/int.c:997 utils/adt/int.c:1011
+#: utils/adt/int.c:1025 utils/adt/int.c:1058 utils/adt/int.c:1072
+#: utils/adt/int.c:1086 utils/adt/int.c:1117 utils/adt/int.c:1199
+#: utils/adt/int.c:1263 utils/adt/int.c:1331 utils/adt/int.c:1337
+#: utils/adt/int8.c:1257 utils/adt/numeric.c:1901 utils/adt/numeric.c:4388
+#: utils/adt/rangetypes.c:1481 utils/adt/rangetypes.c:1494
+#: utils/adt/varbit.c:1195 utils/adt/varbit.c:1596 utils/adt/varlena.c:1132
+#: utils/adt/varlena.c:3135
 #, c-format
 msgid "integer out of range"
 msgstr "entero fuera de rango"
 
-#: utils/adt/array_userfuncs.c:136 utils/adt/array_userfuncs.c:191
+#: utils/adt/array_userfuncs.c:158 utils/adt/array_userfuncs.c:213
 #, c-format
 msgid "argument must be empty or one-dimensional array"
 msgstr "el argumento debe ser vacío o un array unidimensional"
 
-#: utils/adt/array_userfuncs.c:273 utils/adt/array_userfuncs.c:312
-#: utils/adt/array_userfuncs.c:349 utils/adt/array_userfuncs.c:378
-#: utils/adt/array_userfuncs.c:406
+#: utils/adt/array_userfuncs.c:295 utils/adt/array_userfuncs.c:334
+#: utils/adt/array_userfuncs.c:371 utils/adt/array_userfuncs.c:400
+#: utils/adt/array_userfuncs.c:428
 #, c-format
 msgid "cannot concatenate incompatible arrays"
 msgstr "no se pueden concatenar arrays incompatibles"
 
-#: utils/adt/array_userfuncs.c:274
+#: utils/adt/array_userfuncs.c:296
 #, c-format
 msgid "Arrays with element types %s and %s are not compatible for concatenation."
 msgstr "Los arrays con elementos de tipo %s y %s son incompatibles para la concatenación."
 
-#: utils/adt/array_userfuncs.c:313
+#: utils/adt/array_userfuncs.c:335
 #, c-format
 msgid "Arrays of %d and %d dimensions are not compatible for concatenation."
 msgstr "Los arrays de dimesiones %d y %d son incompatibles para la concatenación."
 
-#: utils/adt/array_userfuncs.c:350
+#: utils/adt/array_userfuncs.c:372
 #, c-format
 msgid "Arrays with differing element dimensions are not compatible for concatenation."
 msgstr "Los arrays con elementos de diferentes dimensiones son incompatibles para la concatenación."
 
-#: utils/adt/array_userfuncs.c:379 utils/adt/array_userfuncs.c:407
+#: utils/adt/array_userfuncs.c:401 utils/adt/array_userfuncs.c:429
 #, c-format
 msgid "Arrays with differing dimensions are not compatible for concatenation."
 msgstr "Los arrays con diferentes dimensiones son incompatibles para la concatenación."
 
-#: utils/adt/array_userfuncs.c:663 utils/adt/array_userfuncs.c:815
+#: utils/adt/array_userfuncs.c:987 utils/adt/array_userfuncs.c:995
+#: utils/adt/arrayfuncs.c:5591 utils/adt/arrayfuncs.c:5597
+#, c-format
+msgid "cannot accumulate arrays of different dimensionality"
+msgstr "no se pueden acumular arrays de distinta dimensionalidad"
+
+#: utils/adt/array_userfuncs.c:1286 utils/adt/array_userfuncs.c:1440
 #, c-format
 msgid "searching for elements in multidimensional arrays is not supported"
 msgstr "no está soportada la búsqueda de elementos en arrays multidimensionales"
 
-#: utils/adt/array_userfuncs.c:687
+#: utils/adt/array_userfuncs.c:1315
 #, c-format
 msgid "initial position must not be null"
 msgstr "la posición inicial no debe ser null"
 
-#: utils/adt/arrayfuncs.c:271 utils/adt/arrayfuncs.c:285
-#: utils/adt/arrayfuncs.c:296 utils/adt/arrayfuncs.c:318
-#: utils/adt/arrayfuncs.c:333 utils/adt/arrayfuncs.c:347
-#: utils/adt/arrayfuncs.c:353 utils/adt/arrayfuncs.c:360
-#: utils/adt/arrayfuncs.c:493 utils/adt/arrayfuncs.c:509
-#: utils/adt/arrayfuncs.c:520 utils/adt/arrayfuncs.c:535
-#: utils/adt/arrayfuncs.c:556 utils/adt/arrayfuncs.c:586
-#: utils/adt/arrayfuncs.c:593 utils/adt/arrayfuncs.c:601
-#: utils/adt/arrayfuncs.c:635 utils/adt/arrayfuncs.c:658
-#: utils/adt/arrayfuncs.c:678 utils/adt/arrayfuncs.c:790
-#: utils/adt/arrayfuncs.c:799 utils/adt/arrayfuncs.c:829
-#: utils/adt/arrayfuncs.c:844 utils/adt/arrayfuncs.c:897
+#: utils/adt/array_userfuncs.c:1688
+#, fuzzy, c-format
+#| msgid "sample percentage must be between 0 and 100"
+msgid "sample size must be between 0 and %d"
+msgstr "el porcentaje de muestreo debe estar entre 0 y 100"
+
+#: utils/adt/arrayfuncs.c:273 utils/adt/arrayfuncs.c:287
+#: utils/adt/arrayfuncs.c:298 utils/adt/arrayfuncs.c:320
+#: utils/adt/arrayfuncs.c:337 utils/adt/arrayfuncs.c:351
+#: utils/adt/arrayfuncs.c:359 utils/adt/arrayfuncs.c:366
+#: utils/adt/arrayfuncs.c:506 utils/adt/arrayfuncs.c:521
+#: utils/adt/arrayfuncs.c:532 utils/adt/arrayfuncs.c:547
+#: utils/adt/arrayfuncs.c:568 utils/adt/arrayfuncs.c:598
+#: utils/adt/arrayfuncs.c:605 utils/adt/arrayfuncs.c:613
+#: utils/adt/arrayfuncs.c:647 utils/adt/arrayfuncs.c:670
+#: utils/adt/arrayfuncs.c:690 utils/adt/arrayfuncs.c:807
+#: utils/adt/arrayfuncs.c:816 utils/adt/arrayfuncs.c:846
+#: utils/adt/arrayfuncs.c:861 utils/adt/arrayfuncs.c:914
 #, c-format
 msgid "malformed array literal: \"%s\""
 msgstr "literal de array mal formado: «%s»"
 
-#: utils/adt/arrayfuncs.c:272
+#: utils/adt/arrayfuncs.c:274
 #, c-format
 msgid "\"[\" must introduce explicitly-specified array dimensions."
 msgstr "Un «[» debe introducir dimensiones de array especificadas explícitamente."
 
-#: utils/adt/arrayfuncs.c:286
+#: utils/adt/arrayfuncs.c:288
 #, c-format
 msgid "Missing array dimension value."
 msgstr "Falta un valor de dimensión de array."
 
-#: utils/adt/arrayfuncs.c:297 utils/adt/arrayfuncs.c:334
+#: utils/adt/arrayfuncs.c:299 utils/adt/arrayfuncs.c:338
 #, c-format
 msgid "Missing \"%s\" after array dimensions."
 msgstr "Falta «%s» luego de las dimensiones de array."
 
-#: utils/adt/arrayfuncs.c:306 utils/adt/arrayfuncs.c:2910
-#: utils/adt/arrayfuncs.c:2942 utils/adt/arrayfuncs.c:2957
+#: utils/adt/arrayfuncs.c:308 utils/adt/arrayfuncs.c:2933
+#: utils/adt/arrayfuncs.c:2965 utils/adt/arrayfuncs.c:2980
 #, 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:319
+#: utils/adt/arrayfuncs.c:321
 #, 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:348
+#: utils/adt/arrayfuncs.c:352
 #, c-format
 msgid "Array contents must start with \"{\"."
 msgstr "El contenido del array debe empezar con «{»."
 
-#: utils/adt/arrayfuncs.c:354 utils/adt/arrayfuncs.c:361
+#: utils/adt/arrayfuncs.c:360 utils/adt/arrayfuncs.c:367
 #, 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:494 utils/adt/arrayfuncs.c:521
-#: utils/adt/multirangetypes.c:164 utils/adt/rangetypes.c:2310
-#: utils/adt/rangetypes.c:2318 utils/adt/rowtypes.c:211
-#: utils/adt/rowtypes.c:219
+#: utils/adt/arrayfuncs.c:507 utils/adt/arrayfuncs.c:533
+#: utils/adt/multirangetypes.c:166 utils/adt/rangetypes.c:2405
+#: utils/adt/rangetypes.c:2413 utils/adt/rowtypes.c:219
+#: utils/adt/rowtypes.c:230
 #, c-format
 msgid "Unexpected end of input."
 msgstr "Fin inesperado de la entrada."
 
-#: utils/adt/arrayfuncs.c:510 utils/adt/arrayfuncs.c:557
-#: utils/adt/arrayfuncs.c:587 utils/adt/arrayfuncs.c:636
+#: utils/adt/arrayfuncs.c:522 utils/adt/arrayfuncs.c:569
+#: utils/adt/arrayfuncs.c:599 utils/adt/arrayfuncs.c:648
 #, c-format
 msgid "Unexpected \"%c\" character."
 msgstr "Carácter «%c» inesperado."
 
-#: utils/adt/arrayfuncs.c:536 utils/adt/arrayfuncs.c:659
+#: utils/adt/arrayfuncs.c:548 utils/adt/arrayfuncs.c:671
 #, c-format
 msgid "Unexpected array element."
 msgstr "Elemento de array inesperado."
 
-#: utils/adt/arrayfuncs.c:594
+#: utils/adt/arrayfuncs.c:606
 #, c-format
 msgid "Unmatched \"%c\" character."
 msgstr "Carácter «%c» desemparejado."
 
-#: utils/adt/arrayfuncs.c:602 utils/adt/jsonfuncs.c:2482
+#: utils/adt/arrayfuncs.c:614 utils/adt/jsonfuncs.c:2553
 #, 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:679 utils/adt/multirangetypes.c:287
+#: utils/adt/arrayfuncs.c:691 utils/adt/multirangetypes.c:293
 #, c-format
 msgid "Junk after closing right brace."
 msgstr "Basura después de la llave derecha de cierre."
 
-#: utils/adt/arrayfuncs.c:1301 utils/adt/arrayfuncs.c:3371
-#: utils/adt/arrayfuncs.c:5885
+#: utils/adt/arrayfuncs.c:1325 utils/adt/arrayfuncs.c:3480
+#: utils/adt/arrayfuncs.c:6081
 #, c-format
 msgid "invalid number of dimensions: %d"
 msgstr "número incorrecto de dimensiones: %d"
 
-#: utils/adt/arrayfuncs.c:1312
+#: utils/adt/arrayfuncs.c:1336
 #, c-format
 msgid "invalid array flags"
 msgstr "opciones de array no válidas"
 
-#: utils/adt/arrayfuncs.c:1334
+#: utils/adt/arrayfuncs.c:1358
 #, c-format
 msgid "binary data has array element type %u (%s) instead of expected %u (%s)"
 msgstr "los datos binarios tienen el tipo de elemento de array %u (%s) en lugar del esperado %u (%s)"
 
-#: utils/adt/arrayfuncs.c:1378 utils/adt/multirangetypes.c:445
-#: utils/adt/rangetypes.c:333 utils/cache/lsyscache.c:2915
+#: utils/adt/arrayfuncs.c:1402 utils/adt/multirangetypes.c:451
+#: utils/adt/rangetypes.c:344 utils/cache/lsyscache.c:2916
 #, 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:1518
+#: utils/adt/arrayfuncs.c:1542
 #, 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:1599 utils/adt/multirangetypes.c:450
-#: utils/adt/rangetypes.c:338 utils/cache/lsyscache.c:2948
+#: utils/adt/arrayfuncs.c:1623 utils/adt/multirangetypes.c:456
+#: utils/adt/rangetypes.c:349 utils/cache/lsyscache.c:2949
 #, 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:2078
+#: utils/adt/arrayfuncs.c:2102
 #, 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:2256 utils/adt/arrayfuncs.c:2278
-#: utils/adt/arrayfuncs.c:2327 utils/adt/arrayfuncs.c:2566
-#: utils/adt/arrayfuncs.c:2888 utils/adt/arrayfuncs.c:5871
-#: utils/adt/arrayfuncs.c:5897 utils/adt/arrayfuncs.c:5908
-#: utils/adt/json.c:1141 utils/adt/json.c:1215 utils/adt/jsonb.c:1315
-#: utils/adt/jsonb.c:1401 utils/adt/jsonfuncs.c:4318 utils/adt/jsonfuncs.c:4471
-#: utils/adt/jsonfuncs.c:4583 utils/adt/jsonfuncs.c:4632
+#: utils/adt/arrayfuncs.c:2280 utils/adt/arrayfuncs.c:2302
+#: utils/adt/arrayfuncs.c:2351 utils/adt/arrayfuncs.c:2589
+#: utils/adt/arrayfuncs.c:2911 utils/adt/arrayfuncs.c:6067
+#: utils/adt/arrayfuncs.c:6093 utils/adt/arrayfuncs.c:6104
+#: utils/adt/json.c:1497 utils/adt/json.c:1569 utils/adt/jsonb.c:1416
+#: utils/adt/jsonb.c:1500 utils/adt/jsonfuncs.c:4434 utils/adt/jsonfuncs.c:4587
+#: utils/adt/jsonfuncs.c:4698 utils/adt/jsonfuncs.c:4746
 #, c-format
 msgid "wrong number of array subscripts"
 msgstr "número incorrecto de subíndices del array"
 
-#: utils/adt/arrayfuncs.c:2261 utils/adt/arrayfuncs.c:2369
-#: utils/adt/arrayfuncs.c:2633 utils/adt/arrayfuncs.c:2947
+#: utils/adt/arrayfuncs.c:2285 utils/adt/arrayfuncs.c:2393
+#: utils/adt/arrayfuncs.c:2656 utils/adt/arrayfuncs.c:2970
 #, c-format
 msgid "array subscript out of range"
 msgstr "subíndice de array fuera de rango"
 
-#: utils/adt/arrayfuncs.c:2266
+#: utils/adt/arrayfuncs.c:2290
 #, 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:2835
+#: utils/adt/arrayfuncs.c:2858
 #, 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:2866
+#: utils/adt/arrayfuncs.c:2889
 #, 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:2867
+#: utils/adt/arrayfuncs.c:2890
 #, 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:2878 utils/adt/arrayfuncs.c:2974
+#: utils/adt/arrayfuncs.c:2901 utils/adt/arrayfuncs.c:2997
 #, c-format
 msgid "source array too small"
 msgstr "el array de origen es demasiado pequeño"
 
-#: utils/adt/arrayfuncs.c:3529
+#: utils/adt/arrayfuncs.c:3638
 #, 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:3631 utils/adt/arrayfuncs.c:3802
-#: utils/adt/arrayfuncs.c:4193
+#: utils/adt/arrayfuncs.c:3809 utils/adt/arrayfuncs.c:3980
+#: utils/adt/arrayfuncs.c:4371
 #, 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:3980 utils/adt/multirangetypes.c:2799
-#: utils/adt/multirangetypes.c:2871 utils/adt/rangetypes.c:1343
-#: utils/adt/rangetypes.c:1407 utils/adt/rowtypes.c:1858
+#: utils/adt/arrayfuncs.c:4158 utils/adt/multirangetypes.c:2806
+#: utils/adt/multirangetypes.c:2878 utils/adt/rangetypes.c:1354
+#: utils/adt/rangetypes.c:1418 utils/adt/rowtypes.c:1885
 #, 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:4108 utils/adt/rowtypes.c:1979
+#: utils/adt/arrayfuncs.c:4286 utils/adt/rowtypes.c:2006
 #, 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:5285
+#: utils/adt/arrayfuncs.c:5481
 #, c-format
 msgid "data type %s is not an array type"
 msgstr "el tipo %s no es un array"
 
-#: utils/adt/arrayfuncs.c:5340
+#: utils/adt/arrayfuncs.c:5536
 #, c-format
 msgid "cannot accumulate null arrays"
 msgstr "no se pueden acumular arrays nulos"
 
-#: utils/adt/arrayfuncs.c:5368
+#: utils/adt/arrayfuncs.c:5564
 #, c-format
 msgid "cannot accumulate empty arrays"
 msgstr "no se pueden acumular arrays vacíos"
 
-#: utils/adt/arrayfuncs.c:5395 utils/adt/arrayfuncs.c:5401
-#, c-format
-msgid "cannot accumulate arrays of different dimensionality"
-msgstr "no se pueden acumular arrays de distinta dimensionalidad"
-
-#: utils/adt/arrayfuncs.c:5769 utils/adt/arrayfuncs.c:5809
+#: utils/adt/arrayfuncs.c:5965 utils/adt/arrayfuncs.c:6005
 #, 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:5872 utils/adt/arrayfuncs.c:5898
+#: utils/adt/arrayfuncs.c:6068 utils/adt/arrayfuncs.c:6094
 #, c-format
 msgid "Dimension array must be one dimensional."
 msgstr "El array de dimensiones debe ser unidimensional."
 
-#: utils/adt/arrayfuncs.c:5877 utils/adt/arrayfuncs.c:5903
+#: utils/adt/arrayfuncs.c:6073 utils/adt/arrayfuncs.c:6099
 #, c-format
 msgid "dimension values cannot be null"
 msgstr "los valores de dimensión no pueden ser null"
 
-#: utils/adt/arrayfuncs.c:5909
+#: utils/adt/arrayfuncs.c:6105
 #, 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:6187
+#: utils/adt/arrayfuncs.c:6383
 #, 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:6464
+#: utils/adt/arrayfuncs.c:6660
 #, c-format
 msgid "thresholds must be one-dimensional array"
 msgstr "los umbrales deben ser un array unidimensional"
 
-#: utils/adt/arrayfuncs.c:6469
+#: utils/adt/arrayfuncs.c:6665
 #, c-format
 msgid "thresholds array must not contain NULLs"
 msgstr "el array de umbrales no debe contener nulos"
 
-#: utils/adt/arrayfuncs.c:6702
+#: utils/adt/arrayfuncs.c:6898
 #, c-format
 msgid "number of elements to trim must be between 0 and %d"
 msgstr "el número de elementos a recortar debe estar entre 0 y %d"
@@ -22943,244 +23608,240 @@ msgstr "los subíndices de arrays deben tener tipo entero"
 msgid "array subscript in assignment must not be null"
 msgstr "subíndice de array en asignación no puede ser nulo"
 
-#: utils/adt/arrayutils.c:140
+#: utils/adt/arrayutils.c:161
 #, c-format
 msgid "array lower bound is too large: %d"
 msgstr "el límite inferior del array es demasiado grande: %d"
 
-#: utils/adt/arrayutils.c:240
+#: utils/adt/arrayutils.c:263
 #, c-format
 msgid "typmod array must be type cstring[]"
 msgstr "el array de typmod debe ser de tipo cstring[]"
 
-#: utils/adt/arrayutils.c:245
+#: utils/adt/arrayutils.c:268
 #, c-format
 msgid "typmod array must be one-dimensional"
 msgstr "array de typmod debe ser unidimensional"
 
-#: utils/adt/arrayutils.c:250
+#: utils/adt/arrayutils.c:273
 #, c-format
 msgid "typmod array must not contain nulls"
 msgstr "los arrays de typmod no deben contener valores nulos"
 
-#: utils/adt/ascii.c:76
+#: utils/adt/ascii.c:77
 #, c-format
 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:276 utils/adt/datetime.c:4058
-#: utils/adt/float.c:188 utils/adt/float.c:272 utils/adt/float.c:284
-#: utils/adt/float.c:401 utils/adt/float.c:486 utils/adt/float.c:502
-#: 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:1389 utils/adt/geo_ops.c:1424
-#: utils/adt/geo_ops.c:1432 utils/adt/geo_ops.c:3392 utils/adt/geo_ops.c:4607
-#: utils/adt/geo_ops.c:4622 utils/adt/geo_ops.c:4629 utils/adt/int.c:165
-#: utils/adt/int.c:177 utils/adt/jsonpath.c:182 utils/adt/mac.c:93
-#: 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:99
-#: utils/adt/numeric.c:698 utils/adt/numeric.c:717 utils/adt/numeric.c:6854
-#: utils/adt/numeric.c:6878 utils/adt/numeric.c:6902 utils/adt/numeric.c:7904
-#: utils/adt/numutils.c:158 utils/adt/numutils.c:234 utils/adt/numutils.c:318
-#: 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:74 utils/adt/tid.c:76 utils/adt/tid.c:84
-#: utils/adt/tid.c:98 utils/adt/tid.c:107 utils/adt/timestamp.c:497
-#: utils/adt/uuid.c:135 utils/adt/xid8funcs.c:346
+#: utils/adt/bool.c:153 utils/adt/cash.c:277 utils/adt/datetime.c:4017
+#: utils/adt/float.c:207 utils/adt/float.c:294 utils/adt/float.c:308
+#: utils/adt/float.c:413 utils/adt/float.c:496 utils/adt/float.c:510
+#: utils/adt/geo_ops.c:250 utils/adt/geo_ops.c:335 utils/adt/geo_ops.c:974
+#: utils/adt/geo_ops.c:1417 utils/adt/geo_ops.c:1454 utils/adt/geo_ops.c:1462
+#: utils/adt/geo_ops.c:3428 utils/adt/geo_ops.c:4650 utils/adt/geo_ops.c:4665
+#: utils/adt/geo_ops.c:4672 utils/adt/int.c:174 utils/adt/int.c:186
+#: utils/adt/jsonpath.c:183 utils/adt/mac.c:94 utils/adt/mac8.c:225
+#: utils/adt/network.c:99 utils/adt/numeric.c:795 utils/adt/numeric.c:7136
+#: utils/adt/numeric.c:7339 utils/adt/numeric.c:8286 utils/adt/numutils.c:273
+#: utils/adt/numutils.c:451 utils/adt/numutils.c:629 utils/adt/numutils.c:668
+#: utils/adt/numutils.c:690 utils/adt/numutils.c:754 utils/adt/numutils.c:776
+#: utils/adt/pg_lsn.c:74 utils/adt/tid.c:72 utils/adt/tid.c:80
+#: utils/adt/tid.c:94 utils/adt/tid.c:103 utils/adt/timestamp.c:493
+#: utils/adt/uuid.c:135 utils/adt/xid8funcs.c:354
 #, 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:214 utils/adt/cash.c:239 utils/adt/cash.c:249
-#: utils/adt/cash.c:289 utils/adt/int.c:171 utils/adt/numutils.c:152
-#: utils/adt/numutils.c:228 utils/adt/numutils.c:312 utils/adt/oid.c:70
-#: utils/adt/oid.c:109
+#: utils/adt/cash.c:215 utils/adt/cash.c:240 utils/adt/cash.c:250
+#: utils/adt/cash.c:290 utils/adt/int.c:180 utils/adt/numutils.c:267
+#: utils/adt/numutils.c:445 utils/adt/numutils.c:623 utils/adt/numutils.c:674
+#: utils/adt/numutils.c:713 utils/adt/numutils.c:760
 #, c-format
 msgid "value \"%s\" is out of range for type %s"
 msgstr "el valor «%s» está fuera de rango para el tipo %s"
 
-#: utils/adt/cash.c:651 utils/adt/cash.c:701 utils/adt/cash.c:752
-#: utils/adt/cash.c:801 utils/adt/cash.c:853 utils/adt/cash.c:903
-#: utils/adt/float.c:105 utils/adt/int.c:846 utils/adt/int.c:962
-#: utils/adt/int.c:1042 utils/adt/int.c:1104 utils/adt/int.c:1142
-#: utils/adt/int.c:1170 utils/adt/int8.c:515 utils/adt/int8.c:573
+#: 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/float.c:105 utils/adt/int.c:843 utils/adt/int.c:959
+#: utils/adt/int.c:1039 utils/adt/int.c:1101 utils/adt/int.c:1139
+#: utils/adt/int.c:1167 utils/adt/int8.c:515 utils/adt/int8.c:573
 #: utils/adt/int8.c:943 utils/adt/int8.c:1023 utils/adt/int8.c:1085
-#: utils/adt/int8.c:1165 utils/adt/numeric.c:3093 utils/adt/numeric.c:3116
-#: utils/adt/numeric.c:3201 utils/adt/numeric.c:3219 utils/adt/numeric.c:3315
-#: utils/adt/numeric.c:8453 utils/adt/numeric.c:8743 utils/adt/numeric.c:9068
-#: utils/adt/numeric.c:10525 utils/adt/timestamp.c:3337
+#: utils/adt/int8.c:1165 utils/adt/numeric.c:3175 utils/adt/numeric.c:3198
+#: utils/adt/numeric.c:3283 utils/adt/numeric.c:3301 utils/adt/numeric.c:3397
+#: utils/adt/numeric.c:8835 utils/adt/numeric.c:9148 utils/adt/numeric.c:9496
+#: utils/adt/numeric.c:9612 utils/adt/numeric.c:11122
+#: utils/adt/timestamp.c:3414
 #, c-format
 msgid "division by zero"
 msgstr "división por cero"
 
-#: utils/adt/char.c:196
+#: utils/adt/char.c:197
 #, c-format
 msgid "\"char\" out of range"
 msgstr "«char» fuera de rango"
 
-#: utils/adt/cryptohashfuncs.c:47 utils/adt/cryptohashfuncs.c:69
+#: utils/adt/cryptohashfuncs.c:48 utils/adt/cryptohashfuncs.c:70
 #, fuzzy, c-format
-#| msgid "could not compress data: %s"
+#| msgid "could not decompress data: %s"
 msgid "could not compute %s hash: %s"
-msgstr "no se pudo comprimir datos: %s"
-
-#: utils/adt/date.c:63 utils/adt/timestamp.c:98 utils/adt/varbit.c:105
-#: utils/adt/varchar.c:48
-#, c-format
-msgid "invalid type modifier"
-msgstr "el modificador de tipo no es válido"
+msgstr "no se pudo descomprimir datos: %s"
 
-#: utils/adt/date.c:75
+#: utils/adt/date.c:54
 #, 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:81
+#: utils/adt/date.c:60
 #, 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:160 utils/adt/date.c:168 utils/adt/formatting.c:4299
-#: utils/adt/formatting.c:4308 utils/adt/formatting.c:4414
-#: utils/adt/formatting.c:4424
+#: utils/adt/date.c:84 utils/adt/timestamp.c:121 utils/adt/varbit.c:105
+#: utils/adt/varchar.c:49
+#, c-format
+msgid "invalid type modifier"
+msgstr "el modificador de tipo no es válido"
+
+#: utils/adt/date.c:165 utils/adt/date.c:173 utils/adt/formatting.c:4241
+#: utils/adt/formatting.c:4250 utils/adt/formatting.c:4363
+#: utils/adt/formatting.c:4373
 #, c-format
 msgid "date out of range: \"%s\""
 msgstr "fecha fuera de rango: «%s»"
 
-#: utils/adt/date.c:215 utils/adt/date.c:513 utils/adt/date.c:537
-#: utils/adt/xml.c:2209
+#: utils/adt/date.c:220 utils/adt/date.c:528 utils/adt/date.c:552
+#: utils/adt/rangetypes.c:1577 utils/adt/rangetypes.c:1592 utils/adt/xml.c:2460
 #, c-format
 msgid "date out of range"
 msgstr "fecha fuera de rango"
 
-#: utils/adt/date.c:261 utils/adt/timestamp.c:581
+#: utils/adt/date.c:266 utils/adt/timestamp.c:581
 #, c-format
 msgid "date field value out of range: %d-%02d-%02d"
 msgstr "valor en campo de fecha fuera de rango: %d-%02d-%02d"
 
-#: utils/adt/date.c:268 utils/adt/date.c:277 utils/adt/timestamp.c:587
+#: utils/adt/date.c:273 utils/adt/date.c:282 utils/adt/timestamp.c:587
 #, c-format
 msgid "date out of range: %d-%02d-%02d"
 msgstr "fecha fuera de rango: %d-%02d-%02d"
 
-#: utils/adt/date.c:488
+#: utils/adt/date.c:503
 #, c-format
 msgid "cannot subtract infinite dates"
 msgstr "no se pueden restar fechas infinitas"
 
-#: utils/adt/date.c:586 utils/adt/date.c:649 utils/adt/date.c:685
-#: utils/adt/date.c:2868 utils/adt/date.c:2878
+#: utils/adt/date.c:601 utils/adt/date.c:664 utils/adt/date.c:700
+#: utils/adt/date.c:2894 utils/adt/date.c:2904
 #, c-format
 msgid "date out of range for timestamp"
 msgstr "fecha fuera de rango para timestamp"
 
-#: utils/adt/date.c:1115 utils/adt/date.c:1198 utils/adt/date.c:1214
-#: utils/adt/date.c:2195 utils/adt/date.c:2973 utils/adt/timestamp.c:4032
-#: utils/adt/timestamp.c:4225 utils/adt/timestamp.c:4397
-#: utils/adt/timestamp.c:4650 utils/adt/timestamp.c:4851
-#: utils/adt/timestamp.c:4898 utils/adt/timestamp.c:5122
-#: utils/adt/timestamp.c:5169 utils/adt/timestamp.c:5299
+#: utils/adt/date.c:1130 utils/adt/date.c:1213 utils/adt/date.c:1229
+#: utils/adt/date.c:2215 utils/adt/date.c:2999 utils/adt/timestamp.c:4105
+#: utils/adt/timestamp.c:4298 utils/adt/timestamp.c:4440
+#: utils/adt/timestamp.c:4693 utils/adt/timestamp.c:4894
+#: utils/adt/timestamp.c:4941 utils/adt/timestamp.c:5165
+#: utils/adt/timestamp.c:5212 utils/adt/timestamp.c:5342
 #, fuzzy, c-format
-#| msgid "date units \"%s\" not supported"
+#| msgid "\"RN\" not supported for input"
 msgid "unit \"%s\" not supported for type %s"
-msgstr "las unidades de «date» «%s» no están soportadas"
+msgstr "«RN» no está soportado en la entrada"
 
-#: utils/adt/date.c:1223 utils/adt/date.c:2211 utils/adt/date.c:2993
-#: utils/adt/timestamp.c:4046 utils/adt/timestamp.c:4242
-#: utils/adt/timestamp.c:4411 utils/adt/timestamp.c:4610
-#: utils/adt/timestamp.c:4907 utils/adt/timestamp.c:5178
-#: utils/adt/timestamp.c:5360
+#: utils/adt/date.c:1238 utils/adt/date.c:2231 utils/adt/date.c:3019
+#: utils/adt/timestamp.c:4119 utils/adt/timestamp.c:4315
+#: utils/adt/timestamp.c:4454 utils/adt/timestamp.c:4653
+#: utils/adt/timestamp.c:4950 utils/adt/timestamp.c:5221
+#: utils/adt/timestamp.c:5403
 #, fuzzy, c-format
-#| msgid "date units \"%s\" not recognized"
+#| msgid "%s: unrecognized start type \"%s\"\n"
 msgid "unit \"%s\" not recognized for type %s"
-msgstr "las unidades de «date» «%s» no son reconocidas"
-
-#: utils/adt/date.c:1307 utils/adt/date.c:1353 utils/adt/date.c:1907
-#: utils/adt/date.c:1938 utils/adt/date.c:1967 utils/adt/date.c:2831
-#: utils/adt/date.c:3078 utils/adt/datetime.c:420 utils/adt/datetime.c:1869
-#: utils/adt/formatting.c:4141 utils/adt/formatting.c:4177
-#: utils/adt/formatting.c:4268 utils/adt/formatting.c:4390 utils/adt/json.c:418
-#: utils/adt/json.c:457 utils/adt/timestamp.c:225 utils/adt/timestamp.c:257
+msgstr "%s: tipo de inicio «%s» no reconocido\n"
+
+#: utils/adt/date.c:1322 utils/adt/date.c:1368 utils/adt/date.c:1927
+#: utils/adt/date.c:1958 utils/adt/date.c:1987 utils/adt/date.c:2857
+#: utils/adt/date.c:3089 utils/adt/datetime.c:424 utils/adt/datetime.c:1809
+#: utils/adt/formatting.c:4081 utils/adt/formatting.c:4117
+#: utils/adt/formatting.c:4210 utils/adt/formatting.c:4339 utils/adt/json.c:467
+#: utils/adt/json.c:506 utils/adt/timestamp.c:231 utils/adt/timestamp.c:263
 #: utils/adt/timestamp.c:699 utils/adt/timestamp.c:708
 #: utils/adt/timestamp.c:786 utils/adt/timestamp.c:819
-#: utils/adt/timestamp.c:2916 utils/adt/timestamp.c:2937
-#: utils/adt/timestamp.c:2950 utils/adt/timestamp.c:2959
-#: utils/adt/timestamp.c:2967 utils/adt/timestamp.c:3022
-#: utils/adt/timestamp.c:3045 utils/adt/timestamp.c:3058
-#: utils/adt/timestamp.c:3069 utils/adt/timestamp.c:3077
-#: utils/adt/timestamp.c:3736 utils/adt/timestamp.c:3860
-#: utils/adt/timestamp.c:3950 utils/adt/timestamp.c:4040
-#: utils/adt/timestamp.c:4133 utils/adt/timestamp.c:4236
-#: utils/adt/timestamp.c:4715 utils/adt/timestamp.c:4989
-#: utils/adt/timestamp.c:5439 utils/adt/timestamp.c:5453
-#: utils/adt/timestamp.c:5458 utils/adt/timestamp.c:5472
-#: utils/adt/timestamp.c:5505 utils/adt/timestamp.c:5592
-#: utils/adt/timestamp.c:5633 utils/adt/timestamp.c:5637
-#: utils/adt/timestamp.c:5706 utils/adt/timestamp.c:5710
-#: utils/adt/timestamp.c:5724 utils/adt/timestamp.c:5758 utils/adt/xml.c:2231
-#: utils/adt/xml.c:2238 utils/adt/xml.c:2258 utils/adt/xml.c:2265
+#: utils/adt/timestamp.c:2941 utils/adt/timestamp.c:2962
+#: utils/adt/timestamp.c:2975 utils/adt/timestamp.c:2984
+#: utils/adt/timestamp.c:2992 utils/adt/timestamp.c:3053
+#: utils/adt/timestamp.c:3076 utils/adt/timestamp.c:3089
+#: utils/adt/timestamp.c:3100 utils/adt/timestamp.c:3108
+#: utils/adt/timestamp.c:3809 utils/adt/timestamp.c:3933
+#: utils/adt/timestamp.c:4023 utils/adt/timestamp.c:4113
+#: utils/adt/timestamp.c:4206 utils/adt/timestamp.c:4309
+#: utils/adt/timestamp.c:4758 utils/adt/timestamp.c:5032
+#: utils/adt/timestamp.c:5471 utils/adt/timestamp.c:5481
+#: utils/adt/timestamp.c:5486 utils/adt/timestamp.c:5492
+#: utils/adt/timestamp.c:5525 utils/adt/timestamp.c:5612
+#: utils/adt/timestamp.c:5653 utils/adt/timestamp.c:5657
+#: utils/adt/timestamp.c:5711 utils/adt/timestamp.c:5715
+#: utils/adt/timestamp.c:5721 utils/adt/timestamp.c:5755 utils/adt/xml.c:2482
+#: utils/adt/xml.c:2489 utils/adt/xml.c:2509 utils/adt/xml.c:2516
 #, c-format
 msgid "timestamp out of range"
 msgstr "timestamp fuera de rango"
 
-#: utils/adt/date.c:1524 utils/adt/date.c:2326 utils/adt/formatting.c:4476
+#: utils/adt/date.c:1544 utils/adt/date.c:2352 utils/adt/formatting.c:4431
 #, c-format
 msgid "time out of range"
 msgstr "hora fuera de rango"
 
-#: utils/adt/date.c:1576 utils/adt/timestamp.c:596
+#: utils/adt/date.c:1596 utils/adt/timestamp.c:596
 #, c-format
 msgid "time field value out of range: %d:%02d:%02g"
 msgstr "valor en campo de hora fuera de rango: %d:%02d:%02g"
 
-#: utils/adt/date.c:2096 utils/adt/date.c:2630 utils/adt/float.c:1048
-#: utils/adt/float.c:1124 utils/adt/int.c:638 utils/adt/int.c:685
-#: utils/adt/int.c:720 utils/adt/int8.c:414 utils/adt/numeric.c:2497
-#: utils/adt/timestamp.c:3386 utils/adt/timestamp.c:3417
-#: utils/adt/timestamp.c:3448
+#: utils/adt/date.c:2116 utils/adt/date.c:2656 utils/adt/float.c:1043
+#: utils/adt/float.c:1119 utils/adt/int.c:635 utils/adt/int.c:682
+#: utils/adt/int.c:717 utils/adt/int8.c:414 utils/adt/numeric.c:2579
+#: utils/adt/timestamp.c:3463 utils/adt/timestamp.c:3490
+#: utils/adt/timestamp.c:3521
 #, 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:2334
+#: utils/adt/date.c:2360
 #, c-format
 msgid "time zone displacement out of range"
 msgstr "desplazamiento de huso horario fuera de rango"
 
-#: utils/adt/date.c:3084 utils/adt/datetime.c:1121 utils/adt/datetime.c:2027
-#: utils/adt/datetime.c:4906 utils/adt/timestamp.c:516
-#: utils/adt/timestamp.c:543 utils/adt/timestamp.c:4319
-#: utils/adt/timestamp.c:5464 utils/adt/timestamp.c:5716
-#, c-format
-msgid "time zone \"%s\" not recognized"
-msgstr "el huso horario «%s» no es reconocido"
-
-#: utils/adt/date.c:3116 utils/adt/timestamp.c:5494 utils/adt/timestamp.c:5747
+#: utils/adt/date.c:3119 utils/adt/timestamp.c:5514 utils/adt/timestamp.c:5744
 #, 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:4031 utils/adt/datetime.c:4038
+#: utils/adt/datetime.c:3223 utils/adt/datetime.c:4002
+#: utils/adt/datetime.c:4008 utils/adt/timestamp.c:511
+#, c-format
+msgid "time zone \"%s\" not recognized"
+msgstr "el huso horario «%s» no es reconocido"
+
+#: utils/adt/datetime.c:3976 utils/adt/datetime.c:3983
 #, c-format
 msgid "date/time field value out of range: \"%s\""
 msgstr "valor de hora/fecha fuera de rango: «%s»"
 
-#: utils/adt/datetime.c:4040
+#: utils/adt/datetime.c:3985
 #, c-format
 msgid "Perhaps you need a different \"datestyle\" setting."
 msgstr "Quizás necesite una configuración diferente de «datestyle»."
 
-#: utils/adt/datetime.c:4045
+#: utils/adt/datetime.c:3990
 #, c-format
 msgid "interval field value out of range: \"%s\""
 msgstr "valor de interval fuera de rango: «%s»"
 
-#: utils/adt/datetime.c:4051
+#: utils/adt/datetime.c:3996
 #, c-format
 msgid "time zone displacement out of range: \"%s\""
 msgstr "desplazamiento de huso horario fuera de rango: «%s»"
 
-#: utils/adt/datetime.c:4908
+#: utils/adt/datetime.c:4010
 #, 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»."
@@ -23190,76 +23851,76 @@ msgstr "Este nombre de huso horario aparece en el archivo de configuración para
 msgid "invalid Datum pointer"
 msgstr "puntero a Datum no válido"
 
-#: utils/adt/dbsize.c:747 utils/adt/dbsize.c:813
+#: utils/adt/dbsize.c:761 utils/adt/dbsize.c:837
 #, c-format
 msgid "invalid size: \"%s\""
 msgstr "tamaño no válido: «%s»"
 
-#: utils/adt/dbsize.c:814
+#: utils/adt/dbsize.c:838
 #, c-format
 msgid "Invalid size unit: \"%s\"."
 msgstr "Nombre de unidad de tamaño no válido: «%s»."
 
-#: utils/adt/dbsize.c:815
+#: utils/adt/dbsize.c:839
 #, fuzzy, c-format
-#| msgid "Valid units are \"bytes\", \"kB\", \"MB\", \"GB\", and \"TB\"."
-msgid "Valid units are \"bytes\", \"kB\", \"MB\", \"GB\", \"TB\", and \"PB\"."
-msgstr "Unidades válidas son «bytes«, «kB», «MB», «GB» y «TB»."
+#| msgid "Valid units for this parameter are \"B\", \"kB\", \"MB\", \"GB\", and \"TB\"."
+msgid "Valid units are \"bytes\", \"B\", \"kB\", \"MB\", \"GB\", \"TB\", and \"PB\"."
+msgstr "Unidades válidas para este parámetro son «B», «kB», «MB», «GB» y «TB»."
 
 #: utils/adt/domains.c:92
 #, c-format
 msgid "type %s is not a domain"
 msgstr "tipo «%s» no es un dominio"
 
-#: utils/adt/encode.c:65 utils/adt/encode.c:113
+#: utils/adt/encode.c:66 utils/adt/encode.c:114
 #, c-format
 msgid "unrecognized encoding: \"%s\""
 msgstr "no se reconoce la codificación: «%s»"
 
-#: utils/adt/encode.c:79
+#: utils/adt/encode.c:80
 #, c-format
 msgid "result of encoding conversion is too large"
 msgstr "el resultado de la conversión de codificación es demasiado grande"
 
-#: utils/adt/encode.c:127
+#: utils/adt/encode.c:128
 #, c-format
 msgid "result of decoding conversion is too large"
 msgstr "el resultado de la conversión de decodificación es demasiado grande"
 
-#: utils/adt/encode.c:186
+#: utils/adt/encode.c:217 utils/adt/encode.c:227
 #, c-format
 msgid "invalid hexadecimal digit: \"%.*s\""
 msgstr "dígito hexadecimal no válido: «%.*s»"
 
-#: utils/adt/encode.c:216
+#: utils/adt/encode.c:223
 #, 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:334
+#: utils/adt/encode.c:344
 #, c-format
 msgid "unexpected \"=\" while decoding base64 sequence"
 msgstr "«=» inesperado mientras se decodificaba la secuencia base64"
 
-#: utils/adt/encode.c:346
+#: utils/adt/encode.c:356
 #, c-format
 msgid "invalid symbol \"%.*s\" found while decoding base64 sequence"
 msgstr "se encontró símbolo no válido «%.*s» al decodificar secuencia base64"
 
-#: utils/adt/encode.c:367
+#: utils/adt/encode.c:377
 #, c-format
 msgid "invalid base64 end sequence"
 msgstr "secuencia de término base64 no válida"
 
-#: utils/adt/encode.c:368
+#: utils/adt/encode.c:378
 #, 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:482 utils/adt/encode.c:547 utils/adt/jsonfuncs.c:623
-#: utils/adt/varlena.c:335 utils/adt/varlena.c:376 jsonpath_gram.y:529
-#: jsonpath_scan.l:515 jsonpath_scan.l:526 jsonpath_scan.l:536
-#: jsonpath_scan.l:578
+#: utils/adt/encode.c:492 utils/adt/encode.c:557 utils/adt/jsonfuncs.c:648
+#: utils/adt/varlena.c:331 utils/adt/varlena.c:372 jsonpath_gram.y:528
+#: jsonpath_scan.l:629 jsonpath_scan.l:640 jsonpath_scan.l:650
+#: jsonpath_scan.l:701
 #, c-format
 msgid "invalid input syntax for type %s"
 msgstr "sintaxis de entrada no válida para tipo %s"
@@ -23274,24 +23935,24 @@ msgstr "uso inseguro del nuevo valor «%s» del tipo enum %s"
 msgid "New enum values must be committed before they can be used."
 msgstr "Los nuevos valores de enum deben estar comprometidos (committed) antes de que puedan usarse."
 
-#: utils/adt/enum.c:120 utils/adt/enum.c:130 utils/adt/enum.c:188
-#: utils/adt/enum.c:198
+#: utils/adt/enum.c:121 utils/adt/enum.c:131 utils/adt/enum.c:194
+#: utils/adt/enum.c:204
 #, c-format
 msgid "invalid input value for enum %s: \"%s\""
 msgstr "la sintaxis de entrada no es válida para el enum %s: «%s»"
 
-#: utils/adt/enum.c:160 utils/adt/enum.c:226 utils/adt/enum.c:285
+#: utils/adt/enum.c:166 utils/adt/enum.c:232 utils/adt/enum.c:291
 #, c-format
 msgid "invalid internal value for enum: %u"
 msgstr "el valor interno no es válido para enum: %u"
 
-#: utils/adt/enum.c:445 utils/adt/enum.c:474 utils/adt/enum.c:514
-#: utils/adt/enum.c:534
+#: utils/adt/enum.c:451 utils/adt/enum.c:480 utils/adt/enum.c:520
+#: utils/adt/enum.c:540
 #, c-format
 msgid "could not determine actual enum type"
 msgstr "no se pudo determinar el tipo enum efectivo"
 
-#: utils/adt/enum.c:453 utils/adt/enum.c:482
+#: utils/adt/enum.c:459 utils/adt/enum.c:488
 #, c-format
 msgid "enum %s contains no values"
 msgstr "el enum %s no contiene valores"
@@ -23306,343 +23967,343 @@ msgstr "valor fuera de rango: desbordamiento"
 msgid "value out of range: underflow"
 msgstr "valor fuera de rango: desbordamiento por abajo"
 
-#: utils/adt/float.c:266
+#: utils/adt/float.c:287
 #, 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:478
+#: 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:1259 utils/adt/float.c:1333 utils/adt/int.c:358
-#: utils/adt/int.c:896 utils/adt/int.c:918 utils/adt/int.c:932
-#: utils/adt/int.c:946 utils/adt/int.c:978 utils/adt/int.c:1216
-#: utils/adt/int8.c:1278 utils/adt/numeric.c:4377 utils/adt/numeric.c:4382
+#: utils/adt/float.c:1254 utils/adt/float.c:1328 utils/adt/int.c:355
+#: utils/adt/int.c:893 utils/adt/int.c:915 utils/adt/int.c:929
+#: utils/adt/int.c:943 utils/adt/int.c:975 utils/adt/int.c:1213
+#: utils/adt/int8.c:1278 utils/adt/numeric.c:4500 utils/adt/numeric.c:4505
 #, c-format
 msgid "smallint out of range"
 msgstr "smallint fuera de rango"
 
-#: utils/adt/float.c:1459 utils/adt/numeric.c:3611 utils/adt/numeric.c:9482
+#: utils/adt/float.c:1454 utils/adt/numeric.c:3693 utils/adt/numeric.c:10027
 #, 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:3886 utils/adt/numeric.c:3998
+#: utils/adt/float.c:1522 utils/adt/numeric.c:3981 utils/adt/numeric.c:4093
 #, 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:3890 utils/adt/numeric.c:10378
+#: utils/adt/float.c:1526 utils/adt/numeric.c:3985 utils/adt/numeric.c:10918
 #, 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:1707 utils/adt/float.c:1740 utils/adt/numeric.c:3798
-#: utils/adt/numeric.c:10153
+#: utils/adt/float.c:1702 utils/adt/float.c:1735 utils/adt/numeric.c:3893
+#: utils/adt/numeric.c:10698
 #, c-format
 msgid "cannot take logarithm of zero"
 msgstr "no se puede calcular logaritmo de cero"
 
-#: utils/adt/float.c:1711 utils/adt/float.c:1744 utils/adt/numeric.c:3736
-#: utils/adt/numeric.c:3793 utils/adt/numeric.c:10157
+#: utils/adt/float.c:1706 utils/adt/float.c:1739 utils/adt/numeric.c:3831
+#: utils/adt/numeric.c:3888 utils/adt/numeric.c:10702
 #, 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:1777 utils/adt/float.c:1808 utils/adt/float.c:1903
-#: utils/adt/float.c:1930 utils/adt/float.c:1958 utils/adt/float.c:1985
-#: utils/adt/float.c:2132 utils/adt/float.c:2169 utils/adt/float.c:2339
-#: utils/adt/float.c:2395 utils/adt/float.c:2460 utils/adt/float.c:2517
-#: utils/adt/float.c:2708 utils/adt/float.c:2732
+#: utils/adt/float.c:1772 utils/adt/float.c:1803 utils/adt/float.c:1898
+#: utils/adt/float.c:1925 utils/adt/float.c:1953 utils/adt/float.c:1980
+#: utils/adt/float.c:2127 utils/adt/float.c:2164 utils/adt/float.c:2334
+#: utils/adt/float.c:2390 utils/adt/float.c:2455 utils/adt/float.c:2512
+#: utils/adt/float.c:2703 utils/adt/float.c:2727
 #, c-format
 msgid "input is out of range"
 msgstr "la entrada está fuera de rango"
 
-#: utils/adt/float.c:2796
+#: utils/adt/float.c:2868
 #, 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:4024 utils/adt/numeric.c:1770
+#: utils/adt/float.c:4096 utils/adt/numeric.c:1841
 #, c-format
 msgid "count must be greater than zero"
 msgstr "count debe ser mayor que cero"
 
-#: utils/adt/float.c:4029 utils/adt/numeric.c:1781
+#: utils/adt/float.c:4101 utils/adt/numeric.c:1852
 #, 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:4035 utils/adt/numeric.c:1786
+#: utils/adt/float.c:4107 utils/adt/numeric.c:1857
 #, c-format
 msgid "lower and upper bounds must be finite"
 msgstr "los límites inferior y superior deben ser finitos"
 
-#: utils/adt/float.c:4069 utils/adt/numeric.c:1800
+#: utils/adt/float.c:4173 utils/adt/numeric.c:1871
 #, 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:561
+#: utils/adt/formatting.c:519
 #, 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:562
+#: utils/adt/formatting.c:520
 #, 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:1192
+#: utils/adt/formatting.c:1150
 #, c-format
 msgid "\"EEEE\" must be the last pattern used"
 msgstr "«EEEE» debe ser el último patrón usado"
 
-#: utils/adt/formatting.c:1200
+#: utils/adt/formatting.c:1158
 #, c-format
 msgid "\"9\" must be ahead of \"PR\""
 msgstr "«9» debe ir antes de «PR»"
 
-#: utils/adt/formatting.c:1216
+#: utils/adt/formatting.c:1174
 #, c-format
 msgid "\"0\" must be ahead of \"PR\""
 msgstr "«0» debe ir antes de «PR»"
 
-#: utils/adt/formatting.c:1243
+#: utils/adt/formatting.c:1201
 #, c-format
 msgid "multiple decimal points"
 msgstr "hay múltiples puntos decimales"
 
-#: utils/adt/formatting.c:1247 utils/adt/formatting.c:1330
+#: utils/adt/formatting.c:1205 utils/adt/formatting.c:1288
 #, 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:1259
+#: utils/adt/formatting.c:1217
 #, c-format
 msgid "cannot use \"S\" twice"
 msgstr "no se puede usar «S» dos veces"
 
-#: utils/adt/formatting.c:1263
+#: utils/adt/formatting.c:1221
 #, 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:1283
+#: utils/adt/formatting.c:1241
 #, c-format
 msgid "cannot use \"S\" and \"MI\" together"
 msgstr "no se puede usar «S» y «MI» simultáneamente"
 
-#: utils/adt/formatting.c:1293
+#: utils/adt/formatting.c:1251
 #, c-format
 msgid "cannot use \"S\" and \"PL\" together"
 msgstr "no se puede usar «S» y «PL» simultáneamente"
 
-#: utils/adt/formatting.c:1303
+#: utils/adt/formatting.c:1261
 #, c-format
 msgid "cannot use \"S\" and \"SG\" together"
 msgstr "no se puede usar «S» y «SG» simultáneamente"
 
-#: utils/adt/formatting.c:1312
+#: utils/adt/formatting.c:1270
 #, 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:1338
+#: utils/adt/formatting.c:1296
 #, c-format
 msgid "cannot use \"EEEE\" twice"
 msgstr "no se puede usar «EEEE» dos veces"
 
-#: utils/adt/formatting.c:1344
+#: utils/adt/formatting.c:1302
 #, c-format
 msgid "\"EEEE\" is incompatible with other formats"
 msgstr "«EEEE» es incompatible con otros formatos"
 
-#: utils/adt/formatting.c:1345
+#: utils/adt/formatting.c:1303
 #, 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:1429
+#: utils/adt/formatting.c:1387
 #, c-format
 msgid "invalid datetime format separator: \"%s\""
 msgstr "separador de formato «datetime» no válido: «%s»"
 
-#: utils/adt/formatting.c:1556
+#: utils/adt/formatting.c:1514
 #, c-format
 msgid "\"%s\" is not a number"
 msgstr "«%s» no es un número"
 
-#: utils/adt/formatting.c:1634
+#: utils/adt/formatting.c:1592
 #, c-format
 msgid "case conversion failed: %s"
 msgstr "falló la conversión de mayúsculas: %s"
 
-#: utils/adt/formatting.c:1688 utils/adt/formatting.c:1810
-#: utils/adt/formatting.c:1933
+#: utils/adt/formatting.c:1646 utils/adt/formatting.c:1768
+#: utils/adt/formatting.c:1891
 #, 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:2314
+#: utils/adt/formatting.c:2274
 #, c-format
 msgid "invalid combination of date conventions"
 msgstr "combinación no válida de convenciones de fecha"
 
-#: utils/adt/formatting.c:2315
+#: utils/adt/formatting.c:2275
 #, 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:2338
+#: utils/adt/formatting.c:2297
 #, 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:2341
+#: utils/adt/formatting.c:2299
 #, 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:2412
+#: utils/adt/formatting.c:2366
 #, 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:2415
+#: utils/adt/formatting.c:2368
 #, 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:2418 utils/adt/formatting.c:2433
+#: utils/adt/formatting.c:2370 utils/adt/formatting.c:2384
 #, 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:2428 utils/adt/formatting.c:2442
-#: utils/adt/formatting.c:2665
+#: utils/adt/formatting.c:2380 utils/adt/formatting.c:2393
+#: utils/adt/formatting.c:2614
 #, c-format
 msgid "invalid value \"%s\" for \"%s\""
 msgstr "el valor «%s» no es válido para «%s»"
 
-#: utils/adt/formatting.c:2430
+#: utils/adt/formatting.c:2382
 #, 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:2444
+#: utils/adt/formatting.c:2395
 #, c-format
 msgid "Value must be an integer."
 msgstr "El valor debe ser un entero."
 
-#: utils/adt/formatting.c:2449
+#: utils/adt/formatting.c:2400
 #, 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:2451
+#: utils/adt/formatting.c:2402
 #, 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:2667
+#: utils/adt/formatting.c:2616
 #, 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:2886 utils/adt/formatting.c:2906
-#: utils/adt/formatting.c:2926 utils/adt/formatting.c:2946
-#: utils/adt/formatting.c:2965 utils/adt/formatting.c:2984
-#: utils/adt/formatting.c:3008 utils/adt/formatting.c:3026
-#: utils/adt/formatting.c:3044 utils/adt/formatting.c:3062
-#: utils/adt/formatting.c:3079 utils/adt/formatting.c:3096
+#: utils/adt/formatting.c:2832 utils/adt/formatting.c:2852
+#: utils/adt/formatting.c:2872 utils/adt/formatting.c:2892
+#: utils/adt/formatting.c:2911 utils/adt/formatting.c:2930
+#: utils/adt/formatting.c:2954 utils/adt/formatting.c:2972
+#: utils/adt/formatting.c:2990 utils/adt/formatting.c:3008
+#: utils/adt/formatting.c:3025 utils/adt/formatting.c:3042
 #, c-format
 msgid "localized string format value too long"
 msgstr "cadena traducida en cadena de formato es demasiado larga"
 
-#: utils/adt/formatting.c:3373
+#: utils/adt/formatting.c:3322
 #, c-format
 msgid "unmatched format separator \"%c\""
 msgstr "separador de formato «%c» desemparejado"
 
-#: utils/adt/formatting.c:3434
+#: utils/adt/formatting.c:3383
 #, c-format
 msgid "unmatched format character \"%s\""
 msgstr "carácter de formato «%s» desemparejado"
 
-#: utils/adt/formatting.c:3540 utils/adt/formatting.c:3884
+#: utils/adt/formatting.c:3491
 #, 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:3715
+#: utils/adt/formatting.c:3665
 #, c-format
 msgid "invalid input string for \"Y,YYY\""
 msgstr "cadena de entrada no válida para «Y,YYY»"
 
-#: utils/adt/formatting.c:3801
+#: utils/adt/formatting.c:3754
 #, c-format
 msgid "input string is too short for datetime format"
 msgstr "cadena de entrada muy corta para formato de fecha/hora"
 
-#: utils/adt/formatting.c:3809
+#: utils/adt/formatting.c:3762
 #, c-format
 msgid "trailing characters remain in input string after datetime format"
 msgstr "quedan caracteres al final de la cadena de entrada después del formato fecha/hora"
 
-#: utils/adt/formatting.c:4370
+#: utils/adt/formatting.c:4319
 #, c-format
 msgid "missing time zone in input string for type timestamptz"
 msgstr "falta el huso horario en la cadena de entrada para el tipo timestamptz"
 
-#: utils/adt/formatting.c:4376
+#: utils/adt/formatting.c:4325
 #, c-format
 msgid "timestamptz out of range"
 msgstr "timestamptz fuera de rango"
 
-#: utils/adt/formatting.c:4404
+#: utils/adt/formatting.c:4353
 #, c-format
 msgid "datetime format is zoned but not timed"
 msgstr "el formato de fecha/hora tiene huso horario pero no hora"
 
-#: utils/adt/formatting.c:4456
+#: utils/adt/formatting.c:4411
 #, c-format
 msgid "missing time zone in input string for type timetz"
 msgstr "falta el huso horario en la cadena de entrada del tipo timetz"
 
-#: utils/adt/formatting.c:4462
+#: utils/adt/formatting.c:4417
 #, c-format
 msgid "timetz out of range"
 msgstr "timetz fuera de rango"
 
-#: utils/adt/formatting.c:4488
+#: utils/adt/formatting.c:4443
 #, c-format
 msgid "datetime format is not dated and not timed"
 msgstr "el formato de fecha/hora no tiene fecha ni hora"
 
-#: utils/adt/formatting.c:4621
+#: utils/adt/formatting.c:4575
 #, 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:4623
+#: utils/adt/formatting.c:4577
 #, 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:4734
+#: utils/adt/formatting.c:4689
 #, 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:5653
+#: utils/adt/formatting.c:5621
 #, c-format
 msgid "\"EEEE\" not supported for input"
 msgstr "«EEEE» no está soportado en la entrada"
 
-#: utils/adt/formatting.c:5665
+#: utils/adt/formatting.c:5633
 #, c-format
 msgid "\"RN\" not supported for input"
 msgstr "«RN» no está soportado en la entrada"
@@ -23653,13 +24314,14 @@ msgid "absolute path not allowed"
 msgstr "no se permiten rutas absolutas"
 
 #: utils/adt/genfile.c:89
-#, c-format
-msgid "path must be in or below the current directory"
+#, fuzzy, c-format
+#| msgid "path must be in or below the current directory"
+msgid "path must be in or below the data directory"
 msgstr "la ruta debe estar en o debajo del directorio actual"
 
-#: utils/adt/genfile.c:114 utils/adt/oracle_compat.c:189
-#: utils/adt/oracle_compat.c:287 utils/adt/oracle_compat.c:836
-#: utils/adt/oracle_compat.c:1139
+#: utils/adt/genfile.c:114 utils/adt/oracle_compat.c:190
+#: utils/adt/oracle_compat.c:288 utils/adt/oracle_compat.c:839
+#: utils/adt/oracle_compat.c:1142
 #, c-format
 msgid "requested length too large"
 msgstr "el tamaño solicitado es demasiado grande"
@@ -23679,69 +24341,64 @@ msgstr "el tamaño del archivo es demasiado grande"
 msgid "must be superuser to read files with adminpack 1.0"
 msgstr "Debe ser superusuario leer archivos con adminpack 1.0."
 
-#: utils/adt/geo_ops.c:979 utils/adt/geo_ops.c:1025
+#: utils/adt/genfile.c:702
+#, c-format
+msgid "tablespace with OID %u does not exist"
+msgstr "no existe el tablespace con OID %u"
+
+#: utils/adt/geo_ops.c:998 utils/adt/geo_ops.c:1052
 #, c-format
 msgid "invalid line specification: A and B cannot both be zero"
 msgstr "especificación de línea no válida: A y B no pueden ser ambos cero"
 
-#: utils/adt/geo_ops.c:987 utils/adt/geo_ops.c:1097
+#: utils/adt/geo_ops.c:1008 utils/adt/geo_ops.c:1124
 #, c-format
 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:1410 utils/adt/geo_ops.c:3402 utils/adt/geo_ops.c:4330
-#: utils/adt/geo_ops.c:5210
+#: utils/adt/geo_ops.c:1438 utils/adt/geo_ops.c:3438 utils/adt/geo_ops.c:4368
+#: utils/adt/geo_ops.c:5253
 #, c-format
 msgid "too many points requested"
 msgstr "se pidieron demasiados puntos"
 
-#: utils/adt/geo_ops.c:1472
+#: utils/adt/geo_ops.c:1502
 #, c-format
 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:3449
+#: utils/adt/geo_ops.c:3487
 #, 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:4425
+#: 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:4675
+#: utils/adt/geo_ops.c:4718
 #, 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:5196
+#: utils/adt/geo_ops.c:5239
 #, 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:5201
+#: utils/adt/geo_ops.c:5244
 #, c-format
 msgid "must request at least 2 points"
 msgstr "debe pedir al menos 2 puntos"
 
-#: utils/adt/int.c:188
-#, c-format
-msgid "int2vector has too many elements"
-msgstr "int2vector tiene demasiados elementos"
-
-#: utils/adt/int.c:261
+#: utils/adt/int.c:264
 #, c-format
 msgid "invalid int2vector data"
 msgstr "datos de int2vector no válidos"
 
-#: utils/adt/int.c:267 utils/adt/oid.c:215 utils/adt/oid.c:296
-#, c-format
-msgid "oidvector has too many elements"
-msgstr "el oidvector tiene demasiados elementos"
-
-#: utils/adt/int.c:1532 utils/adt/int8.c:1404 utils/adt/numeric.c:1678
-#: utils/adt/timestamp.c:5809 utils/adt/timestamp.c:5889
+#: utils/adt/int.c:1529 utils/adt/int8.c:1404 utils/adt/numeric.c:1749
+#: utils/adt/timestamp.c:5805 utils/adt/timestamp.c:5887
 #, c-format
 msgid "step size cannot equal zero"
 msgstr "el tamaño de paso no puede ser cero"
@@ -23755,7 +24412,8 @@ msgstr "el tamaño de paso no puede ser cero"
 #: utils/adt/int8.c:995 utils/adt/int8.c:1009 utils/adt/int8.c:1042
 #: utils/adt/int8.c:1056 utils/adt/int8.c:1070 utils/adt/int8.c:1101
 #: utils/adt/int8.c:1123 utils/adt/int8.c:1137 utils/adt/int8.c:1151
-#: utils/adt/int8.c:1313 utils/adt/int8.c:1348 utils/adt/numeric.c:4336
+#: utils/adt/int8.c:1313 utils/adt/int8.c:1348 utils/adt/numeric.c:4459
+#: utils/adt/rangetypes.c:1528 utils/adt/rangetypes.c:1541
 #: utils/adt/varbit.c:1676
 #, c-format
 msgid "bigint out of range"
@@ -23766,134 +24424,143 @@ msgstr "bigint fuera de rango"
 msgid "OID out of range"
 msgstr "OID fuera de rango"
 
-#: utils/adt/json.c:271 utils/adt/jsonb.c:757
+#: utils/adt/json.c:320 utils/adt/jsonb.c:781
 #, 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:892 utils/adt/json.c:902 utils/fmgr/funcapi.c:2061
+#: utils/adt/json.c:1113 utils/adt/json.c:1123 utils/fmgr/funcapi.c:2082
 #, 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:926 utils/adt/jsonb.c:1727
+#: utils/adt/json.c:1146 utils/adt/json.c:1337 utils/adt/json.c:1513
+#: utils/adt/json.c:1591 utils/adt/jsonb.c:1432 utils/adt/jsonb.c:1522
 #, c-format
-msgid "field name must not be null"
-msgstr "el nombre de campo no debe ser null"
+msgid "null value not allowed for object key"
+msgstr "no se permite el valor nulo como llave en un objeto"
+
+#: utils/adt/json.c:1189 utils/adt/json.c:1352
+#, fuzzy, c-format
+#| msgid "Duplicate keys exist."
+msgid "duplicate JSON key %s"
+msgstr "Existe una llave duplicada."
 
-#: utils/adt/json.c:1010 utils/adt/jsonb.c:1177
+#: utils/adt/json.c:1297 utils/adt/jsonb.c:1233
 #, 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:1012 utils/adt/jsonb.c:1179
+#: utils/adt/json.c:1299 utils/adt/jsonb.c:1235
 #, 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:1028
-#, c-format
-msgid "argument %d cannot be null"
-msgstr "el argumento %d no puede ser null"
-
-#: 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:1135 utils/adt/jsonb.c:1309
+#: utils/adt/json.c:1491 utils/adt/jsonb.c:1410
 #, c-format
 msgid "array must have two columns"
 msgstr "un array debe tener dos columnas"
 
-#: utils/adt/json.c:1159 utils/adt/json.c:1242 utils/adt/jsonb.c:1333
-#: utils/adt/jsonb.c:1428
-#, 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:1231 utils/adt/jsonb.c:1417
+#: utils/adt/json.c:1580 utils/adt/jsonb.c:1511
 #, c-format
 msgid "mismatched array dimensions"
 msgstr "las dimensiones de array no coinciden"
 
-#: utils/adt/jsonb.c:287
+#: utils/adt/json.c:1764
+#, c-format
+msgid "duplicate JSON object key value"
+msgstr ""
+
+#: utils/adt/jsonb.c:294
 #, 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:288
+#: utils/adt/jsonb.c:295
 #, 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:1192
+#: utils/adt/jsonb.c:1252
 #, c-format
 msgid "argument %d: key must not be null"
 msgstr "argumento %d: la llave no puede ser null"
 
-#: utils/adt/jsonb.c:1780
+#: utils/adt/jsonb.c:1843
+#, c-format
+msgid "field name must not be null"
+msgstr "el nombre de campo no debe ser null"
+
+#: utils/adt/jsonb.c:1905
 #, c-format
 msgid "object keys must be strings"
 msgstr "las llaves de un objeto deben ser cadenas"
 
-#: utils/adt/jsonb.c:1943
+#: utils/adt/jsonb.c:2116
 #, 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:1944
+#: utils/adt/jsonb.c:2117
 #, 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:1945
+#: utils/adt/jsonb.c:2118
 #, 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:1946
+#: utils/adt/jsonb.c:2119
 #, 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:1947
+#: utils/adt/jsonb.c:2120
 #, 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:1948
+#: utils/adt/jsonb.c:2121
 #, 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:1949
+#: utils/adt/jsonb.c:2122
 #, 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:752
+#: utils/adt/jsonb_util.c:758
 #, 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:793
+#: utils/adt/jsonb_util.c:799
 #, 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:1667 utils/adt/jsonb_util.c:1687
-#, c-format
-msgid "total size of jsonb array elements exceeds the maximum of %u bytes"
+#: utils/adt/jsonb_util.c:1673 utils/adt/jsonb_util.c:1693
+#, fuzzy, c-format
+#| msgid "total size of jsonb array elements exceeds the maximum of %u bytes"
+msgid "total size of jsonb array elements exceeds the maximum of %d bytes"
 msgstr "el tamaño total de los elementos del array jsonb excede el máximo de %u bytes"
 
-#: utils/adt/jsonb_util.c:1748 utils/adt/jsonb_util.c:1783
-#: utils/adt/jsonb_util.c:1803
-#, c-format
-msgid "total size of jsonb object elements exceeds the maximum of %u bytes"
+#: utils/adt/jsonb_util.c:1754 utils/adt/jsonb_util.c:1789
+#: utils/adt/jsonb_util.c:1809
+#, fuzzy, c-format
+#| msgid "total size of jsonb object elements exceeds the maximum of %u bytes"
+msgid "total size of jsonb object elements exceeds the maximum of %d bytes"
 msgstr "el tamaño total de los elementos del objeto jsonb excede el máximo de %u bytes"
 
+#: utils/adt/jsonb_util.c:1958
+#, fuzzy, c-format
+#| msgid "unexpected object end"
+msgid "duplicate JSON object key"
+msgstr "fin de objeto inesperado"
+
 #: utils/adt/jsonbsubs.c:70 utils/adt/jsonbsubs.c:151
 #, c-format
 msgid "jsonb subscript does not support slices"
@@ -23924,375 +24591,375 @@ msgstr "subíndice jsonb debe tener tipo text"
 msgid "jsonb subscript in assignment must not be null"
 msgstr "subíndice jsonb en asignación no puede ser nulo"
 
-#: utils/adt/jsonfuncs.c:555 utils/adt/jsonfuncs.c:791
-#: utils/adt/jsonfuncs.c:2360 utils/adt/jsonfuncs.c:2800
-#: utils/adt/jsonfuncs.c:3589 utils/adt/jsonfuncs.c:3922
+#: utils/adt/jsonfuncs.c:572 utils/adt/jsonfuncs.c:821
+#: utils/adt/jsonfuncs.c:2429 utils/adt/jsonfuncs.c:2881
+#: utils/adt/jsonfuncs.c:3676 utils/adt/jsonfuncs.c:4018
 #, c-format
 msgid "cannot call %s on a scalar"
 msgstr "no se puede invocar %s en un escalar"
 
-#: utils/adt/jsonfuncs.c:560 utils/adt/jsonfuncs.c:778
-#: utils/adt/jsonfuncs.c:2802 utils/adt/jsonfuncs.c:3578
+#: utils/adt/jsonfuncs.c:577 utils/adt/jsonfuncs.c:806
+#: utils/adt/jsonfuncs.c:2883 utils/adt/jsonfuncs.c:3663
 #, c-format
 msgid "cannot call %s on an array"
 msgstr "no se puede invocar %s en un array"
 
-#: utils/adt/jsonfuncs.c:617 jsonpath_scan.l:494
+#: utils/adt/jsonfuncs.c:636 jsonpath_scan.l:596
 #, c-format
 msgid "unsupported Unicode escape sequence"
 msgstr "secuencia de escape Unicode no soportado"
 
-#: utils/adt/jsonfuncs.c:687
+#: utils/adt/jsonfuncs.c:713
 #, c-format
 msgid "JSON data, line %d: %s%s%s"
 msgstr "Datos JSON, línea %d: %s%s%s"
 
-#: utils/adt/jsonfuncs.c:1825 utils/adt/jsonfuncs.c:1860
+#: utils/adt/jsonfuncs.c:1875 utils/adt/jsonfuncs.c:1912
 #, 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:1829 utils/adt/jsonfuncs.c:1848
+#: utils/adt/jsonfuncs.c:1879 utils/adt/jsonfuncs.c:1898
 #, 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:1922
+#: utils/adt/jsonfuncs.c:1978
 #, c-format
 msgid "cannot call %s on a non-object"
 msgstr "no se puede invocar %s en un no-objeto"
 
-#: utils/adt/jsonfuncs.c:2106
+#: utils/adt/jsonfuncs.c:2166
 #, c-format
 msgid "cannot deconstruct an array as an object"
 msgstr "no se puede desconstruir un array como un objeto"
 
-#: utils/adt/jsonfuncs.c:2118
+#: utils/adt/jsonfuncs.c:2180
 #, c-format
 msgid "cannot deconstruct a scalar"
 msgstr "no se puede desconstruir un escalar"
 
-#: utils/adt/jsonfuncs.c:2161
+#: utils/adt/jsonfuncs.c:2225
 #, c-format
 msgid "cannot extract elements from a scalar"
 msgstr "no se pueden extraer elementos de un escalar"
 
-#: utils/adt/jsonfuncs.c:2165
+#: utils/adt/jsonfuncs.c:2229
 #, c-format
 msgid "cannot extract elements from an object"
 msgstr "no se pudo extraer elementos de un objeto"
 
-#: utils/adt/jsonfuncs.c:2347 utils/adt/jsonfuncs.c:3807
+#: utils/adt/jsonfuncs.c:2414 utils/adt/jsonfuncs.c:3896
 #, c-format
 msgid "cannot call %s on a non-array"
 msgstr "no se puede invocar %s en un no-array"
 
-#: utils/adt/jsonfuncs.c:2417 utils/adt/jsonfuncs.c:2422
-#: utils/adt/jsonfuncs.c:2439 utils/adt/jsonfuncs.c:2445
+#: utils/adt/jsonfuncs.c:2488 utils/adt/jsonfuncs.c:2493
+#: utils/adt/jsonfuncs.c:2510 utils/adt/jsonfuncs.c:2516
 #, c-format
 msgid "expected JSON array"
 msgstr "se esperaba un array JSON"
 
-#: utils/adt/jsonfuncs.c:2418
+#: utils/adt/jsonfuncs.c:2489
 #, c-format
 msgid "See the value of key \"%s\"."
 msgstr "Vea el valor de la llave «%s»."
 
-#: utils/adt/jsonfuncs.c:2440
+#: utils/adt/jsonfuncs.c:2511
 #, c-format
 msgid "See the array element %s of key \"%s\"."
 msgstr "Vea el elemento %s de la llave «%s»."
 
-#: utils/adt/jsonfuncs.c:2446
+#: utils/adt/jsonfuncs.c:2517
 #, c-format
 msgid "See the array element %s."
 msgstr "Veo el elemento de array %s."
 
-#: utils/adt/jsonfuncs.c:2481
+#: utils/adt/jsonfuncs.c:2552
 #, 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:3308
+#: utils/adt/jsonfuncs.c:3389
 #, 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:3332
+#: utils/adt/jsonfuncs.c:3413
 #, c-format
 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:3334
+#: utils/adt/jsonfuncs.c:3415
 #, c-format
 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:3696 utils/fmgr/funcapi.c:94
+#: utils/adt/jsonfuncs.c:3785 utils/fmgr/funcapi.c:94
 #, 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"
 
-#: utils/adt/jsonfuncs.c:3824 utils/adt/jsonfuncs.c:3904
+#: utils/adt/jsonfuncs.c:3913 utils/adt/jsonfuncs.c:3997
 #, 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:3857
+#: utils/adt/jsonfuncs.c:3946
 #, c-format
 msgid "cannot call %s on an object"
 msgstr "no se puede invocar %s en un objeto"
 
-#: utils/adt/jsonfuncs.c:4264 utils/adt/jsonfuncs.c:4323
-#: utils/adt/jsonfuncs.c:4403
+#: utils/adt/jsonfuncs.c:4380 utils/adt/jsonfuncs.c:4439
+#: utils/adt/jsonfuncs.c:4519
 #, c-format
 msgid "cannot delete from scalar"
 msgstr "no se puede eliminar de un escalar"
 
-#: utils/adt/jsonfuncs.c:4408
+#: utils/adt/jsonfuncs.c:4524
 #, 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:4476 utils/adt/jsonfuncs.c:4637
+#: utils/adt/jsonfuncs.c:4592 utils/adt/jsonfuncs.c:4751
 #, c-format
 msgid "cannot set path in scalar"
 msgstr "no se puede definir una ruta en un escalar"
 
-#: utils/adt/jsonfuncs.c:4518 utils/adt/jsonfuncs.c:4560
+#: utils/adt/jsonfuncs.c:4633 utils/adt/jsonfuncs.c:4675
 #, c-format
 msgid "null_value_treatment must be \"delete_key\", \"return_target\", \"use_json_null\", or \"raise_exception\""
 msgstr "null_value_treatment debe ser «delete_key», «return_target», «use_json_null», o «raise_exception»"
 
-#: utils/adt/jsonfuncs.c:4531
+#: utils/adt/jsonfuncs.c:4646
 #, c-format
 msgid "JSON value must not be null"
 msgstr "valor JSON no debe ser null"
 
-#: utils/adt/jsonfuncs.c:4532
+#: utils/adt/jsonfuncs.c:4647
 #, c-format
 msgid "Exception was raised because null_value_treatment is \"raise_exception\"."
 msgstr "Una excepción fue lanzada porque null_value_treatment es «raise_exception»."
 
-#: utils/adt/jsonfuncs.c:4533
+#: utils/adt/jsonfuncs.c:4648
 #, c-format
 msgid "To avoid, either change the null_value_treatment argument or ensure that an SQL NULL is not passed."
 msgstr "Para impedir esto, puede cambiar el argumento null_value_treatment o asegurarse que no se pase un nulo SQL."
 
-#: utils/adt/jsonfuncs.c:4588
+#: utils/adt/jsonfuncs.c:4703
 #, c-format
 msgid "cannot delete path in scalar"
 msgstr "no se puede eliminar una ruta en un escalar"
 
-#: utils/adt/jsonfuncs.c:4804
+#: utils/adt/jsonfuncs.c:4917
 #, 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:4823 utils/adt/jsonfuncs.c:4854
-#: utils/adt/jsonfuncs.c:4921
+#: utils/adt/jsonfuncs.c:4936 utils/adt/jsonfuncs.c:4967
+#: utils/adt/jsonfuncs.c:5040
 #, c-format
 msgid "cannot replace existing key"
 msgstr "no se puede reemplazar una llave existente"
 
-#: utils/adt/jsonfuncs.c:4824 utils/adt/jsonfuncs.c:4855
+#: utils/adt/jsonfuncs.c:4937 utils/adt/jsonfuncs.c:4968
 #, c-format
 msgid "The path assumes key is a composite object, but it is a scalar value."
 msgstr "La ruta asume que la llave es un objeto compuesto, pero es un valor escalar."
 
-#: utils/adt/jsonfuncs.c:4922
+#: utils/adt/jsonfuncs.c:5041
 #, 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:5026
+#: utils/adt/jsonfuncs.c:5145
 #, 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:5043
+#: utils/adt/jsonfuncs.c:5162
 #, c-format
 msgid "path element at position %d is out of range: %d"
 msgstr "el elemento de ruta en la posición %d está fuera de rango: %d"
 
-#: utils/adt/jsonfuncs.c:5195
+#: utils/adt/jsonfuncs.c:5314
 #, 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:5202
+#: utils/adt/jsonfuncs.c:5321
 #, c-format
 msgid "flag array element is not a string"
 msgstr "elemento del array de opciones no es un string"
 
-#: utils/adt/jsonfuncs.c:5203 utils/adt/jsonfuncs.c:5225
+#: utils/adt/jsonfuncs.c:5322 utils/adt/jsonfuncs.c:5344
 #, 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:5223
+#: utils/adt/jsonfuncs.c:5342
 #, c-format
 msgid "wrong flag in flag array: \"%s\""
 msgstr "indicador erróneo en array de indicadores: «%s»"
 
-#: utils/adt/jsonpath.c:362
+#: utils/adt/jsonpath.c:382
 #, c-format
 msgid "@ is not allowed in root expressions"
 msgstr "@ no es permitido en expresiones raíz"
 
-#: utils/adt/jsonpath.c:368
+#: utils/adt/jsonpath.c:388
 #, 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:360
+#: utils/adt/jsonpath_exec.c:361
 #, c-format
 msgid "single boolean result is expected"
 msgstr "se esperaba un único resultado booleano"
 
-#: utils/adt/jsonpath_exec.c:556
+#: utils/adt/jsonpath_exec.c:557
 #, c-format
 msgid "\"vars\" argument is not an object"
 msgstr "el argumento «vars» no es un objeto"
 
-#: utils/adt/jsonpath_exec.c:557
+#: utils/adt/jsonpath_exec.c:558
 #, 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:674
+#: utils/adt/jsonpath_exec.c:675
 #, c-format
 msgid "JSON object does not contain key \"%s\""
 msgstr "el objeto JSON no contiene la llave «%s»"
 
-#: utils/adt/jsonpath_exec.c:686
+#: utils/adt/jsonpath_exec.c:687
 #, 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:715
+#: utils/adt/jsonpath_exec.c:716
 #, 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:763
+#: utils/adt/jsonpath_exec.c:764
 #, 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:820
+#: utils/adt/jsonpath_exec.c:821
 #, 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:872
+#: utils/adt/jsonpath_exec.c:873
 #, 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:1002
+#: utils/adt/jsonpath_exec.c:1007
 #, 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:1055
+#: utils/adt/jsonpath_exec.c:1060
 #, c-format
 msgid "numeric argument of jsonpath item method .%s() is out of range for type double precision"
 msgstr "el argumento numérico del método de item jsonpath .%s() está fuera de rango para el tipo de precisión doble"
 
-#: utils/adt/jsonpath_exec.c:1076
+#: utils/adt/jsonpath_exec.c:1081
 #, c-format
 msgid "string argument of jsonpath item method .%s() is not a valid representation of a double precision number"
 msgstr "el argumento cadena del método de item jsonpath .%s() no es una representación válida de un número de precisión doble"
 
-#: utils/adt/jsonpath_exec.c:1089
+#: utils/adt/jsonpath_exec.c:1094
 #, 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:1579
+#: utils/adt/jsonpath_exec.c:1584
 #, c-format
 msgid "left operand of jsonpath operator %s is not a single numeric value"
 msgstr "el operando izquierdo del operador jsonpath %s no es un valor numérico escalar"
 
-#: utils/adt/jsonpath_exec.c:1586
+#: utils/adt/jsonpath_exec.c:1591
 #, 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:1654
+#: utils/adt/jsonpath_exec.c:1659
 #, 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:1752
+#: utils/adt/jsonpath_exec.c:1758
 #, 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:1792
+#: utils/adt/jsonpath_exec.c:1798
 #, c-format
 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 una cadena"
 
-#: utils/adt/jsonpath_exec.c:1886
+#: utils/adt/jsonpath_exec.c:1892
 #, c-format
 msgid "datetime format is not recognized: \"%s\""
 msgstr "el formato de fecha/hora no se reconoce: «%s»"
 
-#: utils/adt/jsonpath_exec.c:1888
+#: utils/adt/jsonpath_exec.c:1894
 #, c-format
 msgid "Use a datetime template argument to specify the input data format."
 msgstr "Use un argumento de patrón fecha/hora para especificar el formato de entrada del dato."
 
-#: utils/adt/jsonpath_exec.c:1956
+#: utils/adt/jsonpath_exec.c:1962
 #, 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:2138
+#: utils/adt/jsonpath_exec.c:2144
 #, c-format
 msgid "could not find jsonpath variable \"%s\""
 msgstr "no se pudo encontrar la variable jsonpath «%s»"
 
-#: utils/adt/jsonpath_exec.c:2402
+#: utils/adt/jsonpath_exec.c:2408
 #, 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:2414
+#: utils/adt/jsonpath_exec.c:2420
 #, 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:2591
+#: utils/adt/jsonpath_exec.c:2597
 #, c-format
 msgid "cannot convert value from %s to %s without time zone usage"
 msgstr "no se puede convertir el valor de %s a %s sin uso de huso horario"
 
-#: utils/adt/jsonpath_exec.c:2593
+#: utils/adt/jsonpath_exec.c:2599
 #, c-format
 msgid "Use *_tz() function for time zone support."
 msgstr "Utilice una función *_tz() para el soporte de huso horario."
 
-#: utils/adt/levenshtein.c:133
+#: utils/adt/levenshtein.c:132
 #, c-format
 msgid "levenshtein argument exceeds maximum length of %d characters"
 msgstr "el argumento levenshtein excede el largo máximo de %d caracteres"
 
-#: utils/adt/like.c:160
+#: utils/adt/like.c:161
 #, c-format
 msgid "nondeterministic collations are not supported for LIKE"
 msgstr "los ordenamientos no determinísticos no están soportados para LIKE"
 
-#: utils/adt/like.c:189 utils/adt/like_support.c:1024
+#: utils/adt/like.c:190 utils/adt/like_support.c:1024
 #, c-format
 msgid "could not determine which collation to use for ILIKE"
 msgstr "no se pudo determinar qué ordenamiento (collation) usar para ILIKE"
 
-#: utils/adt/like.c:201
+#: utils/adt/like.c:202
 #, c-format
 msgid "nondeterministic collations are not supported for ILIKE"
 msgstr "los ordenamientos no determinísticos no están soportados para ILIKE"
@@ -24302,12 +24969,12 @@ msgstr "los ordenamientos no determinísticos no están soportados para ILIKE"
 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:293 utils/adt/regexp.c:786
+#: utils/adt/like_match.c:293 utils/adt/regexp.c:801
 #, c-format
 msgid "invalid escape string"
 msgstr "cadena de escape no válida"
 
-#: utils/adt/like_match.c:294 utils/adt/regexp.c:787
+#: utils/adt/like_match.c:294 utils/adt/regexp.c:802
 #, c-format
 msgid "Escape string must be empty or one character."
 msgstr "La cadena de escape debe ser vacía o un carácter."
@@ -24322,17 +24989,17 @@ msgstr "no está soportada la comparación insensible a mayúsculas en bytea"
 msgid "regular-expression matching not supported on type bytea"
 msgstr "no está soportada la comparación con expresiones regulares en bytea"
 
-#: utils/adt/mac.c:101
+#: utils/adt/mac.c:102
 #, c-format
 msgid "invalid octet value in \"macaddr\" value: \"%s\""
 msgstr "valor de octeto no válido en valor «macaddr»: «%s»"
 
-#: utils/adt/mac8.c:563
+#: utils/adt/mac8.c:554
 #, c-format
 msgid "macaddr8 data out of range to convert to macaddr"
 msgstr "datos macaddr8 fuera de rango para convertir a macaddr"
 
-#: utils/adt/mac8.c:564
+#: utils/adt/mac8.c:555
 #, c-format
 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."
@@ -24342,105 +25009,104 @@ msgstr "Sólo las direcciones que tienen FF y FF como valores en el cuarto y qui
 msgid "PID %d is not a PostgreSQL server process"
 msgstr "PID %d no es un proceso servidor de PostgreSQL"
 
-#: utils/adt/misc.c:216
+#: utils/adt/misc.c:237
 #, c-format
 msgid "global tablespace never has databases"
 msgstr "el tablespace global nunca tiene bases de datos"
 
-#: utils/adt/misc.c:238
+#: utils/adt/misc.c:259
 #, c-format
 msgid "%u is not a tablespace OID"
 msgstr "%u no es un OID de tablespace"
 
-#: utils/adt/misc.c:457
+#: utils/adt/misc.c:454
 msgid "unreserved"
 msgstr "no reservado"
 
-#: utils/adt/misc.c:461
+#: utils/adt/misc.c:458
 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:465
+#: utils/adt/misc.c:462
 msgid "reserved (can be function or type name)"
 msgstr "reservado (puede ser nombre de función o de tipo)"
 
-#: utils/adt/misc.c:469
+#: utils/adt/misc.c:466
 msgid "reserved"
 msgstr "reservado"
 
-#: utils/adt/misc.c:480
+#: utils/adt/misc.c:477
 msgid "can be bare label"
 msgstr "puede ser una etiqueta sola"
 
-#: utils/adt/misc.c:485
+#: utils/adt/misc.c:482
 msgid "requires AS"
 msgstr "requiere AS"
 
-#: utils/adt/misc.c:732 utils/adt/misc.c:746 utils/adt/misc.c:785
-#: utils/adt/misc.c:791 utils/adt/misc.c:797 utils/adt/misc.c:820
+#: utils/adt/misc.c:853 utils/adt/misc.c:867 utils/adt/misc.c:906
+#: utils/adt/misc.c:912 utils/adt/misc.c:918 utils/adt/misc.c:941
 #, c-format
 msgid "string is not a valid identifier: \"%s\""
 msgstr "la cadena no es un identificador válido: «%s»"
 
-#: utils/adt/misc.c:734
+#: utils/adt/misc.c:855
 #, c-format
 msgid "String has unclosed double quotes."
 msgstr "La cadena tiene comillas dobles sin cerrar."
 
-#: utils/adt/misc.c:748
+#: utils/adt/misc.c:869
 #, c-format
 msgid "Quoted identifier must not be empty."
 msgstr "El identificador en comillas no debe ser vacío."
 
-#: utils/adt/misc.c:787
+#: utils/adt/misc.c:908
 #, c-format
 msgid "No valid identifier before \".\"."
 msgstr "No hay un identificador válido antes de «.»."
 
-#: utils/adt/misc.c:793
+#: utils/adt/misc.c:914
 #, c-format
 msgid "No valid identifier after \".\"."
 msgstr "No hay un identificador válido después de «.»."
 
-#: utils/adt/misc.c:853
+#: utils/adt/misc.c:974
 #, c-format
 msgid "log format \"%s\" is not supported"
 msgstr "el formato de log «%s» no está soportado"
 
-#: utils/adt/misc.c:854
-#, fuzzy, c-format
-#| msgid "The supported log formats are \"stderr\" and \"csvlog\"."
+#: utils/adt/misc.c:975
+#, c-format
 msgid "The supported log formats are \"stderr\", \"csvlog\", and \"jsonlog\"."
-msgstr "Los formatos de registro admitidos son \"stderr\" y \"csvlog\"."
+msgstr ""
 
-#: utils/adt/multirangetypes.c:149 utils/adt/multirangetypes.c:162
-#: utils/adt/multirangetypes.c:191 utils/adt/multirangetypes.c:261
-#: utils/adt/multirangetypes.c:285
+#: utils/adt/multirangetypes.c:151 utils/adt/multirangetypes.c:164
+#: utils/adt/multirangetypes.c:193 utils/adt/multirangetypes.c:267
+#: utils/adt/multirangetypes.c:291
 #, c-format
 msgid "malformed multirange literal: \"%s\""
 msgstr "literal de multirango mal formado: «%s»"
 
-#: utils/adt/multirangetypes.c:151
+#: utils/adt/multirangetypes.c:153
 #, c-format
 msgid "Missing left brace."
 msgstr "Falta llave izquierda."
 
-#: utils/adt/multirangetypes.c:193
+#: utils/adt/multirangetypes.c:195
 #, c-format
 msgid "Expected range start."
 msgstr "Se esperaba inicio de rango."
 
-#: utils/adt/multirangetypes.c:263
+#: utils/adt/multirangetypes.c:269
 #, c-format
 msgid "Expected comma or end of multirange."
 msgstr "Se esperaba una coma o el final del multirango."
 
-#: utils/adt/multirangetypes.c:976
+#: utils/adt/multirangetypes.c:982
 #, c-format
 msgid "multiranges cannot be constructed from multidimensional arrays"
 msgstr "no se puede construir multirangos a partir de arrays multidimensionales"
 
-#: utils/adt/multirangetypes.c:1002
+#: utils/adt/multirangetypes.c:1008
 #, c-format
 msgid "multirange values cannot contain null members"
 msgstr "valores de multirango no pueden contener miembros nulos"
@@ -24499,259 +25165,309 @@ msgstr "no se pudo dar formato al valor cidr: %m"
 msgid "cannot merge addresses from different families"
 msgstr "no se pueden mezclar direcciones de familias diferentes"
 
-#: utils/adt/network.c:1901
+#: utils/adt/network.c:1893
 #, 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:1933
+#: utils/adt/network.c:1925
 #, 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:1994 utils/adt/network.c:2070
+#: utils/adt/network.c:1986 utils/adt/network.c:2062
 #, c-format
 msgid "result is out of range"
 msgstr "el resultado está fuera de rango"
 
-#: utils/adt/network.c:2035
+#: utils/adt/network.c:2027
 #, 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:1027
+#: utils/adt/numeric.c:785 utils/adt/numeric.c:3643 utils/adt/numeric.c:7131
+#: utils/adt/numeric.c:7334 utils/adt/numeric.c:7806 utils/adt/numeric.c:10501
+#: utils/adt/numeric.c:10975 utils/adt/numeric.c:11069
+#: utils/adt/numeric.c:11203
+#, c-format
+msgid "value overflows numeric format"
+msgstr "el valor excede el formato numeric"
+
+#: utils/adt/numeric.c:1098
 #, 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:1033
+#: utils/adt/numeric.c:1104
 #, 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:1042
+#: utils/adt/numeric.c:1113
 #, 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:1257 utils/adt/numeric.c:1271
+#: utils/adt/numeric.c:1328 utils/adt/numeric.c:1342
 #, 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:1262
+#: utils/adt/numeric.c:1333
 #, fuzzy, c-format
-#| msgid "NUMERIC scale %d must be between 0 and precision %d"
+#| msgid "NUMERIC precision %d must be between 1 and %d"
 msgid "NUMERIC scale %d must be between %d and %d"
-msgstr "la escala de NUMERIC, %d, debe estar entre 0 y la precisión %d"
+msgstr "la precisión %d de NUMERIC debe estar entre 1 y %d"
 
-#: utils/adt/numeric.c:1280
+#: utils/adt/numeric.c:1351
 #, c-format
 msgid "invalid NUMERIC type modifier"
 msgstr "modificador de tipo NUMERIC no es válido"
 
-#: utils/adt/numeric.c:1638
+#: utils/adt/numeric.c:1709
 #, c-format
 msgid "start value cannot be NaN"
 msgstr "el valor de inicio no puede ser NaN"
 
-#: utils/adt/numeric.c:1642
+#: utils/adt/numeric.c:1713
 #, c-format
 msgid "start value cannot be infinity"
 msgstr "el valor de inicio no puede ser infinito"
 
-#: utils/adt/numeric.c:1649
+#: utils/adt/numeric.c:1720
 #, c-format
 msgid "stop value cannot be NaN"
 msgstr "el valor de término no puede ser NaN"
 
-#: utils/adt/numeric.c:1653
+#: utils/adt/numeric.c:1724
 #, c-format
 msgid "stop value cannot be infinity"
 msgstr "el valor de término no puede ser infinito"
 
-#: utils/adt/numeric.c:1666
+#: utils/adt/numeric.c:1737
 #, c-format
 msgid "step size cannot be NaN"
 msgstr "el tamaño de paso no puede ser NaN"
 
-#: utils/adt/numeric.c:1670
+#: utils/adt/numeric.c:1741
 #, c-format
 msgid "step size cannot be infinity"
 msgstr "el tamaño de paso no puede ser infinito"
 
-#: utils/adt/numeric.c:3551
+#: utils/adt/numeric.c:3633
 #, c-format
 msgid "factorial of a negative number is undefined"
 msgstr "el factorial de un número negativo es indefinido"
 
-#: utils/adt/numeric.c:3561 utils/adt/numeric.c:6917 utils/adt/numeric.c:7432
-#: utils/adt/numeric.c:9956 utils/adt/numeric.c:10435 utils/adt/numeric.c:10561
-#: utils/adt/numeric.c:10634
-#, c-format
-msgid "value overflows numeric format"
-msgstr "el valor excede el formato numeric"
-
-#: utils/adt/numeric.c:4243 utils/adt/numeric.c:4323 utils/adt/numeric.c:4364
-#: utils/adt/numeric.c:4558
+#: utils/adt/numeric.c:4366 utils/adt/numeric.c:4446 utils/adt/numeric.c:4487
+#: utils/adt/numeric.c:4683
 #, c-format
 msgid "cannot convert NaN to %s"
 msgstr "no se puede convertir NaN a %s"
 
-#: utils/adt/numeric.c:4247 utils/adt/numeric.c:4327 utils/adt/numeric.c:4368
-#: utils/adt/numeric.c:4562
+#: utils/adt/numeric.c:4370 utils/adt/numeric.c:4450 utils/adt/numeric.c:4491
+#: utils/adt/numeric.c:4687
 #, c-format
 msgid "cannot convert infinity to %s"
 msgstr "no se puede convertir infinito a %s"
 
-#: utils/adt/numeric.c:4571
+#: utils/adt/numeric.c:4696
 #, c-format
 msgid "pg_lsn out of range"
 msgstr "pg_lsn fuera de rango"
 
-#: utils/adt/numeric.c:7519 utils/adt/numeric.c:7565
+#: utils/adt/numeric.c:7896 utils/adt/numeric.c:7947
 #, c-format
 msgid "numeric field overflow"
 msgstr "desbordamiento de campo numeric"
 
-#: utils/adt/numeric.c:7520
+#: utils/adt/numeric.c:7897
 #, 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/numeric.c:7566
+#: utils/adt/numeric.c:7948
 #, c-format
 msgid "A field with precision %d, scale %d cannot hold an infinite value."
 msgstr "Un campo con precisión %d, escala %d no puede contener un valor infinito."
 
-#: utils/adt/oid.c:290
+#: utils/adt/oid.c:216
 #, c-format
 msgid "invalid oidvector data"
 msgstr "datos de oidvector no válidos"
 
-#: utils/adt/oracle_compat.c:973
+#: utils/adt/oracle_compat.c:976
 #, c-format
 msgid "requested character too large"
 msgstr "el carácter solicitado es demasiado grande"
 
-#: utils/adt/oracle_compat.c:1017
+#: utils/adt/oracle_compat.c:1020
 #, fuzzy, c-format
-#| msgid "COST must be positive"
+#| msgid "host name must be specified\n"
 msgid "character number must be positive"
-msgstr "COST debe ser positivo"
+msgstr "el nombre de servidor debe ser especificado\n"
 
-#: utils/adt/oracle_compat.c:1021
+#: utils/adt/oracle_compat.c:1024
 #, c-format
 msgid "null character not permitted"
 msgstr "el carácter nulo no está permitido"
 
-#: utils/adt/oracle_compat.c:1039 utils/adt/oracle_compat.c:1092
+#: utils/adt/oracle_compat.c:1042 utils/adt/oracle_compat.c:1095
 #, fuzzy, c-format
-#| msgid "requested character too large for encoding: %d"
+#| msgid "requested character too large"
 msgid "requested character too large for encoding: %u"
-msgstr "el carácter pedido es demasiado largo para el encoding: %d"
+msgstr "el carácter solicitado es demasiado grande"
 
-#: utils/adt/oracle_compat.c:1080
+#: utils/adt/oracle_compat.c:1083
 #, fuzzy, c-format
-#| msgid "requested character not valid for encoding: %d"
+#| msgid "requested character too large"
 msgid "requested character not valid for encoding: %u"
-msgstr "el carácter pedido no es válido para el encoding: %d"
+msgstr "el carácter solicitado es demasiado grande"
 
-#: utils/adt/orderedsetaggs.c:448 utils/adt/orderedsetaggs.c:552
-#: utils/adt/orderedsetaggs.c:690
+#: utils/adt/orderedsetaggs.c:448 utils/adt/orderedsetaggs.c:553
+#: utils/adt/orderedsetaggs.c:693
 #, c-format
 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:1228
-#, c-format
-msgid "Apply system library package updates."
-msgstr "Aplique actualizaciones de paquetes de bibliotecas del sistema."
-
-#: utils/adt/pg_locale.c:1452 utils/adt/pg_locale.c:1700
-#: utils/adt/pg_locale.c:1979 utils/adt/pg_locale.c:2001
-#, c-format
-msgid "could not open collator for locale \"%s\": %s"
+#: utils/adt/pg_locale.c:1406
+#, fuzzy, c-format
+#| msgid "could not open collator for locale \"%s\": %s"
+msgid "could not open collator for locale \"%s\" with rules \"%s\": %s"
 msgstr "no se pudo abrir el «collator» para la configuración regional «%s»: %s"
 
-#: utils/adt/pg_locale.c:1465 utils/adt/pg_locale.c:2010
+#: utils/adt/pg_locale.c:1417 utils/adt/pg_locale.c:2852
+#: utils/adt/pg_locale.c:2924
 #, c-format
 msgid "ICU is not supported in this build"
 msgstr "ICU no está soportado en este servidor"
 
-#: utils/adt/pg_locale.c:1494
+#: utils/adt/pg_locale.c:1446
 #, 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:1497
+#: utils/adt/pg_locale.c:1449
 #, 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:1605
+#: utils/adt/pg_locale.c:1564
 #, 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:1614
+#: utils/adt/pg_locale.c:1573
 #, 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:1649
+#: utils/adt/pg_locale.c:1614
 #, fuzzy, c-format
-#| msgid "collation \"%s\" has no actual version, but a version was specified"
+#| msgid "extension \"%s\" has no update path from version \"%s\" to version \"%s\""
 msgid "collation \"%s\" has no actual version, but a version was recorded"
-msgstr "la extensión «%s» no tiene versión actual, pero se especificó una versión"
+msgstr "la extensión «%s» no tiene ruta de actualización desde la versión «%s» hasta la versión «%s»"
 
-#: utils/adt/pg_locale.c:1655
+#: utils/adt/pg_locale.c:1620
 #, c-format
 msgid "collation \"%s\" has version mismatch"
 msgstr "el ordenamiento (collation) «%s» tiene una discordancia de versión"
 
-#: utils/adt/pg_locale.c:1657
+#: utils/adt/pg_locale.c:1622
 #, 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:1660
+#: utils/adt/pg_locale.c:1625
 #, 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:1731
+#: utils/adt/pg_locale.c:1691
 #, c-format
 msgid "could not load locale \"%s\""
 msgstr "no se pudo cargar la configuración regional «%s»"
 
-#: utils/adt/pg_locale.c:1756
+#: utils/adt/pg_locale.c:1716
 #, c-format
 msgid "could not get collation version for locale \"%s\": error code %lu"
 msgstr "no se pudo obtener la versión de «collation» para la configuración regional «%s»: código de error %lu"
 
-#: utils/adt/pg_locale.c:1794
+#: utils/adt/pg_locale.c:1772 utils/adt/pg_locale.c:1785
+#, 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/pg_locale.c:1800
+#, c-format
+msgid "could not compare Unicode strings: %m"
+msgstr "no se pudieron comparar las cadenas Unicode: %m"
+
+#: utils/adt/pg_locale.c:1980
+#, c-format
+msgid "collation failed: %s"
+msgstr "el ordenamiento falló: %s"
+
+#: utils/adt/pg_locale.c:2201 utils/adt/pg_locale.c:2233
+#, c-format
+msgid "sort key generation failed: %s"
+msgstr "la generación de la llave de ordenamiento falló: %s"
+
+#: utils/adt/pg_locale.c:2474 utils/adt/pg_locale.c:2796
+#, fuzzy, c-format
+#| msgid "could not open collator for locale \"%s\": %s"
+msgid "could not get language from locale \"%s\": %s"
+msgstr "no se pudo abrir el «collator» para la configuración regional «%s»: %s"
+
+#: utils/adt/pg_locale.c:2495 utils/adt/pg_locale.c:2511
+#, 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:2536
 #, c-format
 msgid "encoding \"%s\" not supported by ICU"
 msgstr "la codificación «%s» no estæ soportada por ICU"
 
-#: utils/adt/pg_locale.c:1801
+#: utils/adt/pg_locale.c:2543
 #, 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:1832 utils/adt/pg_locale.c:1841
-#: utils/adt/pg_locale.c:1870 utils/adt/pg_locale.c:1880
+#: utils/adt/pg_locale.c:2560 utils/adt/pg_locale.c:2578
+#: utils/adt/pg_locale.c:2634 utils/adt/pg_locale.c:2644
 #, c-format
 msgid "%s failed: %s"
 msgstr "%s falló: %s"
 
-#: utils/adt/pg_locale.c:2179
+#: utils/adt/pg_locale.c:2843
+#, 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"
+
+#: utils/adt/pg_locale.c:2884
+#, fuzzy, c-format
+#| msgid "could not open collator for locale \"%s\": %s"
+msgid "could not get language from ICU locale \"%s\": %s"
+msgstr "no se pudo abrir el «collator» para la configuración regional «%s»: %s"
+
+#: utils/adt/pg_locale.c:2886 utils/adt/pg_locale.c:2915
+#, c-format
+msgid "To disable ICU locale validation, set parameter icu_validation_level to DISABLED."
+msgstr ""
+
+#: utils/adt/pg_locale.c:2913
+#, fuzzy, c-format
+#| msgid "cursor \"%s\" has no argument named \"%s\""
+msgid "ICU locale \"%s\" has unknown language \"%s\""
+msgstr "el cursor «%s» no tiene un argumento llamado «%s»"
+
+#: utils/adt/pg_locale.c:3093
 #, 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:2180
+#: utils/adt/pg_locale.c:3094
 #, 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."
@@ -24771,23 +25487,22 @@ msgstr "no se puede restar NaN de pg_lsn"
 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:482
+#: utils/adt/pgstatfuncs.c:253
 #, c-format
 msgid "invalid command name: \"%s\""
 msgstr "nombre de orden no válido: «%s»"
 
-#: utils/adt/pgstatfuncs.c:2114
+#: utils/adt/pgstatfuncs.c:1768
 #, c-format
 msgid "unrecognized reset target: \"%s\""
 msgstr "destino de reset no reconocido: «%s»"
 
-#: utils/adt/pgstatfuncs.c:2115
-#, fuzzy, c-format
-#| msgid "Target must be \"archiver\", \"bgwriter\", or \"wal\"."
-msgid "Target must be \"archiver\", \"bgwriter\", \"recovery_prefetch\", or \"wal\"."
-msgstr "El destino debe ser «archiver», «bgwriter» o «wal»."
+#: utils/adt/pgstatfuncs.c:1769
+#, c-format
+msgid "Target must be \"archiver\", \"bgwriter\", \"io\", \"recovery_prefetch\", or \"wal\"."
+msgstr ""
 
-#: utils/adt/pgstatfuncs.c:2193
+#: utils/adt/pgstatfuncs.c:1847
 #, fuzzy, c-format
 #| msgid "invalid role OID: %u"
 msgid "invalid subscription OID %u"
@@ -24798,373 +25513,367 @@ msgstr "el OID de rol no es válido: %u"
 msgid "cannot display a value of type %s"
 msgstr "no se puede desplegar un valor de tipo %s"
 
-#: utils/adt/pseudotypes.c:321
+#: utils/adt/pseudotypes.c:310
 #, 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:331
+#: utils/adt/pseudotypes.c:320
 #, c-format
 msgid "cannot display a value of a shell type"
 msgstr "no se puede desplegar un valor de un tipo inconcluso"
 
-#: utils/adt/rangetypes.c:404
+#: utils/adt/rangetypes.c:415
 #, c-format
 msgid "range constructor flags argument must not be null"
 msgstr "el argumento de opciones del constructor de rango no debe ser null"
 
-#: utils/adt/rangetypes.c:1003
+#: utils/adt/rangetypes.c:1014
 #, c-format
 msgid "result of range difference would not be contiguous"
 msgstr "el resultado de la diferencia de rangos no sería contiguo"
 
-#: utils/adt/rangetypes.c:1064
+#: utils/adt/rangetypes.c:1075
 #, c-format
 msgid "result of range union would not be contiguous"
 msgstr "el resultado de la unión de rangos no sería contiguo"
 
-#: utils/adt/rangetypes.c:1689
+#: utils/adt/rangetypes.c:1750
 #, c-format
 msgid "range lower bound must be less than or equal to range upper bound"
 msgstr "el límite inferior del rango debe ser menor o igual al límite superior del rango"
 
-#: utils/adt/rangetypes.c:2112 utils/adt/rangetypes.c:2125
-#: utils/adt/rangetypes.c:2139
+#: utils/adt/rangetypes.c:2197 utils/adt/rangetypes.c:2210
+#: utils/adt/rangetypes.c:2224
 #, c-format
 msgid "invalid range bound flags"
 msgstr "opciones de bordes de rango no válidas"
 
-#: utils/adt/rangetypes.c:2113 utils/adt/rangetypes.c:2126
-#: utils/adt/rangetypes.c:2140
+#: utils/adt/rangetypes.c:2198 utils/adt/rangetypes.c:2211
+#: utils/adt/rangetypes.c:2225
 #, c-format
 msgid "Valid values are \"[]\", \"[)\", \"(]\", and \"()\"."
 msgstr "Los valores aceptables son «[]», «[)», «(]» y «()»."
 
-#: utils/adt/rangetypes.c:2205 utils/adt/rangetypes.c:2222
-#: utils/adt/rangetypes.c:2235 utils/adt/rangetypes.c:2253
-#: utils/adt/rangetypes.c:2264 utils/adt/rangetypes.c:2308
-#: utils/adt/rangetypes.c:2316
+#: utils/adt/rangetypes.c:2293 utils/adt/rangetypes.c:2310
+#: utils/adt/rangetypes.c:2325 utils/adt/rangetypes.c:2345
+#: utils/adt/rangetypes.c:2356 utils/adt/rangetypes.c:2403
+#: utils/adt/rangetypes.c:2411
 #, c-format
 msgid "malformed range literal: \"%s\""
 msgstr "literal de rango mal formado: «%s»"
 
-#: utils/adt/rangetypes.c:2207
+#: utils/adt/rangetypes.c:2295
 #, c-format
 msgid "Junk after \"empty\" key word."
 msgstr "Basura a continuación de la palabra «empty»."
 
-#: utils/adt/rangetypes.c:2224
+#: utils/adt/rangetypes.c:2312
 #, c-format
 msgid "Missing left parenthesis or bracket."
 msgstr "Falta paréntesis o corchete izquierdo."
 
-#: utils/adt/rangetypes.c:2237
+#: utils/adt/rangetypes.c:2327
 #, c-format
 msgid "Missing comma after lower bound."
 msgstr "Coma faltante después del límite inferior."
 
-#: utils/adt/rangetypes.c:2255
+#: utils/adt/rangetypes.c:2347
 #, c-format
 msgid "Too many commas."
 msgstr "Demasiadas comas."
 
-#: utils/adt/rangetypes.c:2266
+#: utils/adt/rangetypes.c:2358
 #, c-format
 msgid "Junk after right parenthesis or bracket."
 msgstr "Basura después del paréntesis o corchete derecho."
 
-#: utils/adt/regexp.c:290 utils/adt/regexp.c:1983 utils/adt/varlena.c:4528
+#: utils/adt/regexp.c:305 utils/adt/regexp.c:1997 utils/adt/varlena.c:4271
 #, c-format
 msgid "regular expression failed: %s"
 msgstr "la expresión regular falló: %s"
 
-#: utils/adt/regexp.c:431 utils/adt/regexp.c:666
+#: utils/adt/regexp.c:446 utils/adt/regexp.c:681
 #, c-format
 msgid "invalid regular expression option: \"%.*s\""
 msgstr "opción de expresión regular no válida: «%.*s»"
 
-#: utils/adt/regexp.c:668
+#: utils/adt/regexp.c:683
 #, c-format
 msgid "If you meant to use regexp_replace() with a start parameter, cast the fourth argument to integer explicitly."
 msgstr "Si su intención era usar regexp_replace() con un parámetro de inicio, convierta el cuarto argumento a integer explícitamente."
 
-#: utils/adt/regexp.c:702 utils/adt/regexp.c:711 utils/adt/regexp.c:1068
-#: utils/adt/regexp.c:1132 utils/adt/regexp.c:1141 utils/adt/regexp.c:1150
-#: utils/adt/regexp.c:1159 utils/adt/regexp.c:1839 utils/adt/regexp.c:1848
-#: utils/adt/regexp.c:1857 utils/misc/guc.c:11869 utils/misc/guc.c:11903
+#: utils/adt/regexp.c:717 utils/adt/regexp.c:726 utils/adt/regexp.c:1083
+#: utils/adt/regexp.c:1147 utils/adt/regexp.c:1156 utils/adt/regexp.c:1165
+#: utils/adt/regexp.c:1174 utils/adt/regexp.c:1854 utils/adt/regexp.c:1863
+#: utils/adt/regexp.c:1872 utils/misc/guc.c:6734 utils/misc/guc.c:6768
 #, c-format
 msgid "invalid value for parameter \"%s\": %d"
 msgstr "valor no válido para el parámetro «%s»: %d"
 
-#: utils/adt/regexp.c:922
+#: utils/adt/regexp.c:937
 #, 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:1079 utils/adt/regexp.c:1170 utils/adt/regexp.c:1257
-#: utils/adt/regexp.c:1296 utils/adt/regexp.c:1684 utils/adt/regexp.c:1739
-#: utils/adt/regexp.c:1868
+#: utils/adt/regexp.c:1094 utils/adt/regexp.c:1185 utils/adt/regexp.c:1272
+#: utils/adt/regexp.c:1311 utils/adt/regexp.c:1699 utils/adt/regexp.c:1754
+#: utils/adt/regexp.c:1883
 #, c-format
 msgid "%s does not support the \"global\" option"
 msgstr "%s no soporta la opción «global»"
 
-#: utils/adt/regexp.c:1298
+#: utils/adt/regexp.c:1313
 #, c-format
 msgid "Use the regexp_matches function instead."
 msgstr "En su lugar, utilice la función regexp_matches."
 
-#: utils/adt/regexp.c:1486
+#: utils/adt/regexp.c:1501
 #, c-format
 msgid "too many regular expression matches"
 msgstr "demasiadas coincidencias de la expresión regular"
 
-#: utils/adt/regproc.c:105
+#: utils/adt/regproc.c:104
 #, c-format
 msgid "more than one function named \"%s\""
 msgstr "existe más de una función llamada «%s»"
 
-#: utils/adt/regproc.c:543
+#: utils/adt/regproc.c:513
 #, c-format
 msgid "more than one operator named %s"
 msgstr "existe más de un operador llamado %s"
 
-#: utils/adt/regproc.c:710 utils/adt/regproc.c:751 gram.y:8771
+#: utils/adt/regproc.c:670 gram.y:8862
 #, c-format
 msgid "missing argument"
 msgstr "falta un argumento"
 
-#: utils/adt/regproc.c:711 utils/adt/regproc.c:752 gram.y:8772
+#: utils/adt/regproc.c:671 gram.y:8863
 #, 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:715 utils/adt/regproc.c:756 utils/adt/regproc.c:2055
-#: utils/adt/ruleutils.c:9869 utils/adt/ruleutils.c:10038
+#: utils/adt/regproc.c:675 utils/adt/regproc.c:2009 utils/adt/ruleutils.c:9934
+#: utils/adt/ruleutils.c:10147
 #, c-format
 msgid "too many arguments"
 msgstr "demasiados argumentos"
 
-#: utils/adt/regproc.c:716 utils/adt/regproc.c:757
+#: utils/adt/regproc.c:676
 #, c-format
 msgid "Provide two argument types for operator."
 msgstr "Provea dos tipos de argumento para un operador."
 
-#: utils/adt/regproc.c:1639 utils/adt/regproc.c:1663 utils/adt/regproc.c:1764
-#: utils/adt/regproc.c:1788 utils/adt/regproc.c:1890 utils/adt/regproc.c:1895
-#: utils/adt/varlena.c:3667 utils/adt/varlena.c:3672
+#: utils/adt/regproc.c:1544 utils/adt/regproc.c:1661 utils/adt/regproc.c:1790
+#: utils/adt/regproc.c:1795 utils/adt/varlena.c:3411 utils/adt/varlena.c:3416
 #, c-format
 msgid "invalid name syntax"
 msgstr "la sintaxis de nombre no es válida"
 
-#: utils/adt/regproc.c:1953
+#: utils/adt/regproc.c:1904
 #, c-format
 msgid "expected a left parenthesis"
 msgstr "se esperaba un paréntesis izquierdo"
 
-#: utils/adt/regproc.c:1969
+#: utils/adt/regproc.c:1922
 #, c-format
 msgid "expected a right parenthesis"
 msgstr "se esperaba un paréntesis derecho"
 
-#: utils/adt/regproc.c:1988
+#: utils/adt/regproc.c:1941
 #, c-format
 msgid "expected a type name"
 msgstr "se esperaba un nombre de tipo"
 
-#: utils/adt/regproc.c:2020
+#: utils/adt/regproc.c:1973
 #, c-format
 msgid "improper type name"
 msgstr "el nombre de tipo no es válido"
 
-#: utils/adt/ri_triggers.c:307 utils/adt/ri_triggers.c:1611
-#: utils/adt/ri_triggers.c:2598
+#: utils/adt/ri_triggers.c:306 utils/adt/ri_triggers.c:1625
+#: utils/adt/ri_triggers.c:2610
 #, 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:310 utils/adt/ri_triggers.c:1614
+#: utils/adt/ri_triggers.c:309 utils/adt/ri_triggers.c:1628
 #, 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:2031
+#: utils/adt/ri_triggers.c:2045
 #, 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:2037
+#: utils/adt/ri_triggers.c:2051
 #, 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:2043
+#: utils/adt/ri_triggers.c:2057
 #, 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:2066
+#: utils/adt/ri_triggers.c:2080
 #, 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:2068
+#: utils/adt/ri_triggers.c:2082
 #, 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:2098 gram.y:4172
+#: utils/adt/ri_triggers.c:2112 gram.y:4244
 #, c-format
 msgid "MATCH PARTIAL not yet implemented"
 msgstr "MATCH PARTIAL no está implementada"
 
-#: utils/adt/ri_triggers.c:2423
+#: utils/adt/ri_triggers.c:2435
 #, 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:2427
+#: utils/adt/ri_triggers.c:2439
 #, 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:2588
+#: utils/adt/ri_triggers.c:2600
 #, 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:2591 utils/adt/ri_triggers.c:2616
+#: utils/adt/ri_triggers.c:2603 utils/adt/ri_triggers.c:2628
 #, 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:2602
+#: utils/adt/ri_triggers.c:2614
 #, 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:2605
+#: utils/adt/ri_triggers.c:2617
 #, 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:2611
+#: utils/adt/ri_triggers.c:2623
 #, 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:2619
+#: utils/adt/ri_triggers.c:2631
 #, c-format
 msgid "Key is still referenced from table \"%s\"."
 msgstr "La llave todavía es referida desde la tabla «%s»."
 
-#: utils/adt/rowtypes.c:105 utils/adt/rowtypes.c:483
+#: utils/adt/rowtypes.c:106 utils/adt/rowtypes.c:510
 #, c-format
 msgid "input of anonymous composite types is not implemented"
 msgstr "el ingreso de tipos compuestos anónimos no está implementado"
 
-#: utils/adt/rowtypes.c:157 utils/adt/rowtypes.c:186 utils/adt/rowtypes.c:209
-#: utils/adt/rowtypes.c:217 utils/adt/rowtypes.c:269 utils/adt/rowtypes.c:277
+#: utils/adt/rowtypes.c:159 utils/adt/rowtypes.c:191 utils/adt/rowtypes.c:217
+#: utils/adt/rowtypes.c:228 utils/adt/rowtypes.c:286 utils/adt/rowtypes.c:297
 #, c-format
 msgid "malformed record literal: \"%s\""
 msgstr "literal de record mal formado: «%s»"
 
-#: utils/adt/rowtypes.c:158
+#: utils/adt/rowtypes.c:160
 #, c-format
 msgid "Missing left parenthesis."
 msgstr "Falta paréntesis izquierdo."
 
-#: utils/adt/rowtypes.c:187
+#: utils/adt/rowtypes.c:192
 #, c-format
 msgid "Too few columns."
 msgstr "Muy pocas columnas."
 
-#: utils/adt/rowtypes.c:270
+#: utils/adt/rowtypes.c:287
 #, c-format
 msgid "Too many columns."
 msgstr "Demasiadas columnas."
 
-#: utils/adt/rowtypes.c:278
+#: utils/adt/rowtypes.c:298
 #, c-format
 msgid "Junk after right parenthesis."
 msgstr "Basura después del paréntesis derecho."
 
-#: utils/adt/rowtypes.c:532
+#: utils/adt/rowtypes.c:559
 #, c-format
 msgid "wrong number of columns: %d, expected %d"
 msgstr "número de columnas erróneo: %d, se esperaban %d"
 
-#: utils/adt/rowtypes.c:574
+#: utils/adt/rowtypes.c:601
 #, c-format
 msgid "binary data has type %u (%s) instead of expected %u (%s) in record column %d"
 msgstr "los datos binarios tienen tipo %u (%s) en lugar del esperado %u (%s) en columna de registro %d"
 
-#: utils/adt/rowtypes.c:641
+#: utils/adt/rowtypes.c:668
 #, c-format
 msgid "improper binary format in record column %d"
 msgstr "formato binario incorrecto en la columna record %d"
 
-#: utils/adt/rowtypes.c:932 utils/adt/rowtypes.c:1178 utils/adt/rowtypes.c:1436
-#: utils/adt/rowtypes.c:1682
+#: utils/adt/rowtypes.c:959 utils/adt/rowtypes.c:1205 utils/adt/rowtypes.c:1463
+#: utils/adt/rowtypes.c:1709
 #, 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:1023 utils/adt/rowtypes.c:1248
-#: utils/adt/rowtypes.c:1533 utils/adt/rowtypes.c:1718
+#: utils/adt/rowtypes.c:1050 utils/adt/rowtypes.c:1275
+#: utils/adt/rowtypes.c:1560 utils/adt/rowtypes.c:1745
 #, 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:2705
+#: utils/adt/ruleutils.c:2678
 #, fuzzy, c-format
 #| msgid "cannot use subquery in index expression"
 msgid "input is a query, not an expression"
 msgstr "no se puede usar una subconsulta en una expresión de índice"
 
-#: utils/adt/ruleutils.c:2717
+#: utils/adt/ruleutils.c:2690
 #, fuzzy, c-format
 #| msgid "USING expression contains a whole-row table reference."
 msgid "expression contains variables of more than one relation"
 msgstr "La expresión USING contiene una referencia a la fila completa (whole-row)."
 
-#: utils/adt/ruleutils.c:2724
+#: utils/adt/ruleutils.c:2697
 #, fuzzy, c-format
 #| msgid "argument of %s must not contain variables"
 msgid "expression contains variables"
 msgstr "el argumento de %s no puede contener variables"
 
-#: utils/adt/ruleutils.c:5247
+#: utils/adt/ruleutils.c:5211
 #, 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:110
+#: utils/adt/timestamp.c:91
 #, 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:116
+#: utils/adt/timestamp.c:97
 #, 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:179 utils/adt/timestamp.c:437 utils/misc/guc.c:12893
-#, c-format
-msgid "timestamp out of range: \"%s\""
-msgstr "timestamp fuera de rango: «%s»"
-
-#: utils/adt/timestamp.c:375
+#: utils/adt/timestamp.c:377
 #, 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:499
+#: 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:512
+#: utils/adt/timestamp.c:507
 #, c-format
 msgid "numeric time zone \"%s\" out of range"
 msgstr "huso horario numérico «%s» fuera de rango"
@@ -25185,51 +25894,50 @@ msgstr "el timestamp no puede ser NaN"
 msgid "timestamp out of range: \"%g\""
 msgstr "timestamp fuera de rango: «%g»"
 
-#: utils/adt/timestamp.c:1062 utils/adt/timestamp.c:1095
+#: utils/adt/timestamp.c:1064 utils/adt/timestamp.c:1097
 #, c-format
 msgid "invalid INTERVAL type modifier"
 msgstr "modificador de tipo INTERVAL no válido"
 
-#: utils/adt/timestamp.c:1078
+#: utils/adt/timestamp.c:1080
 #, 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:1084
+#: utils/adt/timestamp.c:1086
 #, 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:1466
+#: utils/adt/timestamp.c:1472
 #, 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:2689
+#: utils/adt/timestamp.c:2711
 #, c-format
 msgid "cannot subtract infinite timestamps"
 msgstr "no se pueden restar timestamps infinitos"
 
-#: utils/adt/timestamp.c:3891 utils/adt/timestamp.c:4074
+#: utils/adt/timestamp.c:3964 utils/adt/timestamp.c:4147
 #, c-format
 msgid "origin out of range"
 msgstr "origen fuera de rango"
 
-#: utils/adt/timestamp.c:3896 utils/adt/timestamp.c:4079
+#: utils/adt/timestamp.c:3969 utils/adt/timestamp.c:4152
 #, c-format
 msgid "timestamps cannot be binned into intervals containing months or years"
 msgstr "no se puede aproximar (bin) timestamps hacia intervalos que contengan meses o años"
 
-#: utils/adt/timestamp.c:3903 utils/adt/timestamp.c:4086
+#: utils/adt/timestamp.c:3976 utils/adt/timestamp.c:4159
 #, c-format
 msgid "stride must be greater than zero"
 msgstr "el intervalo de paso (stride) debe ser mayor que cero"
 
-#: utils/adt/timestamp.c:4399
-#, fuzzy, c-format
-#| msgid "interval units \"%s\" not supported because months usually have fractional weeks"
+#: utils/adt/timestamp.c:4442
+#, c-format
 msgid "Months usually have fractional weeks."
-msgstr "las unidades de intervalo «%s» no están soportadas porque los meses normalmente tienen semanas fraccionales"
+msgstr ""
 
 #: utils/adt/trigfuncs.c:42
 #, c-format
@@ -25251,53 +25959,47 @@ 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:92
-#, c-format
-msgid "gtsvector_in not implemented"
-msgstr "gtsvector_in no está implementado"
-
-#: utils/adt/tsquery.c:199 utils/adt/tsquery_op.c:124
+#: utils/adt/tsquery.c:210 utils/adt/tsquery_op.c:125
 #, c-format
 msgid "distance in phrase operator must be an integer value between zero and %d inclusive"
 msgstr "distancia en operador de frases debe ser un valor entero entre zero y %d inclusive"
 
-#: utils/adt/tsquery.c:306 utils/adt/tsquery.c:691
-#: utils/adt/tsvector_parser.c:133
-#, c-format
-msgid "syntax error in tsquery: \"%s\""
-msgstr "error de sintaxis en tsquery: «%s»"
-
-#: utils/adt/tsquery.c:330
+#: utils/adt/tsquery.c:344
 #, c-format
 msgid "no operand in tsquery: \"%s\""
 msgstr "no hay operando en tsquery: «%s»"
 
-#: utils/adt/tsquery.c:534
+#: utils/adt/tsquery.c:558
 #, c-format
 msgid "value is too big in tsquery: \"%s\""
 msgstr "el valor es demasiado grande en tsquery: «%s»"
 
-#: utils/adt/tsquery.c:539
+#: utils/adt/tsquery.c:563
 #, c-format
 msgid "operand is too long in tsquery: \"%s\""
 msgstr "el operando es muy largo en tsquery: «%s»"
 
-#: utils/adt/tsquery.c:567
+#: utils/adt/tsquery.c:591
 #, c-format
 msgid "word is too long in tsquery: \"%s\""
 msgstr "palabra demasiado larga en tsquery: «%s»"
 
-#: utils/adt/tsquery.c:835
+#: utils/adt/tsquery.c:717 utils/adt/tsvector_parser.c:147
+#, c-format
+msgid "syntax error in tsquery: \"%s\""
+msgstr "error de sintaxis en tsquery: «%s»"
+
+#: utils/adt/tsquery.c:883
 #, c-format
 msgid "text-search query doesn't contain lexemes: \"%s\""
 msgstr "la consulta de búsqueda en texto no contiene lexemas: «%s»"
 
-#: utils/adt/tsquery.c:846 utils/adt/tsquery_util.c:375
+#: utils/adt/tsquery.c:894 utils/adt/tsquery_util.c:376
 #, c-format
 msgid "tsquery is too large"
 msgstr "el tsquery es demasiado grande"
 
-#: utils/adt/tsquery_cleanup.c:407
+#: utils/adt/tsquery_cleanup.c:409
 #, c-format
 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"
@@ -25327,88 +26029,88 @@ msgstr "los arrays de pesos no deben contener valores nulos"
 msgid "weight out of range"
 msgstr "peso fuera de rango"
 
-#: utils/adt/tsvector.c:215
+#: utils/adt/tsvector.c:217
 #, 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:222
+#: utils/adt/tsvector.c:224
 #, 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:771
+#: utils/adt/tsvector_op.c:773
 #, c-format
 msgid "lexeme array may not contain nulls"
 msgstr "el array de lexemas no debe contener nulls"
 
-#: utils/adt/tsvector_op.c:776
+#: utils/adt/tsvector_op.c:778
 #, fuzzy, c-format
 #| msgid "lexeme array may not contain nulls"
 msgid "lexeme array may not contain empty strings"
 msgstr "el array de lexemas no debe contener nulls"
 
-#: utils/adt/tsvector_op.c:846
+#: utils/adt/tsvector_op.c:847
 #, c-format
 msgid "weight array may not contain nulls"
 msgstr "el array de pesos no debe contener nulls"
 
-#: utils/adt/tsvector_op.c:870
+#: utils/adt/tsvector_op.c:871
 #, c-format
 msgid "unrecognized weight: \"%c\""
 msgstr "no se reconoce el peso: «%c»"
 
-#: utils/adt/tsvector_op.c:2431
+#: utils/adt/tsvector_op.c:2601
 #, 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:2620
+#: utils/adt/tsvector_op.c:2790
 #, c-format
 msgid "tsvector column \"%s\" does not exist"
 msgstr "la columna tsvector «%s» no existe"
 
-#: utils/adt/tsvector_op.c:2627
+#: utils/adt/tsvector_op.c:2797
 #, c-format
 msgid "column \"%s\" is not of tsvector type"
 msgstr "la columna «%s» no es de tipo tsvector"
 
-#: utils/adt/tsvector_op.c:2639
+#: utils/adt/tsvector_op.c:2809
 #, c-format
 msgid "configuration column \"%s\" does not exist"
 msgstr "la columna de configuración «%s» no existe"
 
-#: utils/adt/tsvector_op.c:2645
+#: utils/adt/tsvector_op.c:2815
 #, c-format
 msgid "column \"%s\" is not of regconfig type"
 msgstr "la columna «%s» no es de tipo regconfig"
 
-#: utils/adt/tsvector_op.c:2652
+#: utils/adt/tsvector_op.c:2822
 #, 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:2665
+#: utils/adt/tsvector_op.c:2835
 #, 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:2690
+#: utils/adt/tsvector_op.c:2860
 #, c-format
 msgid "column \"%s\" is not of a character type"
 msgstr "la columna «%s» no es de un tipo textual"
 
-#: utils/adt/tsvector_parser.c:134
+#: utils/adt/tsvector_parser.c:148
 #, c-format
 msgid "syntax error in tsvector: \"%s\""
 msgstr "error de sintaxis en tsvector: «%s»"
 
-#: utils/adt/tsvector_parser.c:200
+#: utils/adt/tsvector_parser.c:221
 #, c-format
 msgid "there is no escaped character: \"%s\""
 msgstr "no hay carácter escapado: «%s»"
 
-#: utils/adt/tsvector_parser.c:318
+#: utils/adt/tsvector_parser.c:339
 #, c-format
 msgid "wrong position info in tsvector: \"%s\""
 msgstr "información posicional incorrecta en tsvector: «%s»"
@@ -25418,12 +26120,12 @@ msgstr "información posicional incorrecta en tsvector: «%s»"
 msgid "could not generate random values"
 msgstr "no se pudo generar valores aleatorios"
 
-#: utils/adt/varbit.c:110 utils/adt/varchar.c:53
+#: utils/adt/varbit.c:110 utils/adt/varchar.c:54
 #, 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:115 utils/adt/varchar.c:57
+#: utils/adt/varbit.c:115 utils/adt/varchar.c:58
 #, c-format
 msgid "length for type %s cannot exceed %d"
 msgstr "el largo del tipo %s no puede exceder %d"
@@ -25458,9 +26160,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:1081 utils/adt/varbit.c:1191 utils/adt/varlena.c:889
-#: utils/adt/varlena.c:952 utils/adt/varlena.c:1109 utils/adt/varlena.c:3309
-#: utils/adt/varlena.c:3387
+#: utils/adt/varbit.c:1081 utils/adt/varbit.c:1191 utils/adt/varlena.c:908
+#: utils/adt/varlena.c:971 utils/adt/varlena.c:1128 utils/adt/varlena.c:3053
+#: utils/adt/varlena.c:3131
 #, c-format
 msgid "negative substring length not allowed"
 msgstr "no se permite un largo negativo de subcadena"
@@ -25485,324 +26187,302 @@ msgstr "no se puede hacer XOR entre cadenas de bits de distintos tamaños"
 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:1833 utils/adt/varlena.c:3591
+#: utils/adt/varbit.c:1833 utils/adt/varlena.c:3335
 #, c-format
 msgid "new bit must be 0 or 1"
 msgstr "el nuevo bit debe ser 0 o 1"
 
-#: utils/adt/varchar.c:157 utils/adt/varchar.c:310
+#: utils/adt/varchar.c:162 utils/adt/varchar.c:313
 #, 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:472 utils/adt/varchar.c:634
+#: utils/adt/varchar.c:476 utils/adt/varchar.c:640
 #, 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:732 utils/adt/varlena.c:1498
+#: utils/adt/varchar.c:738 utils/adt/varlena.c:1517
 #, 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:1208 utils/adt/varlena.c:1947
+#: utils/adt/varlena.c:1227 utils/adt/varlena.c:1806
 #, 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:1596 utils/adt/varlena.c:1609
-#, 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:1624
-#, c-format
-msgid "could not compare Unicode strings: %m"
-msgstr "no se pudieron comparar las cadenas Unicode: %m"
-
-#: utils/adt/varlena.c:1675 utils/adt/varlena.c:2396
-#, c-format
-msgid "collation failed: %s"
-msgstr "el ordenamiento falló: %s"
-
-#: utils/adt/varlena.c:2582
-#, c-format
-msgid "sort key generation failed: %s"
-msgstr "la generación de la llave de ordenamiento falló: %s"
-
-#: utils/adt/varlena.c:3475 utils/adt/varlena.c:3542
+#: utils/adt/varlena.c:3219 utils/adt/varlena.c:3286
 #, 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:3506 utils/adt/varlena.c:3578
+#: utils/adt/varlena.c:3250 utils/adt/varlena.c:3322
 #, c-format
 msgid "index %lld out of valid range, 0..%lld"
 msgstr "el índice %lld está fuera de rango, 0..%lld"
 
-#: utils/adt/varlena.c:4640
+#: utils/adt/varlena.c:4383
 #, c-format
 msgid "field position must not be zero"
 msgstr "la posición del campo no debe ser cero"
 
-#: utils/adt/varlena.c:5660
+#: utils/adt/varlena.c:5555
 #, c-format
 msgid "unterminated format() type specifier"
 msgstr "especificador de tipo inconcluso en format()"
 
-#: utils/adt/varlena.c:5661 utils/adt/varlena.c:5795 utils/adt/varlena.c:5916
+#: utils/adt/varlena.c:5556 utils/adt/varlena.c:5690 utils/adt/varlena.c:5811
 #, c-format
 msgid "For a single \"%%\" use \"%%%%\"."
 msgstr "Para un «%%» solo, use «%%%%»."
 
-#: utils/adt/varlena.c:5793 utils/adt/varlena.c:5914
+#: utils/adt/varlena.c:5688 utils/adt/varlena.c:5809
 #, c-format
 msgid "unrecognized format() type specifier \"%.*s\""
 msgstr "especificador de tipo no reconocido «%.*s» en format()"
 
-#: utils/adt/varlena.c:5806 utils/adt/varlena.c:5863
+#: utils/adt/varlena.c:5701 utils/adt/varlena.c:5758
 #, c-format
 msgid "too few arguments for format()"
 msgstr "muy pocos argumentos para format()"
 
-#: utils/adt/varlena.c:5959 utils/adt/varlena.c:6141
+#: utils/adt/varlena.c:5854 utils/adt/varlena.c:6036
 #, c-format
 msgid "number is out of range"
 msgstr "el número está fuera de rango"
 
-#: utils/adt/varlena.c:6022 utils/adt/varlena.c:6050
+#: utils/adt/varlena.c:5917 utils/adt/varlena.c:5945
 #, 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:6043
+#: utils/adt/varlena.c:5938
 #, 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:6088
+#: utils/adt/varlena.c:5983
 #, 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:6214
+#: utils/adt/varlena.c:6191
 #, c-format
 msgid "Unicode normalization can only be performed if server encoding is UTF8"
 msgstr "la normalización Unicode sólo puede ser hecha si la codificación de servidor es UTF8"
 
-#: utils/adt/varlena.c:6227
+#: utils/adt/varlena.c:6204
 #, c-format
 msgid "invalid normalization form: %s"
 msgstr "forma de normalización no válida: %s"
 
-#: utils/adt/varlena.c:6430 utils/adt/varlena.c:6465 utils/adt/varlena.c:6500
+#: utils/adt/varlena.c:6407 utils/adt/varlena.c:6442 utils/adt/varlena.c:6477
 #, c-format
 msgid "invalid Unicode code point: %04X"
 msgstr "punto de código Unicode no válido: %04X"
 
-#: utils/adt/varlena.c:6530
+#: utils/adt/varlena.c:6507
 #, c-format
 msgid "Unicode escapes must be \\XXXX, \\+XXXXXX, \\uXXXX, or \\UXXXXXXXX."
 msgstr "Los escapes Unicode deben ser \\XXXX, \\+XXXXXX, \\uXXXX o \\UXXXXXXXX."
 
-#: utils/adt/windowfuncs.c:306
+#: utils/adt/windowfuncs.c:442
 #, c-format
 msgid "argument of ntile must be greater than zero"
 msgstr "el argumento de ntile debe ser mayor que cero"
 
-#: utils/adt/windowfuncs.c:528
+#: utils/adt/windowfuncs.c:706
 #, c-format
 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:117
-#, fuzzy, c-format
-#| msgid "transaction ID %s is in the future"
+#: utils/adt/xid8funcs.c:125
+#, c-format
 msgid "transaction ID %llu is in the future"
-msgstr "el ID de transacción %s está en el futuro"
+msgstr ""
 
 #: utils/adt/xid8funcs.c:547
 #, c-format
 msgid "invalid external pg_snapshot data"
 msgstr "datos externos pg_snapshot no válidos"
 
-#: utils/adt/xml.c:222
+#: utils/adt/xml.c:228
 #, c-format
 msgid "unsupported XML feature"
 msgstr "característica XML no soportada"
 
-#: utils/adt/xml.c:223
+#: utils/adt/xml.c:229
 #, c-format
 msgid "This functionality requires the server to be built with libxml support."
 msgstr "Esta funcionalidad requiere que el servidor haya sido construido con soporte libxml."
 
-#: utils/adt/xml.c:242 utils/mb/mbutils.c:627
+#: utils/adt/xml.c:248 utils/mb/mbutils.c:628
 #, c-format
 msgid "invalid encoding name \"%s\""
 msgstr "nombre de codificación «%s» no válido"
 
-#: utils/adt/xml.c:485 utils/adt/xml.c:490
+#: utils/adt/xml.c:496 utils/adt/xml.c:501
 #, c-format
 msgid "invalid XML comment"
 msgstr "comentario XML no válido"
 
-#: utils/adt/xml.c:619
+#: utils/adt/xml.c:660
 #, c-format
 msgid "not an XML document"
 msgstr "no es un documento XML"
 
-#: utils/adt/xml.c:778 utils/adt/xml.c:801
+#: utils/adt/xml.c:956 utils/adt/xml.c:979
 #, c-format
 msgid "invalid XML processing instruction"
 msgstr "instrucción de procesamiento XML no válida"
 
-#: utils/adt/xml.c:779
+#: utils/adt/xml.c:957
 #, c-format
 msgid "XML processing instruction target name cannot be \"%s\"."
 msgstr "el nombre de destino de la instrucción de procesamiento XML no puede ser «%s»."
 
-#: utils/adt/xml.c:802
+#: utils/adt/xml.c:980
 #, c-format
 msgid "XML processing instruction cannot contain \"?>\"."
 msgstr "la instrucción de procesamiento XML no puede contener «?>»."
 
-#: utils/adt/xml.c:881
+#: utils/adt/xml.c:1059
 #, c-format
 msgid "xmlvalidate is not implemented"
 msgstr "xmlvalidate no está implementado"
 
-#: utils/adt/xml.c:960
+#: utils/adt/xml.c:1115
 #, c-format
 msgid "could not initialize XML library"
 msgstr "no se pudo inicializar la biblioteca XML"
 
-#: utils/adt/xml.c:961
-#, fuzzy, c-format
-#| msgid "libxml2 has incompatible char type: sizeof(char)=%u, sizeof(xmlChar)=%u."
+#: utils/adt/xml.c:1116
+#, c-format
 msgid "libxml2 has incompatible char type: sizeof(char)=%zu, sizeof(xmlChar)=%zu."
-msgstr "libxml2 tiene tipo char incompatible: sizeof(char)=%u, sizeof(xmlChar)=%u."
+msgstr ""
 
-#: utils/adt/xml.c:1047
+#: utils/adt/xml.c:1202
 #, c-format
 msgid "could not set up XML error handler"
 msgstr "no se pudo instalar un gestor de errores XML"
 
-#: utils/adt/xml.c:1048
+#: utils/adt/xml.c:1203
 #, c-format
 msgid "This probably indicates that the version of libxml2 being used is not compatible with the libxml2 header files that PostgreSQL was built with."
 msgstr "Esto probablemente indica que la versión de libxml2 en uso no es compatible con los archivos de cabecera libxml2 con los que PostgreSQL fue construido."
 
-#: utils/adt/xml.c:1935
+#: utils/adt/xml.c:2189
 msgid "Invalid character value."
 msgstr "Valor de carácter no válido."
 
-#: utils/adt/xml.c:1938
+#: utils/adt/xml.c:2192
 msgid "Space required."
 msgstr "Se requiere un espacio."
 
-#: utils/adt/xml.c:1941
+#: utils/adt/xml.c:2195
 msgid "standalone accepts only 'yes' or 'no'."
 msgstr "standalone acepta sólo 'yes' y 'no'."
 
-#: utils/adt/xml.c:1944
+#: utils/adt/xml.c:2198
 msgid "Malformed declaration: missing version."
 msgstr "Declaración mal formada: falta la versión."
 
-#: utils/adt/xml.c:1947
+#: utils/adt/xml.c:2201
 msgid "Missing encoding in text declaration."
 msgstr "Falta especificación de codificación en declaración de texto."
 
-#: utils/adt/xml.c:1950
+#: utils/adt/xml.c:2204
 msgid "Parsing XML declaration: '?>' expected."
 msgstr "Procesando declaración XML: se esperaba '?>'."
 
-#: utils/adt/xml.c:1953
+#: utils/adt/xml.c:2207
 #, c-format
 msgid "Unrecognized libxml error code: %d."
 msgstr "Código de error libxml no reconocido: %d."
 
-#: utils/adt/xml.c:2210
+#: utils/adt/xml.c:2461
 #, c-format
 msgid "XML does not support infinite date values."
 msgstr "XML no soporta valores infinitos de fecha."
 
-#: utils/adt/xml.c:2232 utils/adt/xml.c:2259
+#: utils/adt/xml.c:2483 utils/adt/xml.c:2510
 #, c-format
 msgid "XML does not support infinite timestamp values."
 msgstr "XML no soporta valores infinitos de timestamp."
 
-#: utils/adt/xml.c:2675
+#: utils/adt/xml.c:2926
 #, c-format
 msgid "invalid query"
 msgstr "consulta no válido"
 
-#: utils/adt/xml.c:4015
+#: utils/adt/xml.c:4266
 #, 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:4016
+#: utils/adt/xml.c:4267
 #, 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:4040
+#: utils/adt/xml.c:4291
 #, c-format
 msgid "empty XPath expression"
 msgstr "expresion XPath vacía"
 
-#: utils/adt/xml.c:4092
+#: utils/adt/xml.c:4343
 #, 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:4099
+#: utils/adt/xml.c:4350
 #, 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:4450
+#: utils/adt/xml.c:4693
 #, c-format
 msgid "DEFAULT namespace is not supported"
 msgstr "el espacio de nombres DEFAULT no está soportado"
 
-#: utils/adt/xml.c:4479
+#: utils/adt/xml.c:4722
 #, 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:4510
+#: utils/adt/xml.c:4753
 #, 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:4654
+#: utils/adt/xml.c:4897
 #, 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:1042
+#: utils/cache/lsyscache.c:1043
 #, 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:2844 utils/cache/lsyscache.c:2877
-#: utils/cache/lsyscache.c:2910 utils/cache/lsyscache.c:2943
+#: utils/cache/lsyscache.c:2845 utils/cache/lsyscache.c:2878
+#: utils/cache/lsyscache.c:2911 utils/cache/lsyscache.c:2944
 #, c-format
 msgid "type %s is only a shell"
 msgstr "el tipo %s está inconcluso"
 
-#: utils/cache/lsyscache.c:2849
+#: utils/cache/lsyscache.c:2850
 #, 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:2882
+#: utils/cache/lsyscache.c:2883
 #, 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:215
+#: utils/cache/partcache.c:219
 #, 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"
@@ -25812,154 +26492,160 @@ 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:3732
+#: utils/cache/relcache.c:3740
 #, fuzzy, c-format
-#| msgid "pg_class index OID value not set when in binary upgrade mode"
-msgid "heap relfilenode 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"
+#| msgid "relfilenode value not set when in binary upgrade mode"
+msgid "heap relfilenumber value not set when in binary upgrade mode"
+msgstr "el valor de relfilende no se definió en modo de actualización binaria"
 
-#: utils/cache/relcache.c:3740
+#: utils/cache/relcache.c:3748
 #, fuzzy, c-format
-#| msgid "must be superuser to connect in binary upgrade mode"
-msgid "unexpected request for new relfilenode in binary upgrade mode"
-msgstr "debe ser superusuario para conectarse en modo de actualización binaria"
+#| msgid "index relfilenode value not set when in binary upgrade mode"
+msgid "unexpected request for new relfilenumber in binary upgrade mode"
+msgstr "el valor de relfilenode de índice no se definió en modo de actualización binaria"
 
-#: utils/cache/relcache.c:6451
+#: utils/cache/relcache.c:6488
 #, 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:6453
+#: utils/cache/relcache.c:6490
 #, c-format
 msgid "Continuing anyway, but there's something wrong."
 msgstr "Prosiguiendo de todas maneras, pero hay algo mal."
 
-#: utils/cache/relcache.c:6775
+#: utils/cache/relcache.c:6812
 #, c-format
 msgid "could not remove cache file \"%s\": %m"
 msgstr "no se pudo eliminar el archivo de cache «%s»: %m"
 
-#: utils/cache/relmapper.c:590
+#: utils/cache/relmapper.c:596
 #, c-format
 msgid "cannot PREPARE a transaction that modified relation mapping"
 msgstr "no se puede hacer PREPARE de una transacción que ha modificado el mapeo de relaciones"
 
-#: utils/cache/relmapper.c:836
+#: utils/cache/relmapper.c:850
 #, c-format
 msgid "relation mapping file \"%s\" contains invalid data"
 msgstr "el archivo de mapeo de relaciones «%s» contiene datos no válidos"
 
-#: utils/cache/relmapper.c:846
+#: utils/cache/relmapper.c:860
 #, c-format
 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:1809 utils/fmgr/funcapi.c:532
+#: utils/cache/typcache.c:1803 utils/fmgr/funcapi.c:566
 #, c-format
 msgid "record type has not been registered"
 msgstr "el tipo record no ha sido registrado"
 
-#: utils/error/assert.c:39
+#: utils/error/assert.c:37
 #, c-format
 msgid "TRAP: ExceptionalCondition: bad arguments in PID %d\n"
 msgstr "TRAP: ExceptionalCondition: argumentos erróneos en PID %d\n"
 
-#: utils/error/assert.c:42
-#, c-format
-msgid "TRAP: %s(\"%s\", File: \"%s\", Line: %d, PID: %d)\n"
+#: utils/error/assert.c:40
+#, fuzzy, c-format
+#| msgid "TRAP: %s(\"%s\", File: \"%s\", Line: %d, PID: %d)\n"
+msgid "TRAP: failed Assert(\"%s\"), File: \"%s\", Line: %d, PID: %d\n"
 msgstr "TRAP: %s(«%s», Archivo: «%s», Línea: %d, PID: %d)\n"
 
-#: utils/error/elog.c:404
+#: utils/error/elog.c:416
 #, c-format
 msgid "error occurred before error message processing is available\n"
 msgstr "ocurrió un error antes de que el procesamiento de errores esté disponible\n"
 
-#: utils/error/elog.c:1943
+#: utils/error/elog.c:2092
 #, 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:1956
+#: utils/error/elog.c:2105
 #, 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:2521 utils/error/elog.c:2548 utils/error/elog.c:2564
-msgid "[unknown]"
+#: utils/error/elog.c:2141
+#, c-format
+msgid "invalid character"
+msgstr "carácter no válido"
+
+#: utils/error/elog.c:2847 utils/error/elog.c:2874 utils/error/elog.c:2890
+msgid "[unknown]"
 msgstr "[desconocido]"
 
-#: utils/error/elog.c:2837 utils/error/elog.c:3158 utils/error/elog.c:3265
+#: utils/error/elog.c:3163 utils/error/elog.c:3484 utils/error/elog.c:3591
 msgid "missing error text"
 msgstr "falta un texto de mensaje de error"
 
-#: utils/error/elog.c:2840 utils/error/elog.c:2843
+#: utils/error/elog.c:3166 utils/error/elog.c:3169
 #, c-format
 msgid " at character %d"
 msgstr " en carácter %d"
 
-#: utils/error/elog.c:2853 utils/error/elog.c:2860
+#: utils/error/elog.c:3179 utils/error/elog.c:3186
 msgid "DETAIL:  "
 msgstr "DETALLE:  "
 
-#: utils/error/elog.c:2867
+#: utils/error/elog.c:3193
 msgid "HINT:  "
 msgstr "HINT:  "
 
-#: utils/error/elog.c:2874
+#: utils/error/elog.c:3200
 msgid "QUERY:  "
 msgstr "CONSULTA:  "
 
-#: utils/error/elog.c:2881
+#: utils/error/elog.c:3207
 msgid "CONTEXT:  "
 msgstr "CONTEXTO:  "
 
-#: utils/error/elog.c:2891
+#: utils/error/elog.c:3217
 #, c-format
 msgid "LOCATION:  %s, %s:%d\n"
 msgstr "UBICACIÓN:  %s, %s:%d\n"
 
-#: utils/error/elog.c:2898
+#: utils/error/elog.c:3224
 #, c-format
 msgid "LOCATION:  %s:%d\n"
 msgstr "UBICACIÓN:  %s:%d\n"
 
-#: utils/error/elog.c:2905
+#: utils/error/elog.c:3231
 msgid "BACKTRACE:  "
 msgstr "BACKTRACE:  "
 
-#: utils/error/elog.c:2917
+#: utils/error/elog.c:3243
 msgid "STATEMENT:  "
 msgstr "SENTENCIA:  "
 
-#: utils/error/elog.c:3310
+#: utils/error/elog.c:3636
 msgid "DEBUG"
 msgstr "DEBUG"
 
-#: utils/error/elog.c:3314
+#: utils/error/elog.c:3640
 msgid "LOG"
 msgstr "LOG"
 
-#: utils/error/elog.c:3317
+#: utils/error/elog.c:3643
 msgid "INFO"
 msgstr "INFO"
 
-#: utils/error/elog.c:3320
+#: utils/error/elog.c:3646
 msgid "NOTICE"
 msgstr "NOTICE"
 
-#: utils/error/elog.c:3324
+#: utils/error/elog.c:3650
 msgid "WARNING"
 msgstr "WARNING"
 
-#: utils/error/elog.c:3327
+#: utils/error/elog.c:3653
 msgid "ERROR"
 msgstr "ERROR"
 
-#: utils/error/elog.c:3330
+#: utils/error/elog.c:3656
 msgid "FATAL"
 msgstr "FATAL"
 
-#: utils/error/elog.c:3333
+#: utils/error/elog.c:3659
 msgid "PANIC"
 msgstr "PANIC"
 
@@ -26054,395 +26740,423 @@ msgstr "se encontró componente de largo cero en el parámetro «dynamic_library
 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:238
+#: utils/fmgr/fmgr.c:236
 #, 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:484
+#: utils/fmgr/fmgr.c:470
 #, 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:486
+#: utils/fmgr/fmgr.c:472
 #, 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:504
+#: utils/fmgr/fmgr.c:490
 #, 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:1985
+#: utils/fmgr/fmgr.c:2081
 #, c-format
 msgid "operator class options info is absent in function call context"
 msgstr "la información de opciones de la clase de operadores está ausente en el contexto de llamada a función"
 
-#: utils/fmgr/fmgr.c:2052
+#: utils/fmgr/fmgr.c:2148
 #, 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:455
+#: utils/fmgr/funcapi.c:489
 #, 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:600
+#: utils/fmgr/funcapi.c:634
 #, c-format
 msgid "argument declared %s does not contain a range type but type %s"
 msgstr "el argumento declarado %s no contiene un tipo de rango sino tipo %s"
 
-#: utils/fmgr/funcapi.c:683
+#: utils/fmgr/funcapi.c:717
 #, c-format
 msgid "could not find multirange type for data type %s"
 msgstr "no se pudo encontrar un tipo de multirango para el tipo de dato %s"
 
-#: utils/fmgr/funcapi.c:1900 utils/fmgr/funcapi.c:1932
+#: utils/fmgr/funcapi.c:1921 utils/fmgr/funcapi.c:1953
 #, 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:1926
+#: utils/fmgr/funcapi.c:1947
 #, c-format
 msgid "no column alias was provided"
 msgstr "no se entregó alias de columna"
 
-#: utils/fmgr/funcapi.c:1950
+#: utils/fmgr/funcapi.c:1971
 #, 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:329
+#: utils/init/miscinit.c:347
 #, c-format
 msgid "data directory \"%s\" does not exist"
 msgstr "no existe el directorio de datos «%s»"
 
-#: utils/init/miscinit.c:334
+#: utils/init/miscinit.c:352
 #, 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:342
+#: utils/init/miscinit.c:360
 #, 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:358
+#: utils/init/miscinit.c:376
 #, c-format
 msgid "data directory \"%s\" has wrong ownership"
 msgstr "el directorio de datos «%s» tiene dueño equivocado"
 
-#: utils/init/miscinit.c:360
+#: utils/init/miscinit.c:378
 #, 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:378
+#: utils/init/miscinit.c:396
 #, c-format
 msgid "data directory \"%s\" has invalid permissions"
 msgstr "el directorio de datos «%s» tiene permisos no válidos"
 
-#: utils/init/miscinit.c:380
+#: utils/init/miscinit.c:398
 #, 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:665 utils/misc/guc.c:7840
+#: utils/init/miscinit.c:456
+#, c-format
+msgid "could not change directory to \"%s\": %m"
+msgstr "no se pudo cambiar al directorio «%s»: %m"
+
+#: utils/init/miscinit.c:693 utils/misc/guc.c:3547
 #, 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:733
+#: utils/init/miscinit.c:765
 #, c-format
 msgid "role with OID %u does not exist"
 msgstr "no existe el rol con OID %u"
 
-#: utils/init/miscinit.c:763
+#: utils/init/miscinit.c:795
 #, c-format
 msgid "role \"%s\" is not permitted to log in"
 msgstr "al rol «%s» no se le permite conectarse"
 
-#: utils/init/miscinit.c:781
+#: utils/init/miscinit.c:813
 #, c-format
 msgid "too many connections for role \"%s\""
 msgstr "demasiadas conexiones para el rol «%s»"
 
-#: utils/init/miscinit.c:841
+#: utils/init/miscinit.c:912
 #, c-format
 msgid "permission denied to set session authorization"
 msgstr "se ha denegado el permiso para cambiar el usuario actual"
 
-#: utils/init/miscinit.c:924
+#: utils/init/miscinit.c:995
 #, c-format
 msgid "invalid role OID: %u"
 msgstr "el OID de rol no es válido: %u"
 
-#: utils/init/miscinit.c:978
+#: utils/init/miscinit.c:1142
 #, c-format
 msgid "database system is shut down"
 msgstr "el sistema de bases de datos está apagado"
 
-#: utils/init/miscinit.c:1065
+#: utils/init/miscinit.c:1229
 #, 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:1079
+#: utils/init/miscinit.c:1243
 #, 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:1086
+#: utils/init/miscinit.c:1250
 #, 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:1095
+#: utils/init/miscinit.c:1259
 #, c-format
 msgid "lock file \"%s\" is empty"
 msgstr "el archivo de bloqueo «%s» está vacío"
 
-#: utils/init/miscinit.c:1096
+#: utils/init/miscinit.c:1260
 #, 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:1140
+#: utils/init/miscinit.c:1304
 #, c-format
 msgid "lock file \"%s\" already exists"
 msgstr "el archivo de bloqueo «%s» ya existe"
 
-#: utils/init/miscinit.c:1144
+#: utils/init/miscinit.c:1308
 #, c-format
 msgid "Is another postgres (PID %d) running in data directory \"%s\"?"
 msgstr "¿Hay otro postgres (PID %d) en ejecución en el directorio de datos «%s»?"
 
-#: utils/init/miscinit.c:1146
+#: utils/init/miscinit.c:1310
 #, c-format
 msgid "Is another postmaster (PID %d) running in data directory \"%s\"?"
 msgstr "¿Hay otro postmaster (PID %d) en ejecución en el directorio de datos «%s»?"
 
-#: utils/init/miscinit.c:1149
+#: utils/init/miscinit.c:1313
 #, 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:1151
+#: utils/init/miscinit.c:1315
 #, 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:1202
+#: utils/init/miscinit.c:1366
 #, 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:1204
+#: utils/init/miscinit.c:1368
 #, 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:1241 utils/init/miscinit.c:1255
-#: utils/init/miscinit.c:1266
+#: utils/init/miscinit.c:1405 utils/init/miscinit.c:1419
+#: utils/init/miscinit.c:1430
 #, 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:1377 utils/init/miscinit.c:1519 utils/misc/guc.c:10837
+#: utils/init/miscinit.c:1541 utils/init/miscinit.c:1683 utils/misc/guc.c:5579
 #, c-format
 msgid "could not read from file \"%s\": %m"
 msgstr "no se pudo leer el archivo «%s»: %m"
 
-#: utils/init/miscinit.c:1507
+#: utils/init/miscinit.c:1671
 #, 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:1532
+#: utils/init/miscinit.c:1696
 #, 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:1571 utils/init/miscinit.c:1587
+#: utils/init/miscinit.c:1735 utils/init/miscinit.c:1751
 #, c-format
 msgid "\"%s\" is not a valid data directory"
 msgstr "«%s» no es un directorio de datos válido"
 
-#: utils/init/miscinit.c:1573
+#: utils/init/miscinit.c:1737
 #, c-format
 msgid "File \"%s\" is missing."
 msgstr "Falta el archivo «%s»."
 
-#: utils/init/miscinit.c:1589
+#: utils/init/miscinit.c:1753
 #, c-format
 msgid "File \"%s\" does not contain valid data."
 msgstr "El archivo «%s» no contiene datos válidos."
 
-#: utils/init/miscinit.c:1591
+#: utils/init/miscinit.c:1755
 #, c-format
 msgid "You might need to initdb."
 msgstr "Puede ser necesario ejecutar initdb."
 
-#: utils/init/miscinit.c:1599
+#: utils/init/miscinit.c:1763
 #, 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/postinit.c:258
+#: utils/init/postinit.c:259
 #, c-format
 msgid "replication connection authorized: user=%s"
 msgstr "conexión de replicación autorizada: usuario=%s"
 
-#: utils/init/postinit.c:261
+#: utils/init/postinit.c:262
 #, c-format
 msgid "connection authorized: user=%s"
 msgstr "conexión autorizada: usuario=%s"
 
-#: utils/init/postinit.c:264
+#: utils/init/postinit.c:265
 #, c-format
 msgid " database=%s"
 msgstr " base_de_datos=%s"
 
-#: utils/init/postinit.c:267
+#: utils/init/postinit.c:268
 #, c-format
 msgid " application_name=%s"
 msgstr " nombre_de_aplicación=%s"
 
-#: utils/init/postinit.c:272
+#: utils/init/postinit.c:273
 #, c-format
 msgid " SSL enabled (protocol=%s, cipher=%s, bits=%d)"
 msgstr " SSL habilitado (protocolo=%s, cifrado=%s, bits=%d)"
 
-#: utils/init/postinit.c:284
-#, c-format
-msgid " GSS (authenticated=%s, encrypted=%s, principal=%s)"
+#: utils/init/postinit.c:285
+#, fuzzy, c-format
+#| msgid " GSS (authenticated=%s, encrypted=%s, principal=%s)"
+msgid " GSS (authenticated=%s, encrypted=%s, deleg_credentials=%s, principal=%s)"
 msgstr " GSS (autenticado=%s, cifrado=%s, principal=%s)"
 
-#: utils/init/postinit.c:285 utils/init/postinit.c:286
-#: utils/init/postinit.c:291 utils/init/postinit.c:292
+#: utils/init/postinit.c:286 utils/init/postinit.c:287
+#: utils/init/postinit.c:288 utils/init/postinit.c:293
+#: utils/init/postinit.c:294 utils/init/postinit.c:295
 msgid "no"
 msgstr "no"
 
-#: utils/init/postinit.c:285 utils/init/postinit.c:286
-#: utils/init/postinit.c:291 utils/init/postinit.c:292
+#: utils/init/postinit.c:286 utils/init/postinit.c:287
+#: utils/init/postinit.c:288 utils/init/postinit.c:293
+#: utils/init/postinit.c:294 utils/init/postinit.c:295
 msgid "yes"
 msgstr "sí"
 
-#: utils/init/postinit.c:290
-#, c-format
-msgid " GSS (authenticated=%s, encrypted=%s)"
-msgstr " GSS (autenticado=%s, cifrado=%s)"
+#: utils/init/postinit.c:292
+#, fuzzy, c-format
+#| msgid " GSS (authenticated=%s, encrypted=%s, principal=%s)"
+msgid " GSS (authenticated=%s, encrypted=%s, deleg_credentials=%s)"
+msgstr " GSS (autenticado=%s, cifrado=%s, principal=%s)"
 
-#: utils/init/postinit.c:330
+#: utils/init/postinit.c:333
 #, c-format
 msgid "database \"%s\" has disappeared from pg_database"
 msgstr "la base de datos «%s» ha desaparecido de pg_database"
 
-#: utils/init/postinit.c:332
+#: utils/init/postinit.c:335
 #, c-format
 msgid "Database OID %u now seems to belong to \"%s\"."
 msgstr "Base de datos con OID %u ahora parece pertenecer a «%s»."
 
-#: utils/init/postinit.c:352
+#: utils/init/postinit.c:355
 #, c-format
 msgid "database \"%s\" is not currently accepting connections"
 msgstr "la base de datos «%s» no acepta conexiones"
 
-#: utils/init/postinit.c:365
+#: utils/init/postinit.c:368
 #, c-format
 msgid "permission denied for database \"%s\""
 msgstr "permiso denegado a la base de datos «%s»"
 
-#: utils/init/postinit.c:366
+#: utils/init/postinit.c:369
 #, c-format
 msgid "User does not have CONNECT privilege."
 msgstr "Usuario no tiene privilegios de conexión."
 
-#: utils/init/postinit.c:383
+#: utils/init/postinit.c:386
 #, c-format
 msgid "too many connections for database \"%s\""
 msgstr "demasiadas conexiones para la base de datos «%s»"
 
-#: utils/init/postinit.c:409 utils/init/postinit.c:416
+#: utils/init/postinit.c:410 utils/init/postinit.c:417
 #, c-format
 msgid "database locale is incompatible with operating system"
 msgstr "la configuración regional es incompatible con el sistema operativo"
 
-#: utils/init/postinit.c:410
+#: utils/init/postinit.c:411
 #, c-format
 msgid "The database was initialized with LC_COLLATE \"%s\",  which is not recognized by setlocale()."
 msgstr "La base de datos fue inicializada con LC_COLLATE «%s», el cual no es reconocido por setlocale()."
 
-#: utils/init/postinit.c:412 utils/init/postinit.c:419
+#: utils/init/postinit.c:413 utils/init/postinit.c:420
 #, c-format
 msgid "Recreate the database with another locale or install the missing locale."
 msgstr "Recree la base de datos con otra configuración regional, o instale la configuración regional faltante."
 
-#: utils/init/postinit.c:417
+#: utils/init/postinit.c:418
 #, c-format
 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:462
+#: utils/init/postinit.c:475
 #, fuzzy, c-format
 #| msgid "collation \"%s\" has version mismatch"
 msgid "database \"%s\" has a collation version mismatch"
 msgstr "el ordenamiento (collation) «%s» tiene una discordancia de versión"
 
-#: utils/init/postinit.c:464
+#: utils/init/postinit.c:477
 #, fuzzy, c-format
 #| msgid "The collation in the database was created using version %s, but the operating system provides version %s."
 msgid "The database was created using collation 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/init/postinit.c:467
+#: utils/init/postinit.c:480
 #, fuzzy, 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."
 msgid "Rebuild all objects in this database that use the default collation and run ALTER DATABASE %s REFRESH COLLATION 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/init/postinit.c:835
+#: utils/init/postinit.c:895
 #, 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:836
+#: utils/init/postinit.c:896
 #, c-format
 msgid "You should immediately run CREATE USER \"%s\" SUPERUSER;."
 msgstr "Debería ejecutar imediatamente CREATE USER \"%s\" SUPERUSER;."
 
-#: utils/init/postinit.c:868
+#: utils/init/postinit.c:932
 #, 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:881
-#, c-format
-msgid "remaining connection slots are reserved for non-replication superuser connections"
+#: utils/init/postinit.c:953
+#, fuzzy, c-format
+#| msgid "remaining connection slots are reserved for non-replication superuser connections"
+msgid "remaining connection slots are reserved for roles with %s"
 msgstr "las conexiones restantes están reservadas a superusuarios y no de replicación"
 
-#: utils/init/postinit.c:891
+#: utils/init/postinit.c:959
+#, fuzzy, c-format
+#| msgid "remaining connection slots are reserved for non-replication superuser connections"
+msgid "remaining connection slots are reserved for roles with privileges of the \"%s\" role"
+msgstr "las conexiones restantes están reservadas a superusuarios y no de replicación"
+
+#: utils/init/postinit.c:971
+#, fuzzy, c-format
+#| msgid "permission denied to rename role"
+msgid "permission denied to start WAL sender"
+msgstr "se ha denegado el permiso para cambiar el nombre al rol"
+
+#: utils/init/postinit.c:972
 #, 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"
+msgid "Only roles with the %s attribute may start a WAL sender process."
+msgstr ""
 
-#: utils/init/postinit.c:960
+#: utils/init/postinit.c:1042
 #, c-format
 msgid "database %u does not exist"
 msgstr "no existe la base de datos %u"
 
-#: utils/init/postinit.c:1049
+#: utils/init/postinit.c:1131
 #, c-format
 msgid "It seems to have just been dropped or renamed."
 msgstr "Parece haber sido eliminada o renombrada."
 
-#: utils/init/postinit.c:1067
+#: utils/init/postinit.c:1149
 #, c-format
 msgid "The database subdirectory \"%s\" is missing."
 msgstr "Falta el subdirectorio de base de datos «%s»."
 
+#: utils/init/usercontext.c:43
+#, fuzzy, c-format
+#| msgid "\"%s\" cannot be higher than \"%s\""
+msgid "role \"%s\" cannot SET ROLE to \"%s\""
+msgstr "«%s» no puede ser más alto que «%s»"
+
 #: utils/mb/conv.c:522 utils/mb/conv.c:733
 #, c-format
 msgid "invalid encoding number: %d"
@@ -26460,2508 +27174,2523 @@ 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/mbutils.c:297 utils/mb/mbutils.c:900
+#: utils/mb/mbutils.c:298 utils/mb/mbutils.c:901
 #, 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:385
+#: utils/mb/mbutils.c:386
 #, 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:402 utils/mb/mbutils.c:430 utils/mb/mbutils.c:815
-#: utils/mb/mbutils.c:842
+#: utils/mb/mbutils.c:403 utils/mb/mbutils.c:431 utils/mb/mbutils.c:816
+#: utils/mb/mbutils.c:843
 #, 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:568
+#: utils/mb/mbutils.c:569
 #, c-format
 msgid "invalid source encoding name \"%s\""
 msgstr "la codificación de origen «%s» no es válida"
 
-#: utils/mb/mbutils.c:573
+#: utils/mb/mbutils.c:574
 #, c-format
 msgid "invalid destination encoding name \"%s\""
 msgstr "la codificación de destino «%s» no es válida"
 
-#: utils/mb/mbutils.c:713
+#: utils/mb/mbutils.c:714
 #, 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:877
+#: utils/mb/mbutils.c:878
 #, c-format
 msgid "invalid Unicode code point"
 msgstr "punto de código Unicode no válido"
 
-#: utils/mb/mbutils.c:1146
+#: utils/mb/mbutils.c:1204
 #, c-format
 msgid "bind_textdomain_codeset failed"
 msgstr "bind_textdomain_codeset falló"
 
-#: utils/mb/mbutils.c:1667
+#: utils/mb/mbutils.c:1725
 #, c-format
 msgid "invalid byte sequence for encoding \"%s\": %s"
 msgstr "secuencia de bytes no válida para codificación «%s»: %s"
 
-#: utils/mb/mbutils.c:1700
+#: utils/mb/mbutils.c:1758
 #, 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:776
+#: utils/misc/conffiles.c:88
+#, c-format
+msgid "empty configuration directory name: \"%s\""
+msgstr "nombre de directorio de configuración vacío: «%s»"
+
+#: utils/misc/conffiles.c:100
+#, c-format
+msgid "could not open configuration directory \"%s\": %m"
+msgstr "no se pudo abrir el directorio de configuración «%s»: %m"
+
+#: utils/misc/guc.c:115
+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:152
+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:420
+#, c-format
+msgid "unrecognized configuration parameter \"%s\" in file \"%s\" line %d"
+msgstr "parámetro de configuración «%s» no reconocido en el archivo «%s» línea %d"
+
+#: utils/misc/guc.c:460 utils/misc/guc.c:3405 utils/misc/guc.c:3645
+#: utils/misc/guc.c:3743 utils/misc/guc.c:3841 utils/misc/guc.c:3965
+#: utils/misc/guc.c:4068
+#, 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:496
+#, 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"
+
+#: utils/misc/guc.c:561
+#, c-format
+msgid "parameter \"%s\" changed to \"%s\""
+msgstr "el parámetro «%s» fue cambiado a «%s»"
+
+#: utils/misc/guc.c:603
+#, c-format
+msgid "configuration file \"%s\" contains errors"
+msgstr "el archivo de configuración «%s» contiene errores"
+
+#: utils/misc/guc.c:608
+#, 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"
+
+#: utils/misc/guc.c:613
+#, 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"
+
+#: utils/misc/guc.c:1210 utils/misc/guc.c:1226
+#, c-format
+msgid "invalid configuration parameter name \"%s\""
+msgstr "nombre de parámetro de configuración «%s» no válido"
+
+#: utils/misc/guc.c:1212
+#, c-format
+msgid "Custom parameter names must be two or more simple identifiers separated by dots."
+msgstr "Los nombres de los parámetros personalizados deben ser dos o más identificadores sencillos separados por puntos."
+
+#: utils/misc/guc.c:1228
+#, fuzzy, c-format
+#| msgid "\"%s\" is a procedure."
+msgid "\"%s\" is a reserved prefix."
+msgstr "«%s» es un índice parcial."
+
+#: utils/misc/guc.c:1242
+#, c-format
+msgid "unrecognized configuration parameter \"%s\""
+msgstr "parámetro de configuración «%s» no reconocido"
+
+#: utils/misc/guc.c:1764
+#, 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:1769
+#, 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:1793
+#, c-format
+msgid ""
+"%s does not know where to find the server configuration file.\n"
+"You must specify the --config-file or -D invocation option or set the PGDATA environment variable.\n"
+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:1816
+#, 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:1844
+#, c-format
+msgid ""
+"%s does not know where to find the database system data.\n"
+"This can be specified as \"data_directory\" in \"%s\", or by the -D invocation option, or by the PGDATA environment variable.\n"
+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:1896
+#, c-format
+msgid ""
+"%s does not know where to find the \"hba\" configuration file.\n"
+"This can be specified as \"hba_file\" in \"%s\", or by the -D invocation option, or by the PGDATA environment variable.\n"
+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:1927
+#, c-format
+msgid ""
+"%s does not know where to find the \"ident\" configuration file.\n"
+"This can be specified as \"ident_file\" in \"%s\", or by the -D invocation option, or by the PGDATA environment variable.\n"
+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:2893
+msgid "Value exceeds integer range."
+msgstr "El valor excede el rango para enteros."
+
+#: utils/misc/guc.c:3129
+#, 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:3165
+#, 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:3365 utils/misc/guc_funcs.c:54
+#, 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:3382 utils/misc/guc.c:4529
+#, c-format
+msgid "parameter \"%s\" cannot be changed"
+msgstr "no se puede cambiar el parámetro «%s»"
+
+#: utils/misc/guc.c:3415
+#, 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:3442 utils/misc/guc.c:3500 utils/misc/guc.c:4505
+#: utils/misc/guc.c:6670
+#, 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:3480
+#, 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:3539
+#, 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:3560
+#, fuzzy, c-format
+#| msgid "parameter \"%s\" could not be set"
+msgid "parameter \"%s\" cannot be reset"
+msgstr "no se pudo cambiar el parámetro «%s»"
+
+#: utils/misc/guc.c:3567
+#, fuzzy, c-format
+#| msgid "parameter \"%s\" cannot be set after connection start"
+msgid "parameter \"%s\" cannot be set locally in functions"
+msgstr "el parámetro «%s» no se puede cambiar después de efectuar la conexión"
+
+#: utils/misc/guc.c:4211 utils/misc/guc.c:4258 utils/misc/guc.c:5265
+#, fuzzy, c-format
+#| msgid "permission denied to create \"%s.%s\""
+msgid "permission denied to examine \"%s\""
+msgstr "se ha denegado el permiso para crear «%s.%s»"
+
+#: utils/misc/guc.c:4212 utils/misc/guc.c:4259 utils/misc/guc.c:5266
+#, c-format
+msgid "Only roles with privileges of the \"%s\" role may examine this parameter."
+msgstr ""
+
+#: utils/misc/guc.c:4495
+#, fuzzy, c-format
+#| msgid "permission denied for operator %s"
+msgid "permission denied to perform ALTER SYSTEM RESET ALL"
+msgstr "permiso denegado al operador %s"
+
+#: utils/misc/guc.c:4561
+#, 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:4607
+#, c-format
+msgid "could not parse contents of file \"%s\""
+msgstr "no se pudo interpretar el contenido del archivo «%s»"
+
+#: utils/misc/guc.c:4789
+#, c-format
+msgid "attempt to redefine parameter \"%s\""
+msgstr "intento de cambiar la opción «%s»"
+
+#: utils/misc/guc.c:5128
+#, fuzzy, c-format
+#| msgid "invalid configuration parameter name \"%s\""
+msgid "invalid configuration parameter name \"%s\", removing it"
+msgstr "nombre de parámetro de configuración «%s» no válido"
+
+#: utils/misc/guc.c:5130
+#, fuzzy, c-format
+#| msgid "\"%s\" is not a sequence"
+msgid "\"%s\" is now a reserved prefix."
+msgstr "«%s» no es una secuencia"
+
+#: utils/misc/guc.c:5999
+#, c-format
+msgid "while setting parameter \"%s\" to \"%s\""
+msgstr "al establecer el parámetro «%s» a «%s»"
+
+#: utils/misc/guc.c:6168
+#, c-format
+msgid "parameter \"%s\" could not be set"
+msgstr "no se pudo cambiar el parámetro «%s»"
+
+#: utils/misc/guc.c:6258
+#, 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:6802
+#, c-format
+msgid "invalid value for parameter \"%s\": %g"
+msgstr "valor no válido para el parámetro «%s»: %g"
+
+#: utils/misc/guc_funcs.c:130
+#, c-format
+msgid "SET LOCAL TRANSACTION SNAPSHOT is not implemented"
+msgstr "SET LOCAL TRANSACTION SNAPSHOT no está implementado"
+
+#: utils/misc/guc_funcs.c:228
+#, c-format
+msgid "SET %s takes only one argument"
+msgstr "SET %s lleva sólo un argumento"
+
+#: utils/misc/guc_funcs.c:352
+#, c-format
+msgid "SET requires parameter name"
+msgstr "SET requiere el nombre de un parámetro"
+
+#: utils/misc/guc_tables.c:667
 msgid "Ungrouped"
 msgstr "Sin Grupo"
 
-#: utils/misc/guc.c:778
+#: utils/misc/guc_tables.c:669
 msgid "File Locations"
 msgstr "Ubicaciones de Archivos"
 
-#: utils/misc/guc.c:780
+#: utils/misc/guc_tables.c:671
 msgid "Connections and Authentication / Connection Settings"
 msgstr "Conexiones y Autentificación / Parámetros de Conexión"
 
-#: utils/misc/guc.c:782
+#: utils/misc/guc_tables.c:673
+#, fuzzy
+#| msgid "Connections and Authentication / Connection Settings"
+msgid "Connections and Authentication / TCP Settings"
+msgstr "Conexiones y Autentificación / Parámetros de Conexión"
+
+#: utils/misc/guc_tables.c:675
 msgid "Connections and Authentication / Authentication"
 msgstr "Conexiones y Autentificación / Autentificación"
 
-#: utils/misc/guc.c:784
+#: utils/misc/guc_tables.c:677
 msgid "Connections and Authentication / SSL"
 msgstr "Conexiones y Autentificación / SSL"
 
-#: utils/misc/guc.c:786
+#: utils/misc/guc_tables.c:679
 msgid "Resource Usage / Memory"
 msgstr "Uso de Recursos / Memoria"
 
-#: utils/misc/guc.c:788
+#: utils/misc/guc_tables.c:681
 msgid "Resource Usage / Disk"
 msgstr "Uso de Recursos / Disco"
 
-#: utils/misc/guc.c:790
+#: utils/misc/guc_tables.c:683
 msgid "Resource Usage / Kernel Resources"
 msgstr "Uso de Recursos / Recursos del Kernel"
 
-#: utils/misc/guc.c:792
+#: utils/misc/guc_tables.c:685
 msgid "Resource Usage / Cost-Based Vacuum Delay"
 msgstr "Uso de Recursos / Retardo de Vacuum por Costos"
 
-#: utils/misc/guc.c:794
+#: utils/misc/guc_tables.c:687
 msgid "Resource Usage / Background Writer"
 msgstr "Uso de Recursos / Escritor en Segundo Plano"
 
-#: utils/misc/guc.c:796
+#: utils/misc/guc_tables.c:689
 msgid "Resource Usage / Asynchronous Behavior"
 msgstr "Uso de Recursos / Comportamiento Asíncrono"
 
-#: utils/misc/guc.c:798
+#: utils/misc/guc_tables.c:691
 msgid "Write-Ahead Log / Settings"
 msgstr "Write-Ahead Log / Configuraciones"
 
-#: utils/misc/guc.c:800
+#: utils/misc/guc_tables.c:693
 msgid "Write-Ahead Log / Checkpoints"
 msgstr "Write-Ahead Log / Puntos de Control (Checkpoints)"
 
-#: utils/misc/guc.c:802
+#: utils/misc/guc_tables.c:695
 msgid "Write-Ahead Log / Archiving"
 msgstr "Write-Ahead Log / Archivado"
 
-#: utils/misc/guc.c:804
+#: utils/misc/guc_tables.c:697
 #, fuzzy
 #| msgid "Write-Ahead Log / Recovery Target"
 msgid "Write-Ahead Log / Recovery"
 msgstr "Write-Ahead Log / Destino de Recuperación"
 
-#: utils/misc/guc.c:806
+#: utils/misc/guc_tables.c:699
 msgid "Write-Ahead Log / Archive Recovery"
 msgstr "Write-Ahead Log / Recuperación desde Archivo"
 
-#: utils/misc/guc.c:808
+#: utils/misc/guc_tables.c:701
 msgid "Write-Ahead Log / Recovery Target"
 msgstr "Write-Ahead Log / Destino de Recuperación"
 
-#: utils/misc/guc.c:810
+#: utils/misc/guc_tables.c:703
 msgid "Replication / Sending Servers"
 msgstr "Replicación / Servidores de Envío"
 
-#: utils/misc/guc.c:812
+#: utils/misc/guc_tables.c:705
 msgid "Replication / Primary Server"
 msgstr "Replicación / Servidor Primario"
 
-#: utils/misc/guc.c:814
+#: utils/misc/guc_tables.c:707
 msgid "Replication / Standby Servers"
 msgstr "Replicación / Servidores Standby"
 
-#: utils/misc/guc.c:816
+#: utils/misc/guc_tables.c:709
 msgid "Replication / Subscribers"
 msgstr "Replicación / Suscriptores"
 
-#: utils/misc/guc.c:818
+#: utils/misc/guc_tables.c:711
 msgid "Query Tuning / Planner Method Configuration"
 msgstr "Afinamiento de Consultas / Configuración de Métodos del Planner"
 
-#: utils/misc/guc.c:820
+#: utils/misc/guc_tables.c:713
 msgid "Query Tuning / Planner Cost Constants"
 msgstr "Afinamiento de Consultas / Constantes de Costo del Planner"
 
-#: utils/misc/guc.c:822
+#: utils/misc/guc_tables.c:715
 msgid "Query Tuning / Genetic Query Optimizer"
 msgstr "Afinamiento de Consultas / Optimizador Genético de Consultas"
 
-#: utils/misc/guc.c:824
+#: utils/misc/guc_tables.c:717
 msgid "Query Tuning / Other Planner Options"
 msgstr "Afinamiento de Consultas / Otras Opciones del Planner"
 
-#: utils/misc/guc.c:826
+#: utils/misc/guc_tables.c:719
 msgid "Reporting and Logging / Where to Log"
 msgstr "Reporte y Registro / Dónde Registrar"
 
-#: utils/misc/guc.c:828
+#: utils/misc/guc_tables.c:721
 msgid "Reporting and Logging / When to Log"
 msgstr "Reporte y Registro / Cuándo Registrar"
 
-#: utils/misc/guc.c:830
+#: utils/misc/guc_tables.c:723
 msgid "Reporting and Logging / What to Log"
 msgstr "Reporte y Registro / Qué Registrar"
 
-#: utils/misc/guc.c:832
+#: utils/misc/guc_tables.c:725
 msgid "Reporting and Logging / Process Title"
 msgstr "Reporte y Registro / Título del Proceso"
 
-#: utils/misc/guc.c:834
+#: utils/misc/guc_tables.c:727
 msgid "Statistics / Monitoring"
 msgstr "Estadísticas / Monitoreo"
 
-#: utils/misc/guc.c:836
-#, fuzzy
-#| msgid "Statistics / Query and Index Statistics Collector"
+#: utils/misc/guc_tables.c:729
 msgid "Statistics / Cumulative Query and Index Statistics"
-msgstr "Estadísticas / Recolector de Estadísticas de Consultas e Índices"
+msgstr ""
 
-#: utils/misc/guc.c:838
+#: utils/misc/guc_tables.c:731
 msgid "Autovacuum"
 msgstr "Autovacuum"
 
-#: utils/misc/guc.c:840
+#: utils/misc/guc_tables.c:733
 msgid "Client Connection Defaults / Statement Behavior"
 msgstr "Valores por Omisión de Conexiones / Comportamiento de Sentencias"
 
-#: utils/misc/guc.c:842
+#: utils/misc/guc_tables.c:735
 msgid "Client Connection Defaults / Locale and Formatting"
 msgstr "Valores por Omisión de Conexiones / Configuraciones Regionales y Formateo"
 
-#: utils/misc/guc.c:844
+#: utils/misc/guc_tables.c:737
 msgid "Client Connection Defaults / Shared Library Preloading"
 msgstr "Valores por Omisión de Conexiones / Precargado de Bibliotecas Compartidas"
 
-#: utils/misc/guc.c:846
+#: utils/misc/guc_tables.c:739
 msgid "Client Connection Defaults / Other Defaults"
 msgstr "Valores por Omisión de Conexiones / Otros Valores"
 
-#: utils/misc/guc.c:848
+#: utils/misc/guc_tables.c:741
 msgid "Lock Management"
 msgstr "Manejo de Bloqueos"
 
-#: utils/misc/guc.c:850
+#: utils/misc/guc_tables.c:743
 msgid "Version and Platform Compatibility / Previous PostgreSQL Versions"
 msgstr "Compatibilidad de Versión y Plataforma / Versiones Anteriores de PostgreSQL"
 
-#: utils/misc/guc.c:852
+#: utils/misc/guc_tables.c:745
 msgid "Version and Platform Compatibility / Other Platforms and Clients"
 msgstr "Compatibilidad de Versión y Plataforma / Otras Plataformas y Clientes"
 
-#: utils/misc/guc.c:854
+#: utils/misc/guc_tables.c:747
 msgid "Error Handling"
 msgstr "Gestión de Errores"
 
-#: utils/misc/guc.c:856
+#: utils/misc/guc_tables.c:749
 msgid "Preset Options"
 msgstr "Opciones Predefinidas"
 
-#: utils/misc/guc.c:858
+#: utils/misc/guc_tables.c:751
 msgid "Customized Options"
 msgstr "Opciones Personalizadas"
 
-#: utils/misc/guc.c:860
+#: utils/misc/guc_tables.c:753
 msgid "Developer Options"
 msgstr "Opciones de Desarrollador"
 
-#: utils/misc/guc.c:918
-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:955
-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:1017
+#: utils/misc/guc_tables.c:810
 msgid "Enables the planner's use of sequential-scan plans."
 msgstr "Permitir el uso de planes de recorrido secuencial."
 
-#: utils/misc/guc.c:1027
+#: utils/misc/guc_tables.c:820
 msgid "Enables the planner's use of index-scan plans."
 msgstr "Permitir el uso de planes de recorrido de índice."
 
-#: utils/misc/guc.c:1037
+#: utils/misc/guc_tables.c:830
 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:1047
+#: utils/misc/guc_tables.c:840
 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:1057
+#: utils/misc/guc_tables.c:850
 msgid "Enables the planner's use of TID scan plans."
 msgstr "Permitir el uso de planes de recorrido por TID."
 
-#: utils/misc/guc.c:1067
+#: utils/misc/guc_tables.c:860
 msgid "Enables the planner's use of explicit sort steps."
 msgstr "Permitir el uso de pasos explícitos de ordenamiento."
 
-#: utils/misc/guc.c:1077
+#: utils/misc/guc_tables.c:870
 msgid "Enables the planner's use of incremental sort steps."
 msgstr "Permitir el uso de pasos incrementales de ordenamiento."
 
-#: utils/misc/guc.c:1087
+#: utils/misc/guc_tables.c:880
 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:1097
+#: utils/misc/guc_tables.c:890
 msgid "Enables the planner's use of materialization."
 msgstr "Permitir el uso de materialización de planes."
 
-#: utils/misc/guc.c:1107
+#: utils/misc/guc_tables.c:900
 msgid "Enables the planner's use of memoization."
 msgstr "Permitir el uso de memoización de planes."
 
-#: utils/misc/guc.c:1117
+#: utils/misc/guc_tables.c:910
 msgid "Enables the planner's use of nested-loop join plans."
 msgstr "Permitir el uso de planes «nested-loop join»."
 
-#: utils/misc/guc.c:1127
+#: utils/misc/guc_tables.c:920
 msgid "Enables the planner's use of merge join plans."
 msgstr "Permitir el uso de planes «merge join»."
 
-#: utils/misc/guc.c:1137
+#: utils/misc/guc_tables.c:930
 msgid "Enables the planner's use of hash join plans."
 msgstr "Permitir el uso de planes «hash join»."
 
-#: utils/misc/guc.c:1147
+#: utils/misc/guc_tables.c:940
 msgid "Enables the planner's use of gather merge plans."
 msgstr "Permitir el uso de planes «gather merge»."
 
-#: utils/misc/guc.c:1157
+#: utils/misc/guc_tables.c:950
 msgid "Enables partitionwise join."
 msgstr "Permitir el uso de joins por particiones."
 
-#: utils/misc/guc.c:1167
+#: utils/misc/guc_tables.c:960
 msgid "Enables partitionwise aggregation and grouping."
 msgstr "Permitir el uso de agregación y agrupamiento por particiones."
 
-#: utils/misc/guc.c:1177
+#: utils/misc/guc_tables.c:970
 msgid "Enables the planner's use of parallel append plans."
 msgstr "Permitir el uso de planes «append» paralelos."
 
-#: utils/misc/guc.c:1187
+#: utils/misc/guc_tables.c:980
 msgid "Enables the planner's use of parallel hash plans."
 msgstr "Permitir el uso de planes «hash join» paralelos."
 
-#: utils/misc/guc.c:1197
+#: utils/misc/guc_tables.c:990
 msgid "Enables plan-time and execution-time partition pruning."
 msgstr "Permitir el uso de poda de particiones en tiempo de plan y ejecución."
 
-#: utils/misc/guc.c:1198
+#: utils/misc/guc_tables.c:991
 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:1209
+#: utils/misc/guc_tables.c:1002
+msgid "Enables the planner's ability to produce plans which provide presorted input for ORDER BY / DISTINCT aggregate functions."
+msgstr ""
+
+#: utils/misc/guc_tables.c:1005
+msgid "Allows the query planner to build plans which provide presorted input for aggregate functions with an ORDER BY / DISTINCT clause.  When disabled, implicit sorts are always performed during execution."
+msgstr ""
+
+#: utils/misc/guc_tables.c:1017
 msgid "Enables the planner's use of async append plans."
 msgstr "Permitir el uso de planes «append» asíncronos."
 
-#: utils/misc/guc.c:1219
-#, fuzzy
-#| msgid "enable reordering of GROUP BY key"
-msgid "Enables reordering of GROUP BY keys."
-msgstr "activar el reordenamiento de llaves GROUP BY"
-
-#: utils/misc/guc.c:1229
+#: utils/misc/guc_tables.c:1027
 msgid "Enables genetic query optimization."
 msgstr "Permitir el uso del optimizador genético de consultas."
 
-#: utils/misc/guc.c:1230
+#: utils/misc/guc_tables.c:1028
 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:1241
+#: utils/misc/guc_tables.c:1039
 msgid "Shows whether the current user is a superuser."
 msgstr "Indica si el usuario actual es superusuario."
 
-#: utils/misc/guc.c:1251
+#: utils/misc/guc_tables.c:1049
 msgid "Enables advertising the server via Bonjour."
 msgstr "Permitir la publicación del servidor vía Bonjour."
 
-#: utils/misc/guc.c:1260
+#: utils/misc/guc_tables.c:1058
 msgid "Collects transaction commit time."
 msgstr "Recolectar tiempo de compromiso de transacciones."
 
-#: utils/misc/guc.c:1269
+#: utils/misc/guc_tables.c:1067
 msgid "Enables SSL connections."
 msgstr "Permitir conexiones SSL."
 
-#: utils/misc/guc.c:1278
-#, fuzzy
-#| msgid "Also use ssl_passphrase_command during server reload."
+#: utils/misc/guc_tables.c:1076
 msgid "Controls whether ssl_passphrase_command is called during server reload."
-msgstr "También usar ssl_passphrase_command durante la recarga del servidor."
+msgstr ""
 
-#: utils/misc/guc.c:1287
+#: utils/misc/guc_tables.c:1085
 msgid "Give priority to server ciphersuite order."
 msgstr "Da prioridad al orden de algoritmos de cifrado especificado por el servidor."
 
-#: utils/misc/guc.c:1296
+#: utils/misc/guc_tables.c:1094
 msgid "Forces synchronization of updates to disk."
 msgstr "Forzar la sincronización de escrituras a disco."
 
-#: utils/misc/guc.c:1297
+#: utils/misc/guc_tables.c:1095
 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:1308
+#: utils/misc/guc_tables.c:1106
 msgid "Continues processing after a checksum failure."
 msgstr "Continuar procesando después de una falla de suma de verificación."
 
-#: utils/misc/guc.c:1309
+#: utils/misc/guc_tables.c:1107
 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:1323
+#: utils/misc/guc_tables.c:1121
 msgid "Continues processing past damaged page headers."
 msgstr "Continuar procesando después de detectar encabezados de página dañados."
 
-#: utils/misc/guc.c:1324
+#: utils/misc/guc_tables.c:1122
 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:1337
+#: utils/misc/guc_tables.c:1135
 msgid "Continues recovery after an invalid pages failure."
 msgstr "Continuar procesando después de una falla de páginas no válidas."
 
-#: utils/misc/guc.c:1338
+#: utils/misc/guc_tables.c:1136
 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 que registros de WAL tengan referencias a páginas no válidas durante la recuperación hace que PostgreSQL produzca un error de nivel PANIC, abortando la recuperación. Establecer el valor de ignore_invalid_pages a true hace que el sistema ignore las referencias a páginas no válidas en registros de WAL (pero aún así reporta un mensaje de warning), y continúe la recuperación. Este comportamiento podría causar caídas del sistema, pérdida de datos, propagar u ocultar corrupción, u otros problemas serios. Sólo tiene efecto durante la recuperación o en modo standby."
 
-#: utils/misc/guc.c:1356
+#: utils/misc/guc_tables.c:1154
 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:1357
+#: utils/misc/guc_tables.c:1155
 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:1370
+#: utils/misc/guc_tables.c:1168
 msgid "Writes full pages to WAL when first modified after a checkpoint, even for a non-critical modification."
 msgstr "Escribir páginas completas al WAL cuando son modificadas después de un punto de control, incluso para una modificación no crítica."
 
-#: utils/misc/guc.c:1380
+#: utils/misc/guc_tables.c:1178
 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:1390
+#: utils/misc/guc_tables.c:1188
 msgid "Recycles WAL files by renaming them."
 msgstr "Reciclar archivos de WAL cambiándoles de nombre."
 
-#: utils/misc/guc.c:1400
+#: utils/misc/guc_tables.c:1198
 msgid "Logs each checkpoint."
 msgstr "Registrar cada punto de control."
 
-#: utils/misc/guc.c:1409
+#: utils/misc/guc_tables.c:1207
 msgid "Logs each successful connection."
 msgstr "Registrar cada conexión exitosa."
 
-#: utils/misc/guc.c:1418
+#: utils/misc/guc_tables.c:1216
 msgid "Logs end of a session, including duration."
 msgstr "Registrar el fin de una sesión, incluyendo su duración."
 
-#: utils/misc/guc.c:1427
+#: utils/misc/guc_tables.c:1225
 msgid "Logs each replication command."
 msgstr "Registrar cada orden de replicación."
 
-#: utils/misc/guc.c:1436
+#: utils/misc/guc_tables.c:1234
 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:1451
+#: utils/misc/guc_tables.c:1245
 msgid "Terminate session on any error."
 msgstr "Terminar sesión ante cualquier error."
 
-#: utils/misc/guc.c:1460
+#: utils/misc/guc_tables.c:1254
 msgid "Reinitialize server after backend crash."
 msgstr "Reinicializar el servidor después de una caída de un proceso servidor."
 
-#: utils/misc/guc.c:1469
+#: utils/misc/guc_tables.c:1263
 msgid "Remove temporary files after backend crash."
 msgstr "Eliminar archivos temporales después de una caída de un proceso servidor."
 
-#: utils/misc/guc.c:1480
-msgid "Logs the duration of each completed SQL statement."
+#: utils/misc/guc_tables.c:1273
+msgid "Send SIGABRT not SIGQUIT to child processes after backend crash."
+msgstr ""
+
+#: utils/misc/guc_tables.c:1283
+msgid "Send SIGABRT not SIGKILL to stuck child processes."
+msgstr ""
+
+#: utils/misc/guc_tables.c:1294
+msgid "Logs the duration of each completed SQL statement."
 msgstr "Registrar la duración de cada sentencia SQL ejecutada."
 
-#: utils/misc/guc.c:1489
+#: utils/misc/guc_tables.c:1303
 msgid "Logs each query's parse tree."
 msgstr "Registrar cada arbol analizado de consulta "
 
-#: utils/misc/guc.c:1498
+#: utils/misc/guc_tables.c:1312
 msgid "Logs each query's rewritten parse tree."
 msgstr "Registrar cada reescritura del arból analizado de consulta"
 
-#: utils/misc/guc.c:1507
+#: utils/misc/guc_tables.c:1321
 msgid "Logs each query's execution plan."
 msgstr "Registrar el plan de ejecución de cada consulta."
 
-#: utils/misc/guc.c:1516
+#: utils/misc/guc_tables.c:1330
 msgid "Indents parse and plan tree displays."
 msgstr "Indentar los árboles de parse y plan."
 
-#: utils/misc/guc.c:1525
+#: utils/misc/guc_tables.c:1339
 msgid "Writes parser performance statistics to the server log."
 msgstr "Escribir estadísticas de parser al registro del servidor."
 
-#: utils/misc/guc.c:1534
+#: utils/misc/guc_tables.c:1348
 msgid "Writes planner performance statistics to the server log."
 msgstr "Escribir estadísticas de planner al registro del servidor."
 
-#: utils/misc/guc.c:1543
+#: utils/misc/guc_tables.c:1357
 msgid "Writes executor performance statistics to the server log."
 msgstr "Escribir estadísticas del executor al registro del servidor."
 
-#: utils/misc/guc.c:1552
+#: utils/misc/guc_tables.c:1366
 msgid "Writes cumulative performance statistics to the server log."
 msgstr "Escribir estadísticas acumulativas al registro del servidor."
 
-#: utils/misc/guc.c:1562
+#: utils/misc/guc_tables.c:1376
 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:1574
+#: utils/misc/guc_tables.c:1388
 msgid "Collects information about executing commands."
 msgstr "Recolectar estadísticas sobre órdenes en ejecución."
 
-#: utils/misc/guc.c:1575
+#: utils/misc/guc_tables.c:1389
 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:1585
+#: utils/misc/guc_tables.c:1399
 msgid "Collects statistics on database activity."
 msgstr "Recolectar estadísticas de actividad de la base de datos."
 
-#: utils/misc/guc.c:1594
+#: utils/misc/guc_tables.c:1408
 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:1603
+#: utils/misc/guc_tables.c:1417
 msgid "Collects timing statistics for WAL I/O activity."
 msgstr "Recolectar estadísticas de tiempos en las operaciones de I/O del WAL."
 
-#: utils/misc/guc.c:1613
+#: utils/misc/guc_tables.c:1427
 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:1614
+#: utils/misc/guc_tables.c:1428
 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:1627
+#: utils/misc/guc_tables.c:1437
 msgid "Starts the autovacuum subprocess."
 msgstr "Iniciar el subproceso de autovacuum."
 
-#: utils/misc/guc.c:1637
+#: utils/misc/guc_tables.c:1447
 msgid "Generates debugging output for LISTEN and NOTIFY."
 msgstr "Generar salida de depuración para LISTEN y NOTIFY."
 
-#: utils/misc/guc.c:1649
+#: utils/misc/guc_tables.c:1459
 msgid "Emits information about lock usage."
 msgstr "Emitir información acerca del uso de locks."
 
-#: utils/misc/guc.c:1659
+#: utils/misc/guc_tables.c:1469
 msgid "Emits information about user lock usage."
 msgstr "Emitir información acerca del uso de locks de usuario."
 
-#: utils/misc/guc.c:1669
+#: utils/misc/guc_tables.c:1479
 msgid "Emits information about lightweight lock usage."
 msgstr "Emitir información acerca del uso de «lightweight locks»."
 
-#: utils/misc/guc.c:1679
+#: utils/misc/guc_tables.c:1489
 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:1691
+#: utils/misc/guc_tables.c:1501
 msgid "Logs long lock waits."
 msgstr "Registrar esperas largas de bloqueos."
 
-#: utils/misc/guc.c:1700
+#: utils/misc/guc_tables.c:1510
 msgid "Logs standby recovery conflict waits."
 msgstr "Registrar esperas por conflictos en recuperación de standby"
 
-#: utils/misc/guc.c:1709
+#: utils/misc/guc_tables.c:1519
 msgid "Logs the host name in the connection logs."
 msgstr "Registrar el nombre del host en la conexión."
 
-#: utils/misc/guc.c:1710
+#: utils/misc/guc_tables.c:1520
 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:1721
+#: utils/misc/guc_tables.c:1531
 msgid "Treats \"expr=NULL\" as \"expr IS NULL\"."
 msgstr "Tratar expr=NULL como expr IS NULL."
 
-#: utils/misc/guc.c:1722
+#: utils/misc/guc_tables.c:1532
 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:1734
+#: utils/misc/guc_tables.c:1544
 msgid "Enables per-database user names."
 msgstr "Activar el uso de nombre de usuario locales a cada base de datos."
 
-#: utils/misc/guc.c:1743
+#: utils/misc/guc_tables.c:1553
 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:1753
+#: utils/misc/guc_tables.c:1563
 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:1763
+#: utils/misc/guc_tables.c:1573
 msgid "Sets the default deferrable status of new transactions."
 msgstr "Estado por omisión de postergable de nuevas transacciones."
 
-#: utils/misc/guc.c:1772
+#: utils/misc/guc_tables.c:1582
 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:1782
+#: utils/misc/guc_tables.c:1592
 msgid "Enable row security."
 msgstr "Activar seguridad de registros."
 
-#: utils/misc/guc.c:1783
+#: utils/misc/guc_tables.c:1593
 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:1791
+#: utils/misc/guc_tables.c:1601
 msgid "Check routine bodies during CREATE FUNCTION and CREATE PROCEDURE."
 msgstr "Verificar definición de rutinas durante CREATE FUNCTION y CREATE PROCEDURE."
 
-#: utils/misc/guc.c:1800
+#: utils/misc/guc_tables.c:1610
 msgid "Enable input of NULL elements in arrays."
 msgstr "Habilita el ingreso de elementos nulos en arrays."
 
-#: utils/misc/guc.c:1801
+#: utils/misc/guc_tables.c:1611
 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:1817
+#: utils/misc/guc_tables.c:1627
 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:1827
+#: utils/misc/guc_tables.c:1637
 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:1836
+#: utils/misc/guc_tables.c:1646
 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:1847
+#: utils/misc/guc_tables.c:1657
 msgid "Emit information about resource usage in sorting."
 msgstr "Emitir información acerca de uso de recursos durante los ordenamientos."
 
-#: utils/misc/guc.c:1861
+#: utils/misc/guc_tables.c:1671
 msgid "Generate debugging output for synchronized scanning."
 msgstr "Generar salida de depuración para recorrido sincronizado."
 
-#: utils/misc/guc.c:1876
+#: utils/misc/guc_tables.c:1686
 msgid "Enable bounded sorting using heap sort."
 msgstr "Activar ordenamiento acotado usando «heap sort»."
 
-#: utils/misc/guc.c:1889
+#: utils/misc/guc_tables.c:1699
 msgid "Emit WAL-related debugging output."
 msgstr "Activar salida de depuración de WAL."
 
-#: utils/misc/guc.c:1901
+#: utils/misc/guc_tables.c:1711
 msgid "Shows whether datetimes are integer based."
 msgstr "Mostrar si las fechas y horas se basan en tipos enteros."
 
-#: utils/misc/guc.c:1912
+#: utils/misc/guc_tables.c:1722
 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:1922
+#: utils/misc/guc_tables.c:1732
+#, fuzzy
+#| msgid "Sets whether Kerberos and GSSAPI user names should be treated as case-insensitive."
+msgid "Sets whether GSSAPI delegation should be accepted from the client."
+msgstr "Define que los nombres de usuario Kerberos y GSSAPI deberían ser tratados sin distinción de mayúsculas."
+
+#: utils/misc/guc_tables.c:1742
 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:1932
+#: utils/misc/guc_tables.c:1752
 msgid "Causes '...' strings to treat backslashes literally."
 msgstr "Provoca que las cadenas '...' traten las barras inclinadas inversas (\\) en forma literal."
 
-#: utils/misc/guc.c:1943
+#: utils/misc/guc_tables.c:1763
 msgid "Enable synchronized sequential scans."
 msgstr "Permitir la sincronización de recorridos secuenciales."
 
-#: utils/misc/guc.c:1953
+#: utils/misc/guc_tables.c:1773
 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:1963
+#: utils/misc/guc_tables.c:1783
 msgid "Allows connections and queries during recovery."
 msgstr "Permite conexiones y consultas durante la recuperación."
 
-#: utils/misc/guc.c:1973
+#: utils/misc/guc_tables.c:1793
 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:1983
+#: utils/misc/guc_tables.c:1803
 msgid "Shows whether hot standby is currently active."
 msgstr "Muestra si hot standby está activo actualmente."
 
-#: utils/misc/guc.c:1994
+#: utils/misc/guc_tables.c:1814
 msgid "Allows modifications of the structure of system tables."
 msgstr "Permite modificaciones de la estructura de las tablas del sistema."
 
-#: utils/misc/guc.c:2005
+#: utils/misc/guc_tables.c:1825
 msgid "Disables reading from system indexes."
 msgstr "Deshabilita lectura de índices del sistema."
 
-#: utils/misc/guc.c:2006
+#: utils/misc/guc_tables.c:1826
 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:2017
+#: utils/misc/guc_tables.c:1837
 msgid "Allows tablespaces directly inside pg_tblspc, for testing."
 msgstr "Permite tablespaces directamente dentro de pg_tblspc, para pruebas."
 
-#: utils/misc/guc.c:2028
+#: utils/misc/guc_tables.c:1848
 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:2029
+#: utils/misc/guc_tables.c:1849
 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:2039
+#: utils/misc/guc_tables.c:1859
 msgid "When generating SQL fragments, quote all identifiers."
 msgstr "Al generar fragmentos SQL, entrecomillar todos los identificadores."
 
-#: utils/misc/guc.c:2049
+#: utils/misc/guc_tables.c:1869
 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:2060
+#: utils/misc/guc_tables.c:1880
 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:2070
+#: utils/misc/guc_tables.c:1890
 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:2080
+#: utils/misc/guc_tables.c:1900
 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:2081
+#: utils/misc/guc_tables.c:1901
 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:2091
+#: utils/misc/guc_tables.c:1911
 msgid "Allow JIT compilation."
 msgstr "Permitir compilación JIT."
 
-#: utils/misc/guc.c:2102
+#: utils/misc/guc_tables.c:1922
 msgid "Register JIT-compiled functions with debugger."
 msgstr "Registrar las funciones JIT compiladas con el depurador."
 
-#: utils/misc/guc.c:2119
+#: utils/misc/guc_tables.c:1939
 msgid "Write out LLVM bitcode to facilitate JIT debugging."
 msgstr "Escribe el bitcode LLVM para facilitar depuración de JIT."
 
-#: utils/misc/guc.c:2130
+#: utils/misc/guc_tables.c:1950
 msgid "Allow JIT compilation of expressions."
 msgstr "Permitir compilación JIT de expresiones."
 
-#: utils/misc/guc.c:2141
+#: utils/misc/guc_tables.c:1961
 msgid "Register JIT-compiled functions with perf profiler."
 msgstr "Registrar las funciones JIT compiladas con el analizador «perf»."
 
-#: utils/misc/guc.c:2158
+#: utils/misc/guc_tables.c:1978
 msgid "Allow JIT compilation of tuple deforming."
 msgstr "Permitir compilación JIT de deformación de tuplas."
 
-#: utils/misc/guc.c:2169
+#: utils/misc/guc_tables.c:1989
 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:2178
+#: utils/misc/guc_tables.c:1998
 msgid "Sets whether a WAL receiver should create a temporary replication slot if no permanent slot is configured."
 msgstr "Definir si un receptor de WAL debe crear un slot de replicación temporal en caso de no haber configurado un slot permanente."
 
-#: utils/misc/guc.c:2196
+#: utils/misc/guc_tables.c:2016
 #, fuzzy
 #| msgid "Sets the time to wait before retrying to retrieve WAL after a failed attempt."
 msgid "Sets the amount of time to wait before forcing a switch to the next WAL file."
 msgstr "Define el tiempo a esperar antes de reintentar obtener WAL después de un intento fallido."
 
-#: utils/misc/guc.c:2207
+#: utils/misc/guc_tables.c:2027
 #, fuzzy
 #| msgid "Sets the maximum time to wait for WAL replication."
 msgid "Sets the amount of time to wait after authentication on connection startup."
 msgstr "Define el tiempo máximo a esperar la replicación de WAL."
 
-#: utils/misc/guc.c:2209 utils/misc/guc.c:2830
+#: utils/misc/guc_tables.c:2029 utils/misc/guc_tables.c:2663
 msgid "This allows attaching a debugger to the process."
 msgstr "Esto permite adjuntar un depurador al proceso."
 
-#: utils/misc/guc.c:2218
+#: utils/misc/guc_tables.c:2038
 msgid "Sets the default statistics target."
 msgstr "Definir el valor por omisión de toma de estadísticas."
 
-#: utils/misc/guc.c:2219
+#: utils/misc/guc_tables.c:2039
 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:2228
+#: utils/misc/guc_tables.c:2048
 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:2230
+#: utils/misc/guc_tables.c:2050
 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:2241
+#: utils/misc/guc_tables.c:2061
 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:2243
+#: utils/misc/guc_tables.c:2063
 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:2254
+#: utils/misc/guc_tables.c:2074
 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:2264
+#: utils/misc/guc_tables.c:2084
 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:2274
+#: utils/misc/guc_tables.c:2094
 msgid "GEQO: number of individuals in the population."
 msgstr "GEQO: número de individuos en una población."
 
-#: utils/misc/guc.c:2275 utils/misc/guc.c:2285
+#: utils/misc/guc_tables.c:2095 utils/misc/guc_tables.c:2105
 msgid "Zero selects a suitable default value."
 msgstr "Cero selecciona un valor por omisión razonable."
 
-#: utils/misc/guc.c:2284
+#: utils/misc/guc_tables.c:2104
 msgid "GEQO: number of iterations of the algorithm."
 msgstr "GEQO: número de iteraciones del algoritmo."
 
-#: utils/misc/guc.c:2296
+#: utils/misc/guc_tables.c:2116
 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:2307
+#: utils/misc/guc_tables.c:2127
 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:2318
+#: utils/misc/guc_tables.c:2138
 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:2329
+#: utils/misc/guc_tables.c:2149
 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:2340
+#: utils/misc/guc_tables.c:2160
 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 de WAL envía al servidor origen."
 
-#: utils/misc/guc.c:2351
+#: utils/misc/guc_tables.c:2171
 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:2362
+#: utils/misc/guc_tables.c:2182
 msgid "Sets the maximum number of concurrent connections."
 msgstr "Número máximo de conexiones concurrentes."
 
-#: utils/misc/guc.c:2373
+#: utils/misc/guc_tables.c:2193
 msgid "Sets the number of connection slots reserved for superusers."
 msgstr "Número de conexiones reservadas para superusuarios."
 
-#: utils/misc/guc.c:2383
+#: utils/misc/guc_tables.c:2203
+#, fuzzy
+#| msgid "Sets the number of connection slots reserved for superusers."
+msgid "Sets the number of connection slots reserved for roles with privileges of pg_use_reserved_connections."
+msgstr "Número de conexiones reservadas para superusuarios."
+
+#: utils/misc/guc_tables.c:2214
 msgid "Amount of dynamic shared memory reserved at startup."
 msgstr "Cantidad de memoria compartida dinámica reservada al iniciar."
 
-#: utils/misc/guc.c:2398
+#: utils/misc/guc_tables.c:2229
 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:2409
+#: utils/misc/guc_tables.c:2240
+msgid "Sets the buffer pool size for VACUUM, ANALYZE, and autovacuum."
+msgstr ""
+
+#: utils/misc/guc_tables.c:2251
 msgid "Shows the size of the server's main shared memory area (rounded up to the nearest MB)."
 msgstr "Muestra el tamaño del área principal de memoria compartida del servidor (redondeado al número de MB más cercano)."
 
-#: utils/misc/guc.c:2420
+#: utils/misc/guc_tables.c:2262
 #, fuzzy
 #| msgid "Sets the number of disk-page buffers in shared memory for WAL."
 msgid "Shows the number of huge pages needed for the main shared memory area."
 msgstr "Búfers en memoria compartida para páginas de WAL."
 
-#: utils/misc/guc.c:2421
+#: utils/misc/guc_tables.c:2263
 msgid "-1 indicates that the value could not be determined."
 msgstr "-1 indica que el valor no pudo ser determinado."
 
-#: utils/misc/guc.c:2431
+#: utils/misc/guc_tables.c:2273
 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:2442
+#: utils/misc/guc_tables.c:2284
 msgid "Sets the TCP port the server listens on."
 msgstr "Puerto TCP en el cual escuchará el servidor."
 
-#: utils/misc/guc.c:2452
+#: utils/misc/guc_tables.c:2294
 msgid "Sets the access permissions of the Unix-domain socket."
 msgstr "Privilegios de acceso al socket Unix."
 
-#: utils/misc/guc.c:2453
+#: utils/misc/guc_tables.c:2295
 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:2467
+#: utils/misc/guc_tables.c:2309
 msgid "Sets the file permissions for log files."
 msgstr "Define los privilegios para los archivos del registro del servidor."
 
-#: utils/misc/guc.c:2468
+#: utils/misc/guc_tables.c:2310
 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:2482
+#: utils/misc/guc_tables.c:2324
 msgid "Shows the mode of the data directory."
 msgstr "Muestra el modo del directorio de datos."
 
-#: utils/misc/guc.c:2483
+#: utils/misc/guc_tables.c:2325
 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:2496
+#: utils/misc/guc_tables.c:2338
 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:2497
+#: utils/misc/guc_tables.c:2339
 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:2509
+#: utils/misc/guc_tables.c:2351
 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:2510
+#: utils/misc/guc_tables.c:2352
 msgid "This includes operations such as VACUUM and CREATE INDEX."
 msgstr "Esto incluye operaciones como VACUUM y CREATE INDEX."
 
-#: utils/misc/guc.c:2520
+#: utils/misc/guc_tables.c:2362
 msgid "Sets the maximum memory to be used for logical decoding."
 msgstr "Establece el límite de memoria que se usará para decodificación lógica."
 
-#: utils/misc/guc.c:2521
+#: utils/misc/guc_tables.c:2363
 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 puede ser usada para cada búfer interno de ordenamiento, antes de comenzar a usar disco."
 
-#: utils/misc/guc.c:2537
+#: utils/misc/guc_tables.c:2379
 msgid "Sets the maximum stack depth, in kilobytes."
 msgstr "Establece el tamaño máximo del stack, en kilobytes."
 
-#: utils/misc/guc.c:2548
+#: utils/misc/guc_tables.c:2390
 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:2549
+#: utils/misc/guc_tables.c:2391
 msgid "-1 means no limit."
 msgstr "-1 significa sin límite."
 
-#: utils/misc/guc.c:2559
+#: utils/misc/guc_tables.c:2401
 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:2569
+#: utils/misc/guc_tables.c:2411
 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:2579
+#: utils/misc/guc_tables.c:2421
 msgid "Vacuum cost for a page dirtied by vacuum."
 msgstr "Costo de Vacuum de una página ensuciada por vacuum."
 
-#: utils/misc/guc.c:2589
+#: utils/misc/guc_tables.c:2431
 msgid "Vacuum cost amount available before napping."
 msgstr "Costo de Vacuum disponible antes de descansar."
 
-#: utils/misc/guc.c:2599
+#: utils/misc/guc_tables.c:2441
 msgid "Vacuum cost amount available before napping, for autovacuum."
 msgstr "Costo de Vacuum disponible antes de descansar, para autovacuum."
 
-#: utils/misc/guc.c:2609
+#: utils/misc/guc_tables.c:2451
 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:2622
+#: utils/misc/guc_tables.c:2464
 msgid "Sets the maximum number of simultaneously prepared transactions."
 msgstr "Define la cantidad máxima de transacciones preparadas simultáneas."
 
-#: utils/misc/guc.c:2633
+#: utils/misc/guc_tables.c:2475
 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:2634
+#: utils/misc/guc_tables.c:2476
 msgid "Is used to avoid output on system tables."
 msgstr "Se usa para evitar salida excesiva por tablas de sistema."
 
-#: utils/misc/guc.c:2643
+#: utils/misc/guc_tables.c:2485
 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:2655
+#: utils/misc/guc_tables.c:2497
 msgid "Sets the maximum allowed duration of any statement."
 msgstr "Define la duración máxima permitida de sentencias."
 
-#: utils/misc/guc.c:2656 utils/misc/guc.c:2667 utils/misc/guc.c:2678
-#: utils/misc/guc.c:2689
+#: utils/misc/guc_tables.c:2498 utils/misc/guc_tables.c:2509
+#: utils/misc/guc_tables.c:2520 utils/misc/guc_tables.c:2531
 msgid "A value of 0 turns off the timeout."
 msgstr "Un valor de 0 desactiva el máximo."
 
-#: utils/misc/guc.c:2666
+#: utils/misc/guc_tables.c:2508
 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:2677
+#: utils/misc/guc_tables.c:2519
 msgid "Sets the maximum allowed idle time between queries, when in a transaction."
 msgstr "Define el tiempo máximo permitido de inactividad entre consultas, cuando están dentro de una transacción."
 
-#: utils/misc/guc.c:2688
+#: utils/misc/guc_tables.c:2530
 msgid "Sets the maximum allowed idle time between queries, when not in a transaction."
 msgstr "Define el tiempo máximo permitido de inactividad entre consultas, cuando no están dentro de una transacción."
 
-#: utils/misc/guc.c:2699
+#: utils/misc/guc_tables.c:2541
 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:2709
+#: utils/misc/guc_tables.c:2551
 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:2719
+#: utils/misc/guc_tables.c:2561
 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:2729
+#: utils/misc/guc_tables.c:2571
 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:2739
-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:2748
+#: utils/misc/guc_tables.c:2581
 msgid "Age at which VACUUM should trigger failsafe to avoid a wraparound outage."
 msgstr "Edad a la cual VACUUM debería activar el modo failsafe para evitar pérdida de servicio por reciclaje (wraparound)."
 
-#: utils/misc/guc.c:2757
+#: utils/misc/guc_tables.c:2590
 msgid "Multixact age at which VACUUM should trigger failsafe to avoid a wraparound outage."
 msgstr "Edad de multixact a la cual VACUUM debería activar el modo failsafe para evitar pérdida de servicio por reciclaje (wraparound)."
 
-#: utils/misc/guc.c:2770
+#: utils/misc/guc_tables.c:2603
 msgid "Sets the maximum number of locks per transaction."
 msgstr "Cantidad máxima de candados (locks) por transacción."
 
-#: utils/misc/guc.c:2771
-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."
+#: utils/misc/guc_tables.c:2604
+#, fuzzy
+#| 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."
+msgid "The shared lock table is sized on the assumption that at most max_locks_per_transaction objects per server process or prepared transaction 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:2782
+#: utils/misc/guc_tables.c:2615
 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:2783
-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."
+#: utils/misc/guc_tables.c:2616
+#, fuzzy
+#| 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."
+msgid "The shared predicate lock table is sized on the assumption that at most max_pred_locks_per_transaction objects per server process or prepared transaction 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:2794
+#: utils/misc/guc_tables.c:2627
 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:2795
+#: utils/misc/guc_tables.c:2628
 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:2805
+#: utils/misc/guc_tables.c:2638
 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:2806
+#: utils/misc/guc_tables.c:2639
 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:2816
+#: utils/misc/guc_tables.c:2649
 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:2828
+#: utils/misc/guc_tables.c:2661
 #, fuzzy
 #| msgid "Sets the maximum time to wait for WAL replication."
 msgid "Sets the amount of time to wait before authentication on connection startup."
 msgstr "Define el tiempo máximo a esperar la replicación de WAL."
 
-#: utils/misc/guc.c:2840
-#, fuzzy
-#| msgid "Maximum buffer size for reading ahead in the WAL during recovery."
+#: utils/misc/guc_tables.c:2673
 msgid "Buffer size for reading ahead in the WAL during recovery."
-msgstr "Tamaño máximo de buffer para lectura adelantada en WAL durante la recuperación."
+msgstr ""
 
-#: utils/misc/guc.c:2841
-#, fuzzy
-#| msgid "This controls the maximum distance we can read ahead in the WAL to prefetch referenced blocks."
+#: utils/misc/guc_tables.c:2674
 msgid "Maximum distance to read ahead in the WAL to prefetch referenced data blocks."
-msgstr "Esto controla la máxima distancia que se permite leer de antemano en WAL para pre-cargar (prefetch) los bloques referenciados."
+msgstr ""
 
-#: utils/misc/guc.c:2851
+#: utils/misc/guc_tables.c:2684
 msgid "Sets the size of WAL files held for standby servers."
 msgstr "Establece el tamaño de los archivos de WAL retenidos para los servidores standby."
 
-#: utils/misc/guc.c:2862
+#: utils/misc/guc_tables.c:2695
 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:2874
+#: utils/misc/guc_tables.c:2707
 msgid "Sets the WAL size that triggers a checkpoint."
 msgstr "Define el tamaño de WAL que desencadena un checkpoint."
 
-#: utils/misc/guc.c:2886
+#: utils/misc/guc_tables.c:2719
 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:2897
+#: utils/misc/guc_tables.c:2730
 msgid "Sets the maximum time before warning if checkpoints triggered by WAL volume happen too frequently."
 msgstr "Define el máximo tiempo antes de emitir un advertencia si los checkpoints iniciados a causa del volumen de WAL ocurren con demasiada frecuencia."
 
-#: utils/misc/guc.c:2899
-#, fuzzy
-#| 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."
+#: utils/misc/guc_tables.c:2732
 msgid "Write a message to the server log if checkpoints caused by the filling of WAL segment files happen more frequently than this amount of time. 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."
+msgstr ""
 
-#: utils/misc/guc.c:2912 utils/misc/guc.c:3130 utils/misc/guc.c:3178
+#: utils/misc/guc_tables.c:2745 utils/misc/guc_tables.c:2963
+#: utils/misc/guc_tables.c:3003
 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:2923
+#: utils/misc/guc_tables.c:2756
 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:2934
+#: utils/misc/guc_tables.c:2767
 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:2945
+#: utils/misc/guc_tables.c:2778
 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:2956
+#: utils/misc/guc_tables.c:2789
 msgid "Minimum size of new file to fsync instead of writing WAL."
 msgstr "Tamaño mínimo del nuevo archivo para hacer fsync en lugar de escribir WAL."
 
-#: utils/misc/guc.c:2967
+#: utils/misc/guc_tables.c:2800
 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:2978
+#: utils/misc/guc_tables.c:2811
 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:2988
+#: utils/misc/guc_tables.c:2821
 msgid "Sets the maximum WAL size that can be reserved by replication slots."
 msgstr "Define el tamaño máximo de WAL que puede ser reservado por slots de replicación."
 
-#: utils/misc/guc.c:2989
+#: utils/misc/guc_tables.c:2822
 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 "Los slots de replicación serán invalidados, y los segmentos de WAL eliminados o reciclados, si se usa esta cantidad de espacio de disco en WAL."
 
-#: utils/misc/guc.c:3001
+#: utils/misc/guc_tables.c:2834
 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:3012
+#: utils/misc/guc_tables.c:2845
 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:3024
+#: utils/misc/guc_tables.c:2857
 #, fuzzy
-#| msgid "Sets the minimum concurrent open transactions before performing commit_delay."
+#| msgid "Sets the maximum number of concurrent connections."
 msgid "Sets the minimum number of concurrent open transactions required before performing commit_delay."
-msgstr "Mínimo de transacciones concurrentes para esperar commit_delay."
+msgstr "Número máximo de conexiones concurrentes."
 
-#: utils/misc/guc.c:3035
+#: utils/misc/guc_tables.c:2868
 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:3036
+#: utils/misc/guc_tables.c:2869
 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:3048
+#: utils/misc/guc_tables.c:2881
 msgid "Sets the minimum execution time above which a sample of statements will be logged. Sampling is determined by log_statement_sample_rate."
 msgstr "Establece el tiempo mínimo de ejecución a partir del cual se registra una muestra de la sentencia. El muestreo es determinado por log_statement_sample_rate."
 
-#: utils/misc/guc.c:3051
+#: utils/misc/guc_tables.c:2884
 msgid "Zero logs a sample of all queries. -1 turns this feature off."
 msgstr "Cero registra una muestra de todas las consultas. -1 desactiva esta funcionalidad."
 
-#: utils/misc/guc.c:3061
+#: utils/misc/guc_tables.c:2894
 msgid "Sets the minimum execution time above which all statements will be logged."
 msgstr "Establece el tiempo mínimo de ejecución a partir del cual se registran todas las sentencias."
 
-#: utils/misc/guc.c:3063
+#: utils/misc/guc_tables.c:2896
 msgid "Zero prints all queries. -1 turns this feature off."
 msgstr "Cero imprime todas las consultas. -1 desactiva esta funcionalidad."
 
-#: utils/misc/guc.c:3073
+#: utils/misc/guc_tables.c:2906
 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:3075
+#: utils/misc/guc_tables.c:2908
 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:3085
+#: utils/misc/guc_tables.c:2918
 msgid "Sets the maximum length in bytes of data logged for bind parameter values when logging statements."
 msgstr "Define el largo máximo en bytes de valores de parámetros «bind» enviados al log al registrar sentencias."
 
-#: utils/misc/guc.c:3087 utils/misc/guc.c:3099
+#: utils/misc/guc_tables.c:2920 utils/misc/guc_tables.c:2932
 msgid "-1 to print values in full."
 msgstr "-1 para mostrar los valores completos."
 
-#: utils/misc/guc.c:3097
+#: utils/misc/guc_tables.c:2930
 msgid "Sets the maximum length in bytes of data logged for bind parameter values when logging statements, on error."
 msgstr "Define el largo máximo en bytes de valores de parámetros «bind» enviados al log, en caso de error."
 
-#: utils/misc/guc.c:3109
+#: utils/misc/guc_tables.c:2942
 msgid "Background writer sleep time between rounds."
 msgstr "Tiempo de descanso entre rondas del background writer"
 
-#: utils/misc/guc.c:3120
+#: utils/misc/guc_tables.c:2953
 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:3143
+#: utils/misc/guc_tables.c:2976
 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:3161
+#: utils/misc/guc_tables.c:2990
 msgid "A variant of effective_io_concurrency that is used for maintenance work."
 msgstr "Una variante de effective_io_concurrency que se usa para tareas de mantención."
 
-#: utils/misc/guc.c:3191
+#: utils/misc/guc_tables.c:3016
 msgid "Maximum number of concurrent worker processes."
 msgstr "Número máximo de procesos ayudantes concurrentes."
 
-#: utils/misc/guc.c:3203
+#: utils/misc/guc_tables.c:3028
 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:3215
+#: utils/misc/guc_tables.c:3040
 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:3225
+#: utils/misc/guc_tables.c:3052
+#, fuzzy
+#| msgid "Maximum number of table synchronization workers per subscription."
+msgid "Maximum number of parallel apply workers per subscription."
+msgstr "Número máximo de procesos ayudantes de sincronización por suscripción."
+
+#: utils/misc/guc_tables.c:3062
 #, fuzzy
 #| msgid "Sets the maximum time to wait for WAL replication."
 msgid "Sets the amount of time to wait before forcing log file rotation."
 msgstr "Define el tiempo máximo a esperar la replicación de WAL."
 
-#: utils/misc/guc.c:3237
+#: utils/misc/guc_tables.c:3074
 #, fuzzy
 #| msgid "Sets the maximum WAL size that can be reserved by replication slots."
 msgid "Sets the maximum size a log file can reach before being rotated."
 msgstr "Define el tamaño máximo de WAL que puede ser reservado por slots de replicación."
 
-#: utils/misc/guc.c:3249
+#: utils/misc/guc_tables.c:3086
 msgid "Shows the maximum number of function arguments."
 msgstr "Muestra la cantidad máxima de argumentos de funciones."
 
-#: utils/misc/guc.c:3260
+#: utils/misc/guc_tables.c:3097
 msgid "Shows the maximum number of index keys."
 msgstr "Muestra la cantidad máxima de claves de índices."
 
-#: utils/misc/guc.c:3271
+#: utils/misc/guc_tables.c:3108
 msgid "Shows the maximum identifier length."
 msgstr "Muestra el largo máximo de identificadores."
 
-#: utils/misc/guc.c:3282
+#: utils/misc/guc_tables.c:3119
 msgid "Shows the size of a disk block."
 msgstr "Muestra el tamaño de un bloque de disco."
 
-#: utils/misc/guc.c:3293
+#: utils/misc/guc_tables.c:3130
 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:3304
+#: utils/misc/guc_tables.c:3141
 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:3315
+#: utils/misc/guc_tables.c:3152
 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:3327
+#: utils/misc/guc_tables.c:3164
 msgid "Shows the size of write ahead log segments."
 msgstr "Muestra el tamaño de los segmentos de WAL."
 
-#: utils/misc/guc.c:3340
+#: utils/misc/guc_tables.c:3177
 msgid "Time to sleep between autovacuum runs."
 msgstr "Tiempo de descanso entre ejecuciones de autovacuum."
 
-#: utils/misc/guc.c:3350
+#: utils/misc/guc_tables.c:3187
 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:3359
+#: utils/misc/guc_tables.c:3196
 msgid "Minimum number of tuple inserts prior to vacuum, or -1 to disable insert vacuums."
 msgstr "Número mínimo de inserciones de tuplas antes de ejecutar vacuum, o -1 para desactivar vacuums por inserciones."
 
-#: utils/misc/guc.c:3368
+#: utils/misc/guc_tables.c:3205
 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:3378
+#: utils/misc/guc_tables.c:3215
 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:3390
+#: utils/misc/guc_tables.c:3227
 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:3400
+#: utils/misc/guc_tables.c:3237
 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:3410
+#: utils/misc/guc_tables.c:3247
 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:3420
+#: utils/misc/guc_tables.c:3257
 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:3431
+#: utils/misc/guc_tables.c:3268
 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:3442
+#: utils/misc/guc_tables.c:3279
 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:3453
+#: utils/misc/guc_tables.c:3290
 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:3454
+#: utils/misc/guc_tables.c:3291
 msgid "A value of -1 disables this feature."
 msgstr "El valor -1 desactiva esta característica."
 
-#: utils/misc/guc.c:3464
+#: utils/misc/guc_tables.c:3301
 msgid "Time between issuing TCP keepalives."
 msgstr "Tiempo entre cada emisión de TCP keepalive."
 
-#: utils/misc/guc.c:3465 utils/misc/guc.c:3476 utils/misc/guc.c:3600
+#: utils/misc/guc_tables.c:3302 utils/misc/guc_tables.c:3313
+#: utils/misc/guc_tables.c:3437
 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:3475
+#: utils/misc/guc_tables.c:3312
 msgid "Time between TCP keepalive retransmits."
 msgstr "Tiempo entre retransmisiones TCP keepalive."
 
-#: utils/misc/guc.c:3486
+#: utils/misc/guc_tables.c:3323
 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:3497
+#: utils/misc/guc_tables.c:3334
 msgid "Maximum number of TCP keepalive retransmits."
 msgstr "Cantidad máxima de retransmisiones TCP keepalive."
 
-#: utils/misc/guc.c:3498
-#, fuzzy
-#| 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."
+#: utils/misc/guc_tables.c:3335
 msgid "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."
+msgstr ""
 
-#: utils/misc/guc.c:3509
+#: utils/misc/guc_tables.c:3346
 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:3520
+#: utils/misc/guc_tables.c:3357
 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:3521
+#: utils/misc/guc_tables.c:3358
 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:3532
+#: utils/misc/guc_tables.c:3369
 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:3533
+#: utils/misc/guc_tables.c:3370
 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:3543
+#: utils/misc/guc_tables.c:3380
 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:3544
+#: utils/misc/guc_tables.c:3381
 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:3555
+#: utils/misc/guc_tables.c:3392
 msgid "Shows the server version as an integer."
 msgstr "Muestra la versión del servidor como un número entero."
 
-#: utils/misc/guc.c:3566
+#: utils/misc/guc_tables.c:3403
 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:3567
+#: utils/misc/guc_tables.c:3404
 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:3577
+#: utils/misc/guc_tables.c:3414
 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:3588
+#: utils/misc/guc_tables.c:3425
 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:3599
+#: utils/misc/guc_tables.c:3436
 msgid "TCP user timeout."
 msgstr "Tiempo de expiración de TCP."
 
-#: utils/misc/guc.c:3610
+#: utils/misc/guc_tables.c:3447
 msgid "The size of huge page that should be requested."
 msgstr "El tamaño de huge page que se debería solicitar."
 
-#: utils/misc/guc.c:3621
+#: utils/misc/guc_tables.c:3458
 msgid "Aggressively flush system caches for debugging purposes."
 msgstr "Escribir cachés de sistema de forma agresiva para propósitos de depuración."
 
-#: utils/misc/guc.c:3644
+#: utils/misc/guc_tables.c:3481
 msgid "Sets the time interval between checks for disconnection while running queries."
 msgstr "Establece el intervalo entre revisiones de desconexión mientras se ejecutan consultas."
 
-#: utils/misc/guc.c:3655
+#: utils/misc/guc_tables.c:3492
 msgid "Time between progress updates for long-running startup operations."
 msgstr "Tiempo a esperar entre actualizaciones para operaciones largas durante el inicio."
 
-#: utils/misc/guc.c:3657
+#: utils/misc/guc_tables.c:3494
 #, fuzzy
 #| msgid "Zero prints all queries. -1 turns this feature off."
 msgid "0 turns this feature off."
 msgstr "Cero imprime todas las consultas. -1 desactiva esta funcionalidad."
 
-#: utils/misc/guc.c:3676
+#: utils/misc/guc_tables.c:3504
+#, fuzzy
+#| msgid "Sets the seed for random-number generation."
+msgid "Sets the iteration count for SCRAM secret generation."
+msgstr "Semilla para la generación de números aleatorios."
+
+#: utils/misc/guc_tables.c:3524
 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:3687
+#: utils/misc/guc_tables.c:3535
 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:3698
+#: utils/misc/guc_tables.c:3546
 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:3709
+#: utils/misc/guc_tables.c:3557
 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:3720
+#: utils/misc/guc_tables.c:3568
 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:3731
+#: utils/misc/guc_tables.c:3579
 msgid "Sets the planner's estimate of the cost of passing each tuple (row) from worker to leader backend."
 msgstr "Estimación del costo de pasar cada tupla (fila) desde un proceso ayudante al proceso servidor principal."
 
-#: utils/misc/guc.c:3742
+#: utils/misc/guc_tables.c:3590
 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:3754
+#: utils/misc/guc_tables.c:3602
 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:3755
+#: utils/misc/guc_tables.c:3603
 msgid "-1 disables JIT compilation."
 msgstr "-1 inhabilita compilación JIT."
 
-#: utils/misc/guc.c:3765
+#: utils/misc/guc_tables.c:3613
 msgid "Optimize JIT-compiled functions if query is more expensive."
 msgstr "Optimizar funciones compiladas en tiempo de ejecución (JIT) si la consulta es más cara."
 
-#: utils/misc/guc.c:3766
+#: utils/misc/guc_tables.c:3614
 msgid "-1 disables optimization."
 msgstr "-1 inhabilita la optimización."
 
-#: utils/misc/guc.c:3776
+#: utils/misc/guc_tables.c:3624
 msgid "Perform JIT inlining if query is more expensive."
 msgstr "Ejecutar «inlining» JIT si la consulta es más cara."
 
-#: utils/misc/guc.c:3777
+#: utils/misc/guc_tables.c:3625
 msgid "-1 disables inlining."
 msgstr "-1 inhabilita el «inlining»."
 
-#: utils/misc/guc.c:3787
+#: utils/misc/guc_tables.c:3635
 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:3799
+#: utils/misc/guc_tables.c:3647
 #, fuzzy
 #| msgid "Sets the planner's estimate of the fraction of a cursor's rows that will be retrieved."
 msgid "Sets the planner's estimate of the average size of a recursive query's working table."
 msgstr "Estimación de la fracción de filas de un cursor que serán extraídas."
 
-#: utils/misc/guc.c:3811
+#: utils/misc/guc_tables.c:3659
 msgid "GEQO: selective pressure within the population."
 msgstr "GEQO: presión selectiva dentro de la población."
 
-#: utils/misc/guc.c:3822
+#: utils/misc/guc_tables.c:3670
 msgid "GEQO: seed for random path selection."
 msgstr "GEQO: semilla para la selección aleatoria de caminos."
 
-#: utils/misc/guc.c:3833
+#: utils/misc/guc_tables.c:3681
 msgid "Multiple of work_mem to use for hash tables."
 msgstr "Múltiplo de work_mem para el uso de tablas de hash."
 
-#: utils/misc/guc.c:3844
+#: utils/misc/guc_tables.c:3692
 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:3854
+#: utils/misc/guc_tables.c:3702
 msgid "Sets the seed for random-number generation."
 msgstr "Semilla para la generación de números aleatorios."
 
-#: utils/misc/guc.c:3865
+#: utils/misc/guc_tables.c:3713
 msgid "Vacuum cost delay in milliseconds."
 msgstr "Tiempo de descanso de vacuum en milisegundos."
 
-#: utils/misc/guc.c:3876
+#: utils/misc/guc_tables.c:3724
 msgid "Vacuum cost delay in milliseconds, for autovacuum."
 msgstr "Tiempo de descanso de vacuum en milisegundos, para autovacuum."
 
-#: utils/misc/guc.c:3887
+#: utils/misc/guc_tables.c:3735
 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:3897
+#: utils/misc/guc_tables.c:3745
 msgid "Number of tuple inserts prior to vacuum as a fraction of reltuples."
 msgstr "Número de inserts de tuplas antes de ejecutar un vacuum, como fracción de reltuples."
 
-#: utils/misc/guc.c:3907
+#: utils/misc/guc_tables.c:3755
 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:3917
+#: utils/misc/guc_tables.c:3765
 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:3927
+#: utils/misc/guc_tables.c:3775
 msgid "Fraction of statements exceeding log_min_duration_sample to be logged."
 msgstr "Fracción de sentencias que duren más de log_min_duration_sample a ser registradas."
 
-#: utils/misc/guc.c:3928
+#: utils/misc/guc_tables.c:3776
 msgid "Use a value between 0.0 (never log) and 1.0 (always log)."
 msgstr "Use un valor entre 0.0 (no registrar nunca) y 1.0 (registrar siempre)."
 
-#: utils/misc/guc.c:3937
+#: utils/misc/guc_tables.c:3785
 msgid "Sets the fraction of transactions from which to log all statements."
 msgstr "Define la fracción de transacciones desde la cual registrar en el log todas las sentencias."
 
-#: utils/misc/guc.c:3938
+#: utils/misc/guc_tables.c:3786
 msgid "Use a value between 0.0 (never log) and 1.0 (log all statements for all transactions)."
 msgstr "Use un valor entre 0.0 (nunca registrar) y 1.0 (registrar todas las sentencias de todas las transacciones)."
 
-#: utils/misc/guc.c:3957
+#: utils/misc/guc_tables.c:3805
 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:3958
+#: utils/misc/guc_tables.c:3806
 msgid "This is used only if \"archive_library\" is not set."
 msgstr "Esto sólo se utiliza si «archive_library» no está definido."
 
-#: utils/misc/guc.c:3967
+#: utils/misc/guc_tables.c:3815
 #, fuzzy
 #| msgid "Sets the shell command that will be called to archive a WAL file."
 msgid "Sets the library 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:3968
+#: utils/misc/guc_tables.c:3816
 msgid "An empty string indicates that \"archive_command\" should be used."
 msgstr "Una cadena vacía indica que «archive_command» debería usarse."
 
-#: utils/misc/guc.c:3977
+#: utils/misc/guc_tables.c:3825
 msgid "Sets the shell command that will be called to retrieve an archived WAL file."
 msgstr "Orden de shell que se invocará para recuperar un archivo WAL archivado."
 
-#: utils/misc/guc.c:3987
+#: utils/misc/guc_tables.c:3835
 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:3997
+#: utils/misc/guc_tables.c:3845
 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:4007
+#: utils/misc/guc_tables.c:3855
 msgid "Specifies the timeline to recover into."
 msgstr "Especifica la línea de tiempo a la cual recuperar."
 
-#: utils/misc/guc.c:4017
+#: utils/misc/guc_tables.c:3865
 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:4026
+#: utils/misc/guc_tables.c:3874
 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:4035
+#: utils/misc/guc_tables.c:3883
 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:4044
+#: utils/misc/guc_tables.c:3892
 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:4053
+#: utils/misc/guc_tables.c:3901
 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:4063
-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:4073
+#: utils/misc/guc_tables.c:3911
 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:4084
+#: utils/misc/guc_tables.c:3922
 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:4094
+#: utils/misc/guc_tables.c:3932
 msgid "Sets the client's character set encoding."
 msgstr "Codificación del juego de caracteres del cliente."
 
-#: utils/misc/guc.c:4105
+#: utils/misc/guc_tables.c:3943
 msgid "Controls information prefixed to each log line."
 msgstr "Controla el prefijo que antecede cada línea registrada."
 
-#: utils/misc/guc.c:4106
+#: utils/misc/guc_tables.c:3944
 msgid "If blank, no prefix is used."
 msgstr "si está en blanco, no se usa prefijo."
 
-#: utils/misc/guc.c:4115
+#: utils/misc/guc_tables.c:3953
 msgid "Sets the time zone to use in log messages."
 msgstr "Define el huso horario usando en los mensajes registrados."
 
-#: utils/misc/guc.c:4125
+#: utils/misc/guc_tables.c:3963
 msgid "Sets the display format for date and time values."
 msgstr "Formato de salida para valores de horas y fechas."
 
-#: utils/misc/guc.c:4126
+#: utils/misc/guc_tables.c:3964
 msgid "Also controls interpretation of ambiguous date inputs."
 msgstr "También controla la interpretación de entradas ambiguas de fechas"
 
-#: utils/misc/guc.c:4137
+#: utils/misc/guc_tables.c:3975
 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:4148
+#: utils/misc/guc_tables.c:3986
 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:4149
+#: utils/misc/guc_tables.c:3987
 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:4159
+#: utils/misc/guc_tables.c:3997
 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:4170
+#: utils/misc/guc_tables.c:4008
+msgid "Sets whether a CREATEROLE user automatically grants the role to themselves, and with which options."
+msgstr ""
+
+#: utils/misc/guc_tables.c:4020
 msgid "Sets the path for dynamically loadable modules."
 msgstr "Ruta para módulos dinámicos."
 
-#: utils/misc/guc.c:4171
+#: utils/misc/guc_tables.c:4021
 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:4184
+#: utils/misc/guc_tables.c:4034
 msgid "Sets the location of the Kerberos server key file."
 msgstr "Ubicación del archivo de llave del servidor Kerberos."
 
-#: utils/misc/guc.c:4195
+#: utils/misc/guc_tables.c:4045
 msgid "Sets the Bonjour service name."
 msgstr "Nombre del servicio Bonjour."
 
-#: utils/misc/guc.c:4207
+#: utils/misc/guc_tables.c:4057
 msgid "Shows the collation order locale."
 msgstr "Configuración regional de ordenamiento de cadenas (collation)."
 
-#: utils/misc/guc.c:4218
+#: utils/misc/guc_tables.c:4068
 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:4229
+#: utils/misc/guc_tables.c:4079
 msgid "Sets the language in which messages are displayed."
 msgstr "Idioma en el que se despliegan los mensajes."
 
-#: utils/misc/guc.c:4239
+#: utils/misc/guc_tables.c:4089
 msgid "Sets the locale for formatting monetary amounts."
 msgstr "Configuración regional para formatos de moneda."
 
-#: utils/misc/guc.c:4249
+#: utils/misc/guc_tables.c:4099
 msgid "Sets the locale for formatting numbers."
 msgstr "Configuración regional para formatos de números."
 
-#: utils/misc/guc.c:4259
+#: utils/misc/guc_tables.c:4109
 msgid "Sets the locale for formatting date and time values."
 msgstr "Configuración regional para formatos de horas y fechas."
 
-#: utils/misc/guc.c:4269
+#: utils/misc/guc_tables.c:4119
 msgid "Lists shared libraries to preload into each backend."
 msgstr "Bibliotecas compartidas a precargar en cada proceso."
 
-#: utils/misc/guc.c:4280
+#: utils/misc/guc_tables.c:4130
 msgid "Lists shared libraries to preload into server."
 msgstr "Bibliotecas compartidas a precargar en el servidor."
 
-#: utils/misc/guc.c:4291
+#: utils/misc/guc_tables.c:4141
 msgid "Lists unprivileged shared libraries to preload into each backend."
 msgstr "Bibliotecas compartidas no privilegiadas a precargar en cada proceso."
 
-#: utils/misc/guc.c:4302
+#: utils/misc/guc_tables.c:4152
 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:4314
+#: utils/misc/guc_tables.c:4164
 msgid "Shows the server (database) character set encoding."
 msgstr "Muestra la codificación de caracteres del servidor (base de datos)."
 
-#: utils/misc/guc.c:4326
+#: utils/misc/guc_tables.c:4176
 msgid "Shows the server version."
 msgstr "Versión del servidor."
 
-#: utils/misc/guc.c:4338
+#: utils/misc/guc_tables.c:4188
 msgid "Sets the current role."
 msgstr "Define el rol actual."
 
-#: utils/misc/guc.c:4350
+#: utils/misc/guc_tables.c:4200
 msgid "Sets the session user name."
 msgstr "Define el nombre del usuario de sesión."
 
-#: utils/misc/guc.c:4361
+#: utils/misc/guc_tables.c:4211
 msgid "Sets the destination for server log output."
 msgstr "Define el destino de la salida del registro del servidor."
 
-#: utils/misc/guc.c:4362
-#, fuzzy
-#| msgid "Valid values are combinations of \"stderr\", \"syslog\", \"csvlog\", and \"eventlog\", depending on the platform."
+#: utils/misc/guc_tables.c:4212
 msgid "Valid values are combinations of \"stderr\", \"syslog\", \"csvlog\", \"jsonlog\", and \"eventlog\", depending on the platform."
-msgstr "Los valores aceptables son combinaciones de «stderr», «syslog», «csvlog» y «eventlog», dependiendo de la plataforma."
+msgstr ""
 
-#: utils/misc/guc.c:4373
+#: utils/misc/guc_tables.c:4223
 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:4374
+#: utils/misc/guc_tables.c:4224
 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:4384
+#: utils/misc/guc_tables.c:4234
 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:4395
+#: utils/misc/guc_tables.c:4245
 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:4406
+#: utils/misc/guc_tables.c:4256
 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:4417
+#: utils/misc/guc_tables.c:4267
 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:4427
+#: utils/misc/guc_tables.c:4277
 msgid "Selects a file of time zone abbreviations."
 msgstr "Selecciona un archivo de abreviaciones de huso horario."
 
-#: utils/misc/guc.c:4437
+#: utils/misc/guc_tables.c:4287
 msgid "Sets the owning group of the Unix-domain socket."
 msgstr "Grupo dueño del socket de dominio Unix."
 
-#: utils/misc/guc.c:4438
+#: utils/misc/guc_tables.c:4288
 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:4448
+#: utils/misc/guc_tables.c:4298
 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:4463
+#: utils/misc/guc_tables.c:4309
 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:4478
+#: utils/misc/guc_tables.c:4324
 msgid "Sets the server's data directory."
 msgstr "Define la ubicación del directorio de datos."
 
-#: utils/misc/guc.c:4489
+#: utils/misc/guc_tables.c:4335
 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:4500
+#: utils/misc/guc_tables.c:4346
 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:4511
+#: utils/misc/guc_tables.c:4357
 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:4522
+#: utils/misc/guc_tables.c:4368
 msgid "Writes the postmaster PID to the specified file."
 msgstr "Registra el PID de postmaster en el archivo especificado."
 
-#: utils/misc/guc.c:4533
+#: utils/misc/guc_tables.c:4379
 msgid "Shows the name of the SSL library."
 msgstr "Muestra el nombre de la biblioteca SSL."
 
-#: utils/misc/guc.c:4548
+#: utils/misc/guc_tables.c:4394
 msgid "Location of the SSL server certificate file."
 msgstr "Ubicación del archivo de certificado SSL del servidor."
 
-#: utils/misc/guc.c:4558
+#: utils/misc/guc_tables.c:4404
 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:4568
+#: utils/misc/guc_tables.c:4414
 msgid "Location of the SSL certificate authority file."
 msgstr "Ubicación del archivo de autoridad certificadora SSL."
 
-#: utils/misc/guc.c:4578
+#: utils/misc/guc_tables.c:4424
 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:4588
+#: utils/misc/guc_tables.c:4434
 msgid "Location of the SSL certificate revocation list directory."
 msgstr "Ubicación del directorio de lista de revocación de certificados SSL"
 
-#: utils/misc/guc.c:4598
+#: utils/misc/guc_tables.c:4444
 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:4609
+#: utils/misc/guc_tables.c:4455
 msgid "Sets default text search configuration."
 msgstr "Define la configuración de búsqueda en texto por omisión."
 
-#: utils/misc/guc.c:4619
+#: utils/misc/guc_tables.c:4465
 msgid "Sets the list of allowed SSL ciphers."
 msgstr "Define la lista de cifrados SSL permitidos."
 
-#: utils/misc/guc.c:4634
+#: utils/misc/guc_tables.c:4480
 msgid "Sets the curve to use for ECDH."
 msgstr "Define la curva a usar para ECDH."
 
-#: utils/misc/guc.c:4649
+#: utils/misc/guc_tables.c:4495
 msgid "Location of the SSL DH parameters file."
 msgstr "Ubicación del archivo de parámetros DH para SSL."
 
-#: utils/misc/guc.c:4660
+#: utils/misc/guc_tables.c:4506
 msgid "Command to obtain passphrases for SSL."
 msgstr "Orden para obtener frases clave para SSL."
 
-#: utils/misc/guc.c:4671
+#: utils/misc/guc_tables.c:4517
 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:4682
+#: utils/misc/guc_tables.c:4528
 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:4693
+#: utils/misc/guc_tables.c:4539
 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:4694
+#: utils/misc/guc_tables.c:4540
 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:4704
+#: utils/misc/guc_tables.c:4550
 msgid "JIT provider to use."
 msgstr "Proveedor JIT a usar."
 
-#: utils/misc/guc.c:4715
+#: utils/misc/guc_tables.c:4561
 msgid "Log backtrace for errors in these functions."
 msgstr "Registrar el backtrace para errores que se produzcan en estas funciones."
 
-#: utils/misc/guc.c:4735
+#: utils/misc/guc_tables.c:4572
+msgid "Use direct I/O for file access."
+msgstr ""
+
+#: utils/misc/guc_tables.c:4592
 msgid "Sets whether \"\\'\" is allowed in string literals."
 msgstr "Define si «\\'» está permitido en literales de cadena."
 
-#: utils/misc/guc.c:4745
+#: utils/misc/guc_tables.c:4602
 msgid "Sets the output format for bytea."
 msgstr "Formato de salida para bytea."
 
-#: utils/misc/guc.c:4755
+#: utils/misc/guc_tables.c:4612
 msgid "Sets the message levels that are sent to the client."
 msgstr "Nivel de mensajes enviados al cliente."
 
-#: utils/misc/guc.c:4756 utils/misc/guc.c:4842 utils/misc/guc.c:4853
-#: utils/misc/guc.c:4929
+#: utils/misc/guc_tables.c:4613 utils/misc/guc_tables.c:4709
+#: utils/misc/guc_tables.c:4720 utils/misc/guc_tables.c:4792
 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:4766
-#, fuzzy
-#| msgid "Compute query identifiers."
+#: utils/misc/guc_tables.c:4623
 msgid "Enables in-core computation of query identifiers."
-msgstr "Calcular identificadores de consulta."
+msgstr ""
 
-#: utils/misc/guc.c:4776
+#: utils/misc/guc_tables.c:4633
 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:4777
+#: utils/misc/guc_tables.c:4634
 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:4788
+#: utils/misc/guc_tables.c:4645
 msgid "Sets the default compression method for compressible values."
 msgstr "Define el método de compresión por omisión para valores comprimibles."
 
-#: utils/misc/guc.c:4799
+#: utils/misc/guc_tables.c:4656
 msgid "Sets the transaction isolation level of each new transaction."
 msgstr "Nivel de aislación (isolation level) de transacciones nuevas."
 
-#: utils/misc/guc.c:4809
+#: utils/misc/guc_tables.c:4666
 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:4820
+#: utils/misc/guc_tables.c:4677
 msgid "Sets the display format for interval values."
 msgstr "Formato de salida para valores de intervalos."
 
-#: utils/misc/guc.c:4831
+#: utils/misc/guc_tables.c:4688
+msgid "Log level for reporting invalid ICU locale strings."
+msgstr ""
+
+#: utils/misc/guc_tables.c:4698
 msgid "Sets the verbosity of logged messages."
 msgstr "Verbosidad de los mensajes registrados."
 
-#: utils/misc/guc.c:4841
+#: utils/misc/guc_tables.c:4708
 msgid "Sets the message levels that are logged."
 msgstr "Nivel de mensajes registrados."
 
-#: utils/misc/guc.c:4852
+#: utils/misc/guc_tables.c:4719
 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:4863
+#: utils/misc/guc_tables.c:4730
 msgid "Sets the type of statements logged."
 msgstr "Define el tipo de sentencias que se registran."
 
-#: utils/misc/guc.c:4873
+#: utils/misc/guc_tables.c:4740
 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:4888
+#: utils/misc/guc_tables.c:4751
 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:4898
+#: utils/misc/guc_tables.c:4761
 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:4908
+#: utils/misc/guc_tables.c:4771
 msgid "Allows archiving of WAL files using archive_command."
 msgstr "Permite el archivado de WAL usando archive_command."
 
-#: utils/misc/guc.c:4918
+#: utils/misc/guc_tables.c:4781
 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:4928
+#: utils/misc/guc_tables.c:4791
 msgid "Enables logging of recovery-related debugging information."
 msgstr "Recolectar información de depuración relacionada con la recuperación."
 
-#: utils/misc/guc.c:4945
+#: utils/misc/guc_tables.c:4808
 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:4956
+#: utils/misc/guc_tables.c:4819
 #, fuzzy
 #| msgid "Sets the default statistics target."
 msgid "Sets the consistency of accesses to statistics data."
 msgstr "Definir el valor por omisión de toma de estadísticas."
 
-#: utils/misc/guc.c:4966
-#, fuzzy
-#| msgid "Compresses full-page writes written in WAL file."
+#: utils/misc/guc_tables.c:4829
 msgid "Compresses full-page writes written in WAL file with specified method."
-msgstr "Comprimir las imágenes de páginas completas al escribirlas a WAL."
+msgstr ""
 
-#: utils/misc/guc.c:4976
+#: utils/misc/guc_tables.c:4839
 msgid "Sets the level of information written to the WAL."
 msgstr "Establece el nivel de información escrita al WAL."
 
-#: utils/misc/guc.c:4986
+#: utils/misc/guc_tables.c:4849
 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:4996
+#: utils/misc/guc_tables.c:4859
 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:5006
+#: utils/misc/guc_tables.c:4869
 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:5016
+#: utils/misc/guc_tables.c:4879
 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:5026
+#: utils/misc/guc_tables.c:4889
 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:5037
+#: utils/misc/guc_tables.c:4900
 msgid "Use of huge pages on Linux or Windows."
 msgstr "Usar páginas grandes (huge) en Linux o Windows."
 
-#: utils/misc/guc.c:5047
+#: utils/misc/guc_tables.c:4910
 #, fuzzy
 #| msgid "cannot execute %s during recovery"
 msgid "Prefetch referenced blocks during recovery."
 msgstr "no se puede ejecutar %s durante la recuperación"
 
-#: utils/misc/guc.c:5048
+#: utils/misc/guc_tables.c:4911
 msgid "Look ahead in the WAL to find references to uncached data."
 msgstr "Busca adelantadamente en el WAL para encontrar referencias a datos que no están en cache."
 
-#: utils/misc/guc.c:5057
-msgid "Forces use of parallel query facilities."
-msgstr "Obliga al uso de la funcionalidad de consultas paralelas."
+#: utils/misc/guc_tables.c:4920
+#, fuzzy
+#| msgid "Enables the planner's use of parallel append plans."
+msgid "Forces the planner's use parallel query nodes."
+msgstr "Permitir el uso de planes «append» paralelos."
 
-#: utils/misc/guc.c:5058
-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_tables.c:4921
+msgid "This can be useful for testing the parallel query infrastructure by forcing the planner to generate plans which contains nodes which perform tuple communication between workers and the main process."
+msgstr ""
 
-#: utils/misc/guc.c:5068
+#: utils/misc/guc_tables.c:4933
 msgid "Chooses the algorithm for encrypting passwords."
 msgstr "Escoge el algoritmo para cifrar contraseñas."
 
-#: utils/misc/guc.c:5078
+#: utils/misc/guc_tables.c:4943
 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:5079
+#: utils/misc/guc_tables.c:4944
 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:5091
+#: utils/misc/guc_tables.c:4956
 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:5103
+#: utils/misc/guc_tables.c:4968
 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:5115
+#: utils/misc/guc_tables.c:4980
 msgid "Sets the method for synchronizing the data directory before crash recovery."
 msgstr "Establece el método para sincronizar el directorio de datos antes de la recuperación ante una caída."
 
-#: utils/misc/guc.c:5690 utils/misc/guc.c:5706
-#, c-format
-msgid "invalid configuration parameter name \"%s\""
-msgstr "nombre de parámetro de configuración «%s» no válido"
-
-#: utils/misc/guc.c:5692
-#, c-format
-msgid "Custom parameter names must be two or more simple identifiers separated by dots."
-msgstr "Los nombres de los parámetros personalizados deben ser dos o más identificadores sencillos separados por puntos."
+#: utils/misc/guc_tables.c:4989
+msgid "Controls when to replicate or apply each change."
+msgstr ""
 
-#: utils/misc/guc.c:5708
-#, fuzzy, c-format
-#| msgid "\"%s\" is a procedure."
-msgid "\"%s\" is a reserved prefix."
-msgstr "«%s» es un índice parcial."
+#: utils/misc/guc_tables.c:4990
+msgid "On the publisher, it allows streaming or serializing each change in logical decoding. On the subscriber, it allows serialization of all changes to files and notifies the parallel apply workers to read and apply them at the end of the transaction."
+msgstr ""
 
-#: utils/misc/guc.c:5722
+#: utils/misc/help_config.c:129
 #, c-format
-msgid "unrecognized configuration parameter \"%s\""
-msgstr "parámetro de configuración «%s» no reconocido"
+msgid "internal error: unrecognized run-time parameter type\n"
+msgstr "error interno: tipo parámetro no reconocido\n"
 
-#: utils/misc/guc.c:6114
+#: utils/misc/pg_controldata.c:48 utils/misc/pg_controldata.c:86
+#: utils/misc/pg_controldata.c:175 utils/misc/pg_controldata.c:214
 #, c-format
-msgid "%s: could not access directory \"%s\": %s\n"
-msgstr "%s: no se pudo acceder al directorio «%s»: %s\n"
+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"
 
-#: utils/misc/guc.c:6119
+#: utils/misc/pg_rusage.c:64
 #, 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"
+msgid "CPU: user: %d.%02d s, system: %d.%02d s, elapsed: %d.%02d s"
+msgstr "CPU: usuario: %d.%02d s, sistema: %d.%02d s, transcurrido: %d.%02d s"
 
-#: utils/misc/guc.c:6139
+#: utils/misc/rls.c:127
 #, c-format
-msgid ""
-"%s does not know where to find the server configuration file.\n"
-"You must specify the --config-file or -D invocation option or set the PGDATA environment variable.\n"
-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"
+msgid "query would be affected by row-level security policy for table \"%s\""
+msgstr "la consulta sería afectada por la política de seguridad de registros para la tabla «%s»"
 
-#: utils/misc/guc.c:6158
+#: utils/misc/rls.c:129
 #, 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"
+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/guc.c:6184
+#: utils/misc/timeout.c:524
 #, c-format
-msgid ""
-"%s does not know where to find the database system data.\n"
-"This can be specified as \"data_directory\" in \"%s\", or by the -D invocation option, or by the PGDATA environment variable.\n"
-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"
+msgid "cannot add more timeout reasons"
+msgstr "no se pueden agregar más razones de timeout"
 
-#: utils/misc/guc.c:6232
+#: utils/misc/tzparser.c:60
 #, c-format
-msgid ""
-"%s does not know where to find the \"hba\" configuration file.\n"
-"This can be specified as \"hba_file\" in \"%s\", or by the -D invocation option, or by the PGDATA environment variable.\n"
-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"
+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/guc.c:6255
+#: utils/misc/tzparser.c:72
 #, c-format
-msgid ""
-"%s does not know where to find the \"ident\" configuration file.\n"
-"This can be specified as \"ident_file\" in \"%s\", or by the -D invocation option, or by the PGDATA environment variable.\n"
-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:7186
-msgid "Value exceeds integer range."
-msgstr "El valor excede el rango para enteros."
+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/guc.c:7422
+#: utils/misc/tzparser.c:111
 #, 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)"
+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/guc.c:7458
+#: utils/misc/tzparser.c:120
 #, 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)"
+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/guc.c:7658 utils/misc/guc.c:9106
+#: utils/misc/tzparser.c:132
 #, c-format
-msgid "cannot set parameters during a parallel operation"
-msgstr "no se puede definir parámetros durante una operación paralela"
+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/guc.c:7675 utils/misc/guc.c:8930
+#: utils/misc/tzparser.c:168
 #, c-format
-msgid "parameter \"%s\" cannot be changed"
-msgstr "no se puede cambiar el parámetro «%s»"
+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/guc.c:7698 utils/misc/guc.c:7918 utils/misc/guc.c:8016
-#: utils/misc/guc.c:8114 utils/misc/guc.c:8238 utils/misc/guc.c:8341
-#: guc-file.l:353
+#: utils/misc/tzparser.c:236
 #, 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"
+msgid "time zone abbreviation \"%s\" is multiply defined"
+msgstr "abreviación de huso horario «%s» está definida múltiples veces"
 
-#: utils/misc/guc.c:7708
+#: utils/misc/tzparser.c:238
 #, c-format
-msgid "parameter \"%s\" cannot be changed now"
-msgstr "el parámetro «%s» no se puede cambiar en este momento"
+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/guc.c:7735 utils/misc/guc.c:7793 utils/misc/guc.c:8906
-#: utils/misc/guc.c:11805
+#: utils/misc/tzparser.c:300
 #, c-format
-msgid "permission denied to set parameter \"%s\""
-msgstr "se ha denegado el permiso para cambiar la opción «%s»"
+msgid "invalid time zone file name \"%s\""
+msgstr "nombre de huso horario «%s» no válido"
 
-#: utils/misc/guc.c:7773
+#: utils/misc/tzparser.c:313
 #, 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"
+msgid "time zone file recursion limit exceeded in file \"%s\""
+msgstr "límite de recursión excedido en el archivo «%s»"
 
-#: utils/misc/guc.c:7832
+#: utils/misc/tzparser.c:352 utils/misc/tzparser.c:365
 #, 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:8485 utils/misc/guc.c:8532 utils/misc/guc.c:10011
-#, fuzzy, c-format
-#| msgid "must be superuser or a member of pg_read_all_settings to examine \"%s\""
-msgid "must be superuser or have privileges of pg_read_all_settings to examine \"%s\""
-msgstr "debe ser superusuario o miembro del rol pg_read_all_settings para examinar «%s»"
+msgid "could not read time zone file \"%s\": %m"
+msgstr "no se pudo leer archivo de huso horario «%s»: %m"
 
-#: utils/misc/guc.c:8616
+#: utils/misc/tzparser.c:376
 #, c-format
-msgid "SET %s takes only one argument"
-msgstr "SET %s lleva sólo un argumento"
-
-#: utils/misc/guc.c:8896
-#, fuzzy, c-format
-#| msgid "permission denied for operator %s"
-msgid "permission denied to perform ALTER SYSTEM RESET ALL"
-msgstr "permiso denegado al operador %s"
+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/guc.c:8963
+#: utils/misc/tzparser.c:400
 #, 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"
+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/misc/guc.c:9008
+#: utils/mmgr/aset.c:446 utils/mmgr/generation.c:206 utils/mmgr/slab.c:367
 #, c-format
-msgid "could not parse contents of file \"%s\""
-msgstr "no se pudo interpretar el contenido del archivo «%s»"
+msgid "Failed while creating memory context \"%s\"."
+msgstr "Falla al crear el contexto de memoria «%s»."
 
-#: utils/misc/guc.c:9182
+#: utils/mmgr/dsa.c:531 utils/mmgr/dsa.c:1341
 #, c-format
-msgid "SET LOCAL TRANSACTION SNAPSHOT is not implemented"
-msgstr "SET LOCAL TRANSACTION SNAPSHOT no está implementado"
+msgid "could not attach to dynamic shared area"
+msgstr "no se pudo adjuntar al segmento de memoria compartida dinámica"
 
-#: utils/misc/guc.c:9269
+#: utils/mmgr/mcxt.c:1047 utils/mmgr/mcxt.c:1083 utils/mmgr/mcxt.c:1121
+#: utils/mmgr/mcxt.c:1159 utils/mmgr/mcxt.c:1247 utils/mmgr/mcxt.c:1278
+#: utils/mmgr/mcxt.c:1314 utils/mmgr/mcxt.c:1503 utils/mmgr/mcxt.c:1548
+#: utils/mmgr/mcxt.c:1605
 #, c-format
-msgid "SET requires parameter name"
-msgstr "SET requiere el nombre de un parámetro"
+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»."
 
-#: utils/misc/guc.c:9402
+#: utils/mmgr/mcxt.c:1210
 #, c-format
-msgid "attempt to redefine parameter \"%s\""
-msgstr "intento de cambiar la opción «%s»"
-
-#: utils/misc/guc.c:9729
-#, fuzzy, c-format
-#| msgid "invalid configuration parameter name \"%s\""
-msgid "invalid configuration parameter name \"%s\", removing it"
-msgstr "nombre de parámetro de configuración «%s» no válido"
+msgid "logging memory contexts of PID %d"
+msgstr "registrando contextos de memoria del PID %d"
 
-#: utils/misc/guc.c:9731
-#, fuzzy, c-format
-#| msgid "\"%s\" is not a sequence"
-msgid "\"%s\" is now a reserved prefix."
-msgstr "«%s» no es una secuencia"
+#: utils/mmgr/portalmem.c:188
+#, c-format
+msgid "cursor \"%s\" already exists"
+msgstr "el cursor «%s» ya existe"
 
-#: utils/misc/guc.c:11245
+#: utils/mmgr/portalmem.c:192
 #, c-format
-msgid "while setting parameter \"%s\" to \"%s\""
-msgstr "al establecer el parámetro «%s» a «%s»"
+msgid "closing existing cursor \"%s\""
+msgstr "cerrando el cursor «%s» preexistente"
 
-#: utils/misc/guc.c:11414
+#: utils/mmgr/portalmem.c:402
 #, c-format
-msgid "parameter \"%s\" could not be set"
-msgstr "no se pudo cambiar el parámetro «%s»"
+msgid "portal \"%s\" cannot be run"
+msgstr "el portal «%s» no puede ser ejecutado"
 
-#: utils/misc/guc.c:11506
+#: utils/mmgr/portalmem.c:480
 #, c-format
-msgid "could not parse setting for parameter \"%s\""
-msgstr "no se pudo interpretar el valor de para el parámetro «%s»"
+msgid "cannot drop pinned portal \"%s\""
+msgstr "no se puede eliminar el portal «pinned» «%s»"
 
-#: utils/misc/guc.c:11937
+#: utils/mmgr/portalmem.c:488
 #, c-format
-msgid "invalid value for parameter \"%s\": %g"
-msgstr "valor no válido para el parámetro «%s»: %g"
+msgid "cannot drop active portal \"%s\""
+msgstr "no se puede eliminar el portal activo «%s»"
 
-#: utils/misc/guc.c:12250
+#: utils/mmgr/portalmem.c:739
 #, 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."
+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/misc/guc.c:12262
+#: utils/mmgr/portalmem.c:1230
 #, c-format
-msgid "Bonjour is not supported by this build"
-msgstr "Bonjour no está soportado en este servidor"
+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/misc/guc.c:12275
+#: utils/sort/logtape.c:266 utils/sort/logtape.c:287
 #, c-format
-msgid "SSL is not supported by this build"
-msgstr "SSL no está soportado en este servidor"
+msgid "could not seek to block %ld of temporary file"
+msgstr "no se pudo posicionar (seek) en el bloque %ld del archivo temporal"
 
-#: utils/misc/guc.c:12287
+#: utils/sort/sharedtuplestore.c:463
 #, 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."
+msgid "unexpected chunk in shared tuplestore temporary file"
+msgstr "trozo inesperado en archivo temporal del tuplestore compartido"
 
-#: utils/misc/guc.c:12299
+#: utils/sort/sharedtuplestore.c:541
 #, 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."
+msgid "could not seek to block %u in shared tuplestore temporary file"
+msgstr "no se pudo posicionar (seek) en el bloque %u en el archivo temporal del tuplestore compartido"
 
-#: utils/misc/guc.c:12529
+#: utils/sort/tuplesort.c:2372
 #, 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()."
+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/misc/guc.c:12542
-#, c-format
-msgid "maintenance_io_concurrency must be set to 0 on platforms that lack posix_fadvise()."
-msgstr "maintenance_io_concurrency debe ser 0 en plataformas que no tienen posix_fadvise()."
-
-#: utils/misc/guc.c:12556
-#, c-format
-msgid "huge_page_size must be 0 on this platform."
-msgstr "huge_page_size debe ser 0 en esta plataforma."
-
-#: utils/misc/guc.c:12568
-#, fuzzy, c-format
-#| msgid "client_connection_check_interval must be set to 0 on platforms that lack POLLRDHUP."
-msgid "client_connection_check_interval must be set to 0 on this platform."
-msgstr "client_connection_check_interval debe ser 0 en plataformas que no tienen POLLRDHUP."
-
-#: utils/misc/guc.c:12680
-#, c-format
-msgid "invalid character"
-msgstr "carácter no válido"
-
-#: utils/misc/guc.c:12740
-#, 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:12780
-#, c-format
-msgid "multiple recovery targets specified"
-msgstr "múltiples valores de destino de recuperación especificados"
-
-#: utils/misc/guc.c:12781
-#, 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:12789
-#, c-format
-msgid "The only allowed value is \"immediate\"."
-msgstr "El único valor permitido es «immediate»."
-
-#: utils/misc/help_config.c:130
-#, c-format
-msgid "internal error: unrecognized run-time parameter type\n"
-msgstr "error interno: tipo parámetro no reconocido\n"
-
-#: utils/misc/pg_controldata.c:60 utils/misc/pg_controldata.c:138
-#: 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"
-
-#: utils/misc/pg_rusage.c:64
-#, c-format
-msgid "CPU: user: %d.%02d s, system: %d.%02d s, elapsed: %d.%02d s"
-msgstr "CPU: usuario: %d.%02d s, sistema: %d.%02d s, transcurrido: %d.%02d s"
-
-#: utils/misc/rls.c:127
-#, c-format
-msgid "query would be affected by row-level security policy for table \"%s\""
-msgstr "la consulta sería afectada por la política de seguridad de registros para la tabla «%s»"
-
-#: utils/misc/rls.c:129
-#, c-format
-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:524
-#, c-format
-msgid "cannot add more timeout reasons"
-msgstr "no se pueden agregar más razones de timeout"
-
-#: 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: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: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: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: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: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: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: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:300
-#, c-format
-msgid "invalid time zone file name \"%s\""
-msgstr "nombre de huso horario «%s» no válido"
-
-#: 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: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
-#, 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:400
-#, 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:477 utils/mmgr/generation.c:267 utils/mmgr/slab.c:239
-#, c-format
-msgid "Failed while creating memory context \"%s\"."
-msgstr "Falla al crear el contexto de memoria «%s»."
-
-#: utils/mmgr/dsa.c:519 utils/mmgr/dsa.c:1329
-#, c-format
-msgid "could not attach to dynamic shared area"
-msgstr "no se pudo adjuntar al segmento de memoria compartida dinámica"
-
-#: utils/mmgr/mcxt.c:889 utils/mmgr/mcxt.c:925 utils/mmgr/mcxt.c:963
-#: utils/mmgr/mcxt.c:1001 utils/mmgr/mcxt.c:1089 utils/mmgr/mcxt.c:1120
-#: utils/mmgr/mcxt.c:1156 utils/mmgr/mcxt.c:1208 utils/mmgr/mcxt.c:1243
-#: utils/mmgr/mcxt.c:1278
-#, 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»."
-
-#: utils/mmgr/mcxt.c:1052
-#, c-format
-msgid "logging memory contexts of PID %d"
-msgstr "registrando contextos de memoria del PID %d"
-
-#: utils/mmgr/portalmem.c:188
-#, c-format
-msgid "cursor \"%s\" already exists"
-msgstr "el cursor «%s» ya existe"
-
-#: utils/mmgr/portalmem.c:192
-#, c-format
-msgid "closing existing cursor \"%s\""
-msgstr "cerrando el cursor «%s» preexistente"
-
-#: utils/mmgr/portalmem.c:402
-#, c-format
-msgid "portal \"%s\" cannot be run"
-msgstr "el portal «%s» no puede ser ejecutado"
-
-#: utils/mmgr/portalmem.c:480
-#, c-format
-msgid "cannot drop pinned portal \"%s\""
-msgstr "no se puede eliminar el portal «pinned» «%s»"
-
-#: utils/mmgr/portalmem.c:488
-#, c-format
-msgid "cannot drop active portal \"%s\""
-msgstr "no se puede eliminar el portal activo «%s»"
-
-#: utils/mmgr/portalmem.c:739
-#, 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:1232
-#, 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:266 utils/sort/logtape.c:289
-#, c-format
-msgid "could not seek to block %ld of temporary file"
-msgstr "no se pudo posicionar (seek) en el bloque %ld del archivo temporal"
-
-#: utils/sort/logtape.c:295
-#, c-format
-msgid "could not read block %ld of temporary file: read only %zu of %zu bytes"
-msgstr "no se pudo leer el bloque %ld del archivo temporal: se leyeron sólo %zu de %zu bytes"
-
-#: utils/sort/sharedtuplestore.c:431 utils/sort/sharedtuplestore.c:440
-#: utils/sort/sharedtuplestore.c:463 utils/sort/sharedtuplestore.c:480
-#: utils/sort/sharedtuplestore.c:497
-#, 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:486
-#, c-format
-msgid "unexpected chunk in shared tuplestore temporary file"
-msgstr "trozo inesperado en archivo temporal del tuplestore compartido"
-
-#: utils/sort/sharedtuplestore.c:571
-#, c-format
-msgid "could not seek to block %u in shared tuplestore temporary file"
-msgstr "no se pudo posicionar (seek) en el bloque %u en el archivo temporal del tuplestore compartido"
-
-#: utils/sort/sharedtuplestore.c:578
-#, c-format
-msgid "could not read from shared tuplestore temporary file: read only %zu of %zu bytes"
-msgstr "no se pudo leer el archivo temporal del tuplestore compartido: se leyeron sólo %zu de %zu bytes"
-
-#: utils/sort/tuplesort.c:3322
-#, 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:4425
+#: utils/sort/tuplesortvariants.c:1364
 #, c-format
 msgid "could not create unique index \"%s\""
 msgstr "no se pudo crear el índice único «%s»"
 
-#: utils/sort/tuplesort.c:4427
+#: utils/sort/tuplesortvariants.c:1366
 #, c-format
 msgid "Key %s is duplicated."
 msgstr "La llave %s está duplicada."
 
-#: utils/sort/tuplesort.c:4428
+#: utils/sort/tuplesortvariants.c:1367
 #, c-format
 msgid "Duplicate keys exist."
 msgstr "Existe una llave duplicada."
@@ -28975,702 +29704,1035 @@ msgstr "Existe una llave duplicada."
 msgid "could not seek in tuplestore temporary file"
 msgstr "no se pudo posicionar (seek) en el archivo temporal del tuplestore"
 
-#: utils/sort/tuplestore.c:1477 utils/sort/tuplestore.c:1540
-#: utils/sort/tuplestore.c:1548
-#, c-format
-msgid "could not read from tuplestore temporary file: read only %zu of %zu bytes"
-msgstr "no se pudo leer el archivo temporal del tuplestore: se leyeron sólo %zu de %zu bytes"
-
-#: utils/time/snapmgr.c:570
+#: utils/time/snapmgr.c:571
 #, c-format
 msgid "The source transaction is not running anymore."
 msgstr "La transacción de origen ya no está en ejecución."
 
-#: utils/time/snapmgr.c:1164
+#: utils/time/snapmgr.c:1166
 #, c-format
 msgid "cannot export a snapshot from a subtransaction"
 msgstr "no se puede exportar snapshots desde una subtransacción"
 
-#: utils/time/snapmgr.c:1323 utils/time/snapmgr.c:1328
-#: utils/time/snapmgr.c:1333 utils/time/snapmgr.c:1348
-#: utils/time/snapmgr.c:1353 utils/time/snapmgr.c:1358
-#: utils/time/snapmgr.c:1373 utils/time/snapmgr.c:1378
-#: utils/time/snapmgr.c:1383 utils/time/snapmgr.c:1485
-#: utils/time/snapmgr.c:1501 utils/time/snapmgr.c:1526
+#: utils/time/snapmgr.c:1325 utils/time/snapmgr.c:1330
+#: utils/time/snapmgr.c:1335 utils/time/snapmgr.c:1350
+#: utils/time/snapmgr.c:1355 utils/time/snapmgr.c:1360
+#: utils/time/snapmgr.c:1375 utils/time/snapmgr.c:1380
+#: utils/time/snapmgr.c:1385 utils/time/snapmgr.c:1487
+#: utils/time/snapmgr.c:1503 utils/time/snapmgr.c:1528
 #, c-format
 msgid "invalid snapshot data in file \"%s\""
 msgstr "datos no válidos en archivo de snapshot «%s»"
 
-#: utils/time/snapmgr.c:1420
+#: utils/time/snapmgr.c:1422
 #, c-format
 msgid "SET TRANSACTION SNAPSHOT must be called before any query"
 msgstr "SET TRANSACTION SNAPSHOT debe ser llamado antes de cualquier consulta"
 
-#: utils/time/snapmgr.c:1429
+#: utils/time/snapmgr.c:1431
 #, c-format
 msgid "a snapshot-importing transaction must have isolation level SERIALIZABLE or REPEATABLE READ"
 msgstr "una transacción que importa un snapshot no debe tener nivel de aislación SERIALIZABLE o REPEATABLE READ"
 
-#: utils/time/snapmgr.c:1438 utils/time/snapmgr.c:1447
+#: utils/time/snapmgr.c:1440 utils/time/snapmgr.c:1449
 #, c-format
 msgid "invalid snapshot identifier: \"%s\""
 msgstr "identificador de snapshot no válido: «%s»"
 
-#: utils/time/snapmgr.c:1539
+#: utils/time/snapmgr.c:1541
 #, c-format
 msgid "a serializable transaction cannot import a snapshot from a non-serializable transaction"
 msgstr "una transacción serializable no puede importar un snapshot desde una transacción no serializable"
 
-#: utils/time/snapmgr.c:1543
+#: utils/time/snapmgr.c:1545
 #, c-format
 msgid "a non-read-only serializable transaction cannot import a snapshot from a read-only transaction"
 msgstr "una transacción serializable que no es de sólo lectura no puede importar un snapshot de una transacción de sólo lectura"
 
-#: utils/time/snapmgr.c:1558
+#: utils/time/snapmgr.c:1560
 #, 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:1146
+#: gram.y:1198
 #, c-format
 msgid "UNENCRYPTED PASSWORD is no longer supported"
 msgstr "UNENCRYPTED PASSWORD ya no está soportado"
 
-#: gram.y:1147
+#: gram.y:1199
 #, 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:1209
-#, c-format
-msgid "unrecognized role option \"%s\""
-msgstr "opción de rol «%s» no reconocida"
-
-#: gram.y:1474 gram.y:1490
+#: gram.y:1526 gram.y:1542
 #, 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:1647
+#: gram.y:1714
 #, c-format
 msgid "current database cannot be changed"
 msgstr "no se puede cambiar la base de datos activa"
 
-#: gram.y:1780
+#: gram.y:1847
 #, 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:2397
+#: gram.y:2464
 #, 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:2999
+#: gram.y:3060
 #, c-format
 msgid "sequence option \"%s\" not supported here"
 msgstr "la opción de secuencia «%s» no está soportado aquí"
 
-#: gram.y:3028
+#: gram.y:3089
 #, 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:3037
+#: gram.y:3098
 #, c-format
 msgid "remainder for hash partition provided more than once"
 msgstr "el remanente para partición de hash fue especificado más de una vez"
 
-#: gram.y:3044
+#: gram.y:3105
 #, c-format
 msgid "unrecognized hash partition bound specification \"%s\""
 msgstr "especificación de borde de partición hash «%s» no reconocida"
 
-#: gram.y:3052
+#: gram.y:3113
 #, c-format
 msgid "modulus for hash partition must be specified"
 msgstr "el módulo para una partición hash debe ser especificado"
 
-#: gram.y:3056
+#: gram.y:3117
 #, c-format
 msgid "remainder for hash partition must be specified"
 msgstr "remanente en partición hash debe ser especificado"
 
-#: gram.y:3264 gram.y:3298
+#: gram.y:3325 gram.y:3359
 #, c-format
 msgid "STDIN/STDOUT not allowed with PROGRAM"
 msgstr "STDIN/STDOUT no están permitidos con PROGRAM"
 
-#: gram.y:3270
+#: gram.y:3331
 #, c-format
 msgid "WHERE clause not allowed with COPY TO"
 msgstr "la cláusula WHERE no está permitida con COPY TO"
 
-#: gram.y:3609 gram.y:3616 gram.y:12759 gram.y:12767
+#: gram.y:3670 gram.y:3677 gram.y:12842 gram.y:12850
 #, c-format
 msgid "GLOBAL is deprecated in temporary table creation"
 msgstr "GLOBAL está obsoleto para la creación de tablas temporales"
 
-#: gram.y:3881
+#: gram.y:3953
 #, c-format
 msgid "for a generated column, GENERATED ALWAYS must be specified"
 msgstr "para una columna generada, GENERATED ALWAYS debe ser especificado"
 
-#: gram.y:4264
+#: gram.y:4336
 #, fuzzy, c-format
 #| msgid "return type %s is not supported for SQL functions"
 msgid "a column list with %s is only supported for ON DELETE actions"
 msgstr "el tipo de retorno %s no es soportado en funciones SQL"
 
-#: gram.y:4974
+#: gram.y:5048
 #, c-format
 msgid "CREATE EXTENSION ... FROM is no longer supported"
 msgstr "CREATE EXTENSION ... FROM ya no está soportado"
 
-#: gram.y:5672
+#: gram.y:5746
 #, c-format
 msgid "unrecognized row security option \"%s\""
 msgstr "opción de seguridad de registro «%s» no reconocida"
 
-#: gram.y:5673
+#: gram.y:5747
 #, c-format
 msgid "Only PERMISSIVE or RESTRICTIVE policies are supported currently."
 msgstr "sólo se admiten actualmente políticas PERMISSIVE o RESTRICTIVE."
 
-#: gram.y:5758
+#: gram.y:5832
 #, c-format
 msgid "CREATE OR REPLACE CONSTRAINT TRIGGER is not supported"
 msgstr "CREATE OR REPLACE CONSTRAINT TRIGGER no está soportado"
 
-#: gram.y:5795
+#: gram.y:5869
 msgid "duplicate trigger events specified"
 msgstr "se han especificado eventos de disparador duplicados"
 
-#: gram.y:5944
+#: gram.y:6018
 #, c-format
 msgid "conflicting constraint properties"
 msgstr "propiedades de restricción contradictorias"
 
-#: gram.y:6043
+#: gram.y:6117
 #, c-format
 msgid "CREATE ASSERTION is not yet implemented"
 msgstr "CREATE ASSERTION no está implementado"
 
-#: gram.y:6451
+#: gram.y:6525
 #, c-format
 msgid "RECHECK is no longer required"
 msgstr "RECHECK ya no es requerido"
 
-#: gram.y:6452
+#: gram.y:6526
 #, c-format
 msgid "Update your data type."
 msgstr "Actualice su tipo de datos."
 
-#: gram.y:8308
+#: gram.y:8399
 #, c-format
 msgid "aggregates cannot have output arguments"
 msgstr "las funciones de agregación no pueden tener argumentos de salida"
 
-#: gram.y:10993 gram.y:11012
+#: gram.y:11075 gram.y:11094
 #, c-format
 msgid "WITH CHECK OPTION not supported on recursive views"
 msgstr "WITH CHECK OPTION no está soportado con vistas recursivas"
 
-#: gram.y:12898
+#: gram.y:12981
 #, c-format
 msgid "LIMIT #,# syntax is not supported"
 msgstr "la sintaxis LIMIT #,# no está soportada"
 
-#: gram.y:12899
+#: gram.y:12982
 #, c-format
 msgid "Use separate LIMIT and OFFSET clauses."
 msgstr "Use cláusulas LIMIT y OFFSET separadas."
 
-#: gram.y:13252 gram.y:13278
-#, c-format
-msgid "VALUES in FROM must have an alias"
-msgstr "VALUES en FROM debe tener un alias"
-
-#: gram.y:13253 gram.y:13279
-#, c-format
-msgid "For example, FROM (VALUES ...) [AS] foo."
-msgstr "Por ejemplo, FROM (VALUES ...) [AS] foo."
-
-#: gram.y:13258 gram.y:13284
-#, c-format
-msgid "subquery in FROM must have an alias"
-msgstr "las subconsultas en FROM deben tener un alias"
-
-#: gram.y:13259 gram.y:13285
-#, c-format
-msgid "For example, FROM (SELECT ...) [AS] foo."
-msgstr "Por ejemplo, FROM (SELECT ...) [AS] foo."
-
-#: gram.y:13803
+#: gram.y:13842
 #, c-format
 msgid "only one DEFAULT value is allowed"
 msgstr "Sólo se permite un valor DEFAULT"
 
-#: gram.y:13812
+#: gram.y:13851
 #, c-format
 msgid "only one PATH value per column is allowed"
 msgstr "sólo se permite un valor de PATH por columna"
 
-#: gram.y:13821
+#: gram.y:13860
 #, 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:13830
+#: gram.y:13869
 #, c-format
 msgid "unrecognized column option \"%s\""
 msgstr "opción de columna «%s» no reconocida"
 
-#: gram.y:14084
+#: gram.y:14123
 #, 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:14093
+#: gram.y:14132
 #, 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:14596
+#: gram.y:14635
 #, 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:14601
+#: gram.y:14640
 #, 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:14778
+#: gram.y:14817
 #, c-format
 msgid "UNIQUE predicate is not yet implemented"
 msgstr "el predicado UNIQUE no está implementado"
 
-#: gram.y:15156
+#: gram.y:15233
 #, 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:15161
+#: gram.y:15238
 #, c-format
 msgid "cannot use DISTINCT with WITHIN GROUP"
 msgstr "no se permite DISTINCT con WITHIN GROUP"
 
-#: gram.y:15166
+#: gram.y:15243
 #, c-format
 msgid "cannot use VARIADIC with WITHIN GROUP"
 msgstr "no se permite VARIADIC con WITHIN GROUP"
 
-#: gram.y:15703 gram.y:15727
+#: gram.y:15922 gram.y:15946
 #, c-format
 msgid "frame start cannot be UNBOUNDED FOLLOWING"
 msgstr "el inicio de «frame» no puede ser UNBOUNDED FOLLOWING"
 
-#: gram.y:15708
+#: gram.y:15927
 #, 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:15732
+#: gram.y:15951
 #, c-format
 msgid "frame end cannot be UNBOUNDED PRECEDING"
 msgstr "el fin de «frame» no puede ser UNBOUNDED PRECEDING"
 
-#: gram.y:15738
+#: gram.y:15957
 #, 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:15745
+#: gram.y:15964
 #, 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:16370
+#: gram.y:16723
 #, c-format
 msgid "type modifier cannot have parameter name"
 msgstr "el modificador de tipo no puede tener nombre de parámetro"
 
-#: gram.y:16376
+#: gram.y:16729
 #, c-format
 msgid "type modifier cannot have ORDER BY"
 msgstr "el modificador de tipo no puede tener ORDER BY"
 
-#: gram.y:16444 gram.y:16451 gram.y:16458
+#: gram.y:16797 gram.y:16804 gram.y:16811
 #, 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:16548 gram.y:17983
+#: gram.y:16901 gram.y:18358
 #, c-format
 msgid "WITH TIES cannot be specified without ORDER BY clause"
 msgstr "la opción WITH TIES no puede ser especificada sin una cláusula ORDER BY"
 
-#: gram.y:17662 gram.y:17849
+#: gram.y:18037 gram.y:18224
 msgid "improper use of \"*\""
 msgstr "uso impropio de «*»"
 
-#: gram.y:17913
+#: gram.y:18288
 #, 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:17950
+#: gram.y:18325
 #, c-format
 msgid "multiple ORDER BY clauses not allowed"
 msgstr "no se permiten múltiples cláusulas ORDER BY"
 
-#: gram.y:17961
+#: gram.y:18336
 #, c-format
 msgid "multiple OFFSET clauses not allowed"
 msgstr "no se permiten múltiples cláusulas OFFSET"
 
-#: gram.y:17970
+#: gram.y:18345
 #, c-format
 msgid "multiple LIMIT clauses not allowed"
 msgstr "no se permiten múltiples cláusulas LIMIT"
 
-#: gram.y:17979
+#: gram.y:18354
 #, c-format
 msgid "multiple limit options not allowed"
 msgstr "no se permiten múltiples opciones limit"
 
-#: gram.y:18006
+#: gram.y:18381
 #, c-format
 msgid "multiple WITH clauses not allowed"
 msgstr "no se permiten múltiples cláusulas WITH"
 
-#: gram.y:18199
+#: gram.y:18562
 #, 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:18332
+#: gram.y:18695
 #, 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:18370 gram.y:18383
+#: gram.y:18733 gram.y:18746
 #, 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:18396
+#: gram.y:18759
 #, 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:18409
+#: gram.y:18772
 #, c-format
 msgid "%s constraints cannot be marked NO INHERIT"
 msgstr "las restricciones %s no pueden ser marcadas NO INHERIT"
 
-#: gram.y:18433
+#: gram.y:18794
+#, c-format
+msgid "unrecognized partitioning strategy \"%s\""
+msgstr "estrategia de particionamiento «%s» no reconocida"
+
+#: gram.y:18818
 #, fuzzy, c-format
 #| msgid "invalid publication_names syntax"
 msgid "invalid publication object list"
 msgstr "sintaxis de publication_names no válida"
 
-#: gram.y:18434
-#, fuzzy, c-format
-#| msgid "One of TABLE or ALL TABLES IN SCHEMA must be specified before a standalone table or schema name."
+#: gram.y:18819
+#, c-format
 msgid "One of TABLE or TABLES IN SCHEMA must be specified before a standalone table or schema name."
-msgstr "Uno de TABLE o ALL TABLES IN SCHEMA debe especificarse antes de un nombre de tabla o esquema solitario."
+msgstr ""
 
-#: gram.y:18450
+#: gram.y:18835
 #, fuzzy, c-format
 #| msgid "invalid file name argument"
 msgid "invalid table name at or near"
 msgstr "el nombre de archivo usado como argumento no es válido"
 
-#: gram.y:18471
+#: gram.y:18856
 #, fuzzy, c-format
 #| msgid "WHERE clause not allowed with COPY TO"
 msgid "WHERE clause not allowed for schema"
 msgstr "la cláusula WHERE no está permitida con COPY TO"
 
-#: gram.y:18478
+#: gram.y:18863
 #, fuzzy, c-format
 #| msgid "interval specification not allowed here"
 msgid "column specification not allowed for schema"
 msgstr "la especificación de intervalo no está permitida aquí"
 
-#: gram.y:18492
+#: gram.y:18877
 #, fuzzy, c-format
 #| msgid "invalid statement name \"%s\" on line %d"
 msgid "invalid schema name at or near"
 msgstr "nombre sentencia no válida «%s» en línea %d"
 
-#: guc-file.l:314
-#, c-format
-msgid "unrecognized configuration parameter \"%s\" in file \"%s\" line %d"
-msgstr "parámetro de configuración «%s» no reconocido en el archivo «%s» línea %d"
-
-#: 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: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
+#: guc-file.l:192
 #, c-format
 msgid "empty configuration file name: \"%s\""
 msgstr "nombre de archivo de configuración vacío: «%s»"
 
-#: guc-file.l:595
+#: guc-file.l:209
 #, 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
+#: guc-file.l:229
 #, c-format
 msgid "configuration file recursion in \"%s\""
 msgstr "recursión de archivos de configuración en «%s»"
 
-#: guc-file.l:642
+#: guc-file.l:245
+#, 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:256
 #, c-format
 msgid "skipping missing configuration file \"%s\""
 msgstr "omitiendo el archivo de configuración faltante «%s»"
 
-#: guc-file.l:896
+#: guc-file.l:511
 #, 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
+#: guc-file.l:521
 #, 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
+#: guc-file.l:541
 #, 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
+#: jsonpath_gram.y:529
 #, 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:530
-#, fuzzy, c-format
-#| msgid "unrecognized flag character \"%.*s\" in LIKE_REGEX predicate"
 msgid "Unrecognized flag character \"%.*s\" in LIKE_REGEX predicate."
-msgstr "parámetro «%.*s» no reconocido en predicado LIKE_REGEX"
+msgstr ""
 
-#: jsonpath_gram.y:584
+#: jsonpath_gram.y:607
 #, 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
+#: jsonpath_scan.l:375
 #, 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
+#: jsonpath_scan.l:382
 #, 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:303 repl_gram.y:335
+#: jsonpath_scan.l:614
+#, fuzzy, c-format
+#| msgid "could not encode server key"
+msgid "could not convert unicode to server encoding"
+msgstr "no se pudo codificar la llave del servidor"
+
+#: repl_gram.y:301 repl_gram.y:333
 #, c-format
 msgid "invalid timeline %u"
 msgstr "timeline %u no válido"
 
-#: repl_scanner.l:142
-msgid "invalid streaming start location"
-msgstr "posición de inicio de flujo de WAL no válida"
-
-#: repl_scanner.l:199 scan.l:724
-msgid "unterminated quoted string"
-msgstr "una cadena de caracteres entre comillas está inconclusa"
-
-#: scan.l:465
+#: scan.l:482
 msgid "unterminated /* comment"
 msgstr "un comentario /* está inconcluso"
 
-#: scan.l:485
+#: scan.l:502
 msgid "unterminated bit string literal"
 msgstr "una cadena de bits está inconclusa"
 
-#: scan.l:499
+#: scan.l:516
 msgid "unterminated hexadecimal string literal"
 msgstr "una cadena hexadecimal está inconclusa"
 
-#: scan.l:549
+#: scan.l:566
 #, c-format
 msgid "unsafe use of string constant with Unicode escapes"
 msgstr "uso inseguro de literal de cadena con escapes Unicode"
 
-#: scan.l:550
+#: scan.l:567
 #, 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:611
+#: scan.l:628
 msgid "unhandled previous state in xqs"
 msgstr "estado previo no manejado en xqs"
 
-#: scan.l:685
+#: scan.l:702
 #, c-format
 msgid "Unicode escapes must be \\uXXXX or \\UXXXXXXXX."
 msgstr "Los escapes Unicode deben ser \\uXXXX o \\UXXXXXXXX."
 
-#: scan.l:696
+#: scan.l:713
 #, c-format
 msgid "unsafe use of \\' in a string literal"
 msgstr "uso inseguro de \\' en un literal de cadena"
 
-#: scan.l:697
+#: scan.l:714
 #, 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:769
+#: scan.l:741
+msgid "unterminated quoted string"
+msgstr "una cadena de caracteres entre comillas está inconclusa"
+
+#: scan.l:786
 msgid "unterminated dollar-quoted string"
 msgstr "una cadena separada por $ está inconclusa"
 
-#: scan.l:786 scan.l:796
+#: scan.l:803 scan.l:813
 msgid "zero-length delimited identifier"
 msgstr "un identificador delimitado tiene largo cero"
 
-#: scan.l:807 syncrep_scanner.l:91
+#: scan.l:824
 msgid "unterminated quoted identifier"
 msgstr "un identificador entre comillas está inconcluso"
 
-#: scan.l:970
+#: scan.l:987
 msgid "operator too long"
 msgstr "el operador es demasiado largo"
 
-#: scan.l:983
+#: scan.l:1000
 msgid "trailing junk after parameter"
 msgstr "basura sigue después de un parámetro"
 
-#: scan.l:1008 scan.l:1012 scan.l:1016 scan.l:1020
+#: scan.l:1021
+#, fuzzy
+#| msgid "invalid hexadecimal string literal"
+msgid "invalid hexadecimal integer"
+msgstr "cadena hexadecimal no válida"
+
+#: scan.l:1025
+#, fuzzy
+#| msgid "invalid Datum pointer"
+msgid "invalid octal integer"
+msgstr "puntero a Datum no válido"
+
+#: scan.l:1029
+#, fuzzy
+#| msgid "invalid binary \"%s\""
+msgid "invalid binary integer"
+msgstr "el binario «%s» no es válido"
+
+#: scan.l:1049 scan.l:1053 scan.l:1057 scan.l:1061 scan.l:1065 scan.l:1069
+#: scan.l:1073
 msgid "trailing junk after numeric literal"
 msgstr "basura sigue después de un literal numérico"
 
 #. translator: %s is typically the translation of "syntax error"
-#: scan.l:1183
+#: scan.l:1236
 #, 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:1191
+#: scan.l:1244
 #, c-format
 msgid "%s at or near \"%s\""
 msgstr "%s en o cerca de «%s»"
 
-#: scan.l:1382
+#: scan.l:1434
 #, c-format
 msgid "nonstandard use of \\' in a string literal"
 msgstr "uso no estandar de \\' en un literal de cadena"
 
-#: scan.l:1383
+#: scan.l:1435
 #, 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:1392
+#: scan.l:1444
 #, c-format
 msgid "nonstandard use of \\\\ in a string literal"
 msgstr "uso no estandar de \\\\ en un literal de cadena"
 
-#: scan.l:1393
+#: scan.l:1445
 #, 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:1407
+#: scan.l:1459
 #, c-format
 msgid "nonstandard use of escape in a string literal"
 msgstr "uso no estandar de escape en un literal de cadena"
 
-#: scan.l:1408
+#: scan.l:1460
 #, 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'."
 
 #, c-format
-#~ msgid "unknown compression option \"%s\""
-#~ msgstr "opción de compresión «%s» desconocida"
+#~ msgid "could not identify current directory: %m"
+#~ msgstr "no se pudo identificar el directorio actual: %m"
+
+#, c-format
+#~ msgid "could not read binary \"%s\""
+#~ msgstr "no se pudo leer el binario «%s»"
+
+#, c-format
+#~ msgid "could not load library \"%s\": error code %lu"
+#~ msgstr "no se pudo cargar la biblioteca «%s»: código de error %lu"
+
+#, c-format
+#~ msgid "cannot create restricted tokens on this platform: error code %lu"
+#~ msgstr "no se pueden crear tokens restrigidos en esta plataforma: código de error %lu"
+
+#, c-format
+#~ msgid "could not remove file or directory \"%s\": %m"
+#~ msgstr "no se pudo borrar el archivo o el directorio «%s»: %m"
+
+#, c-format
+#~ msgid "tablespaces are not supported on this platform"
+#~ msgstr "tablespaces no están soportados en esta plataforma"
+
+#, c-format
+#~ msgid "invalid record offset at %X/%X"
+#~ msgstr "posición de registro no válida en %X/%X"
+
+#, 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"
+
+#, 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"
+
+#, 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"
+
+#, c-format
+#~ msgid "unexpected pageaddr %X/%X in log segment %s, offset %u"
+#~ msgstr "pageaddr %X/%X inesperado en archivo %s, posición %u"
+
+#, 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"
+
+#, 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"
+
+#, c-format
+#~ msgid "invalid checkpoint link in backup_label file"
+#~ msgstr "el enlace del punto de control en backup_label no es válido"
+
+#, c-format
+#~ msgid "invalid primary checkpoint record"
+#~ msgstr "el registro del punto de control primario no es válido"
+
+#, 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"
+
+#, 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"
+
+#, c-format
+#~ msgid "invalid length of primary checkpoint record"
+#~ msgstr "la longitud del registro del punto de control primario no es válida"
+
+#, c-format
+#~ msgid "promote trigger file found: %s"
+#~ msgstr "se encontró el archivo disparador de promoción: %s"
+
+#, 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"
+
+#, c-format
+#~ msgid "could not read from temporary file: %m"
+#~ msgstr "no se pudo leer del archivo temporal: %m"
+
+#, c-format
+#~ msgid "language with OID %u does not exist"
+#~ msgstr "no existe el lenguaje con OID %u"
+
+#, c-format
+#~ msgid "operator with OID %u does not exist"
+#~ msgstr "no existe el operador con OID %u"
+
+#, c-format
+#~ msgid "operator class with OID %u does not exist"
+#~ msgstr "no existe la clase de operadores con OID %u"
+
+#, c-format
+#~ msgid "operator family with OID %u does not exist"
+#~ msgstr "no existe la familia de operadores con OID %u"
+
+#, 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"
+
+#, 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"
+
+#, c-format
+#~ msgid "conversion with OID %u does not exist"
+#~ msgstr "no existe la conversión con OID %u"
+
+#, c-format
+#~ msgid "extension with OID %u does not exist"
+#~ msgstr "no existe la extensión con OID %u"
+
+#, c-format
+#~ msgid "statistics object with OID %u does not exist"
+#~ msgstr "no existe el objeto de estadísticas con OID %u"
+
+#, c-format
+#~ msgid "must have CREATEROLE privilege"
+#~ msgstr "debe tener privilegio CREATEROLE"
+
+#, 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»"
+
+#, c-format
+#~ msgid "invalid list syntax for \"publish\" option"
+#~ msgstr "sintaxis de entrada no válida para la opción «publish»"
+
+#, 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"
+
+#, 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»"
+
+#, c-format
+#~ msgid "The owner of a subscription must be a superuser."
+#~ msgstr "El dueño de una suscripción debe ser un superusuario."
+
+#, 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 "Omita la expresión de generación en la definición de la columna en la tabla hija para heredar la expresión de generación de la tabla padre."
+
+#, c-format
+#~ msgid "column \"%s\" in child table has a conflicting generation expression"
+#~ msgstr "la columna «%s» en tabla hija tiene una expresión de generación en conflicto"
+
+#, 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"
+
+#, c-format
+#~ msgid "Triggers on partitioned tables cannot have transition tables."
+#~ msgstr "Los triggers en tablas particionadas no pueden tener tablas de transición."
+
+#, c-format
+#~ msgid "must be superuser to create superusers"
+#~ msgstr "debe ser superusuario para crear superusuarios"
+
+#, c-format
+#~ msgid "must be superuser to create replication users"
+#~ msgstr "debe ser superusuario para crear usuarios de replicación"
+
+#, c-format
+#~ msgid "must be superuser to create bypassrls users"
+#~ msgstr "debe ser superusuario para crear usuarios con bypassrls"
+
+#, c-format
+#~ msgid "must be superuser to alter superuser roles or change superuser attribute"
+#~ msgstr "debe ser superusuario para modificar roles de superusuario o cambiar atributos de superusuario"
+
+#, c-format
+#~ msgid "must be superuser to alter replication roles or change replication attribute"
+#~ msgstr "debe ser superusuario para modificar roles de replicación o cambiar atributos de replicación"
+
+#, c-format
+#~ msgid "must be superuser to change bypassrls attribute"
+#~ msgstr "debe ser superusuario para cambiar el atributo bypassrls"
+
+#, c-format
+#~ msgid "must be superuser to alter superusers"
+#~ msgstr "debe ser superusuario para alterar superusuarios"
+
+#, c-format
+#~ msgid "must be superuser to drop superusers"
+#~ msgstr "debe ser superusuario para eliminar superusuarios"
+
+#, c-format
+#~ msgid "must be superuser to rename superusers"
+#~ msgstr "debe ser superusuario para cambiar el nombre a superusuarios"
+
+#, c-format
+#~ msgid "must be superuser to set grantor"
+#~ msgstr "debe ser superusuario para especificar el cedente (grantor)"
+
+#, c-format
+#~ msgid "skipping \"%s\" --- only superuser can vacuum it"
+#~ msgstr "omitiendo «%s»: sólo un superusuario puede aplicarle VACUUM"
+
+#, 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"
+
+#, 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"
+
+#, c-format
+#~ msgid "skipping \"%s\" --- only superuser can analyze it"
+#~ msgstr "omitiendo «%s»: sólo un superusuario puede analizarla"
+
+#, 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"
+
+#, 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"
+
+#, c-format
+#~ msgid "oldest xmin is far in the past"
+#~ msgstr "xmin más antiguo es demasiado antiguo"
+
+#, 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."
+
+#, 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"
+
+#, c-format
+#~ msgid "LDAP over SSL is not supported on this platform."
+#~ msgstr "LDAP sobre SSL no está soportado en esta plataforma."
+
+#, c-format
+#~ msgid "could not open secondary authentication file \"@%s\" as \"%s\": %m"
+#~ msgstr "no se pudo abrir el archivo secundario de autentificación «@%s» como «%s»: %m"
+
+#, c-format
+#~ msgid "local connections are not supported by this build"
+#~ msgstr "las conexiones locales no están soportadas en este servidor"
+
+#, c-format
+#~ msgid "could not open usermap file \"%s\": %m"
+#~ msgstr "no se pudo abrir el archivo de mapa de usuarios «%s»: %m"
+
+#, 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"
+
+#, c-format
+#~ msgid "generated columns are not supported on partitions"
+#~ msgstr "las columnas generadas no están soportadas en particiones"
 
 #, c-format
-#~ msgid "compression algorithm \"%s\" expects a compression level between %d and %d"
-#~ msgstr "el algoritmo de compresion «%s» espera un nivel de compresión entre %d y %d"
+#~ msgid "could not load pg_hba.conf"
+#~ msgstr "no se pudo cargar pg_hba.conf"
 
 #, c-format
-#~ msgid "failed to locate backup block with ID %d in WAL record"
-#~ msgstr "no se pudo localizar un bloque de respaldo con ID %d en el registro WAL"
+#~ msgid "select() failed in postmaster: %m"
+#~ msgstr "select() falló en postmaster: %m"
 
 #, c-format
-#~ msgid "image at %X/%X compressed with %s not supported by build, block %d"
-#~ msgstr "imagen en %X/%X comprimida con %s que no está soportado por esta instalación, bloque %d"
+#~ msgid "logical decoding cannot be used while in recovery"
+#~ msgstr "la decodificación lógica no puede ejecutarse durante la recuperación"
 
 #, c-format
-#~ msgid "image at %X/%X compressed with unknown method, block %d"
-#~ msgstr "imagen %X/%X comprimida con un método desconocido, bloque %d"
+#~ msgid "could not read from streaming transaction's changes file \"%s\": %m"
+#~ msgstr "no se pudo leer el archivo de cambios de transacción en flujo «%s»: %m"
 
 #, 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 read from streaming transaction's subxact file \"%s\": %m"
+#~ msgstr "no se pudo leer el archivo subxact de transacción en flujo «%s»: %m"
 
 #, c-format
-#~ msgid "Table \"%s\" in schema \"%s\" is already part of the publication, adding the same schema is not supported."
-#~ msgstr "La tabla «%s» en el esquema «%s» ya es parte de la publicación, agregar el mismo esquema no está soportado."
+#~ 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"
 
 #, c-format
-#~ msgid "The schema \"%s\" and same schema's table \"%s\" cannot be part of the same publication \"%s\"."
-#~ msgstr "El esquema «%s» y la tabla del mismo esquema «%s» no pueden ser parte de la misma publicación «%s»."
+#~ msgid "invalidating slot \"%s\" because its restart_lsn %X/%X exceeds max_slot_wal_keep_size"
+#~ msgstr "invalidando el slot «%s» porque su restart_lsn %X/%X excede max_slot_wal_keep_size"
 
 #, c-format
-#~ msgid "SQL/JSON item cannot be cast to target type"
-#~ msgstr "el elemento SQL/JSON no puede ser convertido al tipo de destino"
+#~ msgid "cannot convert partitioned table \"%s\" to a view"
+#~ msgstr "no se puede convertir la tabla particionada «%s» en vista"
 
 #, c-format
-#~ msgid "cannot use non-string types with WITH UNIQUE KEYS clause"
-#~ msgstr "no se pueden usar tipos que no son cadenas de texto con la cláusula WITH UNIQUE KEYS"
+#~ msgid "cannot convert partition \"%s\" to a view"
+#~ msgstr "no se puede convertir la partición «%s» en vista"
 
 #, c-format
-#~ msgid "Try returning a string type or bytea."
-#~ msgstr "Intente retornando un tipo de cadena de texto o bytea."
+#~ msgid "could not convert table \"%s\" to a view because it is not empty"
+#~ msgstr "no se pudo convertir la tabla «%s» en vista porque no está vacía"
 
 #, c-format
-#~ msgid "unrecognized compression algorithm \"%s\""
-#~ msgstr "algoritmo de compresión no reconocido: \"%s\""
+#~ msgid "could not convert table \"%s\" to a view because it has triggers"
+#~ msgstr "no se pudo convertir la tabla «%s» en vista porque tiene triggers"
+
+#, c-format
+#~ msgid "In particular, the table cannot be involved in any foreign key relationships."
+#~ msgstr "En particular, la tabla no puede estar involucrada en relaciones de llave foránea."
+
+#, c-format
+#~ msgid "could not convert table \"%s\" to a view because it has indexes"
+#~ msgstr "no se pudo convertir la tabla «%s» en vista porque tiene índices"
+
+#, c-format
+#~ msgid "could not convert table \"%s\" to a view because it has child tables"
+#~ msgstr "no se pudo convertir la tabla «%s» en vista porque tiene tablas hijas"
+
+#, c-format
+#~ msgid "could not convert table \"%s\" to a view because it has parent tables"
+#~ msgstr "no se pudo convertir la tabla «%s» en vista porque tiene tablas padres"
+
+#, c-format
+#~ msgid "could not convert table \"%s\" to a view because it has row security enabled"
+#~ msgstr "no se pudo convertir la tabla «%s» en vista porque tiene seguridad de registros activada"
+
+#, c-format
+#~ msgid "could not convert table \"%s\" to a view because it has row security policies"
+#~ msgstr "no se pudo convertir la tabla «%s» en vista porque tiene políticas de seguridad de registros"
+
+#, c-format
+#~ msgid "could not link file \"%s\" to \"%s\": %m"
+#~ msgstr "no se pudo enlazar (link) el archivo «%s» a «%s»: %m"
+
+#, 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"
+
+#, c-format
+#~ msgid "must be a superuser to cancel superuser query"
+#~ msgstr "debe ser superusuario para cancelar una consulta de superusuario"
+
+#, c-format
+#~ 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"
+
+#, c-format
+#~ msgid "int2vector has too many elements"
+#~ msgstr "int2vector tiene demasiados elementos"
+
+#, c-format
+#~ msgid "oidvector has too many elements"
+#~ msgstr "el oidvector tiene demasiados elementos"
+
+#, c-format
+#~ msgid "argument %d cannot be null"
+#~ msgstr "el argumento %d no puede ser null"
+
+#, c-format
+#~ msgid "Object keys should be text."
+#~ msgstr "Las llaves de un objeto deben ser de texto."
+
+#, c-format
+#~ msgid "Apply system library package updates."
+#~ msgstr "Aplique actualizaciones de paquetes de bibliotecas del sistema."
+
+#, c-format
+#~ msgid "gtsvector_in not implemented"
+#~ msgstr "gtsvector_in no está implementado"
+
+#, c-format
+#~ msgid " GSS (authenticated=%s, encrypted=%s)"
+#~ msgstr " GSS (autenticado=%s, cifrado=%s)"
+
+#, 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"
+
+#~ 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."
+
+#~ 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."
+
+#~ msgid "Forces use of parallel query facilities."
+#~ msgstr "Obliga al uso de la funcionalidad de consultas paralelas."
+
+#~ 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."
+
+#, c-format
+#~ msgid "could not read block %ld of temporary file: read only %zu of %zu bytes"
+#~ msgstr "no se pudo leer el bloque %ld del archivo temporal: se leyeron sólo %zu de %zu bytes"
+
+#, c-format
+#~ msgid "could not read from shared tuplestore temporary file"
+#~ msgstr "no se pudo leer desde el archivo temporal del tuplestore compartido"
+
+#, c-format
+#~ msgid "could not read from shared tuplestore temporary file: read only %zu of %zu bytes"
+#~ msgstr "no se pudo leer el archivo temporal del tuplestore compartido: se leyeron sólo %zu de %zu bytes"
+
+#, c-format
+#~ msgid "could not read from tuplestore temporary file: read only %zu of %zu bytes"
+#~ msgstr "no se pudo leer el archivo temporal del tuplestore: se leyeron sólo %zu de %zu bytes"
+
+#, c-format
+#~ msgid "VALUES in FROM must have an alias"
+#~ msgstr "VALUES en FROM debe tener un alias"
+
+#, c-format
+#~ msgid "For example, FROM (VALUES ...) [AS] foo."
+#~ msgstr "Por ejemplo, FROM (VALUES ...) [AS] foo."
+
+#, c-format
+#~ msgid "subquery in FROM must have an alias"
+#~ msgstr "las subconsultas en FROM deben tener un alias"
+
+#, c-format
+#~ msgid "For example, FROM (SELECT ...) [AS] foo."
+#~ msgstr "Por ejemplo, FROM (SELECT ...) [AS] foo."
+
+#~ msgid "invalid streaming start location"
+#~ msgstr "posición de inicio de flujo de WAL no válida"
index 9c6fda4b751b17cb81c744a08d0cb59d81040bb6..8e9b1c14aa2594b874c48e81c2f5e9ea9ac7469b 100644 (file)
@@ -12,7 +12,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: psql (PostgreSQL) 15\n"
 "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n"
-"POT-Creation-Date: 2022-09-24 23:17+0000\n"
+"POT-Creation-Date: 2023-05-09 09:18+0000\n"
 "PO-Revision-Date: 2022-11-04 13:02+0100\n"
 "Last-Translator: Carlos Chapi <carloswaldo@babelruins.org>\n"
 "Language-Team: PgSQL-es-Ayuda <pgsql-es-ayuda@lists.postgresql.org>\n"
@@ -43,55 +43,48 @@ msgstr "detalle: "
 msgid "hint: "
 msgstr "consejo: "
 
-#: ../../common/exec.c:149 ../../common/exec.c:266 ../../common/exec.c:312
-#, c-format
-msgid "could not identify current directory: %m"
-msgstr "no se pudo identificar el directorio actual: %m"
-
-#: ../../common/exec.c:168
-#, c-format
-msgid "invalid binary \"%s\""
+#: ../../common/exec.c:172
+#, fuzzy, c-format
+#| msgid "invalid binary \"%s\""
+msgid "invalid binary \"%s\": %m"
 msgstr "el binario «%s» no es válido"
 
-#: ../../common/exec.c:218
-#, c-format
-msgid "could not read binary \"%s\""
+#: ../../common/exec.c:215
+#, fuzzy, c-format
+#| msgid "could not read binary \"%s\""
+msgid "could not read binary \"%s\": %m"
 msgstr "no se pudo leer el binario «%s»"
 
-#: ../../common/exec.c:226
+#: ../../common/exec.c:223
 #, c-format
 msgid "could not find a \"%s\" to execute"
 msgstr "no se pudo encontrar un «%s» para ejecutar"
 
-#: ../../common/exec.c:282 ../../common/exec.c:321
-#, c-format
-msgid "could not change directory to \"%s\": %m"
-msgstr "no se pudo cambiar al directorio «%s»: %m"
-
-#: ../../common/exec.c:299
-#, c-format
-msgid "could not read symbolic link \"%s\": %m"
-msgstr "no se pudo leer el enlace simbólico «%s»: %m"
+#: ../../common/exec.c:250
+#, fuzzy, c-format
+#| msgid "could not reopen file \"%s\" as stderr: %m"
+msgid "could not resolve path \"%s\" to absolute form: %m"
+msgstr "no se pudo reabrir «%s» para error estándar: %m"
 
-#: ../../common/exec.c:422
+#: ../../common/exec.c:412
 #, c-format
 msgid "%s() failed: %m"
 msgstr "%s() falló: %m"
 
-#: ../../common/exec.c:560 ../../common/exec.c:605 ../../common/exec.c:697
-#: command.c:1320 command.c:3316 command.c:3365 command.c:3489 input.c:227
+#: ../../common/exec.c:550 ../../common/exec.c:595 ../../common/exec.c:687
+#: command.c:1352 command.c:3437 command.c:3486 command.c:3610 input.c:226
 #: mainloop.c:80 mainloop.c:398
 #, 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:162
+#: ../../common/fe_memutils.c:98 ../../common/fe_memutils.c:161
 #, c-format
 msgid "out of memory\n"
 msgstr "memoria agotada\n"
 
-#: ../../common/fe_memutils.c:92 ../../common/fe_memutils.c:154
+#: ../../common/fe_memutils.c:92 ../../common/fe_memutils.c:153
 #, c-format
 msgid "cannot duplicate null pointer (internal error)\n"
 msgstr "no se puede duplicar un puntero nulo (error interno)\n"
@@ -101,7 +94,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:576
+#: ../../common/username.c:45 command.c:613
 msgid "user does not exist"
 msgstr "el usuario no existe"
 
@@ -110,32 +103,32 @@ 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"
 
-#: ../../common/wait_error.c:45
+#: ../../common/wait_error.c:55
 #, c-format
 msgid "command not executable"
 msgstr "la orden no es ejecutable"
 
-#: ../../common/wait_error.c:49
+#: ../../common/wait_error.c:59
 #, c-format
 msgid "command not found"
 msgstr "orden no encontrada"
 
-#: ../../common/wait_error.c:54
+#: ../../common/wait_error.c:64
 #, c-format
 msgid "child process exited with exit code %d"
 msgstr "el proceso hijo terminó con código de salida %d"
 
-#: ../../common/wait_error.c:62
+#: ../../common/wait_error.c:72
 #, c-format
 msgid "child process was terminated by exception 0x%X"
 msgstr "el proceso hijo fue terminado por una excepción 0x%X"
 
-#: ../../common/wait_error.c:66
+#: ../../common/wait_error.c:76
 #, c-format
 msgid "child process was terminated by signal %d: %s"
 msgstr "el proceso hijo fue terminado por una señal %d: %s"
 
-#: ../../common/wait_error.c:72
+#: ../../common/wait_error.c:82
 #, c-format
 msgid "child process exited with unrecognized status %d"
 msgstr "el proceso hijo terminó con código no reconocido %d"
@@ -155,287 +148,321 @@ msgid_plural "(%lu rows)"
 msgstr[0] "(%lu fila)"
 msgstr[1] "(%lu filas)"
 
-#: ../../fe_utils/print.c:3109
+#: ../../fe_utils/print.c:3153
 #, c-format
 msgid "Interrupted\n"
 msgstr "Interrumpido\n"
 
-#: ../../fe_utils/print.c:3173
+#: ../../fe_utils/print.c:3217
 #, 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:3213
+#: ../../fe_utils/print.c:3257
 #, 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:3471
+#: ../../fe_utils/print.c:3515
 #, c-format
 msgid "invalid output format (internal error): %d"
 msgstr "formato de salida no válido (error interno): %d"
 
-#: ../../fe_utils/psqlscan.l:702
+#: ../../fe_utils/psqlscan.l:717
 #, c-format
 msgid "skipping recursive expansion of variable \"%s\""
 msgstr "saltando expansión recursiva de la variable «%s»"
 
-#: ../../port/thread.c:100 ../../port/thread.c:136
+#: ../../port/thread.c:50 ../../port/thread.c:86
 #, c-format
 msgid "could not look up local user ID %d: %s"
 msgstr "no se pudo buscar el usuario local de ID %d: %s"
 
-#: ../../port/thread.c:105 ../../port/thread.c:141
+#: ../../port/thread.c:55 ../../port/thread.c:91
 #, c-format
 msgid "local user with ID %d does not exist"
 msgstr "no existe un usuario local con ID %d"
 
-#: command.c:233
+#: command.c:234
 #, c-format
 msgid "invalid command \\%s"
 msgstr "orden \\%s no válida"
 
-#: command.c:235
+#: command.c:236
 #, c-format
 msgid "Try \\? for help."
 msgstr "Digite \\? para obtener ayuda."
 
-#: command.c:253
+#: command.c:254
 #, c-format
 msgid "\\%s: extra argument \"%s\" ignored"
 msgstr "\\%s: argumento extra «%s» ignorado"
 
-#: command.c:305
+#: command.c:306
 #, 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:574
+#: command.c:611
 #, 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:593
+#: command.c:630
 #, c-format
 msgid "\\%s: could not change directory to \"%s\": %m"
 msgstr "\\%s: no se pudo cambiar directorio a «%s»: %m"
 
-#: command.c:618
+#: command.c:654
 #, c-format
 msgid "You are currently not connected to a database.\n"
 msgstr "No está conectado a una base de datos.\n"
 
-#: command.c:628
+#: command.c:664
 #, 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:631
+#: command.c:667
 #, 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:637
+#: command.c:673
 #, 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:640
+#: command.c:676
 #, 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:1031 command.c:1126 command.c:2660
+#: command.c:1064 command.c:1157 command.c:2680
 #, c-format
 msgid "no query buffer"
 msgstr "no hay búfer de consulta"
 
-#: command.c:1064 command.c:5497
+#: command.c:1097 command.c:5676
 #, c-format
 msgid "invalid line number: %s"
 msgstr "número de línea no válido: %s"
 
-#: command.c:1202
+#: command.c:1235
 msgid "No changes"
 msgstr "Sin cambios"
 
-#: command.c:1281
+#: command.c:1313
 #, 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:1316 command.c:2119 command.c:3312 command.c:3511 command.c:5599
-#: common.c:177 common.c:226 common.c:395 common.c:1137 common.c:1155
-#: common.c:1229 common.c:1336 common.c:1374 common.c:1459 common.c:1495
-#: copy.c:488 copy.c:722 help.c:66 large_obj.c:157 large_obj.c:192
+#: command.c:1348 command.c:2150 command.c:3433 command.c:3630 command.c:5782
+#: common.c:182 common.c:231 common.c:400 common.c:1102 common.c:1120
+#: common.c:1194 common.c:1313 common.c:1351 common.c:1444 common.c:1480
+#: copy.c:486 copy.c:720 help.c:66 large_obj.c:157 large_obj.c:192
 #: large_obj.c:254 startup.c:304
 #, c-format
 msgid "%s"
 msgstr "%s"
 
-#: command.c:1323
+#: command.c:1355
 msgid "There is no previous error."
 msgstr "No hay error anterior."
 
-#: command.c:1436
+#: command.c:1468
 #, c-format
 msgid "\\%s: missing right parenthesis"
 msgstr "\\%s: falta el paréntesis derecho"
 
-#: command.c:1520 command.c:1650 command.c:1955 command.c:1969 command.c:1988
-#: command.c:2172 command.c:2414 command.c:2627 command.c:2667
+#: command.c:1552 command.c:1682 command.c:1986 command.c:2000 command.c:2019
+#: command.c:2201 command.c:2442 command.c:2647 command.c:2687
 #, c-format
 msgid "\\%s: missing required argument"
 msgstr "\\%s: falta argumento requerido"
 
-#: command.c:1781
+#: command.c:1813
 #, c-format
 msgid "\\elif: cannot occur after \\else"
 msgstr "\\elif: no puede ocurrir después de \\else"
 
-#: command.c:1786
+#: command.c:1818
 #, c-format
 msgid "\\elif: no matching \\if"
 msgstr "\\elif: no hay un \\if coincidente"
 
-#: command.c:1850
+#: command.c:1882
 #, c-format
 msgid "\\else: cannot occur after \\else"
 msgstr "\\else: no puede ocurrir después de \\else"
 
-#: command.c:1855
+#: command.c:1887
 #, c-format
 msgid "\\else: no matching \\if"
 msgstr "\\else: no hay un \\if coincidente"
 
-#: command.c:1895
+#: command.c:1927
 #, c-format
 msgid "\\endif: no matching \\if"
 msgstr "\\endif: no hay un \\if coincidente"
 
-#: command.c:2052
+#: command.c:2083
 msgid "Query buffer is empty."
 msgstr "El búfer de consulta está vacío."
 
-#: command.c:2095
+#: command.c:2126
 #, c-format
 msgid "Enter new password for user \"%s\": "
 msgstr "Ingrese nueva contraseña para usuario «%s»: "
 
-#: command.c:2099
+#: command.c:2130
 msgid "Enter it again: "
 msgstr "Ingrésela nuevamente: "
 
-#: command.c:2108
+#: command.c:2139
 #, c-format
 msgid "Passwords didn't match."
 msgstr "Las constraseñas no coinciden."
 
-#: command.c:2207
+#: command.c:2236
 #, c-format
 msgid "\\%s: could not read value for variable"
 msgstr "%s: no se pudo leer el valor para la variable"
 
-#: command.c:2310
+#: command.c:2338
 msgid "Query buffer reset (cleared)."
 msgstr "El búfer de consulta ha sido reiniciado (limpiado)."
 
-#: command.c:2332
+#: command.c:2360
 #, c-format
 msgid "Wrote history to file \"%s\".\n"
 msgstr "Se escribió la historia en el archivo «%s».\n"
 
-#: command.c:2419
+#: command.c:2447
 #, c-format
 msgid "\\%s: environment variable name must not contain \"=\""
 msgstr "\\%s: el nombre de variable de ambiente no debe contener «=»"
 
-#: command.c:2467
+#: command.c:2495
 #, c-format
 msgid "function name is required"
 msgstr "el nombre de la función es requerido"
 
-#: command.c:2469
+#: command.c:2497
 #, c-format
 msgid "view name is required"
 msgstr "el nombre de la vista es requerido"
 
-#: command.c:2599
+#: command.c:2619
 msgid "Timing is on."
 msgstr "El despliegue de duración está activado."
 
-#: command.c:2601
+#: command.c:2621
 msgid "Timing is off."
 msgstr "El despliegue de duración está desactivado."
 
-#: command.c:2686 command.c:2714 command.c:3952 command.c:3955 command.c:3958
-#: command.c:3964 command.c:3966 command.c:3992 command.c:4002 command.c:4014
-#: command.c:4028 command.c:4055 command.c:4113 common.c:73 copy.c:331
-#: copy.c:403 psqlscanslash.l:784 psqlscanslash.l:795 psqlscanslash.l:805
+#: command.c:2707 command.c:2745 command.c:4072 command.c:4075 command.c:4078
+#: command.c:4084 command.c:4086 command.c:4112 command.c:4122 command.c:4134
+#: command.c:4148 command.c:4175 command.c:4233 common.c:78 copy.c:329
+#: copy.c:401 psqlscanslash.l:788 psqlscanslash.l:800 psqlscanslash.l:818
 #, c-format
 msgid "%s: %m"
 msgstr "%s: %m"
 
-#: command.c:3113 startup.c:243 startup.c:293
+#: command.c:2734 copy.c:388
+#, c-format
+msgid "%s: %s"
+msgstr "%s: %s"
+
+#: command.c:2804 command.c:2850
+#, fuzzy, c-format
+#| msgid "filter variable \"%s\" specified more than once"
+msgid "\\watch: interval value is specified more than once"
+msgstr "la variable de filtro «%s» fue especificada más de una vez"
+
+#: command.c:2814 command.c:2860
+#, fuzzy, c-format
+#| msgid "incorrectly formed variable \"%s\""
+msgid "\\watch: incorrect interval value \"%s\""
+msgstr "variable formada incorrectamente «%s»"
+
+#: command.c:2824
+#, fuzzy, c-format
+#| msgid "search column \"%s\" specified more than once"
+msgid "\\watch: iteration count is specified more than once"
+msgstr "columna de búsqueda «%s» fue especificada más de una vez"
+
+#: command.c:2834
+#, c-format
+msgid "\\watch: incorrect iteration count \"%s\""
+msgstr ""
+
+#: command.c:2841
+#, fuzzy, c-format
+#| msgid "unrecognized parameter \"%s\""
+msgid "\\watch: unrecognized parameter \"%s\""
+msgstr "parámetro «%s» no reconocido"
+
+#: command.c:3234 startup.c:243 startup.c:293
 msgid "Password: "
 msgstr "Contraseña: "
 
-#: command.c:3118 startup.c:290
+#: command.c:3239 startup.c:290
 #, c-format
 msgid "Password for user %s: "
 msgstr "Contraseña para usuario %s: "
 
-#: command.c:3174
+#: command.c:3295
 #, c-format
 msgid "Do not give user, host, or port separately when using a connection string"
 msgstr "No proporcione usuario, host o puerto de forma separada al usar una cadena de conexión"
 
-#: command.c:3209
+#: command.c:3330
 #, c-format
 msgid "No database connection exists to re-use parameters from"
 msgstr "No existe una conexión de base de datos para poder reusar sus parámetros"
 
-#: command.c:3517
+#: command.c:3636
 #, c-format
 msgid "Previous connection kept"
 msgstr "Se ha mantenido la conexión anterior"
 
-#: command.c:3523
+#: command.c:3642
 #, c-format
 msgid "\\connect: %s"
 msgstr "\\connect: %s"
 
-#: command.c:3579
+#: command.c:3698
 #, 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:3582
+#: command.c:3701
 #, 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:3588
+#: command.c:3707
 #, 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:3591
+#: command.c:3710
 #, 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:3596
+#: command.c:3715
 #, 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:3636
+#: command.c:3755
 #, c-format
 msgid "%s (%s, server %s)\n"
 msgstr "%s (%s, servidor %s)\n"
 
-#: command.c:3649
+#: command.c:3768
 #, c-format
 msgid ""
 "WARNING: %s major version %s, server major version %s.\n"
@@ -444,29 +471,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:3686
+#: command.c:3805
 #, c-format
 msgid "SSL connection (protocol: %s, cipher: %s, compression: %s)\n"
 msgstr "Conexión SSL (protocolo: %s, cifrado: %s, compresión: %s)\n"
 
-#: command.c:3687 command.c:3688
+#: command.c:3806 command.c:3807
 msgid "unknown"
 msgstr "desconocido"
 
-#: command.c:3689 help.c:42
+#: command.c:3808 help.c:42
 msgid "off"
 msgstr "desactivado"
 
-#: command.c:3689 help.c:42
+#: command.c:3808 help.c:42
 msgid "on"
 msgstr "activado"
 
-#: command.c:3703
+#: command.c:3822
 #, c-format
 msgid "GSSAPI-encrypted connection\n"
 msgstr "Conexión Cifrada GSSAPI\n"
 
-#: command.c:3723
+#: command.c:3842
 #, c-format
 msgid ""
 "WARNING: Console code page (%u) differs from Windows code page (%u)\n"
@@ -479,269 +506,297 @@ msgstr ""
 "            Vea la página de referencia de psql «Notes for Windows users»\n"
 "            para obtener más detalles.\n"
 
-#: command.c:3828
+#: command.c:3947
 #, 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:3857
+#: command.c:3977
 #, c-format
 msgid "could not start editor \"%s\""
 msgstr "no se pudo iniciar el editor «%s»"
 
-#: command.c:3859
+#: command.c:3979
 #, c-format
 msgid "could not start /bin/sh"
 msgstr "no se pudo iniciar /bin/sh"
 
-#: command.c:3909
+#: command.c:4029
 #, c-format
 msgid "could not locate temporary directory: %s"
 msgstr "no se pudo ubicar el directorio temporal: %s"
 
-#: command.c:3936
+#: command.c:4056
 #, c-format
 msgid "could not open temporary file \"%s\": %m"
 msgstr "no se pudo abrir archivo temporal «%s»: %m"
 
-#: command.c:4272
+#: command.c:4392
 #, 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:4292
+#: command.c:4412
 #, 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:4311
+#: command.c:4431
 #, 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:4326
+#: command.c:4446
 #, 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:4341
+#: command.c:4461
 #, 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:4356
+#: command.c:4476
 #, 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:4399
+#: command.c:4528
+#, c-format
+msgid "\\pset: allowed xheader_width values are full (default), column, page, or a number specifying the exact width."
+msgstr ""
+
+#: command.c:4542
 #, 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:4404
+#: command.c:4547
 #, 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:4541 command.c:4729
+#: command.c:4684 command.c:4885
 #, c-format
 msgid "\\pset: unknown option: %s"
 msgstr "\\pset: opción desconocida: %s"
 
-#: command.c:4561
+#: command.c:4704
 #, c-format
 msgid "Border style is %d.\n"
 msgstr "El estilo de borde es %d.\n"
 
-#: command.c:4567
+#: command.c:4710
 #, c-format
 msgid "Target width is unset.\n"
 msgstr "El ancho no está definido.\n"
 
-#: command.c:4569
+#: command.c:4712
 #, c-format
 msgid "Target width is %d.\n"
 msgstr "El ancho es %d.\n"
 
-#: command.c:4576
+#: command.c:4719
 #, c-format
 msgid "Expanded display is on.\n"
 msgstr "Se ha activado el despliegue expandido.\n"
 
-#: command.c:4578
+#: command.c:4721
 #, c-format
 msgid "Expanded display is used automatically.\n"
 msgstr "El despliegue expandido se usa automáticamente.\n"
 
-#: command.c:4580
+#: command.c:4723
 #, c-format
 msgid "Expanded display is off.\n"
 msgstr "Se ha desactivado el despliegue expandido.\n"
 
-#: command.c:4586
+#: command.c:4730
+#, fuzzy, c-format
+#| msgid "Expanded display is off.\n"
+msgid "Expanded header width is 'full'.\n"
+msgstr "Se ha desactivado el despliegue expandido.\n"
+
+#: command.c:4732
+#, fuzzy, c-format
+#| msgid "Expanded display is on.\n"
+msgid "Expanded header width is 'column'.\n"
+msgstr "Se ha activado el despliegue expandido.\n"
+
+#: command.c:4734
+#, c-format
+msgid "Expanded header width is 'page'.\n"
+msgstr ""
+
+#: command.c:4736
+#, fuzzy, c-format
+#| msgid "Target width is %d.\n"
+msgid "Expanded header width is %d.\n"
+msgstr "El ancho es %d.\n"
+
+#: command.c:4742
 #, c-format
 msgid "Field separator for CSV is \"%s\".\n"
 msgstr "El separador de campos para CSV es «%s».\n"
 
-#: command.c:4594 command.c:4602
+#: command.c:4750 command.c:4758
 #, c-format
 msgid "Field separator is zero byte.\n"
 msgstr "El separador de campos es el byte cero.\n"
 
-#: command.c:4596
+#: command.c:4752
 #, c-format
 msgid "Field separator is \"%s\".\n"
 msgstr "El separador de campos es «%s».\n"
 
-#: command.c:4609
+#: command.c:4765
 #, c-format
 msgid "Default footer is on.\n"
 msgstr "El pie por omisión está activo.\n"
 
-#: command.c:4611
+#: command.c:4767
 #, c-format
 msgid "Default footer is off.\n"
 msgstr "El pie de página por omisión está desactivado.\n"
 
-#: command.c:4617
+#: command.c:4773
 #, c-format
 msgid "Output format is %s.\n"
 msgstr "El formato de salida es %s.\n"
 
-#: command.c:4623
+#: command.c:4779
 #, c-format
 msgid "Line style is %s.\n"
 msgstr "El estilo de línea es %s.\n"
 
-#: command.c:4630
+#: command.c:4786
 #, c-format
 msgid "Null display is \"%s\".\n"
 msgstr "Despliegue de nulos es «%s».\n"
 
-#: command.c:4638
+#: command.c:4794
 #, c-format
 msgid "Locale-adjusted numeric output is on.\n"
 msgstr "La salida numérica ajustada localmente está habilitada.\n"
 
-#: command.c:4640
+#: command.c:4796
 #, c-format
 msgid "Locale-adjusted numeric output is off.\n"
 msgstr "La salida numérica ajustada localmente está deshabilitada.\n"
 
-#: command.c:4647
+#: command.c:4803
 #, c-format
 msgid "Pager is used for long output.\n"
 msgstr "El paginador se usará para salida larga.\n"
 
-#: command.c:4649
+#: command.c:4805
 #, c-format
 msgid "Pager is always used.\n"
 msgstr "El paginador se usará siempre.\n"
 
-#: command.c:4651
+#: command.c:4807
 #, c-format
 msgid "Pager usage is off.\n"
 msgstr "El paginador no se usará.\n"
 
-#: command.c:4657
+#: command.c:4813
 #, 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:4667 command.c:4677
+#: command.c:4823 command.c:4833
 #, c-format
 msgid "Record separator is zero byte.\n"
 msgstr "El separador de filas es el byte cero.\n"
 
-#: command.c:4669
+#: command.c:4825
 #, c-format
 msgid "Record separator is <newline>.\n"
 msgstr "El separador de filas es <salto de línea>.\n"
 
-#: command.c:4671
+#: command.c:4827
 #, c-format
 msgid "Record separator is \"%s\".\n"
 msgstr "El separador de filas es «%s».\n"
 
-#: command.c:4684
+#: command.c:4840
 #, c-format
 msgid "Table attributes are \"%s\".\n"
 msgstr "Los atributos de tabla son «%s».\n"
 
-#: command.c:4687
+#: command.c:4843
 #, c-format
 msgid "Table attributes unset.\n"
 msgstr "Los atributos de tabla han sido indefinidos.\n"
 
-#: command.c:4694
+#: command.c:4850
 #, c-format
 msgid "Title is \"%s\".\n"
 msgstr "El título es «%s».\n"
 
-#: command.c:4696
+#: command.c:4852
 #, c-format
 msgid "Title is unset.\n"
 msgstr "El título ha sido indefinido.\n"
 
-#: command.c:4703
+#: command.c:4859
 #, c-format
 msgid "Tuples only is on.\n"
 msgstr "Mostrar sólo filas está activado.\n"
 
-#: command.c:4705
+#: command.c:4861
 #, c-format
 msgid "Tuples only is off.\n"
 msgstr "Mostrar sólo filas está desactivado.\n"
 
-#: command.c:4711
+#: command.c:4867
 #, c-format
 msgid "Unicode border line style is \"%s\".\n"
 msgstr "El estilo Unicode de borde es «%s».\n"
 
-#: command.c:4717
+#: command.c:4873
 #, c-format
 msgid "Unicode column line style is \"%s\".\n"
 msgstr "El estilo de línea Unicode de columna es «%s».\n"
 
-#: command.c:4723
+#: command.c:4879
 #, c-format
 msgid "Unicode header line style is \"%s\".\n"
 msgstr "El estilo de línea Unicode de encabezado es «%s».\n"
 
-#: command.c:4956
+#: command.c:5127
 #, c-format
 msgid "\\!: failed"
 msgstr "\\!: falló"
 
-#: command.c:4990
+#: command.c:5161
 #, c-format
 msgid "\\watch cannot be used with an empty query"
 msgstr "\\watch no puede ser usado con una consulta vacía"
 
-#: command.c:5022
+#: command.c:5193
 #, c-format
 msgid "could not set timer: %m"
 msgstr "no se pudo establecer un temporizador: %m"
 
-#: command.c:5084
+#: command.c:5256
 #, c-format
 msgid "%s\t%s (every %gs)\n"
 msgstr "%s\t%s (cada %gs)\n"
 
-#: command.c:5087
+#: command.c:5259
 #, c-format
 msgid "%s (every %gs)\n"
 msgstr "%s (cada %gs)\n"
 
-#: command.c:5148
+#: command.c:5327
 #, c-format
 msgid "could not wait for signals: %m"
 msgstr "no se pudo esperar señales: %m"
 
-#: command.c:5206 command.c:5213 common.c:568 common.c:575 common.c:1118
+#: command.c:5385 command.c:5392 common.c:592 common.c:599 common.c:1083
 #, c-format
 msgid ""
 "********* QUERY **********\n"
@@ -754,107 +809,107 @@ msgstr ""
 "**************************\n"
 "\n"
 
-#: command.c:5392
+#: command.c:5571
 #, c-format
 msgid "\"%s.%s\" is not a view"
 msgstr "«%s.%s» no es una vista"
 
-#: command.c:5408
+#: command.c:5587
 #, c-format
 msgid "could not parse reloptions array"
 msgstr "no se pudo interpretar el array reloptions"
 
-#: common.c:162
+#: common.c:167
 #, c-format
 msgid "cannot escape without active connection"
 msgstr "no se puede escapar sin una conexión activa"
 
-#: common.c:203
+#: common.c:208
 #, 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:307
+#: common.c:312
 #, c-format
 msgid "connection to server was lost"
 msgstr "se ha perdido la conexión al servidor"
 
-#: common.c:311
+#: common.c:316
 #, 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:316
+#: common.c:321
 #, c-format
 msgid "Failed.\n"
 msgstr "Falló.\n"
 
-#: common.c:333
+#: common.c:338
 #, c-format
 msgid "Succeeded.\n"
 msgstr "Con éxito.\n"
 
-#: common.c:385 common.c:1054
+#: common.c:390 common.c:1021
 #, c-format
 msgid "unexpected PQresultStatus: %d"
 msgstr "PQresultStatus no esperado: %d"
 
-#: common.c:507
+#: common.c:531
 #, c-format
 msgid "Time: %.3f ms\n"
 msgstr "Duración: %.3f ms\n"
 
-#: common.c:522
+#: common.c:546
 #, c-format
 msgid "Time: %.3f ms (%02d:%06.3f)\n"
 msgstr "Duración: %.3f ms (%02d:%06.3f)\n"
 
-#: common.c:531
+#: common.c:555
 #, c-format
 msgid "Time: %.3f ms (%02d:%02d:%06.3f)\n"
 msgstr "Duración: %.3f ms (%02d:%02d:%06.3f)\n"
 
-#: common.c:538
+#: common.c:562
 #, 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:562 common.c:619 common.c:1089 describe.c:6135
+#: common.c:586 common.c:643 common.c:1054 describe.c:6156
 #, c-format
 msgid "You are currently not connected to a database."
 msgstr "No está conectado a una base de datos."
 
-#: common.c:650
+#: common.c:674
 #, 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:653
+#: common.c:677
 #, 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:686 common.c:705
+#: common.c:708
 #, c-format
 msgid "could not print result table: %m"
 msgstr "no se pudo mostrar la tabla de resultados: %m"
 
-#: common.c:726
+#: common.c:728
 #, c-format
 msgid "no rows returned for \\gset"
 msgstr "\\gset no retornó renglón alguno"
 
-#: common.c:731
+#: common.c:733
 #, c-format
 msgid "more than one row returned for \\gset"
 msgstr "\\gset retornó más de un renglón"
 
-#: common.c:749
+#: common.c:751
 #, c-format
 msgid "attempt to \\gset into specially treated variable \"%s\" ignored"
 msgstr "se ignoró intentó de hacer \\gset a variable con tratamiento especial «%s»"
 
-#: common.c:1098
+#: common.c:1063
 #, c-format
 msgid ""
 "***(Single step mode: verify command)*******************************************\n"
@@ -865,37 +920,32 @@ msgstr ""
 "%s\n"
 "***(presione enter para continuar, o x y enter para cancelar)*******************\n"
 
-#: common.c:1181
+#: common.c:1146
 #, c-format
 msgid "STATEMENT:  %s"
 msgstr "SENTENCIA:  %s"
 
-#: common.c:1217
+#: common.c:1182
 #, c-format
 msgid "unexpected transaction status (%d)"
 msgstr "estado de transacción inesperado (%d)"
 
-#: common.c:1358 describe.c:2020
+#: common.c:1335 describe.c:2026
 msgid "Column"
 msgstr "Columna"
 
-#: common.c:1359 describe.c:170 describe.c:358 describe.c:376 describe.c:1037
-#: describe.c:1193 describe.c:1725 describe.c:1749 describe.c:2021
-#: describe.c:3891 describe.c:4103 describe.c:4342 describe.c:4504
-#: describe.c:5767
+#: common.c:1336 describe.c:170 describe.c:358 describe.c:376 describe.c:1046
+#: describe.c:1200 describe.c:1732 describe.c:1756 describe.c:2027
+#: describe.c:3900 describe.c:4112 describe.c:4351 describe.c:4513
+#: describe.c:5788
 msgid "Type"
 msgstr "Tipo"
 
-#: common.c:1408
+#: common.c:1385
 #, 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"
 
-#: common.c:1561
-#, c-format
-msgid "\\watch cannot be used with COPY"
-msgstr "no se puede usar \\watch con COPY"
-
 #: copy.c:98
 #, c-format
 msgid "\\copy: arguments required"
@@ -911,46 +961,41 @@ msgstr "\\copy: error de procesamiento en «%s»"
 msgid "\\copy: parse error at end of line"
 msgstr "\\copy: error de procesamiento al final de la línea"
 
-#: copy.c:328
+#: copy.c:326
 #, c-format
 msgid "could not execute command \"%s\": %m"
 msgstr "no se pudo ejecutar la orden «%s»: %m"
 
-#: copy.c:344
+#: copy.c:342
 #, c-format
 msgid "could not stat file \"%s\": %m"
 msgstr "no se pudo hacer stat al archivo «%s»: %m"
 
-#: copy.c:348
+#: copy.c:346
 #, c-format
 msgid "%s: cannot copy from/to a directory"
 msgstr "%s: no se puede copiar desde/hacia un directorio"
 
-#: copy.c:385
+#: copy.c:383
 #, 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:390
-#, c-format
-msgid "%s: %s"
-msgstr "%s: %s"
-
-#: copy.c:453 copy.c:463
+#: copy.c:451 copy.c:461
 #, c-format
 msgid "could not write COPY data: %m"
 msgstr "no se pudo escribir datos COPY: %m"
 
-#: copy.c:469
+#: copy.c:467
 #, c-format
 msgid "COPY data transfer failed: %s"
 msgstr "falló la transferencia de datos COPY: %s"
 
-#: copy.c:530
+#: copy.c:528
 msgid "canceled by user"
 msgstr "cancelada por el usuario"
 
-#: copy.c:541
+#: copy.c:539
 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."
@@ -958,11 +1003,11 @@ 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:684
+#: copy.c:682
 msgid "aborted because of read failure"
 msgstr "se abortó por un error de lectura"
 
-#: copy.c:718
+#: copy.c:716
 msgid "trying to exit copy mode"
 msgstr "tratando de salir del modo copy"
 
@@ -1011,21 +1056,21 @@ msgstr "\\crosstabview: nombre de columna «%s» ambiguo"
 msgid "\\crosstabview: column name not found: \"%s\""
 msgstr "\\crosstabview: nombre de columna «%s» no encontrado"
 
-#: describe.c:87 describe.c:338 describe.c:635 describe.c:812 describe.c:1029
-#: describe.c:1182 describe.c:1257 describe.c:3880 describe.c:4090
-#: describe.c:4340 describe.c:4422 describe.c:4657 describe.c:4866
-#: describe.c:5095 describe.c:5339 describe.c:5409 describe.c:5420
-#: describe.c:5477 describe.c:5881 describe.c:5959
+#: describe.c:87 describe.c:338 describe.c:630 describe.c:807 describe.c:1038
+#: describe.c:1189 describe.c:1264 describe.c:3889 describe.c:4099
+#: describe.c:4349 describe.c:4431 describe.c:4666 describe.c:4874
+#: describe.c:5116 describe.c:5360 describe.c:5430 describe.c:5441
+#: describe.c:5498 describe.c:5902 describe.c:5980
 msgid "Schema"
 msgstr "Esquema"
 
-#: describe.c:88 describe.c:167 describe.c:229 describe.c:339 describe.c:636
-#: describe.c:813 describe.c:936 describe.c:1030 describe.c:1258
-#: describe.c:3881 describe.c:4091 describe.c:4256 describe.c:4341
-#: describe.c:4423 describe.c:4586 describe.c:4658 describe.c:4867
-#: describe.c:4967 describe.c:5096 describe.c:5340 describe.c:5410
-#: describe.c:5421 describe.c:5478 describe.c:5677 describe.c:5748
-#: describe.c:5957 describe.c:6186 describe.c:6494
+#: describe.c:88 describe.c:167 describe.c:229 describe.c:339 describe.c:631
+#: describe.c:808 describe.c:930 describe.c:1039 describe.c:1265
+#: describe.c:3890 describe.c:4100 describe.c:4265 describe.c:4350
+#: describe.c:4432 describe.c:4595 describe.c:4667 describe.c:4875
+#: describe.c:4988 describe.c:5117 describe.c:5361 describe.c:5431
+#: describe.c:5442 describe.c:5499 describe.c:5698 describe.c:5769
+#: describe.c:5978 describe.c:6207 describe.c:6515
 msgid "Name"
 msgstr "Nombre"
 
@@ -1037,14 +1082,14 @@ msgstr "Tipo de dato de salida"
 msgid "Argument data types"
 msgstr "Tipos de datos de argumentos"
 
-#: describe.c:98 describe.c:105 describe.c:178 describe.c:243 describe.c:423
-#: describe.c:667 describe.c:828 describe.c:965 describe.c:1260 describe.c:2041
-#: describe.c:3676 describe.c:3935 describe.c:4137 describe.c:4280
-#: describe.c:4354 describe.c:4432 describe.c:4599 describe.c:4777
-#: describe.c:4903 describe.c:4976 describe.c:5097 describe.c:5248
-#: describe.c:5290 describe.c:5356 describe.c:5413 describe.c:5422
-#: describe.c:5479 describe.c:5695 describe.c:5770 describe.c:5895
-#: describe.c:5960 describe.c:6992
+#: describe.c:98 describe.c:105 describe.c:178 describe.c:243 describe.c:418
+#: describe.c:662 describe.c:823 describe.c:974 describe.c:1267 describe.c:2047
+#: describe.c:3682 describe.c:3944 describe.c:4146 describe.c:4289
+#: describe.c:4363 describe.c:4441 describe.c:4608 describe.c:4786
+#: describe.c:4924 describe.c:4997 describe.c:5118 describe.c:5269
+#: describe.c:5311 describe.c:5377 describe.c:5434 describe.c:5443
+#: describe.c:5500 describe.c:5716 describe.c:5791 describe.c:5916
+#: describe.c:5981 describe.c:7035
 msgid "Description"
 msgstr "Descripción"
 
@@ -1061,11 +1106,11 @@ msgstr "El servidor (versión %s) no soporta métodos de acceso."
 msgid "Index"
 msgstr "Indice"
 
-#: describe.c:169 describe.c:3899 describe.c:4116 describe.c:5882
+#: describe.c:169 describe.c:3908 describe.c:4125 describe.c:5903
 msgid "Table"
 msgstr "Tabla"
 
-#: describe.c:177 describe.c:5679
+#: describe.c:177 describe.c:5700
 msgid "Handler"
 msgstr "Manejador"
 
@@ -1073,11 +1118,11 @@ msgstr "Manejador"
 msgid "List of access methods"
 msgstr "Lista de métodos de acceso"
 
-#: describe.c:230 describe.c:404 describe.c:660 describe.c:937 describe.c:1181
-#: describe.c:3892 describe.c:4092 describe.c:4257 describe.c:4588
-#: describe.c:4968 describe.c:5678 describe.c:5749 describe.c:6187
-#: describe.c:6375 describe.c:6495 describe.c:6632 describe.c:6718
-#: describe.c:6980
+#: describe.c:230 describe.c:404 describe.c:655 describe.c:931 describe.c:1188
+#: describe.c:3901 describe.c:4101 describe.c:4266 describe.c:4597
+#: describe.c:4989 describe.c:5699 describe.c:5770 describe.c:6208
+#: describe.c:6396 describe.c:6516 describe.c:6675 describe.c:6761
+#: describe.c:7023
 msgid "Owner"
 msgstr "Dueño"
 
@@ -1085,11 +1130,11 @@ msgstr "Dueño"
 msgid "Location"
 msgstr "Ubicación"
 
-#: describe.c:241 describe.c:3509
+#: describe.c:241 describe.c:3517
 msgid "Options"
 msgstr "Opciones"
 
-#: describe.c:242 describe.c:658 describe.c:963 describe.c:3934
+#: describe.c:242 describe.c:653 describe.c:972 describe.c:3943
 msgid "Size"
 msgstr "Tamaño"
 
@@ -1124,7 +1169,7 @@ msgstr "proc"
 msgid "func"
 msgstr "func"
 
-#: describe.c:374 describe.c:1390
+#: describe.c:374 describe.c:1397
 msgid "trigger"
 msgstr "disparador"
 
@@ -1176,988 +1221,996 @@ msgstr "Seguridad"
 msgid "Language"
 msgstr "Lenguaje"
 
-#: describe.c:416 describe.c:420
-msgid "Source code"
-msgstr "Código fuente"
+#: describe.c:415 describe.c:652
+msgid "Internal name"
+msgstr "Nombre interno"
 
-#: describe.c:594
+#: describe.c:589
 msgid "List of functions"
 msgstr "Listado de funciones"
 
-#: describe.c:657
-msgid "Internal name"
-msgstr "Nombre interno"
-
-#: describe.c:659
+#: describe.c:654
 msgid "Elements"
 msgstr "Elementos"
 
-#: describe.c:711
+#: describe.c:706
 msgid "List of data types"
 msgstr "Listado de tipos de dato"
 
-#: describe.c:814
+#: describe.c:809
 msgid "Left arg type"
 msgstr "Tipo arg izq"
 
-#: describe.c:815
+#: describe.c:810
 msgid "Right arg type"
 msgstr "Tipo arg der"
 
-#: describe.c:816
+#: describe.c:811
 msgid "Result type"
 msgstr "Tipo resultado"
 
-#: describe.c:821 describe.c:4594 describe.c:4760 describe.c:5247
-#: describe.c:6909 describe.c:6913
+#: describe.c:816 describe.c:4603 describe.c:4769 describe.c:5268
+#: describe.c:6952 describe.c:6956
 msgid "Function"
 msgstr "Función"
 
-#: describe.c:902
+#: describe.c:897
 msgid "List of operators"
 msgstr "Listado de operadores"
 
-#: describe.c:938
+#: describe.c:932
 msgid "Encoding"
 msgstr "Codificación"
 
-#: describe.c:939 describe.c:4868
+#: describe.c:936 describe.c:940
+msgid "Locale Provider"
+msgstr "Proveedor de locale"
+
+#: describe.c:944 describe.c:4889
 msgid "Collate"
 msgstr "Collate"
 
-#: describe.c:940 describe.c:4869
+#: describe.c:945 describe.c:4890
 msgid "Ctype"
 msgstr "Ctype"
 
-#: describe.c:945 describe.c:951 describe.c:4874 describe.c:4878
+#: describe.c:949 describe.c:953 describe.c:4895 describe.c:4899
 msgid "ICU Locale"
 msgstr "configuración ICU"
 
-#: describe.c:946 describe.c:952
-msgid "Locale Provider"
-msgstr "Proveedor de locale"
+#: describe.c:957 describe.c:961 describe.c:4904 describe.c:4908
+#, fuzzy
+#| msgid "Rules:"
+msgid "ICU Rules"
+msgstr "Reglas:"
 
-#: describe.c:964
+#: describe.c:973
 msgid "Tablespace"
 msgstr "Tablespace"
 
-#: describe.c:990
+#: describe.c:999
 msgid "List of databases"
 msgstr "Listado de base de datos"
 
-#: describe.c:1031 describe.c:1184 describe.c:3882
+#: describe.c:1040 describe.c:1191 describe.c:3891
 msgid "table"
 msgstr "tabla"
 
-#: describe.c:1032 describe.c:3883
+#: describe.c:1041 describe.c:3892
 msgid "view"
 msgstr "vista"
 
-#: describe.c:1033 describe.c:3884
+#: describe.c:1042 describe.c:3893
 msgid "materialized view"
 msgstr "vistas materializadas"
 
-#: describe.c:1034 describe.c:1186 describe.c:3886
+#: describe.c:1043 describe.c:1193 describe.c:3895
 msgid "sequence"
 msgstr "secuencia"
 
-#: describe.c:1035 describe.c:3888
+#: describe.c:1044 describe.c:3897
 msgid "foreign table"
 msgstr "tabla foránea"
 
-#: describe.c:1036 describe.c:3889 describe.c:4101
+#: describe.c:1045 describe.c:3898 describe.c:4110
 msgid "partitioned table"
 msgstr "tabla particionada"
 
-#: describe.c:1047
+#: describe.c:1056
 msgid "Column privileges"
 msgstr "Privilegios de acceso a columnas"
 
-#: describe.c:1078 describe.c:1112
+#: describe.c:1087 describe.c:1121
 msgid "Policies"
 msgstr "Políticas"
 
-#: describe.c:1143 describe.c:4510 describe.c:6577
+#: describe.c:1150 describe.c:4519 describe.c:6620
 msgid "Access privileges"
 msgstr "Privilegios"
 
-#: describe.c:1188
+#: describe.c:1195
 msgid "function"
 msgstr "función"
 
-#: describe.c:1190
+#: describe.c:1197
 msgid "type"
 msgstr "tipo"
 
-#: describe.c:1192
+#: describe.c:1199
 msgid "schema"
 msgstr "esquema"
 
-#: describe.c:1215
+#: describe.c:1222
 msgid "Default access privileges"
 msgstr "Privilegios de acceso por omisión"
 
-#: describe.c:1259
+#: describe.c:1266
 msgid "Object"
 msgstr "Objeto"
 
-#: describe.c:1273
+#: describe.c:1280
 msgid "table constraint"
 msgstr "restricción de tabla"
 
-#: describe.c:1297
+#: describe.c:1304
 msgid "domain constraint"
 msgstr "restricción de dominio"
 
-#: describe.c:1321
+#: describe.c:1328
 msgid "operator class"
 msgstr "clase de operadores"
 
-#: describe.c:1345
+#: describe.c:1352
 msgid "operator family"
 msgstr "familia de operadores"
 
-#: describe.c:1368
+#: describe.c:1375
 msgid "rule"
 msgstr "regla"
 
-#: describe.c:1414
+#: describe.c:1421
 msgid "Object descriptions"
 msgstr "Descripciones de objetos"
 
-#: describe.c:1479 describe.c:4007
+#: describe.c:1486 describe.c:4016
 #, c-format
 msgid "Did not find any relation named \"%s\"."
 msgstr "No se encontró relación llamada «%s»."
 
-#: describe.c:1482 describe.c:4010
+#: describe.c:1489 describe.c:4019
 #, c-format
 msgid "Did not find any relations."
 msgstr "No se encontró ninguna relación."
 
-#: describe.c:1678
+#: describe.c:1685
 #, c-format
 msgid "Did not find any relation with OID %s."
 msgstr "No se encontró relación con OID %s."
 
-#: describe.c:1726 describe.c:1750
+#: describe.c:1733 describe.c:1757
 msgid "Start"
 msgstr "Inicio"
 
-#: describe.c:1727 describe.c:1751
+#: describe.c:1734 describe.c:1758
 msgid "Minimum"
 msgstr "Mínimo"
 
-#: describe.c:1728 describe.c:1752
+#: describe.c:1735 describe.c:1759
 msgid "Maximum"
 msgstr "Máximo"
 
-#: describe.c:1729 describe.c:1753
+#: describe.c:1736 describe.c:1760
 msgid "Increment"
 msgstr "Incremento"
 
-#: describe.c:1730 describe.c:1754 describe.c:1884 describe.c:4426
-#: describe.c:4771 describe.c:4892 describe.c:4897 describe.c:6620
+#: describe.c:1737 describe.c:1761 describe.c:1890 describe.c:4435
+#: describe.c:4780 describe.c:4913 describe.c:4918 describe.c:6663
 msgid "yes"
 msgstr "sí"
 
-#: describe.c:1731 describe.c:1755 describe.c:1885 describe.c:4426
-#: describe.c:4768 describe.c:4892 describe.c:6621
+#: describe.c:1738 describe.c:1762 describe.c:1891 describe.c:4435
+#: describe.c:4777 describe.c:4913 describe.c:6664
 msgid "no"
 msgstr "no"
 
-#: describe.c:1732 describe.c:1756
+#: describe.c:1739 describe.c:1763
 msgid "Cycles?"
 msgstr "¿Cicla?"
 
-#: describe.c:1733 describe.c:1757
+#: describe.c:1740 describe.c:1764
 msgid "Cache"
 msgstr "Cache"
 
-#: describe.c:1798
+#: describe.c:1805
 #, c-format
 msgid "Owned by: %s"
 msgstr "Asociada a: %s"
 
-#: describe.c:1802
+#: describe.c:1809
 #, c-format
 msgid "Sequence for identity column: %s"
 msgstr "Secuencia para columna identidad: %s"
 
-#: describe.c:1810
+#: describe.c:1817
 #, c-format
 msgid "Unlogged sequence \"%s.%s\""
 msgstr "Secuencia unlogged «%s.%s»"
 
-#: describe.c:1813
+#: describe.c:1820
 #, c-format
 msgid "Sequence \"%s.%s\""
 msgstr "Secuencia «%s.%s»"
 
-#: describe.c:1957
+#: describe.c:1963
 #, c-format
 msgid "Unlogged table \"%s.%s\""
 msgstr "Tabla unlogged «%s.%s»"
 
-#: describe.c:1960
+#: describe.c:1966
 #, c-format
 msgid "Table \"%s.%s\""
 msgstr "Tabla «%s.%s»"
 
-#: describe.c:1964
+#: describe.c:1970
 #, c-format
 msgid "View \"%s.%s\""
 msgstr "Vista «%s.%s»"
 
-#: describe.c:1969
+#: describe.c:1975
 #, c-format
 msgid "Unlogged materialized view \"%s.%s\""
 msgstr "Vista materializada unlogged «%s.%s»"
 
-#: describe.c:1972
+#: describe.c:1978
 #, c-format
 msgid "Materialized view \"%s.%s\""
 msgstr "Vista materializada \"%s.%s\""
 
-#: describe.c:1977
+#: describe.c:1983
 #, c-format
 msgid "Unlogged index \"%s.%s\""
 msgstr "Índice unlogged «%s.%s»"
 
-#: describe.c:1980
+#: describe.c:1986
 #, c-format
 msgid "Index \"%s.%s\""
 msgstr "Índice «%s.%s»"
 
-#: describe.c:1985
+#: describe.c:1991
 #, c-format
 msgid "Unlogged partitioned index \"%s.%s\""
 msgstr "Índice particionado unlogged «%s.%s»"
 
-#: describe.c:1988
+#: describe.c:1994
 #, c-format
 msgid "Partitioned index \"%s.%s\""
 msgstr "Índice particionado «%s.%s»"
 
-#: describe.c:1992
+#: describe.c:1998
 #, c-format
 msgid "TOAST table \"%s.%s\""
 msgstr "Tabla TOAST «%s.%s»"
 
-#: describe.c:1996
+#: describe.c:2002
 #, c-format
 msgid "Composite type \"%s.%s\""
 msgstr "Tipo compuesto «%s.%s»"
 
-#: describe.c:2000
+#: describe.c:2006
 #, c-format
 msgid "Foreign table \"%s.%s\""
 msgstr "Tabla foránea «%s.%s»"
 
-#: describe.c:2005
+#: describe.c:2011
 #, c-format
 msgid "Unlogged partitioned table \"%s.%s\""
 msgstr "Tabla unlogged particionada «%s.%s»"
 
-#: describe.c:2008
+#: describe.c:2014
 #, c-format
 msgid "Partitioned table \"%s.%s\""
 msgstr "Tabla particionada «%s.%s»"
 
-#: describe.c:2024 describe.c:4343
+#: describe.c:2030 describe.c:4352
 msgid "Collation"
 msgstr "Ordenamiento"
 
-#: describe.c:2025 describe.c:4344
+#: describe.c:2031 describe.c:4353
 msgid "Nullable"
 msgstr "Nulable"
 
-#: describe.c:2026 describe.c:4345
+#: describe.c:2032 describe.c:4354
 msgid "Default"
 msgstr "Por omisión"
 
-#: describe.c:2029
+#: describe.c:2035
 msgid "Key?"
 msgstr "¿Llave?"
 
-#: describe.c:2031 describe.c:4665 describe.c:4676
+#: describe.c:2037 describe.c:4674 describe.c:4685
 msgid "Definition"
 msgstr "Definición"
 
-#: describe.c:2033 describe.c:5694 describe.c:5769 describe.c:5835
-#: describe.c:5894
+#: describe.c:2039 describe.c:5715 describe.c:5790 describe.c:5856
+#: describe.c:5915
 msgid "FDW options"
 msgstr "Opciones de FDW"
 
-#: describe.c:2035
+#: describe.c:2041
 msgid "Storage"
 msgstr "Almacenamiento"
 
-#: describe.c:2037
+#: describe.c:2043
 msgid "Compression"
 msgstr "Compresión"
 
-#: describe.c:2039
+#: describe.c:2045
 msgid "Stats target"
 msgstr "Estadísticas"
 
-#: describe.c:2175
+#: describe.c:2181
 #, c-format
 msgid "Partition of: %s %s%s"
 msgstr "Partición de: %s %s%s"
 
-#: describe.c:2188
+#: describe.c:2194
 msgid "No partition constraint"
 msgstr "Sin restricción de partición"
 
-#: describe.c:2190
+#: describe.c:2196
 #, c-format
 msgid "Partition constraint: %s"
 msgstr "Restricción de partición: %s"
 
-#: describe.c:2214
+#: describe.c:2220
 #, c-format
 msgid "Partition key: %s"
 msgstr "Llave de partición: %s"
 
-#: describe.c:2240
+#: describe.c:2246
 #, c-format
 msgid "Owning table: \"%s.%s\""
 msgstr "Tabla dueña: «%s.%s»"
 
-#: describe.c:2309
+#: describe.c:2315
 msgid "primary key, "
 msgstr "llave primaria, "
 
-#: describe.c:2312
+#: describe.c:2318
 msgid "unique"
 msgstr "único"
 
-#: describe.c:2314
+#: describe.c:2320
 msgid " nulls not distinct"
 msgstr " nulls no distintos"
 
-#: describe.c:2315
+#: describe.c:2321
 msgid ", "
 msgstr ", "
 
-#: describe.c:2322
+#: describe.c:2328
 #, c-format
 msgid "for table \"%s.%s\""
 msgstr "de tabla «%s.%s»"
 
-#: describe.c:2326
+#: describe.c:2332
 #, c-format
 msgid ", predicate (%s)"
 msgstr ", predicado (%s)"
 
-#: describe.c:2329
+#: describe.c:2335
 msgid ", clustered"
 msgstr ", clustered"
 
-#: describe.c:2332
+#: describe.c:2338
 msgid ", invalid"
 msgstr ", no válido"
 
-#: describe.c:2335
+#: describe.c:2341
 msgid ", deferrable"
 msgstr ", postergable"
 
-#: describe.c:2338
+#: describe.c:2344
 msgid ", initially deferred"
 msgstr ", inicialmente postergada"
 
-#: describe.c:2341
+#: describe.c:2347
 msgid ", replica identity"
 msgstr ", identidad de replicación"
 
-#: describe.c:2395
+#: describe.c:2401
 msgid "Indexes:"
 msgstr "Índices:"
 
-#: describe.c:2478
+#: describe.c:2484
 msgid "Check constraints:"
 msgstr "Restricciones CHECK:"
 
-#: describe.c:2546
+#: describe.c:2552
 msgid "Foreign-key constraints:"
 msgstr "Restricciones de llave foránea:"
 
-#: describe.c:2609
+#: describe.c:2615
 msgid "Referenced by:"
 msgstr "Referenciada por:"
 
-#: describe.c:2659
+#: describe.c:2665
 msgid "Policies:"
 msgstr "Políticas:"
 
-#: describe.c:2662
+#: describe.c:2668
 msgid "Policies (forced row security enabled):"
 msgstr "Políticas (seguridad de registros forzada):"
 
-#: describe.c:2665
+#: describe.c:2671
 msgid "Policies (row security enabled): (none)"
 msgstr "Políticas (seguridad de filas activa): (ninguna)"
 
-#: describe.c:2668
+#: describe.c:2674
 msgid "Policies (forced row security enabled): (none)"
 msgstr "Políticas (seguridad de filas forzada): (ninguna)"
 
-#: describe.c:2671
+#: describe.c:2677
 msgid "Policies (row security disabled):"
 msgstr "Políticas (seguridad de filas inactiva):"
 
-#: describe.c:2731 describe.c:2835
+#: describe.c:2737 describe.c:2841
 msgid "Statistics objects:"
 msgstr "Objetos de estadísticas:"
 
-#: describe.c:2937 describe.c:3090
+#: describe.c:2943 describe.c:3096
 msgid "Rules:"
 msgstr "Reglas:"
 
-#: describe.c:2940
+#: describe.c:2946
 msgid "Disabled rules:"
 msgstr "Reglas deshabilitadas:"
 
-#: describe.c:2943
+#: describe.c:2949
 msgid "Rules firing always:"
 msgstr "Reglas que se activan siempre:"
 
-#: describe.c:2946
+#: describe.c:2952
 msgid "Rules firing on replica only:"
 msgstr "Reglas que se activan sólo en las réplicas:"
 
-#: describe.c:3025 describe.c:5030
+#: describe.c:3031 describe.c:5051
 msgid "Publications:"
 msgstr "Publicaciones:"
 
-#: describe.c:3073
+#: describe.c:3079
 msgid "View definition:"
 msgstr "Definición de vista:"
 
-#: describe.c:3236
+#: describe.c:3242
 msgid "Triggers:"
 msgstr "Triggers:"
 
-#: describe.c:3239
+#: describe.c:3245
 msgid "Disabled user triggers:"
 msgstr "Disparadores de usuario deshabilitados:"
 
-#: describe.c:3242
+#: describe.c:3248
 msgid "Disabled internal triggers:"
 msgstr "Disparadores internos deshabilitados:"
 
-#: describe.c:3245
+#: describe.c:3251
 msgid "Triggers firing always:"
 msgstr "Disparadores que siempre se ejecutan:"
 
-#: describe.c:3248
+#: describe.c:3254
 msgid "Triggers firing on replica only:"
 msgstr "Disparadores que se ejecutan sólo en las réplicas:"
 
-#: describe.c:3319
+#: describe.c:3325
 #, c-format
 msgid "Server: %s"
 msgstr "Servidor: %s"
 
-#: describe.c:3327
+#: describe.c:3333
 #, c-format
 msgid "FDW options: (%s)"
 msgstr "Opciones de FDW: (%s)"
 
-#: describe.c:3348
+#: describe.c:3354
 msgid "Inherits"
 msgstr "Hereda"
 
-#: describe.c:3413
+#: describe.c:3419
 #, c-format
 msgid "Number of partitions: %d"
 msgstr "Número de particiones: %d"
 
-#: describe.c:3422
+#: describe.c:3428
 #, c-format
 msgid "Number of partitions: %d (Use \\d+ to list them.)"
 msgstr "Número de particiones: %d (Use \\d+ para listarlas.)"
 
-#: describe.c:3424
+#: describe.c:3430
 #, 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:3431
+#: describe.c:3437
 msgid "Child tables"
 msgstr "Tablas hijas"
 
-#: describe.c:3431
+#: describe.c:3437
 msgid "Partitions"
 msgstr "Particiones"
 
-#: describe.c:3462
+#: describe.c:3470
 #, c-format
 msgid "Typed table of type: %s"
 msgstr "Tabla tipada de tipo: %s"
 
-#: describe.c:3478
+#: describe.c:3486
 msgid "Replica Identity"
 msgstr "Identidad de replicación"
 
-#: describe.c:3491
+#: describe.c:3499
 msgid "Has OIDs: yes"
 msgstr "Tiene OIDs: sí"
 
-#: describe.c:3500
+#: describe.c:3508
 #, c-format
 msgid "Access method: %s"
 msgstr "Método de acceso: %s"
 
-#: describe.c:3579
+#: describe.c:3585
 #, 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:3591
+#: describe.c:3597
 #, c-format
 msgid ", tablespace \"%s\""
 msgstr ", tablespace «%s»"
 
-#: describe.c:3668
+#: describe.c:3674
 msgid "List of roles"
 msgstr "Lista de roles"
 
-#: describe.c:3670
+#: describe.c:3676
 msgid "Role name"
 msgstr "Nombre de rol"
 
-#: describe.c:3671
+#: describe.c:3677
 msgid "Attributes"
 msgstr "Atributos"
 
-#: describe.c:3673
+#: describe.c:3679
 msgid "Member of"
 msgstr "Miembro de"
 
-#: describe.c:3684
+#: describe.c:3690
 msgid "Superuser"
 msgstr "Superusuario"
 
-#: describe.c:3687
+#: describe.c:3693
 msgid "No inheritance"
 msgstr "Sin herencia"
 
-#: describe.c:3690
+#: describe.c:3696
 msgid "Create role"
 msgstr "Crear rol"
 
-#: describe.c:3693
+#: describe.c:3699
 msgid "Create DB"
 msgstr "Crear BD"
 
-#: describe.c:3696
+#: describe.c:3702
 msgid "Cannot login"
 msgstr "No puede conectarse"
 
-#: describe.c:3699
+#: describe.c:3705
 msgid "Replication"
 msgstr "Replicación"
 
-#: describe.c:3703
+#: describe.c:3709
 msgid "Bypass RLS"
 msgstr "Ignora RLS"
 
-#: describe.c:3712
+#: describe.c:3718
 msgid "No connections"
 msgstr "Ninguna conexión"
 
-#: describe.c:3714
+#: describe.c:3720
 #, c-format
 msgid "%d connection"
 msgid_plural "%d connections"
 msgstr[0] "%d conexión"
 msgstr[1] "%d conexiones"
 
-#: describe.c:3724
+#: describe.c:3730
 msgid "Password valid until "
 msgstr "Constraseña válida hasta "
 
-#: describe.c:3777
+#: describe.c:3780
 msgid "Role"
 msgstr "Nombre de rol"
 
-#: describe.c:3778
+#: describe.c:3781
 msgid "Database"
 msgstr "Base de Datos"
 
-#: describe.c:3779
+#: describe.c:3782
 msgid "Settings"
 msgstr "Parámetros"
 
-#: describe.c:3803
+#: describe.c:3785
+#, fuzzy
+#| msgid "User name"
+msgid "User set"
+msgstr "Nombre de usuario"
+
+#: describe.c:3812
 #, 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:3806
+#: describe.c:3815
 #, 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:3809
+#: describe.c:3818
 #, c-format
 msgid "Did not find any settings."
 msgstr "No se encontró ningún parámetro."
 
-#: describe.c:3814
+#: describe.c:3823
 msgid "List of settings"
 msgstr "Listado de parámetros"
 
-#: describe.c:3885
+#: describe.c:3894
 msgid "index"
 msgstr "índice"
 
-#: describe.c:3887
+#: describe.c:3896
 msgid "TOAST table"
 msgstr "Tabla TOAST"
 
-#: describe.c:3890 describe.c:4102
+#: describe.c:3899 describe.c:4111
 msgid "partitioned index"
 msgstr "índice particionado"
 
-#: describe.c:3910
+#: describe.c:3919
 msgid "permanent"
 msgstr "permanente"
 
-#: describe.c:3911
+#: describe.c:3920
 msgid "temporary"
 msgstr "temporal"
 
-#: describe.c:3912
+#: describe.c:3921
 msgid "unlogged"
 msgstr "unlogged"
 
-#: describe.c:3913
+#: describe.c:3922
 msgid "Persistence"
 msgstr "Persistencia"
 
-#: describe.c:3929
+#: describe.c:3938
 msgid "Access method"
 msgstr "Método de acceso"
 
-#: describe.c:4015
+#: describe.c:4024
 msgid "List of relations"
 msgstr "Listado de relaciones"
 
-#: describe.c:4063
+#: describe.c:4072
 #, 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:4074
+#: describe.c:4083
 msgid "List of partitioned indexes"
 msgstr "Listado de índices particionados"
 
-#: describe.c:4076
+#: describe.c:4085
 msgid "List of partitioned tables"
 msgstr "Listado de tablas particionadas"
 
-#: describe.c:4080
+#: describe.c:4089
 msgid "List of partitioned relations"
 msgstr "Listado de relaciones particionadas"
 
-#: describe.c:4111
+#: describe.c:4120
 msgid "Parent name"
 msgstr "Nombre del padre"
 
-#: describe.c:4124
+#: describe.c:4133
 msgid "Leaf partition size"
 msgstr "Tamaño de particiones hoja"
 
-#: describe.c:4127 describe.c:4133
+#: describe.c:4136 describe.c:4142
 msgid "Total size"
 msgstr "Tamaño total"
 
-#: describe.c:4258
+#: describe.c:4267
 msgid "Trusted"
 msgstr "Confiable"
 
-#: describe.c:4267
+#: describe.c:4276
 msgid "Internal language"
 msgstr "Lenguaje interno"
 
-#: describe.c:4268
+#: describe.c:4277
 msgid "Call handler"
 msgstr "Manejador de llamada"
 
-#: describe.c:4269 describe.c:5680
+#: describe.c:4278 describe.c:5701
 msgid "Validator"
 msgstr "Validador"
 
-#: describe.c:4270
+#: describe.c:4279
 msgid "Inline handler"
 msgstr "Manejador en línea"
 
-#: describe.c:4305
+#: describe.c:4314
 msgid "List of languages"
 msgstr "Lista de lenguajes"
 
-#: describe.c:4346
+#: describe.c:4355
 msgid "Check"
 msgstr "Check"
 
-#: describe.c:4390
+#: describe.c:4399
 msgid "List of domains"
 msgstr "Listado de dominios"
 
-#: describe.c:4424
+#: describe.c:4433
 msgid "Source"
 msgstr "Fuente"
 
-#: describe.c:4425
+#: describe.c:4434
 msgid "Destination"
 msgstr "Destino"
 
-#: describe.c:4427 describe.c:6622
+#: describe.c:4436 describe.c:6665
 msgid "Default?"
 msgstr "Por omisión?"
 
-#: describe.c:4469
+#: describe.c:4478
 msgid "List of conversions"
 msgstr "Listado de conversiones"
 
-#: describe.c:4497
+#: describe.c:4506
 msgid "Parameter"
 msgstr "Parámetro"
 
-#: describe.c:4498
+#: describe.c:4507
 msgid "Value"
 msgstr "Valor"
 
-#: describe.c:4505
+#: describe.c:4514
 msgid "Context"
 msgstr "Contexto"
 
-#: describe.c:4538
+#: describe.c:4547
 msgid "List of configuration parameters"
 msgstr "Listado de parámetro de configuración"
 
-#: describe.c:4540
+#: describe.c:4549
 msgid "List of non-default configuration parameters"
 msgstr "Listado de parámetros de configuración no-default"
 
-#: describe.c:4567
+#: describe.c:4576
 #, c-format
 msgid "The server (version %s) does not support event triggers."
 msgstr "El servidor (versión %s) no soporta triggers por eventos."
 
-#: describe.c:4587
+#: describe.c:4596
 msgid "Event"
 msgstr "Evento"
 
-#: describe.c:4589
+#: describe.c:4598
 msgid "enabled"
 msgstr "activo"
 
-#: describe.c:4590
+#: describe.c:4599
 msgid "replica"
 msgstr "réplica"
 
-#: describe.c:4591
+#: describe.c:4600
 msgid "always"
 msgstr "siempre"
 
-#: describe.c:4592
+#: describe.c:4601
 msgid "disabled"
 msgstr "inactivo"
 
-#: describe.c:4593 describe.c:6496
+#: describe.c:4602 describe.c:6517
 msgid "Enabled"
 msgstr "Activo"
 
-#: describe.c:4595
+#: describe.c:4604
 msgid "Tags"
 msgstr "Etiquetas"
 
-#: describe.c:4619
+#: describe.c:4628
 msgid "List of event triggers"
 msgstr "Listado de disparadores por eventos"
 
-#: describe.c:4646
+#: describe.c:4655
 #, c-format
 msgid "The server (version %s) does not support extended statistics."
 msgstr "El servidor (versión %s) no soporta estadísticas extendidas."
 
-#: describe.c:4683
+#: describe.c:4692
 msgid "Ndistinct"
 msgstr "Ndistinct"
 
-#: describe.c:4684
+#: describe.c:4693
 msgid "Dependencies"
 msgstr "Dependencias"
 
-#: describe.c:4694
+#: describe.c:4703
 msgid "MCV"
 msgstr "MCV"
 
-#: describe.c:4718
+#: describe.c:4727
 msgid "List of extended statistics"
 msgstr "Lista de estadísticas extendidas"
 
-#: describe.c:4745
+#: describe.c:4754
 msgid "Source type"
 msgstr "Tipo fuente"
 
-#: describe.c:4746
+#: describe.c:4755
 msgid "Target type"
 msgstr "Tipo destino"
 
-#: describe.c:4770
+#: describe.c:4779
 msgid "in assignment"
 msgstr "en asignación"
 
-#: describe.c:4772
+#: describe.c:4781
 msgid "Implicit?"
 msgstr "Implícito?"
 
-#: describe.c:4831
+#: describe.c:4840
 msgid "List of casts"
 msgstr "Listado de conversiones de tipo (casts)"
 
-#: describe.c:4883 describe.c:4887
+#: describe.c:4880 describe.c:4884
 msgid "Provider"
 msgstr "Proveedor"
 
-#: describe.c:4893 describe.c:4898
+#: describe.c:4914 describe.c:4919
 msgid "Deterministic?"
 msgstr "¿Determinístico?"
 
-#: describe.c:4938
+#: describe.c:4959
 msgid "List of collations"
 msgstr "Listado de ordenamientos"
 
-#: describe.c:5000
+#: describe.c:5021
 msgid "List of schemas"
 msgstr "Listado de esquemas"
 
-#: describe.c:5117
+#: describe.c:5138
 msgid "List of text search parsers"
 msgstr "Listado de analizadores de búsqueda en texto"
 
-#: describe.c:5167
+#: describe.c:5188
 #, 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:5170
+#: describe.c:5191
 #, c-format
 msgid "Did not find any text search parsers."
 msgstr "No se encontró ningún analizador de búsqueda en texto."
 
-#: describe.c:5245
+#: describe.c:5266
 msgid "Start parse"
 msgstr "Inicio de parse"
 
-#: describe.c:5246
+#: describe.c:5267
 msgid "Method"
 msgstr "Método"
 
-#: describe.c:5250
+#: describe.c:5271
 msgid "Get next token"
 msgstr "Obtener siguiente elemento"
 
-#: describe.c:5252
+#: describe.c:5273
 msgid "End parse"
 msgstr "Fin de parse"
 
-#: describe.c:5254
+#: describe.c:5275
 msgid "Get headline"
 msgstr "Obtener encabezado"
 
-#: describe.c:5256
+#: describe.c:5277
 msgid "Get token types"
 msgstr "Obtener tipos de elemento"
 
-#: describe.c:5267
+#: describe.c:5288
 #, c-format
 msgid "Text search parser \"%s.%s\""
 msgstr "Analizador de búsqueda en texto «%s.%s»"
 
-#: describe.c:5270
+#: describe.c:5291
 #, c-format
 msgid "Text search parser \"%s\""
 msgstr "Analizador de búsqueda en texto «%s»"
 
-#: describe.c:5289
+#: describe.c:5310
 msgid "Token name"
 msgstr "Nombre de elemento"
 
-#: describe.c:5303
+#: describe.c:5324
 #, c-format
 msgid "Token types for parser \"%s.%s\""
 msgstr "Tipos de elemento para el analizador «%s.%s»"
 
-#: describe.c:5306
+#: describe.c:5327
 #, c-format
 msgid "Token types for parser \"%s\""
 msgstr "Tipos de elemento para el analizador «%s»"
 
-#: describe.c:5350
+#: describe.c:5371
 msgid "Template"
 msgstr "Plantilla"
 
-#: describe.c:5351
+#: describe.c:5372
 msgid "Init options"
 msgstr "Opciones de inicialización"
 
-#: describe.c:5378
+#: describe.c:5399
 msgid "List of text search dictionaries"
 msgstr "Listado de diccionarios de búsqueda en texto"
 
-#: describe.c:5411
+#: describe.c:5432
 msgid "Init"
 msgstr "Inicializador"
 
-#: describe.c:5412
+#: describe.c:5433
 msgid "Lexize"
 msgstr "Fn. análisis léx."
 
-#: describe.c:5444
+#: describe.c:5465
 msgid "List of text search templates"
 msgstr "Listado de plantillas de búsqueda en texto"
 
-#: describe.c:5499
+#: describe.c:5520
 msgid "List of text search configurations"
 msgstr "Listado de configuraciones de búsqueda en texto"
 
-#: describe.c:5550
+#: describe.c:5571
 #, 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:5553
+#: describe.c:5574
 #, c-format
 msgid "Did not find any text search configurations."
 msgstr "No se encontró una configuración de búsqueda en texto."
 
-#: describe.c:5619
+#: describe.c:5640
 msgid "Token"
 msgstr "Elemento"
 
-#: describe.c:5620
+#: describe.c:5641
 msgid "Dictionaries"
 msgstr "Diccionarios"
 
-#: describe.c:5631
+#: describe.c:5652
 #, c-format
 msgid "Text search configuration \"%s.%s\""
 msgstr "Configuración de búsqueda en texto «%s.%s»"
 
-#: describe.c:5634
+#: describe.c:5655
 #, c-format
 msgid "Text search configuration \"%s\""
 msgstr "Configuración de búsqueda en texto «%s»"
 
-#: describe.c:5638
+#: describe.c:5659
 #, c-format
 msgid ""
 "\n"
@@ -2166,7 +2219,7 @@ msgstr ""
 "\n"
 "Analizador: «%s.%s»"
 
-#: describe.c:5641
+#: describe.c:5662
 #, c-format
 msgid ""
 "\n"
@@ -2175,249 +2228,263 @@ msgstr ""
 "\n"
 "Analizador: «%s»"
 
-#: describe.c:5722
+#: describe.c:5743
 msgid "List of foreign-data wrappers"
 msgstr "Listado de conectores de datos externos"
 
-#: describe.c:5750
+#: describe.c:5771
 msgid "Foreign-data wrapper"
 msgstr "Conectores de datos externos"
 
-#: describe.c:5768 describe.c:5958
+#: describe.c:5789 describe.c:5979
 msgid "Version"
 msgstr "Versión"
 
-#: describe.c:5799
+#: describe.c:5820
 msgid "List of foreign servers"
 msgstr "Listado de servidores foráneos"
 
-#: describe.c:5824 describe.c:5883
+#: describe.c:5845 describe.c:5904
 msgid "Server"
 msgstr "Servidor"
 
-#: describe.c:5825
+#: describe.c:5846
 msgid "User name"
 msgstr "Nombre de usuario"
 
-#: describe.c:5855
+#: describe.c:5876
 msgid "List of user mappings"
 msgstr "Listado de mapeos de usuario"
 
-#: describe.c:5928
+#: describe.c:5949
 msgid "List of foreign tables"
 msgstr "Listado de tablas foráneas"
 
-#: describe.c:5980
+#: describe.c:6001
 msgid "List of installed extensions"
 msgstr "Listado de extensiones instaladas"
 
-#: describe.c:6028
+#: describe.c:6049
 #, c-format
 msgid "Did not find any extension named \"%s\"."
 msgstr "No se encontró extensión llamada «%s»."
 
-#: describe.c:6031
+#: describe.c:6052
 #, c-format
 msgid "Did not find any extensions."
 msgstr "No se encontró ninguna extensión."
 
-#: describe.c:6075
+#: describe.c:6096
 msgid "Object description"
 msgstr "Descripción de objeto"
 
-#: describe.c:6085
+#: describe.c:6106
 #, c-format
 msgid "Objects in extension \"%s\""
 msgstr "Objetos en extensión «%s»"
 
-#: describe.c:6126
+#: describe.c:6147
 #, c-format
 msgid "improper qualified name (too many dotted names): %s"
 msgstr "el nombre no es válido (demasiados puntos): %s"
 
-#: describe.c:6140
+#: describe.c:6161
 #, c-format
 msgid "cross-database references are not implemented: %s"
 msgstr "no están implementadas las referencias entre bases de datos: %s"
 
-#: describe.c:6171 describe.c:6298
+#: describe.c:6192 describe.c:6319
 #, c-format
 msgid "The server (version %s) does not support publications."
 msgstr "El servidor (versión %s) no soporta publicaciones."
 
-#: describe.c:6188 describe.c:6376
+#: describe.c:6209 describe.c:6397
 msgid "All tables"
 msgstr "Todas las tablas"
 
-#: describe.c:6189 describe.c:6377
+#: describe.c:6210 describe.c:6398
 msgid "Inserts"
 msgstr "Inserts"
 
-#: describe.c:6190 describe.c:6378
+#: describe.c:6211 describe.c:6399
 msgid "Updates"
 msgstr "Updates"
 
-#: describe.c:6191 describe.c:6379
+#: describe.c:6212 describe.c:6400
 msgid "Deletes"
 msgstr "Deletes"
 
-#: describe.c:6195 describe.c:6381
+#: describe.c:6216 describe.c:6402
 msgid "Truncates"
 msgstr "Truncates"
 
-#: describe.c:6199 describe.c:6383
+#: describe.c:6220 describe.c:6404
 msgid "Via root"
 msgstr "Via root"
 
-#: describe.c:6221
+#: describe.c:6242
 msgid "List of publications"
 msgstr "Listado de publicaciones"
 
-#: describe.c:6345
+#: describe.c:6366
 #, c-format
 msgid "Did not find any publication named \"%s\"."
 msgstr "No se encontró publicación llamada «%s»."
 
-#: describe.c:6348
+#: describe.c:6369
 #, c-format
 msgid "Did not find any publications."
 msgstr "No se encontró ninguna publicación."
 
-#: describe.c:6372
+#: describe.c:6393
 #, c-format
 msgid "Publication %s"
 msgstr "Publicación %s"
 
-#: describe.c:6425
+#: describe.c:6446
 msgid "Tables:"
 msgstr "Tablas:"
 
-#: describe.c:6437
+#: describe.c:6458
 msgid "Tables from schemas:"
 msgstr "Tablas de esquemas:"
 
-#: describe.c:6481
+#: describe.c:6502
 #, c-format
 msgid "The server (version %s) does not support subscriptions."
 msgstr "El servidor (versión %s) no soporta suscripciones."
 
-#: describe.c:6497
+#: describe.c:6518
 msgid "Publication"
 msgstr "Publicación"
 
-#: describe.c:6506
+#: describe.c:6527
 msgid "Binary"
 msgstr "Binario"
 
-#: describe.c:6507
+#: describe.c:6536 describe.c:6540
 msgid "Streaming"
 msgstr "De flujo"
 
-#: describe.c:6514
+#: describe.c:6548
 msgid "Two-phase commit"
 msgstr "Commit 2-fases"
 
-#: describe.c:6515
+#: describe.c:6549
 msgid "Disable on error"
 msgstr "Desactivar en error"
 
-#: describe.c:6520
+#: describe.c:6556
+msgid "Origin"
+msgstr ""
+
+#: describe.c:6557
+#, fuzzy
+#| msgid "redo is not required"
+msgid "Password required"
+msgstr "no se requiere redo"
+
+#: describe.c:6558
+msgid "Run as Owner?"
+msgstr ""
+
+#: describe.c:6563
 msgid "Synchronous commit"
 msgstr "Commit síncrono"
 
-#: describe.c:6521
+#: describe.c:6564
 msgid "Conninfo"
 msgstr "Conninfo"
 
-#: describe.c:6527
+#: describe.c:6570
 msgid "Skip LSN"
 msgstr "Saltar LSN"
 
-#: describe.c:6554
+#: describe.c:6597
 msgid "List of subscriptions"
 msgstr "Listado de suscripciones"
 
-#: describe.c:6616 describe.c:6712 describe.c:6805 describe.c:6900
+#: describe.c:6659 describe.c:6755 describe.c:6848 describe.c:6943
 msgid "AM"
 msgstr "AM"
 
-#: describe.c:6617
+#: describe.c:6660
 msgid "Input type"
 msgstr "Tipo de entrada"
 
-#: describe.c:6618
+#: describe.c:6661
 msgid "Storage type"
 msgstr "Tipo de almacenamiento"
 
-#: describe.c:6619
+#: describe.c:6662
 msgid "Operator class"
 msgstr "Clase de operador"
 
-#: describe.c:6631 describe.c:6713 describe.c:6806 describe.c:6901
+#: describe.c:6674 describe.c:6756 describe.c:6849 describe.c:6944
 msgid "Operator family"
 msgstr "Familia de operadores"
 
-#: describe.c:6667
+#: describe.c:6710
 msgid "List of operator classes"
 msgstr "Listado de clases de operador"
 
-#: describe.c:6714
+#: describe.c:6757
 msgid "Applicable types"
 msgstr "Tipos aplicables"
 
-#: describe.c:6756
+#: describe.c:6799
 msgid "List of operator families"
 msgstr "Listado de familias de operadores"
 
-#: describe.c:6807
+#: describe.c:6850
 msgid "Operator"
 msgstr "Operador"
 
-#: describe.c:6808
+#: describe.c:6851
 msgid "Strategy"
 msgstr "Estrategia"
 
-#: describe.c:6809
+#: describe.c:6852
 msgid "ordering"
 msgstr "ordenamiento"
 
-#: describe.c:6810
+#: describe.c:6853
 msgid "search"
 msgstr "búsqueda"
 
-#: describe.c:6811
+#: describe.c:6854
 msgid "Purpose"
 msgstr "Propósito"
 
-#: describe.c:6816
+#: describe.c:6859
 msgid "Sort opfamily"
 msgstr "familia de ops de ordenamiento"
 
-#: describe.c:6855
+#: describe.c:6898
 msgid "List of operators of operator families"
 msgstr "Lista de operadores de familias de operadores"
 
-#: describe.c:6902
+#: describe.c:6945
 msgid "Registered left type"
 msgstr "Tipo de dato izquierdo registrado"
 
-#: describe.c:6903
+#: describe.c:6946
 msgid "Registered right type"
 msgstr "Tipo de dato derecho registrado"
 
-#: describe.c:6904
+#: describe.c:6947
 msgid "Number"
 msgstr "Número"
 
-#: describe.c:6948
+#: describe.c:6991
 msgid "List of support functions of operator families"
 msgstr "Listado de funciones de la familia de operadores %s"
 
-#: describe.c:6979
+#: describe.c:7022
 msgid "ID"
 msgstr "ID"
 
-#: describe.c:7000
+#: describe.c:7043
 msgid "Large objects"
 msgstr "Objetos grandes"
 
@@ -2429,7 +2496,7 @@ msgstr ""
 "psql es el terminal interactivo de PostgreSQL.\n"
 "\n"
 
-#: help.c:76 help.c:393 help.c:473 help.c:516
+#: help.c:76 help.c:394 help.c:478 help.c:521
 msgid "Usage:\n"
 msgstr "Empleo:\n"
 
@@ -2691,20 +2758,26 @@ msgid "General\n"
 msgstr "General\n"
 
 #: help.c:192
+#, fuzzy
+#| msgid "  \\dFp[+] [PATTERN]      list text search parsers\n"
+msgid "  \\bind [PARAM]...       set query parameters\n"
+msgstr "  \\dFp[+] [PATRÓN]  listar analizadores (parsers) de búsq. en texto\n"
+
+#: help.c:193
 msgid "  \\copyright             show PostgreSQL usage and distribution terms\n"
 msgstr "  \\copyright      mostrar términos de uso y distribución de PostgreSQL\n"
 
-#: help.c:193
+#: help.c:194
 msgid "  \\crosstabview [COLUMNS] execute query and display result in crosstab\n"
 msgstr ""
 "  \\crosstabview [COLUMNAS]\n"
 "                  ejecutar la consulta y desplegar en «crosstab»\n"
 
-#: help.c:194
+#: help.c:195
 msgid "  \\errverbose            show most recent error message at maximum verbosity\n"
 msgstr "  \\errverbose     mostrar error más reciente en máxima verbosidad\n"
 
-#: help.c:195
+#: help.c:196
 msgid ""
 "  \\g [(OPTIONS)] [FILE]  execute query (and send result to file or |pipe);\n"
 "                         \\g with no arguments is equivalent to a semicolon\n"
@@ -2713,242 +2786,244 @@ msgstr ""
 "                  ejecuta la consulta (y envía el resultado a un fichero o |pipe);\n"
 "                  \\g sin argumentos es equivalente a un punto y coma\n"
 
-#: help.c:197
+#: help.c:198
 msgid "  \\gdesc                 describe result of query, without executing it\n"
 msgstr "  \\gdesc          describir resultado de la consulta, sin ejecutarla\n"
 
-#: help.c:198
+#: help.c:199
 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:199
+#: help.c:200
 msgid "  \\gset [PREFIX]         execute query and store result in psql variables\n"
 msgstr ""
 "  \\gset [PREFIJO] ejecutar la consulta y almacenar el resultado en variables\n"
 "                  de psql\n"
 
-#: help.c:200
+#: help.c:201
 msgid "  \\gx [(OPTIONS)] [FILE] as \\g, but forces expanded output mode\n"
 msgstr ""
 "  \\gx [(OPTIONS)] [FILE]\n"
 "                  como \\g, pero fuerza el modo de salida expandido\n"
 
-#: help.c:201
+#: help.c:202
 msgid "  \\q                     quit psql\n"
 msgstr "  \\q              salir de psql\n"
 
-#: help.c:202
-msgid "  \\watch [SEC]           execute query every SEC seconds\n"
+#: help.c:203
+#, fuzzy
+#| msgid "  \\watch [SEC]           execute query every SEC seconds\n"
+msgid "  \\watch [[i=]SEC] [c=N] execute query every SEC seconds, up to N times\n"
 msgstr "  \\watch [SEGS]   ejecutar consulta cada SEGS segundos\n"
 
-#: help.c:203 help.c:211 help.c:223 help.c:233 help.c:240 help.c:296 help.c:304
-#: help.c:324 help.c:337 help.c:346
+#: help.c:204 help.c:212 help.c:224 help.c:234 help.c:241 help.c:297 help.c:305
+#: help.c:325 help.c:338 help.c:347
 msgid "\n"
 msgstr "\n"
 
-#: help.c:205
+#: help.c:206
 msgid "Help\n"
 msgstr "Ayuda\n"
 
-#: help.c:207
+#: help.c:208
 msgid "  \\? [commands]          show help on backslash commands\n"
 msgstr "  \\? [commands]   desplegar ayuda sobre las órdenes backslash\n"
 
-#: help.c:208
+#: help.c:209
 msgid "  \\? options             show help on psql command-line options\n"
 msgstr "  \\? options      desplegar ayuda sobre opciones de línea de órdenes\n"
 
-#: help.c:209
+#: help.c:210
 msgid "  \\? variables           show help on special variables\n"
 msgstr "  \\? variables    desplegar ayuda sobre variables especiales\n"
 
-#: help.c:210
+#: help.c:211
 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:213
+#: help.c:214
 msgid "Query Buffer\n"
 msgstr "Búfer de consulta\n"
 
-#: help.c:214
+#: help.c:215
 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:215
+#: help.c:216
 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:216
+#: help.c:217
 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:217
+#: help.c:218
 msgid "  \\p                     show the contents of the query buffer\n"
 msgstr "  \\p              mostrar el contenido del búfer de consulta\n"
 
-#: help.c:218
+#: help.c:219
 msgid "  \\r                     reset (clear) the query buffer\n"
 msgstr "  \\r              reiniciar (limpiar) el búfer de consulta\n"
 
-#: help.c:220
+#: help.c:221
 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:222
+#: help.c:223
 msgid "  \\w FILE                write query buffer to file\n"
 msgstr "  \\w ARCHIVO      escribir búfer de consulta a archivo\n"
 
-#: help.c:225
+#: help.c:226
 msgid "Input/Output\n"
 msgstr ""
 "Entrada/Salida\n"
 "        (con -n, donde existe, se omite el salto de línea final)\n"
 
-#: help.c:226
+#: help.c:227
 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:227
+#: help.c:228
 msgid "  \\echo [-n] [STRING]    write string to standard output (-n for no newline)\n"
 msgstr "  \\echo [-n] [STRING]  escribe la cadena en la salida estándar\n"
 
-#: help.c:228
+#: help.c:229
 msgid "  \\i FILE                execute commands from file\n"
 msgstr "  \\i ARCHIVO           ejecutar órdenes desde archivo\n"
 
-#: help.c:229
+#: help.c:230
 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:230
+#: help.c:231
 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:231
+#: help.c:232
 msgid "  \\qecho [-n] [STRING]   write string to \\o output stream (-n for no newline)\n"
 msgstr "  \\qecho [-n] [STRING] escribe la cadena hacia flujo de salida \\o\n"
 
-#: help.c:232
+#: help.c:233
 msgid "  \\warn [-n] [STRING]    write string to standard error (-n for no newline)\n"
 msgstr "  \\warn [-n] [STRING]  escribe la cadena a la salida de error estándar\n"
 
-#: help.c:235
+#: help.c:236
 msgid "Conditional\n"
 msgstr "Condicional\n"
 
-#: help.c:236
+#: help.c:237
 msgid "  \\if EXPR               begin conditional block\n"
 msgstr "  \\if EXPRESIÓN   inicia bloque condicional\n"
 
-#: help.c:237
+#: help.c:238
 msgid "  \\elif EXPR             alternative within current conditional block\n"
 msgstr "  \\elif EXPR      alternativa dentro del bloque condicional actual\n"
 
-#: help.c:238
+#: help.c:239
 msgid "  \\else                  final alternative within current conditional block\n"
 msgstr "  \\else           alternativa final dentro del bloque condicional actual\n"
 
-#: help.c:239
+#: help.c:240
 msgid "  \\endif                 end conditional block\n"
 msgstr "  \\endif          termina el bloque condicional\n"
 
-#: help.c:242
+#: help.c:243
 msgid "Informational\n"
 msgstr "Informativo\n"
 
-#: help.c:243
+#: help.c:244
 msgid "  (options: S = show system objects, + = additional detail)\n"
 msgstr "   (opciones: S = desplegar objetos de sistema, + = agregar más detalle)\n"
 
-#: help.c:244
+#: help.c:245
 msgid "  \\d[S+]                 list tables, views, and sequences\n"
 msgstr "  \\d[S+]            listar tablas, vistas y secuencias\n"
 
-#: help.c:245
+#: help.c:246
 msgid "  \\d[S+]  NAME           describe table, view, sequence, or index\n"
 msgstr "  \\d[S+]  NOMBRE    describir tabla, índice, secuencia o vista\n"
 
-#: help.c:246
+#: help.c:247
 msgid "  \\da[S]  [PATTERN]      list aggregates\n"
 msgstr "  \\da[S]  [PATRÓN]  listar funciones de agregación\n"
 
-#: help.c:247
+#: help.c:248
 msgid "  \\dA[+]  [PATTERN]      list access methods\n"
 msgstr "  \\dA[+]  [PATRÓN]  listar métodos de acceso\n"
 
-#: help.c:248
+#: help.c:249
 msgid "  \\dAc[+] [AMPTRN [TYPEPTRN]]  list operator classes\n"
 msgstr "  \\dAc[+] [AMPTRN [TYPEPTRN]]  listar las clases de operadores\n"
 
-#: help.c:249
+#: help.c:250
 msgid "  \\dAf[+] [AMPTRN [TYPEPTRN]]  list operator families\n"
 msgstr "  \\dAf[+] [AMPTRN [TYPEPTRN]]  listar las familias de operadores\n"
 
-#: help.c:250
+#: help.c:251
 msgid "  \\dAo[+] [AMPTRN [OPFPTRN]]   list operators of operator families\n"
 msgstr "  \\dAo[+] [AMPTRN [OPFPTRN]]   listar los operadores de la familia de operadores\n"
 
-#: help.c:251
+#: help.c:252
 msgid "  \\dAp[+] [AMPTRN [OPFPTRN]]   list support functions of operator families\n"
 msgstr "  \\dAp[+] [AMPTRN [OPFPTRN]]   enumera las funciones de la familia de operadores\n"
 
-#: help.c:252
+#: help.c:253
 msgid "  \\db[+]  [PATTERN]      list tablespaces\n"
 msgstr "  \\db[+]  [PATRÓN]  listar tablespaces\n"
 
-#: help.c:253
+#: help.c:254
 msgid "  \\dc[S+] [PATTERN]      list conversions\n"
 msgstr "  \\dc[S+] [PATRÓN]  listar conversiones\n"
 
-#: help.c:254
+#: help.c:255
 msgid "  \\dconfig[+] [PATTERN]  list configuration parameters\n"
 msgstr "  \\dconfig[+] [PATRÓN]  listar parámetros de configuración\n"
 
-#: help.c:255
+#: help.c:256
 msgid "  \\dC[+]  [PATTERN]      list casts\n"
 msgstr "  \\dC[+]  [PATRÓN]  listar conversiones de tipo (casts)\n"
 
-#: help.c:256
+#: help.c:257
 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:257
+#: help.c:258
 msgid "  \\dD[S+] [PATTERN]      list domains\n"
 msgstr "  \\dD[S+] [PATRÓN]  listar dominios\n"
 
-#: help.c:258
+#: help.c:259
 msgid "  \\ddp    [PATTERN]      list default privileges\n"
 msgstr "  \\ddp    [PATRÓN]  listar privilegios por omisión\n"
 
-#: help.c:259
+#: help.c:260
 msgid "  \\dE[S+] [PATTERN]      list foreign tables\n"
 msgstr "  \\dE[S+] [PATRÓN]  listar tablas foráneas\n"
 
-#: help.c:260
+#: help.c:261
 msgid "  \\des[+] [PATTERN]      list foreign servers\n"
 msgstr "  \\des[+] [PATRÓN]  listar servidores foráneos\n"
 
-#: help.c:261
+#: help.c:262
 msgid "  \\det[+] [PATTERN]      list foreign tables\n"
 msgstr "  \\det[+] [PATRÓN]  listar tablas foráneas\n"
 
-#: help.c:262
+#: help.c:263
 msgid "  \\deu[+] [PATTERN]      list user mappings\n"
 msgstr "  \\deu[+] [PATRÓN]  listar mapeos de usuario\n"
 
-#: help.c:263
+#: help.c:264
 msgid "  \\dew[+] [PATTERN]      list foreign-data wrappers\n"
 msgstr "  \\dew[+] [PATRÓN]  listar conectores de datos externos\n"
 
-#: help.c:264
+#: help.c:265
 msgid ""
 "  \\df[anptw][S+] [FUNCPTRN [TYPEPTRN ...]]\n"
 "                         list [only agg/normal/procedure/trigger/window] functions\n"
@@ -2956,47 +3031,47 @@ msgstr ""
 "  \\df[anptw][S+] [FUNCPTRN [TYPEPTRN ...]]\n"
 "                    listar funciones [sólo ag./normal/proc./trigger/ventana]\n"
 
-#: help.c:266
+#: help.c:267
 msgid "  \\dF[+]  [PATTERN]      list text search configurations\n"
 msgstr "  \\dF[+]  [PATRÓN]  listar configuraciones de búsqueda en texto\n"
 
-#: help.c:267
+#: help.c:268
 msgid "  \\dFd[+] [PATTERN]      list text search dictionaries\n"
 msgstr "  \\dFd[+] [PATRÓN]  listar diccionarios de búsqueda en texto\n"
 
-#: help.c:268
+#: help.c:269
 msgid "  \\dFp[+] [PATTERN]      list text search parsers\n"
 msgstr "  \\dFp[+] [PATRÓN]  listar analizadores (parsers) de búsq. en texto\n"
 
-#: help.c:269
+#: help.c:270
 msgid "  \\dFt[+] [PATTERN]      list text search templates\n"
 msgstr "  \\dFt[+] [PATRÓN]  listar plantillas de búsqueda en texto\n"
 
-#: help.c:270
+#: help.c:271
 msgid "  \\dg[S+] [PATTERN]      list roles\n"
 msgstr "  \\dg[S+] [PATRÓN]  listar roles\n"
 
-#: help.c:271
+#: help.c:272
 msgid "  \\di[S+] [PATTERN]      list indexes\n"
 msgstr "  \\di[S+] [PATRÓN]  listar índices\n"
 
-#: help.c:272
+#: help.c:273
 msgid "  \\dl[+]                 list large objects, same as \\lo_list\n"
 msgstr "  \\dl[+]            listar objetos grandes, lo mismo que \\lo_list\n"
 
-#: help.c:273
+#: help.c:274
 msgid "  \\dL[S+] [PATTERN]      list procedural languages\n"
 msgstr "  \\dL[S+] [PATRÓN]  listar lenguajes procedurales\n"
 
-#: help.c:274
+#: help.c:275
 msgid "  \\dm[S+] [PATTERN]      list materialized views\n"
 msgstr "  \\dm[S+] [PATRÓN]  listar vistas materializadas\n"
 
-#: help.c:275
+#: help.c:276
 msgid "  \\dn[S+] [PATTERN]      list schemas\n"
 msgstr "  \\dn[S+] [PATRÓN]  listar esquemas\n"
 
-#: help.c:276
+#: help.c:277
 msgid ""
 "  \\do[S+] [OPPTRN [TYPEPTRN [TYPEPTRN]]]\n"
 "                         list operators\n"
@@ -3004,89 +3079,89 @@ msgstr ""
 "  \\do[S+] [OPPTRN [TYPEPTRN [TYPEPTRN]]]\n"
 "                    listar operadores\n"
 
-#: help.c:278
+#: help.c:279
 msgid "  \\dO[S+] [PATTERN]      list collations\n"
 msgstr "  \\dO[S]  [PATRÓN]  listar ordenamientos (collations)\n"
 
-#: help.c:279
+#: help.c:280
 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:280
+#: help.c:281
 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:281
+#: help.c:282
 msgid "  \\drds [ROLEPTRN [DBPTRN]] list per-database role settings\n"
 msgstr ""
 "  \\drds [PATRÓN_ROL [PATRÓN_BASE]]\n"
 "                    listar parámetros de rol por base de datos\n"
 
-#: help.c:282
+#: help.c:283
 msgid "  \\dRp[+] [PATTERN]      list replication publications\n"
 msgstr "  \\dRp[+] [PATRÓN]  listar publicaciones de replicación\n"
 
-#: help.c:283
+#: help.c:284
 msgid "  \\dRs[+] [PATTERN]      list replication subscriptions\n"
 msgstr "  \\dRs[+] [PATRÓN]  listar suscripciones de replicación\n"
 
-#: help.c:284
+#: help.c:285
 msgid "  \\ds[S+] [PATTERN]      list sequences\n"
 msgstr "  \\ds[S+] [PATRÓN]  listar secuencias\n"
 
-#: help.c:285
+#: help.c:286
 msgid "  \\dt[S+] [PATTERN]      list tables\n"
 msgstr "  \\dt[S+] [PATRÓN]  listar tablas\n"
 
-#: help.c:286
+#: help.c:287
 msgid "  \\dT[S+] [PATTERN]      list data types\n"
 msgstr "  \\dT[S+] [PATRÓN]  listar tipos de dato\n"
 
-#: help.c:287
+#: help.c:288
 msgid "  \\du[S+] [PATTERN]      list roles\n"
 msgstr "  \\du[S+] [PATRÓN]  listar roles\n"
 
-#: help.c:288
+#: help.c:289
 msgid "  \\dv[S+] [PATTERN]      list views\n"
 msgstr "  \\dv[S+] [PATRÓN]  listar vistas\n"
 
-#: help.c:289
+#: help.c:290
 msgid "  \\dx[+]  [PATTERN]      list extensions\n"
 msgstr "  \\dx[+]  [PATRÓN]  listar extensiones\n"
 
-#: help.c:290
+#: help.c:291
 msgid "  \\dX     [PATTERN]      list extended statistics\n"
 msgstr "  \\dX     [PATRÓN]  listar estadísticas extendidas\n"
 
-#: help.c:291
+#: help.c:292
 msgid "  \\dy[+]  [PATTERN]      list event triggers\n"
 msgstr "  \\dy[+]  [PATRÓN]  listar disparadores por eventos\n"
 
-#: help.c:292
+#: help.c:293
 msgid "  \\l[+]   [PATTERN]      list databases\n"
 msgstr "  \\l[+]   [PATRÓN]  listar bases de datos\n"
 
-#: help.c:293
+#: help.c:294
 msgid "  \\sf[+]  FUNCNAME       show a function's definition\n"
 msgstr "  \\sf[+]  FUNCIÓN   mostrar la definición de una función\n"
 
-#: help.c:294
+#: help.c:295
 msgid "  \\sv[+]  VIEWNAME       show a view's definition\n"
 msgstr "  \\sv[+]  VISTA     mostrar la definición de una vista\n"
 
-#: help.c:295
+#: help.c:296
 msgid "  \\z      [PATTERN]      same as \\dp\n"
 msgstr "  \\z      [PATRÓN]  lo mismo que \\dp\n"
 
-#: help.c:298
+#: help.c:299
 msgid "Large Objects\n"
 msgstr "Objetos Grandes\n"
 
-#: help.c:299
+#: help.c:300
 msgid "  \\lo_export LOBOID FILE write large object to file\n"
 msgstr "  \\lo_export LOBOID ARCHIVO escribir objeto grande a archivo\n"
 
-#: help.c:300
+#: help.c:301
 msgid ""
 "  \\lo_import FILE [COMMENT]\n"
 "                         read large object from file\n"
@@ -3094,38 +3169,38 @@ msgstr ""
 "  \\lo_import ARCHIVO [COMENTARIO]\n"
 "                    leer objeto grande desde archivo\n"
 
-#: help.c:302
+#: help.c:303
 msgid "  \\lo_list[+]            list large objects\n"
 msgstr "  \\lo_list[+]       listar objetos grandes\n"
 
-#: help.c:303
+#: help.c:304
 msgid "  \\lo_unlink LOBOID      delete a large object\n"
 msgstr "  \\lo_unlink LOBOID borrar un objeto grande\n"
 
-#: help.c:306
+#: help.c:307
 msgid "Formatting\n"
 msgstr "Formato\n"
 
-#: help.c:307
+#: help.c:308
 msgid "  \\a                     toggle between unaligned and aligned output mode\n"
 msgstr "  \\a              cambiar entre modo de salida alineado y sin alinear\n"
 
-#: help.c:308
+#: help.c:309
 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:309
+#: help.c:310
 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:310
+#: help.c:311
 #, c-format
 msgid "  \\H                     toggle HTML output mode (currently %s)\n"
 msgstr "  \\H              cambiar modo de salida HTML (actualmente %s)\n"
 
-#: help.c:312
+#: help.c:313
 msgid ""
 "  \\pset [NAME [VALUE]]   set table output option\n"
 "                         (border|columns|csv_fieldsep|expanded|fieldsep|\n"
@@ -3142,29 +3217,29 @@ msgstr ""
 "                   tuples_only|unicode_border_linestyle|unicode_column_linestyle|\n"
 "                   unicode_header_linestyle)\n"
 
-#: help.c:319
+#: help.c:320
 #, 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:321
+#: help.c:322
 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:322
+#: help.c:323
 #, 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:323
+#: help.c:324
 msgid "auto"
 msgstr "auto"
 
-#: help.c:326
+#: help.c:327
 msgid "Connection\n"
 msgstr "Conexiones\n"
 
-#: help.c:328
+#: help.c:329
 #, c-format
 msgid ""
 "  \\c[onnect] {[DBNAME|- USER|- HOST|- PORT|-] | conninfo}\n"
@@ -3173,7 +3248,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:332
+#: help.c:333
 msgid ""
 "  \\c[onnect] {[DBNAME|- USER|- HOST|- PORT|-] | conninfo}\n"
 "                         connect to new database (currently no connection)\n"
@@ -3181,72 +3256,72 @@ 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:334
+#: help.c:335
 msgid "  \\conninfo              display information about current connection\n"
 msgstr "  \\conninfo       despliega la información sobre la conexión actual\n"
 
-#: help.c:335
+#: help.c:336
 msgid "  \\encoding [ENCODING]   show or set client encoding\n"
 msgstr ""
 "  \\encoding [CODIFICACIÓN]\n"
 "                  mostrar o definir codificación del cliente\n"
 
-#: help.c:336
+#: help.c:337
 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:339
+#: help.c:340
 msgid "Operating System\n"
 msgstr "Sistema Operativo\n"
 
-#: help.c:340
+#: help.c:341
 msgid "  \\cd [DIR]              change the current working directory\n"
 msgstr "  \\cd [DIR]        cambiar el directorio de trabajo actual\n"
 
-#: help.c:341
+#: help.c:342
 msgid "  \\getenv PSQLVAR ENVVAR fetch environment variable\n"
 msgstr "  \\getenv PSQLVAR ENVVAR obtener variable de ambiente\n"
 
-#: help.c:342
+#: help.c:343
 msgid "  \\setenv NAME [VALUE]   set or unset environment variable\n"
 msgstr ""
 "  \\setenv NOMBRE [VALOR]\n"
 "                   definir o indefinir variable de ambiente\n"
 
-#: help.c:343
+#: help.c:344
 #, 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:345
+#: help.c:346
 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:348
+#: help.c:349
 msgid "Variables\n"
 msgstr "Variables\n"
 
-#: help.c:349
+#: help.c:350
 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:350
+#: help.c:351
 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:351
+#: help.c:352
 msgid "  \\unset NAME            unset (delete) internal variable\n"
 msgstr "  \\unset NOMBRE           indefinir (eliminar) variable interna\n"
 
-#: help.c:390
+#: help.c:391
 msgid ""
 "List of specially treated variables\n"
 "\n"
@@ -3254,11 +3329,11 @@ msgstr ""
 "Lista de variables con tratamiento especial\n"
 "\n"
 
-#: help.c:392
+#: help.c:393
 msgid "psql variables:\n"
 msgstr "variables psql:\n"
 
-#: help.c:394
+#: help.c:395
 msgid ""
 "  psql --set=NAME=VALUE\n"
 "  or \\set NAME VALUE inside psql\n"
@@ -3267,7 +3342,7 @@ msgstr ""
 "  psql --set=NOMBRE=VALOR\n"
 "  o \\set NOMBRE VALOR dentro de psql\n"
 
-#: help.c:396
+#: help.c:397
 msgid ""
 "  AUTOCOMMIT\n"
 "    if set, successful SQL commands are automatically committed\n"
@@ -3275,7 +3350,7 @@ msgstr ""
 "  AUTOCOMMIT         si está definida, órdenes SQL exitosas se comprometen\n"
 "                     automáticamente\n"
 
-#: help.c:398
+#: help.c:399
 msgid ""
 "  COMP_KEYWORD_CASE\n"
 "    determines the case used to complete SQL key words\n"
@@ -3284,13 +3359,13 @@ msgstr ""
 "  COMP_KEYWORD_CASE  determina si usar mayúsculas al completar palabras SQL\n"
 "                     [lower, upper, preserve-lower, preserve-upper]\n"
 
-#: help.c:401
+#: help.c:402
 msgid ""
 "  DBNAME\n"
 "    the currently connected database name\n"
 msgstr "  DBNAME             la base de datos actualmente conectada\n"
 
-#: help.c:403
+#: help.c:404
 msgid ""
 "  ECHO\n"
 "    controls what input is written to standard output\n"
@@ -3299,7 +3374,7 @@ msgstr ""
 "  ECHO               controla qué entrada se escribe a la salida estándar\n"
 "                     [all, errors, none, queries]\n"
 
-#: help.c:406
+#: help.c:407
 msgid ""
 "  ECHO_HIDDEN\n"
 "    if set, display internal queries executed by backslash commands;\n"
@@ -3308,19 +3383,19 @@ msgstr ""
 "  ECHO_HIDDEN        muestra consultas internas usadas por órdenes backslash\n"
 "                     con «noexec» sólo las muestra sin ejecutarlas\n"
 
-#: help.c:409
+#: help.c:410
 msgid ""
 "  ENCODING\n"
 "    current client character set encoding\n"
 msgstr "  ENCODING           codificación actual del cliente\n"
 
-#: help.c:411
+#: help.c:412
 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:413
+#: help.c:414
 msgid ""
 "  FETCH_COUNT\n"
 "    the number of result rows to fetch and display at a time (0 = unlimited)\n"
@@ -3328,7 +3403,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:415
+#: help.c:416
 msgid ""
 "  HIDE_TABLEAM\n"
 "    if set, table access methods are not displayed\n"
@@ -3336,7 +3411,7 @@ msgstr ""
 "  HIDE_TABLEAM\n"
 "                     ocultar métodos de acceso de tabla\n"
 
-#: help.c:417
+#: help.c:418
 msgid ""
 "  HIDE_TOAST_COMPRESSION\n"
 "    if set, compression methods are not displayed\n"
@@ -3344,7 +3419,7 @@ msgstr ""
 "  HIDE_TOAST_COMPRESSION\n"
 "                     ocultar métodos de compresión\n"
 
-#: help.c:419
+#: help.c:420
 msgid ""
 "  HISTCONTROL\n"
 "    controls command history [ignorespace, ignoredups, ignoreboth]\n"
@@ -3352,25 +3427,25 @@ msgstr ""
 "  HISTCONTROL        controla la lista de historia de órdenes\n"
 "                     [ignorespace, ignoredups, ignoreboth]\n"
 
-#: help.c:421
+#: help.c:422
 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:423
+#: help.c:424
 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:425
+#: help.c:426
 msgid ""
 "  HOST\n"
 "    the currently connected database server host\n"
 msgstr "  HOST               el servidor actualmente conectado\n"
 
-#: help.c:427
+#: help.c:428
 msgid ""
 "  IGNOREEOF\n"
 "    number of EOFs needed to terminate an interactive session\n"
@@ -3378,13 +3453,13 @@ msgstr ""
 "  IGNOREEOF          si no está definida, enviar un EOF a sesión interactiva\n"
 "                     termina la aplicación\n"
 
-#: help.c:429
+#: help.c:430
 msgid ""
 "  LASTOID\n"
 "    value of the last affected OID\n"
 msgstr "  LASTOID            el valor del último OID afectado\n"
 
-#: help.c:431
+#: help.c:432
 msgid ""
 "  LAST_ERROR_MESSAGE\n"
 "  LAST_ERROR_SQLSTATE\n"
@@ -3395,7 +3470,7 @@ msgstr ""
 "                     mensaje y SQLSTATE del último error, o cadena vacía y\n"
 "                     «00000» si no hubo\n"
 
-#: help.c:434
+#: help.c:435
 msgid ""
 "  ON_ERROR_ROLLBACK\n"
 "    if set, an error doesn't stop a transaction (uses implicit savepoints)\n"
@@ -3403,25 +3478,25 @@ msgstr ""
 "  ON_ERROR_ROLLBACK  si está definido, un error no aborta la transacción\n"
 "                     (usa «savepoints» implícitos)\n"
 
-#: help.c:436
+#: help.c:437
 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:438
+#: help.c:439
 msgid ""
 "  PORT\n"
 "    server port of the current connection\n"
 msgstr "  PORT               puerto del servidor de la conexión actual\n"
 
-#: help.c:440
+#: help.c:441
 msgid ""
 "  PROMPT1\n"
 "    specifies the standard psql prompt\n"
 msgstr "  PROMPT1            especifica el prompt estándar de psql\n"
 
-#: help.c:442
+#: help.c:443
 msgid ""
 "  PROMPT2\n"
 "    specifies the prompt used when a statement continues from a previous line\n"
@@ -3429,19 +3504,19 @@ msgstr ""
 "  PROMPT2            especifica el prompt usado cuando una sentencia continúa\n"
 "                     de una línea anterior\n"
 
-#: help.c:444
+#: help.c:445
 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:446
+#: help.c:447
 msgid ""
 "  QUIET\n"
 "    run quietly (same as -q option)\n"
 msgstr "  QUIET              ejecuta silenciosamente (igual que -q)\n"
 
-#: help.c:448
+#: help.c:449
 msgid ""
 "  ROW_COUNT\n"
 "    number of rows returned or affected by last query, or 0\n"
@@ -3449,7 +3524,7 @@ msgstr ""
 "  ROW_COUNT          número de tuplas retornadas o afectadas por última\n"
 "                     consulta, o 0\n"
 
-#: help.c:450
+#: help.c:451
 msgid ""
 "  SERVER_VERSION_NAME\n"
 "  SERVER_VERSION_NUM\n"
@@ -3459,7 +3534,27 @@ msgstr ""
 "  SERVER_VERSION_NUM\n"
 "                     versión del servidor (cadena corta o numérica)\n"
 
-#: help.c:453
+#: help.c:454
+#, fuzzy
+#| msgid ""
+#| "  ERROR\n"
+#| "    true if last query failed, else false\n"
+msgid ""
+"  SHELL_ERROR\n"
+"    true if the last shell command failed, false if it succeeded\n"
+msgstr "  ERROR              verdadero si la última consulta falló; si no, falso\n"
+
+#: help.c:456
+#, fuzzy
+#| msgid ""
+#| "  SHELL\n"
+#| "    shell used by the \\! command\n"
+msgid ""
+"  SHELL_EXIT_CODE\n"
+"    exit status of the last shell command\n"
+msgstr "  SHELL              intérprete usado por la orden \\!\n"
+
+#: help.c:458
 msgid ""
 "  SHOW_ALL_RESULTS\n"
 "    show all results of a combined query (\\;) instead of only the last\n"
@@ -3468,7 +3563,7 @@ msgstr ""
 "    mostrar todos los resultados de una consulta combinada (\\;) en lugar\n"
 "    de sólo mostrar el último\n"
 
-#: help.c:455
+#: help.c:460
 msgid ""
 "  SHOW_CONTEXT\n"
 "    controls display of message context fields [never, errors, always]\n"
@@ -3476,31 +3571,31 @@ msgstr ""
 "  SHOW_CONTEXT       controla el despliegue de campos de contexto de mensaje\n"
 "                     [never, errors, always]\n"
 
-#: help.c:457
+#: help.c:462
 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:459
+#: help.c:464
 msgid ""
 "  SINGLESTEP\n"
 "    single-step mode (same as -s option)\n"
 msgstr "  SINGLESTEP         modo paso a paso (igual que -s)\n"
 
-#: help.c:461
+#: help.c:466
 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:463
+#: help.c:468
 msgid ""
 "  USER\n"
 "    the currently connected database user\n"
 msgstr "  USER               el usuario actualmente conectado\n"
 
-#: help.c:465
+#: help.c:470
 msgid ""
 "  VERBOSITY\n"
 "    controls verbosity of error reports [default, verbose, terse, sqlstate]\n"
@@ -3508,7 +3603,7 @@ msgstr ""
 "  VERBOSITY          controla la verbosidad de errores [default, verbose,\n"
 "                     terse, sqlstate]\n"
 
-#: help.c:467
+#: help.c:472
 msgid ""
 "  VERSION\n"
 "  VERSION_NAME\n"
@@ -3520,7 +3615,7 @@ msgstr ""
 "  VERSION_NUM\n"
 "                     versión de psql (cadena verbosa, corta o numérica)\n"
 
-#: help.c:472
+#: help.c:477
 msgid ""
 "\n"
 "Display settings:\n"
@@ -3528,7 +3623,7 @@ msgstr ""
 "\n"
 "Parámetros de despliegue:\n"
 
-#: help.c:474
+#: help.c:479
 msgid ""
 "  psql --pset=NAME[=VALUE]\n"
 "  or \\pset NAME [VALUE] inside psql\n"
@@ -3538,25 +3633,25 @@ msgstr ""
 "  o \\pset NOMBRE [VALOR] dentro de psql\n"
 "\n"
 
-#: help.c:476
+#: help.c:481
 msgid ""
 "  border\n"
 "    border style (number)\n"
 msgstr "  border             estilo de borde (número)\n"
 
-#: help.c:478
+#: help.c:483
 msgid ""
 "  columns\n"
 "    target width for the wrapped format\n"
 msgstr "  columns            define el ancho para formato «wrapped»\n"
 
-#: help.c:480
+#: help.c:485
 msgid ""
 "  expanded (or x)\n"
 "    expanded output [on, off, auto]\n"
 msgstr "  expanded (o x)     salida expandida [on, off, auto]\n"
 
-#: help.c:482
+#: help.c:487
 #, c-format
 msgid ""
 "  fieldsep\n"
@@ -3565,37 +3660,37 @@ msgstr ""
 "  fieldsep           separador de campos para formato «unaligned»\n"
 "                     (por omisión: «%s»)\n"
 
-#: help.c:485
+#: help.c:490
 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:487
+#: help.c:492
 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:489
+#: help.c:494
 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:491
+#: help.c:496
 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:493
+#: help.c:498
 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:495
+#: help.c:500
 msgid ""
 "  numericlocale\n"
 "    enable display of a locale-specific character to separate groups of digits\n"
@@ -3603,26 +3698,26 @@ msgstr ""
 "  numericlocale      activa despliegue de carácter específico del lenguaje para\n"
 "                     separar grupos de dígitos\n"
 
-#: help.c:497
+#: help.c:502
 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:499
+#: help.c:504
 msgid ""
 "  recordsep\n"
 "    record (line) separator for unaligned output\n"
 msgstr "  recordsep          separador de registros (líneas) para formato «unaligned»\n"
 
-#: help.c:501
+#: help.c:506
 msgid ""
 "  recordsep_zero\n"
 "    set record separator for unaligned output to a zero byte\n"
 msgstr "  recordsep_zero     separador de registros en «unaligned» es byte cero\n"
 
 # XXX WTF does this mean?
-#: help.c:503
+#: help.c:508
 msgid ""
 "  tableattr (or T)\n"
 "    specify attributes for table tag in html format, or proportional\n"
@@ -3632,19 +3727,19 @@ msgstr ""
 "                     o ancho proporcional de columnas alineadas a la izquierda\n"
 "                     en formato «latex-longtable»\n"
 
-#: help.c:506
+#: help.c:511
 msgid ""
 "  title\n"
 "    set the table title for subsequently printed tables\n"
 msgstr "  title              define el título de tablas\n"
 
-#: help.c:508
+#: help.c:513
 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:510
+#: help.c:515
 msgid ""
 "  unicode_border_linestyle\n"
 "  unicode_column_linestyle\n"
@@ -3656,7 +3751,7 @@ msgstr ""
 "  unicode_header_linestyle\n"
 "                     define el estilo de líneas Unicode [single, double]\n"
 
-#: help.c:515
+#: help.c:520
 msgid ""
 "\n"
 "Environment variables:\n"
@@ -3664,7 +3759,7 @@ msgstr ""
 "\n"
 "Variables de ambiente:\n"
 
-#: help.c:519
+#: help.c:524
 msgid ""
 "  NAME=VALUE [NAME=VALUE] psql ...\n"
 "  or \\setenv NAME [VALUE] inside psql\n"
@@ -3673,7 +3768,7 @@ msgstr ""
 "  NOMBRE=VALOR [NOMBRE=VALOR] psql ...\n"
 "  o \\setenv NOMBRE [VALOR] dentro de psql\n"
 
-#: help.c:521
+#: help.c:526
 msgid ""
 "  set NAME=VALUE\n"
 "  psql ...\n"
@@ -3684,55 +3779,55 @@ msgstr ""
 "  psql ...\n"
 "  o \\setenv NOMBRE [VALOR] dentro de psql\n"
 
-#: help.c:524
+#: help.c:529
 msgid ""
 "  COLUMNS\n"
 "    number of columns for wrapped format\n"
 msgstr "  COLUMNS            número de columnas para formato «wrapped»\n"
 
-#: help.c:526
+#: help.c:531
 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:528
+#: help.c:533
 msgid ""
 "  PGDATABASE\n"
 "    same as the dbname connection parameter\n"
 msgstr "  PGDATABASE         igual que el parámetro de conexión dbname\n"
 
-#: help.c:530
+#: help.c:535
 msgid ""
 "  PGHOST\n"
 "    same as the host connection parameter\n"
 msgstr "  PGHOST             igual que el parámetro de conexión host\n"
 
-#: help.c:532
+#: help.c:537
 msgid ""
 "  PGPASSFILE\n"
 "    password file name\n"
 msgstr "  PGPASSFILE         nombre de archivo de contraseñas\n"
 
-#: help.c:534
+#: help.c:539
 msgid ""
 "  PGPASSWORD\n"
 "    connection password (not recommended)\n"
 msgstr "  PGPASSWORD         contraseña de la conexión (no recomendado)\n"
 
-#: help.c:536
+#: help.c:541
 msgid ""
 "  PGPORT\n"
 "    same as the port connection parameter\n"
 msgstr "  PGPORT             igual que el parámetro de conexión port\n"
 
-#: help.c:538
+#: help.c:543
 msgid ""
 "  PGUSER\n"
 "    same as the user connection parameter\n"
 msgstr "  PGUSER             igual que el parámetro de conexión user\n"
 
-#: help.c:540
+#: help.c:545
 msgid ""
 "  PSQL_EDITOR, EDITOR, VISUAL\n"
 "    editor used by the \\e, \\ef, and \\ev commands\n"
@@ -3740,7 +3835,7 @@ msgstr ""
 "  PSQL_EDITOR, EDITOR, VISUAL\n"
 "                     editor usado por órdenes \\e, \\ef, y \\ev\n"
 
-#: help.c:542
+#: help.c:547
 msgid ""
 "  PSQL_EDITOR_LINENUMBER_ARG\n"
 "    how to specify a line number when invoking the editor\n"
@@ -3748,47 +3843,47 @@ msgstr ""
 "  PSQL_EDITOR_LINENUMBER_ARGS\n"
 "                     cómo especificar número de línea al invocar al editor\n"
 
-#: help.c:544
+#: help.c:549
 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:546
+#: help.c:551
 msgid ""
 "  PSQL_PAGER, PAGER\n"
 "    name of external pager program\n"
 msgstr "  PSQL_PAGER, PAGER  nombre de programa paginador externo\n"
 
-#: help.c:549
+#: help.c:554
 msgid ""
 "  PSQL_WATCH_PAGER\n"
 "    name of external pager program used for \\watch\n"
 msgstr "  PSQL_WATCH_PAGER   paginador externo para usar con \\watch\n"
 
-#: help.c:552
+#: help.c:557
 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:554
+#: help.c:559
 msgid ""
 "  SHELL\n"
 "    shell used by the \\! command\n"
 msgstr "  SHELL              intérprete usado por la orden \\!\n"
 
-#: help.c:556
+#: help.c:561
 msgid ""
 "  TMPDIR\n"
 "    directory for temporary files\n"
 msgstr "  TMPDIR             directorio para archivos temporales\n"
 
-#: help.c:616
+#: help.c:621
 msgid "Available help:\n"
 msgstr "Ayuda disponible:\n"
 
-#: help.c:711
+#: help.c:716
 #, c-format
 msgid ""
 "Command:     %s\n"
@@ -3807,7 +3902,7 @@ msgstr ""
 "URL: %s\n"
 "\n"
 
-#: help.c:734
+#: help.c:739
 #, c-format
 msgid ""
 "No help available for \"%s\".\n"
@@ -3816,17 +3911,17 @@ msgstr ""
 "No hay ayuda disponible para «%s».\n"
 "Pruebe \\h sin argumentos para mostrar los elementos de ayuda disponibles.\n"
 
-#: input.c:217
+#: input.c:216
 #, c-format
 msgid "could not read from input file: %m"
 msgstr "no se pudo leer el archivo de entrada: %m"
 
-#: input.c:478 input.c:516
+#: input.c:477 input.c:515
 #, c-format
 msgid "could not save history to file \"%s\": %m"
 msgstr "no se pudo guardar historial a archivo «%s»: %m"
 
-#: input.c:535
+#: input.c:534
 #, c-format
 msgid "history is not supported by this installation"
 msgstr "el historial de órdenes no está soportado en esta instalación"
@@ -3913,12 +4008,12 @@ msgstr "consulta ignorada; use \\endif o Ctrl-C para salir del bloque \\if actua
 msgid "reached EOF without finding closing \\endif(s)"
 msgstr "se alcanzó EOF sin encontrar el/los \\endif de cierre"
 
-#: psqlscanslash.l:638
+#: psqlscanslash.l:640
 #, c-format
 msgid "unterminated quoted string"
 msgstr "una cadena de caracteres entre comillas está inconclusa"
 
-#: psqlscanslash.l:811
+#: psqlscanslash.l:825
 #, c-format
 msgid "%s: out of memory"
 msgstr "%s: memoria agotada"
@@ -3926,2408 +4021,2442 @@ msgstr "%s: memoria agotada"
 #: sql_help.c:35 sql_help.c:38 sql_help.c:41 sql_help.c:65 sql_help.c:66
 #: sql_help.c:68 sql_help.c:70 sql_help.c:81 sql_help.c:83 sql_help.c:85
 #: sql_help.c:113 sql_help.c:119 sql_help.c:121 sql_help.c:123 sql_help.c:125
-#: sql_help.c:126 sql_help.c:129 sql_help.c:131 sql_help.c:133 sql_help.c:238
-#: sql_help.c:240 sql_help.c:241 sql_help.c:243 sql_help.c:245 sql_help.c:248
-#: sql_help.c:250 sql_help.c:252 sql_help.c:254 sql_help.c:266 sql_help.c:267
-#: sql_help.c:268 sql_help.c:270 sql_help.c:319 sql_help.c:321 sql_help.c:323
-#: sql_help.c:325 sql_help.c:394 sql_help.c:399 sql_help.c:401 sql_help.c:443
-#: sql_help.c:445 sql_help.c:448 sql_help.c:450 sql_help.c:519 sql_help.c:524
-#: sql_help.c:529 sql_help.c:534 sql_help.c:539 sql_help.c:593 sql_help.c:595
-#: sql_help.c:597 sql_help.c:599 sql_help.c:601 sql_help.c:604 sql_help.c:606
-#: sql_help.c:609 sql_help.c:620 sql_help.c:622 sql_help.c:666 sql_help.c:668
-#: sql_help.c:670 sql_help.c:673 sql_help.c:675 sql_help.c:677 sql_help.c:714
-#: sql_help.c:718 sql_help.c:722 sql_help.c:741 sql_help.c:744 sql_help.c:747
-#: sql_help.c:776 sql_help.c:788 sql_help.c:796 sql_help.c:799 sql_help.c:802
-#: sql_help.c:817 sql_help.c:820 sql_help.c:849 sql_help.c:854 sql_help.c:859
-#: sql_help.c:864 sql_help.c:869 sql_help.c:896 sql_help.c:898 sql_help.c:900
-#: sql_help.c:902 sql_help.c:905 sql_help.c:907 sql_help.c:954 sql_help.c:999
-#: sql_help.c:1004 sql_help.c:1009 sql_help.c:1014 sql_help.c:1019
-#: sql_help.c:1038 sql_help.c:1049 sql_help.c:1051 sql_help.c:1071
-#: sql_help.c:1081 sql_help.c:1082 sql_help.c:1084 sql_help.c:1086
-#: sql_help.c:1098 sql_help.c:1102 sql_help.c:1104 sql_help.c:1116
-#: sql_help.c:1118 sql_help.c:1120 sql_help.c:1122 sql_help.c:1141
-#: sql_help.c:1143 sql_help.c:1147 sql_help.c:1151 sql_help.c:1155
-#: sql_help.c:1158 sql_help.c:1159 sql_help.c:1160 sql_help.c:1163
-#: sql_help.c:1166 sql_help.c:1168 sql_help.c:1308 sql_help.c:1310
-#: sql_help.c:1313 sql_help.c:1316 sql_help.c:1318 sql_help.c:1320
-#: sql_help.c:1323 sql_help.c:1326 sql_help.c:1443 sql_help.c:1445
-#: sql_help.c:1447 sql_help.c:1450 sql_help.c:1471 sql_help.c:1474
-#: sql_help.c:1477 sql_help.c:1480 sql_help.c:1484 sql_help.c:1486
-#: sql_help.c:1488 sql_help.c:1490 sql_help.c:1504 sql_help.c:1507
-#: sql_help.c:1509 sql_help.c:1511 sql_help.c:1521 sql_help.c:1523
-#: sql_help.c:1533 sql_help.c:1535 sql_help.c:1545 sql_help.c:1548
-#: sql_help.c:1571 sql_help.c:1573 sql_help.c:1575 sql_help.c:1577
-#: sql_help.c:1580 sql_help.c:1582 sql_help.c:1585 sql_help.c:1588
-#: sql_help.c:1639 sql_help.c:1682 sql_help.c:1685 sql_help.c:1687
-#: sql_help.c:1689 sql_help.c:1692 sql_help.c:1694 sql_help.c:1696
-#: sql_help.c:1699 sql_help.c:1749 sql_help.c:1765 sql_help.c:1996
-#: sql_help.c:2065 sql_help.c:2084 sql_help.c:2097 sql_help.c:2154
-#: sql_help.c:2161 sql_help.c:2171 sql_help.c:2197 sql_help.c:2228
-#: sql_help.c:2246 sql_help.c:2274 sql_help.c:2385 sql_help.c:2431
-#: sql_help.c:2456 sql_help.c:2479 sql_help.c:2483 sql_help.c:2517
-#: sql_help.c:2537 sql_help.c:2559 sql_help.c:2573 sql_help.c:2594
-#: sql_help.c:2623 sql_help.c:2658 sql_help.c:2683 sql_help.c:2730
-#: sql_help.c:3025 sql_help.c:3038 sql_help.c:3055 sql_help.c:3071
-#: sql_help.c:3111 sql_help.c:3165 sql_help.c:3169 sql_help.c:3171
-#: sql_help.c:3178 sql_help.c:3197 sql_help.c:3224 sql_help.c:3259
-#: sql_help.c:3271 sql_help.c:3280 sql_help.c:3324 sql_help.c:3338
-#: sql_help.c:3366 sql_help.c:3374 sql_help.c:3386 sql_help.c:3396
-#: sql_help.c:3404 sql_help.c:3412 sql_help.c:3420 sql_help.c:3428
-#: sql_help.c:3437 sql_help.c:3448 sql_help.c:3456 sql_help.c:3464
-#: sql_help.c:3472 sql_help.c:3480 sql_help.c:3490 sql_help.c:3499
-#: sql_help.c:3508 sql_help.c:3516 sql_help.c:3526 sql_help.c:3537
-#: sql_help.c:3545 sql_help.c:3554 sql_help.c:3565 sql_help.c:3574
-#: sql_help.c:3582 sql_help.c:3590 sql_help.c:3598 sql_help.c:3606
-#: sql_help.c:3614 sql_help.c:3622 sql_help.c:3630 sql_help.c:3638
-#: sql_help.c:3646 sql_help.c:3654 sql_help.c:3671 sql_help.c:3680
-#: sql_help.c:3688 sql_help.c:3705 sql_help.c:3720 sql_help.c:4031
-#: sql_help.c:4142 sql_help.c:4171 sql_help.c:4186 sql_help.c:4689
-#: sql_help.c:4737 sql_help.c:4895
+#: sql_help.c:126 sql_help.c:130 sql_help.c:132 sql_help.c:134 sql_help.c:239
+#: sql_help.c:241 sql_help.c:242 sql_help.c:244 sql_help.c:246 sql_help.c:249
+#: sql_help.c:251 sql_help.c:253 sql_help.c:255 sql_help.c:267 sql_help.c:268
+#: sql_help.c:269 sql_help.c:271 sql_help.c:320 sql_help.c:322 sql_help.c:324
+#: sql_help.c:326 sql_help.c:395 sql_help.c:400 sql_help.c:402 sql_help.c:444
+#: sql_help.c:446 sql_help.c:449 sql_help.c:451 sql_help.c:520 sql_help.c:525
+#: sql_help.c:530 sql_help.c:535 sql_help.c:540 sql_help.c:594 sql_help.c:596
+#: sql_help.c:598 sql_help.c:600 sql_help.c:602 sql_help.c:605 sql_help.c:607
+#: sql_help.c:610 sql_help.c:621 sql_help.c:623 sql_help.c:667 sql_help.c:669
+#: sql_help.c:671 sql_help.c:674 sql_help.c:676 sql_help.c:678 sql_help.c:715
+#: sql_help.c:719 sql_help.c:723 sql_help.c:742 sql_help.c:745 sql_help.c:748
+#: sql_help.c:777 sql_help.c:789 sql_help.c:797 sql_help.c:800 sql_help.c:803
+#: sql_help.c:818 sql_help.c:821 sql_help.c:850 sql_help.c:855 sql_help.c:860
+#: sql_help.c:865 sql_help.c:870 sql_help.c:897 sql_help.c:899 sql_help.c:901
+#: sql_help.c:903 sql_help.c:906 sql_help.c:908 sql_help.c:955 sql_help.c:1001
+#: sql_help.c:1006 sql_help.c:1011 sql_help.c:1016 sql_help.c:1021
+#: sql_help.c:1040 sql_help.c:1051 sql_help.c:1053 sql_help.c:1073
+#: sql_help.c:1083 sql_help.c:1084 sql_help.c:1086 sql_help.c:1088
+#: sql_help.c:1100 sql_help.c:1104 sql_help.c:1106 sql_help.c:1118
+#: sql_help.c:1120 sql_help.c:1122 sql_help.c:1124 sql_help.c:1143
+#: sql_help.c:1145 sql_help.c:1149 sql_help.c:1153 sql_help.c:1157
+#: sql_help.c:1160 sql_help.c:1161 sql_help.c:1162 sql_help.c:1165
+#: sql_help.c:1168 sql_help.c:1170 sql_help.c:1310 sql_help.c:1312
+#: sql_help.c:1315 sql_help.c:1318 sql_help.c:1320 sql_help.c:1322
+#: sql_help.c:1325 sql_help.c:1328 sql_help.c:1445 sql_help.c:1447
+#: sql_help.c:1449 sql_help.c:1452 sql_help.c:1473 sql_help.c:1476
+#: sql_help.c:1479 sql_help.c:1482 sql_help.c:1486 sql_help.c:1488
+#: sql_help.c:1490 sql_help.c:1492 sql_help.c:1506 sql_help.c:1509
+#: sql_help.c:1511 sql_help.c:1513 sql_help.c:1523 sql_help.c:1525
+#: sql_help.c:1535 sql_help.c:1537 sql_help.c:1547 sql_help.c:1550
+#: sql_help.c:1573 sql_help.c:1575 sql_help.c:1577 sql_help.c:1579
+#: sql_help.c:1582 sql_help.c:1584 sql_help.c:1587 sql_help.c:1590
+#: sql_help.c:1641 sql_help.c:1685 sql_help.c:1688 sql_help.c:1690
+#: sql_help.c:1692 sql_help.c:1695 sql_help.c:1697 sql_help.c:1699
+#: sql_help.c:1702 sql_help.c:1754 sql_help.c:1770 sql_help.c:2003
+#: sql_help.c:2072 sql_help.c:2091 sql_help.c:2104 sql_help.c:2162
+#: sql_help.c:2170 sql_help.c:2180 sql_help.c:2207 sql_help.c:2239
+#: sql_help.c:2257 sql_help.c:2285 sql_help.c:2396 sql_help.c:2442
+#: sql_help.c:2467 sql_help.c:2490 sql_help.c:2494 sql_help.c:2528
+#: sql_help.c:2548 sql_help.c:2570 sql_help.c:2584 sql_help.c:2605
+#: sql_help.c:2634 sql_help.c:2669 sql_help.c:2694 sql_help.c:2741
+#: sql_help.c:3036 sql_help.c:3049 sql_help.c:3066 sql_help.c:3082
+#: sql_help.c:3122 sql_help.c:3176 sql_help.c:3180 sql_help.c:3182
+#: sql_help.c:3189 sql_help.c:3208 sql_help.c:3235 sql_help.c:3270
+#: sql_help.c:3282 sql_help.c:3291 sql_help.c:3335 sql_help.c:3349
+#: sql_help.c:3377 sql_help.c:3385 sql_help.c:3397 sql_help.c:3407
+#: sql_help.c:3415 sql_help.c:3423 sql_help.c:3431 sql_help.c:3439
+#: sql_help.c:3448 sql_help.c:3459 sql_help.c:3467 sql_help.c:3475
+#: sql_help.c:3483 sql_help.c:3491 sql_help.c:3501 sql_help.c:3510
+#: sql_help.c:3519 sql_help.c:3527 sql_help.c:3537 sql_help.c:3548
+#: sql_help.c:3556 sql_help.c:3565 sql_help.c:3576 sql_help.c:3585
+#: sql_help.c:3593 sql_help.c:3601 sql_help.c:3609 sql_help.c:3617
+#: sql_help.c:3625 sql_help.c:3633 sql_help.c:3641 sql_help.c:3649
+#: sql_help.c:3657 sql_help.c:3665 sql_help.c:3682 sql_help.c:3691
+#: sql_help.c:3699 sql_help.c:3716 sql_help.c:3731 sql_help.c:4043
+#: sql_help.c:4153 sql_help.c:4182 sql_help.c:4198 sql_help.c:4200
+#: sql_help.c:4703 sql_help.c:4751 sql_help.c:4909
 msgid "name"
 msgstr "nombre"
 
-#: sql_help.c:36 sql_help.c:39 sql_help.c:42 sql_help.c:330 sql_help.c:1846
-#: sql_help.c:3339 sql_help.c:4457
+#: sql_help.c:36 sql_help.c:39 sql_help.c:42 sql_help.c:331 sql_help.c:1851
+#: sql_help.c:3350 sql_help.c:4471
 msgid "aggregate_signature"
 msgstr "signatura_func_agregación"
 
-#: sql_help.c:37 sql_help.c:67 sql_help.c:82 sql_help.c:120 sql_help.c:253
-#: sql_help.c:271 sql_help.c:402 sql_help.c:449 sql_help.c:528 sql_help.c:576
-#: sql_help.c:594 sql_help.c:621 sql_help.c:674 sql_help.c:743 sql_help.c:798
-#: sql_help.c:819 sql_help.c:858 sql_help.c:908 sql_help.c:955 sql_help.c:1008
-#: sql_help.c:1040 sql_help.c:1050 sql_help.c:1085 sql_help.c:1105
-#: sql_help.c:1119 sql_help.c:1169 sql_help.c:1317 sql_help.c:1444
-#: sql_help.c:1487 sql_help.c:1508 sql_help.c:1522 sql_help.c:1534
-#: sql_help.c:1547 sql_help.c:1574 sql_help.c:1640 sql_help.c:1693
+#: sql_help.c:37 sql_help.c:67 sql_help.c:82 sql_help.c:120 sql_help.c:254
+#: sql_help.c:272 sql_help.c:403 sql_help.c:450 sql_help.c:529 sql_help.c:577
+#: sql_help.c:595 sql_help.c:622 sql_help.c:675 sql_help.c:744 sql_help.c:799
+#: sql_help.c:820 sql_help.c:859 sql_help.c:909 sql_help.c:956 sql_help.c:1010
+#: sql_help.c:1042 sql_help.c:1052 sql_help.c:1087 sql_help.c:1107
+#: sql_help.c:1121 sql_help.c:1171 sql_help.c:1319 sql_help.c:1446
+#: sql_help.c:1489 sql_help.c:1510 sql_help.c:1524 sql_help.c:1536
+#: sql_help.c:1549 sql_help.c:1576 sql_help.c:1642 sql_help.c:1696
 msgid "new_name"
 msgstr "nuevo_nombre"
 
-#: sql_help.c:40 sql_help.c:69 sql_help.c:84 sql_help.c:122 sql_help.c:251
-#: sql_help.c:269 sql_help.c:400 sql_help.c:485 sql_help.c:533 sql_help.c:623
-#: sql_help.c:632 sql_help.c:697 sql_help.c:717 sql_help.c:746 sql_help.c:801
-#: sql_help.c:863 sql_help.c:906 sql_help.c:1013 sql_help.c:1052
-#: sql_help.c:1083 sql_help.c:1103 sql_help.c:1117 sql_help.c:1167
-#: sql_help.c:1381 sql_help.c:1446 sql_help.c:1489 sql_help.c:1510
-#: sql_help.c:1572 sql_help.c:1688 sql_help.c:3011
+#: sql_help.c:40 sql_help.c:69 sql_help.c:84 sql_help.c:122 sql_help.c:252
+#: sql_help.c:270 sql_help.c:401 sql_help.c:486 sql_help.c:534 sql_help.c:624
+#: sql_help.c:633 sql_help.c:698 sql_help.c:718 sql_help.c:747 sql_help.c:802
+#: sql_help.c:864 sql_help.c:907 sql_help.c:1015 sql_help.c:1054
+#: sql_help.c:1085 sql_help.c:1105 sql_help.c:1119 sql_help.c:1169
+#: sql_help.c:1383 sql_help.c:1448 sql_help.c:1491 sql_help.c:1512
+#: sql_help.c:1574 sql_help.c:1691 sql_help.c:3022
 msgid "new_owner"
 msgstr "nuevo_dueño"
 
-#: sql_help.c:43 sql_help.c:71 sql_help.c:86 sql_help.c:255 sql_help.c:322
-#: sql_help.c:451 sql_help.c:538 sql_help.c:676 sql_help.c:721 sql_help.c:749
-#: sql_help.c:804 sql_help.c:868 sql_help.c:1018 sql_help.c:1087
-#: sql_help.c:1121 sql_help.c:1319 sql_help.c:1491 sql_help.c:1512
-#: sql_help.c:1524 sql_help.c:1536 sql_help.c:1576 sql_help.c:1695
+#: sql_help.c:43 sql_help.c:71 sql_help.c:86 sql_help.c:256 sql_help.c:323
+#: sql_help.c:452 sql_help.c:539 sql_help.c:677 sql_help.c:722 sql_help.c:750
+#: sql_help.c:805 sql_help.c:869 sql_help.c:1020 sql_help.c:1089
+#: sql_help.c:1123 sql_help.c:1321 sql_help.c:1493 sql_help.c:1514
+#: sql_help.c:1526 sql_help.c:1538 sql_help.c:1578 sql_help.c:1698
 msgid "new_schema"
 msgstr "nuevo_esquema"
 
-#: sql_help.c:44 sql_help.c:1910 sql_help.c:3340 sql_help.c:4486
+#: sql_help.c:44 sql_help.c:1915 sql_help.c:3351 sql_help.c:4500
 msgid "where aggregate_signature is:"
 msgstr "donde signatura_func_agregación es:"
 
-#: sql_help.c:45 sql_help.c:48 sql_help.c:51 sql_help.c:340 sql_help.c:353
-#: sql_help.c:357 sql_help.c:373 sql_help.c:376 sql_help.c:379 sql_help.c:520
-#: sql_help.c:525 sql_help.c:530 sql_help.c:535 sql_help.c:540 sql_help.c:850
-#: sql_help.c:855 sql_help.c:860 sql_help.c:865 sql_help.c:870 sql_help.c:1000
-#: sql_help.c:1005 sql_help.c:1010 sql_help.c:1015 sql_help.c:1020
-#: sql_help.c:1864 sql_help.c:1881 sql_help.c:1887 sql_help.c:1911
-#: sql_help.c:1914 sql_help.c:1917 sql_help.c:2066 sql_help.c:2085
-#: sql_help.c:2088 sql_help.c:2386 sql_help.c:2595 sql_help.c:3341
-#: sql_help.c:3344 sql_help.c:3347 sql_help.c:3438 sql_help.c:3527
-#: sql_help.c:3555 sql_help.c:3906 sql_help.c:4356 sql_help.c:4463
-#: sql_help.c:4470 sql_help.c:4476 sql_help.c:4487 sql_help.c:4490
-#: sql_help.c:4493
+#: sql_help.c:45 sql_help.c:48 sql_help.c:51 sql_help.c:341 sql_help.c:354
+#: sql_help.c:358 sql_help.c:374 sql_help.c:377 sql_help.c:380 sql_help.c:521
+#: sql_help.c:526 sql_help.c:531 sql_help.c:536 sql_help.c:541 sql_help.c:851
+#: sql_help.c:856 sql_help.c:861 sql_help.c:866 sql_help.c:871 sql_help.c:1002
+#: sql_help.c:1007 sql_help.c:1012 sql_help.c:1017 sql_help.c:1022
+#: sql_help.c:1869 sql_help.c:1886 sql_help.c:1892 sql_help.c:1916
+#: sql_help.c:1919 sql_help.c:1922 sql_help.c:2073 sql_help.c:2092
+#: sql_help.c:2095 sql_help.c:2397 sql_help.c:2606 sql_help.c:3352
+#: sql_help.c:3355 sql_help.c:3358 sql_help.c:3449 sql_help.c:3538
+#: sql_help.c:3566 sql_help.c:3918 sql_help.c:4370 sql_help.c:4477
+#: sql_help.c:4484 sql_help.c:4490 sql_help.c:4501 sql_help.c:4504
+#: sql_help.c:4507
 msgid "argmode"
 msgstr "modo_arg"
 
-#: sql_help.c:46 sql_help.c:49 sql_help.c:52 sql_help.c:341 sql_help.c:354
-#: sql_help.c:358 sql_help.c:374 sql_help.c:377 sql_help.c:380 sql_help.c:521
-#: sql_help.c:526 sql_help.c:531 sql_help.c:536 sql_help.c:541 sql_help.c:851
-#: sql_help.c:856 sql_help.c:861 sql_help.c:866 sql_help.c:871 sql_help.c:1001
-#: sql_help.c:1006 sql_help.c:1011 sql_help.c:1016 sql_help.c:1021
-#: sql_help.c:1865 sql_help.c:1882 sql_help.c:1888 sql_help.c:1912
-#: sql_help.c:1915 sql_help.c:1918 sql_help.c:2067 sql_help.c:2086
-#: sql_help.c:2089 sql_help.c:2387 sql_help.c:2596 sql_help.c:3342
-#: sql_help.c:3345 sql_help.c:3348 sql_help.c:3439 sql_help.c:3528
-#: sql_help.c:3556 sql_help.c:4464 sql_help.c:4471 sql_help.c:4477
-#: sql_help.c:4488 sql_help.c:4491 sql_help.c:4494
+#: sql_help.c:46 sql_help.c:49 sql_help.c:52 sql_help.c:342 sql_help.c:355
+#: sql_help.c:359 sql_help.c:375 sql_help.c:378 sql_help.c:381 sql_help.c:522
+#: sql_help.c:527 sql_help.c:532 sql_help.c:537 sql_help.c:542 sql_help.c:852
+#: sql_help.c:857 sql_help.c:862 sql_help.c:867 sql_help.c:872 sql_help.c:1003
+#: sql_help.c:1008 sql_help.c:1013 sql_help.c:1018 sql_help.c:1023
+#: sql_help.c:1870 sql_help.c:1887 sql_help.c:1893 sql_help.c:1917
+#: sql_help.c:1920 sql_help.c:1923 sql_help.c:2074 sql_help.c:2093
+#: sql_help.c:2096 sql_help.c:2398 sql_help.c:2607 sql_help.c:3353
+#: sql_help.c:3356 sql_help.c:3359 sql_help.c:3450 sql_help.c:3539
+#: sql_help.c:3567 sql_help.c:4478 sql_help.c:4485 sql_help.c:4491
+#: sql_help.c:4502 sql_help.c:4505 sql_help.c:4508
 msgid "argname"
 msgstr "nombre_arg"
 
-#: sql_help.c:47 sql_help.c:50 sql_help.c:53 sql_help.c:342 sql_help.c:355
-#: sql_help.c:359 sql_help.c:375 sql_help.c:378 sql_help.c:381 sql_help.c:522
-#: sql_help.c:527 sql_help.c:532 sql_help.c:537 sql_help.c:542 sql_help.c:852
-#: sql_help.c:857 sql_help.c:862 sql_help.c:867 sql_help.c:872 sql_help.c:1002
-#: sql_help.c:1007 sql_help.c:1012 sql_help.c:1017 sql_help.c:1022
-#: sql_help.c:1866 sql_help.c:1883 sql_help.c:1889 sql_help.c:1913
-#: sql_help.c:1916 sql_help.c:1919 sql_help.c:2388 sql_help.c:2597
-#: sql_help.c:3343 sql_help.c:3346 sql_help.c:3349 sql_help.c:3440
-#: sql_help.c:3529 sql_help.c:3557 sql_help.c:4465 sql_help.c:4472
-#: sql_help.c:4478 sql_help.c:4489 sql_help.c:4492 sql_help.c:4495
+#: sql_help.c:47 sql_help.c:50 sql_help.c:53 sql_help.c:343 sql_help.c:356
+#: sql_help.c:360 sql_help.c:376 sql_help.c:379 sql_help.c:382 sql_help.c:523
+#: sql_help.c:528 sql_help.c:533 sql_help.c:538 sql_help.c:543 sql_help.c:853
+#: sql_help.c:858 sql_help.c:863 sql_help.c:868 sql_help.c:873 sql_help.c:1004
+#: sql_help.c:1009 sql_help.c:1014 sql_help.c:1019 sql_help.c:1024
+#: sql_help.c:1871 sql_help.c:1888 sql_help.c:1894 sql_help.c:1918
+#: sql_help.c:1921 sql_help.c:1924 sql_help.c:2399 sql_help.c:2608
+#: sql_help.c:3354 sql_help.c:3357 sql_help.c:3360 sql_help.c:3451
+#: sql_help.c:3540 sql_help.c:3568 sql_help.c:4479 sql_help.c:4486
+#: sql_help.c:4492 sql_help.c:4503 sql_help.c:4506 sql_help.c:4509
 msgid "argtype"
 msgstr "tipo_arg"
 
-#: sql_help.c:114 sql_help.c:397 sql_help.c:474 sql_help.c:486 sql_help.c:949
-#: sql_help.c:1100 sql_help.c:1505 sql_help.c:1634 sql_help.c:1666
-#: sql_help.c:1718 sql_help.c:1781 sql_help.c:1967 sql_help.c:1974
-#: sql_help.c:2277 sql_help.c:2327 sql_help.c:2334 sql_help.c:2343
-#: sql_help.c:2432 sql_help.c:2659 sql_help.c:2752 sql_help.c:3040
-#: sql_help.c:3225 sql_help.c:3247 sql_help.c:3387 sql_help.c:3742
-#: sql_help.c:3950 sql_help.c:4185 sql_help.c:4958
+#: sql_help.c:114 sql_help.c:398 sql_help.c:475 sql_help.c:487 sql_help.c:950
+#: sql_help.c:1102 sql_help.c:1507 sql_help.c:1636 sql_help.c:1669
+#: sql_help.c:1722 sql_help.c:1786 sql_help.c:1973 sql_help.c:1980
+#: sql_help.c:2288 sql_help.c:2338 sql_help.c:2345 sql_help.c:2354
+#: sql_help.c:2443 sql_help.c:2670 sql_help.c:2763 sql_help.c:3051
+#: sql_help.c:3236 sql_help.c:3258 sql_help.c:3398 sql_help.c:3754
+#: sql_help.c:3962 sql_help.c:4197 sql_help.c:4199 sql_help.c:4976
 msgid "option"
 msgstr "opción"
 
-#: sql_help.c:115 sql_help.c:950 sql_help.c:1635 sql_help.c:2433
-#: sql_help.c:2660 sql_help.c:3226 sql_help.c:3388
+#: sql_help.c:115 sql_help.c:951 sql_help.c:1637 sql_help.c:2444
+#: sql_help.c:2671 sql_help.c:3237 sql_help.c:3399
 msgid "where option can be:"
 msgstr "donde opción puede ser:"
 
-#: sql_help.c:116 sql_help.c:2209
+#: sql_help.c:116 sql_help.c:2220
 msgid "allowconn"
 msgstr "allowconn"
 
-#: sql_help.c:117 sql_help.c:951 sql_help.c:1636 sql_help.c:2210
-#: sql_help.c:2434 sql_help.c:2661 sql_help.c:3227
+#: sql_help.c:117 sql_help.c:952 sql_help.c:1638 sql_help.c:2221
+#: sql_help.c:2445 sql_help.c:2672 sql_help.c:3238
 msgid "connlimit"
 msgstr "límite_conexiones"
 
-#: sql_help.c:118 sql_help.c:2211
+#: sql_help.c:118 sql_help.c:2222
 msgid "istemplate"
 msgstr "esplantilla"
 
-#: sql_help.c:124 sql_help.c:611 sql_help.c:679 sql_help.c:693 sql_help.c:1322
-#: sql_help.c:1374 sql_help.c:4189
+#: sql_help.c:124 sql_help.c:612 sql_help.c:680 sql_help.c:694 sql_help.c:1324
+#: sql_help.c:1376 sql_help.c:4203
 msgid "new_tablespace"
 msgstr "nuevo_tablespace"
 
-#: sql_help.c:127 sql_help.c:130 sql_help.c:132 sql_help.c:548 sql_help.c:550
-#: sql_help.c:551 sql_help.c:875 sql_help.c:877 sql_help.c:878 sql_help.c:958
-#: sql_help.c:962 sql_help.c:965 sql_help.c:1027 sql_help.c:1029
-#: sql_help.c:1030 sql_help.c:1180 sql_help.c:1183 sql_help.c:1643
-#: sql_help.c:1647 sql_help.c:1650 sql_help.c:2398 sql_help.c:2601
-#: sql_help.c:3918 sql_help.c:4207 sql_help.c:4368 sql_help.c:4677
+#: sql_help.c:127 sql_help.c:131 sql_help.c:133 sql_help.c:549 sql_help.c:551
+#: sql_help.c:552 sql_help.c:876 sql_help.c:878 sql_help.c:879 sql_help.c:959
+#: sql_help.c:964 sql_help.c:967 sql_help.c:1029 sql_help.c:1031
+#: sql_help.c:1032 sql_help.c:1182 sql_help.c:1185 sql_help.c:1645
+#: sql_help.c:1650 sql_help.c:1653 sql_help.c:2409 sql_help.c:2612
+#: sql_help.c:3930 sql_help.c:4221 sql_help.c:4382 sql_help.c:4691
 msgid "configuration_parameter"
 msgstr "parámetro_de_configuración"
 
-#: sql_help.c:128 sql_help.c:398 sql_help.c:469 sql_help.c:475 sql_help.c:487
-#: sql_help.c:549 sql_help.c:603 sql_help.c:685 sql_help.c:695 sql_help.c:876
-#: sql_help.c:904 sql_help.c:959 sql_help.c:1028 sql_help.c:1101
-#: sql_help.c:1146 sql_help.c:1150 sql_help.c:1154 sql_help.c:1157
-#: sql_help.c:1162 sql_help.c:1165 sql_help.c:1181 sql_help.c:1182
-#: sql_help.c:1353 sql_help.c:1376 sql_help.c:1424 sql_help.c:1449
-#: sql_help.c:1506 sql_help.c:1590 sql_help.c:1644 sql_help.c:1667
-#: sql_help.c:2278 sql_help.c:2328 sql_help.c:2335 sql_help.c:2344
-#: sql_help.c:2399 sql_help.c:2400 sql_help.c:2464 sql_help.c:2467
-#: sql_help.c:2501 sql_help.c:2602 sql_help.c:2603 sql_help.c:2626
-#: sql_help.c:2753 sql_help.c:2792 sql_help.c:2902 sql_help.c:2915
-#: sql_help.c:2929 sql_help.c:2970 sql_help.c:2997 sql_help.c:3014
-#: sql_help.c:3041 sql_help.c:3248 sql_help.c:3951 sql_help.c:4678
-#: sql_help.c:4679 sql_help.c:4680 sql_help.c:4681
+#: sql_help.c:128 sql_help.c:129 sql_help.c:399 sql_help.c:470 sql_help.c:476
+#: sql_help.c:488 sql_help.c:550 sql_help.c:604 sql_help.c:686 sql_help.c:696
+#: sql_help.c:877 sql_help.c:905 sql_help.c:960 sql_help.c:961 sql_help.c:1030
+#: sql_help.c:1103 sql_help.c:1148 sql_help.c:1152 sql_help.c:1156
+#: sql_help.c:1159 sql_help.c:1164 sql_help.c:1167 sql_help.c:1183
+#: sql_help.c:1184 sql_help.c:1355 sql_help.c:1378 sql_help.c:1426
+#: sql_help.c:1451 sql_help.c:1508 sql_help.c:1592 sql_help.c:1646
+#: sql_help.c:1647 sql_help.c:1670 sql_help.c:2289 sql_help.c:2339
+#: sql_help.c:2346 sql_help.c:2355 sql_help.c:2410 sql_help.c:2411
+#: sql_help.c:2475 sql_help.c:2478 sql_help.c:2512 sql_help.c:2613
+#: sql_help.c:2614 sql_help.c:2637 sql_help.c:2764 sql_help.c:2803
+#: sql_help.c:2913 sql_help.c:2926 sql_help.c:2940 sql_help.c:2981
+#: sql_help.c:3008 sql_help.c:3025 sql_help.c:3052 sql_help.c:3259
+#: sql_help.c:3963 sql_help.c:4692 sql_help.c:4693 sql_help.c:4694
+#: sql_help.c:4695
 msgid "value"
 msgstr "valor"
 
-#: sql_help.c:200
+#: sql_help.c:201
 msgid "target_role"
 msgstr "rol_destino"
 
-#: sql_help.c:201 sql_help.c:913 sql_help.c:2262 sql_help.c:2631
-#: sql_help.c:2708 sql_help.c:2713 sql_help.c:3881 sql_help.c:3890
-#: sql_help.c:3909 sql_help.c:3921 sql_help.c:4331 sql_help.c:4340
-#: sql_help.c:4359 sql_help.c:4371
+#: sql_help.c:202 sql_help.c:914 sql_help.c:2273 sql_help.c:2642
+#: sql_help.c:2719 sql_help.c:2724 sql_help.c:3893 sql_help.c:3902
+#: sql_help.c:3921 sql_help.c:3933 sql_help.c:4345 sql_help.c:4354
+#: sql_help.c:4373 sql_help.c:4385
 msgid "schema_name"
 msgstr "nombre_de_esquema"
 
-#: sql_help.c:202
+#: sql_help.c:203
 msgid "abbreviated_grant_or_revoke"
 msgstr "grant_o_revoke_abreviado"
 
-#: sql_help.c:203
+#: sql_help.c:204
 msgid "where abbreviated_grant_or_revoke is one of:"
 msgstr "donde grant_o_revoke_abreviado es uno de:"
 
-#: 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:211 sql_help.c:212 sql_help.c:213
-#: sql_help.c:574 sql_help.c:610 sql_help.c:678 sql_help.c:822 sql_help.c:969
-#: sql_help.c:1321 sql_help.c:1654 sql_help.c:2437 sql_help.c:2438
-#: sql_help.c:2439 sql_help.c:2440 sql_help.c:2441 sql_help.c:2575
-#: sql_help.c:2664 sql_help.c:2665 sql_help.c:2666 sql_help.c:2667
-#: sql_help.c:2668 sql_help.c:3230 sql_help.c:3231 sql_help.c:3232
-#: sql_help.c:3233 sql_help.c:3234 sql_help.c:3930 sql_help.c:3934
-#: sql_help.c:4380 sql_help.c:4384 sql_help.c:4699
+#: 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:211 sql_help.c:212 sql_help.c:213 sql_help.c:214
+#: sql_help.c:575 sql_help.c:611 sql_help.c:679 sql_help.c:823 sql_help.c:971
+#: sql_help.c:1323 sql_help.c:1657 sql_help.c:2448 sql_help.c:2449
+#: sql_help.c:2450 sql_help.c:2451 sql_help.c:2452 sql_help.c:2586
+#: sql_help.c:2675 sql_help.c:2676 sql_help.c:2677 sql_help.c:2678
+#: sql_help.c:2679 sql_help.c:3241 sql_help.c:3242 sql_help.c:3243
+#: sql_help.c:3244 sql_help.c:3245 sql_help.c:3942 sql_help.c:3946
+#: sql_help.c:4394 sql_help.c:4398 sql_help.c:4713
 msgid "role_name"
 msgstr "nombre_de_rol"
 
-#: sql_help.c:239 sql_help.c:462 sql_help.c:912 sql_help.c:1337 sql_help.c:1339
-#: sql_help.c:1391 sql_help.c:1403 sql_help.c:1428 sql_help.c:1684
-#: sql_help.c:2231 sql_help.c:2235 sql_help.c:2347 sql_help.c:2352
-#: sql_help.c:2460 sql_help.c:2630 sql_help.c:2769 sql_help.c:2774
-#: sql_help.c:2776 sql_help.c:2897 sql_help.c:2910 sql_help.c:2924
-#: sql_help.c:2933 sql_help.c:2945 sql_help.c:2974 sql_help.c:3982
-#: sql_help.c:3997 sql_help.c:3999 sql_help.c:4086 sql_help.c:4089
-#: sql_help.c:4091 sql_help.c:4550 sql_help.c:4551 sql_help.c:4560
-#: sql_help.c:4607 sql_help.c:4608 sql_help.c:4609 sql_help.c:4610
-#: sql_help.c:4611 sql_help.c:4612 sql_help.c:4652 sql_help.c:4653
-#: sql_help.c:4658 sql_help.c:4663 sql_help.c:4807 sql_help.c:4808
-#: sql_help.c:4817 sql_help.c:4864 sql_help.c:4865 sql_help.c:4866
-#: sql_help.c:4867 sql_help.c:4868 sql_help.c:4869 sql_help.c:4923
-#: sql_help.c:4925 sql_help.c:4985 sql_help.c:5045 sql_help.c:5046
-#: sql_help.c:5055 sql_help.c:5102 sql_help.c:5103 sql_help.c:5104
-#: sql_help.c:5105 sql_help.c:5106 sql_help.c:5107
+#: sql_help.c:240 sql_help.c:463 sql_help.c:913 sql_help.c:1339 sql_help.c:1341
+#: sql_help.c:1393 sql_help.c:1405 sql_help.c:1430 sql_help.c:1687
+#: sql_help.c:2242 sql_help.c:2246 sql_help.c:2358 sql_help.c:2363
+#: sql_help.c:2471 sql_help.c:2641 sql_help.c:2780 sql_help.c:2785
+#: sql_help.c:2787 sql_help.c:2908 sql_help.c:2921 sql_help.c:2935
+#: sql_help.c:2944 sql_help.c:2956 sql_help.c:2985 sql_help.c:3994
+#: sql_help.c:4009 sql_help.c:4011 sql_help.c:4098 sql_help.c:4101
+#: sql_help.c:4103 sql_help.c:4564 sql_help.c:4565 sql_help.c:4574
+#: sql_help.c:4621 sql_help.c:4622 sql_help.c:4623 sql_help.c:4624
+#: sql_help.c:4625 sql_help.c:4626 sql_help.c:4666 sql_help.c:4667
+#: sql_help.c:4672 sql_help.c:4677 sql_help.c:4821 sql_help.c:4822
+#: sql_help.c:4831 sql_help.c:4878 sql_help.c:4879 sql_help.c:4880
+#: sql_help.c:4881 sql_help.c:4882 sql_help.c:4883 sql_help.c:4937
+#: sql_help.c:4939 sql_help.c:5007 sql_help.c:5067 sql_help.c:5068
+#: sql_help.c:5077 sql_help.c:5124 sql_help.c:5125 sql_help.c:5126
+#: sql_help.c:5127 sql_help.c:5128 sql_help.c:5129
 msgid "expression"
 msgstr "expresión"
 
-#: sql_help.c:242
+#: sql_help.c:243
 msgid "domain_constraint"
 msgstr "restricción_de_dominio"
 
-#: sql_help.c:244 sql_help.c:246 sql_help.c:249 sql_help.c:477 sql_help.c:478
-#: sql_help.c:1314 sql_help.c:1361 sql_help.c:1362 sql_help.c:1363
-#: sql_help.c:1390 sql_help.c:1402 sql_help.c:1419 sql_help.c:1852
-#: sql_help.c:1854 sql_help.c:2234 sql_help.c:2346 sql_help.c:2351
-#: sql_help.c:2932 sql_help.c:2944 sql_help.c:3994
+#: sql_help.c:245 sql_help.c:247 sql_help.c:250 sql_help.c:478 sql_help.c:479
+#: sql_help.c:1316 sql_help.c:1363 sql_help.c:1364 sql_help.c:1365
+#: sql_help.c:1392 sql_help.c:1404 sql_help.c:1421 sql_help.c:1857
+#: sql_help.c:1859 sql_help.c:2245 sql_help.c:2357 sql_help.c:2362
+#: sql_help.c:2943 sql_help.c:2955 sql_help.c:4006
 msgid "constraint_name"
 msgstr "nombre_restricción"
 
-#: sql_help.c:247 sql_help.c:1315
+#: sql_help.c:248 sql_help.c:1317
 msgid "new_constraint_name"
 msgstr "nuevo_nombre_restricción"
 
-#: sql_help.c:320 sql_help.c:1099
+#: sql_help.c:321 sql_help.c:1101
 msgid "new_version"
 msgstr "nueva_versión"
 
-#: sql_help.c:324 sql_help.c:326
+#: sql_help.c:325 sql_help.c:327
 msgid "member_object"
 msgstr "objeto_miembro"
 
-#: sql_help.c:327
+#: sql_help.c:328
 msgid "where member_object is:"
 msgstr "dondo objeto_miembro es:"
 
-#: sql_help.c:328 sql_help.c:333 sql_help.c:334 sql_help.c:335 sql_help.c:336
-#: sql_help.c:337 sql_help.c:338 sql_help.c:343 sql_help.c:347 sql_help.c:349
-#: sql_help.c:351 sql_help.c:360 sql_help.c:361 sql_help.c:362 sql_help.c:363
-#: sql_help.c:364 sql_help.c:365 sql_help.c:366 sql_help.c:367 sql_help.c:370
-#: sql_help.c:371 sql_help.c:1844 sql_help.c:1849 sql_help.c:1856
-#: sql_help.c:1857 sql_help.c:1858 sql_help.c:1859 sql_help.c:1860
-#: sql_help.c:1861 sql_help.c:1862 sql_help.c:1867 sql_help.c:1869
-#: sql_help.c:1873 sql_help.c:1875 sql_help.c:1879 sql_help.c:1884
-#: sql_help.c:1885 sql_help.c:1892 sql_help.c:1893 sql_help.c:1894
-#: sql_help.c:1895 sql_help.c:1896 sql_help.c:1897 sql_help.c:1898
-#: sql_help.c:1899 sql_help.c:1900 sql_help.c:1901 sql_help.c:1902
-#: sql_help.c:1907 sql_help.c:1908 sql_help.c:4453 sql_help.c:4458
-#: sql_help.c:4459 sql_help.c:4460 sql_help.c:4461 sql_help.c:4467
-#: sql_help.c:4468 sql_help.c:4473 sql_help.c:4474 sql_help.c:4479
-#: sql_help.c:4480 sql_help.c:4481 sql_help.c:4482 sql_help.c:4483
-#: sql_help.c:4484
+#: sql_help.c:329 sql_help.c:334 sql_help.c:335 sql_help.c:336 sql_help.c:337
+#: sql_help.c:338 sql_help.c:339 sql_help.c:344 sql_help.c:348 sql_help.c:350
+#: sql_help.c:352 sql_help.c:361 sql_help.c:362 sql_help.c:363 sql_help.c:364
+#: sql_help.c:365 sql_help.c:366 sql_help.c:367 sql_help.c:368 sql_help.c:371
+#: sql_help.c:372 sql_help.c:1849 sql_help.c:1854 sql_help.c:1861
+#: sql_help.c:1862 sql_help.c:1863 sql_help.c:1864 sql_help.c:1865
+#: sql_help.c:1866 sql_help.c:1867 sql_help.c:1872 sql_help.c:1874
+#: sql_help.c:1878 sql_help.c:1880 sql_help.c:1884 sql_help.c:1889
+#: sql_help.c:1890 sql_help.c:1897 sql_help.c:1898 sql_help.c:1899
+#: sql_help.c:1900 sql_help.c:1901 sql_help.c:1902 sql_help.c:1903
+#: sql_help.c:1904 sql_help.c:1905 sql_help.c:1906 sql_help.c:1907
+#: sql_help.c:1912 sql_help.c:1913 sql_help.c:4467 sql_help.c:4472
+#: sql_help.c:4473 sql_help.c:4474 sql_help.c:4475 sql_help.c:4481
+#: sql_help.c:4482 sql_help.c:4487 sql_help.c:4488 sql_help.c:4493
+#: sql_help.c:4494 sql_help.c:4495 sql_help.c:4496 sql_help.c:4497
+#: sql_help.c:4498
 msgid "object_name"
 msgstr "nombre_de_objeto"
 
-#: sql_help.c:329 sql_help.c:1845 sql_help.c:4456
+#: sql_help.c:330 sql_help.c:1850 sql_help.c:4470
 msgid "aggregate_name"
 msgstr "nombre_función_agregación"
 
-#: sql_help.c:331 sql_help.c:1847 sql_help.c:2131 sql_help.c:2135
-#: sql_help.c:2137 sql_help.c:3357
+#: sql_help.c:332 sql_help.c:1852 sql_help.c:2138 sql_help.c:2142
+#: sql_help.c:2144 sql_help.c:3368
 msgid "source_type"
 msgstr "tipo_fuente"
 
-#: sql_help.c:332 sql_help.c:1848 sql_help.c:2132 sql_help.c:2136
-#: sql_help.c:2138 sql_help.c:3358
+#: sql_help.c:333 sql_help.c:1853 sql_help.c:2139 sql_help.c:2143
+#: sql_help.c:2145 sql_help.c:3369
 msgid "target_type"
 msgstr "tipo_destino"
 
-#: sql_help.c:339 sql_help.c:786 sql_help.c:1863 sql_help.c:2133
-#: sql_help.c:2174 sql_help.c:2250 sql_help.c:2518 sql_help.c:2549
-#: sql_help.c:3117 sql_help.c:4355 sql_help.c:4462 sql_help.c:4579
-#: sql_help.c:4583 sql_help.c:4587 sql_help.c:4590 sql_help.c:4836
-#: sql_help.c:4840 sql_help.c:4844 sql_help.c:4847 sql_help.c:5074
-#: sql_help.c:5078 sql_help.c:5082 sql_help.c:5085
+#: sql_help.c:340 sql_help.c:787 sql_help.c:1868 sql_help.c:2140
+#: sql_help.c:2183 sql_help.c:2261 sql_help.c:2529 sql_help.c:2560
+#: sql_help.c:3128 sql_help.c:4369 sql_help.c:4476 sql_help.c:4593
+#: sql_help.c:4597 sql_help.c:4601 sql_help.c:4604 sql_help.c:4850
+#: sql_help.c:4854 sql_help.c:4858 sql_help.c:4861 sql_help.c:5096
+#: sql_help.c:5100 sql_help.c:5104 sql_help.c:5107
 msgid "function_name"
 msgstr "nombre_de_función"
 
-#: sql_help.c:344 sql_help.c:779 sql_help.c:1870 sql_help.c:2542
+#: sql_help.c:345 sql_help.c:780 sql_help.c:1875 sql_help.c:2553
 msgid "operator_name"
 msgstr "nombre_operador"
 
-#: sql_help.c:345 sql_help.c:715 sql_help.c:719 sql_help.c:723 sql_help.c:1871
-#: sql_help.c:2519 sql_help.c:3481
+#: sql_help.c:346 sql_help.c:716 sql_help.c:720 sql_help.c:724 sql_help.c:1876
+#: sql_help.c:2530 sql_help.c:3492
 msgid "left_type"
 msgstr "tipo_izq"
 
-#: sql_help.c:346 sql_help.c:716 sql_help.c:720 sql_help.c:724 sql_help.c:1872
-#: sql_help.c:2520 sql_help.c:3482
+#: sql_help.c:347 sql_help.c:717 sql_help.c:721 sql_help.c:725 sql_help.c:1877
+#: sql_help.c:2531 sql_help.c:3493
 msgid "right_type"
 msgstr "tipo_der"
 
-#: sql_help.c:348 sql_help.c:350 sql_help.c:742 sql_help.c:745 sql_help.c:748
-#: sql_help.c:777 sql_help.c:789 sql_help.c:797 sql_help.c:800 sql_help.c:803
-#: sql_help.c:1408 sql_help.c:1874 sql_help.c:1876 sql_help.c:2539
-#: sql_help.c:2560 sql_help.c:2950 sql_help.c:3491 sql_help.c:3500
+#: sql_help.c:349 sql_help.c:351 sql_help.c:743 sql_help.c:746 sql_help.c:749
+#: sql_help.c:778 sql_help.c:790 sql_help.c:798 sql_help.c:801 sql_help.c:804
+#: sql_help.c:1410 sql_help.c:1879 sql_help.c:1881 sql_help.c:2550
+#: sql_help.c:2571 sql_help.c:2961 sql_help.c:3502 sql_help.c:3511
 msgid "index_method"
 msgstr "método_de_índice"
 
-#: sql_help.c:352 sql_help.c:1880 sql_help.c:4469
+#: sql_help.c:353 sql_help.c:1885 sql_help.c:4483
 msgid "procedure_name"
 msgstr "nombre_de_procedimiento"
 
-#: sql_help.c:356 sql_help.c:1886 sql_help.c:3905 sql_help.c:4475
+#: sql_help.c:357 sql_help.c:1891 sql_help.c:3917 sql_help.c:4489
 msgid "routine_name"
 msgstr "nombre_de_rutina"
 
-#: sql_help.c:368 sql_help.c:1380 sql_help.c:1903 sql_help.c:2394
-#: sql_help.c:2600 sql_help.c:2905 sql_help.c:3084 sql_help.c:3662
-#: sql_help.c:3927 sql_help.c:4377
+#: sql_help.c:369 sql_help.c:1382 sql_help.c:1908 sql_help.c:2405
+#: sql_help.c:2611 sql_help.c:2916 sql_help.c:3095 sql_help.c:3673
+#: sql_help.c:3939 sql_help.c:4391
 msgid "type_name"
 msgstr "nombre_de_tipo"
 
-#: sql_help.c:369 sql_help.c:1904 sql_help.c:2393 sql_help.c:2599
-#: sql_help.c:3085 sql_help.c:3315 sql_help.c:3663 sql_help.c:3912
-#: sql_help.c:4362
+#: sql_help.c:370 sql_help.c:1909 sql_help.c:2404 sql_help.c:2610
+#: sql_help.c:3096 sql_help.c:3326 sql_help.c:3674 sql_help.c:3924
+#: sql_help.c:4376
 msgid "lang_name"
 msgstr "nombre_lenguaje"
 
-#: sql_help.c:372
+#: sql_help.c:373
 msgid "and aggregate_signature is:"
 msgstr "y signatura_func_agregación es:"
 
-#: sql_help.c:395 sql_help.c:1998 sql_help.c:2275
+#: sql_help.c:396 sql_help.c:2005 sql_help.c:2286
 msgid "handler_function"
 msgstr "función_manejadora"
 
-#: sql_help.c:396 sql_help.c:2276
+#: sql_help.c:397 sql_help.c:2287
 msgid "validator_function"
 msgstr "función_validadora"
 
-#: sql_help.c:444 sql_help.c:523 sql_help.c:667 sql_help.c:853 sql_help.c:1003
-#: sql_help.c:1309 sql_help.c:1581
+#: sql_help.c:445 sql_help.c:524 sql_help.c:668 sql_help.c:854 sql_help.c:1005
+#: sql_help.c:1311 sql_help.c:1583
 msgid "action"
 msgstr "acción"
 
-#: sql_help.c:446 sql_help.c:453 sql_help.c:457 sql_help.c:458 sql_help.c:461
-#: sql_help.c:463 sql_help.c:464 sql_help.c:465 sql_help.c:467 sql_help.c:470
-#: sql_help.c:472 sql_help.c:473 sql_help.c:671 sql_help.c:681 sql_help.c:683
-#: sql_help.c:686 sql_help.c:688 sql_help.c:689 sql_help.c:911 sql_help.c:1080
-#: sql_help.c:1311 sql_help.c:1329 sql_help.c:1333 sql_help.c:1334
-#: sql_help.c:1338 sql_help.c:1340 sql_help.c:1341 sql_help.c:1342
-#: sql_help.c:1343 sql_help.c:1345 sql_help.c:1348 sql_help.c:1349
-#: sql_help.c:1351 sql_help.c:1354 sql_help.c:1356 sql_help.c:1357
-#: sql_help.c:1404 sql_help.c:1406 sql_help.c:1413 sql_help.c:1422
-#: sql_help.c:1427 sql_help.c:1431 sql_help.c:1432 sql_help.c:1683
-#: sql_help.c:1686 sql_help.c:1690 sql_help.c:1726 sql_help.c:1851
-#: sql_help.c:1964 sql_help.c:1970 sql_help.c:1983 sql_help.c:1984
-#: sql_help.c:1985 sql_help.c:2325 sql_help.c:2338 sql_help.c:2391
-#: sql_help.c:2459 sql_help.c:2465 sql_help.c:2498 sql_help.c:2629
-#: sql_help.c:2738 sql_help.c:2773 sql_help.c:2775 sql_help.c:2887
-#: sql_help.c:2896 sql_help.c:2906 sql_help.c:2909 sql_help.c:2919
-#: sql_help.c:2923 sql_help.c:2946 sql_help.c:2948 sql_help.c:2955
-#: sql_help.c:2968 sql_help.c:2973 sql_help.c:2977 sql_help.c:2978
-#: sql_help.c:2994 sql_help.c:3120 sql_help.c:3260 sql_help.c:3884
-#: sql_help.c:3885 sql_help.c:3981 sql_help.c:3996 sql_help.c:3998
-#: sql_help.c:4000 sql_help.c:4085 sql_help.c:4088 sql_help.c:4090
-#: sql_help.c:4334 sql_help.c:4335 sql_help.c:4455 sql_help.c:4616
-#: sql_help.c:4622 sql_help.c:4624 sql_help.c:4873 sql_help.c:4879
-#: sql_help.c:4881 sql_help.c:4922 sql_help.c:4924 sql_help.c:4926
-#: sql_help.c:4973 sql_help.c:5111 sql_help.c:5117 sql_help.c:5119
+#: sql_help.c:447 sql_help.c:454 sql_help.c:458 sql_help.c:459 sql_help.c:462
+#: sql_help.c:464 sql_help.c:465 sql_help.c:466 sql_help.c:468 sql_help.c:471
+#: sql_help.c:473 sql_help.c:474 sql_help.c:672 sql_help.c:682 sql_help.c:684
+#: sql_help.c:687 sql_help.c:689 sql_help.c:690 sql_help.c:912 sql_help.c:1082
+#: sql_help.c:1313 sql_help.c:1331 sql_help.c:1335 sql_help.c:1336
+#: sql_help.c:1340 sql_help.c:1342 sql_help.c:1343 sql_help.c:1344
+#: sql_help.c:1345 sql_help.c:1347 sql_help.c:1350 sql_help.c:1351
+#: sql_help.c:1353 sql_help.c:1356 sql_help.c:1358 sql_help.c:1359
+#: sql_help.c:1406 sql_help.c:1408 sql_help.c:1415 sql_help.c:1424
+#: sql_help.c:1429 sql_help.c:1433 sql_help.c:1434 sql_help.c:1686
+#: sql_help.c:1689 sql_help.c:1693 sql_help.c:1731 sql_help.c:1856
+#: sql_help.c:1970 sql_help.c:1976 sql_help.c:1989 sql_help.c:1990
+#: sql_help.c:1991 sql_help.c:2336 sql_help.c:2349 sql_help.c:2402
+#: sql_help.c:2470 sql_help.c:2476 sql_help.c:2509 sql_help.c:2640
+#: sql_help.c:2749 sql_help.c:2784 sql_help.c:2786 sql_help.c:2898
+#: sql_help.c:2907 sql_help.c:2917 sql_help.c:2920 sql_help.c:2930
+#: sql_help.c:2934 sql_help.c:2957 sql_help.c:2959 sql_help.c:2966
+#: sql_help.c:2979 sql_help.c:2984 sql_help.c:2988 sql_help.c:2989
+#: sql_help.c:3005 sql_help.c:3131 sql_help.c:3271 sql_help.c:3896
+#: sql_help.c:3897 sql_help.c:3993 sql_help.c:4008 sql_help.c:4010
+#: sql_help.c:4012 sql_help.c:4097 sql_help.c:4100 sql_help.c:4102
+#: sql_help.c:4348 sql_help.c:4349 sql_help.c:4469 sql_help.c:4630
+#: sql_help.c:4636 sql_help.c:4638 sql_help.c:4887 sql_help.c:4893
+#: sql_help.c:4895 sql_help.c:4936 sql_help.c:4938 sql_help.c:4940
+#: sql_help.c:4995 sql_help.c:5133 sql_help.c:5139 sql_help.c:5141
 msgid "column_name"
 msgstr "nombre_de_columna"
 
-#: sql_help.c:447 sql_help.c:672 sql_help.c:1312 sql_help.c:1691
+#: sql_help.c:448 sql_help.c:673 sql_help.c:1314 sql_help.c:1694
 msgid "new_column_name"
 msgstr "nuevo_nombre_de_columna"
 
-#: sql_help.c:452 sql_help.c:544 sql_help.c:680 sql_help.c:874 sql_help.c:1024
-#: sql_help.c:1328 sql_help.c:1591
+#: sql_help.c:453 sql_help.c:545 sql_help.c:681 sql_help.c:875 sql_help.c:1026
+#: sql_help.c:1330 sql_help.c:1593
 msgid "where action is one of:"
 msgstr "donde acción es una de:"
 
-#: sql_help.c:454 sql_help.c:459 sql_help.c:1072 sql_help.c:1330
-#: sql_help.c:1335 sql_help.c:1593 sql_help.c:1597 sql_help.c:2229
-#: sql_help.c:2326 sql_help.c:2538 sql_help.c:2731 sql_help.c:2888
-#: sql_help.c:3167 sql_help.c:4143
+#: sql_help.c:455 sql_help.c:460 sql_help.c:1074 sql_help.c:1332
+#: sql_help.c:1337 sql_help.c:1595 sql_help.c:1599 sql_help.c:2240
+#: sql_help.c:2337 sql_help.c:2549 sql_help.c:2742 sql_help.c:2899
+#: sql_help.c:3178 sql_help.c:4154
 msgid "data_type"
 msgstr "tipo_de_dato"
 
-#: sql_help.c:455 sql_help.c:460 sql_help.c:1331 sql_help.c:1336
-#: sql_help.c:1594 sql_help.c:1598 sql_help.c:2230 sql_help.c:2329
-#: sql_help.c:2461 sql_help.c:2890 sql_help.c:2898 sql_help.c:2911
-#: sql_help.c:2925 sql_help.c:3168 sql_help.c:3174 sql_help.c:3991
+#: sql_help.c:456 sql_help.c:461 sql_help.c:1333 sql_help.c:1338
+#: sql_help.c:1596 sql_help.c:1600 sql_help.c:2241 sql_help.c:2340
+#: sql_help.c:2472 sql_help.c:2901 sql_help.c:2909 sql_help.c:2922
+#: sql_help.c:2936 sql_help.c:3179 sql_help.c:3185 sql_help.c:4003
 msgid "collation"
 msgstr "ordenamiento"
 
-#: sql_help.c:456 sql_help.c:1332 sql_help.c:2330 sql_help.c:2339
-#: sql_help.c:2891 sql_help.c:2907 sql_help.c:2920
+#: sql_help.c:457 sql_help.c:1334 sql_help.c:2341 sql_help.c:2350
+#: sql_help.c:2902 sql_help.c:2918 sql_help.c:2931
 msgid "column_constraint"
 msgstr "restricción_de_columna"
 
-#: sql_help.c:466 sql_help.c:608 sql_help.c:682 sql_help.c:1350 sql_help.c:4970
+#: sql_help.c:467 sql_help.c:609 sql_help.c:683 sql_help.c:1352 sql_help.c:4989
 msgid "integer"
 msgstr "entero"
 
-#: sql_help.c:468 sql_help.c:471 sql_help.c:684 sql_help.c:687 sql_help.c:1352
-#: sql_help.c:1355
+#: sql_help.c:469 sql_help.c:472 sql_help.c:685 sql_help.c:688 sql_help.c:1354
+#: sql_help.c:1357
 msgid "attribute_option"
 msgstr "opción_de_atributo"
 
-#: sql_help.c:476 sql_help.c:1359 sql_help.c:2331 sql_help.c:2340
-#: sql_help.c:2892 sql_help.c:2908 sql_help.c:2921
+#: sql_help.c:477 sql_help.c:1361 sql_help.c:2342 sql_help.c:2351
+#: sql_help.c:2903 sql_help.c:2919 sql_help.c:2932
 msgid "table_constraint"
 msgstr "restricción_de_tabla"
 
-#: sql_help.c:479 sql_help.c:480 sql_help.c:481 sql_help.c:482 sql_help.c:1364
-#: sql_help.c:1365 sql_help.c:1366 sql_help.c:1367 sql_help.c:1905
+#: sql_help.c:480 sql_help.c:481 sql_help.c:482 sql_help.c:483 sql_help.c:1366
+#: sql_help.c:1367 sql_help.c:1368 sql_help.c:1369 sql_help.c:1910
 msgid "trigger_name"
 msgstr "nombre_disparador"
 
-#: sql_help.c:483 sql_help.c:484 sql_help.c:1378 sql_help.c:1379
-#: sql_help.c:2332 sql_help.c:2337 sql_help.c:2895 sql_help.c:2918
+#: sql_help.c:484 sql_help.c:485 sql_help.c:1380 sql_help.c:1381
+#: sql_help.c:2343 sql_help.c:2348 sql_help.c:2906 sql_help.c:2929
 msgid "parent_table"
 msgstr "tabla_padre"
 
-#: sql_help.c:543 sql_help.c:600 sql_help.c:669 sql_help.c:873 sql_help.c:1023
-#: sql_help.c:1550 sql_help.c:2261
+#: sql_help.c:544 sql_help.c:601 sql_help.c:670 sql_help.c:874 sql_help.c:1025
+#: sql_help.c:1552 sql_help.c:2272
 msgid "extension_name"
 msgstr "nombre_de_extensión"
 
-#: sql_help.c:545 sql_help.c:1025 sql_help.c:2395
+#: sql_help.c:546 sql_help.c:1027 sql_help.c:2406
 msgid "execution_cost"
 msgstr "costo_de_ejecución"
 
-#: sql_help.c:546 sql_help.c:1026 sql_help.c:2396
+#: sql_help.c:547 sql_help.c:1028 sql_help.c:2407
 msgid "result_rows"
 msgstr "núm_de_filas"
 
-#: sql_help.c:547 sql_help.c:2397
+#: sql_help.c:548 sql_help.c:2408
 msgid "support_function"
 msgstr "función_de_soporte"
 
-#: sql_help.c:569 sql_help.c:571 sql_help.c:948 sql_help.c:956 sql_help.c:960
-#: sql_help.c:963 sql_help.c:966 sql_help.c:1633 sql_help.c:1641
-#: sql_help.c:1645 sql_help.c:1648 sql_help.c:1651 sql_help.c:2709
-#: sql_help.c:2711 sql_help.c:2714 sql_help.c:2715 sql_help.c:3882
-#: sql_help.c:3883 sql_help.c:3887 sql_help.c:3888 sql_help.c:3891
-#: sql_help.c:3892 sql_help.c:3894 sql_help.c:3895 sql_help.c:3897
-#: sql_help.c:3898 sql_help.c:3900 sql_help.c:3901 sql_help.c:3903
-#: sql_help.c:3904 sql_help.c:3910 sql_help.c:3911 sql_help.c:3913
-#: sql_help.c:3914 sql_help.c:3916 sql_help.c:3917 sql_help.c:3919
-#: sql_help.c:3920 sql_help.c:3922 sql_help.c:3923 sql_help.c:3925
+#: sql_help.c:570 sql_help.c:572 sql_help.c:949 sql_help.c:957 sql_help.c:962
+#: sql_help.c:965 sql_help.c:968 sql_help.c:1635 sql_help.c:1643
+#: sql_help.c:1648 sql_help.c:1651 sql_help.c:1654 sql_help.c:2720
+#: sql_help.c:2722 sql_help.c:2725 sql_help.c:2726 sql_help.c:3894
+#: sql_help.c:3895 sql_help.c:3899 sql_help.c:3900 sql_help.c:3903
+#: sql_help.c:3904 sql_help.c:3906 sql_help.c:3907 sql_help.c:3909
+#: sql_help.c:3910 sql_help.c:3912 sql_help.c:3913 sql_help.c:3915
+#: sql_help.c:3916 sql_help.c:3922 sql_help.c:3923 sql_help.c:3925
 #: sql_help.c:3926 sql_help.c:3928 sql_help.c:3929 sql_help.c:3931
-#: sql_help.c:3932 sql_help.c:4332 sql_help.c:4333 sql_help.c:4337
-#: sql_help.c:4338 sql_help.c:4341 sql_help.c:4342 sql_help.c:4344
-#: sql_help.c:4345 sql_help.c:4347 sql_help.c:4348 sql_help.c:4350
-#: sql_help.c:4351 sql_help.c:4353 sql_help.c:4354 sql_help.c:4360
-#: sql_help.c:4361 sql_help.c:4363 sql_help.c:4364 sql_help.c:4366
-#: sql_help.c:4367 sql_help.c:4369 sql_help.c:4370 sql_help.c:4372
-#: sql_help.c:4373 sql_help.c:4375 sql_help.c:4376 sql_help.c:4378
-#: sql_help.c:4379 sql_help.c:4381 sql_help.c:4382
+#: sql_help.c:3932 sql_help.c:3934 sql_help.c:3935 sql_help.c:3937
+#: sql_help.c:3938 sql_help.c:3940 sql_help.c:3941 sql_help.c:3943
+#: sql_help.c:3944 sql_help.c:4346 sql_help.c:4347 sql_help.c:4351
+#: sql_help.c:4352 sql_help.c:4355 sql_help.c:4356 sql_help.c:4358
+#: sql_help.c:4359 sql_help.c:4361 sql_help.c:4362 sql_help.c:4364
+#: sql_help.c:4365 sql_help.c:4367 sql_help.c:4368 sql_help.c:4374
+#: sql_help.c:4375 sql_help.c:4377 sql_help.c:4378 sql_help.c:4380
+#: sql_help.c:4381 sql_help.c:4383 sql_help.c:4384 sql_help.c:4386
+#: sql_help.c:4387 sql_help.c:4389 sql_help.c:4390 sql_help.c:4392
+#: sql_help.c:4393 sql_help.c:4395 sql_help.c:4396
 msgid "role_specification"
 msgstr "especificación_de_rol"
 
-#: sql_help.c:570 sql_help.c:572 sql_help.c:1664 sql_help.c:2198
-#: sql_help.c:2717 sql_help.c:3245 sql_help.c:3696 sql_help.c:4709
+#: sql_help.c:571 sql_help.c:573 sql_help.c:1667 sql_help.c:2208
+#: sql_help.c:2728 sql_help.c:3256 sql_help.c:3707 sql_help.c:4723
 msgid "user_name"
 msgstr "nombre_de_usuario"
 
-#: sql_help.c:573 sql_help.c:968 sql_help.c:1653 sql_help.c:2716
-#: sql_help.c:3933 sql_help.c:4383
+#: sql_help.c:574 sql_help.c:970 sql_help.c:1656 sql_help.c:2727
+#: sql_help.c:3945 sql_help.c:4397
 msgid "where role_specification can be:"
 msgstr "donde especificación_de_rol puede ser:"
 
-#: sql_help.c:575
+#: sql_help.c:576
 msgid "group_name"
 msgstr "nombre_de_grupo"
 
-#: sql_help.c:596 sql_help.c:1425 sql_help.c:2208 sql_help.c:2468
-#: sql_help.c:2502 sql_help.c:2903 sql_help.c:2916 sql_help.c:2930
-#: sql_help.c:2971 sql_help.c:2998 sql_help.c:3010 sql_help.c:3924
-#: sql_help.c:4374
+#: sql_help.c:597 sql_help.c:1427 sql_help.c:2219 sql_help.c:2479
+#: sql_help.c:2513 sql_help.c:2914 sql_help.c:2927 sql_help.c:2941
+#: sql_help.c:2982 sql_help.c:3009 sql_help.c:3021 sql_help.c:3936
+#: sql_help.c:4388
 msgid "tablespace_name"
 msgstr "nombre_de_tablespace"
 
-#: sql_help.c:598 sql_help.c:691 sql_help.c:1372 sql_help.c:1382
-#: sql_help.c:1420 sql_help.c:1780 sql_help.c:1783
+#: sql_help.c:599 sql_help.c:692 sql_help.c:1374 sql_help.c:1384
+#: sql_help.c:1422 sql_help.c:1785 sql_help.c:1788
 msgid "index_name"
 msgstr "nombre_índice"
 
-#: sql_help.c:602 sql_help.c:605 sql_help.c:694 sql_help.c:696 sql_help.c:1375
-#: sql_help.c:1377 sql_help.c:1423 sql_help.c:2466 sql_help.c:2500
-#: sql_help.c:2901 sql_help.c:2914 sql_help.c:2928 sql_help.c:2969
-#: sql_help.c:2996
+#: sql_help.c:603 sql_help.c:606 sql_help.c:695 sql_help.c:697 sql_help.c:1377
+#: sql_help.c:1379 sql_help.c:1425 sql_help.c:2477 sql_help.c:2511
+#: sql_help.c:2912 sql_help.c:2925 sql_help.c:2939 sql_help.c:2980
+#: sql_help.c:3007
 msgid "storage_parameter"
 msgstr "parámetro_de_almacenamiento"
 
-#: sql_help.c:607
+#: sql_help.c:608
 msgid "column_number"
 msgstr "número_de_columna"
 
-#: sql_help.c:631 sql_help.c:1868 sql_help.c:4466
+#: sql_help.c:632 sql_help.c:1873 sql_help.c:4480
 msgid "large_object_oid"
 msgstr "oid_de_objeto_grande"
 
-#: sql_help.c:690 sql_help.c:1358 sql_help.c:2889
+#: sql_help.c:691 sql_help.c:1360 sql_help.c:2900
 msgid "compression_method"
 msgstr "método_de_compresión"
 
-#: sql_help.c:692 sql_help.c:1373
+#: sql_help.c:693 sql_help.c:1375
 msgid "new_access_method"
 msgstr "nuevo_método_de_acceso"
 
-#: sql_help.c:725 sql_help.c:2523
+#: sql_help.c:726 sql_help.c:2534
 msgid "res_proc"
 msgstr "proc_res"
 
-#: sql_help.c:726 sql_help.c:2524
+#: sql_help.c:727 sql_help.c:2535
 msgid "join_proc"
 msgstr "proc_join"
 
-#: sql_help.c:778 sql_help.c:790 sql_help.c:2541
+#: sql_help.c:779 sql_help.c:791 sql_help.c:2552
 msgid "strategy_number"
 msgstr "número_de_estrategia"
 
-#: sql_help.c:780 sql_help.c:781 sql_help.c:784 sql_help.c:785 sql_help.c:791
-#: sql_help.c:792 sql_help.c:794 sql_help.c:795 sql_help.c:2543 sql_help.c:2544
-#: sql_help.c:2547 sql_help.c:2548
+#: sql_help.c:781 sql_help.c:782 sql_help.c:785 sql_help.c:786 sql_help.c:792
+#: sql_help.c:793 sql_help.c:795 sql_help.c:796 sql_help.c:2554 sql_help.c:2555
+#: sql_help.c:2558 sql_help.c:2559
 msgid "op_type"
 msgstr "tipo_op"
 
-#: sql_help.c:782 sql_help.c:2545
+#: sql_help.c:783 sql_help.c:2556
 msgid "sort_family_name"
 msgstr "nombre_familia_ordenamiento"
 
-#: sql_help.c:783 sql_help.c:793 sql_help.c:2546
+#: sql_help.c:784 sql_help.c:794 sql_help.c:2557
 msgid "support_number"
 msgstr "número_de_soporte"
 
-#: sql_help.c:787 sql_help.c:2134 sql_help.c:2550 sql_help.c:3087
-#: sql_help.c:3089
+#: sql_help.c:788 sql_help.c:2141 sql_help.c:2561 sql_help.c:3098
+#: sql_help.c:3100
 msgid "argument_type"
 msgstr "tipo_argumento"
 
-#: sql_help.c:818 sql_help.c:821 sql_help.c:910 sql_help.c:1039 sql_help.c:1079
-#: sql_help.c:1546 sql_help.c:1549 sql_help.c:1725 sql_help.c:1779
-#: sql_help.c:1782 sql_help.c:1853 sql_help.c:1878 sql_help.c:1891
-#: sql_help.c:1906 sql_help.c:1963 sql_help.c:1969 sql_help.c:2324
-#: sql_help.c:2336 sql_help.c:2457 sql_help.c:2497 sql_help.c:2574
-#: sql_help.c:2628 sql_help.c:2685 sql_help.c:2737 sql_help.c:2770
-#: sql_help.c:2777 sql_help.c:2886 sql_help.c:2904 sql_help.c:2917
-#: sql_help.c:2993 sql_help.c:3113 sql_help.c:3294 sql_help.c:3517
-#: sql_help.c:3566 sql_help.c:3672 sql_help.c:3880 sql_help.c:3886
-#: sql_help.c:3947 sql_help.c:3979 sql_help.c:4330 sql_help.c:4336
-#: sql_help.c:4454 sql_help.c:4565 sql_help.c:4567 sql_help.c:4629
-#: sql_help.c:4668 sql_help.c:4822 sql_help.c:4824 sql_help.c:4886
-#: sql_help.c:4920 sql_help.c:4972 sql_help.c:5060 sql_help.c:5062
-#: sql_help.c:5124
+#: sql_help.c:819 sql_help.c:822 sql_help.c:911 sql_help.c:1041 sql_help.c:1081
+#: sql_help.c:1548 sql_help.c:1551 sql_help.c:1730 sql_help.c:1784
+#: sql_help.c:1787 sql_help.c:1858 sql_help.c:1883 sql_help.c:1896
+#: sql_help.c:1911 sql_help.c:1969 sql_help.c:1975 sql_help.c:2335
+#: sql_help.c:2347 sql_help.c:2468 sql_help.c:2508 sql_help.c:2585
+#: sql_help.c:2639 sql_help.c:2696 sql_help.c:2748 sql_help.c:2781
+#: sql_help.c:2788 sql_help.c:2897 sql_help.c:2915 sql_help.c:2928
+#: sql_help.c:3004 sql_help.c:3124 sql_help.c:3305 sql_help.c:3528
+#: sql_help.c:3577 sql_help.c:3683 sql_help.c:3892 sql_help.c:3898
+#: sql_help.c:3959 sql_help.c:3991 sql_help.c:4344 sql_help.c:4350
+#: sql_help.c:4468 sql_help.c:4579 sql_help.c:4581 sql_help.c:4643
+#: sql_help.c:4682 sql_help.c:4836 sql_help.c:4838 sql_help.c:4900
+#: sql_help.c:4934 sql_help.c:4994 sql_help.c:5082 sql_help.c:5084
+#: sql_help.c:5146
 msgid "table_name"
 msgstr "nombre_de_tabla"
 
-#: sql_help.c:823 sql_help.c:2576
+#: sql_help.c:824 sql_help.c:2587
 msgid "using_expression"
 msgstr "expresión_using"
 
-#: sql_help.c:824 sql_help.c:2577
+#: sql_help.c:825 sql_help.c:2588
 msgid "check_expression"
 msgstr "expresión_check"
 
-#: sql_help.c:897 sql_help.c:899 sql_help.c:901 sql_help.c:2624
+#: sql_help.c:898 sql_help.c:900 sql_help.c:902 sql_help.c:2635
 msgid "publication_object"
 msgstr "objeto_de_publicación"
 
-#: sql_help.c:903 sql_help.c:2625
+#: sql_help.c:904 sql_help.c:2636
 msgid "publication_parameter"
 msgstr "parámetro_de_publicación"
 
-#: sql_help.c:909 sql_help.c:2627
+#: sql_help.c:910 sql_help.c:2638
 msgid "where publication_object is one of:"
 msgstr "donde objeto_de_publicación es uno de:"
 
-#: sql_help.c:952 sql_help.c:1637 sql_help.c:2435 sql_help.c:2662
-#: sql_help.c:3228
+#: sql_help.c:953 sql_help.c:1639 sql_help.c:2446 sql_help.c:2673
+#: sql_help.c:3239
 msgid "password"
 msgstr "contraseña"
 
-#: sql_help.c:953 sql_help.c:1638 sql_help.c:2436 sql_help.c:2663
-#: sql_help.c:3229
+#: sql_help.c:954 sql_help.c:1640 sql_help.c:2447 sql_help.c:2674
+#: sql_help.c:3240
 msgid "timestamp"
 msgstr "fecha_hora"
 
-#: sql_help.c:957 sql_help.c:961 sql_help.c:964 sql_help.c:967 sql_help.c:1642
-#: sql_help.c:1646 sql_help.c:1649 sql_help.c:1652 sql_help.c:3893
-#: sql_help.c:4343
+#: sql_help.c:958 sql_help.c:963 sql_help.c:966 sql_help.c:969 sql_help.c:1644
+#: sql_help.c:1649 sql_help.c:1652 sql_help.c:1655 sql_help.c:3905
+#: sql_help.c:4357
 msgid "database_name"
 msgstr "nombre_de_base_de_datos"
 
-#: sql_help.c:1073 sql_help.c:2732
+#: sql_help.c:1075 sql_help.c:2743
 msgid "increment"
 msgstr "incremento"
 
-#: sql_help.c:1074 sql_help.c:2733
+#: sql_help.c:1076 sql_help.c:2744
 msgid "minvalue"
 msgstr "valormin"
 
-#: sql_help.c:1075 sql_help.c:2734
+#: sql_help.c:1077 sql_help.c:2745
 msgid "maxvalue"
 msgstr "valormax"
 
-#: sql_help.c:1076 sql_help.c:2735 sql_help.c:4563 sql_help.c:4666
-#: sql_help.c:4820 sql_help.c:4989 sql_help.c:5058
+#: sql_help.c:1078 sql_help.c:2746 sql_help.c:4577 sql_help.c:4680
+#: sql_help.c:4834 sql_help.c:5011 sql_help.c:5080
 msgid "start"
 msgstr "inicio"
 
-#: sql_help.c:1077 sql_help.c:1347
+#: sql_help.c:1079 sql_help.c:1349
 msgid "restart"
 msgstr "reinicio"
 
-#: sql_help.c:1078 sql_help.c:2736
+#: sql_help.c:1080 sql_help.c:2747
 msgid "cache"
 msgstr "cache"
 
-#: sql_help.c:1123
+#: sql_help.c:1125
 msgid "new_target"
 msgstr "nuevo_valor"
 
-#: sql_help.c:1142 sql_help.c:2789
+#: sql_help.c:1144 sql_help.c:2800
 msgid "conninfo"
 msgstr "conninfo"
 
-#: sql_help.c:1144 sql_help.c:1148 sql_help.c:1152 sql_help.c:2790
+#: sql_help.c:1146 sql_help.c:1150 sql_help.c:1154 sql_help.c:2801
 msgid "publication_name"
 msgstr "nombre_de_publicación"
 
-#: sql_help.c:1145 sql_help.c:1149 sql_help.c:1153
+#: sql_help.c:1147 sql_help.c:1151 sql_help.c:1155
 msgid "publication_option"
 msgstr "opción_de_publicación"
 
-#: sql_help.c:1156
+#: sql_help.c:1158
 msgid "refresh_option"
 msgstr "opción_refresh"
 
-#: sql_help.c:1161 sql_help.c:2791
+#: sql_help.c:1163 sql_help.c:2802
 msgid "subscription_parameter"
 msgstr "parámetro_de_suscripción"
 
-#: sql_help.c:1164
+#: sql_help.c:1166
 msgid "skip_option"
 msgstr "opción_skip"
 
-#: sql_help.c:1324 sql_help.c:1327
+#: sql_help.c:1326 sql_help.c:1329
 msgid "partition_name"
 msgstr "nombre_de_partición"
 
-#: sql_help.c:1325 sql_help.c:2341 sql_help.c:2922
+#: sql_help.c:1327 sql_help.c:2352 sql_help.c:2933
 msgid "partition_bound_spec"
 msgstr "borde_de_partición"
 
-#: sql_help.c:1344 sql_help.c:1394 sql_help.c:2936
+#: sql_help.c:1346 sql_help.c:1396 sql_help.c:2947
 msgid "sequence_options"
 msgstr "opciones_de_secuencia"
 
-#: sql_help.c:1346
+#: sql_help.c:1348
 msgid "sequence_option"
 msgstr "opción_de_secuencia"
 
-#: sql_help.c:1360
+#: sql_help.c:1362
 msgid "table_constraint_using_index"
 msgstr "restricción_de_tabla_con_índice"
 
-#: sql_help.c:1368 sql_help.c:1369 sql_help.c:1370 sql_help.c:1371
+#: sql_help.c:1370 sql_help.c:1371 sql_help.c:1372 sql_help.c:1373
 msgid "rewrite_rule_name"
 msgstr "nombre_regla_de_reescritura"
 
-#: sql_help.c:1383 sql_help.c:2353 sql_help.c:2961
+#: sql_help.c:1385 sql_help.c:2364 sql_help.c:2972
 msgid "and partition_bound_spec is:"
 msgstr "y borde_de_partición es:"
 
-#: sql_help.c:1384 sql_help.c:1385 sql_help.c:1386 sql_help.c:2354
-#: sql_help.c:2355 sql_help.c:2356 sql_help.c:2962 sql_help.c:2963
-#: sql_help.c:2964
+#: sql_help.c:1386 sql_help.c:1387 sql_help.c:1388 sql_help.c:2365
+#: sql_help.c:2366 sql_help.c:2367 sql_help.c:2973 sql_help.c:2974
+#: sql_help.c:2975
 msgid "partition_bound_expr"
 msgstr "expresión_de_borde_de_partición"
 
-#: sql_help.c:1387 sql_help.c:1388 sql_help.c:2357 sql_help.c:2358
-#: sql_help.c:2965 sql_help.c:2966
+#: sql_help.c:1389 sql_help.c:1390 sql_help.c:2368 sql_help.c:2369
+#: sql_help.c:2976 sql_help.c:2977
 msgid "numeric_literal"
 msgstr "literal_numérico"
 
-#: sql_help.c:1389
+#: sql_help.c:1391
 msgid "and column_constraint is:"
 msgstr "donde restricción_de_columna es:"
 
-#: sql_help.c:1392 sql_help.c:2348 sql_help.c:2389 sql_help.c:2598
-#: sql_help.c:2934
+#: sql_help.c:1394 sql_help.c:2359 sql_help.c:2400 sql_help.c:2609
+#: sql_help.c:2945
 msgid "default_expr"
 msgstr "expr_por_omisión"
 
-#: sql_help.c:1393 sql_help.c:2349 sql_help.c:2935
+#: sql_help.c:1395 sql_help.c:2360 sql_help.c:2946
 msgid "generation_expr"
 msgstr "expr_de_generación"
 
-#: sql_help.c:1395 sql_help.c:1396 sql_help.c:1405 sql_help.c:1407
-#: sql_help.c:1411 sql_help.c:2937 sql_help.c:2938 sql_help.c:2947
-#: sql_help.c:2949 sql_help.c:2953
+#: sql_help.c:1397 sql_help.c:1398 sql_help.c:1407 sql_help.c:1409
+#: sql_help.c:1413 sql_help.c:2948 sql_help.c:2949 sql_help.c:2958
+#: sql_help.c:2960 sql_help.c:2964
 msgid "index_parameters"
 msgstr "parámetros_de_índice"
 
-#: sql_help.c:1397 sql_help.c:1414 sql_help.c:2939 sql_help.c:2956
+#: sql_help.c:1399 sql_help.c:1416 sql_help.c:2950 sql_help.c:2967
 msgid "reftable"
 msgstr "tabla_ref"
 
-#: sql_help.c:1398 sql_help.c:1415 sql_help.c:2940 sql_help.c:2957
+#: sql_help.c:1400 sql_help.c:1417 sql_help.c:2951 sql_help.c:2968
 msgid "refcolumn"
 msgstr "columna_ref"
 
-#: sql_help.c:1399 sql_help.c:1400 sql_help.c:1416 sql_help.c:1417
-#: sql_help.c:2941 sql_help.c:2942 sql_help.c:2958 sql_help.c:2959
+#: sql_help.c:1401 sql_help.c:1402 sql_help.c:1418 sql_help.c:1419
+#: sql_help.c:2952 sql_help.c:2953 sql_help.c:2969 sql_help.c:2970
 msgid "referential_action"
 msgstr "acción_referencial"
 
-#: sql_help.c:1401 sql_help.c:2350 sql_help.c:2943
+#: sql_help.c:1403 sql_help.c:2361 sql_help.c:2954
 msgid "and table_constraint is:"
 msgstr "y restricción_de_tabla es:"
 
-#: sql_help.c:1409 sql_help.c:2951
+#: sql_help.c:1411 sql_help.c:2962
 msgid "exclude_element"
 msgstr "elemento_de_exclusión"
 
-#: sql_help.c:1410 sql_help.c:2952 sql_help.c:4561 sql_help.c:4664
-#: sql_help.c:4818 sql_help.c:4987 sql_help.c:5056
+#: sql_help.c:1412 sql_help.c:2963 sql_help.c:4575 sql_help.c:4678
+#: sql_help.c:4832 sql_help.c:5009 sql_help.c:5078
 msgid "operator"
 msgstr "operador"
 
-#: sql_help.c:1412 sql_help.c:2469 sql_help.c:2954
+#: sql_help.c:1414 sql_help.c:2480 sql_help.c:2965
 msgid "predicate"
 msgstr "predicado"
 
-#: sql_help.c:1418
+#: sql_help.c:1420
 msgid "and table_constraint_using_index is:"
 msgstr "y restricción_de_tabla_con_índice es:"
 
-#: sql_help.c:1421 sql_help.c:2967
+#: sql_help.c:1423 sql_help.c:2978
 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:1426 sql_help.c:2972
+#: sql_help.c:1428 sql_help.c:2983
 msgid "exclude_element in an EXCLUDE constraint is:"
 msgstr "elemento_de_exclusión en una restricción EXCLUDE es:"
 
-#: sql_help.c:1429 sql_help.c:2462 sql_help.c:2899 sql_help.c:2912
-#: sql_help.c:2926 sql_help.c:2975 sql_help.c:3992
+#: sql_help.c:1431 sql_help.c:2473 sql_help.c:2910 sql_help.c:2923
+#: sql_help.c:2937 sql_help.c:2986 sql_help.c:4004
 msgid "opclass"
 msgstr "clase_de_ops"
 
-#: sql_help.c:1430 sql_help.c:2976
+#: sql_help.c:1432 sql_help.c:2987
 msgid "referential_action in a FOREIGN KEY/REFERENCES constraint is:"
 msgstr "acción_referencial en una restricción FOREIGN KEY/REFERENCES es:"
 
-#: sql_help.c:1448 sql_help.c:1451 sql_help.c:3013
+#: sql_help.c:1450 sql_help.c:1453 sql_help.c:3024
 msgid "tablespace_option"
 msgstr "opción_de_tablespace"
 
-#: sql_help.c:1472 sql_help.c:1475 sql_help.c:1481 sql_help.c:1485
+#: sql_help.c:1474 sql_help.c:1477 sql_help.c:1483 sql_help.c:1487
 msgid "token_type"
 msgstr "tipo_de_token"
 
-#: sql_help.c:1473 sql_help.c:1476
+#: sql_help.c:1475 sql_help.c:1478
 msgid "dictionary_name"
 msgstr "nombre_diccionario"
 
-#: sql_help.c:1478 sql_help.c:1482
+#: sql_help.c:1480 sql_help.c:1484
 msgid "old_dictionary"
 msgstr "diccionario_antiguo"
 
-#: sql_help.c:1479 sql_help.c:1483
+#: sql_help.c:1481 sql_help.c:1485
 msgid "new_dictionary"
 msgstr "diccionario_nuevo"
 
-#: sql_help.c:1578 sql_help.c:1592 sql_help.c:1595 sql_help.c:1596
-#: sql_help.c:3166
+#: sql_help.c:1580 sql_help.c:1594 sql_help.c:1597 sql_help.c:1598
+#: sql_help.c:3177
 msgid "attribute_name"
 msgstr "nombre_atributo"
 
-#: sql_help.c:1579
+#: sql_help.c:1581
 msgid "new_attribute_name"
 msgstr "nuevo_nombre_atributo"
 
-#: sql_help.c:1583 sql_help.c:1587
+#: sql_help.c:1585 sql_help.c:1589
 msgid "new_enum_value"
 msgstr "nuevo_valor_enum"
 
-#: sql_help.c:1584
+#: sql_help.c:1586
 msgid "neighbor_enum_value"
 msgstr "valor_enum_vecino"
 
-#: sql_help.c:1586
+#: sql_help.c:1588
 msgid "existing_enum_value"
 msgstr "valor_enum_existente"
 
-#: sql_help.c:1589
+#: sql_help.c:1591
 msgid "property"
 msgstr "propiedad"
 
-#: sql_help.c:1665 sql_help.c:2333 sql_help.c:2342 sql_help.c:2748
-#: sql_help.c:3246 sql_help.c:3697 sql_help.c:3902 sql_help.c:3948
-#: sql_help.c:4352
+#: sql_help.c:1668 sql_help.c:2344 sql_help.c:2353 sql_help.c:2759
+#: sql_help.c:3257 sql_help.c:3708 sql_help.c:3914 sql_help.c:3960
+#: sql_help.c:4366
 msgid "server_name"
 msgstr "nombre_de_servidor"
 
-#: sql_help.c:1697 sql_help.c:1700 sql_help.c:3261
+#: sql_help.c:1700 sql_help.c:1703 sql_help.c:3272
 msgid "view_option_name"
 msgstr "nombre_opción_de_vista"
 
-#: sql_help.c:1698 sql_help.c:3262
+#: sql_help.c:1701 sql_help.c:3273
 msgid "view_option_value"
 msgstr "valor_opción_de_vista"
 
-#: sql_help.c:1719 sql_help.c:1720 sql_help.c:4959 sql_help.c:4960
+#: sql_help.c:1723 sql_help.c:1724 sql_help.c:4977 sql_help.c:4978
 msgid "table_and_columns"
 msgstr "tabla_y_columnas"
 
-#: sql_help.c:1721 sql_help.c:1784 sql_help.c:1975 sql_help.c:3745
-#: sql_help.c:4187 sql_help.c:4961
+#: sql_help.c:1725 sql_help.c:1789 sql_help.c:1981 sql_help.c:3757
+#: sql_help.c:4201 sql_help.c:4979
 msgid "where option can be one of:"
 msgstr "donde opción puede ser una de:"
 
-#: sql_help.c:1722 sql_help.c:1723 sql_help.c:1785 sql_help.c:1977
-#: sql_help.c:1980 sql_help.c:2159 sql_help.c:3746 sql_help.c:3747
-#: sql_help.c:3748 sql_help.c:3749 sql_help.c:3750 sql_help.c:3751
-#: sql_help.c:3752 sql_help.c:3753 sql_help.c:4188 sql_help.c:4190
-#: sql_help.c:4962 sql_help.c:4963 sql_help.c:4964 sql_help.c:4965
-#: sql_help.c:4966 sql_help.c:4967 sql_help.c:4968 sql_help.c:4969
+#: sql_help.c:1726 sql_help.c:1727 sql_help.c:1790 sql_help.c:1983
+#: sql_help.c:1986 sql_help.c:2167 sql_help.c:3758 sql_help.c:3759
+#: sql_help.c:3760 sql_help.c:3761 sql_help.c:3762 sql_help.c:3763
+#: sql_help.c:3764 sql_help.c:3765 sql_help.c:3766 sql_help.c:4202
+#: sql_help.c:4204 sql_help.c:4980 sql_help.c:4981 sql_help.c:4982
+#: sql_help.c:4983 sql_help.c:4984 sql_help.c:4985 sql_help.c:4986
+#: sql_help.c:4987 sql_help.c:4988 sql_help.c:4990 sql_help.c:4991
 msgid "boolean"
 msgstr "booleano"
 
-#: sql_help.c:1724 sql_help.c:4971
+#: sql_help.c:1728 sql_help.c:4992
+msgid "size"
+msgstr ""
+
+#: sql_help.c:1729 sql_help.c:4993
 msgid "and table_and_columns is:"
 msgstr "y tabla_y_columnas es:"
 
-#: sql_help.c:1740 sql_help.c:4725 sql_help.c:4727 sql_help.c:4751
+#: sql_help.c:1745 sql_help.c:4739 sql_help.c:4741 sql_help.c:4765
 msgid "transaction_mode"
 msgstr "modo_de_transacción"
 
-#: sql_help.c:1741 sql_help.c:4728 sql_help.c:4752
+#: sql_help.c:1746 sql_help.c:4742 sql_help.c:4766
 msgid "where transaction_mode is one of:"
 msgstr "donde modo_de_transacción es uno de:"
 
-#: sql_help.c:1750 sql_help.c:4571 sql_help.c:4580 sql_help.c:4584
-#: sql_help.c:4588 sql_help.c:4591 sql_help.c:4828 sql_help.c:4837
-#: sql_help.c:4841 sql_help.c:4845 sql_help.c:4848 sql_help.c:5066
-#: sql_help.c:5075 sql_help.c:5079 sql_help.c:5083 sql_help.c:5086
+#: sql_help.c:1755 sql_help.c:4585 sql_help.c:4594 sql_help.c:4598
+#: sql_help.c:4602 sql_help.c:4605 sql_help.c:4842 sql_help.c:4851
+#: sql_help.c:4855 sql_help.c:4859 sql_help.c:4862 sql_help.c:5088
+#: sql_help.c:5097 sql_help.c:5101 sql_help.c:5105 sql_help.c:5108
 msgid "argument"
 msgstr "argumento"
 
-#: sql_help.c:1850
+#: sql_help.c:1855
 msgid "relation_name"
 msgstr "nombre_relación"
 
-#: sql_help.c:1855 sql_help.c:3896 sql_help.c:4346
+#: sql_help.c:1860 sql_help.c:3908 sql_help.c:4360
 msgid "domain_name"
 msgstr "nombre_de_dominio"
 
-#: sql_help.c:1877
+#: sql_help.c:1882
 msgid "policy_name"
 msgstr "nombre_de_política"
 
-#: sql_help.c:1890
+#: sql_help.c:1895
 msgid "rule_name"
 msgstr "nombre_regla"
 
-#: sql_help.c:1909
-msgid "text"
-msgstr "texto"
+#: sql_help.c:1914 sql_help.c:4499
+#, fuzzy
+#| msgid "numeric_literal"
+msgid "string_literal"
+msgstr "literal_numérico"
 
-#: sql_help.c:1934 sql_help.c:4152 sql_help.c:4399
+#: sql_help.c:1939 sql_help.c:4163 sql_help.c:4413
 msgid "transaction_id"
 msgstr "id_de_transacción"
 
-#: sql_help.c:1965 sql_help.c:1972 sql_help.c:4018
+#: sql_help.c:1971 sql_help.c:1978 sql_help.c:4030
 msgid "filename"
 msgstr "nombre_de_archivo"
 
-#: sql_help.c:1966 sql_help.c:1973 sql_help.c:2687 sql_help.c:2688
-#: sql_help.c:2689
+#: sql_help.c:1972 sql_help.c:1979 sql_help.c:2698 sql_help.c:2699
+#: sql_help.c:2700
 msgid "command"
 msgstr "orden"
 
-#: sql_help.c:1968 sql_help.c:2686 sql_help.c:3116 sql_help.c:3297
-#: sql_help.c:4002 sql_help.c:4079 sql_help.c:4082 sql_help.c:4554
-#: sql_help.c:4556 sql_help.c:4657 sql_help.c:4659 sql_help.c:4811
-#: sql_help.c:4813 sql_help.c:4929 sql_help.c:5049 sql_help.c:5051
+#: sql_help.c:1974 sql_help.c:2697 sql_help.c:3127 sql_help.c:3308
+#: sql_help.c:4014 sql_help.c:4091 sql_help.c:4094 sql_help.c:4568
+#: sql_help.c:4570 sql_help.c:4671 sql_help.c:4673 sql_help.c:4825
+#: sql_help.c:4827 sql_help.c:4943 sql_help.c:5071 sql_help.c:5073
 msgid "condition"
 msgstr "condición"
 
-#: sql_help.c:1971 sql_help.c:2503 sql_help.c:2999 sql_help.c:3263
-#: sql_help.c:3281 sql_help.c:3983
+#: sql_help.c:1977 sql_help.c:2514 sql_help.c:3010 sql_help.c:3274
+#: sql_help.c:3292 sql_help.c:3995
 msgid "query"
 msgstr "consulta"
 
-#: sql_help.c:1976
+#: sql_help.c:1982
 msgid "format_name"
 msgstr "nombre_de_formato"
 
-#: sql_help.c:1978
+#: sql_help.c:1984
 msgid "delimiter_character"
 msgstr "carácter_delimitador"
 
-#: sql_help.c:1979
+#: sql_help.c:1985
 msgid "null_string"
 msgstr "cadena_null"
 
-#: sql_help.c:1981
+#: sql_help.c:1987
 msgid "quote_character"
 msgstr "carácter_de_comilla"
 
-#: sql_help.c:1982
+#: sql_help.c:1988
 msgid "escape_character"
 msgstr "carácter_de_escape"
 
-#: sql_help.c:1986
+#: sql_help.c:1992
 msgid "encoding_name"
 msgstr "nombre_codificación"
 
-#: sql_help.c:1997
+#: sql_help.c:1993
+#, fuzzy
+#| msgid "null_string"
+msgid "default_string"
+msgstr "cadena_null"
+
+#: sql_help.c:2004
 msgid "access_method_type"
 msgstr "tipo_de_método_de_acceso"
 
-#: sql_help.c:2068 sql_help.c:2087 sql_help.c:2090
+#: sql_help.c:2075 sql_help.c:2094 sql_help.c:2097
 msgid "arg_data_type"
 msgstr "tipo_de_dato_arg"
 
-#: sql_help.c:2069 sql_help.c:2091 sql_help.c:2099
+#: sql_help.c:2076 sql_help.c:2098 sql_help.c:2106
 msgid "sfunc"
 msgstr "func_transición"
 
-#: sql_help.c:2070 sql_help.c:2092 sql_help.c:2100
+#: sql_help.c:2077 sql_help.c:2099 sql_help.c:2107
 msgid "state_data_type"
 msgstr "tipo_de_dato_de_estado"
 
-#: sql_help.c:2071 sql_help.c:2093 sql_help.c:2101
+#: sql_help.c:2078 sql_help.c:2100 sql_help.c:2108
 msgid "state_data_size"
 msgstr "tamaño_de_dato_de_estado"
 
-#: sql_help.c:2072 sql_help.c:2094 sql_help.c:2102
+#: sql_help.c:2079 sql_help.c:2101 sql_help.c:2109
 msgid "ffunc"
 msgstr "func_final"
 
-#: sql_help.c:2073 sql_help.c:2103
+#: sql_help.c:2080 sql_help.c:2110
 msgid "combinefunc"
 msgstr "func_combinación"
 
-#: sql_help.c:2074 sql_help.c:2104
+#: sql_help.c:2081 sql_help.c:2111
 msgid "serialfunc"
 msgstr "func_serial"
 
-#: sql_help.c:2075 sql_help.c:2105
+#: sql_help.c:2082 sql_help.c:2112
 msgid "deserialfunc"
 msgstr "func_deserial"
 
-#: sql_help.c:2076 sql_help.c:2095 sql_help.c:2106
+#: sql_help.c:2083 sql_help.c:2102 sql_help.c:2113
 msgid "initial_condition"
 msgstr "condición_inicial"
 
-#: sql_help.c:2077 sql_help.c:2107
+#: sql_help.c:2084 sql_help.c:2114
 msgid "msfunc"
 msgstr "func_transición_m"
 
-#: sql_help.c:2078 sql_help.c:2108
+#: sql_help.c:2085 sql_help.c:2115
 msgid "minvfunc"
 msgstr "func_inv_m"
 
-#: sql_help.c:2079 sql_help.c:2109
+#: sql_help.c:2086 sql_help.c:2116
 msgid "mstate_data_type"
 msgstr "tipo_de_dato_de_estado_m"
 
-#: sql_help.c:2080 sql_help.c:2110
+#: sql_help.c:2087 sql_help.c:2117
 msgid "mstate_data_size"
 msgstr "tamaño_de_dato_de_estado_m"
 
-#: sql_help.c:2081 sql_help.c:2111
+#: sql_help.c:2088 sql_help.c:2118
 msgid "mffunc"
 msgstr "func_final_m"
 
-#: sql_help.c:2082 sql_help.c:2112
+#: sql_help.c:2089 sql_help.c:2119
 msgid "minitial_condition"
 msgstr "condición_inicial_m"
 
-#: sql_help.c:2083 sql_help.c:2113
+#: sql_help.c:2090 sql_help.c:2120
 msgid "sort_operator"
 msgstr "operador_de_ordenamiento"
 
-#: sql_help.c:2096
+#: sql_help.c:2103
 msgid "or the old syntax"
 msgstr "o la sintaxis antigua"
 
-#: sql_help.c:2098
+#: sql_help.c:2105
 msgid "base_type"
 msgstr "tipo_base"
 
-#: sql_help.c:2155 sql_help.c:2202
+#: sql_help.c:2163 sql_help.c:2212
 msgid "locale"
 msgstr "configuración regional"
 
-#: sql_help.c:2156 sql_help.c:2203
+#: sql_help.c:2164 sql_help.c:2213
 msgid "lc_collate"
 msgstr "lc_collate"
 
-#: sql_help.c:2157 sql_help.c:2204
+#: sql_help.c:2165 sql_help.c:2214
 msgid "lc_ctype"
 msgstr "lc_ctype"
 
-#: sql_help.c:2158 sql_help.c:4452
+#: sql_help.c:2166 sql_help.c:4466
 msgid "provider"
 msgstr "proveedor"
 
-#: sql_help.c:2160 sql_help.c:2263
+#: sql_help.c:2168
+#, fuzzy
+#| msgid "rule"
+msgid "rules"
+msgstr "regla"
+
+#: sql_help.c:2169 sql_help.c:2274
 msgid "version"
 msgstr "versión"
 
-#: sql_help.c:2162
+#: sql_help.c:2171
 msgid "existing_collation"
 msgstr "ordenamiento_existente"
 
-#: sql_help.c:2172
+#: sql_help.c:2181
 msgid "source_encoding"
 msgstr "codificación_origen"
 
-#: sql_help.c:2173
+#: sql_help.c:2182
 msgid "dest_encoding"
 msgstr "codificación_destino"
 
-#: sql_help.c:2199 sql_help.c:3039
+#: sql_help.c:2209 sql_help.c:3050
 msgid "template"
 msgstr "plantilla"
 
-#: sql_help.c:2200
+#: sql_help.c:2210
 msgid "encoding"
 msgstr "codificación"
 
-#: sql_help.c:2201
+#: sql_help.c:2211
 msgid "strategy"
 msgstr "estrategia"
 
-#: sql_help.c:2205
+#: sql_help.c:2215
 msgid "icu_locale"
 msgstr "locale_icu"
 
-#: sql_help.c:2206
+#: sql_help.c:2216
+#, fuzzy
+#| msgid "icu_locale"
+msgid "icu_rules"
+msgstr "locale_icu"
+
+#: sql_help.c:2217
 msgid "locale_provider"
 msgstr "proveedor_locale"
 
-#: sql_help.c:2207
+#: sql_help.c:2218
 msgid "collation_version"
 msgstr "versión_ordenamiento"
 
-#: sql_help.c:2212
+#: sql_help.c:2223
 msgid "oid"
 msgstr "oid"
 
-#: sql_help.c:2232
+#: sql_help.c:2243
 msgid "constraint"
 msgstr "restricción"
 
-#: sql_help.c:2233
+#: sql_help.c:2244
 msgid "where constraint is:"
 msgstr "donde restricción es:"
 
-#: sql_help.c:2247 sql_help.c:2684 sql_help.c:3112
+#: sql_help.c:2258 sql_help.c:2695 sql_help.c:3123
 msgid "event"
 msgstr "evento"
 
-#: sql_help.c:2248
+#: sql_help.c:2259
 msgid "filter_variable"
 msgstr "variable_de_filtrado"
 
-#: sql_help.c:2249
+#: sql_help.c:2260
 msgid "filter_value"
 msgstr "valor_de_filtrado"
 
-#: sql_help.c:2345 sql_help.c:2931
+#: sql_help.c:2356 sql_help.c:2942
 msgid "where column_constraint is:"
 msgstr "donde restricción_de_columna es:"
 
-#: sql_help.c:2390
+#: sql_help.c:2401
 msgid "rettype"
 msgstr "tipo_ret"
 
-#: sql_help.c:2392
+#: sql_help.c:2403
 msgid "column_type"
 msgstr "tipo_columna"
 
-#: sql_help.c:2401 sql_help.c:2604
+#: sql_help.c:2412 sql_help.c:2615
 msgid "definition"
 msgstr "definición"
 
-#: sql_help.c:2402 sql_help.c:2605
+#: sql_help.c:2413 sql_help.c:2616
 msgid "obj_file"
 msgstr "archivo_obj"
 
-#: sql_help.c:2403 sql_help.c:2606
+#: sql_help.c:2414 sql_help.c:2617
 msgid "link_symbol"
 msgstr "símbolo_enlace"
 
-#: sql_help.c:2404 sql_help.c:2607
+#: sql_help.c:2415 sql_help.c:2618
 msgid "sql_body"
 msgstr "contenido_sql"
 
-#: sql_help.c:2442 sql_help.c:2669 sql_help.c:3235
+#: sql_help.c:2453 sql_help.c:2680 sql_help.c:3246
 msgid "uid"
 msgstr "uid"
 
-#: sql_help.c:2458 sql_help.c:2499 sql_help.c:2900 sql_help.c:2913
-#: sql_help.c:2927 sql_help.c:2995
+#: sql_help.c:2469 sql_help.c:2510 sql_help.c:2911 sql_help.c:2924
+#: sql_help.c:2938 sql_help.c:3006
 msgid "method"
 msgstr "método"
 
-#: sql_help.c:2463
+#: sql_help.c:2474
 msgid "opclass_parameter"
 msgstr "parámetro_opclass"
 
-#: sql_help.c:2480
+#: sql_help.c:2491
 msgid "call_handler"
 msgstr "manejador_de_llamada"
 
-#: sql_help.c:2481
+#: sql_help.c:2492
 msgid "inline_handler"
 msgstr "manejador_en_línea"
 
-#: sql_help.c:2482
+#: sql_help.c:2493
 msgid "valfunction"
 msgstr "función_val"
 
-#: sql_help.c:2521
+#: sql_help.c:2532
 msgid "com_op"
 msgstr "op_conm"
 
-#: sql_help.c:2522
+#: sql_help.c:2533
 msgid "neg_op"
 msgstr "op_neg"
 
-#: sql_help.c:2540
+#: sql_help.c:2551
 msgid "family_name"
 msgstr "nombre_familia"
 
-#: sql_help.c:2551
+#: sql_help.c:2562
 msgid "storage_type"
 msgstr "tipo_almacenamiento"
 
-#: sql_help.c:2690 sql_help.c:3119
+#: sql_help.c:2701 sql_help.c:3130
 msgid "where event can be one of:"
 msgstr "donde evento puede ser una de:"
 
-#: sql_help.c:2710 sql_help.c:2712
+#: sql_help.c:2721 sql_help.c:2723
 msgid "schema_element"
 msgstr "elemento_de_esquema"
 
-#: sql_help.c:2749
+#: sql_help.c:2760
 msgid "server_type"
 msgstr "tipo_de_servidor"
 
-#: sql_help.c:2750
+#: sql_help.c:2761
 msgid "server_version"
 msgstr "versión_de_servidor"
 
-#: sql_help.c:2751 sql_help.c:3899 sql_help.c:4349
+#: sql_help.c:2762 sql_help.c:3911 sql_help.c:4363
 msgid "fdw_name"
 msgstr "nombre_fdw"
 
-#: sql_help.c:2768 sql_help.c:2771
+#: sql_help.c:2779 sql_help.c:2782
 msgid "statistics_name"
 msgstr "nombre_de_estadística"
 
-#: sql_help.c:2772
+#: sql_help.c:2783
 msgid "statistics_kind"
 msgstr "tipo_de_estadística"
 
-#: sql_help.c:2788
+#: sql_help.c:2799
 msgid "subscription_name"
 msgstr "nombre_de_suscripción"
 
-#: sql_help.c:2893
+#: sql_help.c:2904
 msgid "source_table"
 msgstr "tabla_origen"
 
-#: sql_help.c:2894
+#: sql_help.c:2905
 msgid "like_option"
 msgstr "opción_de_like"
 
-#: sql_help.c:2960
+#: sql_help.c:2971
 msgid "and like_option is:"
 msgstr "y opción_de_like es:"
 
-#: sql_help.c:3012
+#: sql_help.c:3023
 msgid "directory"
 msgstr "directorio"
 
-#: sql_help.c:3026
+#: sql_help.c:3037
 msgid "parser_name"
 msgstr "nombre_de_parser"
 
-#: sql_help.c:3027
+#: sql_help.c:3038
 msgid "source_config"
 msgstr "config_origen"
 
-#: sql_help.c:3056
+#: sql_help.c:3067
 msgid "start_function"
 msgstr "función_inicio"
 
-#: sql_help.c:3057
+#: sql_help.c:3068
 msgid "gettoken_function"
 msgstr "función_gettoken"
 
-#: sql_help.c:3058
+#: sql_help.c:3069
 msgid "end_function"
 msgstr "función_fin"
 
-#: sql_help.c:3059
+#: sql_help.c:3070
 msgid "lextypes_function"
 msgstr "función_lextypes"
 
-#: sql_help.c:3060
+#: sql_help.c:3071
 msgid "headline_function"
 msgstr "función_headline"
 
-#: sql_help.c:3072
+#: sql_help.c:3083
 msgid "init_function"
 msgstr "función_init"
 
-#: sql_help.c:3073
+#: sql_help.c:3084
 msgid "lexize_function"
 msgstr "función_lexize"
 
-#: sql_help.c:3086
+#: sql_help.c:3097
 msgid "from_sql_function_name"
 msgstr "nombre_de_función_from"
 
-#: sql_help.c:3088
+#: sql_help.c:3099
 msgid "to_sql_function_name"
 msgstr "nombre_de_función_to"
 
-#: sql_help.c:3114
+#: sql_help.c:3125
 msgid "referenced_table_name"
 msgstr "nombre_tabla_referenciada"
 
-#: sql_help.c:3115
+#: sql_help.c:3126
 msgid "transition_relation_name"
 msgstr "nombre_de_relación_de_transición"
 
-#: sql_help.c:3118
+#: sql_help.c:3129
 msgid "arguments"
 msgstr "argumentos"
 
-#: sql_help.c:3170 sql_help.c:4485
+#: sql_help.c:3181
 msgid "label"
 msgstr "etiqueta"
 
-#: sql_help.c:3172
+#: sql_help.c:3183
 msgid "subtype"
 msgstr "subtipo"
 
-#: sql_help.c:3173
+#: sql_help.c:3184
 msgid "subtype_operator_class"
 msgstr "clase_de_operador_del_subtipo"
 
-#: sql_help.c:3175
+#: sql_help.c:3186
 msgid "canonical_function"
 msgstr "función_canónica"
 
-#: sql_help.c:3176
+#: sql_help.c:3187
 msgid "subtype_diff_function"
 msgstr "función_diff_del_subtipo"
 
-#: sql_help.c:3177
+#: sql_help.c:3188
 msgid "multirange_type_name"
 msgstr "nombre_de_tipo_de_multirango"
 
-#: sql_help.c:3179
+#: sql_help.c:3190
 msgid "input_function"
 msgstr "función_entrada"
 
-#: sql_help.c:3180
+#: sql_help.c:3191
 msgid "output_function"
 msgstr "función_salida"
 
-#: sql_help.c:3181
+#: sql_help.c:3192
 msgid "receive_function"
 msgstr "función_receive"
 
-#: sql_help.c:3182
+#: sql_help.c:3193
 msgid "send_function"
 msgstr "función_send"
 
-#: sql_help.c:3183
+#: sql_help.c:3194
 msgid "type_modifier_input_function"
 msgstr "función_entrada_del_modificador_de_tipo"
 
-#: sql_help.c:3184
+#: sql_help.c:3195
 msgid "type_modifier_output_function"
 msgstr "función_salida_del_modificador_de_tipo"
 
-#: sql_help.c:3185
+#: sql_help.c:3196
 msgid "analyze_function"
 msgstr "función_analyze"
 
-#: sql_help.c:3186
+#: sql_help.c:3197
 msgid "subscript_function"
 msgstr "función_de_subíndice"
 
-#: sql_help.c:3187
+#: sql_help.c:3198
 msgid "internallength"
 msgstr "largo_interno"
 
-#: sql_help.c:3188
+#: sql_help.c:3199
 msgid "alignment"
 msgstr "alineamiento"
 
-#: sql_help.c:3189
+#: sql_help.c:3200
 msgid "storage"
 msgstr "almacenamiento"
 
-#: sql_help.c:3190
+#: sql_help.c:3201
 msgid "like_type"
 msgstr "como_tipo"
 
-#: sql_help.c:3191
+#: sql_help.c:3202
 msgid "category"
 msgstr "categoría"
 
-#: sql_help.c:3192
+#: sql_help.c:3203
 msgid "preferred"
 msgstr "preferido"
 
-#: sql_help.c:3193
+#: sql_help.c:3204
 msgid "default"
 msgstr "valor_por_omisión"
 
-#: sql_help.c:3194
+#: sql_help.c:3205
 msgid "element"
 msgstr "elemento"
 
-#: sql_help.c:3195
+#: sql_help.c:3206
 msgid "delimiter"
 msgstr "delimitador"
 
-#: sql_help.c:3196
+#: sql_help.c:3207
 msgid "collatable"
 msgstr "ordenable"
 
-#: sql_help.c:3293 sql_help.c:3978 sql_help.c:4068 sql_help.c:4549
-#: sql_help.c:4651 sql_help.c:4806 sql_help.c:4919 sql_help.c:5044
+#: sql_help.c:3304 sql_help.c:3990 sql_help.c:4080 sql_help.c:4563
+#: sql_help.c:4665 sql_help.c:4820 sql_help.c:4933 sql_help.c:5066
 msgid "with_query"
 msgstr "consulta_with"
 
-#: sql_help.c:3295 sql_help.c:3980 sql_help.c:4568 sql_help.c:4574
-#: sql_help.c:4577 sql_help.c:4581 sql_help.c:4585 sql_help.c:4593
-#: sql_help.c:4825 sql_help.c:4831 sql_help.c:4834 sql_help.c:4838
-#: sql_help.c:4842 sql_help.c:4850 sql_help.c:4921 sql_help.c:5063
-#: sql_help.c:5069 sql_help.c:5072 sql_help.c:5076 sql_help.c:5080
-#: sql_help.c:5088
+#: sql_help.c:3306 sql_help.c:3992 sql_help.c:4582 sql_help.c:4588
+#: sql_help.c:4591 sql_help.c:4595 sql_help.c:4599 sql_help.c:4607
+#: sql_help.c:4839 sql_help.c:4845 sql_help.c:4848 sql_help.c:4852
+#: sql_help.c:4856 sql_help.c:4864 sql_help.c:4935 sql_help.c:5085
+#: sql_help.c:5091 sql_help.c:5094 sql_help.c:5098 sql_help.c:5102
+#: sql_help.c:5110
 msgid "alias"
 msgstr "alias"
 
-#: sql_help.c:3296 sql_help.c:4553 sql_help.c:4595 sql_help.c:4597
-#: sql_help.c:4601 sql_help.c:4603 sql_help.c:4604 sql_help.c:4605
-#: sql_help.c:4656 sql_help.c:4810 sql_help.c:4852 sql_help.c:4854
-#: sql_help.c:4858 sql_help.c:4860 sql_help.c:4861 sql_help.c:4862
-#: sql_help.c:4928 sql_help.c:5048 sql_help.c:5090 sql_help.c:5092
-#: sql_help.c:5096 sql_help.c:5098 sql_help.c:5099 sql_help.c:5100
+#: sql_help.c:3307 sql_help.c:4567 sql_help.c:4609 sql_help.c:4611
+#: sql_help.c:4615 sql_help.c:4617 sql_help.c:4618 sql_help.c:4619
+#: sql_help.c:4670 sql_help.c:4824 sql_help.c:4866 sql_help.c:4868
+#: sql_help.c:4872 sql_help.c:4874 sql_help.c:4875 sql_help.c:4876
+#: sql_help.c:4942 sql_help.c:5070 sql_help.c:5112 sql_help.c:5114
+#: sql_help.c:5118 sql_help.c:5120 sql_help.c:5121 sql_help.c:5122
 msgid "from_item"
 msgstr "item_de_from"
 
-#: sql_help.c:3298 sql_help.c:3780 sql_help.c:4119 sql_help.c:4930
+#: sql_help.c:3309 sql_help.c:3792 sql_help.c:4130 sql_help.c:4944
 msgid "cursor_name"
 msgstr "nombre_de_cursor"
 
-#: sql_help.c:3299 sql_help.c:3986 sql_help.c:4931
+#: sql_help.c:3310 sql_help.c:3998 sql_help.c:4945
 msgid "output_expression"
 msgstr "expresión_de_salida"
 
-#: sql_help.c:3300 sql_help.c:3987 sql_help.c:4552 sql_help.c:4654
-#: sql_help.c:4809 sql_help.c:4932 sql_help.c:5047
+#: sql_help.c:3311 sql_help.c:3999 sql_help.c:4566 sql_help.c:4668
+#: sql_help.c:4823 sql_help.c:4946 sql_help.c:5069
 msgid "output_name"
 msgstr "nombre_de_salida"
 
-#: sql_help.c:3316
+#: sql_help.c:3327
 msgid "code"
 msgstr "código"
 
-#: sql_help.c:3721
+#: sql_help.c:3732
 msgid "parameter"
 msgstr "parámetro"
 
-#: sql_help.c:3743 sql_help.c:3744 sql_help.c:4144
+#: sql_help.c:3755 sql_help.c:3756 sql_help.c:4155
 msgid "statement"
 msgstr "sentencia"
 
-#: sql_help.c:3779 sql_help.c:3781 sql_help.c:4118 sql_help.c:4120
+#: sql_help.c:3791 sql_help.c:4129
 msgid "direction"
 msgstr "dirección"
 
-#: sql_help.c:3782 sql_help.c:3783 sql_help.c:3784 sql_help.c:3785
-#: sql_help.c:3786 sql_help.c:4121 sql_help.c:4122 sql_help.c:4123
-#: sql_help.c:4124 sql_help.c:4125 sql_help.c:4562 sql_help.c:4564
-#: sql_help.c:4665 sql_help.c:4667 sql_help.c:4819 sql_help.c:4821
-#: sql_help.c:4988 sql_help.c:4990 sql_help.c:5057 sql_help.c:5059
+#: sql_help.c:3793 sql_help.c:4131
+#, fuzzy
+#| msgid "where option can be one of:"
+msgid "where direction can be one of:"
+msgstr "donde opción puede ser una de:"
+
+#: sql_help.c:3794 sql_help.c:3795 sql_help.c:3796 sql_help.c:3797
+#: sql_help.c:3798 sql_help.c:4132 sql_help.c:4133 sql_help.c:4134
+#: sql_help.c:4135 sql_help.c:4136 sql_help.c:4576 sql_help.c:4578
+#: sql_help.c:4679 sql_help.c:4681 sql_help.c:4833 sql_help.c:4835
+#: sql_help.c:5010 sql_help.c:5012 sql_help.c:5079 sql_help.c:5081
 msgid "count"
 msgstr "cantidad"
 
-#: sql_help.c:3889 sql_help.c:4339
+#: sql_help.c:3901 sql_help.c:4353
 msgid "sequence_name"
 msgstr "nombre_secuencia"
 
-#: sql_help.c:3907 sql_help.c:4357
+#: sql_help.c:3919 sql_help.c:4371
 msgid "arg_name"
 msgstr "nombre_arg"
 
-#: sql_help.c:3908 sql_help.c:4358
+#: sql_help.c:3920 sql_help.c:4372
 msgid "arg_type"
 msgstr "tipo_arg"
 
-#: sql_help.c:3915 sql_help.c:4365
+#: sql_help.c:3927 sql_help.c:4379
 msgid "loid"
 msgstr "loid"
 
-#: sql_help.c:3946
+#: sql_help.c:3958
 msgid "remote_schema"
 msgstr "esquema_remoto"
 
-#: sql_help.c:3949
+#: sql_help.c:3961
 msgid "local_schema"
 msgstr "esquema_local"
 
-#: sql_help.c:3984
+#: sql_help.c:3996
 msgid "conflict_target"
 msgstr "destino_de_conflict"
 
-#: sql_help.c:3985
+#: sql_help.c:3997
 msgid "conflict_action"
 msgstr "acción_de_conflict"
 
-#: sql_help.c:3988
+#: sql_help.c:4000
 msgid "where conflict_target can be one of:"
 msgstr "donde destino_de_conflict puede ser uno de:"
 
-#: sql_help.c:3989
+#: sql_help.c:4001
 msgid "index_column_name"
 msgstr "nombre_de_columna_de_índice"
 
-#: sql_help.c:3990
+#: sql_help.c:4002
 msgid "index_expression"
 msgstr "expresión_de_índice"
 
-#: sql_help.c:3993
+#: sql_help.c:4005
 msgid "index_predicate"
 msgstr "predicado_de_índice"
 
-#: sql_help.c:3995
+#: sql_help.c:4007
 msgid "and conflict_action is one of:"
 msgstr "donde acción_de_conflict es una de:"
 
-#: sql_help.c:4001 sql_help.c:4927
+#: sql_help.c:4013 sql_help.c:4941
 msgid "sub-SELECT"
 msgstr "sub-SELECT"
 
-#: sql_help.c:4010 sql_help.c:4133 sql_help.c:4903
+#: sql_help.c:4022 sql_help.c:4144 sql_help.c:4917
 msgid "channel"
 msgstr "canal"
 
-#: sql_help.c:4032
+#: sql_help.c:4044
 msgid "lockmode"
 msgstr "modo_bloqueo"
 
-#: sql_help.c:4033
+#: sql_help.c:4045
 msgid "where lockmode is one of:"
 msgstr "donde modo_bloqueo es uno de:"
 
-#: sql_help.c:4069
+#: sql_help.c:4081
 msgid "target_table_name"
 msgstr "nombre_de_tabla_destino"
 
-#: sql_help.c:4070
+#: sql_help.c:4082
 msgid "target_alias"
 msgstr "alias_de_destino"
 
-#: sql_help.c:4071
+#: sql_help.c:4083
 msgid "data_source"
 msgstr "origin_de_datos"
 
-#: sql_help.c:4072 sql_help.c:4598 sql_help.c:4855 sql_help.c:5093
+#: sql_help.c:4084 sql_help.c:4612 sql_help.c:4869 sql_help.c:5115
 msgid "join_condition"
 msgstr "condición_de_join"
 
-#: sql_help.c:4073
+#: sql_help.c:4085
 msgid "when_clause"
 msgstr "cláusula_when"
 
-#: sql_help.c:4074
+#: sql_help.c:4086
 msgid "where data_source is:"
 msgstr "donde origen_de_datos es:"
 
-#: sql_help.c:4075
+#: sql_help.c:4087
 msgid "source_table_name"
 msgstr "nombre_tabla_origen"
 
-#: sql_help.c:4076
+#: sql_help.c:4088
 msgid "source_query"
 msgstr "consulta_origen"
 
-#: sql_help.c:4077
+#: sql_help.c:4089
 msgid "source_alias"
 msgstr "alias_origen"
 
-#: sql_help.c:4078
+#: sql_help.c:4090
 msgid "and when_clause is:"
 msgstr "y cláusula_when es:"
 
-#: sql_help.c:4080
+#: sql_help.c:4092
 msgid "merge_update"
 msgstr "update_de_merge"
 
-#: sql_help.c:4081
+#: sql_help.c:4093
 msgid "merge_delete"
 msgstr "delete_de_merge"
 
-#: sql_help.c:4083
+#: sql_help.c:4095
 msgid "merge_insert"
 msgstr "insert_de_merge"
 
-#: sql_help.c:4084
+#: sql_help.c:4096
 msgid "and merge_insert is:"
 msgstr "y insert_de_merge es:"
 
-#: sql_help.c:4087
+#: sql_help.c:4099
 msgid "and merge_update is:"
 msgstr "y update_de_merge es:"
 
-#: sql_help.c:4092
+#: sql_help.c:4104
 msgid "and merge_delete is:"
 msgstr "y delete_de_merge es:"
 
-#: sql_help.c:4134
+#: sql_help.c:4145
 msgid "payload"
 msgstr "carga"
 
-#: sql_help.c:4161
+#: sql_help.c:4172
 msgid "old_role"
 msgstr "rol_antiguo"
 
-#: sql_help.c:4162
+#: sql_help.c:4173
 msgid "new_role"
 msgstr "rol_nuevo"
 
-#: sql_help.c:4198 sql_help.c:4407 sql_help.c:4415
+#: sql_help.c:4212 sql_help.c:4421 sql_help.c:4429
 msgid "savepoint_name"
 msgstr "nombre_de_savepoint"
 
-#: sql_help.c:4555 sql_help.c:4613 sql_help.c:4812 sql_help.c:4870
-#: sql_help.c:5050 sql_help.c:5108
+#: sql_help.c:4569 sql_help.c:4627 sql_help.c:4826 sql_help.c:4884
+#: sql_help.c:5072 sql_help.c:5130
 msgid "grouping_element"
 msgstr "elemento_agrupante"
 
-#: sql_help.c:4557 sql_help.c:4660 sql_help.c:4814 sql_help.c:5052
+#: sql_help.c:4571 sql_help.c:4674 sql_help.c:4828 sql_help.c:5074
 msgid "window_name"
 msgstr "nombre_de_ventana"
 
-#: sql_help.c:4558 sql_help.c:4661 sql_help.c:4815 sql_help.c:5053
+#: sql_help.c:4572 sql_help.c:4675 sql_help.c:4829 sql_help.c:5075
 msgid "window_definition"
 msgstr "definición_de_ventana"
 
-#: sql_help.c:4559 sql_help.c:4573 sql_help.c:4617 sql_help.c:4662
-#: sql_help.c:4816 sql_help.c:4830 sql_help.c:4874 sql_help.c:5054
-#: sql_help.c:5068 sql_help.c:5112
+#: sql_help.c:4573 sql_help.c:4587 sql_help.c:4631 sql_help.c:4676
+#: sql_help.c:4830 sql_help.c:4844 sql_help.c:4888 sql_help.c:5076
+#: sql_help.c:5090 sql_help.c:5134
 msgid "select"
 msgstr "select"
 
-#: sql_help.c:4566 sql_help.c:4823 sql_help.c:5061
+#: sql_help.c:4580 sql_help.c:4837 sql_help.c:5083
 msgid "where from_item can be one of:"
 msgstr "donde item_de_from puede ser uno de:"
 
-#: sql_help.c:4569 sql_help.c:4575 sql_help.c:4578 sql_help.c:4582
-#: sql_help.c:4594 sql_help.c:4826 sql_help.c:4832 sql_help.c:4835
-#: sql_help.c:4839 sql_help.c:4851 sql_help.c:5064 sql_help.c:5070
-#: sql_help.c:5073 sql_help.c:5077 sql_help.c:5089
+#: sql_help.c:4583 sql_help.c:4589 sql_help.c:4592 sql_help.c:4596
+#: sql_help.c:4608 sql_help.c:4840 sql_help.c:4846 sql_help.c:4849
+#: sql_help.c:4853 sql_help.c:4865 sql_help.c:5086 sql_help.c:5092
+#: sql_help.c:5095 sql_help.c:5099 sql_help.c:5111
 msgid "column_alias"
 msgstr "alias_de_columna"
 
-#: sql_help.c:4570 sql_help.c:4827 sql_help.c:5065
+#: sql_help.c:4584 sql_help.c:4841 sql_help.c:5087
 msgid "sampling_method"
 msgstr "método_de_sampleo"
 
-#: sql_help.c:4572 sql_help.c:4829 sql_help.c:5067
+#: sql_help.c:4586 sql_help.c:4843 sql_help.c:5089
 msgid "seed"
 msgstr "semilla"
 
-#: sql_help.c:4576 sql_help.c:4615 sql_help.c:4833 sql_help.c:4872
-#: sql_help.c:5071 sql_help.c:5110
+#: sql_help.c:4590 sql_help.c:4629 sql_help.c:4847 sql_help.c:4886
+#: sql_help.c:5093 sql_help.c:5132
 msgid "with_query_name"
 msgstr "nombre_consulta_with"
 
-#: sql_help.c:4586 sql_help.c:4589 sql_help.c:4592 sql_help.c:4843
-#: sql_help.c:4846 sql_help.c:4849 sql_help.c:5081 sql_help.c:5084
-#: sql_help.c:5087
+#: sql_help.c:4600 sql_help.c:4603 sql_help.c:4606 sql_help.c:4857
+#: sql_help.c:4860 sql_help.c:4863 sql_help.c:5103 sql_help.c:5106
+#: sql_help.c:5109
 msgid "column_definition"
 msgstr "definición_de_columna"
 
-#: sql_help.c:4596 sql_help.c:4602 sql_help.c:4853 sql_help.c:4859
-#: sql_help.c:5091 sql_help.c:5097
+#: sql_help.c:4610 sql_help.c:4616 sql_help.c:4867 sql_help.c:4873
+#: sql_help.c:5113 sql_help.c:5119
 msgid "join_type"
 msgstr "tipo_de_join"
 
-#: sql_help.c:4599 sql_help.c:4856 sql_help.c:5094
+#: sql_help.c:4613 sql_help.c:4870 sql_help.c:5116
 msgid "join_column"
 msgstr "columna_de_join"
 
-#: sql_help.c:4600 sql_help.c:4857 sql_help.c:5095
+#: sql_help.c:4614 sql_help.c:4871 sql_help.c:5117
 msgid "join_using_alias"
 msgstr "join_con_alias"
 
-#: sql_help.c:4606 sql_help.c:4863 sql_help.c:5101
+#: sql_help.c:4620 sql_help.c:4877 sql_help.c:5123
 msgid "and grouping_element can be one of:"
 msgstr "donde elemento_agrupante puede ser una de:"
 
-#: sql_help.c:4614 sql_help.c:4871 sql_help.c:5109
+#: sql_help.c:4628 sql_help.c:4885 sql_help.c:5131
 msgid "and with_query is:"
 msgstr "y consulta_with es:"
 
-#: sql_help.c:4618 sql_help.c:4875 sql_help.c:5113
+#: sql_help.c:4632 sql_help.c:4889 sql_help.c:5135
 msgid "values"
 msgstr "valores"
 
-#: sql_help.c:4619 sql_help.c:4876 sql_help.c:5114
+#: sql_help.c:4633 sql_help.c:4890 sql_help.c:5136
 msgid "insert"
 msgstr "insert"
 
-#: sql_help.c:4620 sql_help.c:4877 sql_help.c:5115
+#: sql_help.c:4634 sql_help.c:4891 sql_help.c:5137
 msgid "update"
 msgstr "update"
 
-#: sql_help.c:4621 sql_help.c:4878 sql_help.c:5116
+#: sql_help.c:4635 sql_help.c:4892 sql_help.c:5138
 msgid "delete"
 msgstr "delete"
 
-#: sql_help.c:4623 sql_help.c:4880 sql_help.c:5118
+#: sql_help.c:4637 sql_help.c:4894 sql_help.c:5140
 msgid "search_seq_col_name"
 msgstr "nombre_col_para_sec_de_búsqueda"
 
-#: sql_help.c:4625 sql_help.c:4882 sql_help.c:5120
+#: sql_help.c:4639 sql_help.c:4896 sql_help.c:5142
 msgid "cycle_mark_col_name"
 msgstr "nombre_col_para_marca_de_ciclo"
 
-#: sql_help.c:4626 sql_help.c:4883 sql_help.c:5121
+#: sql_help.c:4640 sql_help.c:4897 sql_help.c:5143
 msgid "cycle_mark_value"
 msgstr "valor_marca_de_ciclo"
 
-#: sql_help.c:4627 sql_help.c:4884 sql_help.c:5122
+#: sql_help.c:4641 sql_help.c:4898 sql_help.c:5144
 msgid "cycle_mark_default"
 msgstr "valor_predet_marca_de_ciclo"
 
-#: sql_help.c:4628 sql_help.c:4885 sql_help.c:5123
+#: sql_help.c:4642 sql_help.c:4899 sql_help.c:5145
 msgid "cycle_path_col_name"
 msgstr "nombre_col_para_ruta_de_ciclo"
 
-#: sql_help.c:4655
+#: sql_help.c:4669
 msgid "new_table"
 msgstr "nueva_tabla"
 
-#: sql_help.c:4726
+#: sql_help.c:4740
 msgid "snapshot_id"
 msgstr "id_de_snapshot"
 
-#: sql_help.c:4986
+#: sql_help.c:5008
 msgid "sort_expression"
 msgstr "expresión_orden"
 
-#: sql_help.c:5130 sql_help.c:6114
+#: sql_help.c:5152 sql_help.c:6136
 msgid "abort the current transaction"
 msgstr "aborta la transacción en curso"
 
-#: sql_help.c:5136
+#: sql_help.c:5158
 msgid "change the definition of an aggregate function"
 msgstr "cambia la definición de una función de agregación"
 
-#: sql_help.c:5142
+#: sql_help.c:5164
 msgid "change the definition of a collation"
 msgstr "cambia la definición de un ordenamiento"
 
-#: sql_help.c:5148
+#: sql_help.c:5170
 msgid "change the definition of a conversion"
 msgstr "cambia la definición de una conversión"
 
-#: sql_help.c:5154
+#: sql_help.c:5176
 msgid "change a database"
 msgstr "cambia una base de datos"
 
-#: sql_help.c:5160
+#: sql_help.c:5182
 msgid "define default access privileges"
 msgstr "define privilegios de acceso por omisión"
 
-#: sql_help.c:5166
+#: sql_help.c:5188
 msgid "change the definition of a domain"
 msgstr "cambia la definición de un dominio"
 
-#: sql_help.c:5172
+#: sql_help.c:5194
 msgid "change the definition of an event trigger"
 msgstr "cambia la definición de un disparador por evento"
 
-#: sql_help.c:5178
+#: sql_help.c:5200
 msgid "change the definition of an extension"
 msgstr "cambia la definición de una extensión"
 
-#: sql_help.c:5184
+#: sql_help.c:5206
 msgid "change the definition of a foreign-data wrapper"
 msgstr "cambia la definición de un conector de datos externos"
 
-#: sql_help.c:5190
+#: sql_help.c:5212
 msgid "change the definition of a foreign table"
 msgstr "cambia la definición de una tabla foránea"
 
-#: sql_help.c:5196
+#: sql_help.c:5218
 msgid "change the definition of a function"
 msgstr "cambia la definición de una función"
 
-#: sql_help.c:5202
+#: sql_help.c:5224
 msgid "change role name or membership"
 msgstr "cambiar nombre del rol o membresía"
 
-#: sql_help.c:5208
+#: sql_help.c:5230
 msgid "change the definition of an index"
 msgstr "cambia la definición de un índice"
 
-#: sql_help.c:5214
+#: sql_help.c:5236
 msgid "change the definition of a procedural language"
 msgstr "cambia la definición de un lenguaje procedural"
 
-#: sql_help.c:5220
+#: sql_help.c:5242
 msgid "change the definition of a large object"
 msgstr "cambia la definición de un objeto grande"
 
-#: sql_help.c:5226
+#: sql_help.c:5248
 msgid "change the definition of a materialized view"
 msgstr "cambia la definición de una vista materializada"
 
-#: sql_help.c:5232
+#: sql_help.c:5254
 msgid "change the definition of an operator"
 msgstr "cambia la definición de un operador"
 
-#: sql_help.c:5238
+#: sql_help.c:5260
 msgid "change the definition of an operator class"
 msgstr "cambia la definición de una clase de operadores"
 
-#: sql_help.c:5244
+#: sql_help.c:5266
 msgid "change the definition of an operator family"
 msgstr "cambia la definición de una familia de operadores"
 
-#: sql_help.c:5250
+#: sql_help.c:5272
 msgid "change the definition of a row-level security policy"
 msgstr "cambia la definición de una política de seguridad a nivel de registros"
 
-#: sql_help.c:5256
+#: sql_help.c:5278
 msgid "change the definition of a procedure"
 msgstr "cambia la definición de un procedimiento"
 
-#: sql_help.c:5262
+#: sql_help.c:5284
 msgid "change the definition of a publication"
 msgstr "cambia la definición de una publicación"
 
-#: sql_help.c:5268 sql_help.c:5370
+#: sql_help.c:5290 sql_help.c:5392
 msgid "change a database role"
 msgstr "cambia un rol de la base de datos"
 
-#: sql_help.c:5274
+#: sql_help.c:5296
 msgid "change the definition of a routine"
 msgstr "cambia la definición de una rutina"
 
-#: sql_help.c:5280
+#: sql_help.c:5302
 msgid "change the definition of a rule"
 msgstr "cambia la definición de una regla"
 
-#: sql_help.c:5286
+#: sql_help.c:5308
 msgid "change the definition of a schema"
 msgstr "cambia la definición de un esquema"
 
-#: sql_help.c:5292
+#: sql_help.c:5314
 msgid "change the definition of a sequence generator"
 msgstr "cambia la definición de un generador secuencial"
 
-#: sql_help.c:5298
+#: sql_help.c:5320
 msgid "change the definition of a foreign server"
 msgstr "cambia la definición de un servidor foráneo"
 
-#: sql_help.c:5304
+#: sql_help.c:5326
 msgid "change the definition of an extended statistics object"
 msgstr "cambia la definición de un objeto de estadísticas extendidas"
 
-#: sql_help.c:5310
+#: sql_help.c:5332
 msgid "change the definition of a subscription"
 msgstr "cambia la definición de una suscripción"
 
-#: sql_help.c:5316
+#: sql_help.c:5338
 msgid "change a server configuration parameter"
 msgstr "cambia un parámetro de configuración del servidor"
 
-#: sql_help.c:5322
+#: sql_help.c:5344
 msgid "change the definition of a table"
 msgstr "cambia la definición de una tabla"
 
-#: sql_help.c:5328
+#: sql_help.c:5350
 msgid "change the definition of a tablespace"
 msgstr "cambia la definición de un tablespace"
 
-#: sql_help.c:5334
+#: sql_help.c:5356
 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:5340
+#: sql_help.c:5362
 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:5346
+#: sql_help.c:5368
 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:5352
+#: sql_help.c:5374
 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:5358
+#: sql_help.c:5380
 msgid "change the definition of a trigger"
 msgstr "cambia la definición de un disparador"
 
-#: sql_help.c:5364
+#: sql_help.c:5386
 msgid "change the definition of a type"
 msgstr "cambia la definición de un tipo"
 
-#: sql_help.c:5376
+#: sql_help.c:5398
 msgid "change the definition of a user mapping"
 msgstr "cambia la definición de un mapeo de usuario"
 
-#: sql_help.c:5382
+#: sql_help.c:5404
 msgid "change the definition of a view"
 msgstr "cambia la definición de una vista"
 
-#: sql_help.c:5388
+#: sql_help.c:5410
 msgid "collect statistics about a database"
 msgstr "recolecta estadísticas sobre una base de datos"
 
-#: sql_help.c:5394 sql_help.c:6192
+#: sql_help.c:5416 sql_help.c:6214
 msgid "start a transaction block"
 msgstr "inicia un bloque de transacción"
 
-#: sql_help.c:5400
+#: sql_help.c:5422
 msgid "invoke a procedure"
 msgstr "invocar un procedimiento"
 
-#: sql_help.c:5406
+#: sql_help.c:5428
 msgid "force a write-ahead log checkpoint"
 msgstr "fuerza un checkpoint de wal"
 
-#: sql_help.c:5412
+#: sql_help.c:5434
 msgid "close a cursor"
 msgstr "cierra un cursor"
 
-#: sql_help.c:5418
+#: sql_help.c:5440
 msgid "cluster a table according to an index"
 msgstr "reordena una tabla siguiendo un índice"
 
-#: sql_help.c:5424
+#: sql_help.c:5446
 msgid "define or change the comment of an object"
 msgstr "define o cambia un comentario sobre un objeto"
 
-#: sql_help.c:5430 sql_help.c:5988
+#: sql_help.c:5452 sql_help.c:6010
 msgid "commit the current transaction"
 msgstr "compromete la transacción en curso"
 
-#: sql_help.c:5436
+#: sql_help.c:5458
 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:5442
+#: sql_help.c:5464
 msgid "copy data between a file and a table"
 msgstr "copia datos entre un archivo y una tabla"
 
-#: sql_help.c:5448
+#: sql_help.c:5470
 msgid "define a new access method"
 msgstr "define un nuevo método de acceso"
 
-#: sql_help.c:5454
+#: sql_help.c:5476
 msgid "define a new aggregate function"
 msgstr "define una nueva función de agregación"
 
-#: sql_help.c:5460
+#: sql_help.c:5482
 msgid "define a new cast"
 msgstr "define una nueva conversión de tipo"
 
-#: sql_help.c:5466
+#: sql_help.c:5488
 msgid "define a new collation"
 msgstr "define un nuevo ordenamiento"
 
-#: sql_help.c:5472
+#: sql_help.c:5494
 msgid "define a new encoding conversion"
 msgstr "define una nueva conversión de codificación"
 
-#: sql_help.c:5478
+#: sql_help.c:5500
 msgid "create a new database"
 msgstr "crea una nueva base de datos"
 
-#: sql_help.c:5484
+#: sql_help.c:5506
 msgid "define a new domain"
 msgstr "define un nuevo dominio"
 
-#: sql_help.c:5490
+#: sql_help.c:5512
 msgid "define a new event trigger"
 msgstr "define un nuevo disparador por evento"
 
-#: sql_help.c:5496
+#: sql_help.c:5518
 msgid "install an extension"
 msgstr "instala una extensión"
 
-#: sql_help.c:5502
+#: sql_help.c:5524
 msgid "define a new foreign-data wrapper"
 msgstr "define un nuevo conector de datos externos"
 
-#: sql_help.c:5508
+#: sql_help.c:5530
 msgid "define a new foreign table"
 msgstr "define una nueva tabla foránea"
 
-#: sql_help.c:5514
+#: sql_help.c:5536
 msgid "define a new function"
 msgstr "define una nueva función"
 
-#: sql_help.c:5520 sql_help.c:5580 sql_help.c:5682
+#: sql_help.c:5542 sql_help.c:5602 sql_help.c:5704
 msgid "define a new database role"
 msgstr "define un nuevo rol de la base de datos"
 
-#: sql_help.c:5526
+#: sql_help.c:5548
 msgid "define a new index"
 msgstr "define un nuevo índice"
 
-#: sql_help.c:5532
+#: sql_help.c:5554
 msgid "define a new procedural language"
 msgstr "define un nuevo lenguaje procedural"
 
-#: sql_help.c:5538
+#: sql_help.c:5560
 msgid "define a new materialized view"
 msgstr "define una nueva vista materializada"
 
-#: sql_help.c:5544
+#: sql_help.c:5566
 msgid "define a new operator"
 msgstr "define un nuevo operador"
 
-#: sql_help.c:5550
+#: sql_help.c:5572
 msgid "define a new operator class"
 msgstr "define una nueva clase de operadores"
 
-#: sql_help.c:5556
+#: sql_help.c:5578
 msgid "define a new operator family"
 msgstr "define una nueva familia de operadores"
 
-#: sql_help.c:5562
+#: sql_help.c:5584
 msgid "define a new row-level security policy for a table"
 msgstr "define una nueva política de seguridad a nivel de registros para una tabla"
 
-#: sql_help.c:5568
+#: sql_help.c:5590
 msgid "define a new procedure"
 msgstr "define un nuevo procedimiento"
 
-#: sql_help.c:5574
+#: sql_help.c:5596
 msgid "define a new publication"
 msgstr "define una nueva publicación"
 
-#: sql_help.c:5586
+#: sql_help.c:5608
 msgid "define a new rewrite rule"
 msgstr "define una nueva regla de reescritura"
 
-#: sql_help.c:5592
+#: sql_help.c:5614
 msgid "define a new schema"
 msgstr "define un nuevo esquema"
 
-#: sql_help.c:5598
+#: sql_help.c:5620
 msgid "define a new sequence generator"
 msgstr "define un nuevo generador secuencial"
 
-#: sql_help.c:5604
+#: sql_help.c:5626
 msgid "define a new foreign server"
 msgstr "define un nuevo servidor foráneo"
 
-#: sql_help.c:5610
+#: sql_help.c:5632
 msgid "define extended statistics"
 msgstr "define estadísticas extendidas"
 
-#: sql_help.c:5616
+#: sql_help.c:5638
 msgid "define a new subscription"
 msgstr "define una nueva suscripción"
 
-#: sql_help.c:5622
+#: sql_help.c:5644
 msgid "define a new table"
 msgstr "define una nueva tabla"
 
-#: sql_help.c:5628 sql_help.c:6150
+#: sql_help.c:5650 sql_help.c:6172
 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:5634
+#: sql_help.c:5656
 msgid "define a new tablespace"
 msgstr "define un nuevo tablespace"
 
-#: sql_help.c:5640
+#: sql_help.c:5662
 msgid "define a new text search configuration"
 msgstr "define una nueva configuración de búsqueda en texto"
 
-#: sql_help.c:5646
+#: sql_help.c:5668
 msgid "define a new text search dictionary"
 msgstr "define un nuevo diccionario de búsqueda en texto"
 
-#: sql_help.c:5652
+#: sql_help.c:5674
 msgid "define a new text search parser"
 msgstr "define un nuevo analizador de búsqueda en texto"
 
-#: sql_help.c:5658
+#: sql_help.c:5680
 msgid "define a new text search template"
 msgstr "define una nueva plantilla de búsqueda en texto"
 
-#: sql_help.c:5664
+#: sql_help.c:5686
 msgid "define a new transform"
 msgstr "define una nueva transformación"
 
-#: sql_help.c:5670
+#: sql_help.c:5692
 msgid "define a new trigger"
 msgstr "define un nuevo disparador"
 
-#: sql_help.c:5676
+#: sql_help.c:5698
 msgid "define a new data type"
 msgstr "define un nuevo tipo de datos"
 
-#: sql_help.c:5688
+#: sql_help.c:5710
 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:5694
+#: sql_help.c:5716
 msgid "define a new view"
 msgstr "define una nueva vista"
 
-#: sql_help.c:5700
+#: sql_help.c:5722
 msgid "deallocate a prepared statement"
 msgstr "elimina una sentencia preparada"
 
-#: sql_help.c:5706
+#: sql_help.c:5728
 msgid "define a cursor"
 msgstr "define un nuevo cursor"
 
-#: sql_help.c:5712
+#: sql_help.c:5734
 msgid "delete rows of a table"
 msgstr "elimina filas de una tabla"
 
-#: sql_help.c:5718
+#: sql_help.c:5740
 msgid "discard session state"
 msgstr "descartar datos de la sesión"
 
-#: sql_help.c:5724
+#: sql_help.c:5746
 msgid "execute an anonymous code block"
 msgstr "ejecutar un bloque anónimo de código"
 
-#: sql_help.c:5730
+#: sql_help.c:5752
 msgid "remove an access method"
 msgstr "elimina un método de acceso"
 
-#: sql_help.c:5736
+#: sql_help.c:5758
 msgid "remove an aggregate function"
 msgstr "elimina una función de agregación"
 
-#: sql_help.c:5742
+#: sql_help.c:5764
 msgid "remove a cast"
 msgstr "elimina una conversión de tipo"
 
-#: sql_help.c:5748
+#: sql_help.c:5770
 msgid "remove a collation"
 msgstr "elimina un ordenamiento"
 
-#: sql_help.c:5754
+#: sql_help.c:5776
 msgid "remove a conversion"
 msgstr "elimina una conversión de codificación"
 
-#: sql_help.c:5760
+#: sql_help.c:5782
 msgid "remove a database"
 msgstr "elimina una base de datos"
 
-#: sql_help.c:5766
+#: sql_help.c:5788
 msgid "remove a domain"
 msgstr "elimina un dominio"
 
-#: sql_help.c:5772
+#: sql_help.c:5794
 msgid "remove an event trigger"
 msgstr "elimina un disparador por evento"
 
-#: sql_help.c:5778
+#: sql_help.c:5800
 msgid "remove an extension"
 msgstr "elimina una extensión"
 
-#: sql_help.c:5784
+#: sql_help.c:5806
 msgid "remove a foreign-data wrapper"
 msgstr "elimina un conector de datos externos"
 
-#: sql_help.c:5790
+#: sql_help.c:5812
 msgid "remove a foreign table"
 msgstr "elimina una tabla foránea"
 
-#: sql_help.c:5796
+#: sql_help.c:5818
 msgid "remove a function"
 msgstr "elimina una función"
 
-#: sql_help.c:5802 sql_help.c:5868 sql_help.c:5970
+#: sql_help.c:5824 sql_help.c:5890 sql_help.c:5992
 msgid "remove a database role"
 msgstr "elimina un rol de base de datos"
 
-#: sql_help.c:5808
+#: sql_help.c:5830
 msgid "remove an index"
 msgstr "elimina un índice"
 
-#: sql_help.c:5814
+#: sql_help.c:5836
 msgid "remove a procedural language"
 msgstr "elimina un lenguaje procedural"
 
-#: sql_help.c:5820
+#: sql_help.c:5842
 msgid "remove a materialized view"
 msgstr "elimina una vista materializada"
 
-#: sql_help.c:5826
+#: sql_help.c:5848
 msgid "remove an operator"
 msgstr "elimina un operador"
 
-#: sql_help.c:5832
+#: sql_help.c:5854
 msgid "remove an operator class"
 msgstr "elimina una clase de operadores"
 
-#: sql_help.c:5838
+#: sql_help.c:5860
 msgid "remove an operator family"
 msgstr "elimina una familia de operadores"
 
-#: sql_help.c:5844
+#: sql_help.c:5866
 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:5850
+#: sql_help.c:5872
 msgid "remove a row-level security policy from a table"
 msgstr "elimina una política de seguridad a nivel de registros de una tabla"
 
-#: sql_help.c:5856
+#: sql_help.c:5878
 msgid "remove a procedure"
 msgstr "elimina un procedimiento"
 
-#: sql_help.c:5862
+#: sql_help.c:5884
 msgid "remove a publication"
 msgstr "elimina una publicación"
 
-#: sql_help.c:5874
+#: sql_help.c:5896
 msgid "remove a routine"
 msgstr "elimina una rutina"
 
-#: sql_help.c:5880
+#: sql_help.c:5902
 msgid "remove a rewrite rule"
 msgstr "elimina una regla de reescritura"
 
-#: sql_help.c:5886
+#: sql_help.c:5908
 msgid "remove a schema"
 msgstr "elimina un esquema"
 
-#: sql_help.c:5892
+#: sql_help.c:5914
 msgid "remove a sequence"
 msgstr "elimina un generador secuencial"
 
-#: sql_help.c:5898
+#: sql_help.c:5920
 msgid "remove a foreign server descriptor"
 msgstr "elimina un descriptor de servidor foráneo"
 
-#: sql_help.c:5904
+#: sql_help.c:5926
 msgid "remove extended statistics"
 msgstr "elimina estadísticas extendidas"
 
-#: sql_help.c:5910
+#: sql_help.c:5932
 msgid "remove a subscription"
 msgstr "elimina una suscripción"
 
-#: sql_help.c:5916
+#: sql_help.c:5938
 msgid "remove a table"
 msgstr "elimina una tabla"
 
-#: sql_help.c:5922
+#: sql_help.c:5944
 msgid "remove a tablespace"
 msgstr "elimina un tablespace"
 
-#: sql_help.c:5928
+#: sql_help.c:5950
 msgid "remove a text search configuration"
 msgstr "elimina una configuración de búsqueda en texto"
 
-#: sql_help.c:5934
+#: sql_help.c:5956
 msgid "remove a text search dictionary"
 msgstr "elimina un diccionario de búsqueda en texto"
 
-#: sql_help.c:5940
+#: sql_help.c:5962
 msgid "remove a text search parser"
 msgstr "elimina un analizador de búsqueda en texto"
 
-#: sql_help.c:5946
+#: sql_help.c:5968
 msgid "remove a text search template"
 msgstr "elimina una plantilla de búsqueda en texto"
 
-#: sql_help.c:5952
+#: sql_help.c:5974
 msgid "remove a transform"
 msgstr "elimina una transformación"
 
-#: sql_help.c:5958
+#: sql_help.c:5980
 msgid "remove a trigger"
 msgstr "elimina un disparador"
 
-#: sql_help.c:5964
+#: sql_help.c:5986
 msgid "remove a data type"
 msgstr "elimina un tipo de datos"
 
-#: sql_help.c:5976
+#: sql_help.c:5998
 msgid "remove a user mapping for a foreign server"
 msgstr "elimina un mapeo de usuario para un servidor remoto"
 
-#: sql_help.c:5982
+#: sql_help.c:6004
 msgid "remove a view"
 msgstr "elimina una vista"
 
-#: sql_help.c:5994
+#: sql_help.c:6016
 msgid "execute a prepared statement"
 msgstr "ejecuta una sentencia preparada"
 
-#: sql_help.c:6000
+#: sql_help.c:6022
 msgid "show the execution plan of a statement"
 msgstr "muestra el plan de ejecución de una sentencia"
 
-#: sql_help.c:6006
+#: sql_help.c:6028
 msgid "retrieve rows from a query using a cursor"
 msgstr "recupera filas de una consulta usando un cursor"
 
-#: sql_help.c:6012
+#: sql_help.c:6034
 msgid "define access privileges"
 msgstr "define privilegios de acceso"
 
-#: sql_help.c:6018
+#: sql_help.c:6040
 msgid "import table definitions from a foreign server"
 msgstr "importa definiciones de tablas desde un servidor foráneo"
 
-#: sql_help.c:6024
+#: sql_help.c:6046
 msgid "create new rows in a table"
 msgstr "crea nuevas filas en una tabla"
 
-#: sql_help.c:6030
+#: sql_help.c:6052
 msgid "listen for a notification"
 msgstr "escucha notificaciones"
 
-#: sql_help.c:6036
+#: sql_help.c:6058
 msgid "load a shared library file"
 msgstr "carga un archivo de biblioteca compartida"
 
-#: sql_help.c:6042
+#: sql_help.c:6064
 msgid "lock a table"
 msgstr "bloquea una tabla"
 
-#: sql_help.c:6048
+#: sql_help.c:6070
 msgid "conditionally insert, update, or delete rows of a table"
 msgstr "condicionalmente inserta, actualiza o elimina filas de una tabla"
 
-#: sql_help.c:6054
+#: sql_help.c:6076
 msgid "position a cursor"
 msgstr "reposiciona un cursor"
 
-#: sql_help.c:6060
+#: sql_help.c:6082
 msgid "generate a notification"
 msgstr "genera una notificación"
 
-#: sql_help.c:6066
+#: sql_help.c:6088
 msgid "prepare a statement for execution"
 msgstr "prepara una sentencia para ejecución"
 
-#: sql_help.c:6072
+#: sql_help.c:6094
 msgid "prepare the current transaction for two-phase commit"
 msgstr "prepara la transacción actual para two-phase commit"
 
-#: sql_help.c:6078
+#: sql_help.c:6100
 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:6084
+#: sql_help.c:6106
 msgid "replace the contents of a materialized view"
 msgstr "reemplaza los contenidos de una vista materializada"
 
-#: sql_help.c:6090
+#: sql_help.c:6112
 msgid "rebuild indexes"
 msgstr "reconstruye índices"
 
-#: sql_help.c:6096
-msgid "destroy a previously defined savepoint"
+#: sql_help.c:6118
+#, fuzzy
+#| msgid "destroy a previously defined savepoint"
+msgid "release a previously defined savepoint"
 msgstr "destruye un savepoint previamente definido"
 
-#: sql_help.c:6102
+#: sql_help.c:6124
 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:6108
+#: sql_help.c:6130
 msgid "remove access privileges"
 msgstr "revoca privilegios de acceso"
 
-#: sql_help.c:6120
+#: sql_help.c:6142
 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:6126
+#: sql_help.c:6148
 msgid "roll back to a savepoint"
 msgstr "descartar hacia un savepoint"
 
-#: sql_help.c:6132
+#: sql_help.c:6154
 msgid "define a new savepoint within the current transaction"
 msgstr "define un nuevo savepoint en la transacción en curso"
 
-#: sql_help.c:6138
+#: sql_help.c:6160
 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:6144 sql_help.c:6198 sql_help.c:6234
+#: sql_help.c:6166 sql_help.c:6220 sql_help.c:6256
 msgid "retrieve rows from a table or view"
 msgstr "recupera filas desde una tabla o vista"
 
-#: sql_help.c:6156
+#: sql_help.c:6178
 msgid "change a run-time parameter"
 msgstr "cambia un parámetro de configuración"
 
-#: sql_help.c:6162
+#: sql_help.c:6184
 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:6168
+#: sql_help.c:6190
 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:6174
+#: sql_help.c:6196
 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:6180
+#: sql_help.c:6202
 msgid "set the characteristics of the current transaction"
 msgstr "define las características de la transacción en curso"
 
-#: sql_help.c:6186
+#: sql_help.c:6208
 msgid "show the value of a run-time parameter"
 msgstr "muestra el valor de un parámetro de configuración"
 
-#: sql_help.c:6204
+#: sql_help.c:6226
 msgid "empty a table or set of tables"
 msgstr "vacía una tabla o conjunto de tablas"
 
-#: sql_help.c:6210
+#: sql_help.c:6232
 msgid "stop listening for a notification"
 msgstr "deja de escuchar una notificación"
 
-#: sql_help.c:6216
+#: sql_help.c:6238
 msgid "update rows of a table"
 msgstr "actualiza filas de una tabla"
 
-#: sql_help.c:6222
+#: sql_help.c:6244
 msgid "garbage-collect and optionally analyze a database"
 msgstr "recolecta basura y opcionalmente estadísticas sobre una base de datos"
 
-#: sql_help.c:6228
+#: sql_help.c:6250
 msgid "compute a set of rows"
 msgstr "calcula un conjunto de registros"
 
@@ -6370,7 +6499,7 @@ msgstr "se ignoró argumento extra «%s» en línea de órdenes"
 msgid "could not find own program executable"
 msgstr "no se pudo encontrar el ejecutable propio"
 
-#: tab-complete.c:5952
+#: tab-complete.c:6080
 #, c-format
 msgid ""
 "tab completion query failed: %s\n"
@@ -6396,7 +6525,7 @@ msgstr "valor «%s» no válido para «%s»: se esperaba número entero"
 msgid "invalid variable name: \"%s\""
 msgstr "nombre de variable no válido: «%s»"
 
-#: variables.c:419
+#: variables.c:418
 #, c-format
 msgid ""
 "unrecognized value \"%s\" for \"%s\"\n"
@@ -6405,8 +6534,32 @@ msgstr ""
 "valor «%s» no reconocido para «%s»\n"
 "Los valores disponibles son: %s."
 
-#~ msgid "where direction can be empty or one of:"
-#~ msgstr "donde dirección puede ser vacío o uno de:"
+#, c-format
+#~ msgid "could not identify current directory: %m"
+#~ msgstr "no se pudo identificar el directorio actual: %m"
+
+#, c-format
+#~ msgid "invalid binary \"%s\""
+#~ msgstr "el binario «%s» no es válido"
+
+#, c-format
+#~ msgid "could not read binary \"%s\""
+#~ msgstr "no se pudo leer el binario «%s»"
+
+#, c-format
+#~ msgid "could not change directory to \"%s\": %m"
+#~ msgstr "no se pudo cambiar al directorio «%s»: %m"
+
+#, c-format
+#~ msgid "could not read symbolic link \"%s\": %m"
+#~ msgstr "no se pudo leer el enlace simbólico «%s»: %m"
+
+#, c-format
+#~ msgid "\\watch cannot be used with COPY"
+#~ msgstr "no se puede usar \\watch con COPY"
+
+#~ msgid "Source code"
+#~ msgstr "Código fuente"
 
-#~ msgid "timezone"
-#~ msgstr "huso_horario"
+#~ msgid "text"
+#~ msgstr "texto"