From 49f7fcf15601020095d5c22eff0950c719434f3d Mon Sep 17 00:00:00 2001 From: cloudsbreak Date: Mon, 24 Mar 2025 15:42:06 +0800 Subject: [PATCH] add test report_0324_2 --- ...13\350\257\225\346\212\245\345\221\212.md" | 230 ++++++++++++++++++ 1 file changed, 230 insertions(+) create mode 100644 "Test_Result/openGauss_7.0.0_RC1/\345\206\205\346\240\270/openGauss\347\211\271\346\200\247vacuum\351\200\232\347\224\250\346\200\247\350\203\275\344\274\230\345\214\226\346\265\213\350\257\225\346\212\245\345\221\212.md" diff --git "a/Test_Result/openGauss_7.0.0_RC1/\345\206\205\346\240\270/openGauss\347\211\271\346\200\247vacuum\351\200\232\347\224\250\346\200\247\350\203\275\344\274\230\345\214\226\346\265\213\350\257\225\346\212\245\345\221\212.md" "b/Test_Result/openGauss_7.0.0_RC1/\345\206\205\346\240\270/openGauss\347\211\271\346\200\247vacuum\351\200\232\347\224\250\346\200\247\350\203\275\344\274\230\345\214\226\346\265\213\350\257\225\346\212\245\345\221\212.md" new file mode 100644 index 0000000..ecf761c --- /dev/null +++ "b/Test_Result/openGauss_7.0.0_RC1/\345\206\205\346\240\270/openGauss\347\211\271\346\200\247vacuum\351\200\232\347\224\250\346\200\247\350\203\275\344\274\230\345\214\226\346\265\213\350\257\225\346\212\245\345\221\212.md" @@ -0,0 +1,230 @@ +![](../../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)。 + +修订记录 + +| 日期 | 修订版本 | 修改描述 | 作者 | +| --- | --- | --- | --- | +| 2025.2.24 | 1 | 编写测试报告 | 王择如 | + + +[TOC] + +**Keywords 关键词**:_vacuum_ + +**Abstract 摘要**:本阶段测试了行存表、列存表、分区表在搭建索引前提下,对不同死元组数量进行vacuum测试,一共15条用例,通过15条,无缺陷,质量良好。 + +# 1 概述 +_本报告主要测试了vacuum的优化特性,对比tidstore和array在内存占用和耗时,以及bypass index的实现场景测试。_ + +# 2 测试版本说明 +_测试版本是opengauss的7.0版本,环境为ARM openeuler20.03。_ + +_对比版本是opengauss 5.0版本,环境为ARM openeuler20.03。_ + +## 2.1 测试版本信息 +### 2.1.1 被测版本 +_本节描述每轮被测对象的版本信息(若使用了补丁,补丁版本号不能遗漏);描述测试的时间、地点和测试人员。建议使用以下表格说明,可自行增减表中字段_ + +| 版本名称 | 软件包名称 | 测试起始时间 | 测试结束时间 | 测试人员 | +| --- | --- | --- | --- | --- | +| _7.0.0 B008_ | opengauss | 2024.12.15 | 2024.12.25 | 王择如 | + + +## 2.2 测试环境描述 +### 2.2.1 环境硬件信息 +| 环境信息 | 硬件型号 | 硬件配置信息 | 备注 | +| --- | --- | --- | --- | +| ARM | | CPU:128 内存:765GB 硬盘:3.5TB OS:openeuler20.03 文件系统:xfs 网卡:XX | | + + +### 2.2.3 OS版本 +_选填,如果2.2.1中填写多个硬件配置相同的信息,但操作系统版本不同,可在此章节内容详细列举使用的操作系统_ + +| 操作系统 | OS版本 | 版本说明 | +| --- | --- | --- | +| XX | XX | XX | + + +# 3 版本概要测试结论、关键风险和规避措施 +_本章概要性给出版本测试结论、风险和规避措施。_ + +## 3.1 测试结论总结 +_完成了vacuum优化的性能测试,需求100%实现,所有被测特性的测试用例的累计执行覆盖率达到100%,回归测试结果正常。_ + +## 3.2 约束说明 +_bypass index 触发条件 _ + +_vacuum命令会实际跳过index vacuum⼦阶段,相关约束及条件汇总如下:_ + +_ 1. vacuum命令未指定 FREEZE 选项。 _ + +_ 2. 有索引。_ + +_3. 表⾮空。_ + +_4. ⾮ustore、bucket表。_ + +_5. 未触发过maintenance_work_mem的限制。_ + +_6. 含死元组⻚数⽐例⼩于2%。_ + +_7. 死元组内存消耗⼩于32MB。 _ + +## 3.3 关键风险和规避措施 +无 + +# 4 版本详细测试结论 +_本章节针对总体测试策略计划的测试内容,给出详细的测试结论。_ + +## 4.1 特性测试结论 +### 4.1.1 新需求质量评价 +与array的实现方式相比,在死元组少的时候,内存占用稍稍大一点,但也可以接受。在死元组数多的时候比如上万 ,内存占用会大大的优化 , 同时时间也是大幅减少 。特性质量良好,满足要求。 + +## 4.2 产品质量属性目标(DFX)测试结论 +_此章节必填项,这里的产品质量属性目标包括可靠性、可服务性、可测试性、安全性、性能等。_ + +_按照总体测试策略中对产品质量属性目标分析和执行策略,完成相应质量属性目标评估;总体测试策略中有要求但验证未执行的需给出说明。如果DFX质量属性有相关验证报告,可作为附件(如本测试阶段涉及则填写)_ + +### 4.2.1 性能测试结论 +_按照总体测试策略中对产品质量属性目标分析和执行策略,完成相应质量属性目标评估;总体测试策略中有要求但验证未执行的需给出说明。(如本测试阶段涉及则填写)下表仅供参考,不作为强制输出方式_ + +| 测试步骤 | 测试结果 | +| --- | --- | +| --建表
--插入1亿两千万行数据
--创建btree索引
--analyze
--删除1亿行数据
--vacuum | tidstore实现方式:
耗时:26.3s 内存占用:38.8MB
array实现方式:
耗时:50s 内存占用:763MB | +| --建表
--插入1亿两千万行数据
--创建btree索引
--analyze
--删除100行数据
--vacuum | --触发index scan bypass,耗时27ms
--以前版本未触发index scan bypass,耗时11.9s | + + +### 4.2.2 可靠性测试结论 +无 + +### 4.2.3 安全&隐私保护测试结论 +无 + +### 4.2.4 可服务性测试结论 +无 + +### 4.2.5 生命周期管理测试结论 +无 + +### 4.2.6 韧性测试结论 +无 + +### 4.2.7 兼容性测试结论 +_按照总体测试策略中制定的兼容性测试项目,给出验证结论。(如本测试阶段涉及则填写)_ + +| 测试步骤 | 测试结果 | +| --- | --- | +| 在mysql兼容模式下执行4.2.1的步骤 | tidstore实现方式耗时35s,内存占用40MB
array实现方式耗时108s,内存占用763MB | + + +### 4.2.8 升级测试结论 +无 + +## 4.3 资料测试结论 +无 + +# 5 测试对象质量评估 +_本章节对被测对象的质量进行评估,主要从需求覆盖、场景覆盖等情况和缺陷发现的情况进行分析,目的是审视被测试的充分性和完备性,以说明上述测试结论的可信。_ + +## 5.1 覆盖率分析 +_对测试的覆盖率进行分析,根据版本具体覆盖策略给出相应覆盖率分析,如需求覆盖情况、代码覆盖情况、场景覆盖等。根据产品覆盖策略给出覆盖率统计,对于覆盖率异常情况给出分析和后续措施。_ + +## 5.2 缺陷统计和分析 +_给出各特性或模块缺陷的分布或分类统计以及缺陷走势分析。建议通过表格说明,下表仅供参考,不作为强制输出方式_ + +### 5.2.1 缺陷统计 +| | 问题总数 | 严重 | 主要 | 次要 | 不重要 | +| --- | --- | --- | --- | --- | --- | +| 数目 | 0 | | | | | +| 百分比 | 0 | | | | | + + + + +### 5.2.2 缺陷列表 +| 问题单号 | 问题描述 | 问题级别 | 当前状态 | +| --- | --- | --- | --- | +| | | | | +| | | | | + + +# 6 测试过程评估 +## 6.1 测试策略回顾 +_回顾本阶段的测试策略,建议以表格的方式检查测试策略规定的活动是否都已经落实。_ + +| 编号 | 特性 | 验证策略 | 是否按照测试策略执行 | +| --- | --- | --- | --- | +| 1 | vacuum优化 | _行存表、列存表、分区表在搭建索引前提下,对不同死元组数量进行vacuum测试,与之前的版本对比速度及内存占用情况_ | YES | + + +## 6.2 测试设计评估 +_提供对本次测试活动的测试设计的评估。可结合测试设计评审建议;评审完成,测试过程中,发现的新增或删减的测试点进行说明。_ + +| 编号 | 测试点修改说明 | 修改原因 | 是否影响测试质量 | +| --- | --- | --- | --- | +| | | | __ | +| | | | | +| | | | | + + +## 6.3 测试执行评估 +_提供对本次测试活动的测试执行过程的评估结论。描述对测试执行活动的改进建议,以供后续测试执行活动中借鉴参考;_ + +_测试执行活动评估结论可依据以下提供的“测试执行统计数据”及“测试用例执行结果统计数据”进行分析而给出。_ + +### 6.3.1 测试执行统计数据 +| 版本名称 | 工作量投入(人天) | 测试用例数 | 用例执行数 | 发现缺陷数 | 代码量 | 缺陷密度 | +| --- | --- | --- | --- | --- | --- | --- | +| _opengauss 7.0.0 B008_ | 3 | 15 | 15 | 0 | 4.75 | 0 | +| _opengauss 5.0_ | 3 | 15 | 15 | 0 | / | 0 | + + +### 6.3.2 测试用例执行结果统计数据 +_对本次测试用例执行结果统计,其中的字段可根据实际情况进行设计和裁剪。对于Failed,Blocked,Unavailable的测试用例项不为0,须给出说明,并明确相应的后续计划(如:对于物料问题导致未执行用例,则需明确相应的物料计划;对于Blocked用例,需明确问题解决与相应版本的测试时间等)。对于最后一轮测试,要给出相应的规避措施。_ + +| 总测试用例数 | 实际测试的用例数 | Passed | Failed | Blocked | Unavailable | 执行率 | 执行通过率 | +| --- | --- | --- | --- | --- | --- | --- | --- | +| 15 | 15 | 15 | 0 | 0 | 0 | 100% | 100% | + + +_其中:_ + +_Passed 用例执行成功_ + +_Failed 用例全部或部分执行结果未通过或者测试执行过程中遇到其他与本用例无关的失效事件_ + +_Blocked由于产品本身的问题导致用例不可执行_ + +_Unavailable由于软件本身以外,如环境、工具、物料、时间、人力资源等因素导致用例未执行_ + +| 异常用例情况 | 影响分析 | 规避措施 | 后续计划 | +| --- | --- | --- | --- | +| 0 | | | | + + +# 7 附件 +## 7.1 附件1:遗留问题列表 +| 序号 | 问题单号 | 问题描述 | 分类 | 问题级别 | 问题分析与影响 | 规避措施 | +| --- | --- | --- | --- | --- | --- | --- | +| 1 | XX | XX | XX | XX | XX | xx | + + +## 7.2 附件2:特性相关PR +_代码pr:_ + +[_[VACUUM] Use tidstore & Implement bypass vacuum index · Pull Request !5783 · openGauss/openGauss-server - Gitee.com_](https://gitee.com/opengauss/openGauss-server/pulls/5783) + +_ 测试设计:_ + +_https://devcloud.cn-east3.huaweicloud.com/testmind/project/03669bfd256c444bbfda6d7fb8b83bb2/testmind/home_ + +_openGauss/测试/测试设计/openGauss_7.0.0/数据库服务/【vacuum】通用性能优化 +__测试用例:_ + +_https://devcloud.cn-east3.huaweicloud.com/cloudtestportal/project/03669bfd256c444bbfda6d7fb8b83bb2/testcase?branch_id=vb100000vvqelovg _ + +_openGauss/测试/测试用例/openGauss_7.0.0/数据库服务/【vacuum】通用性能优化_ + -- Gitee