SuperAPI AI 工具集

risingwave-slt-authoring

数据与分析

查看项目

更新于 10-16 09:50

技能介绍

用途:在新增或修改 RisingWave SQLLogicTest 文件(e2e_test/**、生成的 DocSlt 测试或 Rust 文档内嵌 SLT 片段)之前使用本技能,帮助确定测试归属、编写规范与验证方式。

主要能力:指导选择最小测试面(普通 e2e 放 e2e_test/,本地可运行 source 测试放 e2e_test/source_inline//*.slt,仅当无法并行时才用 .slt.serial,如 RECOVER、全局服务变更或有状态外部系统假设);说明 SLT 空行语法与记录终止规则,包括 system ok 带 stdout 断言、statement error/query error 多行 ---- 块需两个连续空行;给出 system ok 与 substitution 规则(控制替换 on、SLT_HOST/SLT_PORT/SLT_DB、e2e_test/commands 前置到 PATH);强调查询断言应确定性(order by、rowsort、避免时钟/随机/不稳定 ID,流式或连接器可见性用重试)。

使用方式:以 ./risedev d 启动服务,用 ./risedev slt './path/to/file.slt' 运行目标文件,失败后可用 ./risedev slt-clean 清理;新增文件可运行 python3 e2e_test/check_slt_coverage.py -d 确认被 CI 选中;提交前执行 git diff --check,脚本变更用 python3 -m py_compile 检查。

适用场景:连接器夹具、source-inline、DocSlt、CI e2e 通道等 SLT 编写与排障。

限制:文中未给出具体服务版本、依赖安装细节与完整 CI 配置;本地服务或客户端不可用时只能依赖聚焦 CI 通道并运行静态检查。