V2.2 Build 10(Patch No.8)
发布日期
2023年05月19日
升级方式
VPatch工具升级。可参考使用VPatch进行版本控制。
commit 标识:13266
新特性
1、新增MySQL兼容性:
支持LOCATE函数,用于查找子字符串在原字符串中的位置。
支持在初始化实例或创建数据库时,通过参数pad_attribute控制字符串等值查询时是否忽略空格匹配,参见vb_initdb、CREATE DATABASE。
支持FIELD函数,用于查找特定字符串在给出的若干个字符串序列中的位置。
支持SELECT @i:=expr方式赋值查询,输出查询结果并将查询结果存储到“@i”中,若查询结果有多行,则存储最后一行数据。
支持在内层查询或函数中可以引用外层的列。
支持多表关联时同名字段不需要指定表名。
支持PREPARE FROM语法。
2、支持PostgreSQL 11作为连接远端连接数据库,详细内容参见POSTGRES_FDW。
3、Oracle兼容性模式下支持insert all指定字段批量插入数据,详见INSERT ALL&FIRST子句语法。
特性优化
升级ltree插件,将ltree插件从1.0版本升级至1.2版本。
升级pg_zhtrgm插件,将pg_zhtrgm插件从1.0升级至1.4版本。
缺陷修复
1、【1026503】修复了由于升级补丁版本(Patch No.6升级到Patch No.7)导致新创建的user_sequences系统视图的权限丢失,从而导致普通用户没有权限访问的问题。
2、【1026403】修复了因更改longtext数据类型的实现方式,从而导致部分参数有所变动的问题。
3、【1026363】修复了pg_zhtrgm插件默认在pg_catalog模式下权限控制导致无法使用alter语句升级插件的问题。
4、【1026331】修复了Vastbase G100中MySQL兼容模式和Oracle兼容模式执行order by
语句时效率相差大的问题。
5、【1026304】修复了在存储过程中因为发生了类型转换对含空格的列匹配,存储过程将t和f打印出来成1和0的问题。
6、【1026297】修复了由于MySQL兼容模式下using逻辑判断字段没有不敏感处理从而导致在关联同名字段时没有指定表名而报错的问题。
7、【1026295】修复了在MySQL兼容模式下prepare from
语法中,使用@声明变量,匿名块中执行报错的问题。
8、【1026290】修复了在MySQL兼容模式下,IF函数执行结果与MySQL不同的问题。
9、【1026280】修复了vsql一起执行多行语句时,无法正常执行的问题。
10、【1026275】修复了pg_hba.conf文件中关于trust认证方式的说明与实现不符,从而导致修改了初始密码后,无法再以trust方式登录数据库,一定要输入密码才能登录的问题。
11、【1026272】修复了由于词法解析有问题而导致的create index declare on 表名(列名)
执行失败的问题。
12、【1026270】修复了dbms_job.submit调用不存在的表时没有报错的问题。
13、【1026260】修复了由于升级脚本误修改了视图定义语句,从而导致查询user_sequences视图时没有数据的问题。
14、【1026258】修复了由于升级脚本误修改了视图定义语句,从而导致查看user开头相关视图提示用户无权限访问系统表的问题。
15、【1026232】修复了目标列中使用IFNULL函数,函数入参为别名时,报错的问题。
16、【1026223】修复了子查询出现在group by
中,使用别名进行查询时数据库断开连接的问题。
17、【1026211】修复了子查询出现在窗口函数时,使用别名导致数据库断开连接的问题。
18、【1026187】修复了from后跟insert all语句导致数据库挂库的问题。
19、【1026165】修复了MySQL兼容模式下,多表关联查询使用count()函数统计,查询返回数据不正确的问题。
20、【1026054】修复了当参数logging_collector=off
或uppercase_attribute_name=on
时,数据库升级失败的问题。
21、【1026035】修复了vpatch升级时由于升级临时目录和安装目录相互嵌套而导致的数据库升级失败的问题。
22、【1025930】修复了因为空指针解引用导致宕机的问题。
23、【1025913】修复了hashjoin数据下盘测试时出现coredump的问题。
24、【1025912】修复了由于DNS解析的问题,从而导致的数据库启动缓慢的问题。
25、【1025911】修复了因为参数plsql_show_all_error打开后打印等级由ERROR降级为NOTICE,导致往下执行时未初始化变量,从而导致数据库Coredump的问题。
26、【1025910】修复了使用pg_xlogdump工具查看xlog日志(非当前未写完的文件),出现内存泄漏的问题。
27、【1025884】修复了由于子程序调用包内变量时,其上下文被清理而导致的数据库挂库的问题。
28、【1025883】修复了由于uuid-ossp插件为每个会话建立对象缓存,但无法保证该缓存对象的生命周期与会话的生命周期保持一致,从而导致内存泄漏的问题。
29、【1025844】修复了因为升级脚本错误而导致的数据库升级失败的问题。
30、【1025705】修复了在获得表定义的函数中取得onupdate的信息时,没有对它是空指针的情况进行检查,导致升级后查询表定义报错的问题。
31、【1025679】修复了数据在update操作中获得default值时,没有对它是空指针的情况进行检查,导致数据库实例频繁出现crash的问题。
32、【1025624】修复了在MySQL兼容模式下,在触发器中设置自定义变量报错的问题。
33、【1025227】修复了explain执行计划里没有where条件的缺陷。
34、【1025133】修复了由于dbms_sql_parse进行语句解析时访问空指针,从而导致数据库宕机的问题。
35、【1025132】修复了包体内函数相互跨包调用引起实例crash的问题。
36、【1025131】修复了调用包外重载函数时,必须加perform才能执行的问题。
37、【1025129】修复了嵌套表extend函数只能传入确定数值,不能传入变量的问题。
38、【1025127】修复了调用栈函数dbms_utility.format_call_stack返回结果不符合预期,导致who_call_me解析出错的问题。
39、【1025126】修复了TABLE函数不支持占位符的问题。
40、【1024920】修复了当前Lite版本无迭代时,查看产品的版本信息显示不正确不问题。
41、【1024919】修复了在全密态数据库打开密态,创建加密表,使用vb_dump和vsql导出导入时出现内存泄漏以及内存越界问题。
42、【1024908】修复了当ignore_system_indexes=on
时,systable_beginscan返回的结构体没有索引扫描的扫描描述符,只有堆扫描的扫描描述符,所以导致数据库宕机的问题。
43、【1024907】修复了创建同义词未判断是否存在同名的关系,类型,函数和存储过程,从而导致查询数据有误的问题。
44、【1024904】修复了创建资源池时参数active_statements、io_limits设置为超出取值范围,一些值仍然会创建成功的问题。
45、【1024903】修复了bulk collect+forall
批量操作数据时报错的问题。
46、【1024902】修复了drop extension plpgsql cascade;
提示language plpgsql不存在,但实际还存在的问题。
47、【1024901】修复了解释merge into
语句计划时,由于源表子查询被优化成空的结果集,导致语句执行失败的问题。
48、【1024900】修复了修改外表所在的模式时报错的问题。
49、【1024801】修复了插入含有gist索引的时数据库卡死,无法停库的问题。
50、【1024291】修复了policy中的指针objectname指向SearchSysCache返回的元组中的一个字符串,后续使用的这个指针的时候,由于元组已经释放了,所以导致heap-use-after-free的问题。
51、【1024155】修复了vb_dump备份时报错ERROR: current transaction is aborted
的问题。
52、【1023971】修复了JDBC-type-for-null设置为'null'的情况下,使用匿名块无法插入null数据的问题。
53、【1023687】修复了长稳执行过程中,两个备库异常,报FATAL:memory is temporarily unavailable
的问题。
54、【1023369】修复了Lite版数据库异常停止后,启动阶段故障恢复失败,并产生coredump文件的问题。
55、【1023260】修复了DECODE函数匹配后输出数据为date类型调用失败的问题。
56、【1022629】修复了update语句报错concurrent update under Stream mode is not yet supported
的问题。
57、【1022317】修复了表中列名为小写,别名为大写,但是使用vb_dump导出时INSERT INTO语句中列名为大写的问题。
58、【1022068】修复了在MySQL兼容模式下text转其他类型在含有\n时与实际MySQL不同的问题。
59、【1022064】修复了在执行REINDEX CONCURRENTLY
时报错not support object type: 39
的问题。
60、【1022026】修复了在主备模式下,备库执行包含写入操作的select操作出现报错的问题。
61、【1021690】修复了日志循环不间断打印session used memory 52224 kbytes is beyond the limitation 51200 kbytes.
的问题。
62、【1021402】修复了由于nestloop计算代价不合理而导致的sql4结果为OG3.0耗时的2.5倍的问题。
63、【1020998】修复了SYS_CONNECT_BY_PATH函数中类型转换失效的问题。
64、【1019093】修复了当使用vb_bulkload导入数据时,当某些数据行字段含有乱码时,会导致所有数据导入失败的问题。
65、【1017901】修复了内核里所有用pqconnectdb的代码,没有设置超时时间导致数据库无法关闭的问题。
66、【1017471】修复了由于DBMS_LOB中使用的哈希表写坏内存,从而导致数据库挂库的问题。
67、【1012841】修复了长稳测试中主节点coredump的问题。