fix(mongodb): skip SQL semantic diagnostics for MongoDB connections

MongoDB shell syntax like db.collection.find({}) was incorrectly
parsed as SQL, causing a "sql parser error" diagnostic in the editor.
Added MongoDB guards in shouldRunSqlSemanticDiagnostics and
refreshSemanticDiagnostics, matching existing Elasticsearch logic.

Also fix a pre-existing TiDB cloud URL param ordering test failure.
This commit is contained in:
t8y2
2026-06-09 16:20:50 +08:00
parent 7798f2231e
commit 6a14b11efc
4 changed files with 24 additions and 3 deletions
@@ -741,7 +741,7 @@ async function refreshSemanticDiagnostics() {
setSemanticDiagnostics([]);
return;
}
if (props.databaseType === "elasticsearch") {
if (props.databaseType === "mongodb" || props.databaseType === "elasticsearch") {
setSemanticDiagnostics([]);
return;
}
@@ -104,7 +104,7 @@ export function shouldRunSqlSemanticDiagnostics(
cursor: number,
options: { databaseType?: DatabaseType } = {},
): boolean {
if (options.databaseType === "elasticsearch") return false;
if (options.databaseType === "mongodb" || options.databaseType === "elasticsearch") return false;
const context = getSqlCompletionContext(sql, cursor);
if (context.suggestTables || context.exclusiveTableSuggestions || context.exclusiveColumnSuggestions) return false;
if (context.qualifier) return false;