Yuxing Chen
Yuxing Chen
类型:功能添加-参数发现和提取 添加参数:3TS-COO现在主要监控事务的执行结果,缺少其他参数的监控。我们希望参与者通过理解框架,自行提出还有什么重要参数可以被提取并监控,添加相关代码,并阐述该参数的意义。 **希望得到**:对于框架还有什么重要参数的阐述,和提取该参数的功能。 开发方式:fork分支coo-consistency-check代码到自己的仓库,clone后添加时间间隔参数的提取。 **本issue为2024犀牛鸟开源人才培养活动专属issue,仅供在校大学生参与领取** 【认领issue】在[研学基地](https://docs.qq.com/sheet/DTk9YV3pXSklZZ29D)"issue营地"对应issue行的M~R列**抢滩报名**,即视为**认领成功**。 【完成issue】已认领issue的同学,请同步在本issue评论区回复“已成功领取本issue”; 如7天内无提交任何进展包括不限于comment \ commit \ Pull Request,则将视为同学主动放弃issue,组委会将释放issue给下一位等候者。
隔离级别是dbms为了平衡隔离性和事务的并发效率而制定的SQL标准。主流DBMS的隔离级别,由低到高包括读未提交,读已提交,可重复读和可串行执行。低的隔离级别,不同事务会互相干扰,而高的隔离级别,每个事务都近似于单独在执行,没有其他事务并发执行。现在3TS-coo的测试样例动态生成(位于3TS/src/dbtest/src/mda_generate.py)对于所有隔离级别都生成一样的测试样例。然而同样的测试样例,在不同的隔离级别下,可能结果不同。例如在可重复读隔离级别下的异常测试样例,在读已提交隔离级别下可能是正常行为(为了保证事务的并发效率,该隔离级别允许出现这种“异常”)。 对于不同隔离级别,判断测试样例是否异常的标准也会有所不同。例如,假设某个测试样例在读可提交和可重复读隔离级别下,都出现了幻读现象,则该测试样例在读可提交隔离级别下不应该被检测为异常,但在可重复读隔离级别下应被认为是异常。 现在,3TSCOO检测的是当前测试样例的结果,是否违反了一致性(例如,两个事务A和B并发执行的结果,是否等于先执行A再执行B或先执行B再执行A)。我们希望能够对不同隔离级别,提出不同的检验方法,能够检测出违反隔离级别定义的异常,而非仅仅是违背了事务的一致性。 **希望得到**:针对不同隔离级别,验证是否异常的新功能。 开发方式:fork分支coo-consistency-check代码到自己的仓库,clone后在新分支上进行开发,然后提交pr合入仓库。相关代码位于(3TS/src/dbtest/src/mda_detect.py) 本issue为2025犀牛鸟开源人才培养活动专属issue,仅供参与犀牛鸟的在校大学生及开发者参与领取,认领前请先报名2025犀牛鸟开源人才培养计划(https://opensource.tencent.com/summer-of-code)。 【认领issue】在issue所在repo页面留言“已成功领取本issue”→微信私信犀牛鸟小助手(活动群-黄贵龙):issue链接+认领截图→犀牛鸟小助手回复“已成功领取本issue”,即可开始做issue任务。 【完成issue】已完成issue的同学,请同步犀牛鸟小助手(私信活动群-黄贵龙回复“已完成本issue任务+代码合入截图等证明”)。 注意:如7天内无提交任何进展包括不限于comment \ commit \ Pull Request,则将视为同学主动放弃issue,组委会将释放issue给下一位等候者。
阅读目录(3TS/src/dbtest/src)下的case_cntl_v2.cc、sqltest_v2.cc、sql_cntl_v2.cc三个文件中的代码,理解3TS-COO的动态试是如何执行整个测试工作、如何与目标数据库连接并执行操作以及如何分析测试结果,形成完整的代码文档提交pr并合入仓库。 **希望得到**: 1. 三个文件的概述,包括代码功能、整体结构、与其他文件的关系和在项目中的作用。 2. 重构代码使其更简洁或高效。 3. 对比静态测试,解释动态测试的不同之处, 4. 其他你认为重要的内容。 开发方式:将coo-consistency-check代码clone到本地,阅读并调试,形成代码文档并提交到3TS/src/dbtest/src/doc 本issue为2025犀牛鸟开源人才培养活动专属issue,仅供参与犀牛鸟的在校大学生及开发者参与领取,认领前请先报名2025犀牛鸟开源人才培养计划(https://opensource.tencent.com/summer-of-code)。 【认领issue】在issue所在repo页面留言“已成功领取本issue”→微信私信犀牛鸟小助手(活动群-黄贵龙):issue链接+认领截图→犀牛鸟小助手回复“已成功领取本issue”,即可开始做issue任务。 【完成issue】已完成issue的同学,请同步犀牛鸟小助手(私信活动群-黄贵龙回复“已完成本issue任务+代码合入截图等证明”)。 注意:如7天内无提交任何进展包括不限于comment \ commit \ Pull Request,则将视为同学主动放弃issue,组委会将释放issue给下一位等候者。
帮助3TS-Coo更好的配置。现在3TS-Coo使用odbc连接,然而一些数据库(例如mysql)的odbc官方下载,只支持ubuntu 22.04及以上的的版本,对于更低的版本例如20.04,需要通过源码编译的方式才能安装odbc。我们希望能够帮助低版本用户更好的配置框架。此外,还可以尝试在其他系统,如macOS上部署。 **希望得到**:一份如何在22.04以下版本或其他环境(如macOS,Wins,Centos, Ubuntu等)配置3TSCOO的文档 开发方式:fork分支coo-consistency-check代码到自己的仓库,clone后在新分支上进行开发,然后提交pr合入仓库。相关文档位于(3TS/src/dbtest/doc/en) 本issue为2025犀牛鸟开源人才培养活动专属issue,仅供参与犀牛鸟的在校大学生及开发者参与领取,认领前请先报名2025犀牛鸟开源人才培养计划(https://opensource.tencent.com/summer-of-code)。 【认领issue】在issue所在repo页面留言“已成功领取本issue”→微信私信犀牛鸟小助手(活动群-黄贵龙):issue链接+认领截图→犀牛鸟小助手回复“已成功领取本issue”,即可开始做issue任务。 【完成issue】已完成issue的同学,请同步犀牛鸟小助手(私信活动群-黄贵龙回复“已完成本issue任务+代码合入截图等证明”)。 注意:如7天内无提交任何进展包括不限于comment \ commit \ Pull Request,则将视为同学主动放弃issue,组委会将释放issue给下一位等候者。
阅读目录(3TS/src/dbtest/src)下的mda_detect.py、mda_generate.py和random_do_list.py三个文件中的代码,理解动态测试的样例生成和异常检测,形成完整的代码文档提交pr并合入仓库。 **希望得到**: 1. 三个文件的概述,包括代码功能、整体结构、与其他文件的关系和在项目中的作用。 2. 重构代码使其更简洁或高效。 3. 其他你认为重要的内容。 开发方式:将coo-consistency-check代码clone到本地,阅读并调试,形成代码文档并提交到3TS/src/dbtest/src/doc 本issue为2025犀牛鸟开源人才培养活动专属issue,仅供参与犀牛鸟的在校大学生及开发者参与领取,认领前请先报名2025犀牛鸟开源人才培养计划(https://opensource.tencent.com/summer-of-code)。 【认领issue】在issue所在repo页面留言“已成功领取本issue”→微信私信犀牛鸟小助手(活动群-黄贵龙):issue链接+认领截图→犀牛鸟小助手回复“已成功领取本issue”,即可开始做issue任务。 【完成issue】已完成issue的同学,请同步犀牛鸟小助手(私信活动群-黄贵龙回复“已完成本issue任务+代码合入截图等证明”)。 注意:如7天内无提交任何进展包括不限于comment \ commit \ Pull Request,则将视为同学主动放弃issue,组委会将释放issue给下一位等候者。
阅读目录(3TS/src/dbtest/src)下的case_cntl.cc、sqltest.cc、sql_cntl.cc三个文件中的代码,理解3TS-COO的静态测试是如何执行整个测试工作、如何与目标数据库连接并执行操作以及如何分析测试结果,形成完整的代码文档提交pr并合入仓库。 **希望得到**: 1. 三个文件的概述,包括代码功能、整体结构、与其他文件的关系和在项目中的作用。 2. 重构代码使其更简洁或高效。 3. 其他你认为重要的内容。 开发方式:将coo-consistency-check代码clone到本地,阅读并调试,形成代码文档并提交到3TS/src/dbtest/src/doc 本issue为2025犀牛鸟开源人才培养活动专属issue,仅供参与犀牛鸟的在校大学生及开发者参与领取,认领前请先报名2025犀牛鸟开源人才培养计划(https://opensource.tencent.com/summer-of-code)。 【认领issue】在issue所在repo页面留言“已成功领取本issue”→微信私信犀牛鸟小助手(活动群-黄贵龙):issue链接+认领截图→犀牛鸟小助手回复“已成功领取本issue”,即可开始做issue任务。 【完成issue】已完成issue的同学,请同步犀牛鸟小助手(私信活动群-黄贵龙回复“已完成本issue任务+代码合入截图等证明”)。 注意:如7天内无提交任何进展包括不限于comment \ commit \ Pull Request,则将视为同学主动放弃issue,组委会将释放issue给下一位等候者。
添加参数:执行时间间隔。现在3TS-COO执行语句会输出每条sql语句执行结束的时刻,我们希望执行时,能按照给定的时间间隔来执行语句。完成相关分支,提交pr,经review后合并入coo-consistency-check分支。 **希望得到**:给定时间参数来控制语句之间的执行等待间隔 开发方式:fork代码到自己的仓库,clone后添加时间间隔参数的提取。 本issue为2025犀牛鸟开源人才培养活动专属issue,仅供参与犀牛鸟的在校大学生及开发者参与领取,认领前请先报名2025犀牛鸟开源人才培养计划(https://opensource.tencent.com/summer-of-code)。 【认领issue】在issue所在repo页面留言“已成功领取本issue”→微信私信犀牛鸟小助手(活动群-黄贵龙):issue链接+认领截图→犀牛鸟小助手回复“已成功领取本issue”,即可开始做issue任务。 【完成issue】已完成issue的同学,请同步犀牛鸟小助手(私信活动群-黄贵龙回复“已完成本issue任务+代码合入截图等证明”)。 注意:如7天内无提交任何进展包括不限于comment \ commit \ Pull Request,则将视为同学主动放弃issue,组委会将释放issue给下一位等候者。
添加参数:3TS-COO现在主要监控事务的执行结果,缺少其他参数的监控。我们希望参与者通过理解框架,自行提出还有什么重要参数可以被提取并监控,添加相关代码,并阐述该参数的意义。 **希望得到**:你认为框架重要参数的阐述,和提取该参数的功能。 开发方式:fork代码到自己的仓库,clone后添加时间间隔参数的提取。 本issue为2025犀牛鸟开源人才培养活动专属issue,仅供参与犀牛鸟的在校大学生及开发者参与领取,认领前请先报名2025犀牛鸟开源人才培养计划(https://opensource.tencent.com/summer-of-code)。 【认领issue】在issue所在repo页面留言“已成功领取本issue”→微信私信犀牛鸟小助手(活动群-黄贵龙):issue链接+认领截图→犀牛鸟小助手回复“已成功领取本issue”,即可开始做issue任务。 【完成issue】已完成issue的同学,请同步犀牛鸟小助手(私信活动群-黄贵龙回复“已完成本issue任务+代码合入截图等证明”)。 注意:如7天内无提交任何进展包括不限于comment \ commit \ Pull Request,则将视为同学主动放弃issue,组委会将释放issue给下一位等候者。
隔离级别是dbms为了平衡隔离性和事务的并发效率而制定的SQL标准。主流DBMS的隔离级别,由低到高包括读未提交,读已提交,可重复读和可串行执行。低的隔离级别,不同事务会互相干扰,而高的隔离级别,每个事务都近似于单独在执行,没有其他事务并发执行。现在3TS-coo的测试样例动态生成(位于3TS/src/dbtest/src/mda_generate.py)对于所有隔离级别都生成一样的测试样例。然而同样的测试样例,在不同的隔离级别下,可能结果不同。例如在可重复读隔离级别下的异常测试样例,在读已提交隔离级别下可能是正常行为(为了保证事务的并发效率,该隔离级别允许出现这种“异常”)。 换句话说,有些测试样例,只适用于某个隔离级别,而在测试更高级的隔离级别时是无意义的。例如测试读可提交隔离级别是否有幻读现象是无意义的,因为幻读现象是该隔离级别“允许”出现的(符合隔离级别定义),不算是异常。 现在,我们希望能够对不同隔离级别,生成不同的测试样例,这种测试样例如果出现异常,则代表违背了该隔离级别的定义。 本issue不需要验证测试样例是否异常,只需要针对隔离级别的定义,生成对该隔离级别有意义的测试样例即可。 **希望得到**:针对不同隔离级别生成不同测试样例的新功能。 开发方式:fork代码到自己的仓库,clone后在新分支上进行开发,然后提交pr合入仓库。 相关代码位于(位于3TS/src/dbtest/src/mda_generate.py)。 本issue为2025犀牛鸟开源人才培养活动专属issue,仅供参与犀牛鸟的在校大学生及开发者参与领取,认领前请先报名2025犀牛鸟开源人才培养计划(https://opensource.tencent.com/summer-of-code)。 【认领issue】在issue所在repo页面留言“已成功领取本issue”→微信私信犀牛鸟小助手(活动群-黄贵龙):issue链接+认领截图→犀牛鸟小助手回复“已成功领取本issue”,即可开始做issue任务。 【完成issue】已完成issue的同学,请同步犀牛鸟小助手(私信活动群-黄贵龙回复“已完成本issue任务+代码合入截图等证明”)。 注意:如7天内无提交任何进展包括不限于comment \ commit \ Pull Request,则将视为同学主动放弃issue,组委会将释放issue给下一位等候者。
统计支持测试OLTP数据库的工具,统计信息包括但不限于工具名称、数据库名称、支持测试功能、测试出的异常等。将统计信息整理成文档,提交pr,并合入仓库。 开发方式:fork分支coo-consistency-check代码到自己的仓库,clone后在新分支上进行开发,然后提交pr合入仓库。相关文档位于(3TS/src/dbtest/doc/en) 本issue为2025犀牛鸟开源人才培养活动专属issue,仅供参与犀牛鸟的在校大学生及开发者参与领取,认领前请先报名2025犀牛鸟开源人才培养计划(https://opensource.tencent.com/summer-of-code)。 【认领issue】在issue所在repo页面留言“已成功领取本issue”→微信私信犀牛鸟小助手(活动群-黄贵龙):issue链接+认领截图→犀牛鸟小助手回复“已成功领取本issue”,即可开始做issue任务。 【完成issue】已完成issue的同学,请同步犀牛鸟小助手(私信活动群-黄贵龙回复“已完成本issue任务+代码合入截图等证明”)。 注意:如7天内无提交任何进展包括不限于comment \ commit \ Pull Request,则将视为同学主动放弃issue,组委会将释放issue给下一位等候者。