小组研究成果被数据库顶级会议SIGMOD 2027接收


ACM SIGMOD(International Conference on Management of Data)是数据库领域历史最悠久、影响力最大的顶级国际学术会议,与 VLDB、ICDE 并称为数据库领域的三大顶级会议。SIGMOD 每年汇集来自学术界和工业界的众多数据库研究人员与从业人员,重点关注数据管理、查询处理与优化、数据库系统测试等核心技术方向。

清华大学软件系统安全保障小组(WingTecher Lab)研究成果“OraclePlate: Detecting Logic Bugs in DBMSs via Cascaded Rewriting-Based Test Oracle Composition”成功被 SIGMOD 2027 接收。该工作针对数据库管理系统(DBMS)中难以检测的逻辑缺陷问题,提出了首个基于级联重写的测试预言(Test Oracle)组合框架 OraclePlate,突破了现有方法只能孤立应用单一等价变换的局限。该工作由北航博士生郭宇潇、刘启帆,北航副教授梁杰,以及清华大学博士后张弛、博士生吴志镛、符景洲等人共同完成。

研究成果概要:

逻辑缺陷是 DBMS 中一种隐蔽的实现错误,它会在不显式报错的情况下静默地产生错误结果,对上层企业应用构成严重威胁。与崩溃类缺陷不同,这类缺陷缺乏显式的失效症状,因而尤其难以检测。因此,DBMS测试中的一个核心挑战是测试预言问题,即如何判定查询结果的正确性。现有方法主要基于等价关系构建测试预言,通过比较等价查询对的执行结果来检测缺陷。然而,此类方法通常受限于单一等价关系及其关联的输入形式,隐藏在替代变换路径中的大量缺陷难以被触及。

本文提出OraclePlate,一个基于级联重写的测试预言组合的DBMS逻辑缺陷检测框架。其关键设计思想在于:多样化的等价类测试预言可以统一建模为在查询上施加的带随机性扩展的重写规则,从而支持在合法位置进行变换并支持其级联组合。具体而言,OraclePlate分三步进行:首先,引入统一等价规范UES,以随机性规则扩展对多样化测试预言进行标准化,并支持其组合;其次,采用基于拓扑的SQL 血缘追踪机制,在链式变换过程中保持语义正确性;最后,采用规则引导策略,优先选择高价值的变换路径,以缓解路径爆炸问题。本文在PostgreSQL、MySQL等六个广泛应用且经过充分测试的DBMS发现了40个此前未知的缺陷,证明了测试预言组合的有效性。与 TLP、EET、PQS、SRS 等最先进的 DBMS 逻辑缺陷测试工具相比,OraclePlate 在 24 小时内多发现20–28个缺陷,分支覆盖率提升5.0%–22.5%。