V2.2 Build 3
Vastbase G100 V2.2 Build 3.14
发布日期
2021年08月05日
影响范围
聚集SQL中rownum未出现在group by clause的情况
新特性
无
缺陷修复
1、 【CRM_ID SC2021000298】修复了聚集SQL中rownum未出现在group by clause报错的问题
更新步骤
V2.2.2升级到V2.2.3
注意:
所有用户自定义的对象和数据都需要从旧库导出,再导入到新库。
目前导出数据有一个缺陷,导出用户自定义包会失败,请在导入数据后,手动建包。
1、 使用vb_dump导出所有对象和数据。
2、 使用数据库安装程序安装新的数据库。
3、 开启数据库。
4、 使用vb_restore导入步骤#1中的备份数据到新库中。
V2.2.3.x升级到V2.2.3.14
注意:
建议重新初始化数据库实例,若实在不允许,才执行以下升级方法。
1.停止数据库。
2.解压安装包,把bin、include、lib、share四个目录替换到数据库安装目录下。
3.开启数据库。
注:替换前先备份原文件,该操作只替换文件,不删除文件,原来安装的插件一般不会受到影响。
Vastbase G100 V2.2 Build 3.13
影响范围
数据库启动
新特性
无
缺陷修复
1、 修复了当语言环境为中文的情况下,设置绑核参数后,启动失败的问题
Vastbase G100 V2.2 Build 3.12
发布日期
2021年07月06日
影响范围
union、union all
新特性
无
缺陷修复
1、修复union、union all部分连接查询导致数据库coredump的问题。
更新步骤
V2.2.2升级到V2.2.3
注意:
所有用户自定义的对象和数据都需要从旧库导出,再导入到新库。
目前导出数据有一个缺陷,导出用户自定义包会失败,请在导入数据后,手动建包。
1、 使用vb_dump导出所有对象和数据。
2、 使用数据库安装程序安装新的数据库。
3、开启数据库。
4、 使用vb_restore导入步骤#1中的备份数据到新库中。
V2.2.3.x升级到V2.2.3.12
注意:
建议重新初始化数据库实例,若实在不允许,才执行以下升级方法。
1、 停止数据库。
2、 解压安装包,把bin、include、lib、share四个目录替换到数据库安装目录下。
3、 开启数据库。
注:替换前先备份原文件,该操作只替换文件,不删除文件,原来安装的插件一般不会受到影响。
Vastbase G100 V2.2 Build 3.11
影响范围
自治事务
特性优化
1、 优化自治事务中锁的使用
2、 添加自治事务函数中使用游标作为参数的限制
缺陷修复
1、 修复并行执行多个含有自治事务函数的SQL,导致数据库宕机的问题
Vastbase G100 V2.2 Build 3.10
影响范围
使用pg_stat_statements,带有rownum的语句
缺陷修复
1、 修复pg_stat_statements不支持rownum的问题
Vastbase G100 V2.2 Build 3.9
发布日期
2021年06月25日
影响范围
汉化场景下,调用函数时传入的参数与函数自带参数个数不匹配时的执行效果
新特性
无
缺陷修复
1、 修复汉化环境下调用函数导致数据库宕机的问题
更新步骤
V2.2.2升级到V2.2.3
注意:
所有用户自定义的对象和数据都需要从旧库导出,再导入到新库。
目前导出数据有一个缺陷,导出用户自定义包会失败,请在导入数据后,手动建包。
1、 使用vb_dump导出所有对象和数据。
2、 使用数据库安装程序安装新的数据库。
3、 开启数据库。
4、 使用vb_restore导入步骤#1中的备份数据到新库中。
V2.2.3.x升级到V2.2.3.9
注意:
建议重新初始化数据库实例,若实在不允许,才执行以下升级方法。
1、 停止数据库。
2、 解压安装包,把bin、include、lib、share四个目录替换到数据库安装目录下。
3、 开启数据库。
注:替换前先备份原文件,该操作只替换文件,不删除文件,原来安装的插件一般不会受到影响。
Vastbase G100 V2.2 Build 3.8
影响范围
months_between函数 备份package body
缺陷修复
1、 修复vb_dump备份数据库时无法备份包下的函数的问题
2、 修复months_between无法传入varchar类型的问题
注意事项
关于months_between无法传入varchar类型的问题,需要重新初始化数据库,如果不能初始化库,可以替换安装目录,然后在每个DB下执行以下SQL:
CREATE OR REPLACE FUNCTION pg_catalog.months_between(TIMESTAMP WITH TIME ZONE,varchar)
RETURNS NUMERIC
AS $$
SELECT months_between($1,$2::pg_catalog.timestamp);
$$
LANGUAGE SQL IMMUTABLE STRICT NOT FENCED;
Vastbase G100 V2.2 Build 3.7
发布日期
2021年06月24日
影响范围
pgbench
新特性
新增PGBench、PGHack、pageinspect工具
缺陷修复
无
更新步骤
V2.2.2升级到V2.2.3
注意:
所有用户自定义的对象和数据都需要从旧库导出,再导入到新库。
目前导出数据有一个缺陷,导出用户自定义包会失败,请在导入数据后,手动建包。
1、 使用vb_dump导出所有对象和数据。
2、 使用数据库安装程序安装新的数据库。
3、 开启数据库。
4、 使用vb_restore导入步骤#1中的备份数据到新库中。
V2.2.3.x升级到V2.2.3.7
注意:
建议重新初始化数据库实例,若实在不允许,才执行以下升级方法。
1、 停止数据库。
2、 解压安装包,把bin、include、lib、share四个目录替换到数据库安装目录下。
3、 开启数据库。
注:替换前先备份原文件,该操作只替换文件,不删除文件,原来安装的插件一般不会受到影响。
Vastbase G100 V2.2 Build 3.6
发布日期
2021年06月23日
影响范围
自动提交 汉化功能
新特性
无
缺陷修复
1、 自动提交调整为默认开启
2、 修复因汉化导致操作系统和数据库collate不一致索引扫描查询不到数据的问题
更新步骤
V2.2.2升级到V2.2.3
注意:
所有用户自定义的对象和数据都需要从旧库导出,再导入到新库。
目前导出数据有一个缺陷,导出用户自定义包会失败,请在导入数据后,手动建包。
1、 使用vb_dump导出所有对象和数据。
2、 使用数据库安装程序安装新的数据库。
3、 开启数据库。
4、 使用vb_restore导入步骤#1中的备份数据到新库中。
V2.2.3.x升级到V2.2.3.6
注意:
建议重新初始化数据库实例,若实在不允许,才执行以下升级方法。
1、 停止数据库。
2、 解压安装包,把bin、include、lib、share四个目录替换到数据库安装目录下。
3、 开启数据库。
注:替换前先备份原文件,该操作只替换文件,不删除文件,原来安装的插件一般不会受到影响。
Vastbase G100 V2.2 Build 3.5
影响范围
查询分区数据
缺陷修复
1、 修复查询分区数据时,对分区加了AccessExclusiveLock导致死锁的问题
Vastbase G100 V2.2 Build 3.4
发布日期
2021年06月23日
影响范围
安装程序 分区表
新特性
无
缺陷修复
1、 调整安装程序,使数据库实例化时,保证数据库排序设置collate与操作系统环境变量LC_ALL一致。
2、 修复一个分区表中的两个分区被同时查询而产生死锁的问题。
更新步骤
V2.2.2升级到V2.2.3
注意:
所有用户自定义的对象和数据都需要从旧库导出,再导入到新库。
目前导出数据有一个缺陷,导出用户自定义包会失败,请在导入数据后,手动建包。
1、 使用vb_dump导出所有对象和数据。
2、 使用数据库安装程序安装新的数据库。
3、 开启数据库。
4、 使用vb_restore导入步骤#1中的备份数据到新库中。
V2.2.3.x升级到V2.2.3.4
注意:
建议重新初始化数据库实例,若实在不允许,才执行以下升级方法。
1、停止数据库。
2、解压安装包,把bin、include、lib、share四个目录替换到数据库安装目录下。
3、开启数据库。
注:替换前先备份原文件,该操作只替换文件,不删除文件,原来安装的插件一般不会受到影响。
Vastbase G100 V2.2 Build 3.3
发布日期
2021年05月28日
新特性
1、 支持vb_ctl build指定-M 参数,实现build操作成功后,数据库以指定的servermode启动。
更新步骤
V2.2.2升级到V2.2.3
注意:
所有用户自定义的对象和数据都需要从旧库导出,再导入到新库。
目前导出数据有一个缺陷,导出用户自定义包会失败,请在导入数据后,手动建包。
1、 使用vb_dump导出所有对象和数据。
2、 使用数据库安装程序安装新的数据库。
3、 开启数据库。
4、 使用vb_restore导入步骤#1中的备份数据到新库中。
V2.2.3.x升级到V2.2.3.3
注意:
建议重新初始化数据库实例,若实在不允许,才执行以下升级方法。
1.停止数据库。 2.解压安装包,把bin、include、lib、share四个目录替换到数据库安装目录下。 3.开启数据库。
注:替换前先备份原文件,该操作只替换文件,不删除文件,原来安装的插件一般不会受到影响。
Vastbase G100 V2.2 Build 3.2
影响范围
DBMS_UTILITY.COMMA_TO_TABLE
hint的使用
新特性
1、 支持select * from table(dbms_xplan.display) 查询格式化的执行计划内容。
2、 支持set serveroutput on命令设置环境变量serveroutput为打开状态,使函数dbms_output.put_line()可以输出参数的值。但默认不开启,可通过在postgresql.conf中添加serveroutput=on改为默认开启
3、 修改语法,支持set var_name var_value语法
4、 修改hint语法,支持逗号分隔符
缺陷修复
1、 修复函数table_to_comma/comma_to_table输出行开头有空格的问题
2、 修复explain plan for …/+ use_nl(e, d)/报错的问题
注意事项
关于视图dbms_xplan.display的使用需要重新初始化数据库,如果不能初始化库,可以替换安装目录,然后在每个DB下执行以下SQL:
--创建schema
create schema dbms_xplan;
--打开dbms_xplan.display视图
create view dbms_xplan.display as
select id-1 as id,
operation,
options,
object_name as name,
object_type,
object_owner,
projection
FROM plan_table
WHERE plan_table.plan_id =
(SELECT
max(plan_table.plan_id)
FROM plan_table
);
使用table_to_comma/comma_to_table去除输出开头空格的功能需要重新初始化库。如果不能初始化库,可以替换安装目录,然后在每个DB下执行以下SQL:
--DBMS_UTILITY.COMMA_TO_TABLE
create or replace function DBMS_UTILITY.COMMA_TO_TABLE(list VARCHAR2, out tablen BINARY_INTEGER, out tab VARCHAR2[]) as $$
begin
tab:= string_to_array(list, ',');
tablen:= array_length(tab, 1);
--去除收尾空格
FOR i IN 1..tablen LOOP
tab[i] = trim(tab(i));
END LOOP;
end;
$$ LANGUAGE plpgsql;
Vastbase G100 V2.2 Build 3.1
发布日期
2021年05月18日
影响范围
HASH/LIST/RANGE分区表查询(一级分区、二级分区)
缺陷修复
1、修复一级分区partitionKey is null为条件时,执行计划过滤分区有误的问题
2、 修复包含二级分区表时,查询未按查询条件过滤分区的问题
注意事项
V2.2.3分区表数据字典与V2.2.2分区表不兼容,已创建的分区表不能使用,请重新处理。
更新步骤
V2.2.2升级到V2.2.3
注意:
所有用户自定义的对象和数据都需要从旧库导出,再导入到新库。
目前导出数据有一个缺陷,导出用户自定义包会失败,请在导入数据后,手动建包。
1、 使用vb_dump导出所有对象和数据。
2、使用数据库安装程序安装新的数据库。
3、 开启数据库。
4、 使用vb_restore导入步骤#1中的备份数据到新库中。
V2.2.3.0升级到V2.2.3.1
1、停止数据库。
2、解压安装包,把bin、include、lib、share四个目录替换到数据库安装目录下。
3、开启数据库。
注:替换前先备份原文件,该操作只替换文件,不删除文件,原来安装的插件一般不会受到影响。
Vastbase G100 V2.2 Build 3.0
发布日期
2021年04月29日
新特性
1、 支持自治事务传入参数
2、 支持聚合函数嵌套使用
3、 支持PERCENTILE_CONT函数over功能
4、 支持二级分区
5、 支持存储过程自治事务的嵌套使用
6、 支持存储过程自治事务,涵盖:触发器以及匿名块
7、 集成和完善pg_probackup工具,支持增量备份、基于时间点恢复能力
8、 支持定时任务的调用及管理功能,管理包括定时任务的修改及删除等
9、 支持select for update wait n语句
10、 数据库事务默认非自动提交
11、 EAL4 - 安全审计 - 选择性审计+审计数据可用性保证+防止审计数据丢失
如果审计记录已满,应停止各种审计(支持对原有审计数据的查询)
根据操作(执行)的结果进行分类选择审计
按用户身份进行选择性审计
12、 EAL4 - 安全审计 - 安全审计查阅
- 审计查询结果中包含数据库权限字段
13、 EAL4 - 安全审计 - 审计数据产生
审计会话被拒绝连接事件(IP不符|未在时间段内)
审计安全标签相关操作(CREATE|SECURITY ON|DROP)
14、 EAL4 - TOE访问
- 多重并发会话的基本限定
15、 EAL4 - 用户数据保护
支持存储过程和触发器应用安全标签的语法及功能
支持不带安全属性的用户数据输入
支持带有安全属性的用户数据输出
16、 新增Oracle兼容性功能
支持视图DBA_MVIEWS
支持内置函数instrb
支持内置函数tz_offset
支持内置分析函数ratio_to_report
支持内置函数to_multi_byte/to_single_byte
支持内置函数vsize
支持按字符计算char、varchar、varchar2类型长度
支持内置包DBMS_UTILITY - 函数:COMMA_TO_TABLE/TABLE_TO_COMMA,类型:lname_array/name_array/uncl_array
支持内置包UTL_RAW - 函数:CAST_TO_RAW/CAST_TO_VARCHAR2
支持内置包DBMS_OBFUSCATION_TOOLKIT - 函数:DESENCRYPT/DESDECRYPT/DESGETKEY/DES3ENCRYPT/DES3DECRYPT/DES3GETKEY/MD5
支持内置包DBMS_LOCK - 函数:allocate_unique/convert/release/request/sleep
支持内置包DBMS_CRYPTO - 函数:ENCRYPT/DECRYP/Hash/MAC/RANDOMBYTES/RANDOMINTEGER/RANDOMNUMBER
支持内置包DBMS_PROFILER - 函数:start_profiler/stop_profiler/pause_profiler/resume_profiler/flush_data/get_version/internal_version_check/rollup_unit/rollup_run
支持内置包内置包DBMS_APPLICATION_INFO - 函数:SET_CLIENT_INFO/SET_MODULE/SET_ACTION/READ_MODULE,视图:V$SESSION
缺陷修复
1、 修复数据库配置文件参数shared_preload_libraries缺少配置jdbc_fdw,创建jdbc_fdw扩展时导致数据库崩溃的问题
2、 修复order by和count不能连用的问题
3、 修复系统管理员创建出的用户默认具有sysadmin属性的问题
4、 修复软件适配性能问题 - 连接时查找主机名时间较长;机械硬盘双写效率低下
5、 修复事务自动提交开关关闭后,安全管理员创建敏感标签失败,提示无权限的问题
6、 修复vsql连接数据库,不指定数据库名会导致vsql程序崩溃的问题
7、 修复加载TPCC测试数据到集群中,导致数据库崩溃的问题
8、 修复jdbc环境中设置audit_user参数为部分用户,切换用户时导致数据库宕机的问题
9、 修复plpgsql函数处理异常时coredump的问题
10、 聚合函数+rownum,查询结果不对的问题