Fecha de lanzamiento: 2026-05-14
Este lanzamiento contiene una variedad de correcciones desde la versión 18.3. Para obtener información sobre las nuevas características de la versión principal 18, consulta Section E.5.
No se requiere un dump/restore para quienes tengan la versión 18.X.
Sin embargo, si estás actualizando desde una versión anterior a la 18.2, consulta Section E.3.
Evita la recursión ilimitada al procesar paquetes de inicio (Michael Paquier) §
Un cliente malicioso podría bloquear el backend conectado alternando indefinidamente solicitudes de cifrado SSL y GSS rechazadas.
El Proyecto PostgreSQL agradece a Calif.io (en colaboración con Claude y Anthropic Research) por reportar este problema. (CVE-2026-6479)
Corrige varios desbordamientos de enteros (integer overflows) en los cálculos de asignación de memoria (Tom Lane, Nathan Bossart, Heikki Linnakangas) § § § § § § § § §
Varios lugares no tenían cuidado con la posibilidad de desbordamientos de enteros en los cálculos de cuánta memoria asignar. Un desbordamiento llevaría a asignar un búfer demasiado pequeño en el cual el invocador escribiría más allá de su límite. Esto como mínimo provocaría caídas del servidor y probablemente podría ser explotado para la ejecución de código arbitrario. En muchos casos, pero de ninguna manera en todos, el peligro existe únicamente en compilaciones de 32 bits.
El Proyecto PostgreSQL agradece a Xint Code, Bruce Dang, Sven Klemm y Pavel Kohout por reportar estos problemas. (CVE-2026-6473)
Entrecomilla adecuadamente los nombres de las suscripciones en pg_createsubscriber (Nathan Bossart) §
El nombre de suscripción proporcionado se insertaba en los comandos SQL sin entrecomillar, por lo que se podía lograr una inyección SQL en el caso (tal vez improbable) de que el nombre de la suscripción provenga de una fuente no confiable.
El Proyecto PostgreSQL agradece a Yu Kunpeng por reportar este problema. (CVE-2026-6476)
Entrecomilla adecuadamente los nombres de los objetos en los chequeos de origen de replicación lógica (Pavel Kohout) §
ALTER SUBSCRIPTION ... REFRESH PUBLICATION
interpolaba nombres de esquema y relación en comandos SQL sin
entrecomillarlos, lo que permitía la ejecución de SQL arbitrario en el publicador.
El Proyecto PostgreSQL agradece a Pavel Kohout por reportar este problema. (CVE-2026-6638)
Rechaza opciones de longitud excesiva en ts_headline()
(Michael Paquier)
§
Las cadenas StartSel, StopSel
y FragmentDelimiter no deben exceder los 32Kb de longitud,
pero esto no se controlaba. Un valor que excediera la longitud típicamente
bloqueaba el servidor.
El Proyecto PostgreSQL agradece a Xint Code por reportar este problema. (CVE-2026-6473)
Detecta entradas defectuosas al restaurar estadísticas MCV de atributos (Michael Paquier) §
Las funciones de restauración de estadísticas no eran lo suficientemente cuidadosas al validar las estadísticas de valores más comunes (most-common-value, MCV), y aceptaban valores que podían provocar la caída del planificador más adelante.
El Proyecto PostgreSQL agradece a Jeroen Gui por reportar este problema. (CVE-2026-6575)
Protégete contra nombres de zonas horarias maliciosos
en timeofday()
y pg_strftime() (Tom Lane)
§
§
Una configuración de zona horaria manipulada podría pasar secuencias %
a snprintf(), causando potencialmente caídas o la revelación
de la memoria del servidor. Otra vía para obtener resultados similares era desbordar
el búfer de salida de tamaño limitado utilizado por pg_strftime().
El Proyecto PostgreSQL agradece a Xint Code por reportar este problema. (CVE-2026-6474)
Al crear un tipo multirango, asegúrate de que el usuario
tenga el privilegio CREATE en el esquema especificado para
el tipo multirango (Jelte Fennema-Nio)
§
El tipo multirango se puede colocar en un esquema diferente al de su tipo de rango padre, pero omitimos aplicar la verificación de privilegios requerida al hacerlo.
El Proyecto PostgreSQL agradece a Jelte Fennema-Nio por reportar este problema. (CVE-2026-6472)
Usa comparaciones de cadenas seguras frente a análisis de tiempo (timing-safe) en el código de autenticación (Michael Paquier) §
Usa timingsafe_bcmp() en lugar
de memcpy() o strcmp()
al verificar contraseñas, hashes, etc. No se sabe si la
dependencia de datos de esas funciones es explotable de manera útil en alguno de
estos lugares, pero en aras de la seguridad, reemplázalas.
El Proyecto PostgreSQL agradece a Joe Conway por reportar este problema. (CVE-2026-6478)
Marca PQfn() como insegura, y evita su uso
dentro de libpq (Nathan Bossart)
§
Para un tipo de resultado no integral, PQfn() no recibe
el tamaño del búfer de salida, por lo que no puede verificar que los
datos devueltos por el servidor quepan. Por lo tanto, un servidor malicioso podría
sobrescribir la memoria del cliente. Esto no se puede arreglar sin un
cambio en la API, por lo que la función se marca como obsoleta.
Internamente a libpq, se utiliza una versión variante que puede
aplicar la verificación que falta.
El Proyecto PostgreSQL agradece a Yu Kunpeng y Martin Heistermann por reportar este problema. (CVE-2026-6477)
Evita el salto de directorios (path traversal) en pg_basebackup y pg_rewind (Michael Paquier) §
Estas aplicaciones no validaban las rutas de los archivos de salida leídas de su entrada, de modo que una fuente maliciosa podría sobrescribir cualquier archivo en el que estas aplicaciones tuvieran permisos de escritura. Restringe dónde se pueden escribir los datos rechazando rutas que sean absolutas o que contengan referencias al directorio padre.
El Proyecto PostgreSQL agradece al equipo XlabAI de Tencent Xuanwu Lab y a Valery Gubanov por reportar este problema. (CVE-2026-6475)
Protégete contra el desbordamiento de campos
dentro del tipo query_int de contrib/intarray
y del tipo ltxtquery de contrib/ltree (Tom Lane)
§
§
El análisis de estas estructuras de consulta no controlaba el desbordamiento de campos de 16 bits, por lo que era posible la construcción de un árbol de consulta no válido. Esto puede bloquear el servidor al ejecutar la consulta.
El Proyecto PostgreSQL agradece a Xint Code por reportar este problema. (CVE-2026-6473)
Protégete contra valores excesivamente largos
del tipo lquery de contrib/ltree
(Michael Paquier)
§
Los valores con más de 64K elementos causaban desbordamientos internos, lo que potencialmente resultaba en desbordamientos de pila (stack smashes) o respuestas incorrectas.
El Proyecto PostgreSQL agradece a Vergissmeinnicht, A1ex y Jihe Wang por reportar este problema. (CVE-2026-6473)
Evita la inyección SQL y los desbordamientos de búfer
en contrib/spi (Nathan Bossart)
§
check_foreign_key() no era lo suficientemente cuidadosa al
entrecomillar los valores clave, y también utilizaba búferes de tamaño fijo para
construir consultas. Aunque este módulo está pensado únicamente como código de ejemplo,
aún así no debería contener errores tan peligrosos.
El Proyecto PostgreSQL agradece a Nikolay Samokhvalov por reportar este problema. (CVE-2026-6637)
Verifica las colaciones no deterministas antes de asumir que una condición de igualdad en un tipo colacionable implica unicidad (Richard Guo) § § § § §
Numerosas optimizaciones del planificador asumen que, por ejemplo, como máximo una
fila de la tabla puede satisfacer WHERE x = 'abc' si hay
un índice único en x. Sin embargo, esta conclusión
no es segura en general si el índice y la cláusula WHERE
tienen diferentes colaciones asociadas. Es segura cuando ambas
colaciones son deterministas, porque esa propiedad requiere esencialmente
que la igualdad de dos cadenas signifique igualdad a nivel de bits. Pero
las colaciones no deterministas no actúan de esa manera, por lo que optimizar
bajo la suposición de coincidencias únicas puede dar respuestas de consulta incorrectas si
la cláusula WHERE o el índice tienen una
colación no determinista.
Corrige la eliminación incompleta de referencias a relaciones
en estructuras RestrictInfo durante la eliminación de joins
(Tom Lane)
§
Se ha demostrado que este descuido resultaba en fallos del planificador como errores inesperados “FULL JOIN is only supported with merge-joinable or hash-joinable join conditions”. También podría haber causado que no se consideraran planes válidos en otros casos.
Mejora la coincidencia del planificador entre las columnas de clave de partición y las salidas de subconsultas (Richard Guo) §
Elimina PlaceHolderVars que son operaciones sin efecto (no-op) de los operandos antes de compararlos con las claves de partición. Este cambio permite que el descarte de particiones (partition pruning) tenga éxito en algunos casos en los que anteriormente no reconocía que no era necesario escanear una partición.
Corrige la eliminación de self-join para manejar cláusulas de join que son columnas booleanas simples,
por ejemplo, ON t1.boolcol (Andrei Lepikhov,
Tender Wang, Alexander Korotkov)
§
Anteriormente, tal caso conducía a un error “no relation entry
for relid N”.
Corrige UPDATE/DELETE ... WHERE CURRENT OF para que funcione en
tablas con columnas generadas virtuales (Satyanarayana Narlapuram,
Dean Rasheed)
§
Corrige la expansión de columnas generadas virtuales
en referencias de columnas EXCLUDED en INSERT
... ON CONFLICT (Satyanarayana Narlapuram, Dean Rasheed)
§
Corrige el manejo incorrecto de columnas generadas NEW
en acciones de reglas y cualificaciones de reglas (Richard Guo, Dean Rasheed)
§
Anteriormente, tales referencias a columnas producían NULL
en casos de INSERT, o eran equivalentes al
valor OLD en casos de UPDATE.
Corrige errores espurios “indexes on virtual generated columns are not supported” (Robert Haas) §
La creación de un índice de expresión a veces podía reportar incorrectamente este error.
Corrige errores espurios “generated columns are not supported in COPY FROM WHERE conditions” (Tom Lane) §
El uso de una columna del sistema en una condición COPY FROM WHERE
a veces podía reportar incorrectamente este error.
Reporta correctamente un fallo de serialización
cuando MERGE encuentra una tupla actualizada concurrentemente
en modo repeatable-read o serializable (Tender Wang)
§
Anteriormente, tales casos se comportaban igual que en niveles de aislamiento inferiores.
Corrige CREATE TABLE ... LIKE ... INCLUDING
STATISTICS para casos en los que la tabla origen tiene columnas
eliminadas (Julien Tachoires)
§
En tales casos, los objetos de estadísticas extendidas podían copiarse incorrectamente, o el comando podía dar un error incorrecto.
Permite que ALTER INDEX ... ATTACH PARTITION marque
el índice padre como válido si corresponde (Sami Imseih)
§
Existen casos límite en los que un índice particionado podría permanecer marcado como inválido incluso cuando todos sus índices de hojas son válidos. Este cambio proporciona un mecanismo mediante el cual un usuario puede corregir tal situación sin recurrir a actualizaciones manuales del catálogo.
Corrige ALTER TABLE ... SET NOT NULL para que invoque
las funciones de gancho (hook) de acceso a objetos solo después de completar el cambio
de catálogo (Artur Zakirov)
§
Corrige ALTER FOREIGN DATA WRAPPER para que no elimine la
dependencia del objeto wrapper en su función de manejador (Jeff Davis)
§
Corrige la pérdida de diferibilidad de los disparadores de clave foránea (Yasuo Honda) §
Anteriormente, una clave foránea definida como DEFERRABLE INITIALLY
DEFERRED se comportaba como NOT DEFERRABLE
después de establecerse en estado NOT ENFORCED y luego
nuevamente en ENFORCED.
Si tienes una clave foránea con este problema, se puede reparar
(después de instalar esta actualización) configurándola nuevamente en NOT
ENFORCED y luego nuevamente en ENFORCED.
Corrige WITHOUT OVERLAPS para permitir dominios (Jian He)
§
UNIQUE/PRIMARY KEY ... WITHOUT OVERLAPS requiere
que la columna sin superposición sea un rango o multirango, pero también debería
permitir un dominio sobre tal tipo.
No permitas que un tipo compuesto sea miembro de sí mismo a través de un multirango (Heikki Linnakangas) §
Ya prohibíamos tales casos cuando el tipo intermedio es un dominio, arreglo (array), tipo compuesto o rango; pero se pasaron por alto los multirangos.
Corrige las comparaciones de imágenes de datos (datum-image) para que sean insensibles a las variaciones de extensión de signo (David Rowley) §
Esto corrige algunas situaciones que anteriormente conducían a errores “could not find memoization table entry” o resultados de consulta incorrectos.
Corrige la lógica incorrecta para IN/NOT
IN con hash usando operadores de igualdad no estrictos (Chengpeng Yan)
§
El código anterior podía bloquearse o dar respuestas incorrectas. Todos los tipos de datos incorporados tienen operadores de igualdad estrictos, por lo que este problema solo podía surgir con un tipo de datos de extensión.
Trunca los símbolos numéricos específicos de la configuración regional excesivamente largos
en to_char() (Tom Lane)
§
Si una configuración regional especificaba un símbolo de moneda, separador de miles, o símbolo decimal o de signo de más de 8 bytes de longitud, era posible un desbordamiento de búfer. No existen tales configuraciones regionales en el mundo real, y no es práctico para un atacante sin privilegios instalar una definición de configuración regional maliciosa debajo de un servidor Postgres; pero por motivos de seguridad, verifica los símbolos de longitud excesiva y trúncalos si es necesario.
Evita desbordamientos de búfer al analizar un archivo de afijos para
un diccionario Ispell (Tom Lane)
§
§
Un archivo de afijos corrupto o malicioso podría bloquear el servidor. Esto no se considera un problema de seguridad porque se presume que los archivos de configuración de búsqueda de texto son confiables, pero aún así parece que vale la pena corregirlo.
Protégete contra el desbordamiento de enteros en los cálculos de las posiciones de inicio y fin de marco para agregados de ventana (Richard Guo) §
Desplazamientos muy grandes especificados por el usuario (cercanos a INT64_MAX) podían resultar en errores o resultados de consulta incorrectos.
Corrige array_agg_array_combine() para combinar correctamente
los mapas de bits nulos (null bitmaps) de los arreglos (Dmytro Astapov)
§
Este error resultaba en una salida a veces incorrecta de los cálculos
paralelizados de array_agg(anyarray).
Reintenta sync_file_range() si devuelve el código de error
EINTR (DaeMyung Kang)
§
Corrige el comportamiento incorrecto
de pg_stat_reset_single_table_counters() en un
catálogo compartido (Chao Li)
§
Tales casos tenían el efecto secundario de reiniciar el
stat_reset_timestamp de la base de datos actual, lo cual
no era intencional.
Actualiza las estadísticas de actividad cuando un trabajador de aplicación en paralelo está inactivo (Zhijie Hou) §
Anteriormente, las estadísticas de una transacción completada recientemente podían quedar sin reportar durante largos intervalos, particularmente si la carga de trabajo es ligera.
Corrige el fallo “no relation entry for relid 0” al estimar las longitudes de los arreglos en operaciones de conjunto (Tender Wang) §
Corrige una lectura fuera de límites del búfer cuando pglz_decompress()
recibe una entrada corrupta (Andrew Dunstan)
§
Era posible leer algunos bytes más allá del final de la entrada, lo que en casos muy desafortunados podría causar una caída del servidor.
Corrige el manejo del analizador JSON incremental de los tokens numéricos que cruzan los límites del búfer de entrada (Andrew Dunstan) §
Era posible aceptar un número con formato incorrecto, lo que provocaba fallos más adelante.
Evita el crecimiento desmedido de los mapas de visibilidad de las relaciones durante la restauración de una copia de seguridad incremental (Robert Haas) §
La restauración podría agregar muchos bloques de ceros a un mapa de visibilidad, debido a un cálculo incorrecto de la longitud esperada del archivo. Esto no resulta en corrupción de datos, pero podría desperdiciar una cantidad sustancial de espacio en disco.
Usa la colación C, no la colación por defecto de la base de datos, en las búsquedas en caché de catálogo en columnas de texto (Jeff Davis) §
Esto evita fallos en casos límite como el inicio de la replicación física, donde no hay una base de datos identificada de modo que no se puede determinar una colación por defecto.
Evita que los procesos de trabajadores slotsync atascados bloqueen la promoción de un servidor standby (Nisha Moond, Ajin Cherian) § § §
Un proceso de trabajador que estaba esperando en vano una respuesta del servidor primario retrasaría la promoción por una cantidad de tiempo irrazonable.
Corrige la salida excesiva de log de los procesos de trabajadores slotsync inactivos (Zhijie Hou) §
Asegúrate de que las estructuras de datos de tuplestore sean internamente consistentes incluso después de un error (Tom Lane) §
El código anteriormente no tenía cuidado con esto, lo cual está bien la mayor parte del
tiempo pero es problemático para el tuplestore que respalda
un cursor WITH HOLD. En v15 y anteriores esto
conduce a caídas fácilmente reproducibles; no se sabe que las ramas posteriores sean
vulnerables, pero parece mejor preservar la consistencia en todas.
Haz que la columna pid de la vista de sistema pg_aios
muestre NULL en lugar de 0 cuando una entrada no tiene un proceso propietario (ChangAo Chen)
§
Corrige el reporte prematuro de retraso (lag) NULL
en pg_stat_replication (Shinya Kato)
§
Las columnas de lag frecuentemente se leían como NULL incluso mientras ocurría actividad de replicación.
Corrige la asignación insuficiente de memoria compartida utilizada para escaneos paralelos de índices btree (Siddharth Kothari) §
En casos límite esto podría resultar en una caída del servidor.
Evita fallos raros de descarga (flush) cuando se trabaja con índices GiST no registrados en WAL (non-WAL-logged) (Tomas Vondra) §
Un índice GiST no registrado a veces podía producir errores
“xlog flush request n/nnnn
is not satisfied”, debido a la selección incorrecta de
un “LSN falso” para representar un punto de inserción.
Corrige la subestimación del tamaño requerido de mapas de páginas DSA para segmentos de tamaño impar (Paul Bunn) §
Este error de cálculo conducía a accesos fuera de límites y, por ende, a caídas del servidor.
Corrige la indexación de arreglos oldest-multixact en memoria compartida (Yura Sokolov) § §
Este error podría causar que los bloqueos de fila de una transacción preparada pero no comprometida aún parezcan invisibles para otras sesiones, u otros problemas de visibilidad para los resultados de tal transacción. Con una configuración de max_connections muy pequeña, también eran posibles sobreescrituras de memoria.
Corrige el desbordamiento de arreglos cuando se instalan demasiadas opciones de extensión de
EXPLAIN (Joel Jacobson)
§
Corrige una posible caída del servidor al procesar estadísticas extendidas en expresiones de tipos de datos de extensión (Michael Paquier) §
Eran posibles desreferencias de puntero NULL si la función typanalyze del tipo de datos no calcula ninguna estadística útil. Ninguna función typanalyze interna se comporta de esa manera, pero las extensiones sí podrían hacerlo.
Muestra correctamente las variables de alias de join que se utilizan en GROUP
BY (Tom Lane)
§
En vistas que contienen consultas como SELECT ... t1 LEFT JOIN t2
USING (x) GROUP BY x, la cláusula GROUP BY
podría mostrarse incorrectamente mediante la descompilación (deparsing), lo que conducía a
fallos de dump/restore. Los fallos ocurrían únicamente
si t1.x y t2.x no eran de
tipos de datos idénticos y t1.x era el lado que
requería una coerción implícita.
Corrige fugas menores de memoria en el procesamiento de cadenas basado en ICU (Jeff Davis) §
Si el proceso de inicio falla, apaga adecuadamente otros procesos hijos antes de salir del postmaster (Ayush Tiwari) §
El manejo de esta situación se basaba en una suposición obsoleta hace mucho tiempo de que no existen otros hijos del postmaster mientras se está ejecutando el proceso de inicio, por lo que la salida inmediata del postmaster es aceptable. Los hijos huérfanos eventualmente notarían la muerte del postmaster y saldrían por su cuenta, pero es deseable un procedimiento de apagado más limpio.
Corrige una condición de carrera entre la reproducción de WAL de puntos de control (checkpoints) y la creación de IDs de multixact (Heikki Linnakangas) §
Un servidor standby que sigue el WAL de un primario de una versión menor anterior podría entrar en un bucle de caída y reinicio quejándose de “could not access status of transaction”.
Prevent indefinite wait in shutdown of a walsender process (Anthonin Bonnefoy) § §
Al apagar un clúster que está publicando datos de replicación lógica, el walsender espera a que se escriba todo el WAL pendiente. Pero no solicitó correctamente que eso sucediera, por lo que en algunos casos esto podría convertirse en una espera indefinida.
Asegúrate de que los cambios en los mapas de espacio libre de las tablas se persistan durante la recuperación (Alexey Makhmutov) §
Anteriormente, aunque la reproducción de WAL sí actualizaba el mapa de espacio libre al reproducir operaciones que deberían cambiarlo, el búfer de la página del mapa no se marcaba como sucio (dirty) si las sumas de comprobación (checksums) estaban habilitadas, por lo que los cambios podían no escribirse nunca. En un servidor standby, con el tiempo esto resultaría en un mapa muy desalineado con el contenido real de la tabla. Aunque el mapa solo se usa como una pista, esta condición podría causar una degradación significativa del rendimiento durante algún período de tiempo después de que el servidor standby sea promovido a activo, hasta que la mayor parte del mapa haya sido reparada por actualizaciones.
Corrige caídas en algunas funciones de ecpg cuando se invocan sin ninguna conexión establecida (Shruthi Gowda) §
Refuerza la lógica de análisis de archivos tar contra archivos que no puede manejar (Tom Lane) §
El código de lectura de archivos tar utilizado en pg_basebackup y pg_verifybackup no verificaba en absoluto que la entrada fuera un archivo tar, y mucho menos que encajara en el subconjunto de archivos tar válidos que podemos manejar. Esto no es un problema para el escenario normal donde el archivo de entrada fue generado por el código de PostgreSQL, pero puede ser un problema si la entrada ha sido generada por algún otro programa tar.
Corrige varios errores en el código de descompresión de copias de seguridad y análisis de tar (Andrew Dunstan, Tom Lane, Chao Li) § § §
El código de descompresión y lectura de archivos tar utilizado en pg_basebackup y pg_verifybackup manejaba incorrectamente los datos de relleno (padding) de archivos tar, podía corromper datos comprimidos con LZ4 en casos límite, no verificaba algunas condiciones de error inusuales, no salía después de errores de compresión/descompresión (lo que conducía a reportes de errores en cascada), y filtraba memoria.
En pg_dump, preserva la propiedad NO
INHERIT de las restricciones NOT NULL
(Jian He)
§
Algunos casos omitieron imprimir la cláusula NO INHERIT.
En pg_dumpall, no omitas
los GRANTs de roles con OIDs de otorgante (grantor) colgantes
(Tom Lane)
§
En su lugar, maneja tales casos emitiendo GRANT
sin ninguna cláusula GRANTED BY, como hacíamos antes
de v16. Esto evita perder el otorgamiento en casos previsibles, ya que los
servidores anteriores a la versión 16 no impedían eliminar el rol del otorgante. Continúa
emitiendo una advertencia sobre el otorgante faltante, pero solo si el servidor de origen
es v16 o posterior.
En pg_upgrade, ten cuidado de usar la versión correcta del protocolo al conectarte a servidores de origen más antiguos (Jacob Champion) §
Esto podría ser problemático al intentar actualizar desde un servidor anterior a 2018.
En contrib/basic_archive, permite que el directorio
de archivo no exista al inicio (Nathan Bossart)
§
Anteriormente, el valor de configuración
de basic_archive.archive_directory se rechazaba
si no apuntaba a un directorio existente. Esto no es deseable
porque el archivado se quedaría atascado indefinidamente, incluso si el directorio
aparece más tarde.
Corrige contrib/ltree para que funcione correctamente cuando la conversión de mayúsculas/minúsculas (case-folding)
cambia la longitud en bytes de una cadena (Jeff Davis)
§
§
Anteriormente, los patrones lquery que especificaban una coincidencia
insensible a mayúsculas/minúsculas podían fallar al coincidir con etiquetas con las que deberían coincidir.
Corrige la salida con estructura incorrecta
de la opción RANGE_TABLE de contrib/pg_overexplain
(Satyanarayana Narlapuram)
§
Algunos campos estaban mal colocados en los formatos JSON, YAML y XML, lo que resultaba en una salida estructuralmente inválida.
En contrib/pg_stat_statements, no filtres (leak)
memoria si ocurre un error al analizar el
archivo pgss_query_texts.stat (Heikki Linnakangas)
§
En contrib/postgres_fdw, evita una caída debido a la
limpieza prematura de una conexión fallida (Etsuro Fujita)
§
Si una conexión remota falla al abortar la limpieza, ya no podemos usarla. Pero retrasa el cierre del objeto de conexión hasta el final de la transacción, porque todavía podría haber referencias a él dentro de estructuras de datos como cursores abiertos.
Actualiza los archivos de datos de zonas horarias a la versión 2026b de tzdata (Tom Lane) §
Columbia Británica (America/Vancouver) estará en UTC-07 todo el año
(efectivamente, horario de verano permanente) a partir de noviembre de 2026. Este
lanzamiento asume que su abreviatura de zona horaria será
MST de ahí en adelante. Eso parece probable
que cambie, pero no está claro qué nueva abreviatura se usará.
También una corrección histórica para Moldavia: han seguido los horarios de
transición de verano de la UE desde 2022.