> ## 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 para la v24.12

> Registro de cambios de la versión rápida v24.12

Cambios relevantes para los servicios de ClickHouse Cloud correspondientes a la versión v24.12.

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

* Las funciones `greatest` y `least` ahora ignoran los valores de entrada NULL, mientras que antes devolvían NULL si uno de los argumentos era NULL. Por ejemplo, `SELECT greatest(1, 2, NULL)` ahora devuelve 2. Esto hace que su comportamiento sea compatible con PostgreSQL. [#65519](https://github.com/ClickHouse/ClickHouse/pull/65519) ([kevinyhzou](https://github.com/KevinyhZou)).
* Ya no se permiten tipos Variant/Dynamic en ORDER BY/GROUP BY/PARTITION BY/PRIMARY KEY de forma predeterminada, porque pueden dar lugar a resultados inesperados. [#69731](https://github.com/ClickHouse/ClickHouse/pull/69731) ([Pavel Kruglov](https://github.com/Avogar)).
* Se eliminan las tablas del sistema `generate_series` y `generateSeries`. Se añadieron por error aquí: [#59390](https://github.com/ClickHouse/ClickHouse/issues/59390). [#71091](https://github.com/ClickHouse/ClickHouse/pull/71091) ([Alexey Milovidov](https://github.com/alexey-milovidov)).
* Se elimina `StorageExternalDistributed`. Cierra [#70600](https://github.com/ClickHouse/ClickHouse/issues/70600). [#71176](https://github.com/ClickHouse/ClickHouse/pull/71176) ([flynn](https://github.com/ucasfl)).
* La configuración del servidor (users.xml) ahora también se aplica al cliente. Esto es útil para configuraciones de formato, por ejemplo, `date_time_output_format`. [#71178](https://github.com/ClickHouse/ClickHouse/pull/71178) ([Michael Kolupaev](https://github.com/al13n321)).
* Se corrige un posible error `No such file or directory` debido a símbolos especiales sin escape en archivos de subcolumnas JSON. [#71182](https://github.com/ClickHouse/ClickHouse/pull/71182) ([Pavel Kruglov](https://github.com/Avogar)).
* Los motores de tabla Kafka, NATS y RabbitMQ ahora están cubiertos por sus propios grants en la jerarquía `SOURCES`. Añada grants a cualquier usuario de base de datos no predeterminado que cree tablas con estos tipos de motor. [#71250](https://github.com/ClickHouse/ClickHouse/pull/71250) ([Christoph Wurm](https://github.com/cwurm)).
* Se comprueba la consulta completa de la mutación antes de ejecutarla (incluidas las subconsultas). Esto evita ejecutar accidentalmente una consulta no válida y acumular mutaciones inservibles que bloquean mutaciones válidas. [#71300](https://github.com/ClickHouse/ClickHouse/pull/71300) ([Christoph Wurm](https://github.com/cwurm)).
* Se cambia el nombre de la configuración de la caché del sistema de archivos `skip_download_if_exceeds_query_cache` a `filesystem_cache_skip_download_if_exceeds_per_query_cache_write_limit`. [#71578](https://github.com/ClickHouse/ClickHouse/pull/71578) ([Kseniia Sumarokova](https://github.com/kssenii)).
* Se prohíben los tipos Dynamic/Variant en las funciones min/max para evitar confusiones. [#71761](https://github.com/ClickHouse/ClickHouse/pull/71761) ([Pavel Kruglov](https://github.com/Avogar)).
* Se elimina la compatibilidad con `Enum`, así como con los argumentos `UInt128` y `UInt256` en `deltaSumTimestamp`. También se elimina la compatibilidad con `Int8`, `UInt8`, `Int16` y `UInt16` en el segundo argumento ("timestamp") de `deltaSumTimestamp`. [#71790](https://github.com/ClickHouse/ClickHouse/pull/71790) ([Alexey Milovidov](https://github.com/alexey-milovidov)).
* Se añadió validación de la consulta de origen cuando ClickHouse se usa como origen para un Diccionario. [#72548](https://github.com/ClickHouse/ClickHouse/pull/72548) ([Alexey Katsman](https://github.com/alexkats)).

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

* Se implementa el comando SYSTEM LOAD PRIMARY KEY para cargar los índices primarios de todas las partes de una tabla especificada, o de todas las tablas si no se especifica ninguna. Esto será útil para benchmarks y para evitar latencia adicional durante la ejecución de consultas. [#66252](https://github.com/ClickHouse/ClickHouse/pull/66252) ([ZAWA\_ll](https://github.com/Zawa-ll)).
* Se añadió la instrucción `SYSTEM LOAD PRIMARY KEY` para cargar los índices primarios de todas las partes de una tabla determinada, o de todas las tablas si no se especifica ninguna. Esto puede ser útil para benchmarking y para evitar latencia adicional durante la ejecución de consultas. [#67733](https://github.com/ClickHouse/ClickHouse/pull/67733) ([ZAWA\_ll](https://github.com/Zawa-ll)).
* Añade la consulta `CHECK GRANT` para comprobar si el usuario o rol actual tiene concedido el privilegio específico y si la tabla o columna correspondiente existe en memoria. [#68885](https://github.com/ClickHouse/ClickHouse/pull/68885) ([Unalian](https://github.com/Unalian)).
* Se añadió sintaxis SQL para la gestión de cargas de trabajo y recursos. Consulte la [documentación](/es/concepts/features/configuration/server-config/workload-scheduling). [#69187](https://github.com/ClickHouse/ClickHouse/pull/69187) ([Sergei Trifonov](https://github.com/serxa)).
* El formato de [almacenamiento de datos Iceberg](https://iceberg.apache.org/spec/#file-system-operations) ofrece amplias opciones para modificar el esquema de una tabla. En esta pull request, se ha implementado la lectura de una tabla en formato Iceberg con cambios en el orden de las columnas, los nombres de las columnas y las extensiones simples de tipos. [#69445](https://github.com/ClickHouse/ClickHouse/pull/69445) ([Daniil Ivanik](https://github.com/divanik)).
* Permitir que cada método de autenticación tenga su propia fecha de vencimiento; eliminar la fecha de vencimiento de la entidad de usuario. [#70090](https://github.com/ClickHouse/ClickHouse/pull/70090) ([Arthur Passos](https://github.com/arthurpassos)).
* Envía roles de usuario externos desde el nodo que origina la consulta a otros nodos del clúster. Útil cuando solo ese nodo tiene acceso al autenticador externo (como LDAP). [#70332](https://github.com/ClickHouse/ClickHouse/pull/70332) ([Andrey Zvonov](https://github.com/zvonand)).
* Se permite `alter` de String a JSON. Este PR también cambia la serialización de los tipos JSON y Dynamic a la nueva versión V2. La versión anterior V1 todavía puede usarse habilitando la opción `merge_tree_use_v1_object_and_dynamic_serialization` (puede usarse durante la actualización para poder revertir la versión sin problemas). [#70442](https://github.com/ClickHouse/ClickHouse/pull/70442) ([Pavel Kruglov](https://github.com/Avogar)).
* Se agregó la función `toUnixTimestamp64Second`, que convierte un `DateTime64` en un valor `Int64` con precisión fija de segundos, de modo que se pueda devolver un valor negativo si la fecha es anterior a las 00:00:00 UTC del jueves 1 de enero de 1970. [#70597](https://github.com/ClickHouse/ClickHouse/pull/70597) ([zhanglistar](https://github.com/zhanglistar)).
* Añade la nueva configuración `enforce_index_structure_match_on_partition_manipulation` para permitir ATTACH cuando las proyecciones y los índices secundarios de la tabla de origen sean un subconjunto de los de la tabla de destino. Cierra [#70602](https://github.com/ClickHouse/ClickHouse/issues/70602). [#70603](https://github.com/ClickHouse/ClickHouse/pull/70603) ([zwy991114](https://github.com/zwy991114)).
* La salida de la función `cast` difiere de la de Apache Spark, lo que provoca diferencias en el proyecto Gluten; véase [https://github.com/apache/incubator-gluten/issues/7602](https://github.com/apache/incubator-gluten/issues/7602). Este PR añade una función de compatibilidad para el formato de salida de texto de Spark, desactivada de forma predeterminada. [#70957](https://github.com/ClickHouse/ClickHouse/pull/70957) ([zhanglistar](https://github.com/zhanglistar)).
* Se añadió un nuevo tipo de header para endpoints de S3 para la autenticación de usuarios (`access_header`). Esto permite obtener un header de acceso con la prioridad más baja, que se sobrescribirá con `access_key_id` desde cualquier otra fuente (por ejemplo, un esquema de tabla o una colección nombrada). [#71011](https://github.com/ClickHouse/ClickHouse/pull/71011) ([MikhailBurdukov](https://github.com/MikhailBurdukov)).
* Implementación inicial de los niveles de configuración. [#71145](https://github.com/ClickHouse/ClickHouse/pull/71145) ([Raúl Marín](https://github.com/Algunenano)).
* Se añadió soporte para la cláusula staleness en el operador ORDER BY WITH FILL. [#71151](https://github.com/ClickHouse/ClickHouse/pull/71151) ([Mikhail Artemenko](https://github.com/Michicosun)).
* Implementar un CAST simple de Map/Tuple/Object al nuevo JSON mediante serialización/deserialización a partir de una cadena JSON. [#71320](https://github.com/ClickHouse/ClickHouse/pull/71320) ([Pavel Kruglov](https://github.com/Avogar)).
* Se añadieron alias `anyRespectNulls`, `firstValueRespectNulls` y `anyValueRespectNulls` para la función de agregación `any`. También se añadieron alias `anyLastRespectNulls` y `lastValueRespectNulls` para la función de agregación `anyLast`. Esto permite usar una sintaxis más natural basada únicamente en camel case, en lugar de una sintaxis mixta de camel case y guiones bajos; por ejemplo: `SELECT anyLastRespectNullsStateIf` en lugar de `anyLast_respect_nullsStateIf`. [#71403](https://github.com/ClickHouse/ClickHouse/pull/71403) ([Peter Nguyen](https://github.com/petern48)).
* Se añadió el parámetro de configuración `date_time_utc`, que permite que el formato de los registros JSON admita fechas y horas UTC en formato RFC 3339/ISO8601. [#71560](https://github.com/ClickHouse/ClickHouse/pull/71560) ([Ali](https://github.com/xogoodnow)).
* Se añadió una opción para seleccionar qué lado del join actuará como tabla interna (build) en el plan de consulta. Esto se controla con `query_plan_join_swap_table`, que puede establecerse en `auto`. En este modo, ClickHouse intentará elegir la tabla con el menor número de filas. [#71577](https://github.com/ClickHouse/ClickHouse/pull/71577) ([Vladimir Cherkasov](https://github.com/vdimir)).
* Se optimizó el uso de memoria para los valores de granularidad del índice cuando la granularidad es constante para la parte. Se añadió la posibilidad de seleccionar siempre una granularidad constante para la parte (ajuste `use_const_adaptive_granularity`), lo que ayuda a garantizar que su uso de memoria esté siempre optimizado. Esto resulta útil en workloads grandes (billones de filas en almacenamiento compartido) para evitar el crecimiento constante del uso de memoria provocado por los metadatos (valores de granularidad del índice) de las partes de datos. [#71786](https://github.com/ClickHouse/ClickHouse/pull/71786) ([Anton Popov](https://github.com/CurtizJ)).
* Se implementa `allowed_feature_tier` como un interruptor global para deshabilitar todas las funciones experimentales y beta. [#71841](https://github.com/ClickHouse/ClickHouse/pull/71841) ([Raúl Marín](https://github.com/Algunenano)).
* Se añaden las funciones de tabla `iceberg[S3;HDFS;Azure]Cluster`, `deltaLakeCluster` y `hudiCluster`. [#72045](https://github.com/ClickHouse/ClickHouse/pull/72045) ([Mikhail Artemenko](https://github.com/Michicosun)).
* Se añade la sintaxis `ALTER USER {ADD|MODIFY|DROP SETTING}`, `ALTER USER {ADD|DROP PROFILE}`, y lo mismo para `ALTER ROLE` y `ALTER PROFILE`. [#72050](https://github.com/ClickHouse/ClickHouse/pull/72050) ([pufit](https://github.com/pufit)).
* Se añadió la función `arrayPrAUC`, que calcula el AUC (área bajo la curva) de la curva de precisión y exhaustividad. [#72073](https://github.com/ClickHouse/ClickHouse/pull/72073) ([Emmanuel](https://github.com/emmanuelsdias)).
* Se agregó una caché para el índice primario de las tablas `MergeTree` (puede habilitarse con el ajuste de tabla `use_primary_key_cache`). Si la carga diferida y la caché están habilitadas para el índice primario, este se cargará en la caché bajo demanda (de forma similar a la caché de marcas) en lugar de mantenerse en memoria de forma permanente. Se agregó el precalentamiento del índice primario en inserts/merges/fetches de partes de datos y al reiniciar la tabla (puede habilitarse con el ajuste `prewarm_primary_key_cache`). [#72102](https://github.com/ClickHouse/ClickHouse/pull/72102) ([Anton Popov](https://github.com/CurtizJ)).
* Se añade la función indexOfAssumeSorted para tipos Array. Optimiza la búsqueda en el caso de un Array ordenado de forma no decreciente. [#72517](https://github.com/ClickHouse/ClickHouse/pull/72517) ([Eric Kurbanov](https://github.com/erickurbanov)).
* Permite usar un delimitador como segundo argumento opcional de la función de agregación `groupConcat`. [#72540](https://github.com/ClickHouse/ClickHouse/pull/72540) ([Yarik Briukhovetskyi](https://github.com/yariks5s)).
* Una nueva opción de configuración, `http_response_headers`, que permite personalizar los encabezados de respuesta HTTP. Por ejemplo, puede indicarle al navegador que renderice una imagen almacenada en la base de datos. Esto cierra [#59620](https://github.com/ClickHouse/ClickHouse/issues/59620). [#72656](https://github.com/ClickHouse/ClickHouse/pull/72656) ([Alexey Milovidov](https://github.com/alexey-milovidov)).
* Añade la función `fromUnixTimestamp64Second`, que convierte un valor de timestamp Unix de tipo Int64 en un DateTime64. [#73146](https://github.com/ClickHouse/ClickHouse/pull/73146) ([Robert Schulze](https://github.com/rschu1ze)).

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

* Agrega 2 nuevas configuraciones `short_circuit_function_evaluation_for_nulls` y `short_circuit_function_evaluation_for_nulls_threshold` que permiten ejecutar funciones sobre columnas `Nullable` con evaluación de cortocircuito cuando la proporción de valores NULL en el bloque de datos supera el umbral especificado. Esto significa que la función se ejecutará solo en las filas con valores no nulos. Se aplica solo a las funciones que devuelven un valor NULL para las filas en las que al menos un argumento es NULL. [#60129](https://github.com/ClickHouse/ClickHouse/pull/60129) ([李扬](https://github.com/taiyang-li)).
* Se reduce el uso de memoria de `clickhouse disks remove --recursive` en discos de almacenamiento de objetos. [#67323](https://github.com/ClickHouse/ClickHouse/pull/67323) ([Kirill](https://github.com/kirillgarbar)).
* Ahora ya no se copiarán las columnas de los bloques de entrada para `join_algorithm='parallel_hash'` al distribuirlas entre hilos para su procesamiento en paralelo. [#67782](https://github.com/ClickHouse/ClickHouse/pull/67782) ([Nikita Taranov](https://github.com/nickitat)).
* Se habilita la compilación JIT para más expresiones: `abs`/`bitCount`/`sign`/`modulo`/`pmod`/`isNull`/`isNotNull`/`assumeNotNull`/`to(U)Int*`/`toFloat*`, funciones de comparación (`=`, `<`, `>`, `>=`, `<=`) y funciones lógicas (`and`, `or`). [#70598](https://github.com/ClickHouse/ClickHouse/pull/70598) ([李扬](https://github.com/taiyang-li)).
* Ahora se usará el algoritmo `parallel_hash` (si corresponde) cuando la configuración `join_algorithm` esté establecida en `default`. Las dos alternativas anteriores (`direct` y `hash`) seguirán considerándose cuando no se pueda usar `parallel_hash`. [#70788](https://github.com/ClickHouse/ClickHouse/pull/70788) ([Nikita Taranov](https://github.com/nickitat)).
* Se optimizó el algoritmo de fusión `Replacing` para partes no superpuestas. [#70977](https://github.com/ClickHouse/ClickHouse/pull/70977) ([Anton Popov](https://github.com/CurtizJ)).
* No enumerar las partes detached de los discos readonly y de escritura única en las métricas y en system.detached\_parts. [#71086](https://github.com/ClickHouse/ClickHouse/pull/71086) ([Alexey Milovidov](https://github.com/alexey-milovidov)).
* No calcular las métricas asíncronas pesadas de forma predeterminada. La funcionalidad se introdujo en [#40332](https://github.com/ClickHouse/ClickHouse/issues/40332), pero no conviene tener una tarea pesada en segundo plano cuando solo la necesita un único cliente. [#71087](https://github.com/ClickHouse/ClickHouse/pull/71087) ([Alexey Milovidov](https://github.com/alexey-milovidov)).
* Mejora el rendimiento y la precisión del intervalo de recopilación de system.query\_metric\_log al reducir la sección crítica. [#71473](https://github.com/ClickHouse/ClickHouse/pull/71473) ([Pablo Marcos](https://github.com/pamarcos)).
* Se añade una opción para extraer expresiones comunes de las cláusulas `WHERE` y `ON` con el fin de reducir el número de tablas hash utilizadas durante los JOIN. Se puede habilitar con `optimize_extract_common_expressions = 1`. [#71537](https://github.com/ClickHouse/ClickHouse/pull/71537) ([János Benjamin Antal](https://github.com/antaljanosbenjamin)).
* Permite usar índices en consultas `SELECT` con `LowCardinality(String)`. [#71598](https://github.com/ClickHouse/ClickHouse/pull/71598) ([Yarik Briukhovetskyi](https://github.com/yariks5s)).
* Durante la ejecución de consultas con réplicas paralelas y el plan local habilitado, se omite en los workers el análisis de índices de omisión. El coordinador elegirá los rangos que deben leer los workers en función del análisis de índices realizado por su parte (en el iniciador de la consulta). [#72109](https://github.com/ClickHouse/ClickHouse/pull/72109) ([Igor Nikonov](https://github.com/devcrafter)).
* Se restablece la optimización para leer subcolumnas de una única columna en partes compactas de [https://github.com/ClickHouse/ClickHouse/pull/57631](https://github.com/ClickHouse/ClickHouse/pull/57631). Se eliminó accidentalmente. [#72285](https://github.com/ClickHouse/ClickHouse/pull/72285) ([Pavel Kruglov](https://github.com/Avogar)).
* Se acelera la ordenación de columnas `LowCardinality(String)` mediante la desvirtualización de llamadas en el comparador. [#72337](https://github.com/ClickHouse/ClickHouse/pull/72337) ([Alexander Gololobov](https://github.com/davenger)).
* Se optimiza la función argMin/Max para algunos tipos de datos simples. [#72350](https://github.com/ClickHouse/ClickHouse/pull/72350) ([alesapin](https://github.com/alesapin)).
* Optimiza el bloqueo en el memory tracker mediante bloqueos compartidos para reducir la contención. [#72375](https://github.com/ClickHouse/ClickHouse/pull/72375) ([Jiebin Sun](https://github.com/jiebinn)).
* Se añade una nueva configuración, `use_async_executor_for_materialized_views`. Utiliza la ejecución asíncrona y, potencialmente, multihilo de la consulta de la vista materializada; puede acelerar el procesamiento de vistas durante INSERT, pero también consumir más memoria. [#72497](https://github.com/ClickHouse/ClickHouse/pull/72497) ([alesapin](https://github.com/alesapin)).
* Los valores predeterminados de los ajustes `max_size_to_preallocate_for_aggregation`, `max_size_to_preallocate_for_joins` se aumentaron aún más hasta `10^12`, por lo que la optimización se aplicará en un mayor número de casos. [#72555](https://github.com/ClickHouse/ClickHouse/pull/72555) ([Nikita Taranov](https://github.com/nickitat)).
* Se mejoró el rendimiento de la deserialización de los estados de las funciones de agregación (en el tipo de dato `AggregateFunction` y en las consultas distribuidas). También se mejoró ligeramente el rendimiento del análisis del formato `RowBinary`. [#72818](https://github.com/ClickHouse/ClickHouse/pull/72818) ([Anton Popov](https://github.com/CurtizJ)).

<div id="improvement">
  ## Mejora
</div>

* Las funciones de orden superior con arrays constantes y argumentos capturados constantes devolverán valores constantes. [#58400](https://github.com/ClickHouse/ClickHouse/pull/58400) ([Alexey Milovidov](https://github.com/alexey-milovidov)).
* Optimización de lectura en orden mediante la generación de filas virtuales, para que se lean menos datos durante el merge sort; especialmente útil cuando existen múltiples partes. [#62125](https://github.com/ClickHouse/ClickHouse/pull/62125) ([Shichao Jin](https://github.com/jsc0218)).
* Los nombres de los pasos del plan de ejecución de la consulta (`EXPLAIN PLAN json=1`) y los nombres de los procesadores del pipeline (`EXPLAIN PIPELINE compact=0,graph=1`) ahora tienen un identificador único como sufijo. Esto permite relacionar la salida del profiler de los procesadores y las trazas de OpenTelemetry con la salida de EXPLAIN. [#63518](https://github.com/ClickHouse/ClickHouse/pull/63518) ([qhsong](https://github.com/qhsong)).
* Se añadió la opción de comprobar que el objeto exista después de escribirlo en Azure Blob Storage; esto se controla mediante la configuración `check_objects_after_upload`. [#64847](https://github.com/ClickHouse/ClickHouse/pull/64847) ([Smita Kulkarni](https://github.com/SmitaRKulkarni)).
* Corregir la lógica de use-after-dtor en destroyElements de HashTable. [#65279](https://github.com/ClickHouse/ClickHouse/pull/65279) ([cangyin](https://github.com/cangyin)).
* Usar la base de datos `Atomic` de forma predeterminada en `clickhouse-local`. Resuelve los puntos 1 y 5 de [#50647](https://github.com/ClickHouse/ClickHouse/issues/50647). Cierra [#44817](https://github.com/ClickHouse/ClickHouse/issues/44817). [#68024](https://github.com/ClickHouse/ClickHouse/pull/68024) ([Alexey Milovidov](https://github.com/alexey-milovidov)).
* El búfer de escritura debe cancelarse o finalizarse explícitamente. Las excepciones interrumpen el protocolo HTTP para notificar al cliente de un error. [#68800](https://github.com/ClickHouse/ClickHouse/pull/68800) ([Sema Checherinda](https://github.com/CheSema)).
* Informar sobre los hosts de DDLWorker en ejecución creando replica\_dir y marcando las réplicas como activas en DDLWorker. [#69658](https://github.com/ClickHouse/ClickHouse/pull/69658) ([Tuan Pham Anh](https://github.com/tuanpach)).
* 1. Refactorización de `DDLQueryStatusSource`: - Cambiar el nombre de `DDLQueryStatusSource` a `DistributedQueryStatusSource` y convertirla en una clase base - Crear dos subclases, `DDLOnClusterQueryStatusSource` y `ReplicatedDatabaseQueryStatusSource`, derivadas de `DDLQueryStatusSource`, para consultar respectivamente el estado de las tareas DDL de `DDL On Cluster y de las bases de datos Replicated. 2. Añadir compatibilidad para dejar de esperar a hosts sin conexión en `DDLOnClusterQueryStatusSource\`. [#69660](https://github.com/ClickHouse/ClickHouse/pull/69660) ([Tuan Pham Anh](https://github.com/tuanpach)).
* Se añade una nueva lógica de cancelación: `CancellationChecker` comprueba los tiempos de espera de cada consulta iniciada y las detiene cuando se alcanza el tiempo límite. [#69880](https://github.com/ClickHouse/ClickHouse/pull/69880) ([Yarik Briukhovetskyi](https://github.com/yariks5s)).
* Se eliminó la configuración `allow_experimental_join_condition`, lo que permite las condiciones no equi de forma predeterminada. [#69910](https://github.com/ClickHouse/ClickHouse/pull/69910) ([Vladimir Cherkasov](https://github.com/vdimir)).
* Se habilita `parallel_replicas_local_plan` de forma predeterminada. La creación de un plan local completo en el iniciador de la consulta mejora el rendimiento de las réplicas paralelas con un menor consumo de recursos y ofrece más posibilidades de aplicar optimizaciones de consultas. [#70171](https://github.com/ClickHouse/ClickHouse/pull/70171) ([Igor Nikonov](https://github.com/devcrafter)).
* Se añade la posibilidad de configurar usuario/contraseña en http\_handlers (para `dynamic_query_handler`/`predefined_query_handler`). [#70725](https://github.com/ClickHouse/ClickHouse/pull/70725) ([Azat Khuzhin](https://github.com/azat)).
* Se admite `ALTER TABLE ... MODIFY/RESET SETTING ...` para ciertas configuraciones del almacenamiento S3Queue. [#70811](https://github.com/ClickHouse/ClickHouse/pull/70811) ([Kseniia Sumarokova](https://github.com/kssenii)).
* No llame a la API de almacenamiento de objetos al listar directorios, ya que puede resultar poco rentable. En su lugar, almacene la lista de nombres de archivo en memoria. Como contrapartida, aumentan el tiempo de carga inicial y la memoria necesaria para almacenar los nombres de archivo. [#70823](https://github.com/ClickHouse/ClickHouse/pull/70823) ([Julia Kartseva](https://github.com/jkartseva)).
* Se añadió el parámetro `--threads` a `clickhouse-compressor`, lo que permite comprimir datos en paralelo. [#70860](https://github.com/ClickHouse/ClickHouse/pull/70860) ([Alexey Milovidov](https://github.com/alexey-milovidov)).
* Hacer configurable el tamaño del historial del cliente Replxx. [#71014](https://github.com/ClickHouse/ClickHouse/pull/71014) ([Jiří Kozlovský](https://github.com/jirislav)).
* Se añadió una configuración `prewarm_mark_cache` que permite cargar las marcas en la caché de marcas durante las inserciones, las fusiones, la obtención de partes y al arrancar la tabla. [#71053](https://github.com/ClickHouse/ClickHouse/pull/71053) ([Anton Popov](https://github.com/CurtizJ)).
* Soporte para booleanos en el lector nativo de Parquet. [#71055](https://github.com/ClickHouse/ClickHouse/pull/71055) ([Arthur Passos](https://github.com/arthurpassos)).
* Reintentar ante más errores al interactuar con S3, como "Malformed message". [#71088](https://github.com/ClickHouse/ClickHouse/pull/71088) ([Alexey Milovidov](https://github.com/alexey-milovidov)).
* Se reduce el nivel de log de algunos mensajes sobre S3. [#71090](https://github.com/ClickHouse/ClickHouse/pull/71090) ([Alexey Milovidov](https://github.com/alexey-milovidov)).
* Permite escribir archivos HDFS con espacios. [#71105](https://github.com/ClickHouse/ClickHouse/pull/71105) ([exmy](https://github.com/exmy)).
* `system.session_log` está bastante correcto. Con esto se cierra [#51760](https://github.com/ClickHouse/ClickHouse/issues/51760). [#71150](https://github.com/ClickHouse/ClickHouse/pull/71150) ([Alexey Milovidov](https://github.com/alexey-milovidov)).
* Corrige los `joins RIGHT` / `FULL` en consultas con réplicas paralelas. Ahora, los `joins RIGHT` pueden ejecutarse con réplicas paralelas (la lectura de la tabla derecha se distribuye). Los `joins FULL` no pueden paralelizarse entre nodos y se ejecutan localmente. [#71162](https://github.com/ClickHouse/ClickHouse/pull/71162) ([Igor Nikonov](https://github.com/devcrafter)).
* Se añadieron opciones de configuración que limitan el número de tablas replicadas, diccionarios y vistas. [#71179](https://github.com/ClickHouse/ClickHouse/pull/71179) ([Kirill](https://github.com/kirillgarbar)).
* Corrige [#71227](https://github.com/ClickHouse/ClickHouse/issues/71227). [#71286](https://github.com/ClickHouse/ClickHouse/pull/71286) ([Arthur Passos](https://github.com/arthurpassos)).
* Volcado automático a disco de `GROUP BY`/`ORDER BY` según el uso de memoria del servidor/usuario. Se controla con los ajustes de la consulta `max_bytes_ratio_before_external_group_by`/`max_bytes_ratio_before_external_sort`. [#71406](https://github.com/ClickHouse/ClickHouse/pull/71406) ([Azat Khuzhin](https://github.com/azat)).
* Añade los dashboards por host `Overview (host)` y `Cloud overview (host)` al dashboard avanzado. [#71422](https://github.com/ClickHouse/ClickHouse/pull/71422) ([alesapin](https://github.com/alesapin)).
* La función `translate` ahora permite eliminar caracteres si el argumento `from` contiene más caracteres que el argumento `to`. Ejemplo: `SELECT translate('clickhouse', 'clickhouse', 'CLICK')` ahora devuelve `CLICK`. [#71441](https://github.com/ClickHouse/ClickHouse/pull/71441) ([shuai.xu](https://github.com/shuai-xu)).
* Se añadieron las nuevas funciones `parseDateTime64`, `parseDateTime64OrNull` y `parseDateTime64OrZero`. A diferencia de la función existente `parseDateTime` (y sus variantes), devuelven un valor de tipo `DateTime64` en lugar de `DateTime`. [#71581](https://github.com/ClickHouse/ClickHouse/pull/71581) ([kevinyhzou](https://github.com/KevinyhZou)).
* Reducir en memoria el tamaño del array index\_granularity para disminuir el consumo de memoria de la familia de motores de tabla MergeTree. [#71595](https://github.com/ClickHouse/ClickHouse/pull/71595) ([alesapin](https://github.com/alesapin)).
* Las aplicaciones de línea de comandos resaltarán la sintaxis incluso en sentencias múltiples. [#71622](https://github.com/ClickHouse/ClickHouse/pull/71622) ([Alexey Milovidov](https://github.com/alexey-milovidov)).
* Las aplicaciones de línea de comandos devolverán códigos de salida distintos de cero cuando se produzcan errores. En versiones anteriores, la aplicación `disks` devolvía cero en caso de error, y otras aplicaciones devolvían cero para los errores 256 (`PARTITION_ALREADY_EXISTS`) y 512 (`SET_NON_GRANTED_ROLE`). [#71623](https://github.com/ClickHouse/ClickHouse/pull/71623) ([Alexey Milovidov](https://github.com/alexey-milovidov)).
* El formato `Vertical` (que también se activa cuando terminas tu consulta con `\G`) incorpora las características de los formatos Pretty, como: - resaltar los grupos de miles en los números; - mostrar una indicación legible para el número. [#71630](https://github.com/ClickHouse/ClickHouse/pull/71630) ([Alexey Milovidov](https://github.com/alexey-milovidov)).
* Permite deshabilitar el aumento del búfer en memoria para la caché del sistema de archivos mediante la configuración `filesystem_cache_prefer_bigger_buffer_size`. [#71640](https://github.com/ClickHouse/ClickHouse/pull/71640) ([Kseniia Sumarokova](https://github.com/kssenii)).
* Se añade una configuración independiente, `background_download_max_file_segment_size`, para el tamaño máximo de los segmentos de archivo en las descargas en segundo plano de la caché del sistema de archivos. [#71648](https://github.com/ClickHouse/ClickHouse/pull/71648) ([Kseniia Sumarokova](https://github.com/kssenii)).
* Cambia el valor por defecto de `enable_http_compression` de 0 a 1. Cierra [#71591](https://github.com/ClickHouse/ClickHouse/issues/71591). [#71774](https://github.com/ClickHouse/ClickHouse/pull/71774) ([Peter Nguyen](https://github.com/petern48)).
* Se admite ALTER de Object a JSON. [#71784](https://github.com/ClickHouse/ClickHouse/pull/71784) ([Pavel Kruglov](https://github.com/Avogar)).
* Análisis del tipo JSON ligeramente mejorado: si el bloque actual para la ruta JSON contiene valores de varios tipos, se intentará elegir el tipo más adecuado probando los tipos en un orden especial de best effort. [#71785](https://github.com/ClickHouse/ClickHouse/pull/71785) ([Pavel Kruglov](https://github.com/Avogar)).
* Anteriormente, al leer desde `system.asynchronous_metrics`, había que esperar a que terminara la actualización concurrente. Esto puede llevar mucho tiempo si el sistema está sometido a una carga elevada. Con este cambio, siempre se pueden leer los valores recopilados previamente. [#71798](https://github.com/ClickHouse/ClickHouse/pull/71798) ([Alexander Gololobov](https://github.com/davenger)).
* Se establecieron `polling_max_timeout_ms` en 10 minutos y `polling_backoff_ms` en 30 segundos. [#71817](https://github.com/ClickHouse/ClickHouse/pull/71817) ([Kseniia Sumarokova](https://github.com/kssenii)).
* Consultas como 'SELECT - FROM t LIMIT 1' solían cargar los índices de las partes aunque no se utilizaran. [#71866](https://github.com/ClickHouse/ClickHouse/pull/71866) ([Alexander Gololobov](https://github.com/davenger)).
* Allow\_reorder\_prewhere\_conditions está activado de forma predeterminada con la configuración de compatibilidad anterior. [#71867](https://github.com/ClickHouse/ClickHouse/pull/71867) ([Raúl Marín](https://github.com/Algunenano)).
* No se incremente el contador `ILLEGAL_TYPE_OF_ARGUMENT` en la tabla `system.errors` cuando se utilice la función `bitmapTransform` y los tipos de argumento sean válidos. [#71971](https://github.com/ClickHouse/ClickHouse/pull/71971) ([Dmitry Novik](https://github.com/novikd)).
* Al recuperar datos directamente de un Diccionario mediante el almacenamiento Dictionary, la función de tabla `dictionary` o un `SELECT` directo sobre el propio diccionario, ahora basta con tener el permiso `SELECT` o el permiso `dictGet` para el diccionario. Esto se alinea con intentos anteriores de evitar la elusión de las ACL: [https://github.com/ClickHouse/ClickHouse/pull/57362](https://github.com/ClickHouse/ClickHouse/pull/57362) y [https://github.com/ClickHouse/ClickHouse/pull/65359](https://github.com/ClickHouse/ClickHouse/pull/65359). También hace que este último sea retrocompatible. [#72051](https://github.com/ClickHouse/ClickHouse/pull/72051) ([Nikita Mikhaylov](https://github.com/nikitamikhaylov)).
* En la página HTML del panel avanzado se añadió un selector desplegable para seleccionar el panel desde la tabla `system.dashboards`. [#72081](https://github.com/ClickHouse/ClickHouse/pull/72081) ([Sergei Trifonov](https://github.com/serxa)).
* Respetar `prefer_locahost_replica` al generar el plan para `INSERT ... SELECT` distribuido. [#72190](https://github.com/ClickHouse/ClickHouse/pull/72190) ([filimonov](https://github.com/filimonov)).
* El problema se [describe aquí](https://github.com/ClickHouse/ClickHouse/issues/72091). Azure Iceberg Writer crea archivos de metadatos de Iceberg (así como archivos de manifiesto) que no cumplen las especificaciones. En este PR añadí un intento de leer metadatos del formato Iceberg v1 con el lector v2 (ya que los escriben de esta forma), y agregué un error para cuando no se crean los campos correspondientes en un archivo de manifiesto. [#72277](https://github.com/ClickHouse/ClickHouse/pull/72277) ([Daniil Ivanik](https://github.com/divanik)).
* Los tipos JSON/Dynamic/Variant pasan de experimentales a beta. [#72294](https://github.com/ClickHouse/ClickHouse/pull/72294) ([Pavel Kruglov](https://github.com/Avogar)).
* Ahora se permite `CREATE MATERIALIZED VIEW` con `UNION [ALL]` en la consulta. El comportamiento es el mismo que en una vista materializada con `JOIN`: \**solo la primera tabla de la expresión `SELECT` actuará como desencadenante de la inserción*- , todas las demás tablas se ignorarán. [#72347](https://github.com/ClickHouse/ClickHouse/pull/72347) ([alesapin](https://github.com/alesapin)).
* Acelera las inserciones en MergeTree cuando hay un único valor de la clave de partición dentro del lote insertado. [#72348](https://github.com/ClickHouse/ClickHouse/pull/72348) ([alesapin](https://github.com/alesapin)).
* Se añadió la nueva métrica MergeTreeIndexGranularityInternalArraysTotalSize a system.metrics. Esta métrica es necesaria para encontrar las instancias con conjuntos de datos muy grandes que son susceptibles al problema de alto uso de memoria. [#72490](https://github.com/ClickHouse/ClickHouse/pull/72490) ([Miсhael Stetsyuk](https://github.com/mstetsyuk)).
* Ahora se reconocen todas las variantes de la palabra `Null` cuando la consulta usa `Format Null`. Antes, otras formas (p. ej., `NULL`) no provocaban que se lanzaran excepciones, pero al mismo tiempo el formato `Null` en realidad no se usaba en esos casos. [#72658](https://github.com/ClickHouse/ClickHouse/pull/72658) ([Nikita Taranov](https://github.com/nickitat)).
* Se permiten valores desconocidos en Set que no están presentes en Enum. Se corrige [#72662](https://github.com/ClickHouse/ClickHouse/issues/72662). [#72686](https://github.com/ClickHouse/ClickHouse/pull/72686) ([zhanglistar](https://github.com/zhanglistar)).
* Se añade total\_bytes\_with\_inactive a system.tables para contabilizar los bytes totales de las partes inactivas. [#72690](https://github.com/ClickHouse/ClickHouse/pull/72690) ([Kai Zhu](https://github.com/nauu)).
* Añadir MergeTreeSettings a system.settings\_changes. [#72694](https://github.com/ClickHouse/ClickHouse/pull/72694) ([Raúl Marín](https://github.com/Algunenano)).
* Se admite el operador de búsqueda de cadenas (p. ej., like) para el tipo de datos Enum; se corrige [#72661](https://github.com/ClickHouse/ClickHouse/issues/72661). [#72732](https://github.com/ClickHouse/ClickHouse/pull/72732) ([zhanglistar](https://github.com/zhanglistar)).
* Se admite el tipo JSON en la función notEmpty. [#72741](https://github.com/ClickHouse/ClickHouse/pull/72741) ([Pavel Kruglov](https://github.com/Avogar)).
* Compatibilidad con el análisis del error `AuthenticationRequired` de GCS S3. [#72753](https://github.com/ClickHouse/ClickHouse/pull/72753) ([Vitaly Baranov](https://github.com/vitlibar)).
* Se admite el tipo Dynamic en las funciones ifNull y coalesce. [#72772](https://github.com/ClickHouse/ClickHouse/pull/72772) ([Pavel Kruglov](https://github.com/Avogar)).
* Se añadieron los eventos de perfil `JoinBuildTableRowCount/JoinProbeTableRowCount/JoinResultRowCount`. [#72842](https://github.com/ClickHouse/ClickHouse/pull/72842) ([Vladimir Cherkasov](https://github.com/vdimir)).
* Compatibilidad con Dynamic en las funciones toFloat64/touInt32/etc. [#72989](https://github.com/ClickHouse/ClickHouse/pull/72989) ([Pavel Kruglov](https://github.com/Avogar)).

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

* Las partes deduplicadas durante la consulta `ATTACH PART` ya no quedan bloqueadas con el prefijo `attaching_`. [#65636](https://github.com/ClickHouse/ClickHouse/pull/65636) ([Kirill](https://github.com/kirillgarbar)).
* Corrección del error por el que dateTime64 perdía precisión en la función `IN`. [#67230](https://github.com/ClickHouse/ClickHouse/pull/67230) ([Yarik Briukhovetskyi](https://github.com/yariks5s)).
* Se corrige un posible error lógico al usar funciones con `IGNORE/RESPECT NULLS` en `ORDER BY ... WITH FILL`; se cierra [#57609](https://github.com/ClickHouse/ClickHouse/issues/57609). [#68234](https://github.com/ClickHouse/ClickHouse/pull/68234) ([Vladimir Cherkasov](https://github.com/vdimir)).
* Se corrigieron errores lógicos poco frecuentes en las inserciones asíncronas con formato `Native` cuando se alcanzaba el límite de memoria. [#68965](https://github.com/ClickHouse/ClickHouse/pull/68965) ([Anton Popov](https://github.com/CurtizJ)).
* Se corrigió COMMENT en CREATE TABLE para la columna EPHEMERAL. [#70458](https://github.com/ClickHouse/ClickHouse/pull/70458) ([Yakov Olkhovskiy](https://github.com/yakov-olkhovskiy)).
* Se corrige un error lógico en JSONExtract con LowCardinality(Nullable). [#70549](https://github.com/ClickHouse/ClickHouse/pull/70549) ([Pavel Kruglov](https://github.com/Avogar)).
* Corrige el comportamiento cuando el nombre de la tabla es demasiado largo. [#70810](https://github.com/ClickHouse/ClickHouse/pull/70810) ([Yarik Briukhovetskyi](https://github.com/yariks5s)).
* Se agregó la posibilidad de sobrescribir `Content-Type` con los headers del usuario en el motor URL. [#70859](https://github.com/ClickHouse/ClickHouse/pull/70859) ([Artem Iurin](https://github.com/ortyomka)).
* Se corrigió el error lógico en `StorageS3Queue` "No se puede crear un nodo persistente en /processed porque ya existe". [#70984](https://github.com/ClickHouse/ClickHouse/pull/70984) ([Kseniia Sumarokova](https://github.com/kssenii)).
* Corrige el error por el que no se tenía en cuenta la columna \_row\_exists en la opción de reconstrucción de la eliminación ligera de proyecciones. [#71089](https://github.com/ClickHouse/ClickHouse/pull/71089) ([Shichao Jin](https://github.com/jsc0218)).
* Corrige el valor incorrecto en system.query\_metric\_log debido a una condición de carrera inesperada. [#71124](https://github.com/ClickHouse/ClickHouse/pull/71124) ([Pablo Marcos](https://github.com/pamarcos)).
* Corrige la discrepancia en el nombre de la función de agregación quantileExactWeightedInterpolated. El error se introdujo en [https://github.com/ClickHouse/ClickHouse/pull/69619](https://github.com/ClickHouse/ClickHouse/pull/69619). cc @Algunenano. [#71168](https://github.com/ClickHouse/ClickHouse/pull/71168) ([李扬](https://github.com/taiyang-li)).
* Soluciona la excepción bad\_weak\_ptr con Dynamic al comparar funciones. [#71183](https://github.com/ClickHouse/ClickHouse/pull/71183) ([Pavel Kruglov](https://github.com/Avogar)).
* No elimine un blob cuando haya nodos que lo estén usando en ReplicatedMergeTree con replicación zero-copy. [#71186](https://github.com/ClickHouse/ClickHouse/pull/71186) ([Antonio Andelic](https://github.com/antonio2368)).
* Se corrige un problema por el que se ignoraba la configuración de formato en Native format mediante HTTP y Async Inserts. [#71193](https://github.com/ClickHouse/ClickHouse/pull/71193) ([Pavel Kruglov](https://github.com/Avogar)).
* Las consultas SELECT ejecutadas con la configuración `use_query_cache = 1` ya no se rechazan si el nombre de una tabla del sistema aparece como una cadena literal; por ejemplo, `SELECT - FROM users WHERE name = 'system.metrics' SETTINGS use_query_cache = true;` ahora funciona. [#71254](https://github.com/ClickHouse/ClickHouse/pull/71254) ([Robert Schulze](https://github.com/rschu1ze)).
* Corrige un error que provocaba un aumento del uso de memoria cuando enable\_filesystem\_cache=1, pero el disco de la configuración de almacenamiento no tenía ninguna configuración de caché. [#71261](https://github.com/ClickHouse/ClickHouse/pull/71261) ([Kseniia Sumarokova](https://github.com/kssenii)).
* Corrige el posible error "Cannot read all data" durante la deserialización del diccionario LowCardinality de una columna Dynamic. [#71299](https://github.com/ClickHouse/ClickHouse/pull/71299) ([Pavel Kruglov](https://github.com/Avogar)).
* Se corrige la limpieza incompleta del formato de salida paralelo en el cliente. [#71304](https://github.com/ClickHouse/ClickHouse/pull/71304) ([Raúl Marín](https://github.com/Algunenano)).
* Se añadió el desescapado que faltaba en named collections. Sin esta corrección, clickhouse-server no puede iniciarse. [#71308](https://github.com/ClickHouse/ClickHouse/pull/71308) ([MikhailBurdukov](https://github.com/MikhailBurdukov)).
* Corrige las inserciones asíncronas con bloques vacíos mediante el protocolo nativo. [#71312](https://github.com/ClickHouse/ClickHouse/pull/71312) ([Anton Popov](https://github.com/CurtizJ)).
* Corregir el formato incoherente del AST al conceder permisos con comodines erróneos [#71309](https://github.com/ClickHouse/ClickHouse/issues/71309). [#71332](https://github.com/ClickHouse/ClickHouse/pull/71332) ([pufit](https://github.com/pufit)).
* Verificación de tipos sospechosos y experimentales en las indicaciones de tipo de JSON. [#71369](https://github.com/ClickHouse/ClickHouse/pull/71369) ([Pavel Kruglov](https://github.com/Avogar)).
* Se corrige el error «Invalid number of rows in Chunk with Variant column». [#71388](https://github.com/ClickHouse/ClickHouse/pull/71388) ([Pavel Kruglov](https://github.com/Avogar)).
* Se corrige un fallo en la función de tabla `mongodb` al pasar argumentos incorrectos (p. ej., `NULL`). [#71426](https://github.com/ClickHouse/ClickHouse/pull/71426) ([Vladimir Cherkasov](https://github.com/vdimir)).
* Se corrige un cierre inesperado con optimize\_rewrite\_array\_exists\_to\_has. [#71432](https://github.com/ClickHouse/ClickHouse/pull/71432) ([Raúl Marín](https://github.com/Algunenano)).
* Se corrige el error NoSuchKey durante la reversión de la transacción cuando no se puede crear un directorio para el disco palin\_rewritable. [#71439](https://github.com/ClickHouse/ClickHouse/pull/71439) ([Julia Kartseva](https://github.com/jkartseva)).
* Se corrigió el uso de la configuración `max_insert_delayed_streams_for_parallel_write` en los inserts. Anteriormente funcionaba de forma incorrecta, lo que podía provocar un elevado consumo de memoria en inserts que escriben datos en varias particiones. [#71474](https://github.com/ClickHouse/ClickHouse/pull/71474) ([Anton Popov](https://github.com/CurtizJ)).
* Corrige el posible error `Argument for function must be constant` (analizador antiguo) en los casos en que `arrayJoin` puede aparecer aparentemente en la condición `WHERE`. Regresión después de [https://github.com/ClickHouse/ClickHouse/pull/65414](https://github.com/ClickHouse/ClickHouse/pull/65414). [#71476](https://github.com/ClickHouse/ClickHouse/pull/71476) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* Se evita un fallo en SortCursor con 0 columnas (analizador antiguo). [#71494](https://github.com/ClickHouse/ClickHouse/pull/71494) ([Raúl Marín](https://github.com/Algunenano)).
* Se corrige el error de date32 fuera de rango causado por datos ORC sin inicializar. Para obtener más detalles, consulta [https://github.com/apache/incubator-gluten/issues/7823](https://github.com/apache/incubator-gluten/issues/7823). [#71500](https://github.com/ClickHouse/ClickHouse/pull/71500) ([李扬](https://github.com/taiyang-li)).
* Se corrige el cálculo del tamaño de la columna en la parte wide para los tipos Dynamic y JSON. [#71526](https://github.com/ClickHouse/ClickHouse/pull/71526) ([Pavel Kruglov](https://github.com/Avogar)).
* Corrección del Analyzer cuando una consulta dentro de una vista materializada usa IN con una CTE. Cierra [#65598](https://github.com/ClickHouse/ClickHouse/issues/65598). [#71538](https://github.com/ClickHouse/ClickHouse/pull/71538) ([Maksim Kita](https://github.com/kitaisreal)).
* Devuelve 0 o el carácter predeterminado, en lugar de generar un error, en las funciones bitShift cuando se superan los límites. [#71580](https://github.com/ClickHouse/ClickHouse/pull/71580) ([Pablo Marcos](https://github.com/pamarcos)).
* Corrige las caídas del servidor al usar una vista materializada con ciertos motores. [#71593](https://github.com/ClickHouse/ClickHouse/pull/71593) ([Pervakov Grigorii](https://github.com/GrigoryPervakov)).
* ARRAY JOIN con una estructura de datos anidada, que contiene un alias de un array constante, provocaba la desreferenciación de un puntero nulo. Esto cierra [#71677](https://github.com/ClickHouse/ClickHouse/issues/71677). [#71678](https://github.com/ClickHouse/ClickHouse/pull/71678) ([Alexey Milovidov](https://github.com/alexey-milovidov)).
* Corrige LOGICAL\_ERROR al hacer ALTER con una tupla vacía. Esto soluciona [#71647](https://github.com/ClickHouse/ClickHouse/issues/71647). [#71679](https://github.com/ClickHouse/ClickHouse/pull/71679) ([Amos Bird](https://github.com/amosbird)).
* No transforme el conjunto constante en predicados sobre columnas de partición cuando se use el operador NOT IN. [#71695](https://github.com/ClickHouse/ClickHouse/pull/71695) ([Eduard Karacharov](https://github.com/korowa)).
* Se corrige CAST de LowCardinality(Nullable) a Dynamic. Anteriormente, esto podía provocar el error `Bad cast from type DB::ColumnVector<int> to DB::ColumnNullable`. [#71742](https://github.com/ClickHouse/ClickHouse/pull/71742) ([Pavel Kruglov](https://github.com/Avogar)).
* Se corrige una excepción de `toDayOfWeek` en la condición `WHERE` con una clave primaria de tipo `DateTime64`. [#71849](https://github.com/ClickHouse/ClickHouse/pull/71849) ([Yakov Olkhovskiy](https://github.com/yakov-olkhovskiy)).
* Se corrigió el relleno de valores predeterminados tras el análisis en columnas dispersas. [#71854](https://github.com/ClickHouse/ClickHouse/pull/71854) ([Anton Popov](https://github.com/CurtizJ)).
* Corrige un error de la función GROUPING cuando la entrada es un ALIAS en una tabla distribuida, cierra [#68602](https://github.com/ClickHouse/ClickHouse/issues/68602). [#71855](https://github.com/ClickHouse/ClickHouse/pull/71855) ([Vladimir Cherkasov](https://github.com/vdimir)).
* Se corrigieron las sentencias SELECT que usan la cláusula `WITH TIES` y que podrían no devolver suficientes filas. [#71886](https://github.com/ClickHouse/ClickHouse/pull/71886) ([wxybear](https://github.com/wxybear)).
* Se corrige una excepción de TOO\_LARGE\_ARRAY\_SIZE causada al interpretar erróneamente que una columna evaluada con arrayWithConstant supera el límite de tamaño del array. [#71894](https://github.com/ClickHouse/ClickHouse/pull/71894) ([Udi](https://github.com/udiz)).
* `clickhouse-benchmark` mostraba métricas incorrectas para consultas que tardaban más de un segundo. [#71898](https://github.com/ClickHouse/ClickHouse/pull/71898) ([Alexey Milovidov](https://github.com/alexey-milovidov)).
* Se corrige una condición de carrera entre el indicador de progreso y la tabla de progreso en clickhouse-client. Este problema se manifiesta cuando se usa FROM INFILE. Se interceptan las pulsaciones de teclas durante las consultas INSERT para alternar la visualización de la tabla de progreso. [#71901](https://github.com/ClickHouse/ClickHouse/pull/71901) ([Julia Kartseva](https://github.com/jkartseva)).
* Corregida la serialización de los valores Dynamic en los formatos JSON Pretty. [#71923](https://github.com/ClickHouse/ClickHouse/pull/71923) ([Pavel Kruglov](https://github.com/Avogar)).
* Se corrige la columna rows\_processed de system.s3/azure\_queue\_log, que estaba rota en la versión 24.6. Cierra [#69975](https://github.com/ClickHouse/ClickHouse/issues/69975). [#71946](https://github.com/ClickHouse/ClickHouse/pull/71946) ([Kseniia Sumarokova](https://github.com/kssenii)).
* Se corrigió el caso en el que las funciones `s3`/`s3Cluster` podían devolver un resultado incompleto o lanzar una excepción. Esto ocurría al usar un patrón glob en el URI de s3 (como `pattern/*`) y cuando existía un objeto vacío con la clave `pattern/` (S3 Console crea automáticamente este tipo de objetos). Además, el valor predeterminado de la configuración `s3_skip_empty_files` cambió de `false` a `true`. [#71947](https://github.com/ClickHouse/ClickHouse/pull/71947) ([Nikita Taranov](https://github.com/nickitat)).
* Corrige un fallo en el resaltado de sintaxis de clickhouse-client. Cierra [#71864](https://github.com/ClickHouse/ClickHouse/issues/71864). [#71949](https://github.com/ClickHouse/ClickHouse/pull/71949) ([Nikolay Degterinsky](https://github.com/evillique)).
* Corrige el error `Illegal type` en tablas `MergeTree` con una función binaria monótona en `ORDER BY` cuando el primer argumento es constante. Corrige [#71941](https://github.com/ClickHouse/ClickHouse/issues/71941). [#71966](https://github.com/ClickHouse/ClickHouse/pull/71966) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* Permitir solo consultas SELECT en EXPLAIN AST cuando se usa dentro de una subconsulta. Otros tipos de consultas provocan un error lógico: 'Bad cast from type DB::ASTCreateQuery to DB::ASTSelectWithUnionQuery' o `Inconsistent AST formatting`. [#71982](https://github.com/ClickHouse/ClickHouse/pull/71982) ([Pavel Kruglov](https://github.com/Avogar)).
* Al insertar un registro con `clickhouse-client`, el cliente lee las descripciones de las columnas desde el servidor. Pero había un error: las escribíamos en un orden incorrecto; debería ser \[statistics, ttl, settings]. [#71991](https://github.com/ClickHouse/ClickHouse/pull/71991) ([Han Fei](https://github.com/hanfei1991)).
* Se corrige el formato de los comandos ALTER `MOVE PARTITION ... TO TABLE ...` cuando `format_alter_commands_with_parentheses` está habilitado. [#72080](https://github.com/ClickHouse/ClickHouse/pull/72080) ([János Benjamin Antal](https://github.com/antaljanosbenjamin)).
* Se añade el nombre del formato inferido a la consulta CREATE en los motores File/S3/URL/HDFS/Azure. Anteriormente, el nombre del formato se infería cada vez que se reiniciaba el servidor y, si se eliminaban los archivos de datos especificados, esto provocaba errores durante el arranque del servidor. [#72108](https://github.com/ClickHouse/ClickHouse/pull/72108) ([Pavel Kruglov](https://github.com/Avogar)).
* Se corrigió un error por el que `min_age_to_force_merge_on_partition_only` se quedaba atascado al intentar fusionar repetidamente la misma partición, que ya se había fusionado en una sola parte, y no fusionaba las particiones que tenían varias partes. [#72209](https://github.com/ClickHouse/ClickHouse/pull/72209) ([Christoph Wurm](https://github.com/cwurm)).
* Se corrigió un bloqueo en `SimpleSquashingChunksTransform` que se producía en casos poco frecuentes al procesar columnas dispersas. [#72226](https://github.com/ClickHouse/ClickHouse/pull/72226) ([Vladimir Cherkasov](https://github.com/vdimir)).
* Se corrigió una condición de carrera en `GraceHashJoin` debido a la cual podían faltar algunas filas en el resultado del join. [#72233](https://github.com/ClickHouse/ClickHouse/pull/72233) ([Nikita Taranov](https://github.com/nickitat)).
* Se corrigieron las consultas `ALTER DELETE` con la columna materializada `_block_number` (si la configuración `enable_block_number_column` está activada). [#72261](https://github.com/ClickHouse/ClickHouse/pull/72261) ([Anton Popov](https://github.com/CurtizJ)).
* Se corrigió una condición de carrera de datos al llamar a `ColumnDynamic::dumpStructure()` de forma concurrente, por ejemplo, en el constructor de `ConcurrentHashJoin`. [#72278](https://github.com/ClickHouse/ClickHouse/pull/72278) ([Nikita Taranov](https://github.com/nickitat)).
* Se corrige un posible `LOGICAL_ERROR` con columnas duplicadas en `ORDER BY ... WITH FILL`. [#72387](https://github.com/ClickHouse/ClickHouse/pull/72387) ([Vladimir Cherkasov](https://github.com/vdimir)).
* Se corrigieron incompatibilidades de tipos en varios casos tras aplicar `optimize_functions_to_subcolumns`. [#72394](https://github.com/ClickHouse/ClickHouse/pull/72394) ([Anton Popov](https://github.com/CurtizJ)).
* Se corrige un fallo en el análisis de las consultas `BACKUP DATABASE db EXCEPT TABLES db.table`. [#72429](https://github.com/ClickHouse/ClickHouse/pull/72429) ([Konstantin Bogdanov](https://github.com/thevar1able)).
* No permitir crear un Variant vacío. [#72454](https://github.com/ClickHouse/ClickHouse/pull/72454) ([Pavel Kruglov](https://github.com/Avogar)).
* Se corrige el formato incorrecto de `result_part_path` en `system.merges`. [#72567](https://github.com/ClickHouse/ClickHouse/pull/72567) ([Konstantin Bogdanov](https://github.com/thevar1able)).
* Se corrige el análisis de un glob con un solo elemento. [#72572](https://github.com/ClickHouse/ClickHouse/pull/72572) ([Konstantin Bogdanov](https://github.com/thevar1able)).
* Se corrige la generación de consultas para el servidor follower en caso de una consulta distribuida con ARRAY JOIN. Corrige [#69276](https://github.com/ClickHouse/ClickHouse/issues/69276). [#72608](https://github.com/ClickHouse/ClickHouse/pull/72608) ([Dmitry Novik](https://github.com/novikd)).
* Se corrige un error que hacía que DateTime64 en DateTime64 no devolviera nada. [#72640](https://github.com/ClickHouse/ClickHouse/pull/72640) ([Yarik Briukhovetskyi](https://github.com/yariks5s)).
* Corrige el error "No such key" en el modo Unordered de S3Queue cuando la configuración `tracked_files_limit` es menor que la tasa de aparición de archivos en S3. [#72738](https://github.com/ClickHouse/ClickHouse/pull/72738) ([Kseniia Sumarokova](https://github.com/kssenii)).
* Descartar la mark cache puede llevar un tiempo considerable si es grande. Si mantenemos el mutex de Context durante este proceso, se bloquean muchas otras actividades; ni siquiera se pueden establecer nuevas conexiones de cliente hasta que se libere. Y, en realidad, no es necesario mantener este mutex para la sincronización; basta con tener una referencia local a la caché mediante shared ptr. [#72749](https://github.com/ClickHouse/ClickHouse/pull/72749) ([Alexander Gololobov](https://github.com/davenger)).
* La caché de PK estaba subestimando en gran medida su tamaño en una de las instancias de prueba. En particular, las columnas LowCardinality no incluían el tamaño del diccionario. La solución es usar column->allocatedBytes() más algunas estimaciones adicionales de sobrecarga para el tamaño de la entrada de caché. [#72750](https://github.com/ClickHouse/ClickHouse/pull/72750) ([Alexander Gololobov](https://github.com/davenger)).
* Se corrigió la excepción lanzada en RemoteQueryExecutor cuando el usuario no existe localmente. [#72759](https://github.com/ClickHouse/ClickHouse/pull/72759) ([Andrey Zvonov](https://github.com/zvonand)).
* Se corrigieron las mutaciones con la columna materializada `_block_number` (si está habilitada la configuración `enable_block_number_column`). [#72854](https://github.com/ClickHouse/ClickHouse/pull/72854) ([Anton Popov](https://github.com/CurtizJ)).
* Se corrigió la copia de seguridad/restauración con un disco regrabable simple en caso de que haya archivos vacíos en la copia de seguridad. [#72858](https://github.com/ClickHouse/ClickHouse/pull/72858) ([Kseniia Sumarokova](https://github.com/kssenii)).
* Cancelar correctamente las inserciones en DistributedAsyncInsertDirectoryQueue. [#72885](https://github.com/ClickHouse/ClickHouse/pull/72885) ([Antonio Andelic](https://github.com/antonio2368)).
* Se corrigió un fallo al analizar datos incorrectos en columnas dispersas (puede ocurrir con la configuración `enable_parsing_to_custom_serialization` habilitada). [#72891](https://github.com/ClickHouse/ClickHouse/pull/72891) ([Anton Popov](https://github.com/CurtizJ)).
* Se corrige un posible bloqueo durante la restauración de una copia de seguridad. [#72947](https://github.com/ClickHouse/ClickHouse/pull/72947) ([Kseniia Sumarokova](https://github.com/kssenii)).
* Se corrigió un error en el método `parallel_hash` de JOIN que podía aparecer cuando la consulta incluía una condición compleja en la cláusula `ON` con filtros de desigualdad. [#72993](https://github.com/ClickHouse/ClickHouse/pull/72993) ([Nikita Taranov](https://github.com/nickitat)).
* Use la configuración predeterminada de formato durante el análisis de JSON para evitar errores de deserialización. [#73043](https://github.com/ClickHouse/ClickHouse/pull/73043) ([Pavel Kruglov](https://github.com/Avogar)).
* Se corrige un fallo en transacciones con almacenamiento no admitido. [#73045](https://github.com/ClickHouse/ClickHouse/pull/73045) ([Raúl Marín](https://github.com/Algunenano)).
* Se comprueban las claves JSON duplicadas durante el análisis de Tuple. Anteriormente, esto podía provocar el error lógico `Invalid number of rows in Chunk` durante el análisis. [#73082](https://github.com/ClickHouse/ClickHouse/pull/73082) ([Pavel Kruglov](https://github.com/Avogar)).
