From 6c7ab02e3fd695aac14e3a0d77fc36ce9d88dfc1 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=96=9B=E6=AC=A3=E6=80=A1?=
<13695798+xue-xinyi610@user.noreply.gitee.com>
Date: Tue, 27 Aug 2024 09:16:55 +0000
Subject: [PATCH] =?UTF-8?q?alter=20trigger=E5=92=8C=E8=A1=8C=E5=88=97?=
=?UTF-8?q?=E8=BD=AC=E6=8D=A2=E7=89=B9=E6=80=A7=E6=B5=8B=E8=AF=95=E6=8A=A5?=
=?UTF-8?q?=E5=91=8A=E4=B8=8A=E4=BC=A0=20=E6=96=B0=E5=A2=9E=20openGauss=20?=
=?UTF-8?q?6.0.0=20=E6=94=AF=E6=8C=81alter=20trigger=E6=96=B9=E5=BC=8F?=
=?UTF-8?q?=E5=90=AF=E7=94=A8=E7=A6=81=E7=94=A8=E5=8D=95=E4=B8=AA=E8=A7=A6?=
=?UTF-8?q?=E5=8F=91=E5=99=A8.md=20=E4=BB=A5=E5=8F=8A=20openGauss=206.0.0?=
=?UTF-8?q?=20=E6=94=AF=E6=8C=81select=E6=94=AF=E6=8C=81rotate=5Fnotrotate?=
=?UTF-8?q?=E5=AD=90=E5=8F=A5=E6=B5=8B=E8=AF=95=E6=8A=A5=E5=91=8A.md=20?=
=?UTF-8?q?=E4=B8=A4=E4=B8=AA=E7=89=B9=E6=80=A7=E6=B5=8B=E8=AF=95=E6=8A=A5?=
=?UTF-8?q?=E5=91=8A?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Signed-off-by: 薛欣怡 <13695798+xue-xinyi610@user.noreply.gitee.com>
---
...52\350\247\246\345\217\221\345\231\250.md" | 232 +++++++++++++++
...13\350\257\225\346\212\245\345\221\212.md" | 275 ++++++++++++++++++
2 files changed, 507 insertions(+)
create mode 100644 "Test_Result/openGauss_6.0.0_release/\345\205\274\345\256\271\346\200\247/openGauss 6.0.0 \346\224\257\346\214\201alter trigger\346\226\271\345\274\217\345\220\257\347\224\250\347\246\201\347\224\250\345\215\225\344\270\252\350\247\246\345\217\221\345\231\250.md"
create mode 100644 "Test_Result/openGauss_6.0.0_release/\345\205\274\345\256\271\346\200\247/openGauss 6.0.0 \346\224\257\346\214\201select\346\224\257\346\214\201rotate_notrotate\345\255\220\345\217\245\346\265\213\350\257\225\346\212\245\345\221\212.md"
diff --git "a/Test_Result/openGauss_6.0.0_release/\345\205\274\345\256\271\346\200\247/openGauss 6.0.0 \346\224\257\346\214\201alter trigger\346\226\271\345\274\217\345\220\257\347\224\250\347\246\201\347\224\250\345\215\225\344\270\252\350\247\246\345\217\221\345\231\250.md" "b/Test_Result/openGauss_6.0.0_release/\345\205\274\345\256\271\346\200\247/openGauss 6.0.0 \346\224\257\346\214\201alter trigger\346\226\271\345\274\217\345\220\257\347\224\250\347\246\201\347\224\250\345\215\225\344\270\252\350\247\246\345\217\221\345\231\250.md"
new file mode 100644
index 0000000..d4d87f0
--- /dev/null
+++ "b/Test_Result/openGauss_6.0.0_release/\345\205\274\345\256\271\346\200\247/openGauss 6.0.0 \346\224\257\346\214\201alter trigger\346\226\271\345\274\217\345\220\257\347\224\250\347\246\201\347\224\250\345\215\225\344\270\252\350\247\246\345\217\221\345\231\250.md"
@@ -0,0 +1,232 @@
+![avatar](../../images/openGauss.png)
+
+版权所有 © 2024 openGauss社区
+ 您对“本文档”的复制、使用、修改及分发受知识共享(Creative Commons)署名—相同方式共享4.0国际公共许可协议(以下简称“CC BY-SA 4.0”)的约束。为了方便用户理解,您可以通过访问[*https://creativecommons.org/licenses/by-sa/4.0/*](https://creativecommons.org/licenses/by-sa/4.0/) 了解CC BY-SA 4.0的概要 (但不是替代)。CC BY-SA 4.0的完整协议内容您可以访问如下网址获取:[*https://creativecommons.org/licenses/by-sa/4.0/legalcode*](https://creativecommons.org/licenses/by-sa/4.0/legalcode)。
+
+修订记录
+
+| 日期 | 修订 版本 | 修改描述 | 作者 |
+| ---------- | ----------- | -------- | -------- |
+| 2024-08-13 | 1.0 | 初稿完成 | xuexinyi |
+
+**Keywords 关键词**:ALTER TRIGGER
+
+**Abstract 摘要**:本文档主要验证,支持通过alter trigger方式启用禁用单个触发器,验证其在openGauss数据库的使用,本次测试质量整体良好。
+
+**缩略语清单: **
+
+| 缩略语 | 英文全名 | 中文解释 |
+| ------ | -------- | -------- |
+| | | |
+
+***
+
+
+# 1 概述
+
+在opengauss数据库中,可通过alter trigger方式启用禁用单个触发器。
+
+语法如下:
+
+--ALTER TRIGGER 方式禁用触发器:
+
+**ALTER TRIGGER [trigger_name] DISABLE;**
+
+--ALTER TRIGGER 方式启用触发器:
+
+**ALTER TRIGGER [trigger_name] ENABLE;**
+
+
+
+# 2 测试版本说明
+
+## 2.1 测试版本信息
+
+### 2.1.1 被测版本
+
+| 版本名称 | 软件包名称 | 测试起始时间 | 测试结束时间 | 测试人员 |
+| ------------------------------ | --------------------------------------- | ------------ | ------------ | -------- |
+| openGauss 6.0.0 build 2f96703a | openGauss-6.0.0-CentOS-64bit-all.tar.gz | 2024-08-08 | 2024-08-12 | xuexinyi |
+
+### 2.1.2 配套测试的版本
+
+| 版本名称 | 配套版本 | 版本说明 |
+| -------- | -------- | -------- |
+| NA | | |
+
+## 2.2 测试环境描述
+
+### 2.2.1 环境硬件信息
+
+| 环境信息 | 硬件型号 | 硬件配置信息 | 备注 |
+| -------- | ------------------------------------ | ------------------------------------------------------------ | -------- |
+| 虚拟机 | CentOS Linux release 7.9.2009 (Core) | CPU:Intel(R) Xeon(R) CPU E5-2640 v2 @ 2.00GHz
内存:4GB
硬盘:500GB
OS:CentOS Linux 7 (Core) | 单机部署 |
+
+
+
+# 3 版本概要测试结论、关键风险和规避措施
+
+## 3.1 测试结论总结
+
+alter trigger方式启用禁用单个触发器特性,共计执行31个用例,主要覆盖了功能测试、语法测试、耦合测试、可靠性测试和资料测试,未发现问题,无遗留风险,整体质量良好;
+
+## 3.2 约束说明
+
+(1)仅支持数据库模式为A模式
+
+## 3.3 关键风险和规避措施
+
+无
+
+# 4 版本详细测试结论
+
+## 4.1 特性测试结论
+
+### 4.1.1 新需求质量评价
+
+| 特性 | 特性价值评估 | 应用说明及关键约束假设依赖 | 关键遗留事项如缺陷等 | 测试整体覆盖情况 | 特性质量评估 | 主要风险 |
+| ---------------------------------------------------------- | ------------------------------------------------------------ | -------------------------- | -------------------- | -------------------------------------------------- | -------------------------- | -------- |
+| openGauss 6.0.0版本支持alter trigger方式启用禁用单个触发器 | openGauss的trigger名是表级唯一,所以禁用trigger需要基于表。而A的trigger名是全局唯一,不依赖表名,做下兼容。 | 详见章节3.2 | 无 | 功能测试、语法测试、耦合测试、可靠性测试和资料测试 | ▮ | 无 |
+
+## 4.2 产品质量属性目标(DFX)测试结论
+
+### 4.2.1 性能测试结论
+
+| 测试步骤 | 测试结果 |
+| -------- | -------- |
+| NA | |
+
+### 4.2.2 可靠性测试结论
+
+| 测试步骤 | 测试结果 |
+| ------------------------------------------------------------ | -------------------------------------- |
+| 1.启用/禁用触发器后,数据库异常停用,修复数据库后插入数据的表现 | 执行10条用例,执行均符合预期,测试通过 |
+| 2.跨会话执行,session1启动/禁用触发器,session2插入数据,观察触发器正常触发/未触发 | 执行4条用例,执行均符合预期,测试通过 |
+| 3.启动触发器后,同时并发插入多个数据,观察无异常报错,触发器正常触发 | 执行1条用例,执行均符合预期,测试通过 |
+
+### 4.2.3 安全&隐私保护测试结论
+
+| 测试步骤 | 测试结果 |
+| -------- | -------- |
+| NA | |
+
+### 4.2.4 可服务性测试结论
+
+| 测试步骤 | 测试结果 |
+| -------- | -------- |
+| NA | |
+
+### 4.2.5 生命周期管理测试结论
+
+| 测试步骤 | 测试结果 |
+| -------- | -------- |
+| NA | |
+
+### 4.2.6 韧性测试结论
+
+| 测试步骤 | 测试结果 |
+| -------- | -------- |
+| NA | |
+
+### 4.2.7 兼容性测试结论
+
+| 测试步骤 | 测试结果 |
+| ------------------------------------------------------------ | -------------------------------------- |
+| 1.分别在兼容B、C、PG库下执行测试用例场景,执行正常报错,不影响数据库正常使用, | 执行30条用例,执行均符合预期,测试通过 |
+
+### 4.2.8 升级测试结论
+
+| 测试步骤 | 升级路径 | 测试结果 |
+| -------- | -------- | -------- |
+| NA | | |
+
+## 4.3 资料测试结论
+
+| 序号 | 测试章节 | 测试结论 |
+| ---- | ------------------------------------------------ | ------------------------ |
+| 1 | SQL参考>SQL语言结构和语法>SQL语法>ALTER TRIGGER | 整体质量良好,未发现问题 |
+| 2 | SQL参考>SQL语言结构和语法>SQL语法>CREATE TRIGGER | 整体质量良好,未发现问题 |
+
+# 5 测试对象质量评估
+
+## 5.1 覆盖率分析
+
+本次测试主要覆通过alter trigger的方式的启停功能验证、异常场景下的合理报错、以及不影响原有功能交互。
+
+## 5.2 缺陷统计和分析
+
+### 5.2.1 缺陷统计
+
+| | 问题总数 | 严重 | 主要 | 次要 | 不重要 |
+| ------ | -------- | ---- | ---- | ---- | ------ |
+| 数目 | 0 | 0 | 0 | 0 | 0 |
+| 百分比 | 100% | 0% | 0% | 0% | 0% |
+
+### 5.2.2 缺陷列表
+
+| 问题单号 | 问题描述 | 问题级别 | 当前状态 |
+| -------- | -------- | -------- | -------- |
+| NA | | | |
+
+# 6 测试过程评估
+
+## 6.1 测试策略回顾
+
+| 编号 | 特性 | 验证策略 | 是否按照测试策略执行 |
+| ---- | ---------------------- | ------------------------------------------------------------ | -------------------- |
+| 1 | 基本功能验证 | 验证功能是否正常; | YES |
+| 2 | 兼容性验证 | 分别在A/B/C/PG库中执行触发器启停相关命令; | YES |
+| 3 | 原有功能交互 | 1.创建触发器:create trigger(增删改查触发器)
2.修改触发器:alter trigeer (rename);
3.原有针对表启停触发器命令:ALTER TABLE [table_name] DISABLE TRIGGER [trigger_name \| all];
4.删除触发器:drop trigger;
5.系统表校验pg_trigger相关内容检查; | YES |
+| 4 | 可靠性场景校验 | 1.触发器启用/停用指定错误名称;
2.触发器启用/停用后数据库异常,修复后执行插入,依旧对应生效;
3.跨会话验证,一个session启用/停用触发器,另一个session执行插入; | YES |
+| 5 | 并发场景验证 | 同时插入多个语句,检查触发器触发情况; | YES |
+| 6 | 一条语句触发多个触发器 | 1.启用单个触发器;
2.禁用单个触发器;
3.启用全部触发器后禁用其中一个或多个;
4.停用全部触发器后启用其中一个或多个; | YES |
+| 7 | 资料验证 | 资料描述准确无误; | YES |
+
+## 6.2 测试设计评估
+
+| 编号 | 测试点修改说明 | 修改原因 | 是否影响测试质量 |
+| ---- | -------------- | -------- | ---------------- |
+| NA | | | |
+
+## 6.3 测试执行评估
+
+### 6.3.1 测试执行统计数据
+
+| 版本名称 | 工作量投入(人天) | 测试用例数 | 用例执行数 | 发现缺陷数 | 缺陷密度 |
+| ------------------- | ---------------- | ---------- | ---------- | ---------- | ---------------------------------------- |
+| openGauss 6.0.0 B24 | 7 | 31 | 31 | 0 | 0(缺陷个数)/194 loc(代码行数)=0(个/kloc) |
+
+### 6.3.2 测试用例执行结果统计数据
+
+| 总测试用例数 | 实际测试的用例数 | Passed | Failed | Blocked | Unavailable | 执行率 | 执行通过率 |
+| ------------ | ---------------- | ------ | ------ | ------- | ----------- | ------ | ---------- |
+| 31 | 31 | 31 | 0 | 0 | 0 | 100% | 100% |
+
+| 异常用例情况 | 影响分析 | 规避措施 | 后续计划 |
+| ------------ | -------- | -------- | -------- |
+| NA | | | |
+
+# 7 附件
+
+## 7.1 附件1:遗留问题列表
+
+| 序号 | 问题单号 | 问题描述 | 分类 | 问题级别 | 问题分析与影响 | 规避措施 |
+| ---- | -------- | -------- | ---- | -------- | -------------- | -------- |
+| NA | | | | | | |
+
+## 7.2 附件2:特性相关PR
+
+源代码及文档PR
+
+- 需求
+ https://e.gitee.com/opengaussorg/dashboard?issue=I9FZFN
+
+- 源码
+ https://e.gitee.com/opengaussorg/repos/opengauss/openGauss-server/pulls/5200
+
+- 文档
+ https://gitee.com/opengauss/docs/pulls/6505/files
+
+- 测试设计
+
+ https://devcloud.cn-east-3.huaweicloud.com/testmind/project/03669bfd256c444bbfda6d7fb8b83bb2/testmind/mindmap?mindId=e4412a2b1d0144e9b66b35c3582df9a9&hideDevcloudHead=true
diff --git "a/Test_Result/openGauss_6.0.0_release/\345\205\274\345\256\271\346\200\247/openGauss 6.0.0 \346\224\257\346\214\201select\346\224\257\346\214\201rotate_notrotate\345\255\220\345\217\245\346\265\213\350\257\225\346\212\245\345\221\212.md" "b/Test_Result/openGauss_6.0.0_release/\345\205\274\345\256\271\346\200\247/openGauss 6.0.0 \346\224\257\346\214\201select\346\224\257\346\214\201rotate_notrotate\345\255\220\345\217\245\346\265\213\350\257\225\346\212\245\345\221\212.md"
new file mode 100644
index 0000000..fb80503
--- /dev/null
+++ "b/Test_Result/openGauss_6.0.0_release/\345\205\274\345\256\271\346\200\247/openGauss 6.0.0 \346\224\257\346\214\201select\346\224\257\346\214\201rotate_notrotate\345\255\220\345\217\245\346\265\213\350\257\225\346\212\245\345\221\212.md"
@@ -0,0 +1,275 @@
+![avatar](../../images/openGauss.png)
+
+版权所有 © 2024 openGauss社区
+ 您对“本文档”的复制、使用、修改及分发受知识共享(Creative Commons)署名—相同方式共享4.0国际公共许可协议(以下简称“CC BY-SA 4.0”)的约束。为了方便用户理解,您可以通过访问[*https://creativecommons.org/licenses/by-sa/4.0/*](https://creativecommons.org/licenses/by-sa/4.0/) 了解CC BY-SA 4.0的概要 (但不是替代)。CC BY-SA 4.0的完整协议内容您可以访问如下网址获取:[*https://creativecommons.org/licenses/by-sa/4.0/legalcode*](https://creativecommons.org/licenses/by-sa/4.0/legalcode)。
+
+修订记录
+
+| 日期 | 修订 版本 | 修改描述 | 作者 |
+| ---------- | ----------- | -------- | -------- |
+| 2024-08-06 | 1.0 | 初稿完成 | xuexinyi |
+
+**Keywords 关键词**:ROTATE, NOT ROTATE
+
+**Abstract 摘要**:本文档主要验证新增功能select支持rotate/not rotate子句,验证其在openGauss数据库的使用,本次测试质量整体良好。
+
+**缩略语清单: **
+
+| 缩略语 | 英文全名 | 中文解释 |
+| ------ | -------- | -------- |
+| | | |
+
+***
+
+
+# 1 概述
+
+在opengauss数据库中,select支持rotate/not rotate子句,对查询到的结果进行行转列/列转行的操作。
+
+语法如下:
+
+**ROTATE(行转列):**
+
+SELECT select_expr_list
+FROM table_reference [,table_reference...]
+table_reference::= rotate_clause
+rotate_clause::=
+ROTATE
+( aggregate_function ( expr ) [[AS] alias ]
+[, aggregate_function ( expr ) [[AS] alias ] ]...
+rotate_for_clause
+rotate_in_clause
+)
+rotate_for_clause::=
+FOR { column | ( column [, column]... ) }
+rotate_in_clause::=
+IN ( { { expr | ( expr [, expr]... ) } [ [ AS] alias] }
+[, { { expr | ( expr [, expr]... ) } [ [ AS] alias] }]...
+)
+
+**NOT ROTATE(列转行):**
+
+SELECT select_expr_list
+FROM table_reference [,table_reference...]
+table_reference::= unrotate_clause
+unrotate_clause::=
+NOT ROTATE [ {INCLUDE | EXCLUDE } NULLS ]
+( { column | ( column [, column]... ) }
+rotate_for_clause
+unrotate_in_clause
+)
+unrotate_in_clause::=
+IN
+( { column | ( column [, column]... ) }
+[ AS { constant | ( constant [, constant]... ) } ]
+[, { column | ( column [, column]... ) }
+[ AS { constant | ( constant [, constant]... ) } ]]...
+)
+
+# 2 测试版本说明
+
+## 2.1 测试版本信息
+
+### 2.1.1 被测版本
+
+| 版本名称 | 软件包名称 | 测试起始时间 | 测试结束时间 | 测试人员 |
+| ------------------------------ | --------------------------------------- | ------------ | ------------ | -------- |
+| openGauss 6.0.0 build 2f96703a | openGauss-6.0.0-CentOS-64bit-all.tar.gz | 2024-07-31 | 2024-08-05 | xuexinyi |
+| openGauss 6.0.0 build a04eaf40 | openGauss-6.0.0-CentOS-64bit-all.tar.gz | 2024-08-15 | 2024-08-15 | xuexinyi |
+
+### 2.1.2 配套测试的版本
+
+| 版本名称 | 配套版本 | 版本说明 |
+| -------- | -------- | -------- |
+| NA | | |
+
+## 2.2 测试环境描述
+
+### 2.2.1 环境硬件信息
+
+| 环境信息 | 硬件型号 | 硬件配置信息 | 备注 |
+| -------- | ------------------------------------ | ------------------------------------------------------------ | -------- |
+| 虚拟机 | CentOS Linux release 7.9.2009 (Core) | CPU:Intel(R) Xeon(R) CPU E5-2640 v2 @ 2.00GHz
内存:4GB
硬盘:500GB
OS:CentOS Linux 7 (Core) | 单机部署 |
+
+
+
+# 3 版本概要测试结论、关键风险和规避措施
+
+## 3.1 测试结论总结
+
+select支持rotate/not rotate子句特性,共计执行26个用例,主要覆盖了功能测试、性能测试和资料测试,发现1个问题,遗留风险0个,整体质量良好;
+
+## 3.2 约束说明
+
+(1)仅支持数据库模式为A模式
+
+和A差异加上
+
+## 3.3 关键风险和规避措施
+
+无
+
+# 4 版本详细测试结论
+
+## 4.1 特性测试结论
+
+### 4.1.1 新需求质量评价
+
+| 特性 | 特性价值评估 | 应用说明及关键约束假设依赖 | 关键遗留事项如缺陷等 | 测试整体覆盖情况 | 特性质量评估 | 主要风险 |
+| -------------------------------------------- | ------------------------------------------------------------ | -------------------------- | -------------------- | ------------------------------------------------ | -------------------------- | -------- |
+| openGauss 6.0.0版本支持ROTATE/NOT ROTATE子句 | 在opengauss数据库中支持ROTATE/NOT ROTATE子句,实现对数据的行列转换能力,便于对数据进行重新组织以及分析优化。 | 详见章节3.2 | 无 | 主要覆盖功能测试、性能测试、兼容性测试和资料测试 | ▮ | 无 |
+
+## 4.2 产品质量属性目标(DFX)测试结论
+
+### 4.2.1 性能测试结论
+
+| 测试步骤 | 测试结果 |
+| ----------------------------------------- | ------------------------------------------------------------ |
+| (1)数据量极大场景下,行列转换性能统计; | 普通表中插入100w行数据,执行行转列/列转行操作,耗时都在9-10s,性能基本符合预期,具体性能数据见下表内容说明。 |
+
+性能测试数据:(下表是openaguss库与A库中相同功能耗时对比)
+
+| 表数据量(行) | ROTATE行转列查询耗时(opengauss库) | NOT ROTATE列转行查询耗时(opengauss库) | PIVOT列转行查询耗时(A库) | UNPIVOT列转行查询耗时(A库) |
+| -------------- | ----------------------------------- | --------------------------------------- | -------------------------- | ---------------------------- |
+| 1w | 86.622 ms | 63.275 ms | 72.314 ms | 68.945 ms |
+| 1w | 79.066 ms | 85.371 ms | 78.491 ms | 73.254 ms |
+| 10w | 298.302 ms | 322.173 ms | 284.652 ms | 292.430 ms |
+| 10w | 396.056 ms | 366.585 ms | 315.873 ms | 308.564 ms |
+| 100w | 9853.012 ms | 9821.347 ms | 10145.612 ms | 9988.235 ms |
+| 100w | 9036.205 ms | 9375.682 ms | 9684.437 ms | 9402.489 ms |
+
+### 4.2.2 可靠性测试结论
+
+| 测试步骤 | 测试结果 |
+| -------- | -------- |
+| NA | |
+
+### 4.2.3 安全&隐私保护测试结论
+
+| 测试步骤 | 测试结果 |
+| -------- | -------- |
+| NA | |
+
+### 4.2.4 可服务性测试结论
+
+| 测试步骤 | 测试结果 |
+| -------- | -------- |
+| NA | |
+
+### 4.2.5 生命周期管理测试结论
+
+| 测试步骤 | 测试结果 |
+| -------- | -------- |
+| NA | |
+
+### 4.2.6 韧性测试结论
+
+| 测试步骤 | 测试结果 |
+| -------- | -------- |
+| NA | |
+
+### 4.2.7 兼容性测试结论
+
+| 测试步骤 | 测试结果 |
+| ------------------------------------------------------------ | -------------------------------------- |
+| 1.分别在兼容B、C、PG库下执行测试用例场景,执行正常报错,不影响数据库正常使用, | 执行26条用例,执行均符合预期,测试通过 |
+
+### 4.2.8 升级测试结论
+
+| 测试步骤 | 升级路径 | 测试结果 |
+| -------- | -------- | -------- |
+| NA | | |
+
+## 4.3 资料测试结论
+
+| 序号 | 测试章节 | 测试结论 |
+| ---- | ---------------------------------------- | ------------------------ |
+| 1 | SQL参考>SQL语言结构和语法>SQL语法>SELECT | 整体质量良好,未发现问题 |
+
+# 5 测试对象质量评估
+
+## 5.1 覆盖率分析
+
+本次测试主要覆盖各种sql场景下,使用rotate/not rotate子句的方式进行行转列、列转行功能验证、异常场景下的合理报错、复杂场景的正常使用。
+
+## 5.2 缺陷统计和分析
+
+### 5.2.1 缺陷统计
+
+| | 问题总数 | 严重 | 主要 | 次要 | 不重要 |
+| ------ | -------- | ---- | ---- | ---- | ------ |
+| 数目 | 1 | 0 | 0 | 1 | 0 |
+| 百分比 | 100% | 0% | 0% | 100% | 0% |
+
+### 5.2.2 缺陷列表
+
+| 问题单号 | 问题描述 | 问题级别 | 当前状态 |
+| -------- | ------------------------------------------------------------ | -------- | -------- |
+| IAFAYM | 【测试类型:SQL功能】【6.0.0】【行列转换】rotate/not rotate函数不支持with子句,not rotate不支持存储过程中使用自定义变量https://gitee.com/opengauss/openGauss-server/issues/IAFAYM | 主要 | 已完成 |
+
+# 6 测试过程评估
+
+## 6.1 测试策略回顾
+
+| 编号 | 特性 | 验证策略 | 是否按照测试策略执行 |
+| ---- | ---------------------- | ------------------------------------------------------------ | -------------------- |
+| 1 | 基本功能验证 | 验证功能是否正常; | YES |
+| 2 | 兼容性验证 | 分别在A/B/C/PG库中执行行列转换语句; | YES |
+| 3 | 各种数据类型验证 | 验证各种数据类型下执行行列转换;(表类型包含普通表、临时表、分区表、ustore表等;数据类型包含空值、特殊字符、中文等) | YES |
+| 4 | 多列转换 | 验证进行多列执行行列转换; | YES |
+| 5 | 聚合函数验证 | 执行行列转换时带聚合函数; | YES |
+| 6 | 查询结果生成表/视图 | 使用行列转换后的结果生成新表/新视图; | YES |
+| 7 | 其他查询中使用行列转换 | 子查询、并行查询中使用行列转换; | YES |
+| 8 | 缺省验证 | 验证缺省(如in语句中不带as别名等依旧可转换,其他参数不可缺); | YES |
+| 9 | 性能验证 | 数据量极大场景下,行列转换性能统计; | YES |
+| 10 | 资料验证 | 资料描述准确无误 | YES |
+
+## 6.2 测试设计评估
+
+| 编号 | 测试点修改说明 | 修改原因 | 是否影响测试质量 |
+| ---- | -------------- | -------- | ---------------- |
+| NA | | | |
+
+## 6.3 测试执行评估
+
+### 6.3.1 测试执行统计数据
+
+| 版本名称 | 工作量投入(人天) | 测试用例数 | 用例执行数 | 发现缺陷数 | 缺陷密度 |
+| ------------------- | ---------------- | ---------- | ---------- | ---------- | ----------------------------------------- |
+| openGauss 6.0.0 B24 | 7 | 26 | 26 | 1 | 1(缺陷个数)/1817 loc(代码行数)=1(个/kloc) |
+
+### 6.3.2 测试用例执行结果统计数据
+
+| 总测试用例数 | 实际测试的用例数 | Passed | Failed | Blocked | Unavailable | 执行率 | 执行通过率 |
+| ------------ | ---------------- | ------ | ------ | ------- | ----------- | ------ | ---------- |
+| 26 | 26 | 26 | 0 | 0 | 0 | 100% | 100% |
+
+| 异常用例情况 | 影响分析 | 规避措施 | 后续计划 |
+| ------------ | -------- | -------- | -------- |
+| NA | | | |
+
+# 7 附件
+
+## 7.1 附件1:遗留问题列表
+
+| 序号 | 问题单号 | 问题描述 | 分类 | 问题级别 | 问题分析与影响 | 规避措施 |
+| ---- | -------- | -------- | ---- | -------- | -------------- | -------- |
+| NA | | | | | | |
+
+## 7.2 附件2:特性相关PR
+
+源代码及文档PR
+
+- 需求
+ https://e.gitee.com/opengaussorg/dashboard?issue=I8XBQ9
+
+- 源码
+ https://gitee.com/opengauss/openGauss-server/pulls/4990
+
+- 文档
+ https://gitee.com/opengauss/docs/pulls/6358/files
+
+- 测试设计
+
+ https://devcloud.cn-east-3.huaweicloud.com/testmind/project/03669bfd256c444bbfda6d7fb8b83bb2/testmind/mindmap?mindId=079169bc798940a9ac0a47e179128fa8&hideDevcloudHead=true
+
--
Gitee