本文将为您介绍Hologres各版本相关缺陷的修复记录,包括问题描述、影响程度等。您可以通过报错或问题描述,检查您当前的业务中是否产生了相关问题,提前进行问题规避。建议加入实时数仓Hologres交流群联系对应技术支持协助您将产品升级到最新版本,详情请参见如何获取更多的在线支持?。
背景信息
缺陷及修复说明
缺陷内容向下穿透:当前版本存在的缺陷,在之前的版本中均存在。
例如,V1.3版本中存在某缺陷,在V1.1或V0.10等版本中大多数存在,少数不存在场景有明确标注。
缺陷修复向上包含:当前版本修复后的缺陷,在之后的版本中均已修复。
例如,V1.1版本中已修复的某缺陷,在V1.1或V1.3等版本中均已修复。
缺陷等级说明
P0:建议立即升级,一旦触发会影响线上的使用(如查询正确性、写入成功率等操作)。
P1:推荐升级,提前规避相关问题。
P2:选择性升级,偶尔发生的问题,具备应该改写方法,或重启即可修复。
2026年缺陷
2026年7月
严重等级 | 报错/问题描述 | 缺陷原因 | 出现版本 | 修复版本 | 规避建议 |
P1 | Hologres 仅部分功能支持 | 用户能错误地成功执行不支持的 | V4.2.0~V4.2.9 | V4.2.10 |
|
2026年6月
严重等级 | 报错/问题描述 | 缺陷原因 | 出现版本 | 修复版本 | 规避建议 |
P0 | 逻辑分区表更新部分主键时,flush数据可能导致实例重启 | 逻辑分区表在更新主键场景存在缺陷 | V3.1.1 | V3.2.29、V3.1.43 | 升级到最新版本。 |
P0 | 数据写入过程中报错 | 内存表memtable分区数限制检查存在缺陷,未正确统计本次待写入分区数,导致Worker自杀 | V4.0.1 | V4.1.21、V4.2.2、V4.0.37 |
2026年5月
严重等级 | 报错/问题描述 | 缺陷原因 | 出现版本 | 修复版本 | 规避建议 |
P1 | 对开启Binlog的表执行Rebuild时,有概率出现接入节点卡住,实例不可用 | Rebuild底层在处理开启Binlog的表时存在缺陷 | V4.1.1 | V4.1.21 |
|
P2 | 连接实例时在options内设置多项配置会使得连接失败或配置值错误。如连接时设置options为 | 网关模块处理options字段时错误地忽略了空格 |
|
|
|
2026年4月
严重等级 | 报错/问题描述 | 缺陷原因 | 出现版本 | 修复版本 | 规避建议 |
P2 | 使用数据脱敏 V2版本查询含有脱敏表的VIEW时可能错误地出现 | 数据脱敏对于权限拦截错误导致报错 |
|
| 升级到最新版本。 |
P1 | 创建了全局二级索引(Global Index)的表执行DML时,如果执行计划使用Shard Prune算子,会报错 | 全局二级索引暂不支持处理Shard Prune算子 | V4.0.1 | 待修复 |
|
2026年3月
严重等级 | 报错/问题描述 | 缺陷原因 | 出现版本 | 修复版本 | 规避建议 |
P1 | 全文倒排索引的短语检索模式时,如果设置slot参数大于255,检索结果可能不正确。 | 全文倒排索引针对slot大于255时的匹配逻辑存在缺陷。 | V4.0.1 | V4.1.9 |
|
P2 | 动态表incremental刷新模式下,Volatile函数下接Agg且Volatile不在最后一列时,刷新失败。报错:
| distribution key list被带到内层查询,但distribution key list对应的是最终output column,与内层列无法对应。 | V3.1 |
|
|
P2 | 加载Table Group到计算组时,FE可能获取不全SE shard location信息,导致FixedFE写入失败,影响时长约1秒。 | 函数 | V1.1 |
|
|
P2 | 当array列变长类型超过64MB时进行攒批,报错 | mutable array只reserve了一行,但append进来的array超过1行;当text列超过64MB时,builder大小被reserve成一行,没有考虑到最小值。 | V4.0 |
|
|
P2 | 用户执行SQL时阿里云账号名不能自动转换为ID,如 |
|
| V3.0.53 |
|
P2 | 批量copy处理时共享内存可能写满,报错 | copy批量模式将客户端数据按行数攒批写入共享内存,用户作业单条数据较大(每批约600MB),多连接同时写入时可能将共享内存用满,导致后续数据写入失败或读取侧因溢出读取到非法值导致进程崩溃。 | V1.1 |
|
|
P2 | Parquet读数组列时,因page index跳页导致报错。打开page index(默认打开),SQL读数组列且有谓词下推到parquet reader并因此有任意列的任意页被过滤时可能触发。 | page index跳页逻辑与数组列读取存在兼容性问题,当谓词过滤导致页跳过时,数组列的读取状态未能正确同步。 | V3.1 |
|
|
P2 | Fixed plan模式下,INSERT ON CONFLICT语句中WHERE条件为常量时结果不正确。执行 | 当WHERE条件为常量表达式时,未能正确进行条件改写,导致符合条件的数据无法写入。 | V4.0 |
|
|
P2 | Parquet reader无法处理空row group,读到包含0行的row group时报错,错误信息被抛回用户侧。Hologres V3.1及以上版本可能表现为coredump,栈中包含 | reader内部假设row group中一定包含数据(非0行),在处理空row group时,解析数据页返回eof时被忽略,导致错误处理逻辑被触发。 | V3.0 |
|
|
P0 | bulkload提交空文件导致flush失败。bulkload提交了一个file size为0的文件,导致后续的flush打开这个文件读meta时失败。 | bulkload触发deletion compaction时,被pick的文件中所有行都被标记删除,产生空文件。 | V3.1 |
|
|
P2 | 二级索引包含bool类型时,Fixed plan写入报错。创建global index并insert时报错: | fixed dispatcher不支持bool类型在二级索引中的写入。 | V4.0.0 |
|
|
P2 | Holo FDW跨实例查询失败。升级4.0后使用外表查询时报错: | FDW加载缓存的shard location值时失败。 | V4.0.6 |
|
|
P2 | 从脱敏表写入数据到含自增列的目标表时出现非预期行为。在Hologres V4.0及以前版本,从脱敏表写入到另一个表时,如果目标表存在自增列,会出现coredump或报错行为异常。 | 代码假设parsetree->targetList和rte_insert->insertedCols一一对应,但当目标表含有自增列时假设不成立。parsetree->targetList包含自增列和用户明确写入的列,而rte_insert->insertedCols只包含用户明确写入的列。 | V3.1 |
|
|
P2 | Array Ref接口线程不安全导致coredump。从Hologres V2.2开始,worker级别shuffle和QE v2的shuffle逻辑中,多线程访问array->type时可能出现coredump,array的type字段变为非法值。 | ArrayRef的获取type接口虽标记为const,但使用mutable关键字使成员变量type_可改。多线程同时获取type时可能破坏type_的control block,导致线程安全问题。 | V3.1 |
|
|
P2 | 已创建的Dynamic table执行alter definition加列时报错。base表为物理分区表、DT为逻辑分区表时,对DT执行alter definition报错: | create流程中已关闭GUC忽略QO分区数检查,但alter definition流程未同步该逻辑。 | V3.1 |
|
|
P2 | 创建External Dynamic table时报主键重复错误。当External DT的select query中join或union多个相同表时,生成的base table list包含重复项,插入系统表时报错: | dt和external dt都存在该问题。dt的系统表没有主键所以插入重复记录未报错,但external dt的系统表有主键约束,不允许插入重复记录。 | V4.0 | V4.0.13 |
|
P2 | char(n)类型数据执行聚合查询时报错。开启AQE后执行 | ORCA中对于输出结果为char类型的agg未推导type_modifier字段,导致agg结果的char类型type_modifier被置为-5(即4294967291)。开启AQE时尝试创建char(4294967291)类型字段,超出长度限制导致报错。 | V3.1 |
|
|
P2 | view中包含无别名子查询时,snapshot SQL执行失败。在view的select语句中使用了subquery alias optional功能(子查询未指定别名)后,执行 | pg从view rule中推导view definition sql时未强制给subquery指定别名。当用户的view中subquery alias未指定别名时,推导出的view definition sql也没有给subquery指定名字,但target list中却指定了名字,导致sql解析失败。 | V4.0 |
|
|
P1 | Paimon DV表按PK group后出现重复记录。当Parquet文件中存在物理格式为FIXED_LEN_BYTE_ARRAY、逻辑格式为decimal且编码格式为plain的page,读取该列的record batch跨越页边界时,仅该record batch中页边界之后的数据会被错误放置于record batch开始处。 | Parquet decoder放置数据时未加上偏移量,导致record batch跨越页边界时数据位置错误。 | V3.1.0 |
|
|
P2 | MC表切换成Common Table链路后,Auto Analyze获取不到表最新的last modified time信息。用户升级到Hologres V3.0.51后,查询外表时从普通链路改成Common Table链路后,OOM报错仍然存在。MC表三层模型情况下,common table链路获取的response中schema name会变成default而非Holo的project_name,导致Auto Analyze批量获取外表的last modified timestamp失败,外表收集不到变化信息。 | common table链路与holo_native在三层模型处理上未对齐。fetcher->GetTables接口在三层模型情况下,holo_native返回的schema_name仍是project_name,但common table返回的schema_name会变成default,导致数据无法回填。 | V3.0 |
|
|
P2 | Hologres使用CommonTable查询MC数据的时候, |
| V3.0 |
|
|
P1 | Union all在hash join的probe侧,第一个孩子中hash join生成的runtime filter被推到第二个孩子中,导致查询结果数据缺失。 | Runtime filter经过映射下推到union all的第二个孩子过程中,合并了第一个孩子中的RF,导致错误下推。 | V3.1 |
|
|
P2 | 曾经rename过或alter schema过的dynamic table,升级到Hologres V4.0.7及以上版本,无法自动刷新。报错: | dynamic table需要在driver中定期从FE获取最新properties。代码从table driver转移到driver master时,漏掉了同步最新table name和schema name的代码,导致升级后使用首次创建时的名称无法刷新。 | V4.0.7 |
|
|
P2 | CTAS(Create Table As Select)在createstmt阶段执行QO优化时,存在影响性能的优化步骤。 | CTAS语句在createstmt阶段走QO优化时,部分优化步骤不必要地影响了性能。 | V4.0 |
|
|
P1 | 增量刷新的动态表使用ANY_VALUE函数聚合时计算结果不正确。基表字段只有一个值,但查询DT表出现多个值。 | FinalizeStateRows时错误将result_array的生成放在循环体里面,该bug未CP到3.2版本。 | V3.2 | V3.2.24 |
|
P2 | 查询外表时,从普通链路改成Common Table链路后,OOM报错增多。报错: | Common Table链路在Auto Analyze收集时权限有变化,系统无法获取表的last modified time,导致auto-analyze无法触发,统计信息未及时更新引发OOM。 |
|
|
|
P2 | Dynamic table refresh同时打开多行事务时,走Serverless报错。 | Patch将TG不存在的报错提前到FE检查,但未考虑Serverless特殊情况。在Follower计算组上执行无法自动路由的Serverless DML时会触发。 | V4.0 |
|
|
P2 | Query OOM(内存溢出)。 | shuffle的ec优先级被改低,导致CPU较满时抢不到时间片,build端获取数据较慢,runtime filter构建延迟,probe端读取过多数据导致RF过滤效率降低。 | V4.0.x之后 |
|
|
P1 | 部分登录审计日志中client_addr字段为空。 | Gateway汇报登录审计日志时额外调用getpeername获取客户端IP,若此时客户端连接已异常断开则无法获取。 | 支持登录审计日志的所有版本 | V4.0.13 |
|
P2 | 使用preparestmt执行包含clustering key的查询时报错: | mask_md5是clustering key,在preparestmt时 | V1.1 |
|
|
P2 | 用户执行带limit的query或主动cancel早停时,小概率发生coredump,导致query执行失败,worker重启。 | SplitFactory的Close函数中进行了资源释放操作,但没有使用自己的ExecutionContext,导致资源释放时机早于其他函数执行结束,引发coredump。 | V3.2.4 |
|
|
P2 | TableGroup unload后Holoweb无法登录,元仓报错 | 发生unload时,在旧的warehouse上的binlog/fixed plan等新请求在bhclient中会retry 27.5s。fixed fe上消费binlog是连接ec同步调用这个方法,当发生retry时会卡连接ec,导致fixed fe新建连接创建卡住,从而导致连接堆积。 | V3.2 | V4.0.8 |
|
P2 | Hologres V3.1版本Dynamic Table开启auto refresh后,容器内存(监控尺度拉到7天级别)持续上涨,holo worker内存稳定但FE内存升高。重复执行 | UDF | V3.1.0 |
|
|
P2 | 实例中存在2个worker内存高于其他worker,且无shard倾斜。监控显示FE内存差距过大,从内存开始上涨时间点查询,存在长连接存活很久且执行了大量DDL(query_count > 1000)。 | DDL执行流程中存在内存泄漏。QueryDesc对象的内存释放依赖query结束时MemoryContext的整体释放,但UtilityStmt(广义DDL)的内存分配在长生命周期的MemoryContext中,导致query级别MemoryContext释放时不会释放它,产生内存泄漏。 | 所有版本 |
|
|
2026年2月
严重等级 | 报错/问题描述 | 缺陷原因 | 出现版本 | 修复版本 | 规避建议 |
P1 | 创建含有空格、特殊字符和大小写的复杂表名的表时,实例短暂重启。 | 在从系统表获取表的table property时状态错误,导致实例coredump。 |
|
|
|
P2 | ai_gen与to_file联用时会报错。
| ai_gen与to_file联用时,类型转换错误,导致函数报错。 |
|
|
|
P1 | 如果某计算组没有加载源表所在Table Group,在使用该计算组通过轻量级连接模式(Flink源表参数 | 在通过轻量级连接模式消费Binlog的初始化阶段,由于当前计算组未加载Table Group,请求会自动重试。重试期间错误持有全局锁,导致无法响应新建连接。 |
|
|
|
P1 | 含有双流Join的增量动态表首次刷新或REFRESH OVERWRITE时有概率报错。
如果定义中有基于双流Join结果的聚合,则可能导致聚合结果错误。 | 首次增量刷新有小概率会将短时间内已经被删除的数据计算进去,导致报错或者结果错误。 |
|
|
|
P2 | array_to_string函数在处理两个入参请求时,如果输入数据包含NULL值,则该NULL值将参与计算。这与PostgreSQL的行为不一致,预期应为NULL值不参与计算。 说明 该函数在处理三个入参请求时,NULL值也会参与计算,与PostgreSQL行为一致。 | HQE引擎在处理该函数两个入参请求时,计算逻辑存在缺陷。 |
|
|
|
2026年1月
严重等级 | 报错/问题描述 | 缺陷原因 | 出现版本 | 修复版本 | 规避建议 |
P2 | 在使用JOIN且执行引擎是PQE时,报错
| Join 和 PQE场景下,Join的输出列和PQE的输入列对不齐导致报错。 |
|
|
|
P2 | 使用了PQE引擎,执行了between计算,报错
| PQE引擎不支持between算子计算。 |
|
| 升级至最新版本。 |
P1 | 将timestamp作为segment key或者cluster key时,进行过滤会导致最终结果没有被过滤。 | 存储引擎在当前提取segment key有问题,导致数据未过滤。 |
|
| 升级至最新版本。 |
P1 | 升级到V4.0后内存持续升高,且在没有任何查询时也没有下降和平稳的趋势。 | V4.0 版本在 result cache 链路遇到dict array会发生内存泄露。 |
|
|
|
P2 | 在CTE复用的情况下无法生成plan,报错
| 由于QO未正确更新CTE计数,导致最终报错。 |
|
|
|
P2 | 使用范围方式取数组元素报错,例如array_column[1:1]。 | QO处理数组元素有问题,导致最终报错。 |
|
| 升级至最新版本。 |
P1 | 同时满足如下所有条件时,若Shard数大于bucket数,则PQE输出的数据不经过shuffle直接和另外一张同个Table Group的表的普通列存scan的结果做JOIN、UNION ALL 计算,有概率漏数据。
| 列存表使用主键索引的时候QO生成的计划里没有使用Gather算子,导致如果bucket数不等于shard数,一个bucket里有多个shard,pqe query 计算的shard_count/bucket_count的概率漏数据。 |
|
| 升级至最新版本。 |
P2 |
| rebuild在老版本中并未考虑大小写的情况,所以导致失败。 |
|
| 升级至最新版本。 |
P2 | subquery中包含case when表达式时,报错如下:
| 查询优化器处理该场景时存在Bug,导致无法生成可用的查询计划。 |
|
|
|
P1 | 在Flink消费Hologres Binlog时,如果Flink作业中定义的源表(Source Table)仅包含Hologres物理表中的部分列,则消费的数据可能会出现非预期的空值。 | Flink的Hologres Connector在处理消费Binlog部分列的场景时存在缺陷。 |
|
|
|
P1 | 已完成的Query可能未能正确清理,从而导致事务残留,进而造成表锁无法释放。 | 当前版本在部分已结束运行的Query的垃圾回收(GC)逻辑上存在缺陷,导致查询标识符(query_id)残留。 |
|
|
|
2025年缺陷
2025年12月
严重等级 | 报错/问题描述 | 缺陷原因 | 出现版本 | 修复版本 | 规避建议 |
P0 | 查询 DLF 的 Paimon Postpone 表时,会读取到已提交但尚未进行压缩的数据,从而导致主键表中出现主键重复的情况。 | Hologres升级至V3.2.12版本后,Paimon SnapshotReader类的接口行为发生了变更:
|
|
|
|
P1 | 在使用DLF外表时,当设置Paimon表的 | 当设置Paimon表的 |
|
|
|
P1 | 在使用CTE表达式时,发现拆分执行与联合执行的结果存在差异。 | 在使用CTE表达式时,尽管在执行中间结果时出现了失败,但并未将该失败情况上报给FE,最终导致了结果的错误。 |
|
|
|
P1 | 在用户具备相应权限的前提下,holgores.hg_query_log 和 hologres.hg_table_info 的查询结果为空。 | holgores.hg_query_log 和 hologres.hg_table_info 数据未上报。 |
|
|
|
P0 | 含有多流JOIN 的 Dynamic Table增量刷新时,当只有一条流有数据且数据有回撤时,刷新结果出错,结果和查询结果不一致。 | 在Dynamic Table进行增量刷新时,存在仅在单流回撤情况下未能正确处理的问题,导致应从结果表中删除的数据未被正确移除,从而造成结果表的错误。 |
|
|
|
P1 | 升级至V4.0版本后,出现了Worker OOM错误,相关报错信息类似:
| 为了在内存中缓存更多数据,V4.0版本对内存结构进行了优化。然而,新的内存结构在处理Decimal类型时存在缺陷,因此当包含Decimal列的表参与HashJoin时,可能会导致实例发生CoreDump。 |
| V4.0.10 |
|
P1 | 查询 MaxCompute Append Delta Table 有数据的表时,查询返回为空。 | 受到 Split Cache 影响,导致查询结果为空。 |
| V4.0.9 |
|
P0 | 在V4.0版本中使用逻辑分区表,逻辑分区表包含主键并设置了clustering_key时,发现有主键数据重复。 | V4.0 版本为了优化逻辑分区表的写入性能,支持多分区 Flush,在多分区 Flush 时,Cluster Index 的处理逻辑存在 Bug,导致写到盘古上的 AliORC 文件(列存内表的数据文件)内部的 Cluster Index可能有错,Cluster Index 错误可能导致数据存在但查不出来,最终导致在写入更新场景下,可能会认为不存在老数据,直接写了一条新的,从而产生重复。 |
| V4.0.9 |
|
P1 | 升级到V4.0版本后,出现Worker OOM 报错,报错信息类似。
| 为了能够在内存中缓存更多的数据,V4.0 版本优化了内存结构,新的内存结构对于数据大小计算不准,导致过小的预估了需要放进内存的数据,最终导致了内存不够引起了worker OOM。 |
| V4.0.7 |
|
2025年11月
等级 | 报错/问题描述 | 缺陷原因 | 出现版本 | 修复版本 | 规避建议 |
P1 | 在Flink实时写入场景中,drop当前用户,后在创建同名的有权限的用户,即使新建连接,仍然报错没有权限。 | FixedFE组件用户权限缓存更新策略问题。 |
|
|
|
P1 | Dynamic Table 使用 Stream 模式增量刷新数据时,对 base 表做insert/update/delete,立刻truncate或insert overwrite,再次刷新时,刷新数据不正确。 | Dynamic Table 使用 Stream 模式增量刷新数据时,对 base 表做insert/update/delete,立刻truncate或insert overwrite,再次刷新时,同一个主键可能消费到重复的delete消息,导致Dynamic Table结果不正确。 |
|
|
|
P2 | 通用型实例执行 | 通用型实例rebalance默认传参错误,导致报错。 |
|
|
|
P2 | 扩缩过程中,在 Table Group 的 Leader 计算组和 Follower 计算组目前会很低概率遇到 ShardPermissionDenied的报错,导致秒级的写入失败。 | 扩缩过程中,在 Table Group 的 Leader 计算组和 Follower 计算组目时预期会捕捉失败,并重试,但是ShardPermissionDenied的报错,没有转为可重试的 kShardHotMigrationInProgress,导致报错到用户端 |
|
|
|
P2 | 访问 MaxCompute 链路切换到 Common Table 链路后,当 Dynamic Table 使用了 MaxCompute 外表时,刷新报错,报错信息如下: | Dynamic Table传递plan的方式和普通olap query不同,传递过程中传递的binary被写坏了,导致filter解析失败。 |
|
|
|
P2 | 使用专家权限模型时,在用户被赋予 Dynamic Table 的 Owner 权限后,使用Dynamic Table的Owner身份对历史表或者分区刷新时,仍报错Permission Denied。 | 因为刷新的身份时首次刷新缓存下来的,导致修改权限身份后报错。 |
|
|
|
P2 | 查询DLF的数据时,对timestamp列的进行range filter查询时报错,报错信息如下: | literal类型错误处理错误,错误的使用了long进行处理 |
|
|
|
P2 | 当主键中包含boolean类型的列,且DML插入数据少于10条时,报错,报错信息如下: | Query Engine会把boolean类型的array转化为uint8 array,hybrid dml在创建row group filter时未考虑这个场景,导致row group filter里literal的类型(bool)和实际的值类型(long)不匹配。 |
|
|
|
P2 | 使用Remote UDF 时,报错如下: | 调用时多线程处理存在问题,导致最终报错。 |
|
|
|
P1 | Dynamic Table 使用 Stream 模式增量刷新数据时,若 base 表 compaction 后立刻 refresh,可能会导致增量数据乱序。 | 因为同一个key消费到的增量是乱序的,会导致最终的sink表结果错误。 |
|
|
|
P1 | 针对Rebuild功能:
|
|
| 暂未修复 | |
P2 | 使用 |
|
|
|
|
P2 | 源表使用了数据脱敏,当使用 | 数据脱敏的设置没有传递到 |
|
|
|
P0 | 用户使用array高阶函数时,如果返回结果数组里面的元素都是相同的,则有可能去重为只有一个元素的数组。示例SQL: | 数组计算框架对所有元素相同的数组处理存在缺陷。 |
|
|
|
2025年10月
等级 | 报错/问题描述 | 缺陷原因 | 出现/修复版本 | 规避建议 |
P0 | 使用 HoloWeb 的 Table Resharding 功能时,若任务异常并点击“取消任务”,发现系统未正确清理临时表。 | HoloWeb内部集成的清理函数存在缺陷 | 出现版本:
修复版本:
| 升级至最新版本。 |
P2 | HG_MOVE_TABLE_TO_TABLE_GROUP(即Resharding)的目标表,如果表名带有特殊字符,或表名本身为关键字,Resharding 会失败(不报错,但是操作后Table Group没有变化)。 | HG_MOVE_TABLE_TO_TABLE_GROUP在需要转义的场合处理存在问题 | 出现版本:所有版本 修复版本:需要使用V3.1版本Rebuild功能作为替代。 | 升级至最新版本,并改用Rebuild功能。 |
P2 | Hologres Serverless Computing计算资源后付费账单中,“实例ID”字段错误展示为 | 底层配置存在问题。 | 出现版本:所有版本。时间范围为 修复版本:所有版本。时间范围为 | 单独处理错误时间段内的账单。 |
2025年09月
等级 | 报错/问题描述 | 缺陷原因 | 出现/修复版本 | 规避建议 |
P0 | 在系统执行 | 后台处理同时执行完成的多条请求时存在缺陷。 | 出现版本:V3.0.9版本。 修复版本:V3.0.14及以上版本。 | 升级至最新版本。 |
P0 | Hologres外部表数据导入至内部表时,自适应调整导入速度的功能在同时满足以下条件时会造成数据丢失:
| 外部表数据导入至内部表的自适应调整导入速度功能,遇到外部表数据读取回退到SQE链路时,会导致部分数据丢失。 | 出现版本:
修复版本:
| 实例级别执行GUC关闭自适应导入功能。 |
P1 | 设置数据脱敏后,对表执行update,查出来的结果没有脱敏。示例sql: | 设置脱敏后,update对脱敏字段处理错误,导致结果未脱敏。 | 出现版本:
修复版本:
| 升级至最新版本。 |
P1 | 实例重启后导致dynamic table不再自动刷新。 | 后端调度系统异常导致。 | 出现版本:
修复版本:
| 升级至最新版本。 |
P1 | 逻辑分区Dynamic Table,开启自动刷新后,活跃分区是增量刷新模式,当分区结束活跃时间时,仍然为增量刷新没有自动转为全量刷新,且存储不断增加。 | 系统在处理dynamic table活跃分区时,分区状态处理错误。 | 出现版本:
修复版本:
| 升级至最新版本。 |
P2 | dynamic table设置clustering key,且是nullable属性,在执行alter dynamic table时报错clustering_key should not be nullable。 | alter dynamic table时未能正常推导clusteringkey的属性,导致报错。 | 出现版本:
修复版本:
| 升级至最新版本。 |
P2 | 列存表不设置clustering key,使用insert on conflict do update离线导入后,再实时写入,会有概率出现重复pk。 | 离线写入时处理主键的数据有误,导致实时写入没有检测到有重复数据,导致最后概率性出现主键重复。 | 出现版本:
修复版本:
| 升级至最新版本。 |
P2 | insert on conflict有主键重复时设置了hg_experimental_affect_row_multiple_times_keep_last参数也有主键重复报错duplicate key value violates unique constraint。 | 数据重复时,keep last的guc设置没有生效导致仍然主键重复报错。 | 出现版本:
修复版本:
| 升级至最新版本。 |
P2 | 升级到V3.1版本后查询含脱敏字段的视图报错relation "xxx" does not exist。 | V3.1版本的数据脱敏在处理视图时,对视图中的表名处理错误,导致报错表不存在。 | 出现版本:
修复版本:
| 升级至最新版本。 |
P2 | 使用hg_insert_overwrite + external database 读取相关外表时,有概率sql卡住。 | hg_insert_overwrite处理external database相关表时访问超时,导致卡住。 | 出现版本:
修复版本:
| 升级至最新版本。 |
2025年08月
等级 | 报错/问题描述 | 缺陷原因 | 出现/修复版本 | 规避建议 |
P1 | 当Query请求出现以下任一情况时,可能在Query结束时触发Worker卡住问题,进而导致后续对相关表的DDL操作以及有LIMIT的Query请求被阻塞:
| 查询引擎在Query结束时的资源清理过程存在缺陷。 | 出现版本:
修复版本:
|
|
P1 | 使用Holo Client V2.6.0版本,通过阿里云AccessKey(阿里云账号、RAM用户、RAM角色)连接Hologres实例时,在每天的某个时间段内会连接失败。连接失败的时间段与使用Holo Client的客户端时区有关,如东八区为00:00:00+08至08:00:00+08无法连接、西五区为19:00:00-05至00:00:00-05无法连接。 | Holo Client V2.6.0版本对时区处理存在问题。 | Holo Client V2.6.0版本(与Hologres实例无关)。 | 将Holo Client升级至V2.6.1及以上版本。 |
P0 | 在Hologres V3.1版本中,若实例创建了Dynamic Table并以Stream方式消费基表数据,当Dynamic Table处于只读(ReadOnly)状态时,可能导致实例不断重启。 | 该场景会导致数据Flush失败,从而触发实例不断重启。 | 出现版本:
修复版本:
| 升级至最新版本。 |
2025年07月
等级 | 报错/问题描述 | 缺陷原因 | 出现/修复版本 | 规避建议 |
P2 | 使用Serverless Computing导入数据执行失败时,中间文件有概率未删除,导致实例存储量增加。 | 中间文件清理逻辑有概率失效。 | 出现版本:V3.1.1版本。 修复版本:V3.1.20及以上版本。 |
|
P2 | 使用DLF查询Iceberg的外部表数据时,结果为空,未返回任何数据。 | 查Iceberg时文件解析错误,导致查询为空。 | 出现版本:V3.1.1~V3.1.16版本。 修复版本:V3.1.17及以上版本。 | 升级至最新版本。 |
P2 | 使用生成列建表,查询错误 | 表中有生成列,发起查询时,优化器翻译生成列错误,导致查询报错。 | 出现版本:V3.1.1~V3.1.16版本。 修复版本:V3.1.17及以上版本。 | 升级至最新版本。 |
P1 | 创建Dynamic Table时,Query中有BOOLEAN类型,Refresh报错: | Dynamic Table对于BOOLEAN类型的字段推导错误,导致Refresh错误。 | 出现版本:V3.1.1~V3.1.15版本。 修复版本:V3.1.16及以上版本。 | 升级至最新版本。 |
P2 | Hologres升级到V3.1版本后, |
| 出现版本:
修复版本:
| 升级至最新版本。 |
P2 | Hologres V3.1版本创建Dynamic Table为增量刷新后,直接删除Dynamic Table,状态表仍然保留。 | 直接删除增量刷新的Dynamic Table时,状态表没有被正确清理,导致残留。 | 出现版本:V3.1.1~V3.1.12版本。 修复版本:V3.1.13版本。 | 升级至最新版本。 |
P2 | 跨Schema使用 | RoaringBitmap64位相关函数的Schema推导错误,导致跨Schema查询报错。 | 出现版本:
修复版本:
| 升级至最新版本。 |
P2 | 创建Dynamic Table为逻辑分区表时,Base表指定了字段为NOT NULL,创建时报错: | Dynamic Table得NOT NULL属性推导错误。 | 出现版本:
修复版本:
| 升级至最新版本。 |
P2 | 单表物化视图存在SUM(DECIMAL)时,实例会出现短暂重启现象。 | 单表物化视图计算SUM(DECIMAL)时,由于内存未对齐,导致实例发生了核心转储(coredump) | 出现版本:
修复版本:
| 升级至最新版本。 |
P1 | Hologres实例升级至V3.0.41版本后,使用CommonTable链路查MaxCompute外部表时,内存缓慢上涨。 | CommonTable链路查MaxCompute外表时,有内存泄露,导致内存上涨。 | 出现版本:
修复版本:
| 升级至最新版本。 |
P0 | 在特定并发场景下,对同一张表使用Serverless Computing执行DML操作时,同时执行TRUNCATE/DROP TABLE操作,可能因引擎内部状态同步问题,导致该表所在Shard出现读写异常。 | 由于引擎并发处理存在问题,引起Shard内部状态异常,受影响的Shard将暂时无法提供读写服务,可能影响业务中部分表的正常访问。 | 出现版本:
修复版本:
|
|
2025年06月
等级 | 报错/问题描述 | 缺陷原因 | 出现/修复版本 | 规避建议 |
P1 | 计算组实例扩容时,计算节点偶发性重启。 | 系统缺陷,如果表同时存在DML任务、Compaction任务,并执行计算组扩容时,有概率触发。 | 出现版本:V3.0.1版本。 修复版本:V3.0.28及以上版本。 | 升级到最新版本。 |
P1 | JSONB列式存储优化和GIN索引一起使用时,实例会异常重启。 | JSONB列式存储优化和GIN索引存在不兼容情况。 | 出现版本:V3.1.1版本。 修复版本:
|
|
P2 | Dynamic Table的基表都是View时,执行Refresh会导致实例重启。 | 当基表是View时,会导致Dynamic Table在Refresh时处理错误,导致实例coredump。 | 出现版本:V3.1.8版本。 修复版本:V3.1.9及以上版本。 | 升级到最新版本。 |
P2 | Dynamic Table增量刷新模式下,Query中有ARRAY_AGG函数,当数据全被Agg Filter过滤后,返回结果是空(期望是null)。 | 无。 | 出现版本:
修复版本
| 升级到最新版本。 |
P1 | 属性关联漏斗函数(finder_funnel)指定时区时,结果计算错误。指定时区的示例SQL如下: | finder_funnel函数默认是UTC时区,当在SQL中指定时区时,将时区错误的丢弃,导致结果错误。 | 出现版本:V3.0.40版本。 修复版本:V3.0.41及以上版本。 | 升级到最新版本。 |
P2 | 计算组实例,使用PG_RELATION_SIZE、PG_DATABASE_SIZE、HOLOGRES.HG_RELATION_SIZE查出来的存储不正确。 | 计算组实例下,使用PG_RELATION_SIZE查询出来的存储会多算,导致结果不正确。 | 出现版本:V3.0.39版本。 修复版本:V3.0.40及以上版本。 | 升级到最新版本。 |
P2 | Dynamic Table增量刷新模式下单次刷新时,如果基表中有多行重复的数据,刷新报错 | 当单次刷新有多行重复数据时,增量刷新处理错误导致刷新报错。 | 出现版本:V3.0.39版本。 修复版本:V3.0.40及以上版本。 | 升级到最新版本。 |
P2 | Dynamic Table增量刷新有多表JOIN时,表中有ARRAY字段的Refresh报错 | 有ARRAY字段时,多表JOIN的增量刷新无法正确处理。 | 出现版本:
修复版本
| 升级到最新版本。 |
P1 | 通过事务向逻辑分区写入数据时,如果分区列数据基数过大导致分区数量超过限制(5200个),则事务Commit时,会发生实例重启。 | 事务Commit时检查到逻辑分区表的分区数超出限制,进程异常自行终止,导致实例Coredump。 | 出现版本:V3.1.1版本。 修复版本:V3.1.9及以上版本。 | 优化导入任务的数据质量,清洗分区键的脏数据,避免分区数量过多。 |
2025年04月
等级 | 报错/问题描述 | 缺陷原因 | 出现/修复版本 | 规避建议 |
P2 | 读取MaxCompute外表时报错 | 在读取MaxCompute外表时接口转换错误,导致读取外表失败。 | 出现版本:V3.0.1~V3.0.35版本。 修复版本:V3.0.36及以上版本。 | 升级到最新版本。 |
P2 | hg_create_table_like复制表coment时发生错误。 | hg_create_table_like在复制表comment时识别错误,将表comment复制成了列comment。 | 出现版本:V3.0.1~V3.0.33版本。 修复版本:V3.0.34及以上版本。 | 升级到最新版本。 |
P2 | 查询数据湖外表时报错 | 读取外表时,数据格式转换错误,导致报错。 | 出现版本:V3.0.1~V3.0.30版本。 修复版本:V3.0.31及以上版本。 | 升级到最新版本。 |
P1 | 使用ARRAY_AGG函数后,概率性出现内存持续上涨的情况。 | ARRAY_AGG函数存在内存泄露问题,导致内存使用量持续增加。 | 出现版本:V3.0.1~V3.0.29版本。 修复版本:V3.0.30及以上版本。 | 升级到最新版本。 |
P2 | CTE查询语句中存在Nested Loop Join时,报错 | 优化器推导JOIN ORDER错误,导致查询报错。 | 出现版本:V3.0.1~V3.0.27版本。 修复版本:V3.0.28及以上版本。 | 升级到最新版本。 |
P2 | 使用GENERATE_SERIES函数处理DECIMAL类型的字段时,报错 | 优化器对DECIMAL类型字段的精度推导错误,导致报错。 | 出现版本:V3.0.1~V3.0.25版本。 修复版本:V3.0.26及以上版本。 | 升级到最新版本。 |
P2 | 查看hg_stat_activity的 | 当 | 出现版本:V3.0.1~V3.0.25版本。 修复版本:V3.0.26及以上版本。 | 升级到最新版本。 |
2025年03月
等级 | 报错/问题描述 | 缺陷原因 | 出现/修复版本 | 规避建议 |
P2 | 使用窗口函数,例如ROW_NUMBER() OVER,处理字段 | 窗口函数处理 | 出现版本:V3.0.24及以下版本。 修复版本:V3.0.25及以上版本。 | 升级到最新版本。 |
P1 | 在Dynamic Table中手动指定Distribution Key时,不生效。 | 引擎推导错误,导致手动设置的Distribution Key未生效。 | 出现版本:V3.0.24及以下版本。 修复版本:V3.0.25及以上版本。 | 升级到最新版本。 |
2025年02月
等级 | 报错/问题描述 | 缺陷原因 | 出现/修复版本 | 规避建议 |
P1 | 用BI或开发工具连接Hologres时,没有权限的用户也能看到Database、Schema和Table的元数据信息。 | 权限控制不严格。 | 出现版本:V3.0.23及以下版本。 修复版本:V3.0.24及以上版本。 | 升级到最新版本。 |
P2 | MaxCompute外部表JOIN Hologres_fdw外部表时查询报错 | Hologres_fdw外部表在JOIN MaxCompute外部表时,如果内部表发生Shard Pruning,会产生逻辑错误,导致查询报错。 | 出现版本:V3.0.22及以下版本。 修复版本:V3.0.23及以上版本。 | 升级到最新版本。 |
P2 | Hologres实例升级到V2.2版本后,使用GENERATE_SERIES集合返回函数处理DECIMAL类型字段时报错 | GENERATE_SERIES函数处理DECIMAL字段时,优化器对DECIMAL类型的字段精度推导错误,导致查询报错。 | 出现版本:V2.2.22及以下版本。 修复版本:V2.2.23及以上版本。 | 升级到最新版本。 |
P2 | 为某个账号设置脱敏规则为 | 设置脱敏后,没有正确判断账号的脱敏规则导致查询不符合预期。 | 出现版本:
修复版本:
| 升级到最新版本。 |
P2 | 使用JDBC模式消费Hologres Binlog时,作业抛出 | 在消费Binlog的过程中,如果Flink下游算子反压或其他异常,导致源表数据消费不及时,后端会抛出超时异常。Gateway转发异常到客户过程中存在问题,导致读取数据卡住或数据解析失败报错。 |
| 升级到最新版本,并重启Flink任务。 |
P2 | JSONB列在开启列式存储优化功能后,如果设置了Bitmap索引,将会导致数据写入后Flush和Compaction失败,实例存储量上涨、内存水位上升。 | JSONB列式存储优化功能对BINARY类型开启Bitmap索引的处理存在缺陷。 | 出现版本:
修复版本:
|
|
2025年01月
等级 | 报错/问题描述 | 缺陷原因 | 出现/修复版本 | 规避建议 |
P2 | array_agg函数在窗口里的计算结果错误。示例如下: | array_agg函数与窗口函数一起计算时,计算逻辑错误导致结果不正确。 | 出现版本:
修复版本:
| 升级到最新版本。 |
P2 | 创建EXTERNAL TABLE时,含有大写字符的表,查询报错: | EXTERNAL TABLE在读取包含大写字符的表时,大小写转义错误,导致查询报错。 |
| 升级到最新版本。 |
P2 | 未配置OSS Endpoint时,查询DLF中的表报错: | 未配置OSS Endpoint时,无法正确路由到对应的OSS表,导致查询报错。 |
| 升级到最新版本。 说明 升级到新版本后,无需配置OSS Endpoint即可查询成功。 |
2024年缺陷
2024年12月
等级 | 报错/问题描述 | 缺陷原因 | 出现/修复版本 | 规避建议 |
P2 | Dynamic Table在全量和增量刷新时,若包含DECIMAL类型字段,将报错 | Dynamic Table在全量和增量刷新时,DECIMAL类型字段的精度推导错误,从而导致Refresh报错。 | 出现版本:V3.0.16及以下版本。 修复版本:V3.0.17及以上版本。 |
|
P2 | UNION ALL两边Query Schema不一致时报错 | UNION ALL推导Schema不正确,从而导致报错。 | 出现版本:V3.0.16及以下版本。 修复版本:V3.0.17及以上版本。 | 升级到最新版本。 |
P2 | Dynamic Table增量刷新对SMALLINT类型字段进行聚合时,报错不支持。 | Dynamic Table增量刷新对SMALLINT类型支持不够完善。 | 出现版本:V3.0~V3.0.16版本。 修复版本:V3.0.17及以上版本。 | 升级至最新版本。 |
P2 | 升配计算组实例后,查询报错 | 升配计算组期间,表Meta未及时更新,导致查询时获取的是旧表Meta的数据,从而导致升配后报错。 | 出现版本:
修复版本:
|
|
p1 | Hologres升级至V3.0.12~V3.0.15版本后,对于开启动态分区的表,如果分区键类型是TEXT,动态分区的调度可能会出现错误,从而导致创建分区表失败。 | 对于TEXT为分区键时,调度系统处理有问题,会导致内部转换失败,从而建表失败。 | 出现版本:V3.0.12~V3.0.15版本。 修复版本:V3.0.16及以上版本。 | 升级到最新版本。 |
p1 | Hologres版本升级至V3.0~V3.0.13版本后,查询MaxCompute外表性能变慢。 | 自Hologres V3.0版本,加强了获取MaxCompute Table Meta权限检查,这导致FE节点发生多次反复调用,从而降低了查询MaxCompute外部表的性能。 | 出现版本:V3.0~V3.0.13版本。 修复版本:V3.0.14及以上版本。 | 升级到最新版本。 |
2024年11月
等级 | 报错/问题描述 | 缺陷原因 | 出现/修复版本 | 规避建议 |
P2 | Dynamic Table全量刷新模式下开启Binlog后,Refresh报错 | Dynamic Table全量刷新模式下开启Binlog后,隐藏列推导不一致,导致Refresh报错。 | 出现版本:V3.0.11及以下版本。 修复版本:V3.0.12及以上版本。 | 升级到最新版本。 说明 不建议全量刷新模式开启Binlog,每一次全量刷新都相当于在执行 |
P2 | SLPM权限模型下,删除Orafce Extension再重新创建会报错 | SLPM权限模型下,删除Orafce Extension时用户组的权限未清理干净,导致在重新创建时用户组仍然存在,从而无法成功创建Orafce Extension。 | 出现版本:V3.0.9及以下版本。 修复版本:V3.0.10及以上版本。 |
|
P2 | Dynamic Table中有Decimal字段,Refresh时报错 | Decimal字段的精度推导不正确,导致Dynamic Table在Refresh时精度不一致而报错。 | 出现版本:V3.0.9及以下版本。 修复版本:V3.0.10及以上版本。 |
|
P2 | 元仓大于10 s的Query偶发出现Plan列没有EXPLAIN ANALYZE结果。 | 大于10 s的Query在汇报偶发延迟,导致Plan列没有采集到结果。 | 出现版本:
修复版本:
| 升级到最新版本。 |
P2 | Analyze带BIS类型的表报错 | Analyze对BIS类型的字段支持不完善,导致出现报错。 | 出现版本:
修复版本:
| 升级到最新版本。 |
P2 | 使用 |
| 出现版本:V2.2.30及以下版本。 修复版本:V2.2.31及以上版本。 | 升级到最新版本。 |
P2 | 实例频繁执行DDL操作,若FE节点的版本刚好不一致时执行了TRUNCATE操作,此时对TRUNCATE执行CANCEL时,无法成功CANCEL,可能会导致数据结果不一致。 | 当FE节点的版本不一致时,会出现节点Relay卡住,导致后续DDL失败,如果期间执行DROP、TRUNCATE,执行CANCEL不会成功。 | 出现版本:V2.2.26及以下版本。 修复版本:V2.2.27及以上版本。 | 升级到最新版本。 |
P2 | 执行SQL语句过长超出了限制报错: | Hologres增加了SQL长度限制,默认值10000000。 | 出现版本:
| 通过设置如下参数取消SQL长度限制。 |
2024年09月
等级 | 报错/问题描述 | 缺陷原因 | 出现/修复版本 | 规避建议 |
P1 | 数据库首次开启DML事务后,如果在SQL中对同一表执行并发DDL操作,可能会导致Query卡住等现象。 | 在数据库首次使用DML事务时,将首先获取表锁。如果该表存在并发的DDL操作,系统将进入尝试建表的循环,概率性出现死锁,导致Query卡住等。 | 出现版本:V2.2.24及以下版本。 修复版本:V2.2.25及以上版本。 | 升级到最新版本。 |
P2 | 对于包含roaringbitmap类型字段的Hologres表,当通过 | 跨库查询的外表不支持roaringbitmap类型,在创建外表时需要校验。 | 出现版本:V2.2.24及以下版本。 修复版本:V2.2.25及以上版本。 | 升级到最新版本。 说明 升级完成后,进行跨库查询时,如果外表中存在roaringbitmap类型,将直接报错,提示不支持该类型。 |
P2 | 使用JDBC prepareStatement方法时,反复执行 | 使用JDBC prepareStatement方法循环执行 | 出现版本:
修复版本:
|
|
P2 | 元仓Query Log中的result_rows和affected_rows值与实际值不符。 | 元仓汇报result_rows和affected_rows时发生错误,导致汇报的值与实际值不符。 | 出现版本:V2.2.22及以下版本。 修复版本:V2.2.23及以上版本。 | 升级到最新版本。 |
P2 | 计算组实例中,重启主计算组时,可能会导致从计算组点查(基于主键的查询)变慢。 | 重启主计算组时,正常运行的计算组对应的Shard会轮询主Shard状态,导致点查卡住,直到所有Shard恢复后才会继续执行。 | 出现版本:V2.2.21及以下版本。 修复版本:V2.2.22及以上版本。 | 升级到最新版本。 |
P2 | BSI_SUM函数结果数组中,所有元素的总和超出2^31时,结果出错。 | 函数数据溢出情况误处理。 | 出现版本:V2.1.1及以上版本。 修复版本:等待修复。 |
|
P2 | 连接Hologres实例偶发创建连接超时或卡住,导致无法新建连接。 | 连接实例偶发节点内进程卡住,导致此节点无法创建新连接。 | 出现版本:低于V2.2.23,V2.1.43,V2.0.46,V1.3.71的版本。 修复版本:V3.0.4,V2.2.23,V2.1.43,V2.0.46,V1.3.71及以上版本。 |
|
2024年08月
等级 | 报错/问题描述 | 缺陷原因 | 出现/修复版本 | 规避建议 |
P2 | 计算组实例中,若某个计算组A不可用(如正在重启),其他计算组对A加载的Table Group中的表执行点查时,延迟升高。 | 实时读写链路内部模块存在缺陷,计算组执行点查时会等待Table Group状态,导致延迟升高。 | 出现版本:V2.1.1至V2.2.21版本。 修复版本:V2.2.22及以上版本。 | 升级到最新版本。 |
P1 | Fixed Plan实时写入数据量超过100万QPS时,有小概率触发写入失败和实例重启。 | 实时读写链路内存管理器存在缺陷。 | 出现版本:
修复版本:
| 升级到最新版本。 |
2024年07月
等级 | 报错/问题描述 | 缺陷原因 | 出现/修复版本 | 规避建议 |
P1 | 使用jdbc或jdbc_fixed模式读取Hologres的Binlog时,如果Flink作业遭遇反压导致后端超时,有概率导致Flink作业卡住或触发Failover。 | Gateway收到后端超时的异常信息时,将异常返回给客户端的过程中存在问题,导致读取数据卡住或数据解析失败报错。 | 出现版本:V1.3及以上版本。 修复版本:V2.2.21及以上版本。 | 从最新的checkpoint直接重启作业,并升级到最新版本。 |
P2 | 在V2.2版本之后,使用了Shard Pruning(执行计划中包含Shard Prune算子)的COUNT DISTINCT操作,通过PQE执行,导致计算性能下降。 | 使用Shard Pruning后,COUNT DISTINCT的执行计划推导错误,导致通过PQE执行,影响查询性能。 | 出现版本:V2.2.1至V2.2.18版本。 修复版本:V2.2.19及以上版本。 |
|
P2 | 慢Query日志( | 慢Query日志中的 | 出现版本:V2.2.1至V2.2.18版本。 修复版本:V2.2.19及以上版本。 | 升级到最新版本。 |
P2 | 在写入分区子表时,若COPY列中包含了分区列,并且当分区值为0时,传入其他非0值也能正常写入,这可能导致分区值出现脏数据。 | 在写入分区子表时,如果copy列中包含了分区列,并且分区值为0,系统缺少对分区值为0的检查,从而导致脏数据成功写入。 | 出现版本:V2.2.1至V2.2.18版本。 修复版本:V2.2.19及以上版本。 | 升级到最新版本。 |
P2 | 在连接串上显示的设置时区为 | 连接串上指定了时区后,PQE在解析日期函数时计算时区错误,导致结果错误。 | 出现版本:V2.2.1至V2.2.18版本。 修复版本:V2.2.19及以上版本。 | 升级到最新版本。 |
P2 | 使用 |
| 出现版本:V2.2.1至 V2.2.18版本。 修复版本:V2.2.19及以上版本。 | 升级到最新版本。 |
P0 | 使用动态分区管理功能时,如果 | 自V2.2版本开始,动态分区管理功能支持自定义调度开始时间,对于按月分区时间计算有误。 | 出现版本:V2.2.1至V2.2.17版本。 修复版本:V2.2.18及以上版本。 | 升级到最新版本。 |
2024年06月
等级 | 报错/问题描述 | 缺陷原因 | 出现/修复版本 | 规避建议 |
P1 | 执行 和 | 自V2.2版本开始,MaxCompute外部表操作需要通过服务关联角色(SLR)来进行身份验证。由于当前实现存在问题,已创建SLR的用户在执行 和 | 出现版本: V2.2.1至V2.2.14版本。 修复版本: V2.2.15及以上版本。 | 升级到最新版本。 |
P1 | 源表存在重复数据,执行 | 执行 | 出现版本: V2.2.13及以下版本。 修复版本: V2.2.14及以上版本。 | 升级到最新版本。 |
p2 | 通过Flink将Paimon数据读取并写入Hologres时,Paimon VARCHAR类型数据与Hologres数据格式不一致。 | Hologres对Paimon VARCHAR类型的数据转换错误,导致出现乱码。 | 出现版本: V2.2.12及以下版本。 修复版本: V2.2.13及以上版本。 | 升级到最新版本。 |
p2 |
| 为了能够利用索引,PostgreSQL定义了NaN和其他数字的大小比较规则,将NaN值视为相等,且大于任何非NaN值。而Hologres在实现时遵循了C++标准的比较规则,因此NaN值互不相等,导致结果与PostgreSQL不一致。 | 出现版本: V2.1.37及以下版本。 修复版本:
| 升级到最新版本。 |
2024年05月
等级 | 报错/问题描述 | 缺陷原因 | 出现/修复版本 | 规避建议 |
P2 | 使用Fixed Plan点查多个相同主键值时(例如 | Fixed Plan没有对相同主键的多组过滤条件进行去重。 | 出现版本: V2.2.8及以下版本。 修复版本: V2.2.9及以上版本。 |
|
P1 | 在Rebalance过程中,执行Schema Change的相关操作后,实例无法正常写入和查询。 | 在Rebalance过程中,当Shard的Leader和Follower延迟小于10秒时,将进行Follower和Leader的切换。在切换时,若用户执行Schema Change的相关操作,会导致存储引擎SE的状态异常,进而导致实例无法进行正常的写入和查询操作。特别是在Hologres V2.1版本中,当实例存在空Worker节点时,会自动触发Rebalance机制,从而增加了该问题发生的概率。 | 出现版本:
修复版本:
| 升级到最新版本。 |
P2 | Hologres实例升级至V2.1.25及以上版本后,对非public下的表执行 | 对 | 出现版本: V2.1.25至V2.1.32版本。 修复版本: V2.1.33及以上版本。 |
|
P2 | 使用FixedFE(对应Connector中的 | FixedFE在SLPM模型权限变化时,没有及时刷新缓存,导致用户已有权限,却仍然出现相关报错。 | 出现版本: V2.0.31及以下版本 修复版本: V2.0.32及以上版本。 | 升级到最新版本。 |
2024年04月
等级 | 报错/问题描述 | 缺陷原因 | 出现/修复版本 | 规避建议 |
P2 | 使用datediff函数按照指定的单位计算两个时间差值时,偶发返回结果与实际结果相差1。 | 该函数计算存在逻辑缺陷。 | 出现版本: V2.0.31版本。 修复版本: V2.1.27及以上版本。 | 升级到最新版本。 |
P2 | Hologres实例升级至V2.1.26版本后,监控指标显示实例内存分布使用率中的Query内存缓慢上涨。 | 升级至V2.1.26版本,当Query出现OOM问题后,内存指标会被重复统计,导致监控中内存相关的指标上涨。 说明 实例中的内存并没有真正上涨,只是监控统计重复。 | 出现版本: V2.1.26版本。 修复版本: V2.1.27及以上版本。 | 升级到最新版本。 |
P1 | Hologres实例升级至V2.1版本,且在实例中进行MaxCompute外部表查询时,出现实例内存缓慢上涨现象,Query性能出现抖动,或者OOM较多。 | 使用V2.1版本实例查询MaxCompute外部表时,打开的文件未被及时关闭,导致内存缓慢上涨,影响了Query性能或者实例稳定性。 | 出现版本: V2.1.1至V2.1.25版本。 修复版本: V2.1.26及以上版本。 | 升级到最新版本。 |
P2 | V2.1版本中,主从实例或计算组实例的存储容量变多,表现为监控指标的存储使用总量大于通过pg_relation_size函数计算的存储总量。 | V2.1版本的主从实例或计算组实例回收旧文件不及时,导致存储容量增长,监控采集的存储量变多。 | 出现版本: V2.1.1至V2.1.25版本。 修复版本: V2.1.26及以上版本。 | 升级到最新版本。 |
P1 | Flink通过JDBC模式消费Hologres Binlog时,出现作业启动时消费速率较高,之后持续下降的情况。 | Flink通过JDBC模式消费Hologres Binlog时,存在内存泄漏问题。 | 出现版本: VVR V6.0.7以下版本。 修复版本: VVR V6.0.7及以上版本。 | 升级到最新版本。 |
2024年03月
等级 | 报错/问题描述 | 缺陷原因 | 出现/修复版本 | 规避建议 |
P0 | 由于查询资源未释放导致:
| 当查询仅涉及Shard数据,且使用了PQE或SQE执行MaxCompute外部表或数据湖外部表的查询时,查询完成后不会系统主动触发资源回收,只能使用Query Master的垃圾回收机制来回收资源。当Query Master压力较大时,查询操作会因退出延迟而占用大量资源,导致后续的查询无法执行。 | 出现版本: V2.1.23至V2.1.24版本。 修复版本: V2.1.25及以上版本。 | 升级到最新版本。 |
P1 | 对字典编码过的列添加bitmap,导致not null的列查询结果错误,出现null值。 | 对字典编码过的列添加bitmap,后端构建bitmap时,未对全部数据生效,导致结果有错误。 | 出现版本: V2.1.21及以下版本。 修复版本: V2.1.22及以上版本。 | 升级到最新版本。 |
P1 | 通过Fixed Plan进行数据的实时写入或点查,实例内存使用率逐渐上涨。 | Hologres V2.1版本中Fixed Plan执行引擎进行了重构,其为读写表创建的operator没有及时清理,导致内存泄露。 | 出现版本: V2.1.1至V2.1.9版本。 修复版本: V2.1.10及以上版本。 | 升级到最新版本。 |
P1 | 对运行在PQE上的Query执行取消(cancel)操作时,有概率触发对应PQE节点的进程死锁,无法处理新的PQE请求。 | PQE IO并发控制功能缺陷,当PQE接收到cancel信号时有概率触发。影响所有PQE进程。 | 出现版本:
修复版本:
| 升级到最新版本。 |
P2 | INTERSECT或EXCEPT函数在Shard Pruning时,出现执行结果与实际结果不一致。例如在Shard Pruning时,执行如下示例SQL,返回结果可能与实际结果不符。 | 当前INTERSECT或EXCEPT函数是通过JOIN实现,在Shard Pruning时,对于INTERSECT或EXCEPT函数的处理导致执行计划不正确,结果出现错误。 | 出现版本: V2.1.21及以下版本。 修复版本: V2.1.22及以上版本。 | 升级到最新版本。 |
P2 | 在PQE进程退出时,存在小概率的卡死现象,持续积累后会导致PQE无法处理新的请求。 | PQE进程退出时,启动的RPC退出线程和主线程存在并发问题,导致RPC退出线程无法正常结束,进而导致PQE进程无法顺利退出。 | 出现版本: V2.1.0至V2.1.14版本。 修复版本: V2.1.15及以上版本。 | 升级到最新版本。 |
P2 | 并发执行PQE的Query时,实例出现短暂重启现象。 | Hologres V2.0及以下版本中,PQE存在多线程并发问题,导致实例概率性的出现Coredump。 | 出现版本: V2.0及以下版本。 修复版本: V2.1.0及以上版本。 | 升级到最新版本。 |
P2 | 使用Prepared Statement模式执行包含 | 优化器生成Plan错误,导致实例出现Coredump。 | 出现版本: V2.0及以下版本。 修复版本: V2.1.0及以上版本。 | 升级到最新版本。 |
2024年02月
等级 | 报错/问题描述 | 缺陷原因 | 出现/修复版本 | 规避建议 |
P2 | TEXT类型先转换为BIT类型,再转换成BIGINT类型报错: | TEXT类型转BIT类型支持不完善,导致出现报错: | 出现版本: V2.1.20及以下版本。 修复版本: V2.1.21及以上版本。 | 升级到最新版本。 |
P2 | 行存表指定了PK,Clustering Key设置为空串时,出现元数据不一致导致Query卡住。示例建表SQL: | 行存表的Clustering Key为空串时,与PK不一致,FE节点响应请求失败,从而造成元数据不一致,导致Query停滞。 | 出现版本: V2.1.20及以下版本。 修复版本: V2.1.21及以上版本。 |
|
P2 | Query的过滤条件(where)中包含Clustering Key,且使用 | 当过滤条件中有Clustering Key,且使用 | 出现版本: V2.1.19及以下版本。 修复版本: V2.1.20及以上版本。 | 升级到最新版本。 |
P1 | 在Hologres V2.1版本中,实例内存使用率有缓慢上涨,查询MaxCompute外部表时,偶发出现 | 实例升级到 V2.1版本后,由于外部表的底层数据文件没被及时关闭,导致内存泄漏,偶发引起实例重启。 | 出现版本: V2.1.10至V2.1.18版本。 修复版本: V2.1.19及以上版本。 | 升级到最新版本。 |
P2 | DECIMAL类型相乘后精度不符合预期。示例SQL: | DECIMAL类型乘法默认小数精度是18位,两个DECIMAL类型相乘后小数位数超过18时,会导致将数据截断再计算,从而出现结果不符合预期。 | 出现版本: V2.1.18及以下版本。 修复版本: V2.1.19及以上版本。 |
|
2024年01月
等级 | 报错/问题描述 | 缺陷原因 | 出现/修复版本 | 规避建议 |
P2 | 升级到Hologres V2.1版本后, | Hologres V2.1版本FrontEnd错误增加了过长的replay缓存时间,导致同一个DDL后再执行DML,DDL replay会变慢。 | 出现版本: V2.1.1至V2.1.14版本。 修复版本: V2.1.15及以上版本。 | 升级到最新版本。 |
P2 |
| 在SQL中 | 出现版本:
修复版本:
| 升级到最新版本。 |
P2 | 使用 |
| 出现版本: V2.1.1至V2.1.12版本。 修复版本: V2.1.13及以上版本。 | 升级到最新版本。 |
P2 | 使用 | 对于全表扫描带LIMIT的场景,Hologres会通过惰性加载(lazy loading)的方式加载数据,一次性扫描太多数据导致卡住。 | 出现版本:
修复版本:
| 升级到最新版本。 |
P2 | 对实例执行重启、升级、升降配等涉及实例重启的操作后,MaxCompute直读Hologres外部表时,偶发任务卡住。 | 对于Hologres表,后台会定期触发元数据更新,实例重启后,系统会重新刷新一次表的元数据,MaxCompute直读Hologres未能及时获取元数据状态,导致任务卡住。 | 出现版本:
修复版本:
| 升级到最新版本。 |