更新时间:2024-11-05 GMT+08:00

8.3.0.x补丁新增功能及解决问题

8.3.0.110

表1 8.3.0.110新增功能/解决问题列表

类别

功能或问题描述

问题原因

问题出现版本

修复建议

新增功能

新安装集群默认打开全局死锁检测功能,之前版本默认没有打开。

-

-

-

解决问题

当一个常用表达式(Common Table Expressions,简称CTE)仅被另一个CTE引用多次时可能触发空指针访问导致故障。

当一个CTE仅被另一个CTE引用多次时,计划递归遍历逻辑错误导致访问空指针,产生集群故障。

8.3.0.101

升级到8.3.0.110及以上版本

列存表查询语句中出现多结果集函数时,执行该语句会报错Set-returning function is not supported in vector engine。

非表的scan算子上的向量化执行引擎不支持多结果集函数。

8.3.0.101

集群低版本升级到8.3.0版本时,线程池功能失效。

集群低版本升级到8.3.0时,需要根据当前硬件配置设置max_stream_pool,因为默认单位识别异常,导致max_stream_pool被设置为0。

8.3.0.101

使用parquet外表查询报错The parameter destMax is too small or parameter count is larger than macro parameter。

parquet外表的string类型字段的缓冲区空间管理错位,导致大于1K的字段内存分配不够,引起业务报错。

8.3.0.101

正在数据重分布的冷热表进行分区交换操作时报错Multi-temperature table only support column partition table。

重分布过程中创建的临时表引用了原表的冷热表属性,导致临时表创建失败。

8.3.0.101

8.3.0.108

表2 8.3.0.108新增功能/解决问题列表

类别

功能或问题描述

问题原因

问题出现版本

修复建议

新增功能

-

-

-

解决问题

copy并发入库出现锁超时报错

RecoverFromDelta放锁时错误使用加锁接口,导致锁未释放。

8.3.0.105

升级到8.3.0.108及以上版本

8.3.0.105

表3 8.3.0.105新增功能/解决问题列表

类别

功能或问题描述

问题原因

问题出现版本

修复建议

新增功能

-

-

-

解决问题

多count distinct走share scan出现结果集错误

sharescan计划生成时,CTE子查询误用了上层的等价类信息,造成分布列判断错误,生成计划缺少数据重分布算子

8.3.0.105以前版本

升级到8.3.0.105及以上版本

升级到830版本后系统表autovacuum未生效

升级830前做过容灾迁移,容灾迁移会先设置autovacuum_max_workers为0,再修改成原来的默认值3,导致升级后未将该值设为预期的值6

8.3.0.105以前版本

修复UDF在recv接收数据时,可能存在超时后error为EAGAIN但没有被捕获直接报错的问题

当cn_retry开启时,socket recv 20s超时后,EAGAIN的错误码没有被捕获,直接走到报错逻辑

8.3.0.105以前版本

8.3.0.103

表4 8.3.0.103新增功能/解决问题列表

类别

功能或问题描述

问题原因

问题出现版本

修复建议

新增功能

json/jsonb支持向量化。

-

-

-

解决问题

使用ORC外表场景偶发产生core问题。

ORC外表foreign scan查询条件下推,在查询约束条件为bool类型表达式判断,且在表达式中存在隐式转换,且为is null条件时,偶现内部类型转换异常,内存越界(RelabelType强转var)。

8.3.0.103以前版本

升级到8.3.0.103及以上版本

执行1000w batch upsert并发冲突更新场景时出现cstore buffer报错。

cstore buffers的缓存淘汰机制为clock swaap,当前clock swaap最多为三秒三圈,因此存在无法淘汰大量使用CU(Usage Count > 3),从而出现内存可用,但报cstore buffer过小的错误。

8.3.0.103以前版本

实时入库场景下,入库性能长稳,但是任务停止后delta表的空间一直不释放。

hstore opt表的delete记录可能残留,导致空间一直无法释放。

8.3.0.103以前版本

8.3.0.101

表5 8.3.0.101新增功能/解决问题列表

类别

功能或问题描述

问题原因

问题出现版本

修复建议

新增功能

vacuum full适配binlog表。

-

-

-

解决问题

analyze语句报错Could not open file "pg_clog/000000000075"

列存表进行vacuumfull后可能提前回收clog,导致主备切换后进行analyze时无法访问clog文件。

8.3.0.100

升级到8.3.0.101及以上版本

使用\parallel on高并发下创建job报错duplicate key value violates unique constraint "pg_jobs_id_index" ,Key(job_id)=() already exists。

获取job_id处的锁未成功加上,导致并发时取到相同job_id报错。

8.3.0.100

多个nodegroup场景下,重分布不支持跳过指定表,导致缩容失败。

重分布不支持跳过指定表。

8.3.0.100

执行Hstore用例,网卡故障时,因为内存为超大负数,导致用例执行失败。

临时变量声明后,未赋值导致参数值非预期,后续再去扣减内存,内存出现超大负数。

8.3.0.100