> ## Documentation Index
> Fetch the complete documentation index at: https://private-7c7dfe99-fix-nav-issues.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Registro de cambios de Cloud v25.10

> Registro de cambios de v25.10

<div id="backward-incompatible-changes">
  ## Cambios incompatibles con versiones anteriores
</div>

<div id="data-format-and-schema-changes">
  ### Cambios en el formato de los datos y en el esquema
</div>

* Se cambió la configuración predeterminada `schema_inference_make_columns_nullable` para que respete la información de `Nullable` de las columnas presente en los metadatos de Parquet/ORC/Arrow, en lugar de hacer que todo sea Nullable. No hay cambios en los formatos de texto. [#71499](https://github.com/ClickHouse/ClickHouse/pull/71499) ([Michael Kolupaev](https://github.com/al13n321)).

<div id="query-and-function-changes">
  ### Cambios en consultas y funciones
</div>

* La caché de resultados de consultas ahora ignora la configuración `log_comment`, por lo que cambiar solo `log_comment` en una consulta ya no provoca un fallo de caché. Existe una pequeña posibilidad de que algunos usuarios segmentaran intencionadamente su caché variando `log_comment`. Este cambio modifica ese comportamiento y, por lo tanto, no es compatible con versiones anteriores. Utilice la configuración `query_cache_tag` para este fin. [#79878](https://github.com/ClickHouse/ClickHouse/pull/79878) ([filimonov](https://github.com/filimonov)).
* En versiones anteriores, las consultas con funciones de tabla con el mismo nombre que las funciones de implementación de operadores se formateaban de forma inconsistente. Cierra [#81601](https://github.com/ClickHouse/ClickHouse/issues/81601). Cierra [#81977](https://github.com/ClickHouse/ClickHouse/issues/81977). Cierra [#82834](https://github.com/ClickHouse/ClickHouse/issues/82834). Cierra [#82835](https://github.com/ClickHouse/ClickHouse/issues/82835). Las consultas EXPLAIN SYNTAX no formatearán operadores; el nuevo comportamiento refleja mejor el propósito de explicar la sintaxis. `clickhouse-format`, `formatQuery` y similares no formatearán funciones como operadores si la consulta las contenía en forma funcional. [#82825](https://github.com/ClickHouse/ClickHouse/pull/82825) ([Alexey Milovidov](https://github.com/alexey-milovidov)).
* Se deshabilitan las operaciones binarias sin sentido con IPv4/IPv6: se deshabilita la suma o resta de una IPv4/IPv6 con un tipo no entero. Antes se permitían operaciones con tipos de coma flotante y se producían errores lógicos con algunos otros tipos (como DateTime). [#86336](https://github.com/ClickHouse/ClickHouse/pull/86336) ([Raúl Marín](https://github.com/Algunenano)).
* Se cambiaron los nombres de las funciones `searchAny` y `searchAll` a `hasAnyTokens` y `hasAllTokens` para mantener una mayor coherencia con la función existente `hasToken`. [#88109](https://github.com/ClickHouse/ClickHouse/pull/88109) ([Robert Schulze](https://github.com/rschu1ze)).

<div id="data-type-changes">
  ### Cambios en los tipos de datos
</div>

* Se prohíbe el uso del tipo Dynamic en las claves de JOIN. Esto puede dar lugar a resultados inesperados cuando el tipo Dynamic se compara con un tipo que no es Dynamic. Es mejor convertir una columna Dynamic al tipo requerido. [#86358](https://github.com/ClickHouse/ClickHouse/pull/86358) ([Pavel Kruglov](https://github.com/Avogar)).

<div id="storage-and-index-changes">
  ### Cambios en almacenamiento e índices
</div>

* Se deja obsoleta la configuración `allow_dynamic_metadata_for_data_lakes`. Ahora, todas las tablas Iceberg intentan obtener del almacenamiento el esquema de tabla más actualizado antes de ejecutar cada consulta. [#86366](https://github.com/ClickHouse/ClickHouse/pull/86366) ([Daniil Ivanik](https://github.com/divanik)).
* El índice de texto invertido se rediseñó desde cero para que sea escalable con conjuntos de datos que no caben en RAM. [#86485](https://github.com/ClickHouse/ClickHouse/pull/86485) ([Anton Popov](https://github.com/CurtizJ)).
* La configuración del servidor `storage_metadata_write_full_object_key` está habilitada de forma predeterminada y ya no puede desactivarse. [#87335](https://github.com/ClickHouse/ClickHouse/pull/87335) ([Sema Checherinda](https://github.com/CheSema)).
* Se elimina `cache_hits_threshold` de la caché del sistema de archivos. `cache_hits_threshold` se añadió antes de incorporar la política de caché SLRU, y no es necesario admitir ambas. [#88344](https://github.com/ClickHouse/ClickHouse/pull/88344) ([Kseniia Sumarokova](https://github.com/kssenii)).

<div id="settings-and-configuration-changes">
  ### Cambios en ajustes y configuración
</div>

* Reducir `replicated_deduplication_window_seconds` de 1 semana a una hora para almacenar menos znodes en ZooKeeper cuando la tasa de inserción es baja. [#87414](https://github.com/ClickHouse/ClickHouse/pull/87414) ([Sema Checherinda](https://github.com/CheSema)).
* Renombrar el ajuste `query_plan_use_new_logical_join_step` a `query_plan_use_logical_join_step`. [#87679](https://github.com/ClickHouse/ClickHouse/pull/87679) ([Vladimir Cherkasov](https://github.com/vdimir)).
* La nueva sintaxis permite que el parámetro del tokenizer sea más expresivo. [#87997](https://github.com/ClickHouse/ClickHouse/pull/87997) ([Elmi Ahmadov](https://github.com/ahmadov)).
* Dos cambios menores en el funcionamiento de los ajustes `min_free_disk_ratio_to_perform_insert` y `min_free_disk_bytes_to_perform_insert`: usar bytes no reservados en lugar de bytes disponibles para determinar si debe rechazarse una inserción. Probablemente esto no sea crucial si las reservas para las fusiones en segundo plano y las mutaciones son pequeñas en comparación con los umbrales configurados, pero parece más correcto. - No aplicar estos ajustes a las tablas del sistema. La razón es que seguimos queriendo que tablas como `query_log` se actualicen. Esto ayuda mucho con la depuración. Los datos escritos en las tablas del sistema suelen ser pequeños en comparación con los datos reales, por lo que deberían poder seguir escribiéndose durante mucho más tiempo con un umbral razonable de `min_free_disk_ratio_to_perform_insert`. [#88468](https://github.com/ClickHouse/ClickHouse/pull/88468) ([c-end](https://github.com/c-end)).

<div id="keeper-changes">
  ### Cambios de Keeper
</div>

* Se habilita el modo asíncrono para la replicación interna de Keeper. Keeper conservará el mismo comportamiento que antes, con posibles mejoras del rendimiento. Si está actualizando desde una versión anterior a la 23.9, primero debe actualizar a la 23.9+ y luego a la 25.10+. También puede establecer `keeper_server.coordination_settings.async_replication` en 0 antes de la actualización y habilitarlo una vez finalizada. [#88515](https://github.com/ClickHouse/ClickHouse/pull/88515) ([Antonio Andelic](https://github.com/antonio2368)).

<div id="new-feature">
  ## Nuevas características
</div>

<div id="functions">
  ### Funciones
</div>

* Se añade la función `naiveBayesClassifier` para clasificar texto con Naive Bayes a partir de ngrams. [#78700](https://github.com/ClickHouse/ClickHouse/pull/78700) ([Nihal Z. Miaji](https://github.com/nihalzp)).
* Se añade la función `arrayExcept`, que sustrae un array de otro tratándolo como un conjunto. [#82368](https://github.com/ClickHouse/ClickHouse/pull/82368) ([Joanna Hulboj](https://github.com/jh0x)).
* Nueva función `conv` para convertir números entre bases; actualmente admite bases de `2-36`. [#83058](https://github.com/ClickHouse/ClickHouse/pull/83058) ([hp](https://github.com/hp77-creator)).
* Se añade la aggregate function `studentTTestOneSample`. [#85436](https://github.com/ClickHouse/ClickHouse/pull/85436) ([Dylan](https://github.com/DylanBlakemore)).
* Se añade la función `isValidASCII` para comprobar si una cadena contiene solo caracteres ASCII. Cierra [#85377](https://github.com/ClickHouse/ClickHouse/issues/85377). [#85786](https://github.com/ClickHouse/ClickHouse/pull/85786) ([rajat mohan](https://github.com/rajatmohan22)).
* Aggregate functions `timeSeriesChangesToGrid` y `timeSeriesResetsToGrid`. Se comportan de forma similar a `timeSeriesRateToGrid`: aceptan parámetros para la marca temporal de inicio, la marca temporal de fin, el step y la ventana retrospectiva, así como dos argumentos para los timestamps y los valores, pero requieren al menos 1 muestra por ventana en lugar de 2. Calculan un `changes`/`resets` de PromQL, contando cuántas veces cambia o disminuye el valor de la muestra dentro de la ventana especificada para cada timestamp de la cuadrícula temporal definida por los parámetros. El tipo de retorno es Array(Nullable(Float64)). [#86010](https://github.com/ClickHouse/ClickHouse/pull/86010) ([Stephen Chi](https://github.com/stephchi0)).
* Aggregate function `quantilePrometheusHistogram`, que acepta como argumentos los límites superiores y los valores acumulados de los buckets del histograma, y realiza una interpolación lineal entre los límites superior e inferior del bucket en el que se encuentra la posición del quantile. Se comporta de forma similar a la función `histogram_quantile()` de PromQL en histogramas clásicos. [#86294](https://github.com/ClickHouse/ClickHouse/pull/86294) ([Stephen Chi](https://github.com/stephchi0)).
* Se añaden variantes optimizadas case-insensitive de las funciones `startsWith` y `endsWith`: `startsWithCaseInsensitive`, `endsWithCaseInsensitive`, `startsWithCaseInsensitiveUTF8` y `endsWithCaseInsensitiveUTF8`. [#87374](https://github.com/ClickHouse/ClickHouse/pull/87374) ([Guang Zhao](https://github.com/zheguang)).

<div id="system-tables">
  ### Tablas del sistema
</div>

* Agrega una nueva tabla del sistema `database_replicas` con información sobre las réplicas de bases de datos. [#83408](https://github.com/ClickHouse/ClickHouse/pull/83408) ([Konstantin Morozov](https://github.com/k-morozov)).
* Agrega una nueva tabla `system.aggregated_zookeeper_log`. La tabla contiene estadísticas (p. ej., número de operaciones, latencia promedio, errores) de las operaciones de ZooKeeper agrupadas por ID de sesión, ruta padre y tipo de operación, y se escriben periódicamente en disco. [#85102](https://github.com/ClickHouse/ClickHouse/pull/85102) ([Miсhael Stetsyuk](https://github.com/mstetsyuk)).
* Agrega la tabla del sistema `iceberg_metadata_log` para recuperar archivos de metadatos de Iceberg durante las sentencias SELECT. [#86152](https://github.com/ClickHouse/ClickHouse/pull/86152) ([scanhex12](https://github.com/scanhex12)).
* Agrega advertencias de CPU y memoria a la tabla `system.warnings`. [#86838](https://github.com/ClickHouse/ClickHouse/pull/86838) ([Bharat Nallan](https://github.com/bharatnc)).
* Tabla del sistema para archivos de metadatos de Delta Lake. [#87263](https://github.com/ClickHouse/ClickHouse/pull/87263) ([scanhex12](https://github.com/scanhex12)).

<div id="table-engines-and-storage">
  ### Motores de tabla y almacenamiento
</div>

* Compatibilidad con el motor de tabla Alias. [#76569](https://github.com/ClickHouse/ClickHouse/pull/76569) ([RinChanNOW](https://github.com/RinChanNOWWW)).
* Ahora puede usar NATS JetStream para consumir mensajes especificando las nuevas opciones `nats_stream` y `nats_consumer` para el motor NATS. [#84799](https://github.com/ClickHouse/ClickHouse/pull/84799) ([Dmitry Novikov](https://github.com/dmitry-sles-novikov)).
* Tablas Iceberg y Delta Lake con configuración de disco. Esto permite definir tablas de usuario con un disco existente. Se añade la opción `allowed_disks_for_table_engines`, que permite usar discos específicos para Iceberg. Ejemplo: `CREATE TABLE test ENGINE = Iceberg('path/inside/disk') SETTING datalake_disk_name = '<some_user_disk>';` ### Entrada de documentación para cambios visibles para el usuario. [#86778](https://github.com/ClickHouse/ClickHouse/pull/86778) ([scanhex12](https://github.com/scanhex12)).
* Se añade una nueva opción de tabla `min_level_for_wide_part` que permite especificar el nivel mínimo para que una parte se cree como parte wide. [#88179](https://github.com/ClickHouse/ClickHouse/pull/88179) ([Christoph Wurm](https://github.com/cwurm)).

<div id="iceberg-and-data-lakes">
  ### Iceberg y lagos de datos
</div>

* Se añade compatibilidad para consultar Apache Paimon desde ClickHouse. Esta integración permite a los usuarios de ClickHouse interactuar directamente con el almacenamiento del lago de datos de Paimon. [#84423](https://github.com/ClickHouse/ClickHouse/pull/84423) ([JIaQi](https://github.com/JiaQiTang98)).
* `ALTER UPDATE` para el motor de tabla Iceberg. [#86059](https://github.com/ClickHouse/ClickHouse/pull/86059) ([scanhex12](https://github.com/scanhex12)).

<div id="indexes-and-statistics">
  ### Índices y estadísticas
</div>

* Nuevo índice bloom filter `sparse_gram`, útil para encontrar subcadenas largas. [#79985](https://github.com/ClickHouse/ClickHouse/pull/79985) ([scanhex12](https://github.com/scanhex12)).
* Se añadió la posibilidad de crear automáticamente estadísticas en todas las columnas aptas de las tablas `MergeTree`. Se añadió la configuración de nivel de tabla `auto_statistics_types`, que almacena, separados por comas, los tipos de estadísticas que se deben crear (p. ej., `auto_statistics_types = 'minmax, uniq, countmin'`). [#87241](https://github.com/ClickHouse/ClickHouse/pull/87241) ([Anton Popov](https://github.com/CurtizJ)).

<div id="sql-and-query-features">
  ### Funcionalidades de SQL y consultas
</div>

* Se añadió compatibilidad con la sintaxis `LIMIT BY ALL`. Al igual que `GROUP BY ALL` y `ORDER BY ALL`, `LIMIT BY ALL` se expande automáticamente para usar como claves de `LIMIT BY` todas las expresiones no agregadas de la cláusula `SELECT`. Por ejemplo, `SELECT id, name, count(*) FROM table GROUP BY id LIMIT 1 BY ALL` equivale a `SELECT id, name, count(*) FROM table GROUP BY id LIMIT 1 BY id, name`. Esta funcionalidad simplifica las consultas cuando se quiere limitar por todas las columnas no agregadas seleccionadas sin tener que enumerarlas explícitamente. Cierra [#59152](https://github.com/ClickHouse/ClickHouse/issues/59152). [#84079](https://github.com/ClickHouse/ClickHouse/pull/84079) ([Surya Kant Ranjan](https://github.com/iit2009046)).
* Trata un nombre de setting sin valor en la configuración de la consulta como equivalente a `1` (p. ej., `SELECT ... SETTINGS use_query_cache` equivale a `use_query_cache = 1`). [#85800](https://github.com/ClickHouse/ClickHouse/pull/85800) ([thraeka](https://github.com/thraeka)).
* Permite a los usuarios crear vistas temporales con la misma sintaxis que las tablas temporales. [#86432](https://github.com/ClickHouse/ClickHouse/pull/86432) ([Aly Kafoury](https://github.com/AlyHKafoury)).
* Se añadió compatibilidad con `LIMIT` y `OFFSET` negativos. Cierra [#28913](https://github.com/ClickHouse/ClickHouse/issues/28913). [#88411](https://github.com/ClickHouse/ClickHouse/pull/88411) ([Nihal Z. Miaji](https://github.com/nihalzp)).

<div id="client-and-cli-features">
  ### Características del cliente y la CLI
</div>

* Acceda a las instancias de ClickHouse Cloud con credenciales de Cloud mediante `--login`. [#82753](https://github.com/ClickHouse/ClickHouse/pull/82753) ([Krishna Mannem](https://github.com/kcmannem)).
* Se añade la opción `--semicolons_inline` para dar formato a las consultas de modo que los puntos y coma se coloquen en la última línea en lugar de en una línea aparte. [#88018](https://github.com/ClickHouse/ClickHouse/pull/88018) ([Jan Rada](https://github.com/ZelvaMan)).

<div id="server-configuration-and-workload-management">
  ### Configuración del servidor y gestión de cargas de trabajo
</div>

* Nuevas opciones de configuración: `logger.startupLevel` y `logger.shutdownLevel` permiten anular el nivel de registro durante el inicio y el apagado de ClickHouse, respectivamente. [#85967](https://github.com/ClickHouse/ClickHouse/pull/85967) ([Lennard Eijsackers](https://github.com/Blokje5)).
* Añade una forma de definir `WORKLOAD` y `RESOURCE` en SQL mediante la sección "resources\_and\_workloads" de la configuración del servidor. [#87430](https://github.com/ClickHouse/ClickHouse/pull/87430) ([Sergei Trifonov](https://github.com/serxa)).

<div id="system-commands">
  ### Comandos del sistema
</div>

* Se añade el comando `SYSTEM RECONNECT ZOOKEEPER` para forzar la desconexión y reconexión de ZooKeeper ([https://github.com/ClickHouse/ClickHouse/issues/87317](https://github.com/ClickHouse/ClickHouse/issues/87317)). [#87318](https://github.com/ClickHouse/ClickHouse/pull/87318) ([Pradeep Chhetri](https://github.com/chhetripradeep)).
* Se limita el número de colecciones con nombre mediante la configuración `max_named_collection_num_to_warn` y `max_named_collection_num_to_throw`. Se añade la nueva métrica `NamedCollection` y el error `TOO_MANY_NAMED_COLLECTIONS`. [#87343](https://github.com/ClickHouse/ClickHouse/pull/87343) ([Pablo Marcos](https://github.com/pamarcos)).

<div id="keeper">
  ### Keeper
</div>

* Se añaden variantes recursivas de los comandos `cp`-`cpr` y `mv`-`mvr` en el cliente de Keeper. [#88570](https://github.com/ClickHouse/ClickHouse/pull/88570) ([Mikhail Artemenko](https://github.com/Michicosun)).

<div id="experimental-features">
  ## Características experimentales
</div>

* Las funciones `searchAll` y `searchAny` ahora también funcionan con columnas no textuales. En esos casos, usan el tokenizador predeterminado. [#87722](https://github.com/ClickHouse/ClickHouse/pull/87722) ([Jimmy Aguilar Mena](https://github.com/Ergus)).
* Se implementó el tipo de dato `QBit`, que almacena vectores en formato segmentado por bits, y la función `L2DistanceTransposed`, que permite la búsqueda vectorial aproximada, donde el equilibrio entre precisión y velocidad se controla mediante un parámetro. [#87922](https://github.com/ClickHouse/ClickHouse/pull/87922) ([Raufs Dunamalijevs](https://github.com/rienath)).

<div id="performance-improvements">
  ## Mejoras de rendimiento
</div>

<div id="query-execution-and-optimization">
  ### Ejecución y optimización de consultas
</div>

* Se mejoró el rendimiento de las consultas al refactorizar el orden y la integración de Query Condition Cache (QCC) con el análisis de índices. El filtrado de QCC ahora se aplica antes del análisis de la clave primaria y de los índices de omisión, lo que reduce cálculos de índices innecesarios. El análisis de índices se amplió para admitir varios filtros de rango, y sus resultados de filtrado ahora se vuelven a almacenar en la QCC. Esto acelera significativamente las consultas en las que el análisis de índices domina el tiempo de ejecución, especialmente las que dependen de índices de omisión (p. ej., índices vectoriales o invertidos). [#82380](https://github.com/ClickHouse/ClickHouse/pull/82380) ([Amos Bird](https://github.com/amosbird)).
* Varias microoptimizaciones para acelerar las consultas pequeñas. [#83096](https://github.com/ClickHouse/ClickHouse/pull/83096) ([Raúl Marín](https://github.com/Algunenano)).
* Se comprimen los logs y los eventos de perfil en el protocolo nativo. En clusters con más de 100 réplicas, los eventos de perfil sin comprimir ocupan entre 1 y 10 MB/s, y la barra de progreso se vuelve lenta en conexiones a Internet lentas. Con esto se cierra [#82533](https://github.com/ClickHouse/ClickHouse/issues/82533). [#83586](https://github.com/ClickHouse/ClickHouse/pull/83586) ([Alexey Milovidov](https://github.com/alexey-milovidov)).
* Se mejora la optimización de PREWHERE para condiciones como `func(primary_column) = 'xx'` y `column in (xxx)`. [#85529](https://github.com/ClickHouse/ClickHouse/pull/85529) ([李扬](https://github.com/taiyang-li)).
* Se evita el escaneo completo de `system.tables` al filtrar por `uuid` (puede ser útil si solo tiene el UUID a partir de los logs o de la ruta de ZooKeeper). [#88379](https://github.com/ClickHouse/ClickHouse/pull/88379) ([Azat Khuzhin](https://github.com/azat)).

<div id="join-optimizations">
  ### Optimizaciones de JOIN
</div>

* Proporciona una lógica para aplicar pushdown a los predicados disyuntivos de JOIN. Ejemplo: en TPC-H Q7, para una condición sobre 2 tablas n1 y n2 como `(n1.n_name = 'FRANCE' AND n2.n_name = 'GERMANY') OR (n1.n_name = 'GERMANY' AND n2.n_name = 'FRANCE')`, se extraen filtros parciales independientes para cada tabla: `n1.n_name = 'FRANCE' OR n1.n_name = 'GERMANY'` para n1 y `n2.n_name = 'GERMANY' OR n2.n_name = 'FRANCE'` para n2. [#84735](https://github.com/ClickHouse/ClickHouse/pull/84735) ([Yarik Briukhovetskyi](https://github.com/yariks5s)).
* Se implementó la reescritura de JOIN: 1. Convertir `LEFT ANY JOIN` y `RIGHT ANY JOIN` en JOIN `SEMI`/`ANTI` si la condición de filtro siempre es falsa para las filas emparejadas o no emparejadas. Esta optimización se controla con la nueva configuración `query_plan_convert_any_join_to_semi_or_anti_join`. 2. Convertir `FULL ALL JOIN` en `LEFT ALL JOIN` o `RIGHT ALL JOIN` si la condición de filtro siempre es falsa para las filas no emparejadas de uno de los lados. [#86028](https://github.com/ClickHouse/ClickHouse/pull/86028) ([Dmitry Novik](https://github.com/novikd)).
* Se optimizó ligeramente el rendimiento de `HashJoin` en el caso de joins `LEFT/RIGHT` con muchas filas no emparejadas. [#86312](https://github.com/ClickHouse/ClickHouse/pull/86312) ([Nikita Taranov](https://github.com/nickitat)).
* La reordenación de joins ahora utiliza estadísticas. Esta funcionalidad puede habilitarse configurando `allow_statistics_optimize = 1` y `query_plan_optimize_join_order_limit = 10`. [#86822](https://github.com/ClickHouse/ClickHouse/pull/86822) ([Han Fei](https://github.com/hanfei1991)).
* Se omite el recálculo de las estadísticas de la tabla hash en tiempo de ejecución durante la optimización de joins. Se añadieron nuevos eventos de perfil `JoinOptimizeMicroseconds` y `QueryPlanOptimizeMicroseconds`. [#87683](https://github.com/ClickHouse/ClickHouse/pull/87683) ([Vladimir Cherkasov](https://github.com/vdimir)).
* Se integró `AddedColumns::appendFromBlock` para mejorar ligeramente el rendimiento de joins en algunos casos. [#88455](https://github.com/ClickHouse/ClickHouse/pull/88455) ([Nikita Taranov](https://github.com/nickitat)).

<div id="string-and-function-optimizations">
  ### Optimizaciones de cadenas y funciones
</div>

* Mejora el rendimiento de la búsqueda en cadenas que distingue entre mayúsculas y minúsculas (operaciones como el filtrado; por ejemplo, `WHERE URL LIKE '%google%'`) mediante la biblioteca [StringZilla](https://github.com/ashvardanian/StringZilla), con instrucciones SIMD de la CPU cuando están disponibles. [#84161](https://github.com/ClickHouse/ClickHouse/pull/84161) ([Raúl Marín](https://github.com/Algunenano)).
* Mejora el rendimiento de `LIKE` con prefijo o sufijo mediante la nueva configuración predeterminada `optimize_rewrite_like_perfect_affix`. [#85920](https://github.com/ClickHouse/ClickHouse/pull/85920) ([Guang Zhao](https://github.com/zheguang)).
* Mejora el rendimiento de las funciones `tokens`, `hasAllTokens`, `hasAnyTokens`. [#88416](https://github.com/ClickHouse/ClickHouse/pull/88416) ([Anton Popov](https://github.com/CurtizJ)).

<div id="mergetree-and-storage-optimizations">
  ### Optimizaciones de MergeTree y almacenamiento
</div>

* Añade la serialización opcional de la subcolumna `.size` para columnas String de nivel superior en tablas MergeTree, con el fin de mejorar la compresión y habilitar un acceso eficiente a las subcolumnas. Introduce nuevas configuraciones de MergeTree para controlar la versión de serialización y optimizar expresiones para cadenas vacías. [#82850](https://github.com/ClickHouse/ClickHouse/pull/82850) ([Amos Bird](https://github.com/amosbird)).
* Reduce la asignación y la copia de memoria al hacer un SELECT desde una tabla MergeTree agregante con FINAL cuando la tabla tiene columnas de tipo `SimpleAggregateFunction(anyLast)`. [#84428](https://github.com/ClickHouse/ClickHouse/pull/84428) ([Duc Canh Le](https://github.com/canhld94)).
* Mejora el rendimiento de las fusiones verticales después de ejecutar una eliminación ligera. [#86169](https://github.com/ClickHouse/ClickHouse/pull/86169) ([Anton Popov](https://github.com/CurtizJ)).
* Mejora el rendimiento de las consultas rápidas con muchas partes en la tabla (optimizando `MarkRanges` mediante el uso de `devector` en lugar de `deque`). [#86933](https://github.com/ClickHouse/ClickHouse/pull/86933) ([Azat Khuzhin](https://github.com/azat)).
* Mejora el rendimiento al aplicar `patch parts` en modo join. [#87094](https://github.com/ClickHouse/ClickHouse/pull/87094) ([Anton Popov](https://github.com/CurtizJ)).
* Habilita el guardado de `marks` en caché y evita la E/S directa para el lector MergeTreeLazy. [#87989](https://github.com/ClickHouse/ClickHouse/pull/87989) ([Nikita Taranov](https://github.com/nickitat)).
* La consulta SELECT con la cláusula `FINAL` sobre una tabla `ReplacingMergeTree` con la columna `is_deleted` ahora se ejecuta más rápido gracias a una mejor paralelización basada en 2 optimizaciones existentes: 1) la optimización `do_not_merge_across_partitions_select_final` para las particiones de la tabla que tienen una sola `part` 2) la división de otros rangos seleccionados de la tabla en `intersecting / non-intersecting`, de modo que solo los rangos `intersecting` deben pasar por la transformación de fusión FINAL. [#88090](https://github.com/ClickHouse/ClickHouse/pull/88090) ([Shankar Iyer](https://github.com/shankar-iyer)).

<div id="aggregation-and-group-by-optimizations">
  ### Optimizaciones de agregación y GROUP BY
</div>

* Corrige la degradación del rendimiento causada por una clave serializada grande al agrupar por varias columnas de tipo cadena y numéricas. Cierra [https://github.com/ClickHouse/ClickHouse/pull/83884#issuecomment-3187972297](https://github.com/ClickHouse/ClickHouse/pull/83884#issuecomment-3187972297) cc @mkmkme . Es una continuación de [https://github.com/ClickHouse/ClickHouse/pull/83884](https://github.com/ClickHouse/ClickHouse/pull/83884). [#85924](https://github.com/ClickHouse/ClickHouse/pull/85924) ([李扬](https://github.com/taiyang-li)).
* RadixSort: ayuda al compilador a usar SIMD y a la CPU a realizar una mejor precarga. Usa despacho dinámico para utilizar precarga por software solo en CPUs Intel. Continúa el trabajo de @taiyang-li en [https://github.com/ClickHouse/ClickHouse/pull/77029](https://github.com/ClickHouse/ClickHouse/pull/77029). [#86378](https://github.com/ClickHouse/ClickHouse/pull/86378) ([Raúl Marín](https://github.com/Algunenano)).

<div id="index-and-text-search-optimizations">
  ### Optimizaciones de índices y de búsqueda de texto
</div>

* Se mejoró el rendimiento de la construcción del índice de texto para documentos que contienen principalmente tokens poco frecuentes. [#87546](https://github.com/ClickHouse/ClickHouse/pull/87546) ([Anton Popov](https://github.com/CurtizJ)).

<div id="data-lake-optimizations">
  ### Optimizaciones para lago de datos
</div>

* Lectura en orden para Iceberg. [#88454](https://github.com/ClickHouse/ClickHouse/pull/88454) ([scanhex12](https://github.com/scanhex12)).

<div id="internal-optimizations">
  ### Optimizaciones internas
</div>

* Mejoras en DB::SharedMutex. [#87491](https://github.com/ClickHouse/ClickHouse/pull/87491) ([Raúl Marín](https://github.com/Algunenano)).
* Aceleración del caso habitual del destructor de Field. [#87631](https://github.com/ClickHouse/ClickHouse/pull/87631) ([Raúl Marín](https://github.com/Algunenano)).
* Reducción del impacto de no usar fail points. [#88196](https://github.com/ClickHouse/ClickHouse/pull/88196) ([Raúl Marín](https://github.com/Algunenano)).

<div id="improvements">
  ## Mejoras
</div>

<div id="query-optimization-and-execution">
  ### Optimización y ejecución de consultas
</div>

* `mannWhitneyUTest` ya no lanza una excepción cuando ambas muestras contienen únicamente valores idénticos. Ahora devuelve un resultado válido, en consonancia con SciPy. Esto cierra: [#79814](https://github.com/ClickHouse/ClickHouse/issues/79814). [#80009](https://github.com/ClickHouse/ClickHouse/pull/80009) ([DeanNeaht](https://github.com/DeanNeaht)).
* Se añadió una optimización experimental del orden de JOIN que puede reordenar automáticamente los JOIN para mejorar el rendimiento (controlada por la configuración `query_plan_optimize_join_order_limit`). Ten en cuenta que la optimización del orden de JOIN actualmente ofrece compatibilidad limitada con estadísticas y se basa principalmente en estimaciones del número de filas de los motores de almacenamiento; en futuras versiones se añadirán una recopilación de estadísticas y una estimación de cardinalidad más sofisticadas. **Si encuentras problemas con consultas JOIN después de actualizar**, puedes desactivar temporalmente la nueva implementación estableciendo `SET query_plan_use_new_logical_join_step = 0` e informar del problema para su investigación. **Nota sobre la resolución de identificadores de la cláusula USING**: Se cambió la resolución de la columna coalescente de la cláusula `OUTER JOIN ... USING` para que sea más coherente: antes, al seleccionar tanto la columna de USING como las columnas calificadas (`a, t1.a, t2.a`) en un `OUTER JOIN`, la columna de USING se resolvía incorrectamente como `t1.a`, mostrando 0/NULL para las filas de la tabla derecha sin coincidencia en la izquierda. Ahora, los identificadores de la cláusula USING siempre se resuelven como la columna coalescente, mientras que los identificadores calificados se resuelven como las columnas no coalescentes, independientemente de qué otros identificadores estén presentes en la consulta. Por ejemplo: \`\`\`sql SELECT a, t1.a, t2.a FROM (SELECT 1 as a WHERE 0) t1 FULL JOIN (SELECT 2 as a) t2 USING (a) -- Antes: a=0, t1.a=0, t2.a=2 (incorrecto: 'a' se resolvía como t1.a) -- Después: a=2, t1.a=0, t2.a=2 (correcto: 'a' es la columna coalescente). [#80848](https://github.com/ClickHouse/ClickHouse/pull/80848) ([Vladimir Cherkasov](https://github.com/vdimir)).
* Se admite el filtrado de partes de datos mediante skip indexes durante la lectura para reducir lecturas innecesarias de índices. Se controla con la nueva configuración `use_skip_indexes_on_data_read` (deshabilitada de forma predeterminada). Esto aborda [#75774](https://github.com/ClickHouse/ClickHouse/issues/75774). Esto incluye parte del trabajo previo común con [#81021](https://github.com/ClickHouse/ClickHouse/issues/81021). [#81526](https://github.com/ClickHouse/ClickHouse/pull/81526) ([Amos Bird](https://github.com/amosbird)).
* La reescritura de la transacción de almacenamiento de objetos en disco elimina los blobs remotos anteriores si la transacción de metadatos se ha confirmado. [#81787](https://github.com/ClickHouse/ClickHouse/pull/81787) ([Sema Checherinda](https://github.com/CheSema)).
* Permitir configurar la estrategia de reintento de S3 y que la configuración del disco S3 se recargue en caliente al cambiar el archivo XML de configuración. [#82642](https://github.com/ClickHouse/ClickHouse/pull/82642) ([RinChanNOW](https://github.com/RinChanNOWWW)).
* Se corrigió la fase de optimización para la expresión de igualdad redundante cuando el LowCardinality del tipo resultante difiere antes y después de la optimización. [#82651](https://github.com/ClickHouse/ClickHouse/pull/82651) ([Yakov Olkhovskiy](https://github.com/yakov-olkhovskiy)).
* Se puede utilizar una columna especial para indicar la presencia de una parte de `oneof`. [#82885](https://github.com/ClickHouse/ClickHouse/pull/82885) ([Ilya Golshtein](https://github.com/ilejn)).
* Ahora los usuarios reciben instrucciones más claras cuando se especifican configuraciones incorrectas para el nuevo motor de tabla Kafka. [#83701](https://github.com/ClickHouse/ClickHouse/pull/83701) ([János Benjamin Antal](https://github.com/antaljanosbenjamin)).
* Cuando los clientes HTTP establecen el encabezado `X-ClickHouse-100-Continue: defer` además de `Expect: 100-continue`, ClickHouse no envía una respuesta `100 Continue` al cliente hasta después de validar la cuota, lo que evita desperdiciar ancho de banda de red al transmitir cuerpos de solicitud que, de todos modos, acabarían descartándose. Esto es relevante para las consultas INSERT, en las que la consulta puede enviarse en la cadena de consulta de la URL y los datos se envían en el cuerpo de la solicitud. Interrumpir una solicitud sin enviar el cuerpo completo impide reutilizar la conexión con HTTP/1.1, pero la latencia adicional de abrir nuevas conexiones suele ser insignificante en comparación con la duración total de INSERT cuando se manejan grandes volúmenes de datos. [#84304](https://github.com/ClickHouse/ClickHouse/pull/84304) ([c-end](https://github.com/c-end)).
* Ya no se pueden especificar zonas horarias para el tipo Time. [#84689](https://github.com/ClickHouse/ClickHouse/pull/84689) ([Yarik Briukhovetskyi](https://github.com/yariks5s)).
* El autocompletado del cliente es más rápido y consistente al usar `system.completions` en lugar de realizar múltiples consultas a las tablas del sistema. [#84694](https://github.com/ClickHouse/ClickHouse/pull/84694) ([|2ustam](https://github.com/RuS2m)).
* Se simplificó la lógica relacionada con el análisis de Time\[64] en el formato `best_effort` (y se evitaron algunos errores). [#84730](https://github.com/ClickHouse/ClickHouse/pull/84730) ([Yarik Briukhovetskyi](https://github.com/yariks5s)).
* Acelera algunas consultas `JOIN` al construir un filtro bloom a partir del subárbol derecho en tiempo de ejecución y pasar este filtro al escaneo del subárbol izquierdo. Esto puede ser beneficioso para consultas como `SELECT avg(o_totalprice) FROM orders, customer, nation WHERE c_custkey = o_custkey AND c_nationkey=n_nationkey AND n_name = 'FRANCE'`. [#84772](https://github.com/ClickHouse/ClickHouse/pull/84772) ([Alexander Gololobov](https://github.com/davenger)).
* Puedes usar parámetros de consulta después de `TO` al crear una vista materializada, por ejemplo: `CREATE MATERIALIZED VIEW mv TO {to_table:Identifier} AS SELECT * FROM src_table`. [#84899](https://github.com/ClickHouse/ClickHouse/pull/84899) ([Diskein](https://github.com/Diskein)).
* Enmascarar las credenciales de S3 en los logs al usar DATABASE ENGINE = Backup con almacenamiento S3. [#85336](https://github.com/ClickHouse/ClickHouse/pull/85336) ([Kenny Sun](https://github.com/hwabis)).
* Se actualiza jemalloc a una versión más reciente. Se mejora el perfilado de asignaciones a partir de las herramientas internas de jemalloc. El profiler global de jemalloc ahora puede habilitarse con la configuración `jemalloc_enable_global_profiler`. Las asignaciones y liberaciones de memoria globales muestreadas pueden almacenarse en `system.trace_log` con el tipo `JemallocSample` al habilitar la configuración `jemalloc_collect_global_profile_samples_in_trace_log`. El perfilado de jemalloc ahora puede habilitarse de forma independiente para cada consulta mediante el ajuste `jemalloc_enable_profiler`. El almacenamiento de muestras en `system.trace_log` puede controlarse por consulta mediante el ajuste `jemalloc_collect_profile_samples_in_trace_log`. [#85438](https://github.com/ClickHouse/ClickHouse/pull/85438) ([Antonio Andelic](https://github.com/antonio2368)).
* Se añadieron la función deltaLakeAzureCluster (similar a deltaLakeAzure para clústeres) y la función deltaLakeS3Cluster (alias de deltaLakeCluster). Resuelve [#85358](https://github.com/ClickHouse/ClickHouse/issues/85358). [#85547](https://github.com/ClickHouse/ClickHouse/pull/85547) ([Smita Kulkarni](https://github.com/SmitaRKulkarni)).
* Renombrar InterpreterSystemQuery::dropReplicaImpl a InterpreterSystemQuery::dropStorageReplica - En InterpreterSystemQuery::dropDatabaseReplica: - Al eliminar con base de datos o al eliminar la réplica completa: también se elimina la réplica de cada tabla de la base de datos - Si se proporciona 'WITH TABLES', eliminar la réplica de cada almacenamiento - En caso contrario, la lógica no cambia; solo se llama a DatabaseReplicated::dropReplica en las bases de datos - Al eliminar una réplica de base de datos con la ruta de Keeper: - Si se proporciona 'WITH TABLES': - Restaurar la base de datos como Atomic - Restaurar las tablas RMT a partir de la sentencia en Keeper - Eliminar la base de datos (las tablas restauradas también se eliminan) - En caso contrario, solo se llama a DatabaseReplicated::dropReplica en la ruta de Keeper proporcionada. [#85637](https://github.com/ClickHouse/ClickHouse/pull/85637) ([Tuan Pham Anh](https://github.com/tuanpach)).
* Corrige el formato inconsistente de TTL cuando contiene una función `materialize`. Cierra [#82828](https://github.com/ClickHouse/ClickHouse/issues/82828). [#85749](https://github.com/ClickHouse/ClickHouse/pull/85749) ([Alexey Milovidov](https://github.com/alexey-milovidov)).
* Aplicar la configuración azure\_max\_single\_part\_copy\_size a las operaciones normales de copia, de la misma manera que para la copia de seguridad. [#85767](https://github.com/ClickHouse/ClickHouse/pull/85767) ([Ilya Golshtein](https://github.com/ilejn)).
* Ralentiza los hilos del cliente de S3 ante errores reintentables en el almacenamiento de objetos S3. Esto amplía la configuración anterior `backup_slow_all_threads_after_retryable_s3_error` a los discos S3 y la renombra como la más general `s3_slow_all_threads_after_retryable_error`. [#85918](https://github.com/ClickHouse/ClickHouse/pull/85918) ([Julia Kartseva](https://github.com/jkartseva)).
* Se marcan como obsoletas las configuraciones allow\_experimental\_variant/dynamic/json y enable\_variant/dynamic/json. Ahora los tres tipos están habilitados de forma incondicional. [#85934](https://github.com/ClickHouse/ClickHouse/pull/85934) ([Pavel Kruglov](https://github.com/Avogar)).
* Se mejoró el motor de tabla S3(Azure)Queue para que pueda soportar la pérdida de la conexión con ZooKeeper sin riesgo de duplicados. Requiere habilitar la configuración de S3Queue `use_persistent_processing_nodes` (se puede cambiar con `ALTER TABLE MODIFY SETTING`). [#85995](https://github.com/ClickHouse/ClickHouse/pull/85995) ([Kseniia Sumarokova](https://github.com/kssenii)).
* El estado de la tabla Iceberg ya no se almacena en un objeto de almacenamiento. Esto debería permitir usar Iceberg en ClickHouse con consultas concurrentes. [#86062](https://github.com/ClickHouse/ClickHouse/pull/86062) ([Daniil Ivanik](https://github.com/divanik)).
* Se añadió la configuración `query_condition_cache_selectivity_threshold` (valor predeterminado: 1.0), que excluye de su inserción en la caché de condiciones de consulta los resultados de escaneo de predicados con baja selectividad. Esto permite reducir el consumo de memoria de la caché de condiciones de consulta, a costa de una menor tasa de aciertos de la caché. [#86076](https://github.com/ClickHouse/ClickHouse/pull/86076) ([zhongyuankai](https://github.com/zhongyuankai)).
* Se admite el filtrado por la cadena completa de la URL (directiva `full_url`) en `http_handlers` (incluidos el esquema y host:port). [#86155](https://github.com/ClickHouse/ClickHouse/pull/86155) ([Azat Khuzhin](https://github.com/azat)).
* Se añade la configuración experimental `allow_experimental_delta_lake_writes` a la funcionalidad de escritura en Delta Lake, deshabilitada de forma predeterminada. [#86180](https://github.com/ClickHouse/ClickHouse/pull/86180) ([Kseniia Sumarokova](https://github.com/kssenii)).
* Se corrige la detección de systemd en el script de init.d (corrige la comprobación "Install packages"). [#86187](https://github.com/ClickHouse/ClickHouse/pull/86187) ([Azat Khuzhin](https://github.com/azat)).
* Añade una nueva métrica dimensional `startup_scripts_failure_reason`. Esta métrica es necesaria para distinguir entre distintos tipos de errores que provocan el fallo de los scripts de inicio. En particular, a efectos de generar alertas, necesitamos distinguir entre errores transitorios (p. ej., `MEMORY_LIMIT_EXCEEDED` o `KEEPER_EXCEPTION`) y errores no transitorios. [#86202](https://github.com/ClickHouse/ClickHouse/pull/86202) ([Miсhael Stetsyuk](https://github.com/mstetsyuk)).
* Varios archivos de datos en las escrituras de Iceberg. [#86275](https://github.com/ClickHouse/ClickHouse/pull/86275) ([scanhex12](https://github.com/scanhex12)).
* Más tipos de partición en las operaciones de escritura de Iceberg. Esto cierra [#86206](https://github.com/ClickHouse/ClickHouse/issues/86206). [#86298](https://github.com/ClickHouse/ClickHouse/pull/86298) ([scanhex12](https://github.com/scanhex12)).
* Permitir omitir la función `identity()` en la partición de una tabla Iceberg. [#86314](https://github.com/ClickHouse/ClickHouse/pull/86314) ([scanhex12](https://github.com/scanhex12)).
* Se añadió la posibilidad de habilitar el logging JSON solo para un canal específico; para ello, configure `logger.formatting.channel` con uno de estos valores: `syslog`/`console`/`errorlog`/`log`. [#86331](https://github.com/ClickHouse/ClickHouse/pull/86331) ([Azat Khuzhin](https://github.com/azat)).
* Se agregó un límite de filas/bytes para los archivos de datos insertados en delta lake. Se controla mediante la configuración `delta_lake_insert_max_rows_in_data_file` y `delta_lake_insert_max_bytes_in_data_file`. [#86357](https://github.com/ClickHouse/ClickHouse/pull/86357) ([Kseniia Sumarokova](https://github.com/kssenii)).
* Se permite usar números nativos en `WHERE`. Ya se permite usarlos como argumentos de funciones lógicas. Esto simplifica las optimizaciones de pushdown de filtros y de move-to-prewhere. [#86390](https://github.com/ClickHouse/ClickHouse/pull/86390) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* Se corrigió un error que se producía al ejecutar `SYSTEM DROP REPLICA` en un catálogo con metadatos corruptos. [#86391](https://github.com/ClickHouse/ClickHouse/pull/86391) ([Nikita Mikhaylov](https://github.com/nikitamikhaylov)).
* Añade reintentos adicionales para la comprobación de acceso al disco (`skip_access_check=0`) en Azure, porque el aprovisionamiento del acceso puede tardar bastante tiempo. [#86419](https://github.com/ClickHouse/ClickHouse/pull/86419) ([Alexander Tokmakov](https://github.com/tavplubix)).
* Renombrar la configuración `evaluation_time` como `promql_evaluation_time`. [#86459](https://github.com/ClickHouse/ClickHouse/pull/86459) ([Vitaly Baranov](https://github.com/vitlibar)).
* Configuración para eliminar archivos al hacer `drop` en Iceberg. Esto cierra [#86211](https://github.com/ClickHouse/ClickHouse/issues/86211). [#86501](https://github.com/ClickHouse/ClickHouse/pull/86501) ([scanhex12](https://github.com/scanhex12)).
* Reduce el uso de memoria en las operaciones de escritura de Iceberg. [#86544](https://github.com/ClickHouse/ClickHouse/pull/86544) ([scanhex12](https://github.com/scanhex12)).
* Hacer que la función `today()` no distinga entre mayúsculas y minúsculas para mantener la coherencia con otras funciones relacionadas con fecha y hora, como `NOW()`. [#86561](https://github.com/ClickHouse/ClickHouse/pull/86561) ([Kaviraj Kanagaraj](https://github.com/kavirajk)).
* Hacer que la ventana de antigüedad en las funciones `timeSeries*()` sea abierta por la izquierda y cerrada por la derecha. [#86588](https://github.com/ClickHouse/ClickHouse/pull/86588) ([Vitaly Baranov](https://github.com/vitlibar)).
* Se añaden eventos de perfil `FailedInternal*Query`. [#86627](https://github.com/ClickHouse/ClickHouse/pull/86627) ([Shane Andrade](https://github.com/mauidude)).
* Hacer que el bloqueo del bucket en el modo ordenado de S3Queue sea persistente, de forma similar a los nodos de procesamiento cuando `use_persistent_processing_nodes = 1`. Añadir inyección de fallos en Keeper en las pruebas. [#86628](https://github.com/ClickHouse/ClickHouse/pull/86628) ([Kseniia Sumarokova](https://github.com/kssenii)).
* Corrige el manejo de usuarios cuyos nombres contienen un punto cuando se añaden mediante un archivo de configuración. [#86633](https://github.com/ClickHouse/ClickHouse/pull/86633) ([Mikhail Koviazin](https://github.com/mkmkme)).
* Se añade una métrica asíncrona del uso de memoria en las consultas (`QueriesMemoryUsage` y `QueriesPeakMemoryUsage`). [#86669](https://github.com/ClickHouse/ClickHouse/pull/86669) ([Azat Khuzhin](https://github.com/azat)).
* Puede usar la opción `clickhouse-benchmark --precise` para obtener informes más precisos de QPS y otras métricas por intervalo. Ayuda a obtener un QPS consistente cuando la duración de las consultas es comparable con el intervalo de informes `--delay D`. [#86684](https://github.com/ClickHouse/ClickHouse/pull/86684) ([Sergei Trifonov](https://github.com/serxa)).
* Permitir configurar los valores `nice` de los hilos de Linux para asignar prioridades más altas o más bajas a algunos hilos (merge/mutate, consulta, vista materializada, cliente de ZooKeeper). [#86703](https://github.com/ClickHouse/ClickHouse/pull/86703) ([Miсhael Stetsyuk](https://github.com/mstetsyuk)).
* Corrige el confuso error “specified upload does not exist”, que se produce cuando la excepción original se pierde durante la carga multiparte debido a una condición de carrera. [#86725](https://github.com/ClickHouse/ClickHouse/pull/86725) ([Julia Kartseva](https://github.com/jkartseva)).
* Se limita la descripción del plan de consulta en la consulta `EXPLAIN`. No se calcula la descripción para consultas distintas de `EXPLAIN`. Se añadió la configuración `query_plan_max_step_description_length`. [#86741](https://github.com/ClickHouse/ClickHouse/pull/86741) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* Se añade la posibilidad de ajustar las señales pendientes para intentar evitar CANNOT\_CREATE\_TIMER (para los perfiladores de consultas, `query_profiler_real_time_period_ns`/`query_profiler_cpu_time_period_ns`). También se recopila `SigQ` de `/proc/self/status` para la introspección (si `ProcessSignalQueueSize` está cerca de `ProcessSignalQueueLimit`, es probable que se produzcan errores `CANNOT_CREATE_TIMER`). [#86760](https://github.com/ClickHouse/ClickHouse/pull/86760) ([Azat Khuzhin](https://github.com/azat)).
* Inserción/selección distribuida para lagos de datos. [#86783](https://github.com/ClickHouse/ClickHouse/pull/86783) ([scanhex12](https://github.com/scanhex12)).
* Mejora del rendimiento de la solicitud RemoveRecursive en Keeper. [#86789](https://github.com/ClickHouse/ClickHouse/pull/86789) ([Antonio Andelic](https://github.com/antonio2368)).
* Elimina los espacios en blanco adicionales en PrettyJSONEachRow al generar salida de tipo JSON. [#86819](https://github.com/ClickHouse/ClickHouse/pull/86819) ([Pavel Kruglov](https://github.com/Avogar)).
* Amplía la ventana de deduplicación replicada hasta 10000. [#86820](https://github.com/ClickHouse/ClickHouse/pull/86820) ([Sema Checherinda](https://github.com/CheSema)).
* Ahora escribimos los tamaños de los blobs de `prefix.path` cuando se elimina un directorio en un disco reescribible simple. [#86908](https://github.com/ClickHouse/ClickHouse/pull/86908) ([alesapin](https://github.com/alesapin)).
* Hacer que la función `yesterday()` no distinga entre mayúsculas y minúsculas y sea consistente con la función `today()`. [#86914](https://github.com/ClickHouse/ClickHouse/pull/86914) ([Kaviraj Kanagaraj](https://github.com/kavirajk)).
* Admite pruebas de rendimiento de `.xml` en instancias remotas de ClickHouse, incluido ClickHouse Cloud. Ejemplo de uso: `tests/performance/scripts/perf.py tests/performance/math.xml --runs 10 --user <username> --password <password> --host <hostname> --port <port> --secure`. [#86995](https://github.com/ClickHouse/ClickHouse/pull/86995) ([Raufs Dunamalijevs](https://github.com/rienath)).
* Respetar los límites de memoria en algunos puntos en los que se sabe que se asignan cantidades significativas de memoria (>16MiB) (ordenación, inserciones asíncronas y file log). [#87035](https://github.com/ClickHouse/ClickHouse/pull/87035) ([Azat Khuzhin](https://github.com/azat)).
* Evita que las configuraciones no booleanas no establezcan ningún valor en las consultas. Mejora de [#85800](https://github.com/ClickHouse/ClickHouse/issues/85800). [#87084](https://github.com/ClickHouse/ClickHouse/pull/87084) ([thraeka](https://github.com/thraeka)).
* Admite sugerencias para nombres de formatos. Cierra [#86761](https://github.com/ClickHouse/ClickHouse/issues/86761). [#87092](https://github.com/ClickHouse/ClickHouse/pull/87092) ([flynn](https://github.com/ucasfl)).
* Las réplicas remotas omiten el análisis de índices de omisión cuando no hay proyecciones. [#87096](https://github.com/ClickHouse/ClickHouse/pull/87096) ([zoomxi](https://github.com/zoomxi)).
* Genera una excepción si la configuración `network_compression_method` no es un códec genérico compatible. [#87097](https://github.com/ClickHouse/ClickHouse/pull/87097) ([Robert Schulze](https://github.com/rschu1ze)).
* La tabla del sistema `system.query_cache` ahora devuelve *todas* las entradas de la caché de resultados de consultas, mientras que antes solo devolvía las entradas compartidas o las entradas no compartidas del mismo usuario y rol. Esto es aceptable, ya que se supone que las entradas no compartidas no revelan *los resultados de las consultas*, mientras que `system.query_cache` devuelve *los textos de las consultas*. Esto hace que el comportamiento de la tabla del sistema sea más parecido al de `system.query_log`. [#87104](https://github.com/ClickHouse/ClickHouse/pull/87104) ([Robert Schulze](https://github.com/rschu1ze)).
* Se añadió soporte para autenticación y SSL en la función de tabla `arrowFlight()`. [#87120](https://github.com/ClickHouse/ClickHouse/pull/87120) ([Vitaly Baranov](https://github.com/vitlibar)).
* Agregar un nuevo parámetro al motor de tabla `S3` y a la función de tabla `s3`, llamado `storage_class_name`, que permite especificar el almacenamiento por niveles inteligente compatible con AWS. Se admite tanto en formato key-value como en formato posicional (obsoleto). [#87122](https://github.com/ClickHouse/ClickHouse/pull/87122) ([alesapin](https://github.com/alesapin)).
* Se permite deshabilitar la codificación UTF-8 para la tabla de ytsaurus. [#87150](https://github.com/ClickHouse/ClickHouse/pull/87150) ([MikhailBurdukov](https://github.com/MikhailBurdukov)).
* Compatibilidad con Azure para discos de lago de datos. [#87173](https://github.com/ClickHouse/ClickHouse/pull/87173) ([scanhex12](https://github.com/scanhex12)).
* Se añade el nuevo parámetro del índice de texto `dictionary_block_frontcoding_compression` para controlar la compresión del diccionario. De forma predeterminada, está habilitado para usar la compresión `front-coding`. [#87175](https://github.com/ClickHouse/ClickHouse/pull/87175) ([Elmi Ahmadov](https://github.com/ahmadov)).
* Habilitar la evaluación con cortocircuito para la función parseDateTime. [#87184](https://github.com/ClickHouse/ClickHouse/pull/87184) ([Pavel Kruglov](https://github.com/Avogar)).
* Se admite `alter table ... materialize statistics all`, que materializa todas las estadísticas de una tabla. [#87197](https://github.com/ClickHouse/ClickHouse/pull/87197) ([Han Fei](https://github.com/hanfei1991)).
* Se deshabilita `s3_slow_all_threads_after_retryable_error` de forma predeterminada. [#87198](https://github.com/ClickHouse/ClickHouse/pull/87198) ([Nikita Mikhaylov](https://github.com/nikitamikhaylov)).
* Añade una nueva tabla `system.aggregated_zookeeper_log`. La tabla contiene estadísticas (p. ej., número de operaciones, latencia media y errores) de las operaciones de ZooKeeper agrupadas por ID de sesión, ruta padre y tipo de operación, y que se vuelcan periódicamente a disco. [#87208](https://github.com/ClickHouse/ClickHouse/pull/87208) ([Miсhael Stetsyuk](https://github.com/mstetsyuk)).
* Renombrar la función de tabla `arrowflight` a `arrowFlight`. [#87249](https://github.com/ClickHouse/ClickHouse/pull/87249) ([Vitaly Baranov](https://github.com/vitlibar)).
* Se actualizó `clickhouse-benchmark` para que acepte `-` en lugar de `_` en sus opciones de la CLI. [#87251](https://github.com/ClickHouse/ClickHouse/pull/87251) ([Ahmed Gouda](https://github.com/0xgouda)).
* Se añadió una configuración de sesión para excluir una lista de skip indexes de la materialización al insertar (`exclude_materialize_skip_indexes_on_insert`). Se añadió una configuración de tabla de MergeTree para excluir una lista de skip indexes de la materialización durante la fusión (`exclude_materialize_skip_indexes_on_merge`). [#87252](https://github.com/ClickHouse/ClickHouse/pull/87252) ([George Larionov](https://github.com/george-larionov)).
* Hacer que el vaciado en `system.crash_log` durante el manejo de señales sea síncrono. [#87253](https://github.com/ClickHouse/ClickHouse/pull/87253) ([Miсhael Stetsyuk](https://github.com/mstetsyuk)).
* Añadir una nueva columna `statistics` a system.parts\_columns. [#87259](https://github.com/ClickHouse/ClickHouse/pull/87259) ([Han Fei](https://github.com/hanfei1991)).
* Se añadió la configuración `inject_random_order_for_select_without_order_by`, que inserta `ORDER BY rand()` en las consultas `SELECT` de nivel superior sin cláusula `ORDER BY`. [#87261](https://github.com/ClickHouse/ClickHouse/pull/87261) ([Rui Zhang](https://github.com/zhangruiddn)).
* Admite otros formatos (ORC, Avro) en las escrituras de Iceberg. Se cierra [#86179](https://github.com/ClickHouse/ClickHouse/issues/86179). [#87277](https://github.com/ClickHouse/ClickHouse/pull/87277) ([scanhex12](https://github.com/scanhex12)).
* Se mejora el mensaje de error de joinGet para que indique correctamente que el número de `join_keys` no coincide con el número de `right_table_keys`. [#87279](https://github.com/ClickHouse/ClickHouse/pull/87279) ([Isak Ellmer](https://github.com/spinojara)).
* Compacta los datos de todos los hilos antes de insertarlos en las vistas materializadas, en función de los ajustes `min_insert_block_size_rows_for_materialized_views` y `min_insert_block_size_bytes_for_materialized_views`. Anteriormente, si `parallel_view_processing` estaba habilitado, cada hilo que insertaba en una vista materializada específica compactaba la inserción de forma independiente, lo que podía generar un mayor número de partes. [#87280](https://github.com/ClickHouse/ClickHouse/pull/87280) ([Antonio Andelic](https://github.com/antonio2368)).
* Este parche añade la capacidad de comprobar el `stat` de cualquier nodo de Keeper durante la `write tx`. Esto puede ayudar a detectar el problema ABA. [#87282](https://github.com/ClickHouse/ClickHouse/pull/87282) ([Mikhail Artemenko](https://github.com/Michicosun)).
* Redirigir las solicitudes intensivas de ytsaurus a proxies de alta capacidad. [#87342](https://github.com/ClickHouse/ClickHouse/pull/87342) ([MikhailBurdukov](https://github.com/MikhailBurdukov)).
* Este parche corrige las reversiones de las operaciones `unlink`/`rename`/`removeRecursive`/`removeDirectory`/etc., así como el recuento de enlaces físicos en cualquier posible carga de trabajo de metadatos para transacciones en disco, y simplifica las interfaces para hacerlas más genéricas, de modo que puedan reutilizarse en otros almacenes de metadatos. [#87358](https://github.com/ClickHouse/ClickHouse/pull/87358) ([Mikhail Artemenko](https://github.com/Michicosun)).
* Se añadió el parámetro de configuración `keeper_server.tcp_nodelay`, que permite desactivar `TCP_NODELAY` para Keeper. [#87363](https://github.com/ClickHouse/ClickHouse/pull/87363) (Copilot).
* Se admite `--connection` en `clickhouse-benchmarks`. Es igual que en `clickhouse-client`: puede especificar conexiones predefinidas en `config.xml`/`config.yaml` del cliente, en la ruta `connections_credentials`, para evitar tener que indicar explícitamente el usuario/la contraseña mediante argumentos de la línea de comandos. Se añade compatibilidad con `--accept-invalid-certificate` en `clickhouse-benchmark`. [#87370](https://github.com/ClickHouse/ClickHouse/pull/87370) ([Azat Khuzhin](https://github.com/azat)).
* Ahora, la configuración `max_insert_threads` surtirá efecto en las tablas Iceberg. [#87407](https://github.com/ClickHouse/ClickHouse/pull/87407) ([alesapin](https://github.com/alesapin)).
* Añade histogramas y métricas dimensionales a `PrometheusMetricsWriter`. De esta forma, el handler `PrometheusRequestHandler` tendrá todas las métricas esenciales y podrá usarse para una recopilación de métricas fiable y con baja sobrecarga en la nube. [#87521](https://github.com/ClickHouse/ClickHouse/pull/87521) ([Miсhael Stetsyuk](https://github.com/mstetsyuk)).
* La función `hasToken` ahora devuelve cero coincidencias para el token vacío (mientras que antes generaba una excepción). [#87564](https://github.com/ClickHouse/ClickHouse/pull/87564) ([Jimmy Aguilar Mena](https://github.com/Ergus)).
* Se añade compatibilidad con índices de texto para los valores de `Array` y `Map` (`mapKeys` y `mapValues`). Las funciones compatibles son `mapContainsKey` y `has`. [#87602](https://github.com/ClickHouse/ClickHouse/pull/87602) ([Elmi Ahmadov](https://github.com/ahmadov)).
* Se añade una nueva métrica `ZooKeeperSessionExpired` que indica el número de sesiones globales de ZooKeeper caducadas. [#87613](https://github.com/ClickHouse/ClickHouse/pull/87613) ([Miсhael Stetsyuk](https://github.com/mstetsyuk)).
* Use el cliente de almacenamiento S3 con ajustes específicos para copias de seguridad (por ejemplo, backup\_slow\_all\_threads\_after\_retryable\_s3\_error) para la copia del lado del servidor (nativa) hacia un destino de copia de seguridad. Marque s3\_slow\_all\_threads\_after\_retryable\_error como obsoleto. [#87660](https://github.com/ClickHouse/ClickHouse/pull/87660) ([Julia Kartseva](https://github.com/jkartseva)).
* Corrige la gestión incorrecta de las configuraciones `max_joined_block_size_rows` y `max_joined_block_size_bytes` durante la serialización del plan de consulta con la opción experimental `make_distributed_plan`. [#87675](https://github.com/ClickHouse/ClickHouse/pull/87675) ([Vladimir Cherkasov](https://github.com/vdimir)).
* La configuración `enable_http_compression` ahora es la predeterminada. Esto significa que, si un cliente acepta compresión HTTP, el servidor la usará. Sin embargo, este cambio tiene ciertas desventajas. El cliente puede solicitar un método de compresión pesado, como `bzip2`, lo cual no es razonable, y aumentará el consumo de recursos del servidor (pero esto solo será visible cuando se transfieran resultados grandes). El cliente puede solicitar `gzip`, que no está tan mal, pero es subóptimo en comparación con `zstd`. Cierra [#71591](https://github.com/ClickHouse/ClickHouse/issues/71591). [#87703](https://github.com/ClickHouse/ClickHouse/pull/87703) ([Alexey Milovidov](https://github.com/alexey-milovidov)).
* Se añadió una nueva configuración, `keeper_hosts`, que expone la lista de hosts de \[Zoo]Keeper a los que ClickHouse puede conectarse. [#87718](https://github.com/ClickHouse/ClickHouse/pull/87718) ([Nikita Mikhaylov](https://github.com/nikitamikhaylov)).
* Añade `ALTER TABLE REWRITE PARTS`: reescribe las partes de la tabla desde cero usando toda la nueva configuración (ya que algunas, como `use_const_adaptive_granularity`, solo se aplicarán a las partes nuevas). [#87774](https://github.com/ClickHouse/ClickHouse/pull/87774) ([Azat Khuzhin](https://github.com/azat)).
* Agregar los valores `from` y `to` a los dashboards del sistema para facilitar las investigaciones históricas. [#87823](https://github.com/ClickHouse/ClickHouse/pull/87823) ([Mikhail f. Shiryaev](https://github.com/Felixoid)).
* Se añade más información para el seguimiento del rendimiento en las consultas SELECT de Iceberg. [#87903](https://github.com/ClickHouse/ClickHouse/pull/87903) ([Daniil Ivanik](https://github.com/divanik)).
* Añade la nueva configuración `joined_block_split_single_row` para reducir el uso de memoria en los hash joins con muchas coincidencias por clave. Esto permite dividir en fragmentos los resultados del hash join incluso dentro de las coincidencias de una sola fila de la tabla izquierda, lo que resulta especialmente útil cuando una fila de la tabla izquierda coincide con miles o millones de filas de la tabla derecha. Antes, todas las coincidencias tenían que materializarse de una sola vez en memoria. Esto reduce el uso máximo de memoria, pero puede aumentar el uso de CPU. [#87913](https://github.com/ClickHouse/ClickHouse/pull/87913) ([Vladimir Cherkasov](https://github.com/vdimir)).
* Mejora de la caché del sistema de archivos: reutilización del iterador de prioridad de la caché entre hilos que reservan espacio en la caché de forma concurrente. [#87914](https://github.com/ClickHouse/ClickHouse/pull/87914) ([Kseniia Sumarokova](https://github.com/kssenii)).
* Se añadió la posibilidad de limitar las solicitudes de `Keeper` (ajuste `max_request_size`, igual que `jute.maxbuffer` para `ZooKeeper`, **OFF** de forma predeterminada por compatibilidad con versiones anteriores; se activará en próximas versiones). [#87952](https://github.com/ClickHouse/ClickHouse/pull/87952) ([Azat Khuzhin](https://github.com/azat)).
* Se corrige `clickhouse-benchmark` para que no incluya trazas de pila en los mensajes de error de manera predeterminada. [#87954](https://github.com/ClickHouse/ClickHouse/pull/87954) ([Ahmed Gouda](https://github.com/0xgouda)).
* Evite usar la carga asíncrona de marks en el thread pool (`load_marks_asynchronously=1`) cuando los marks estén en caché (ya que el pool puede estar saturado y las consultas sufrirán una penalización por ello, incluso si los marks ya están en caché). [#87967](https://github.com/ClickHouse/ClickHouse/pull/87967) ([Azat Khuzhin](https://github.com/azat)).
* Ytsaurus: permitir la creación de tablas/funciones de tabla/diccionarios con un subconjunto de columnas. [#87982](https://github.com/ClickHouse/ClickHouse/pull/87982) ([MikhailBurdukov](https://github.com/MikhailBurdukov)).
* A partir de ahora, `system.zookeeper_connection_log` viene habilitado de forma predeterminada y puede usarse para obtener información sobre las sesiones de Keeper. [#88011](https://github.com/ClickHouse/ClickHouse/pull/88011) ([János Benjamin Antal](https://github.com/antaljanosbenjamin)).
* Hacer que el comportamiento de TCP y HTTP sea coherente cuando se pasan tablas externas duplicadas. HTTP permite pasar una tabla temporal varias veces. [#88032](https://github.com/ClickHouse/ClickHouse/pull/88032) ([Sema Checherinda](https://github.com/CheSema)).
* Se eliminan los MemoryPools personalizados para leer Arrow/ORC/Parquet. Este componente parece innecesario después de [https://github.com/ClickHouse/ClickHouse/pull/84082](https://github.com/ClickHouse/ClickHouse/pull/84082) porque ahora rastreamos todas las asignaciones de memoria en cualquier caso. [#88035](https://github.com/ClickHouse/ClickHouse/pull/88035) ([Nikita Mikhaylov](https://github.com/nikitamikhaylov)).
* Se permite crear una base de datos `Replicated` sin argumentos. [#88044](https://github.com/ClickHouse/ClickHouse/pull/88044) ([Pervakov Grigorii](https://github.com/GrigoryPervakov)).
* Se añadió compatibilidad para conectarse al puerto TLS de clickhouse-keeper y se mantuvieron los nombres de las opciones igual que en clickhouse-client. [#88065](https://github.com/ClickHouse/ClickHouse/pull/88065) ([Pradeep Chhetri](https://github.com/chhetripradeep)).
* Se añadió un nuevo evento de perfil para rastrear cuántas veces se rechazó una fusión en segundo plano por superar los límites de memoria. [#88084](https://github.com/ClickHouse/ClickHouse/pull/88084) ([Grant Holly](https://github.com/grantholly-clickhouse)).
* Se añadió el parámetro opcional `start_value` a la función `generateSerialID` para especificar valores iniciales personalizados para las nuevas series. [#88085](https://github.com/ClickHouse/ClickHouse/pull/88085) ([Manuel](https://github.com/raimannma)).
* Habilita el analizador para validar las expresiones predeterminadas de columna en CREATE/ALTER TABLE. [#88087](https://github.com/ClickHouse/ClickHouse/pull/88087) ([Max Justus Spransy](https://github.com/maxjustus)).
* Mejora interna en la planificación de consultas: uso de JoinStepLogical para `CROSS JOIN`. [#88151](https://github.com/ClickHouse/ClickHouse/pull/88151) ([Vladimir Cherkasov](https://github.com/vdimir)).
* Compatibilidad total con el operador `IS NOT DISTINCT FROM` (`<=>`). [#88155](https://github.com/ClickHouse/ClickHouse/pull/88155) ([simonmichal](https://github.com/simonmichal)).
* Activar de forma predeterminada el perfilador global por muestreo: recopilar stacktraces de todos los hilos cada 10 segundos de tiempo de CPU y de tiempo real. [#88209](https://github.com/ClickHouse/ClickHouse/pull/88209) ([Alexander Tokmakov](https://github.com/tavplubix)).
* Se corrigió la compatibilidad de las operaciones `EXCHANGE TABLES` en tablas con el motor `Alias`. El motor ahora almacena la tabla de destino como nombres de base de datos y de tabla, en lugar de un ID de almacenamiento constante, lo que le permite resolver correctamente la tabla de destino después de los intercambios de tablas. [#88233](https://github.com/ClickHouse/ClickHouse/pull/88233) ([Kai Zhu](https://github.com/nauu)).
* Añade la configuración `temporary_files_buffer_size` para controlar el tamaño del búfer de escritura de archivos temporales. \* Optimiza el consumo de memoria de la operación `scatter` (usada, por ejemplo, en grace hash join) para columnas `LowCardinality`. [#88237](https://github.com/ClickHouse/ClickHouse/pull/88237) ([Vladimir Cherkasov](https://github.com/vdimir)).
* Se añadió compatibilidad para la lectura directa desde índices de texto con réplicas paralelas. Se mejoró el rendimiento de la lectura de índices de texto desde el almacenamiento de objetos. [#88262](https://github.com/ClickHouse/ClickHouse/pull/88262) ([Anton Popov](https://github.com/CurtizJ)).
* Ahora la función `generateSerialID` admite un argumento no constante que contiene el nombre de la serie. Cierra [#83750](https://github.com/ClickHouse/ClickHouse/issues/83750). [#88270](https://github.com/ClickHouse/ClickHouse/pull/88270) ([Alexey Milovidov](https://github.com/alexey-milovidov)).
* Base de datos de catálogos de data lakes para procesamiento distribuido. [#88273](https://github.com/ClickHouse/ClickHouse/pull/88273) ([scanhex12](https://github.com/scanhex12)).
* Actualización del SDK de Azure para incluir la corrección de 'Content-Length' observada en las funcionalidades de copia y creación de contenedores. [#88278](https://github.com/ClickHouse/ClickHouse/pull/88278) ([Smita Kulkarni](https://github.com/SmitaRKulkarni)).
* Hacer que la función lag sea insensible a mayúsculas y minúsculas para mantener la compatibilidad con MySQL. [#88322](https://github.com/ClickHouse/ClickHouse/pull/88322) ([Lonny Kapelushnik](https://github.com/lonnylot)).
* Se agrega la configuración `keeper_server.coordination_settings.check_node_acl_on_remove`. Si está habilitada, antes de eliminar un nodo se verificarán las ACL tanto del propio nodo como del nodo padre. De lo contrario, solo se verificará la ACL del nodo padre. [#88513](https://github.com/ClickHouse/ClickHouse/pull/88513) ([Antonio Andelic](https://github.com/antonio2368)).
* Las columnas `JSON` ahora se muestran con un formato más legible al usar el formato `Vertical`. Cierra [#81794](https://github.com/ClickHouse/ClickHouse/issues/81794). [#88524](https://github.com/ClickHouse/ClickHouse/pull/88524) ([Frank Rosner](https://github.com/FRosner)).
* Almacena los archivos de `clickhouse-client` (p. ej., el historial de consultas) en las ubicaciones descritas en la especificación [XDG Base Directories](https://specifications.freedesktop.org/basedir-spec/latest/index.html), en lugar de en la raíz del directorio personal. `~/.clickhouse-client-history` se seguirá usando si ya existe. [#88538](https://github.com/ClickHouse/ClickHouse/pull/88538) ([Konstantin Bogdanov](https://github.com/thevar1able)).
* Corrige una fuga de memoria provocada por `GLOBAL IN` ([https://github.com/ClickHouse/ClickHouse/issues/88615](https://github.com/ClickHouse/ClickHouse/issues/88615)). [#88617](https://github.com/ClickHouse/ClickHouse/pull/88617) ([pranav mehta](https://github.com/pranavmehta94)).
* Se añadió una sobrecarga a hasAny/hasAllTokens para que acepten una cadena como entrada. [#88679](https://github.com/ClickHouse/ClickHouse/pull/88679) ([George Larionov](https://github.com/george-larionov)).
* Después de este parche, la heurística `to_remove_small_parts_at_right` se ejecutará antes de calcular la puntuación del rango de merge. Antes, el selector de merge elegía el merge wide y luego filtraba por su sufijo. Corrección de: [#85374](https://github.com/ClickHouse/ClickHouse/issues/85374). [#88736](https://github.com/ClickHouse/ClickHouse/pull/88736) ([Mikhail Artemenko](https://github.com/Michicosun)).
* Agrega un paso al script de posinstalación para `clickhouse-keeper` que habilita su inicio al arrancar. [#88746](https://github.com/ClickHouse/ClickHouse/pull/88746) ([YenchangChan](https://github.com/YenchangChan)).
* Comprobar las credenciales en la interfaz web solo al pegarlas, en lugar de hacerlo con cada pulsación de tecla. Esto evita un problema con servidores LDAP mal configurados. Esto cierra [#85777](https://github.com/ClickHouse/ClickHouse/issues/85777). [#88769](https://github.com/ClickHouse/ClickHouse/pull/88769) ([Alexey Milovidov](https://github.com/alexey-milovidov)).
* Limita la longitud del mensaje de excepción cuando se infringe una restricción. En versiones anteriores, podía obtenerse un mensaje de excepción muy largo cuando se insertaba una cadena muy larga, y acababa escribiéndose en el query\_log. Cierra [#87032](https://github.com/ClickHouse/ClickHouse/issues/87032). [#88801](https://github.com/ClickHouse/ClickHouse/pull/88801) ([Alexey Milovidov](https://github.com/alexey-milovidov)).

<div id="bug-fix">
  #### Corrección de errores (mal funcionamiento visible para el usuario en una versión estable oficial)
</div>

* Los resultados de las consultas ALTER solo se validan en el nodo iniciador para las bases de datos Replicated y las tablas replicadas internamente. Esto corrige situaciones en las que una consulta ALTER ya confirmada podía quedarse bloqueada en otros nodos. [#83849](https://github.com/ClickHouse/ClickHouse/pull/83849) ([János Benjamin Antal](https://github.com/antaljanosbenjamin)).
* Limita el número de tareas de cada tipo en `BackgroundSchedulePool`. Evita situaciones en las que todos los slots están ocupados por tareas de un solo tipo, mientras otras tareas sufren inanición. También evita interbloqueos cuando las tareas se esperan entre sí. Esto se controla mediante la configuración del servidor `background_schedule_pool_max_parallel_tasks_per_type_ratio`. [#84008](https://github.com/ClickHouse/ClickHouse/pull/84008) ([Alexander Tokmakov](https://github.com/tavplubix)).
* Se corrigió un problema en GeoParquet que provocaba errores de protocolo en el cliente. [#84020](https://github.com/ClickHouse/ClickHouse/pull/84020) ([Michael Kolupaev](https://github.com/al13n321)).
* Se corrige la resolución de funciones dependientes del host, como shardNum(), en subconsultas en el nodo iniciador. [#84409](https://github.com/ClickHouse/ClickHouse/pull/84409) ([Eduard Karacharov](https://github.com/korowa)).
* Apague correctamente las tablas al recuperar la réplica de la base de datos. Un apagado incorrecto provocaría un LOGICAL\_ERROR en algunos motores de tabla durante la recuperación de la réplica de la base de datos. [#84744](https://github.com/ClickHouse/ClickHouse/pull/84744) ([Antonio Andelic](https://github.com/antonio2368)).
* Verificar los derechos de acceso al generar sugerencias de corrección de errores tipográficos para el nombre de la base de datos. [#85371](https://github.com/ClickHouse/ClickHouse/pull/85371) ([Dmitry Novik](https://github.com/novikd)).
* Se corrigió el manejo incorrecto de fechas anteriores al epoch con fracciones de segundo en varias funciones relacionadas con fecha y hora, como `parseDateTime64BestEffort`, `change{Year,Month,Day}` y `makeDateTime64`. Anteriormente, la parte subsegundo se restaba de los segundos en lugar de sumarse. Por ejemplo, `parseDateTime64BestEffort('1969-01-01 00:00:00.468')` devolvía `1968-12-31 23:59:59.532` en lugar de `1969-01-01 00:00:00.468`. [#85396](https://github.com/ClickHouse/ClickHouse/pull/85396) ([xiaohuanlin](https://github.com/xiaohuanlin)).
* 1. LowCardinality para columnas de hive 2. Completar las columnas de hive antes de las columnas virtuales (necesario para [https://github.com/ClickHouse/ClickHouse/pull/81040](https://github.com/ClickHouse/ClickHouse/pull/81040)) 3. LOGICAL\_ERROR con un formato vacío para hive [#85528](https://github.com/ClickHouse/ClickHouse/issues/85528) 4. Corregir la comprobación de que las columnas de partición de hive sean las únicas columnas 5. Verificar que todas las columnas de hive estén especificadas en el esquema 6. Corrección parcial para parallel\_replicas\_cluster con hive 7. Usar un contenedor ordenado en extractkeyValuePairs para las utilidades de hive (necesario para [https://github.com/ClickHouse/ClickHouse/pull/81040](https://github.com/ClickHouse/ClickHouse/pull/81040)). [#85538](https://github.com/ClickHouse/ClickHouse/pull/85538) ([Arthur Passos](https://github.com/arthurpassos)).
* Se evita la optimización innecesaria del primer argumento de las funciones `IN`, que a veces provocaba un error cuando se utilizaba el mapeo de arrays. [#85546](https://github.com/ClickHouse/ClickHouse/pull/85546) ([Yakov Olkhovskiy](https://github.com/yakov-olkhovskiy)).
* La correspondencia entre los identificadores de origen de Iceberg y los nombres de Parquet no se ajustó al esquema al escribir el archivo Parquet. Este PR procesa el esquema correspondiente a cada archivo de datos de Iceberg, no el actual. [#85829](https://github.com/ClickHouse/ClickHouse/pull/85829) ([Daniil Ivanik](https://github.com/divanik)).
* Se corrige la lectura del tamaño del archivo, separándola de su apertura. Está relacionado con [https://github.com/ClickHouse/ClickHouse/pull/33372](https://github.com/ClickHouse/ClickHouse/pull/33372), que se introdujo en respuesta a un error en los kernels de Linux anteriores a la versión `5.10`. [#85837](https://github.com/ClickHouse/ClickHouse/pull/85837) ([Konstantin Bogdanov](https://github.com/thevar1able)).
* ClickHouse Keeper ya no falla al iniciarse en sistemas donde IPv6 está deshabilitado a nivel del kernel (p. ej., RHEL con ipv6.disable=1). Ahora intenta usar un listener IPv4 como alternativa si falla el listener IPv6 inicial. [#85901](https://github.com/ClickHouse/ClickHouse/pull/85901) ([jskong1124](https://github.com/jskong1124)).
* Este PR cierra [#77990](https://github.com/ClickHouse/ClickHouse/issues/77990). Se agregó compatibilidad para TableFunctionRemote con réplicas paralelas en globalJoin. [#85929](https://github.com/ClickHouse/ClickHouse/pull/85929) ([zoomxi](https://github.com/zoomxi)).
* Se corrige un puntero nulo en OrcSchemaReader::initializeIfNeeded(). Este PR soluciona el siguiente problema: [#85292](https://github.com/ClickHouse/ClickHouse/issues/85292). [#85951](https://github.com/ClickHouse/ClickHouse/pull/85951) ([yanglongwei](https://github.com/ylw510)).
* Añade una comprobación para permitir subconsultas correlacionadas en la cláusula `FROM` solo si usan columnas de la consulta externa. Corrige [#85469](https://github.com/ClickHouse/ClickHouse/issues/85469). Corrige [#85402](https://github.com/ClickHouse/ClickHouse/issues/85402). [#85966](https://github.com/ClickHouse/ClickHouse/pull/85966) ([Dmitry Novik](https://github.com/novikd)).
* Se corrige la actualización mediante ALTER de una columna con una subcolumna usada en la expresión materializada de otra columna. Anteriormente, una columna materializada con una subcolumna en su expresión no se actualizaba correctamente. [#85985](https://github.com/ClickHouse/ClickHouse/pull/85985) ([Pavel Kruglov](https://github.com/Avogar)).
* Prohibir la modificación de columnas cuyas subcolumnas se utilicen en la PK o en la expresión de partición. [#86005](https://github.com/ClickHouse/ClickHouse/pull/86005) ([Pavel Kruglov](https://github.com/Avogar)).
* Se corrige el fallo de los comandos ALTER COLUMN IF EXISTS cuando el estado de una columna cambia dentro de la misma sentencia ALTER. Comandos como DROP COLUMN IF EXISTS, MODIFY COLUMN IF EXISTS, COMMENT COLUMN IF EXISTS y RENAME COLUMN IF EXISTS ahora manejan correctamente los casos en los que una columna es eliminada por un comando previo de la misma sentencia. [#86046](https://github.com/ClickHouse/ClickHouse/pull/86046) ([xiaohuanlin](https://github.com/xiaohuanlin)).
* Se corrige la lectura de subcolumnas con un modo de mapeo de columnas distinto del predeterminado en el almacenamiento DeltaLake. [#86064](https://github.com/ClickHouse/ClickHouse/pull/86064) ([Kseniia Sumarokova](https://github.com/kssenii)).
* Se corrigió el uso de valores predeterminados incorrectos para la ruta con una sugerencia de Enum dentro de JSON. [#86065](https://github.com/ClickHouse/ClickHouse/pull/86065) ([Pavel Kruglov](https://github.com/Avogar)).
* Análisis de la URL del catálogo hive de DataLake con saneamiento de la entrada. Cierra [#86018](https://github.com/ClickHouse/ClickHouse/issues/86018). [#86092](https://github.com/ClickHouse/ClickHouse/pull/86092) ([rajat mohan](https://github.com/rajatmohan22)).
* Se corrigió un error lógico durante el redimensionamiento dinámico de la caché del sistema de archivos. Cierra [#86122](https://github.com/ClickHouse/ClickHouse/issues/86122). Cierra [https://github.com/ClickHouse/clickhouse-core-incidents/issues/473](https://github.com/ClickHouse/clickhouse-core-incidents/issues/473). [#86130](https://github.com/ClickHouse/ClickHouse/pull/86130) ([Kseniia Sumarokova](https://github.com/kssenii)).
* Utiliza `NonZeroUInt64` para `logs_to_keep` en DatabaseReplicatedSettings. [#86142](https://github.com/ClickHouse/ClickHouse/pull/86142) ([Tuan Pham Anh](https://github.com/tuanpach)).
* Una consulta `FINAL` con índice de salto generaba una excepción si la tabla (p. ej., `ReplacingMergeTree`) se había creado con la configuración `index_granularity_bytes = 0`. Ese problema ya se ha corregido. [#86147](https://github.com/ClickHouse/ClickHouse/pull/86147) ([Shankar Iyer](https://github.com/shankar-iyer)).
* Elimina el comportamiento indefinido y corrige problemas en el análisis de la expresión de partición de Iceberg. [#86166](https://github.com/ClickHouse/ClickHouse/pull/86166) ([Daniil Ivanik](https://github.com/divanik)).
* Se corrigió la inferencia de Date/DateTime/DateTime64 para fechas que están fuera del rango admitido. [#86184](https://github.com/ClickHouse/ClickHouse/pull/86184) ([Pavel Kruglov](https://github.com/Avogar)).
* Se corrige un cierre inesperado cuando hay bloques const y no const en un mismo INSERT. [#86230](https://github.com/ClickHouse/ClickHouse/pull/86230) ([Azat Khuzhin](https://github.com/azat)).
* Procesa por defecto las inclusiones de `/etc/metrika.xml` al crear discos desde SQL. [#86232](https://github.com/ClickHouse/ClickHouse/pull/86232) ([alekar](https://github.com/alekar)).
* Se corrige accurateCastOrNull/accurateCastOrDefault al convertir de String a JSON. [#86240](https://github.com/ClickHouse/ClickHouse/pull/86240) ([Pavel Kruglov](https://github.com/Avogar)).
* Se admiten directorios sin '/' en el motor Iceberg. [#86249](https://github.com/ClickHouse/ClickHouse/pull/86249) ([scanhex12](https://github.com/scanhex12)).
* Se corrigió un fallo en replaceRegex con un haystack de tipo FixedString y una needle vacía. [#86270](https://github.com/ClickHouse/ClickHouse/pull/86270) ([Raúl Marín](https://github.com/Algunenano)).
* Se corrige un fallo durante ALTER UPDATE Nullable(JSON). [#86281](https://github.com/ClickHouse/ClickHouse/pull/86281) ([Pavel Kruglov](https://github.com/Avogar)).
* Se corrigió la falta del definidor de columna en system.tables. [#86295](https://github.com/ClickHouse/ClickHouse/pull/86295) ([Raúl Marín](https://github.com/Algunenano)).
* Se corrige la conversión de tipo de LowCardinality(Nullable(T)) a Dynamic. [#86365](https://github.com/ClickHouse/ClickHouse/pull/86365) ([Pavel Kruglov](https://github.com/Avogar)).
* Se corrige un error lógico durante la escritura en DeltaLake. Cierra [#86175](https://github.com/ClickHouse/ClickHouse/issues/86175). [#86367](https://github.com/ClickHouse/ClickHouse/pull/86367) ([Kseniia Sumarokova](https://github.com/kssenii)).
* Se corrigió `416 The range specified is invalid for the current size of the resource. The range specified is invalid for the current size of the resource` al leer blobs vacíos desde Azure blob storage para el disco plain\_rewritable. [#86400](https://github.com/ClickHouse/ClickHouse/pull/86400) ([Julia Kartseva](https://github.com/jkartseva)).
* Corregido GROUP BY Nullable(JSON). [#86410](https://github.com/ClickHouse/ClickHouse/pull/86410) ([Pavel Kruglov](https://github.com/Avogar)).
* Se corrigió un error en las vistas materializadas: una MV podía dejar de funcionar si se creaba, se eliminaba y luego se volvía a crear con el mismo nombre. [#86413](https://github.com/ClickHouse/ClickHouse/pull/86413) ([Alexander Tokmakov](https://github.com/tavplubix)).
* Generar un error si no hay ninguna réplica disponible al leer desde las funciones \*cluster. [#86414](https://github.com/ClickHouse/ClickHouse/pull/86414) ([Julian Maicher](https://github.com/jmaicher)).
* Se corrige la fuga de `MergesMutationsMemoryTracking` debida a las tablas `Buffer` y se corrige `query_views_log` para el streaming desde `Kafka` (y otros). [#86422](https://github.com/ClickHouse/ClickHouse/pull/86422) ([Azat Khuzhin](https://github.com/azat)).
* Se corrige show tables después de eliminar la tabla de referencia del almacenamiento de alias. [#86433](https://github.com/ClickHouse/ClickHouse/pull/86433) ([RinChanNOW](https://github.com/RinChanNOWWW)).
* Se corrige la falta del encabezado de fragmento cuando send\_chunk\_header está habilitado y se invoca una UDF a través del protocolo HTTP. [#86469](https://github.com/ClickHouse/ClickHouse/pull/86469) ([Vladimir Cherkasov](https://github.com/vdimir)).
* Se corrige un posible bloqueo mutuo cuando están habilitados los flushes del perfil de jemalloc. [#86473](https://github.com/ClickHouse/ClickHouse/pull/86473) ([Azat Khuzhin](https://github.com/azat)).
* Se corrige la lectura de subcolumnas en el motor de tabla DeltaLake. Cierra [#86204](https://github.com/ClickHouse/ClickHouse/issues/86204). [#86477](https://github.com/ClickHouse/ClickHouse/pull/86477) ([Kseniia Sumarokova](https://github.com/kssenii)).
* Manejo adecuado del ID del host loopback para evitar colisiones al procesar tareas de DDL:. [#86479](https://github.com/ClickHouse/ClickHouse/pull/86479) ([Tuan Pham Anh](https://github.com/tuanpach)).
* Se corrigió `detach`/`attach` en las tablas del motor de base de datos PostgreSQL con columnas numéricas/decimales. [#86480](https://github.com/ClickHouse/ClickHouse/pull/86480) ([Julian Maicher](https://github.com/jmaicher)).
* Se corrige el uso de memoria sin inicializar en getSubcolumnType. [#86498](https://github.com/ClickHouse/ClickHouse/pull/86498) ([Raúl Marín](https://github.com/Algunenano)).
* Las funciones `searchAny` y `searchAll`, cuando se llaman con patrones vacíos, ahora devuelven `true` (es decir, "coincide con todo"). Antes, devolvían `false`. (issue [#86300](https://github.com/ClickHouse/ClickHouse/issues/86300)). [#86500](https://github.com/ClickHouse/ClickHouse/pull/86500) ([Elmi Ahmadov](https://github.com/ahmadov)).
* Se corrige la función `timeSeriesResampleToGridWithStaleness()` cuando el primer intervalo no tiene ningún valor. [#86507](https://github.com/ClickHouse/ClickHouse/pull/86507) ([Vitaly Baranov](https://github.com/vitlibar)).
* Se corrige el bloqueo causado por establecer `merge_tree_min_read_task_size` en 0. [#86527](https://github.com/ClickHouse/ClickHouse/pull/86527) ([yanglongwei](https://github.com/ylw510)).
* Durante la lectura, el formato de cada archivo de datos se obtiene de los metadatos de Iceberg (antes se obtenía de los argumentos de la tabla). [#86529](https://github.com/ClickHouse/ClickHouse/pull/86529) ([Daniil Ivanik](https://github.com/divanik)).
* Corrige un fallo por el que algunos datos válidos enviados por usuarios a una columna `AggregateFunction(quantileDD)` podían hacer que las fusiones entraran en una recursión infinita. [#86560](https://github.com/ClickHouse/ClickHouse/pull/86560) ([Raphaël Thériault](https://github.com/raphael-theriault-swi)).
* Se corrige que el motor de BD Backup provoque una excepción al ejecutar una consulta con archivos de partes de tamaño cero. [#86563](https://github.com/ClickHouse/ClickHouse/pull/86563) ([Max Justus Spransy](https://github.com/maxjustus)).
* Se corrige la ausencia del encabezado de fragmento cuando send\_chunk\_header está habilitado y la UDF se invoca a través del protocolo HTTP. [#86606](https://github.com/ClickHouse/ClickHouse/pull/86606) ([Vladimir Cherkasov](https://github.com/vdimir)).
* Se corrige el error lógico de S3Queue "Expected current processor {} to be equal to {}", que se producía por la expiración de la sesión de Keeper. [#86615](https://github.com/ClickHouse/ClickHouse/pull/86615) ([Kseniia Sumarokova](https://github.com/kssenii)).
* Errores relacionados con la nulabilidad en insert y pruning. Esto cierra [#86407](https://github.com/ClickHouse/ClickHouse/issues/86407). [#86630](https://github.com/ClickHouse/ClickHouse/pull/86630) ([scanhex12](https://github.com/scanhex12)).
* No desactive la caché del sistema de archivos si la caché de metadatos de Iceberg está desactivada. [#86635](https://github.com/ClickHouse/ClickHouse/pull/86635) ([Daniil Ivanik](https://github.com/divanik)).
* Se corrigió el error 'Deadlock in Parquet::ReadManager (single-threaded)' del lector de Parquet v3. [#86644](https://github.com/ClickHouse/ClickHouse/pull/86644) ([Michael Kolupaev](https://github.com/al13n321)).
* Se corrige el soporte para IPv6 en `listen_host` para ArrowFlight. [#86664](https://github.com/ClickHouse/ClickHouse/pull/86664) ([Vitaly Baranov](https://github.com/vitlibar)).
* Corrige el cierre en el manejador de `ArrowFlight`. Este PR corrige [#86596](https://github.com/ClickHouse/ClickHouse/issues/86596). [#86665](https://github.com/ClickHouse/ClickHouse/pull/86665) ([Vitaly Baranov](https://github.com/vitlibar)).
* Se corrige un problema de las consultas distribuidas con `describe_compact_output=1`. [#86676](https://github.com/ClickHouse/ClickHouse/pull/86676) ([Azat Khuzhin](https://github.com/azat)).
* Se corrigieron el análisis de las definiciones de ventana y la aplicación de los parámetros de consulta. [#86720](https://github.com/ClickHouse/ClickHouse/pull/86720) ([Azat Khuzhin](https://github.com/azat)).
* Se corrigió la excepción `Partition strategy wildcard can not be used without a '_partition_id' wildcard.` al crear una tabla con `PARTITION BY`, pero sin el comodín de partición, algo que solía funcionar en versiones anteriores a la 25.8. Cierra [https://github.com/ClickHouse/clickhouse-private/issues/37567](https://github.com/ClickHouse/clickhouse-private/issues/37567). [#86748](https://github.com/ClickHouse/ClickHouse/pull/86748) ([Kseniia Sumarokova](https://github.com/kssenii)).
* Se corrige LogicalError si las consultas paralelas intentan adquirir un único bloqueo. [#86751](https://github.com/ClickHouse/ClickHouse/pull/86751) ([Pervakov Grigorii](https://github.com/GrigoryPervakov)).
* Corrige la escritura de NULL en los datos JSON compartidos del formato de entrada RowBinary y añade algunas validaciones adicionales en ColumnObject. [#86812](https://github.com/ClickHouse/ClickHouse/pull/86812) ([Pavel Kruglov](https://github.com/Avogar)).
* Compatibilidad con tipos JSON/Dynamic en tablas creadas con la función de tabla `cluster`. [#86821](https://github.com/ClickHouse/ClickHouse/pull/86821) ([Pavel Kruglov](https://github.com/Avogar)).
* Se corrige la permutación vacía de Tuple con límite. [#86828](https://github.com/ClickHouse/ClickHouse/pull/86828) ([Pavel Kruglov](https://github.com/Avogar)).
* No use un nodo de Keeper independiente para los nodos de procesamiento persistentes. Corrección de [https://github.com/ClickHouse/ClickHouse/pull/85995](https://github.com/ClickHouse/ClickHouse/pull/85995). Cierra [#86406](https://github.com/ClickHouse/ClickHouse/issues/86406). [#86841](https://github.com/ClickHouse/ClickHouse/pull/86841) ([Kseniia Sumarokova](https://github.com/kssenii)).
* Se corrigió una tabla del motor TimeSeries que impedía la creación de una nueva réplica en una base de datos Replicated. [#86845](https://github.com/ClickHouse/ClickHouse/pull/86845) ([Nikolay Degterinsky](https://github.com/evillique)).
* Se corrige la consulta a `system.distributed_ddl_queue` en los casos en que faltan ciertos nodos de Keeper en algunas tareas. [#86848](https://github.com/ClickHouse/ClickHouse/pull/86848) ([Antonio Andelic](https://github.com/antonio2368)).
* Se corrigió el reposicionamiento al final del bloque descomprimido. [#86906](https://github.com/ClickHouse/ClickHouse/pull/86906) ([Pavel Kruglov](https://github.com/Avogar)).
* Procesamiento de la excepción que se lanza durante la ejecución asíncrona del iterador de Iceberg. [#86932](https://github.com/ClickHouse/ClickHouse/pull/86932) ([Daniil Ivanik](https://github.com/divanik)).
* Se corrige el guardado de configuraciones XML preprocesadas de gran tamaño. [#86934](https://github.com/ClickHouse/ClickHouse/pull/86934) ([c-end](https://github.com/c-end)).
* Se corrige cómo se rellena el campo `date` en la tabla system.iceberg\_metadata\_log. [#86961](https://github.com/ClickHouse/ClickHouse/pull/86961) ([Daniil Ivanik](https://github.com/divanik)).
* Se corrigió la recalculación infinita de `TTL` con `WHERE`. [#86965](https://github.com/ClickHouse/ClickHouse/pull/86965) ([Anton Popov](https://github.com/CurtizJ)).
* Se corrige el hecho de que el resultado de la función calculada en la CTE fuera no determinista en la consulta. [#86967](https://github.com/ClickHouse/ClickHouse/pull/86967) ([Yakov Olkhovskiy](https://github.com/yakov-olkhovskiy)).
* Se corrige LOGICAL\_ERROR en EXPLAIN con pointInPolygon en columnas de la clave primaria. [#86971](https://github.com/ClickHouse/ClickHouse/pull/86971) ([Michael Kolupaev](https://github.com/al13n321)).
* Se corrigió un posible resultado erróneo de la función `uniqExact` con los modificadores `ROLLUP` y `CUBE`. [#87014](https://github.com/ClickHouse/ClickHouse/pull/87014) ([Nikita Taranov](https://github.com/nickitat)).
* Corrige las tablas de lago de datos cuyo nombre contiene una secuencia codificada en porcentaje. Cierra [#86626](https://github.com/ClickHouse/ClickHouse/issues/86626). [#87020](https://github.com/ClickHouse/ClickHouse/pull/87020) ([Anton Ivashkin](https://github.com/ianton-ru)).
* Se corrigió la resolución del esquema de la tabla con la table function `url()` cuando la configuración `parallel_replicas_for_cluster_functions` está establecida en 1. [#87029](https://github.com/ClickHouse/ClickHouse/pull/87029) ([Konstantin Bogdanov](https://github.com/thevar1able)).
* Aplicar correctamente CAST a la salida de PREWHERE tras dividirla en varios pasos. [#87040](https://github.com/ClickHouse/ClickHouse/pull/87040) ([Antonio Andelic](https://github.com/antonio2368)).
* Se corrigió el funcionamiento de las actualizaciones ligeras con la cláusula `ON CLUSTER`. [#87043](https://github.com/ClickHouse/ClickHouse/pull/87043) ([Anton Popov](https://github.com/CurtizJ)).
* Se corrige la compatibilidad de algunos estados de funciones de agregación con el argumento String. [#87049](https://github.com/ClickHouse/ClickHouse/pull/87049) ([Pavel Kruglov](https://github.com/Avogar)).
* Corrige el comportamiento incorrecto de `IS NULL` en columnas Nullable en `OUTER JOIN` con `optimize_functions_to_subcolumns`; se cierra [#78625](https://github.com/ClickHouse/ClickHouse/issues/78625). [#87058](https://github.com/ClickHouse/ClickHouse/pull/87058) ([Vladimir Cherkasov](https://github.com/vdimir)).
* Soluciona un problema por el que no se transfería el nombre del modelo de OpenAI. [#87100](https://github.com/ClickHouse/ClickHouse/pull/87100) ([Kaushik Iska](https://github.com/iskakaushik)).
* EmbeddedRocksDB: La ruta debe estar dentro de user\_files. [#87109](https://github.com/ClickHouse/ClickHouse/pull/87109) ([Raúl Marín](https://github.com/Algunenano)).
* Se corrigió un problema en las tablas KeeperMap creadas antes de la versión 25.1, que dejaban datos en ZooKeeper después de la consulta DROP. [#87112](https://github.com/ClickHouse/ClickHouse/pull/87112) ([Nikolay Degterinsky](https://github.com/evillique)).
* Corrige la lectura de los ID de campo de maps y arrays al leer Parquet. [#87136](https://github.com/ClickHouse/ClickHouse/pull/87136) ([scanhex12](https://github.com/scanhex12)).
* Se corrige la lectura de Array con la subcolumna de tamaños del array durante la materialización diferida. [#87139](https://github.com/ClickHouse/ClickHouse/pull/87139) ([Pavel Kruglov](https://github.com/Avogar)).
* Se corrigió la contabilización incorrecta de la liberación de datos temporales en el seguimiento del límite `max_temporary_data_on_disk_size`, cierra [#87118](https://github.com/ClickHouse/ClickHouse/issues/87118). [#87140](https://github.com/ClickHouse/ClickHouse/pull/87140) ([JIaQi](https://github.com/JiaQiTang98)).
* La función checkHeaders ahora valida correctamente las cabeceras proporcionadas y rechaza las cabeceras prohibidas. Autor original: Michael Anastasakis (@michael-anastasakis). [#87172](https://github.com/ClickHouse/ClickHouse/pull/87172) ([Raúl Marín](https://github.com/Algunenano)).
* Iguala el comportamiento de `toDate` y `toDate32` para todos los tipos numéricos. Corrige la comprobación de infraflujo de Date32 durante la conversión desde int16. [#87176](https://github.com/ClickHouse/ClickHouse/pull/87176) ([Pervakov Grigorii](https://github.com/GrigoryPervakov)).
* Se corrige la función CASE con argumentos de tipo Dynamic. [#87177](https://github.com/ClickHouse/ClickHouse/pull/87177) ([Pavel Kruglov](https://github.com/Avogar)).
* Corrige un error lógico en las réplicas paralelas para consultas con múltiples JOIN, en particular con RIGHT JOIN después de LEFT/INNER JOIN. [#87178](https://github.com/ClickHouse/ClickHouse/pull/87178) ([Igor Nikonov](https://github.com/devcrafter)).
* Respetar la configuración `input_format_try_infer_variants` en la caché de inferencia de esquemas. [#87180](https://github.com/ClickHouse/ClickHouse/pull/87180) ([Pavel Kruglov](https://github.com/Avogar)).
* Hacer que pathStartsWith solo coincida con las rutas bajo el prefijo. [#87181](https://github.com/ClickHouse/ClickHouse/pull/87181) ([Raúl Marín](https://github.com/Algunenano)).
* Se corrigió la lectura de un Array vacío desde una cadena vacía en CSV. [#87182](https://github.com/ClickHouse/ClickHouse/pull/87182) ([Pavel Kruglov](https://github.com/Avogar)).
* Corrige un posible resultado incorrecto de `EXISTS` no correlacionado. Fallaba con `execute_exists_as_scalar_subquery=1`, que se introdujo en [https://github.com/ClickHouse/ClickHouse/pull/85481](https://github.com/ClickHouse/ClickHouse/pull/85481) y afecta a `25.8`. Soluciona [#86415](https://github.com/ClickHouse/ClickHouse/issues/86415). [#87207](https://github.com/ClickHouse/ClickHouse/pull/87207) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* Se corrigieron errores lógicos en la columna virtual `_row_number` y en las eliminaciones por posición de Iceberg. [#87220](https://github.com/ClickHouse/ClickHouse/pull/87220) ([Michael Kolupaev](https://github.com/al13n321)).
* Se corrige el `LOGICAL_ERROR` "Tamaño demasiado grande pasado al asignador de memoria" en `JOIN` por mezclar bloques const y no const. [#87231](https://github.com/ClickHouse/ClickHouse/pull/87231) ([Azat Khuzhin](https://github.com/azat)).
* Genera un error si iceberg\_metadata\_log no está configurado, pero el usuario intenta obtener información de depuración sobre metadatos de Iceberg. Corrige el acceso a nullptr. [#87250](https://github.com/ClickHouse/ClickHouse/pull/87250) ([Daniil Ivanik](https://github.com/divanik)).
* Se corrigieron las actualizaciones ligeras con subconsultas que leen de otras tablas `MergeTree`. [#87285](https://github.com/ClickHouse/ClickHouse/pull/87285) ([Anton Popov](https://github.com/CurtizJ)).
* Se corrigió la optimización move-to-prewhere, que no funcionaba en presencia de una ROW POLICY. Continuación de [#85118](https://github.com/ClickHouse/ClickHouse/issues/85118). Cierra [#69777](https://github.com/ClickHouse/ClickHouse/issues/69777). Cierra [#83748](https://github.com/ClickHouse/ClickHouse/issues/83748). [#87303](https://github.com/ClickHouse/ClickHouse/pull/87303) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* Se corrigió la aplicación de parches a columnas con expresión predeterminada que no están presentes en las partes de datos. [#87347](https://github.com/ClickHouse/ClickHouse/pull/87347) ([Anton Popov](https://github.com/CurtizJ)).
* Se corrige la actualización de EmbeddedRocksDB. [#87392](https://github.com/ClickHouse/ClickHouse/pull/87392) ([Raúl Marín](https://github.com/Algunenano)).
* Se corrigió la lectura directa desde el índice de texto en el almacenamiento de objetos. [#87399](https://github.com/ClickHouse/ClickHouse/pull/87399) ([Anton Popov](https://github.com/CurtizJ)).
* Evita que se pueda crear un privilegio con un motor inexistente. [#87419](https://github.com/ClickHouse/ClickHouse/pull/87419) ([Jitendra](https://github.com/jitendra1411)).
* Ignorar solo los errores `not found` para `s3_plain_rewritable` (lo que puede ocasionar todo tipo de problemas). [#87426](https://github.com/ClickHouse/ClickHouse/pull/87426) ([Azat Khuzhin](https://github.com/azat)).
* Corrige los diccionarios con origen YTSaurus y layouts \*range\_hashed. [#87490](https://github.com/ClickHouse/ClickHouse/pull/87490) ([MikhailBurdukov](https://github.com/MikhailBurdukov)).
* Se corrige la creación de un array de tuplas vacías. [#87520](https://github.com/ClickHouse/ClickHouse/pull/87520) ([Pavel Kruglov](https://github.com/Avogar)).
* Comprobación de columnas no válidas al crear tablas temporales. [#87524](https://github.com/ClickHouse/ClickHouse/pull/87524) ([Pavel Kruglov](https://github.com/Avogar)).
* Nunca ponga las columnas de partición de Hive en la cabecera del formato. Corrige [#87515](https://github.com/ClickHouse/ClickHouse/issues/87515). [#87528](https://github.com/ClickHouse/ClickHouse/pull/87528) ([Arthur Passos](https://github.com/arthurpassos)).
* Se corrige la preparación para la lectura desde un formato en DeltaLake cuando se utiliza el formato de texto. [#87529](https://github.com/ClickHouse/ClickHouse/pull/87529) ([Pavel Kruglov](https://github.com/Avogar)).
* Corrige la validación de acceso en las operaciones select e insert de las tablas Buffer. [#87545](https://github.com/ClickHouse/ClickHouse/pull/87545) ([pufit](https://github.com/pufit)).
* Impedir la creación de índices de omisión de datos en tablas S3. [#87554](https://github.com/ClickHouse/ClickHouse/pull/87554) ([Bharat Nallan](https://github.com/bharatnc)).
* Evita la fuga de memoria contabilizada en el logging asíncrono (puede provocar una desviación significativa; en 10 horas, \~100GiB) y en text\_log (es posible casi la misma desviación). [#87584](https://github.com/ClickHouse/ClickHouse/pull/87584) ([Azat Khuzhin](https://github.com/azat)).
* Se corrigió un error que podía provocar que las configuraciones globales del servidor se sobrescribieran con las configuraciones de SELECT de una vista o una vista materializada, si esa vista se eliminaba de forma asíncrona y el servidor se reiniciaba antes de que finalizara la limpieza en segundo plano. [#87603](https://github.com/ClickHouse/ClickHouse/pull/87603) ([Alexander Tokmakov](https://github.com/tavplubix)).
* Excluir los bytes de la caché de páginas en espacio de usuario (si es posible) al calcular el aviso de sobrecarga de memoria. [#87610](https://github.com/ClickHouse/ClickHouse/pull/87610) ([Bharat Nallan](https://github.com/bharatnc)).
* Se corrigió un error que hacía que un orden incorrecto de los tipos durante la deserialización de CSV provocara el `LOGICAL_ERROR`. [#87622](https://github.com/ClickHouse/ClickHouse/pull/87622) ([Yarik Briukhovetskyi](https://github.com/yariks5s)).
* Se corrigió el manejo incorrecto de `command_read_timeout` para los diccionarios ejecutables. [#87627](https://github.com/ClickHouse/ClickHouse/pull/87627) ([Azat Khuzhin](https://github.com/azat)).
* Se corrigió el comportamiento incorrecto de SELECT \* REPLACE en la cláusula WHERE al usar el nuevo analizador para filtrar columnas reemplazadas. [#87630](https://github.com/ClickHouse/ClickHouse/pull/87630) ([xiaohuanlin](https://github.com/xiaohuanlin)).
* Se corrigió la agregación en dos niveles al usar `Merge` sobre `Distributed`. [#87687](https://github.com/ClickHouse/ClickHouse/pull/87687) ([c-end](https://github.com/c-end)).
* Se corrige la generación del bloque de salida en el algoritmo HashJoin cuando no se utiliza la lista de filas del lado derecho. Corrige [#87401](https://github.com/ClickHouse/ClickHouse/issues/87401). [#87699](https://github.com/ClickHouse/ClickHouse/pull/87699) ([Dmitry Novik](https://github.com/novikd)).
* El modo de lectura de réplicas paralelas podía elegirse incorrectamente si no había datos que leer tras aplicar el análisis de índices. Cierra [#87653](https://github.com/ClickHouse/ClickHouse/issues/87653). [#87700](https://github.com/ClickHouse/ClickHouse/pull/87700) ([zoomxi](https://github.com/zoomxi)).
* Se corrigió el manejo de las columnas `timestamp` y `timestamptz` en Glue. [#87733](https://github.com/ClickHouse/ClickHouse/pull/87733) ([Andrey Zvonov](https://github.com/zvonand)).
* Con esto se cierra [#86587](https://github.com/ClickHouse/ClickHouse/issues/86587). [#87761](https://github.com/ClickHouse/ClickHouse/pull/87761) ([scanhex12](https://github.com/scanhex12)).
* Corregida la escritura de valores booleanos en la interfaz de PostgreSQL. [#87762](https://github.com/ClickHouse/ClickHouse/pull/87762) ([Artem Yurov](https://github.com/ArtemYurov)).
* Se corrige el error de tabla desconocida en la consulta `insert select` con CTE, [#85368](https://github.com/ClickHouse/ClickHouse/issues/85368). [#87789](https://github.com/ClickHouse/ClickHouse/pull/87789) ([Guang Zhao](https://github.com/zheguang)).
* Se corrigió la lectura de la subcolumna map nula de Variants que no pueden estar dentro de Nullable. [#87798](https://github.com/ClickHouse/ClickHouse/pull/87798) ([Pavel Kruglov](https://github.com/Avogar)).
* Se corrigió el manejo del error cuando no se logra eliminar completamente la base de datos en el clúster en el nodo secundario. [#87802](https://github.com/ClickHouse/ClickHouse/pull/87802) ([Tuan Pham Anh](https://github.com/tuanpach)).
* Corrige varios errores en los índices de omisión. [#87817](https://github.com/ClickHouse/ClickHouse/pull/87817) ([Raúl Marín](https://github.com/Algunenano)).
* En AzureBlobStorage, se actualizó para intentar primero la copia nativa y recurrir a lectura & escritura en caso de error 'Unauthroized' (en AzureBlobStorage, si las cuentas de almacenamiento del origen & el destino son diferentes, obtenemos el error 'Unauthorized'). Y se corrigió la aplicación de "use\_native\_copy" cuando el endpoint está definido en la configuración. [#87826](https://github.com/ClickHouse/ClickHouse/pull/87826) ([Smita Kulkarni](https://github.com/SmitaRKulkarni)).
* ClickHouse se bloquea si el archivo ArrowStream contiene un diccionario no único. [#87863](https://github.com/ClickHouse/ClickHouse/pull/87863) ([Ilya Golshtein](https://github.com/ilejn)).
* Se corrige la fusión con proyecciones si el último bloque está vacío. [#87928](https://github.com/ClickHouse/ClickHouse/pull/87928) ([Raúl Marín](https://github.com/Algunenano)).
* No eliminar funciones inyectivas de GROUP BY si los tipos de los argumentos no están permitidos en GROUP BY. [#87958](https://github.com/ClickHouse/ClickHouse/pull/87958) ([Pavel Kruglov](https://github.com/Avogar)).
* Corrección del descarte incorrecto de gránulos/particiones para claves basadas en fecha y hora al usar la configuración `session_timezone` en las consultas. [#87987](https://github.com/ClickHouse/ClickHouse/pull/87987) ([Eduard Karacharov](https://github.com/korowa)).
* Devuelve el número de filas afectadas tras una consulta en la Interfaz de PostgreSQL. [#87990](https://github.com/ClickHouse/ClickHouse/pull/87990) ([Artem Yurov](https://github.com/ArtemYurov)).
* Restringe el uso de `filter pushdown` en PASTE JOIN porque puede provocar resultados incorrectos. [#88078](https://github.com/ClickHouse/ClickHouse/pull/88078) ([Yarik Briukhovetskyi](https://github.com/yariks5s)).
* Aplica la normalización del URI antes de evaluar la comprobación de grants introducida por [https://github.com/ClickHouse/ClickHouse/pull/84503](https://github.com/ClickHouse/ClickHouse/pull/84503). [#88089](https://github.com/ClickHouse/ClickHouse/pull/88089) ([pufit](https://github.com/pufit)).
* Se corrigió un error lógico cuando ARRAY JOIN COLUMNS() no encuentra ninguna columna en el nuevo analizador. [#88091](https://github.com/ClickHouse/ClickHouse/pull/88091) ([xiaohuanlin](https://github.com/xiaohuanlin)).
* Corregida la advertencia "Uso elevado de memoria de ClickHouse" (sin incluir la caché de páginas). [#88092](https://github.com/ClickHouse/ClickHouse/pull/88092) ([Azat Khuzhin](https://github.com/azat)).
* Se corrigió una posible corrupción de datos en tablas `MergeTree` con `TTL` establecido en una columna. [#88095](https://github.com/ClickHouse/ClickHouse/pull/88095) ([Anton Popov](https://github.com/CurtizJ)).
* Se corrigió un fallo en las funciones `mortonEncode` y `hilbertEncode` al llamarlas con un argumento de tupla vacío. [#88110](https://github.com/ClickHouse/ClickHouse/pull/88110) ([xiaohuanlin](https://github.com/xiaohuanlin)).
* Ahora las consultas `ON CLUSTER` tardarán menos cuando haya réplicas inactivas en el clúster. [#88153](https://github.com/ClickHouse/ClickHouse/pull/88153) ([alesapin](https://github.com/alesapin)).
* Ahora el worker de DDL elimina los hosts obsoletos del conjunto de réplicas. Esto reducirá la cantidad de metadatos almacenados en ZooKeeper. [#88154](https://github.com/ClickHouse/ClickHouse/pull/88154) ([alesapin](https://github.com/alesapin)).
* Deshacer correctamente la operación de mover el directorio en caso de error. Necesitamos reescribir todos los objetos `prefix.path` modificados durante la ejecución, no solo el de la raíz. [#88198](https://github.com/ClickHouse/ClickHouse/pull/88198) ([Mikhail Artemenko](https://github.com/Michicosun)).
* Se corrigió la propagación del indicador `is_shared` en `ColumnLowCardinality`. Puede provocar un resultado incorrecto en `group-by` si se inserta un valor nuevo en una columna después de que los valores hash ya se hayan calculado previamente y almacenado en caché en `ReverseIndex`. [#88213](https://github.com/ClickHouse/ClickHouse/pull/88213) ([Nikita Taranov](https://github.com/nickitat)).
* Corrige el ajuste de carga de trabajo `max_cpu_share`. Ahora puede usarse sin tener configurado el ajuste de carga de trabajo `max_cpus`. [#88217](https://github.com/ClickHouse/ClickHouse/pull/88217) ([Neerav](https://github.com/neeravsalaria)).
* Se corrigió un error por el que mutaciones muy pesadas con subconsultas podían quedar atascadas en la etapa de preparación. Ahora es posible detener estas mutaciones con `SYSTEM STOP MERGES`. [#88241](https://github.com/ClickHouse/ClickHouse/pull/88241) ([alesapin](https://github.com/alesapin)).
* Ahora las subconsultas correlacionadas funcionarán con almacenamiento de objetos. [#88290](https://github.com/ClickHouse/ClickHouse/pull/88290) ([alesapin](https://github.com/alesapin)).
* Evita inicializar bases de datos de DataLake al acceder a `system.projections` y `system.data_skipping_indices`. [#88330](https://github.com/ClickHouse/ClickHouse/pull/88330) ([Azat Khuzhin](https://github.com/azat)).
* Ahora, los catálogos de data lakes solo se mostrarán en las tablas de introspección del sistema si `show_data_lake_catalogs_in_system_tables` se habilita explícitamente. [#88341](https://github.com/ClickHouse/ClickHouse/pull/88341) ([alesapin](https://github.com/alesapin)).
* Se corrigió DatabaseReplicated para que respete la configuración de `interserver_http_host`. [#88378](https://github.com/ClickHouse/ClickHouse/pull/88378) ([xiaohuanlin](https://github.com/xiaohuanlin)).
* Los argumentos posicionales ahora se han deshabilitado explícitamente al definir proyecciones, ya que no tienen sentido en esta etapa interna de la consulta. Esto corrige [#48604](https://github.com/ClickHouse/ClickHouse/issues/48604). [#88380](https://github.com/ClickHouse/ClickHouse/pull/88380) ([Amos Bird](https://github.com/amosbird)).
* Se corrige la complejidad cuadrática en la función `countMatches`. Cierra [#88400](https://github.com/ClickHouse/ClickHouse/issues/88400). [#88401](https://github.com/ClickHouse/ClickHouse/pull/88401) ([Alexey Milovidov](https://github.com/alexey-milovidov)).
* Hace que los comandos `ALTER COLUMN ... COMMENT` para las tablas KeeperMap replicadas queden registrados en los metadatos de la base de datos Replicated y se propaguen a todas las réplicas. Cierra [#88077](https://github.com/ClickHouse/ClickHouse/issues/88077). [#88408](https://github.com/ClickHouse/ClickHouse/pull/88408) ([Eduard Karacharov](https://github.com/korowa)).
* Se corrige un caso de falsa dependencia cíclica con vistas materializadas en Database Replicated, que impedía añadir nuevas réplicas a la base de datos. [#88423](https://github.com/ClickHouse/ClickHouse/pull/88423) ([Nikolay Degterinsky](https://github.com/evillique)).
* Se corrigió la agregación de columnas dispersas cuando `group_by_overflow_mode` está configurado como `any`. [#88440](https://github.com/ClickHouse/ClickHouse/pull/88440) ([Eduard Karacharov](https://github.com/korowa)).
* Se soluciona el error "columna no encontrada" al usar `query_plan_use_logical_join_step=0` con varias cláusulas FULL JOIN USING. Cierra [#88103](https://github.com/ClickHouse/ClickHouse/issues/88103). [#88473](https://github.com/ClickHouse/ClickHouse/pull/88473) ([Vladimir Cherkasov](https://github.com/vdimir)).
* Los clústeres grandes con un número de nodos > 10 tienen una alta probabilidad de que falle la restauración con el error `[941] 67c45db4-4df4-4879-87c5-25b8d1e0d414 <Trace>: RestoreCoordinationOnCluster The version of node /clickhouse/backups/restore-7c551a77-bd76-404c-bad0-3213618ac58e/stage/num_hosts changed (attempt #9), will try again`. Muchos hosts sobrescriben el nodo `num_hosts` al mismo tiempo. La corrección hace dinámica la configuración que controla los intentos. Cierra [#87721](https://github.com/ClickHouse/ClickHouse/issues/87721). [#88484](https://github.com/ClickHouse/ClickHouse/pull/88484) ([Mikhail f. Shiryaev](https://github.com/Felixoid)).
* Este PR es solo para garantizar la compatibilidad con la versión 23.8 y anteriores. Este problema de compatibilidad se introdujo con este PR: [https://github.com/ClickHouse/ClickHouse/pull/54240](https://github.com/ClickHouse/ClickHouse/pull/54240) Este SQL fallará con `enable_analyzer=0` (antes de 23.8, funcionaba correctamente) `select * from t1 s final join ( select * from t2 final ) r final on s.key = r.key join ( select * from t3 final ) c final on s.key = c.key` Porque `JoinToSubqueryTransformVisitor` reescribirá este SQL como `` SELECT `_--s.key` AS `s.key`, `_--s.value` AS `s.value`, `_--r.key` AS `r.key`, `_--r.value` AS `r.value`, `_--c.key` AS `c.key`, `_--c.value` AS `c.value` FROM ( SELECT value AS `_--s.value`, key AS `_--s.key`, r.value AS `_--r.value`, r.key AS `_--r.key` FROM t1 AS s FINAL ALL INNER JOIN ( SELECT key, value FROM t2 FINAL ) AS r FINAL ON `_--s.key` = `_--r.key` ) AS `--.s` ALL INNER JOIN ( SELECT value AS `_--c.value`, key AS `_--c.key` FROM ( SELECT key, value FROM t3 FINAL ) AS c FINAL ) AS `--.t` ON `_--s.key` = `_--c.key` `` Queremos reescribir este SQL como (solo moviendo el último FINAL) `` SELECT `_--s.key` AS `s.key`, `_--s.value` AS `s.value`, `_--r.key` AS `r.key`, `_--r.value` AS `r.value`, `_--c.key` AS `c.key`, `_--c.value` AS `c.value` FROM ( SELECT value AS `_--s.value`, key AS `_--s.key`, r.value AS `_--r.value`, r.key AS `_--r.key` FROM t1 AS s FINAL ALL INNER JOIN ( SELECT key, value FROM t2 FINAL ) AS r FINAL ON `_--s.key` = `_--r.key` ) AS `--.s` ALL INNER JOIN ( SELECT value AS `_--c.value`, key AS `_--c.key` FROM ( SELECT key, value FROM t3 FINAL ) AS c ) AS `--.t` FINAL ON `_--s.key` = `_--c.key` ``. [#88491](https://github.com/ClickHouse/ClickHouse/pull/88491) ([JIaQi](https://github.com/JiaQiTang98)).
* Se corrige el desbordamiento de enteros detectado por UBSAN en el mensaje de error de `accurateCast` al convertir valores grandes a DateTime. [#88520](https://github.com/ClickHouse/ClickHouse/pull/88520) ([xiaohuanlin](https://github.com/xiaohuanlin)).
* Se corrige CoalescingMergeTree para tipos Tuple. Esto cierra [#88469](https://github.com/ClickHouse/ClickHouse/issues/88469). [#88526](https://github.com/ClickHouse/ClickHouse/pull/88526) ([scanhex12](https://github.com/scanhex12)).
* Se prohíben las eliminaciones para `iceberg_format_version=1`. Esto cierra [#88444](https://github.com/ClickHouse/ClickHouse/issues/88444). [#88532](https://github.com/ClickHouse/ClickHouse/pull/88532) ([scanhex12](https://github.com/scanhex12)).
* Este parche corrige la operación de movimiento de los discos `plain-rewritable` para carpetas con cualquier nivel de profundidad. [#88586](https://github.com/ClickHouse/ClickHouse/pull/88586) ([Mikhail Artemenko](https://github.com/Michicosun)).
* Se corrige SQL SECURITY DEFINER con las funciones \*cluster. [#88588](https://github.com/ClickHouse/ClickHouse/pull/88588) ([Julian Maicher](https://github.com/jmaicher)).
* Corrige un posible cierre inesperado causado por la mutación concurrente de las columnas const subyacentes de PREWHERE. [#88605](https://github.com/ClickHouse/ClickHouse/pull/88605) ([Azat Khuzhin](https://github.com/azat)).
* Se corrigió la lectura del índice de texto y se habilitó la caché de condiciones de consulta (con las opciones `use_skip_indexes_on_data_read` y `use_query_condition_cache` habilitadas). [#88660](https://github.com/ClickHouse/ClickHouse/pull/88660) ([Anton Popov](https://github.com/CurtizJ)).
* Una excepción `Poco::TimeoutException` lanzada desde `Poco::Net::HTTPChunkedStreamBuf::readFromDevice` provoca un cierre con SIGABRT. [#88668](https://github.com/ClickHouse/ClickHouse/pull/88668) ([Miсhael Stetsyuk](https://github.com/mstetsyuk)).
* Se corrigió la adición a `system.zookeeper_connection_log` en caso de que ClickHouse se conectara por primera vez tras recargar la configuración. [#88728](https://github.com/ClickHouse/ClickHouse/pull/88728) ([Antonio Andelic](https://github.com/antonio2368)).
* Se corrigió un error por el que la conversión de DateTime64 a Date con `date_time_overflow_behavior = 'saturate'` podía dar resultados incorrectos para valores fuera de rango al trabajar con zonas horarias. [#88737](https://github.com/ClickHouse/ClickHouse/pull/88737) ([Manuel](https://github.com/raimannma)).
* Enésimo intento de corregir el "error de cero bytes" en el motor de tabla S3 con la caché habilitada. [#88740](https://github.com/ClickHouse/ClickHouse/pull/88740) ([Kseniia Sumarokova](https://github.com/kssenii)).
* Corrige la validación de acceso al hacer `select` en la función de tabla `loop`. [#88802](https://github.com/ClickHouse/ClickHouse/pull/88802) ([pufit](https://github.com/pufit)).
* Capturar excepciones cuando falle el logging asíncrono para evitar que el programa se aborte. [#88814](https://github.com/ClickHouse/ClickHouse/pull/88814) ([Raúl Marín](https://github.com/Algunenano)).
