已合并
提交邮储730社区需求测试报告 #405
yc-jianda创建于 2024年9月4日
提交邮储730社区需求测试报告 #405
已合并
从refs/pull/405/head合入到master
共 2 个文件变更+243-0
| @@ -0,0 +1,243 @@ | |||
| 1 | + | ||
| 2 | + | ||
| 3 | +版权所有 © 2024 openGauss社区 | ||
| 4 | + 您对“本文档”的复制、使用、修改及分发受知识共享(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)。 | ||
| 5 | + | ||
| 6 | +修订记录 | ||
| 7 | + | ||
| 8 | +| 日期 | 修订版本 | 修改描述 | 作者 | | ||
| 9 | +| --------- | ---- | -------------------------------- | -------- | | ||
| 10 | +| 2024-8-26 | 1.0 | openGauss 6.0.0版本社区高可用需求测试报告初稿完成 | wuhaihua | | ||
| 11 | +| 2024-9-3 | 1.1 | openGauss 6.0.0版本社区高可用需求测试报告定稿完成 | wuhaihua | | ||
| 12 | + | ||
| 13 | +[TOC] | ||
| 14 | + | ||
| 15 | +**Keywords 关键词**:升级,高可用,软连接,审计日志,备份工具 | ||
| 16 | + | ||
| 17 | +**Abstract 摘要**:本文对openGauss 6.0.0版本社区高可用需求给出本阶段的测试范围、结果、分析及质量评价,同时对测试活动进行回顾总结。 | ||
| 18 | + | ||
| 19 | +**缩略语清单: ** | ||
| 20 | + | ||
| 21 | +| 缩略语 | 英文全名 | 中文解释 | | ||
| 22 | +| ------ | -------- | -------- | | ||
| 23 | +| 无 | | | | ||
| 24 | + | ||
| 25 | + | ||
| 26 | +# 1 概述 | ||
| 27 | + | ||
| 28 | +opengauss6.0.0版本社区高可用需求包括支持升级状态查询,审计日志支持完整性校验,备份和恢复⼯具审计⽇志,修复数据库主节点服务启动审计日志丢失bug,软连接管理 | ||
| 29 | + | ||
| 30 | +# 2 测试版本说明 | ||
| 31 | + | ||
| 32 | +## 2.1 测试版本信息 | ||
| 33 | + | ||
| 34 | +### 2.1.1 被测版本 | ||
| 35 | + | ||
| 36 | +| 版本名称 | 软件包名称 | 测试起始时间 | 测试结束时间 | 测试人员 | | ||
| 37 | +| ------------------------------- | --------- | --------- | --------- | --------- | | ||
| 38 | +| openGauss 6.0.0 build B25 | opengauss | 2024-8-6 | 2024-8-15 | wuhaihua | | ||
| 39 | +| openGauss 6.0.0 build B26 | opengauss | 2024-8-16 | 2024-8-22 | wuhaihua | | ||
| 40 | +| openGauss 6.0.0 build B28 | opengauss | 2024-8-23 | 2024-8-23 | wuhaihua | | ||
| 41 | +| openGauss 6.0.0 build 7eeaf87e | opengauss | 2024-8-6 | 2024-8-15 | yangminsi | | ||
| 42 | +| openGauss 6.0.0 build 4d2cfad9 | opengauss | 2024-8-16 | 2024-8-23 | yangminsi | | ||
| 43 | +| openGauss 3.0.5 519ad618 | opengauss | 2024-8-6 | 2024-8-23 | yangminsi | | ||
| 44 | +| openGauss 5.0.0 Release | opengauss | 2024-8-22 | 2024-8-23 | yangminsi | | ||
| 45 | +| openGauss 6.0.0 85892fb | opengauss | 2024-9-2 | 2024-9-2 | wuhaihua | | ||
| 46 | + | ||
| 47 | + | ||
| 48 | + | ||
| 49 | +### 2.1.2 配套测试的版本 | ||
| 50 | + | ||
| 51 | +| 版本名称 | 配套版本 | 版本说明 | | ||
| 52 | +| --------| --------------| -------- | | ||
| 53 | +| 无 | | | | ||
| 54 | + | ||
| 55 | +## 2.2 测试环境描述 | ||
| 56 | +### 2.2.1 环境硬件信息 | ||
| 57 | + | ||
| 58 | +| 环境信息 | 硬件配置信息 | 备注 | | ||
| 59 | +| --------- | ------------------------------------------------------------------------------------- | ------------- | | ||
| 60 | +| 主集群5台x86 | CPU: Intel Core Processor 32核 2593 MHz<br>OS: Asianux 7.6.1907<br>内存: 62G<br>磁盘: 300G | | | ||
| 61 | +| 主集群5台arm | CPU: Kunpeng-920<br>OS: Kylin V10<br>内存: 63G<br>磁盘: 300G | | | ||
| 62 | +| 灾备集群3台x86 | CPU: Intel Core Processor 32核 2593 MHz<br>OS: Asianux 7.6.1907<br>内存: 62G<br>磁盘: 300G | 只在流失容灾相关用例中使用 | | ||
| 63 | +| 灾备集群3台arm | CPU: Kunpeng-920<br>OS: Kylin V10<br>内存: 63G<br>磁盘: 30G | 只在流失容灾相关用例中使用 | | ||
| 64 | + | ||
| 65 | +# 3 版本概要测试结论、关键风险和规避措施 | ||
| 66 | + | ||
| 67 | +本次特性测试支持升级状态查询,审计日志支持完整性校验,备份和恢复⼯具审计⽇志,修复数据库主节点审计日志丢失bug,软连接管理,包含功能测试和技术测试,输出测试用例148个,执行测试共2轮,发现issue共2个,1个未修复待修改后回归,整体质量良好。 | ||
| 68 | +# 4 版本详细测试结论 | ||
| 69 | + | ||
| 70 | +## 4.1 特性测试结论 | ||
| 71 | + | ||
| 72 | +### 4.1.1 新需求质量评价 | ||
| 73 | + | ||
| 74 | +| 特性 | 特性价值评估 | 应用说明及关键约束假设依赖 | 关键遗留事项如缺陷等 | 测试整体覆盖情况 | 特性质量评估 | 主要风险 | | ||
| 75 | +| --------------- | ------------------------------------ | ------------- | ---------- | -------- | --------------------------- | ---- | | ||
| 76 | +| 安全审计增强 | 支持对备份恢复操作进行审计 | 无 | 无 | 100% | <font color=green>▮</font> | | | ||
| 77 | +| 安全审计增强 | 修复数据库主节点服务启动审计日志丢失. | 无 | 无 | 100% | <font color=green>▮</font> | | | ||
| 78 | +| 审计日志支持完整性校验 | 审计日志支持基于sha256算法进行完整性校验 | 无 | 遗留缺陷1个 | 100% | <font color=yellow>▲</font> | | | ||
| 79 | +| 支持查询升级状态 | 支持使用gs_upgradectl实时查询查询升级状态 | 无 | 无 | 100% | <font color=green>▮</font> | | | ||
| 80 | +| CM 支持对软链接目录空间管理 | 支持对 base, global, pg_xlog, pg_tblspc | 无 | 无 | 100% | <font color=green>▮</font> | | | ||
| 81 | + | ||
| 82 | +*特性质量评估说明*: | ||
| 83 | + | ||
| 84 | +<font color=red><font color=red>●</font></font>: *表示特性不稳定,风险高* | ||
| 85 | + | ||
| 86 | +<font color=yellow><font color=yellow>▲</font></font>: *表示特性基本可用,遗留少量问题* | ||
| 87 | + | ||
| 88 | +<font color=green>▮</font>: *表示特性质量良好* | ||
| 89 | + | ||
| 90 | +## 4.2 产品质量属性目标(DFX)测试结论 | ||
| 91 | +### 4.2.1 性能测试结论 | ||
| 92 | + | ||
| 93 | +arm和x86环境tpcc100并发梯度下,审计开关打开,6版本相对3版本tps下降约50%左右。 | ||
| 94 | +高可用测试结果,切换时长和业务报错时间无明显异常 | ||
| 95 | + | ||
| 96 | +| 测试步骤 | 测试结果 | | ||
| 97 | +| ---------------------------------- | --------------------------------------- | | ||
| 98 | +| 审计开启/关闭,一定压力下,指定节点切换/灾备切换/灾备回切,对比新老版本的切换时长和业务报错时长| 无明显异常| | ||
| 99 | +| 审计开启/关闭,不同梯度并发压测,记录响应时间,TPS,CPU,内存|最优并发下,集群6版本相对3版本下降约50%,单机下降约18% | | ||
| 100 | + | ||
| 101 | +### 4.2.2 可靠性测试结论 | ||
| 102 | + | ||
| 103 | +无 | ||
| 104 | + | ||
| 105 | +### 4.2.3 安全&隐私保护测试结论 | ||
| 106 | + | ||
| 107 | +无 | ||
| 108 | + | ||
| 109 | +### 4.2.4 可服务性测试结论 | ||
| 110 | + | ||
| 111 | +无 | ||
| 112 | + | ||
| 113 | +### 4.2.5 生命周期管理测试结论 | ||
| 114 | + | ||
| 115 | +无 | ||
| 116 | + | ||
| 117 | +### 4.2.6 韧性测试结论 | ||
| 118 | + | ||
| 119 | +无 | ||
| 120 | + | ||
| 121 | +### 4.2.7 兼容性测试结论 | ||
| 122 | + | ||
| 123 | +无 | ||
| 124 | + | ||
| 125 | +### 4.2.8 升级测试结论 | ||
| 126 | + | ||
| 127 | +从无该特性版本升级至该特性所在版本,升级成功;升级后数据库,执行该特性功能基本正常,遗留1个问题待解决后回归 | ||
| 128 | + | ||
| 129 | +## 4.3 资料测试结论 | ||
| 130 | +无 | ||
| 131 | + | ||
| 132 | +# 5 测试对象质量评估 | ||
| 133 | + | ||
| 134 | +## 5.1 覆盖率分析 | ||
| 135 | + | ||
| 136 | +已覆盖支持升级状态查询,审计日志支持完整性校验,备份和恢复⼯具审计⽇志,修复数据库主节点审计日志丢失bug,软连接管理功能实现,以及不同并发下新版本的性能测试。 | ||
| 137 | + | ||
| 138 | +## 5.2 缺陷统计和分析 | ||
| 139 | + | ||
| 140 | +### 5.2.1 缺陷统计 | ||
| 141 | + | ||
| 142 | +| | 问题总数 | 严重 | 主要 | 次要 | 不重要 | | ||
| 143 | +| ------ | -------- | ---- | ---- | ---- | ------ | | ||
| 144 | +| 数目 | 2 | 0 | 1 | 1 | 0 | | ||
| 145 | +| 百分比 | 100% | 0% | 50% | 50% | 0% | | ||
| 146 | + | ||
| 147 | +### 5.2.2 缺陷列表 | ||
| 148 | + | ||
| 149 | +#### 开发功能涉及issue | ||
| 150 | + | ||
| 151 | +| 问题单号 | 问题描述 | 问题级别 | 当前状态 | | ||
| 152 | +| -------------------------------------------------------------------- | ------------------------------------------- | ---- | ---- | | ||
| 153 | +| [IAM0TW](https://gitee.com/opengauss/openGauss-server/issues/IAMOTW) | 备份恢复工具审计日志敏感信息屏蔽存在问题, 及gs_basebackup 审计日志缺失 | 次要 | 已提交 | | ||
| 154 | +| [IAOCGK](https://gitee.com/opengauss/openGauss-server/issues/IAOCGK) | 6.0版本审计日志支持完整性验证,tpcc性能下降 | 主要 | 已提交 | | ||
| 155 | + | ||
| 156 | + | ||
| 157 | + | ||
| 158 | +#### 测试发现的其他issue | ||
| 159 | + | ||
| 160 | +| 问题单号 | 问题描述 | 问题级别 | 当前状态 | | ||
| 161 | +| -------------------------------------------------------------------- | -------------------------- | ---- | ---- | | ||
| 162 | +| [IAM0TW](https://gitee.com/opengauss/openGauss-server/issues/IAMOTW) | gs_sdr start/stop 命令报错 | 次要 | 已修复 | | ||
| 163 | +| [IAKB57](https://gitee.com/opengauss/openGauss-OM/issues/IAKB57) | 数据库集群滚动升级失败 | 次要 | 已提交 | | ||
| 164 | +| [IAKM2F](https://gitee.com/opengauss/CM/issues/IAKM2F) | 主节点软连接所指向目录损坏后, 集群没有自动选出新主 | 次要 | 已提交 | | ||
| 165 | +| [IALYQC](https://gitee.com/opengauss/openGauss-server/issues/IALYQC) | gs_dump 等工具没有屏蔽连接串中敏感信息 | 次要 | 已提交 | | ||
| 166 | +| [IAIOQU](https://gitee.com/opengauss/CM/issues/IAIOQU) | 磁盘使用率低于阈值后仍为ReadOnly | 次要 | 没复现 | | ||
| 167 | +| [IAJZPA](https://gitee.com/opengauss/CM/issues/IAJZPA) | 容灾集群不拥有多数派节点时, 自动选首备存在问题 | 次要 | 没复现 | | ||
| 168 | + | ||
| 169 | + | ||
| 170 | +# 6 测试过程评估 | ||
| 171 | + | ||
| 172 | +## 6.1 测试策略回顾 | ||
| 173 | + | ||
| 174 | + | ||
| 175 | +| 编号 | 特性 | 验证策略 | 是否按照测试策略执行 | | ||
| 176 | +| ---- | ---- | ------------------------------------------------ | ----------------- | | ||
| 177 | +| 1 | 支持查询升级状态 | 测试不同场景下查询升级状态 | YES | | ||
| 178 | +| 2 | 软连接管理 | 软连接目录下磁盘达到阈值后的数据库状态 | YES | | ||
| 179 | +| 3 | 备份和恢复⼯具审计⽇志 | gs_dump,gs_dumpall,gs_restore,gs_basebackup,gs_probackup备份恢复工具命令执行并记录审计日志| YES | | ||
| 180 | +| 4 | 修复数据库主节点服务启动审计日志丢失bug | 数据库服务启动20次,均正确记录审计日志| YES | | ||
| 181 | +| 5 | 审计日志支持完整性校验 | 审计日志新增两个参数,以及不同并发下的新老版本性能指标对比| YES| | ||
| 182 | + | ||
| 183 | +## 6.2 测试设计评估 | ||
| 184 | + | ||
| 185 | +无 | ||
| 186 | + | ||
| 187 | +## 6.3 测试执行评估 | ||
| 188 | + | ||
| 189 | +### 6.3.1 测试执行统计数据 | ||
| 190 | + | ||
| 191 | +| 版本名称 | 工作量投入(人天) | 测试用例数 | 用例执行数 | 发现缺陷数 | 代码量(KLOC) | 缺陷密度 | | ||
| 192 | +| ------------------------------ | --------- | ----- | ----- | ----- | --------- | ---- | | ||
| 193 | +| openGauss 6.0.0 build B25 | 8 | 22 | 22 | 0 | | | | ||
| 194 | +| openGauss 6.0.0 build B26 | 6 | 28 | 28 | 1 | 0.9 | 2.22 | | ||
| 195 | +| openGauss 6.0.0 build B28 | 1 | 4 |4 | 0 | | | | ||
| 196 | +| openGauss 6.0.0 build 7eeaf87e | 8 | 35 | 35 | 1 | | | | ||
| 197 | +| openGauss 6.0.0 build 4d2cfad9 | 6 | 20 | 20 | 0 | | | | ||
| 198 | +| openGauss 3.0.5 519ad618 | 14 | 42 | 42 | 0 | | | | ||
| 199 | +| openGauss 5.0.0 Release |2 | 1 |1 | 0 | | | | ||
| 200 | +| openGauss 6.0.0 85892fb |1 | 10 |10 | 0 | | | | ||
| 201 | +本次测试共发现2个issue,1个issue待解决后回归,还发现6个数据库遗留问题,整体质量良好。 | ||
| 202 | + | ||
| 203 | +### 6.3.2 测试用例执行结果统计数据 | ||
| 204 | + | ||
| 205 | +| | 计划测试用例数 | 实际测试的用例数 | Passed | Failed | Blocked | Unavailable | 执行率 | 执行通过率 | | ||
| 206 | +| ------ | -------------- | ---------------- | ------ | ------ | ------- | ----------- | ------ | ---------- | | ||
| 207 | +| 第一轮 | 148 | 148 | 134 | 14 | 0 | 0 | 100% | 90.5% | | ||
| 208 | +| 第二轮 | 10 | 10 | 10 | 0 | 0 | 0 | 100% | 100% | | ||
| 209 | + | ||
| 210 | +本次测试共输出测试用例148个,执行测试共2轮,发现issue共2个,其他6个为数据库遗留问题,整体质量良好。 | ||
| 211 | + | ||
| 212 | +| 异常用例情况 | 影响分析 | 规避措施 | 后续计划 | | ||
| 213 | +| ------------------------------------------- | -------------------- | ------------ | ----------------- | | ||
| 214 | +| 流式容灾功能在B25, B26 两个版本中存在问题, 相关用例执行失败 | 流式容灾功能和测试功能关联较低, 无影响 | | 待流失容灾相关功能修复后,回归测试 | | ||
| 215 | +| 滚动升级功能在B25, B26, B28 三个版本中均存在问题, 相关用例执行失败 | 集群单节点灰度升级失败 | 全部节点升级 | 待解决后回归 | | ||
| 216 | + | ||
| 217 | + | ||
| 218 | +# 7 附件 | ||
| 219 | + | ||
| 220 | +## 7.1 附件1:遗留问题列表 | ||
| 221 | + | ||
| 222 | +| 序号 | 问题单号 | 问题描述 | 分类 | 问题级别 | 问题分析与影响 | 规避措施 | | ||
| 223 | +| --- | -------------------------------------------------------------------- | ------------------------- | ----- | ---- | ------- | ---- | | ||
| 224 | +| 1 | [IAOCGK](https://gitee.com/opengauss/openGauss-server/issues/IAOCGK) | 6.0版本审计日志支持完整性验证,tpcc性能下降 | 数据库性能 | 主要 | 性能影响 | 审计日志 | | ||
| 225 | + | ||
| 226 | + | ||
| 227 | +## 7.2 附件2:特性相关PR | ||
| 228 | + | ||
| 229 | +特性代码pr: | ||
| 230 | +https://gitee.com/opengauss/openGauss-server/pulls/5813 | ||
| 231 | + | ||
| 232 | +https://gitee.com/opengauss/openGauss-server/pulls/5867 | ||
| 233 | + | ||
| 234 | +https://gitee.com/opengauss/openGauss-server/pulls/5862 | ||
| 235 | + | ||
| 236 | +https://gitee.com/opengauss/CM/pulls/226 | ||
| 237 | + | ||
| 238 | +https://gitee.com/opengauss/openGauss-OM/pulls/776 | ||
| 239 | + | ||
| 240 | +修复issuePR: | ||
| 241 | +https://gitee.com/opengauss/openGauss-server/pulls/6158 | ||
| 242 | + | ||
| 243 | +https://gitee.com/opengauss/openGauss-server/pulls/6197 | ||