ClickHouse release 18.16.0,发布(同步最新更新)

新功能:

  • DEFAULT以半结构化格式(JSONEachRowTSKV)加载数据时计算缺失字段的表达式。#3555
  • 在查询ALTER TABLE中添加了一个操作,以便在MODIFY ORDER BY同时添加或删除表列时更改排序键。这是一个家庭的表的有用MergeTree,执行在兼并额外的工作,根据排序关键字,诸如SummingMergeTreeAggregatingMergeTree和叔。F.#3581#3755
  • 对于族的表,MergeTree可以指定不同的排序键(ORDER BY)和索引(PRIMARY KEY)。排序键可能比索引长。#3581
  • 添加了表函数hdfs和表引擎,HDFS用于将数据导入和导出到HDFS。chenxing-xc#3617
  • 新增功能与以base64工作:base64Encodebase64DecodetryBase64Decode。Alexander Krasheninnikov#3350
  • 对于聚合函数uniqCombined,可以使用参数调整工作的准确性(选择单元格数HyperLogLog)。#3406
  • 添加了一个表,system.contributors其中包含提交到ClickHouse的每个人的姓名。#3452
  • 添加了不为一次ALTER TABLE ... FREEZE备份所有分区的请求指定分区的功能。#3514
  • 新增功能dictGetdictGetOrDefault而不指定返回值的类型。该类型是从字典描述中自动确定的。阿莫斯鸟#3564
  • 能够在表的描述中为列指定注释并使用其进行更改ALTER。#3377
  • Join在简单键的情况下从表类型读取的能力。阿莫斯鸟#3728
  • 能够指定的设置join_use_nullsmax_rows_in_joinmax_bytes_in_joinjoin_overflow_mode当你创建一个表类型Join。阿莫斯鸟#3728
  • 添加了一个joinGet允许您将类型表Join用作字典的函数。阿莫斯鸟#3728
  • 添加的列partition_keysorting_keyprimary_keysampling_keysystem.tables,提供了关于表的关键信息。#3609
  • 添加的列is_in_partition_keyis_in_sorting_keyis_in_primary_keyis_in_sampling_key在表中system.columns。#3609
  • 添加列min_timemax_time在表中system.parts。如果分区键是类型列的表达式,则会填充这些列DateTime。Emmanuel DonindeRosière#3800

错误修复:

  • 数据类型的更正和性能改进LowCardinalityGROUP BYLowCardinality(Nullable(...))。获得extremes价值 执行更高阶的功能。LEFT ARRAY JOIN。分布式GROUP BY。返回功能Array。履行ORDER BY。进入Distributed桌子(nicelulu)。对INSERT来自实现Native协议的旧客户端的请求的向后兼容性。支持LowCardinalityJOIN。在一个线程中工作时的性能。#3823#3803#3799#3769#3744#3681#3651#3649#3641#3632#3568#3523#3518
  • 固定设置工作select_sequential_consistency。以前,打开设置后,在开始写入新分区后,可能会返回不完整的结果。#2863
  • 当执行数据库的正确指示DDL查询ON CLUSTER,以及执行ALTER UPDATE/DELETE。#3772#3460
  • 在VIEW中正确指示数据库中的子查询。#3521
  • 修复PREWHEREFINALfor for的工作VersionedCollapsingMergeTree。7167bfd7b365538f7a91c4307ad77e552ab4e8c1
  • 能够使用查询KILL QUERY取消由于等待锁表而尚未开始运行的请求。#3517
  • 固定计算的日期和时间,以防钟针在午夜被移回(这发生在伊朗,从1981年到1983年是莫斯科)。以前,这导致了时钟的指针在必要时提前一天翻译,并且导致日期与文本形式的时间格式不正确。#3819
  • 修复了某些案例VIEW和子查询的工作而未指定数据库。张冬#3521
  • 修复竞争条件,同时由于缺少内部表锁而同时读取MATERIALIZED VIEW和删除。#3404#3694MATERIALIZED VIEW``MATERIALIZED VIEW
  • 错误修复Lock handler cannot be nullptr.#3689
  • 启用设置时查询执行的更正compile_expressions(默认情况下禁用) - 删除非确定性常量表达式(如函数)的卷积now。#3457
  • 修复了在函数中指定非常量缩放参数时发生崩溃的问题toDecimal32/64/128
  • 修复了尝试以Values数组格式插入NULL类型列中Array没有元素时的错误Nullable(在case input_format_values_interpret_expressions= 1中)。#3487#3503
  • 修复了DDLWorkerZooKeeper不可用时的连续错误登录问题。8f50c620334988b28018213ec0092fe6423847e2
  • 修复quantile*了类型Date和参数中函数的返回类型DateTime。#3580
  • WITH如果它设置一个没有表达式的简单别名,则修复了段操作。#3570
  • 在启用设置时,修复了对具有命名子查询和限定列名称的查询的处理enable_optimize_predicate_expression。张冬#3588
  • 修复了Attempt to attach to nullptr thread group处理物化视图时的错误。MarekVavruša#3623
  • 发送固定崩溃时,一些无效的函数的自变量arrayReverse。73e3a7b662161d6005e7727d8a711b930386b871
  • 修正了在功能的缓冲区溢出extractURLParameter。提高性能。添加了对包含零字节的字符串的正确处理 141e9799e49201d84ea8e951d1bed4fb6d3dacb5
  • 修正了在功能的缓冲区溢出lowerUTF8upperUTF8。删除了在类型参数上执行这些功能的功能FixedString。#3662
  • 修复了删除类型表时罕见的竞争条件MergeTree。#3680
  • 从类型表Buffer和同时ALTERDROP目标表中读取时修复了竞争条件。#3719
  • 修复了超出限制时的段错误max_temporary_non_const_columns。#3788

改进:

  • 处理后的配置文件由服务器写入,不写入/etc/clickhouse-server/目录,而是写入preprocessed_configs内部目录path。这允许您/etc/clickhouse-server/使用户无法访问目录clickhouse,这样可以提高安全性。#2443
  • min_merge_bytes_to_use_direct_io默认情况下,该设置设置为10 GiB。形成MergeTree系列大型表的合并将在该模式下执行O_DIRECT,从而消除了高速缓存的刷新。#3504
  • 在大量表的情况下加速服务器启动。#3398
  • Keep-Alive为副本之间的连接添加了连接池和HTTP 。#3594
  • 在语法错误请求的情况下,HTTP接口返回代码400 Bad Request(先前返回的代码500)。31bc680ac5f4bb1d0360a8ba4696fa84bb47d6ab
  • join_default_strictness选择ALL兼容性的默认设置进行设置。120e2cbe2ff4fbad626c28042d9b28781c805afe
  • 如果正则表达式不正确或复杂,stderr则从库re2中删除。#3723
  • 对于表引擎Kafka:在从Kafka读取之前检查订阅的可用性; 设置kafka_max_block_size表。MarekVavruša#3396
  • 功能cityHash64farmHash64metroHash64sipHash64halfMD5murmurHash2_32murmurHash2_64murmurHash3_32murmurHash3_64现在工作的参数任意数量,以及为元组的参数。#3451#3519
  • 该函数arrayReverse现在适用于任何类型的数组。73e3a7b662161d6005e7727d8a711b930386b871
  • 添加了可选参数 - 功能的插槽大小timeSlots。Kirill Shvakov#3724
  • 对于FULLRIGHT JOIN,考虑max_block_size来自右表的非附加数据流的设置。阿莫斯鸟#3699
  • clickhouse-benchmarkclickhouse-performance-test添加命令行选项--secure以启用TLS。#3688#3690
  • 如果类型表Buffer的结构与目标表的结构不匹配,则键入转换。维塔利巴拉诺夫#3603
  • 添加了设置tcp_keep_alive_timeout,以便在指定时间间隔内不活动后启用保持活动数据包。#3441
  • system.parts如果表中的分区键值由单个列组成,则删除过多的分区键值引用。#3652
  • 其余的除法函数适用于数据类型DateDateTime。#3385
  • 同义词附加功能POWERLNLCASEUCASEREPLACELOCATESUBSTRMID。#3774#3763某些函数名称不区分大小写,与SQL标准兼容。SUBSTRING(expr FROM start FOR length)为SQL兼容性添加了语法糖。#3804
  • 添加了commit(mlock)与可执行代码对应的内存页面的功能,clickhouse-server以防止它们被强制内存不足。默认情况下禁用该选项。#3553
  • O_DIRECT(启用选项min_bytes_to_use_direct_io)改善了阅读性能。#3405
  • dictGet...OrDefault在常量键参数和非常量默认参数的情况下,改进了函数的性能。阿莫斯鸟#3563
  • 功能firstSignificantSubdomain增加的处理域govmiledu。#3601性能提升。#3628
  • 能够使用c 指定clickhouse-server通过SYS-V init.d-script 运行的任意环境变量。Pavlo Bashynskyi#3612CLICKHOUSE_PROGRAM_ENV``/etc/default/clickhouse
  • init-script clickhouse-server的正确返回码。#3516
  • system.metrics度量标准添加到表中VersionInteger,并在表格的数字表示形式中将system.build_options一行添加到VERSION_INTEGER包含ClickHouse版本的表中18016000。#3644
  • 删除了将类型Date与数字进行比较的功能,以避免错误地date = 2018-12-17指示日期周围的引号的表单的潜在错误。#3687
  • 具有类型状态的函数的行为rowNumberInAllBlocks是固定的- 由于它们在查询分析期间的启动,它们更早地给出了数字。阿莫斯鸟#3729
  • 如果无法删除该文件force_restore_data,则会显示错误消息。阿莫斯鸟#3794

建设改进:

  • 更新jemalloc了修复潜在内存泄漏的库。阿莫斯鸟#3557
  • 对于调试版本,默认情况下启用性能分析jemalloc。2cc82f5cbe266421cd4c1165286c2c47e5ffcb15
  • 添加了运行集成测试的功能(如果仅安装在系统上)Docker。#3650
  • 在SELECT查询中添加了模糊表达式测试。#3442
  • 增加了在线压力测试,可以并行和任意顺序执行功能测试,从而可以检测更多的竞争条件。#3438
  • 改进了在Docker镜像中启动clickhouse-server的方法。Elghazal Ahmed#3663
  • 对于Docker镜像,使用目录中的文件添加了对数据库初始化的支持/docker-entrypoint-initdb.d。康斯坦丁·列别杰夫#3695
  • 修复了ARM下的构建问题。#3709

返回不兼容的更改:

  • 删除了将类型Date与数字进行比较的能力,而是 toDate('2018-12-18') = 17883使用显式类型转换= toDate(17883)#3687

你可能感兴趣的:(ClickHouse release 18.16.0,发布(同步最新更新))