fix(sql): preserve leading tenant routing hints

Closes #5332
This commit is contained in:
t8y2 committed 2026-08-04 23:17:35 +08:00
1 parent bc60339806
commit 4aa36cb893
2 files changed
+11 -1

No files matched your search

@@ -1095,6 +1095,15 @@ describe("buildExecutionCandidates", () => {
expect(candidates[0].sql).toBe(hintedSql);
});
it("preserves leading tenant routing hints in current statement candidates", () => {
const hintedSql = "/*@global:true*/\nSELECT * FROM tenant_table";
const sql = `SELECT 1;\n${hintedSql};`;
const candidates = buildExecutionCandidates(sql, indexOf(sql, "tenant_table"), "mysql");
expect(candidates[0].sql).toBe(hintedSql);
expect(splitSqlStatementRanges("/*@global:true*/", "mysql")).toEqual([]);
});
it("uses the cursor statement for the first candidate when there is no selection", () => {
const sql = "SELECT *\nFROM users\nWHERE active = 1";
const candidates = buildExecutionCandidates(sql, indexOf(sql, "users"));