Apache Ignite 2.15.0 版本发布,快照、CDC大幅改进
Apache Ignite 版本发布说明
Apache Ignite 分布式内存数据库 2.15.0
(!) 警告:
- 删除了Ignite节点的Daemon模式;
- 删除了废弃了的ignitevisorcmd工具;
- 删除了遗留的JMX Beans(
ThreadPoolMXBean
、CacheGroupMetricsMXBean
、CacheMetricsMXBean
、PersistenceMetricsMXBean
、DataStorageMetricsMXBean
、DataRegionMetricsMXBean
); - 删除了多余的
ignite-spring
模块的ignite-indexing
模块依赖,如果需要在Ignite中执行SQL,并且使用了Maven,需要明确指定使用哪个SQL引擎:ignite-indexing
或者ignite-calcite
; - 将
ignite-ssh
模块迁移到扩展库; - 废弃了
SqlFieldsQuery
的lazy
标志,该标志的默认值改为true
; - 事务内操作院子缓存默认会被禁止,如果要允许这样的操作,需要将系统属性
IGNITE_ALLOW_ATOMIC_OPS_IN_TX
配置为true
。
Ignite:
- 新增增量快照功能;
- 新增缓存对象转换功能(可用于加密、压缩或者数据过滤);
- 快照支持开启磁盘页面压缩的缓存;
- 快照支持只复制主分区数据的功能;
- 快照恢复过程新增忽略快照检查的选项;
- 当数据流正在进行数据加载时执行快照会抛出异常,无法保证一致性;
- 将快照操作的警告写入元数据存储;
- 新增快照增量页面排序;
- 创建快照时新增分区大小和计数器检查;
- 新增
CONFIGURATION
系统视图; PAGE_LISTS
系统视图新增页面空闲空间列;- 新增杀死客户端连接的API(瘦客户端、JDBC、ODBC);
- 新增页面读时间和页面替换时间的指标;
- 新增瘦客户端分区感知的相关指标;
- 新增禁用CDC的全局属性;
- 新增最大CDC目录大小的配置属性;
- CDC支持过期策略;
- CDC冲突解决期间支持过期时间配置;
CacheJdbcPojoStore
新增对CLOB
和BLOB
类型的支持;- 在Java 15+的环境中,添加了缺失的
--add-opens
; PlatformDotNetSessionLockResult
新增了默认的构造器以避免在部分应用服务器上中ReflectionFactory
的某些问题;- 网络分区处理支持使用已配置的
FailureHandler
; - .NET和C++计算任务支持授权;
- 集群节点的停止/启动/重启操作支持授权;
- SQL的用户管理操作支持授权;
- 新增
ADMIN_CLUSTER_STATE
权限(这是修改集群状态唯一需要的权限); - 通过FQN授予系统计算任务的权限已被预定义的系统权限所取代;
- 改进了再平衡和PME过程的日志;
- JMX导出器现在是默认的指标导出器;
- 优化了索引的重建过程(索引重建过程中禁用了WAL);
- 优化了开启了持久化的大内存区的冻结过程;
- 优化了内存页面的归零处理;
- 修复了JDK17环境下的lambda序列化问题;
- 修复了Windows环境下的磁盘碎片化问题;
- 修复了开启后写的缓存执行
cache.invoke()
方法时的JDBC连接内存泄漏问题; - 修复了当数据条目大于WAL缓冲区大小时原子缓存的数据损坏问题;
- 修复了在非基线节点创建快照方面的一个问题;
- 修复了缓存正在更新数据时的快照不一致问题;
- 修复了多节点配置同一个路径时快照取消方面的一个问题;
- 修复了如果预处理阶段失败导致快照无法恢复的问题;
- 修复了客户端节点崩溃时
ignite-cdc
停止的问题; - 修复了
ignite-cdc.sh
在非默认工作目录中启动失败的问题; - 修复了索引重建过程中CdcMain的状态提交不正确的问题;
- 修复了
ignite-cdc.sh
停止时CdcConsumer
停止的问题; - 修复了在线客户端会话数相关指标不正确的问题;
- 修复了缓存组存储大小相关指标计算不正确的问题(
PagesFillFactor
、TotalUsedPages
、TotalAllocatedPages
); - 修复了
currentTimeMillis
减少时直方图更新断言处理不正确的问题; - 修复了请求失败时REST状态码不正确的问题;
- 修复了执行REST API的GET操作时可能会略过第三方存储的问题;
- 修复了计算任务中某些参数传递方面的问题;
- 修复了配置成对连接时通信SPI可能断言处理不正确的问题;
- 修复了水平再平衡场景的潜在数据丢失问题;
- 修复了启用磁盘页面压缩时CRC计算断言处理不正确的问题;
- 修复了当
cpMapSnapshot.bin
文件损坏时节点启动失败的问题; - 修复了冻结集群后执行检查点会导致存储损坏的问题;
- 修复了冻结集群后条目过期处理会导致存储损坏的问题;
- 修复了缓存停止时执行再平衡操作导致节点故障的问题;
- 修复了同时销毁缓存和回滚事务时的空指针异常;
- 修复了
ClusterGroup.forNodeId
中ID检查不正确的问题; - 修复了瘦客户端重连后关联关系处理不正确的问题;
- 修复了在非并置节点上近缓存创建处理不正确的问题;
- 修复了由于压缩缓冲区大小不足而可能导致的内存损坏问题;
- 修复了在快照验证过程中跳过索引和元存储分区验证的问题;
- 修复了
IndexQuery
中会忽略第一个IN子句后面的条件的问题; - 修复了
LOG_ONLY
和BACKGROUND
模式下WalWritingRate
指标计算不正确的问题; - 将log4j2依赖更新至2.20.0;
- 将Jetty依赖更新至9.4.49.v20220914;
- 将Jackson Databind依赖更新至2.14.0;
- 将postgresql依赖更新至42.5.0;
- 将Netty依赖更新至4.1.89.Final;
- 将Ant依赖更新至1.10.13;
- 将Apache Calcite依赖更新至1.32.0。
控制脚本:
- 新增缓存清理的命令;
- 新增缓存扫描命令;
- 新增一致性修复命令的多分区支持;
idle-verify
命令支持输出损坏的分区列表;idle-verify
命令支持将结果保存到日志文件;idle-verify
命令改进了数据条目的检查;- 新增了配置直方图和命中率指标的命令;
- 新增了强制重新发送CDC数据的命令;
- 新增了删除删除最后断档的CDC段链接的命令;
- 新增了开始和取消快照操作的统一语法;
- 新增从多节点获取视图数据的功能;
- 将日志机制迁移至
IgniteLogger
。
Java瘦客户端:
- 新增了服务端发现功能;
- 新增了
ClientConfiguration.clusterDiscoveryEnabled
配置参数; - 新增了事件监听功能;
- 新增了连接的负载平衡能力(请求时随机打开连接而不是使用默认值);
- 新增了可配置的日志;
- 修复了关闭时挂起的请求竞争问题。
Ignite .NET:
- 新增了服务的默认接口方法支持;
- 新增了原生AOT支持;
- 新增了
IgniteClientConfiguration.EnableClusterDiscovery
配置属性,用于开启和禁用服务端发现; - 修复了使用不同模式对嵌套的可二进制化结构进行编组的问题;
- 修复了Java 15+环境的启动问题;
- 修复了具有近缓存的客户端节点上的平台缓存无效问题;
- 修复了二进制包缺失DLL的问题。
Ignite C++:
- 新增了C++瘦客户端可以使用Java端的持续查询远程过滤器的功能;
- 修复了瘦客户端连接关闭时的SIGSEGV问题。
ODBC:
- 修复了单引号处理方面的问题。
SQL:
- 修复了注释行的冗余查询结果问题;
- 修复了索引扫描的不正确类型转换(例如,当索引字段具有字符串数据类型而搜索行具有数字数据类型时);
- 修复了更新SQL统计信息时发现线程中可能出现死锁的问题。
基于Calcite的SQL引擎:
- 新增了配置全局堆内存配额和查询级堆内存配额的功能;
- 新增了扫描索引的内联键的功能,而无需对数据页进行额外请求;
- 新增了对
SEARCH/SARG
操作的原生支持(这使得包括IN在内的一些条件可以使用索引扫描); - 新增了对
LocalDate/LocalTime
数据类型的支持; - 新增了对布尔类型字段的索引扫描功能;
- 新增了
EVERY/SOME
聚合函数; - 新增了Calcite解析器异常的细节输出;
- 新增了新的的分布类型(部分关联的并置优化);
- 新增了
COUNT(column)
优化(column加上了索引); - 新增了同一字段的合并索引条件优化;
- 新增了min()/max()聚合函数的优化(使用起始/最后索引值);
- 新增了将不相关的筛选器部分推送到表扫描的优化;
- 实现了ODBC/JDBC需要的元数据查询功能;
- 优化了空值的索引扫描;
- 修复了排除过期条目的扫描问题;
- 修复了带偏移量限制的行数统计问题;
- 修复了将数值型转成布尔型的CAST错误问题;
- 修复了在不存在的表上执行DML的空指针问题。

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
Swift Foundation 预览版发布
几个月前,Swift 社区宣布将以纯 Swift 形式重写 Foundation 框架,以改善 Swift 的跨平台开发。近日,基于 Swift 重写的 Foundation 发布了首个 Preview 预览版。 Foundation 框架是苹果 macOS 和 iOS 的基础组件支持核心,几乎所有的 Swift 项目都使用 Foundation 框架,其主要包含了大量常用的 API,为许多基本功能提供了一个基础层,也为编写优秀的 Swift 代码奠定了基础。 发布公告写道,此预览版提供了更快、更安全的 Foundation 实现,并且设立了一个新的 Foundation 工作组来协调 Swift 社区的需求和苹果工程的需要。 新 Foundation 构建了许多类型的 Swift 实现,包括 JSONEncoder、Calendar、TimeZone 和 Locale 等,还有一个名为 FoundationICU 的单独软件包,用于在非 Darwin 平台上提供国际化支持。 此外,这个采用 Swift 编写的新实现在 JSON 解码和日期格式化等多方面比之前的 C 和 Objecti...
- 下一篇
foobar2000 正式发布 2.0
经过漫长的测试,foobar2000 正式发布了 2.0 版本——又是一个有生之年系列,标志着 foobar2000 发布 21 年后终于进入 2.0。 下载地址 Windows:https://www.foobar2000.org/download Mac:https://www.foobar2000.org/mac foobar2000 是一款免费的高级音频播放器软件,包含了一些播放增益支持、低内存占用等基本特色,以及内置支持一些流行的音频格式,支持强大的界面扩展和插件以及出色的音效。其开发者是波兰人 Piotr Pawłowski(英文名 Peter Pawlowski,原 Winamp 公司 Nullsoft 成员)。 除了播放之外,它还支持生成媒体库、转换媒体文件编码、提取 CD 等功能。foobar2000 之所以出现,在于 Peter 不满 Winamp2.x 的插件体系架构和更倾向于图形、朝向外观方向发展的 Winamp 3。 2.0 主要变化 提供 32 位 (旧版本)、64 位和 ARM64 版 在 Windows 10 1809 + 和 Windows 11 上提...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- Docker安装Oracle12C,快速搭建Oracle学习环境
- CentOS7安装Docker,走上虚拟化容器引擎之路
- Linux系统CentOS6、CentOS7手动修改IP地址
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- CentOS关闭SELinux安全模块
- CentOS7编译安装Gcc9.2.0,解决mysql等软件编译问题
- Hadoop3单机部署,实现最简伪集群
- CentOS6,7,8上安装Nginx,支持https2.0的开启