From 0668bdc406c4f2cb0506600b718159c0307abd85 Mon Sep 17 00:00:00 2001 From: zipg Date: Mon, 21 Sep 2026 12:59:35 +0800 Subject: [PATCH] feat(editor): locate Oracle errors by message position with cursor anchor --- .../src/components/layout/ContentArea.vue | 31 +++-- .../lib/__tests__/sql/errorPosition.spec.ts | 76 +++++++++++- apps/desktop/src/lib/sql/errorPosition.ts | 114 ++++++++++++++++-- apps/desktop/src/lib/sql/sqlDiagnostics.ts | 49 ++++++-- apps/desktop/src/stores/queryStore.ts | 9 +- .../issue-5581-oracle-caret-after.png | Bin 0 -> 4429 bytes .../issue-5581-oracle-caret-before.png | Bin 0 -> 4403 bytes ...ssue-5581-oracle-error-position-button.png | Bin 0 -> 82030 bytes ...e-5581-oracle-error-position-multiline.png | Bin 0 -> 84157 bytes .../issue-5581-oracle-multiline-after.png | Bin 0 -> 7368 bytes .../issue-5581-oracle-multiline-before.png | Bin 0 -> 7318 bytes packages/app-tests/sqlDiagnostics.test.ts | 18 ++- 12 files changed, 257 insertions(+), 40 deletions(-) create mode 100644 docs/screenshots/issue-5581-oracle-caret-after.png create mode 100644 docs/screenshots/issue-5581-oracle-caret-before.png create mode 100644 docs/screenshots/issue-5581-oracle-error-position-button.png create mode 100644 docs/screenshots/issue-5581-oracle-error-position-multiline.png create mode 100644 docs/screenshots/issue-5581-oracle-multiline-after.png create mode 100644 docs/screenshots/issue-5581-oracle-multiline-before.png diff --git a/apps/desktop/src/components/layout/ContentArea.vue b/apps/desktop/src/components/layout/ContentArea.vue index 2f23c7f5d4..b6003e060c 100644 --- a/apps/desktop/src/components/layout/ContentArea.vue +++ b/apps/desktop/src/components/layout/ContentArea.vue @@ -139,7 +139,7 @@ import { TABLE_FONT_SIZE_MAX, TABLE_FONT_SIZE_MIN, useSettingsStore, type DataGr import { useToast } from "@/composables/useToast"; import { isTauriRuntime } from "@/lib/backend/tauriRuntime"; import { canCancelQueryExecution, isActiveResultLoading, queryExecutionLabelKey } from "@/lib/sql/queryExecutionState"; -import { sqlErrorEditorOffset, logSqlErrorPosition } from "@/lib/sql/errorPosition"; +import { sqlErrorDisplayPosition, sqlErrorEditorOffset, logSqlErrorPosition } from "@/lib/sql/errorPosition"; import { databaseDisplayNameForTab, executionSummaryItems, @@ -349,8 +349,14 @@ const activeResultExecutionTarget = computed(() => queryStore.activeResultExecut const activeResultConnection = computed(() => (activeResultExecutionTarget.value ? connectionStore.getConfig(activeResultExecutionTarget.value.connectionId) : props.activeConnection)); const activeResultConnectionId = computed(() => activeResultExecutionTarget.value?.connectionId ?? props.activeTab.connectionId); // Row/column locate only makes sense for SQL editor tabs: data/preview tabs have -// no user statement to map the backend position onto. -const activeResultErrorPosition = computed(() => (props.activeTab.mode === "query" ? props.activeTab.result?.error?.errorPosition : undefined)); +// no user statement to map the backend position onto. Engines without a typed +// position (Oracle) report it in the error text, so the label falls back to the +// same resolver the jump uses — the button never appears when clicking it could +// not move the caret. +const activeResultErrorPosition = computed(() => { + if (props.activeTab.mode !== "query") return undefined; + return sqlErrorDisplayPosition(activeResultErrorOffsetOptions()); +}); const activeResultDatabase = computed(() => activeResultExecutionTarget.value?.database ?? props.activeTab.database); const activeResultSchema = computed(() => activeResultExecutionTarget.value?.schema ?? props.activeTab.schema); const activeEffectiveDatabaseType = computed(() => effectiveDatabaseTypeForConnection(activeResultConnection.value)); @@ -1377,6 +1383,17 @@ function focusErrorPosition(offset: number): boolean { * to a cross-surface event when this surface only renders the shared result pane * (the editor lives in another group). */ +function activeResultErrorOffsetOptions() { + const result = props.activeTab.result; + return { + editorSql: props.activeTab.sql, + result, + resultIndex: result?.statement_index ?? props.activeTab.activeResultIndex, + databaseType: activeEffectiveDatabaseType.value, + parameterOptions: activeSqlStatementParameterOptions.value, + }; +} + function locateActiveResultError() { const result = props.activeTab.result; logSqlErrorPosition("locate:invoke", { @@ -1390,13 +1407,7 @@ function locateActiveResultError() { editorLength: props.activeTab.sql.length, resultIsError: Boolean(result && isQueryExecutionErrorResult(result)), }); - const mapped = sqlErrorEditorOffset({ - editorSql: props.activeTab.sql, - result, - resultIndex: result?.statement_index ?? props.activeTab.activeResultIndex, - databaseType: activeEffectiveDatabaseType.value, - parameterOptions: activeSqlStatementParameterOptions.value, - }); + const mapped = sqlErrorEditorOffset(activeResultErrorOffsetOptions()); if (!mapped) { logSqlErrorPosition("locate:unavailable", { tabId: props.activeTab.id, diff --git a/apps/desktop/src/lib/__tests__/sql/errorPosition.spec.ts b/apps/desktop/src/lib/__tests__/sql/errorPosition.spec.ts index 552076a2b4..dc712dea70 100644 --- a/apps/desktop/src/lib/__tests__/sql/errorPosition.spec.ts +++ b/apps/desktop/src/lib/__tests__/sql/errorPosition.spec.ts @@ -1,7 +1,7 @@ import { describe, expect, it } from "vitest"; import type { BackendError, SqlErrorPosition } from "@/lib/backend/errorUtils"; -import { mapExecutedOffsetToSource, scalarPositionToUtf16Offset, sqlErrorEditorOffset } from "@/lib/sql/errorPosition"; +import { mapExecutedOffsetToSource, scalarPositionToUtf16Offset, sqlErrorDisplayPosition, sqlErrorEditorOffset, sqlErrorHasMessagePosition } from "@/lib/sql/errorPosition"; import type { QueryResult } from "@/types/database"; function backendError(position?: SqlErrorPosition): BackendError { @@ -17,11 +17,11 @@ function backendError(position?: SqlErrorPosition): BackendError { }; } -function errorResult(options: { editorStatement?: string; sourceFrom?: number; sourceTo?: number; executedStatement?: string; position?: SqlErrorPosition }): QueryResult { +function errorResult(options: { editorStatement?: string; sourceFrom?: number; sourceTo?: number; executedStatement?: string; position?: SqlErrorPosition; message?: string }): QueryResult { const statement = options.editorStatement ?? ""; return { columns: ["Error"], - rows: [["ERROR: relation does not exist"]], + rows: [[options.message ?? "ERROR: relation does not exist"]], affected_rows: 0, execution_time_ms: 0, execution_error: true, @@ -163,6 +163,76 @@ describe("sqlErrorEditorOffset", () => { }); }); +describe("when the engine reports its position only in the error message", () => { + it("resolves the Oracle Agent offset and labels it with the caret's row/column", () => { + const sql = "SELECT nope_col\nFROM dual"; + const result = errorResult({ + editorStatement: sql, + message: 'ORA-00904: "NOPE_COL": invalid identifier error occur at position: 7', + }); + + expect(sqlErrorEditorOffset({ editorSql: sql, result })).toEqual({ offset: 7, line: 1, column: 8 }); + // The label must describe the caret, not the executed statement it was projected from. + expect(sqlErrorDisplayPosition({ editorSql: sql, result })).toEqual({ line: 1, column: 8 }); + }); + + it("maps an offset on a later line to that line and column", () => { + const sql = "SELECT 1\nFROM dual\nWHERE to_number('abc') = 1"; + const offset = sql.indexOf("'abc'"); + const result = errorResult({ editorStatement: sql, message: `ORA-01722: invalid number error occur at position: ${offset}` }); + + const mapped = sqlErrorEditorOffset({ editorSql: sql, result }); + // `'abc'` starts at column 17 of "WHERE to_number('abc') = 1". + expect(mapped).toEqual({ offset, line: 3, column: 17 }); + expect(sqlErrorDisplayPosition({ editorSql: sql, result })).toEqual({ line: 3, column: 17 }); + }); + + it("projects a message offset back onto the source when DBX rewrote the statement", () => { + const source = "SELECT * FROM users"; + const executed = 'SELECT *, "id" AS "__dbx_hidden_pk" FROM users LIMIT 100 OFFSET 0;'; + const result = errorResult({ + editorStatement: source, + executedStatement: executed, + message: `ORA-00942: table or view does not exist error occur at position: ${executed.indexOf("users")}`, + }); + + const mapped = sqlErrorEditorOffset({ editorSql: source, result }); + expect(mapped?.offset).toBe(source.indexOf("users")); + // The label follows the projected source text, so it stays consistent with the caret. + expect(sqlErrorDisplayPosition({ editorSql: source, result })).toEqual({ line: 1, column: mapped!.offset + 1 }); + }); + + it("uses a textual location when the message carries one", () => { + const sql = "SELECT 1\nFROM missing"; + const result = errorResult({ editorStatement: sql, message: "syntax error at line 2, column 6" }); + + expect(sqlErrorEditorOffset({ editorSql: sql, result })).toEqual({ offset: 14, line: 2, column: 6 }); + }); + + it("returns undefined when neither the envelope nor the message carries a position", () => { + const sql = "SELECT nope_col FROM dual"; + const result = errorResult({ editorStatement: sql, message: 'ORA-00904: "NOPE_COL": invalid identifier' }); + + expect(sqlErrorEditorOffset({ editorSql: sql, result })).toBeUndefined(); + expect(sqlErrorDisplayPosition({ editorSql: sql, result })).toBeUndefined(); + }); + + it("still returns undefined when the message offset cannot be found in the editor", () => { + const result = errorResult({ editorStatement: "SELECT * FROM gone", message: "ORA-00942: table or view does not exist error occur at position: 14" }); + + expect(sqlErrorEditorOffset({ editorSql: "SELECT 1", result })).toBeUndefined(); + }); +}); + +describe("sqlErrorHasMessagePosition", () => { + it("detects the positions engines put in the message text", () => { + expect(sqlErrorHasMessagePosition('ORA-00904: "X": invalid identifier error occur at position: 9')).toBe(true); + expect(sqlErrorHasMessagePosition("syntax error at line 2, column 4")).toBe(true); + expect(sqlErrorHasMessagePosition("ERROR 1054 (42S22): Unknown column 'nope_col' in 'field list'")).toBe(false); + expect(sqlErrorHasMessagePosition("")).toBe(false); + }); +}); + describe("scalarPositionToUtf16Offset", () => { it("converts scalar line/column to a UTF-16 offset", () => { expect(scalarPositionToUtf16Offset("SELECT '😀' FROM t", 1, 12)).toBe(12); diff --git a/apps/desktop/src/lib/sql/errorPosition.ts b/apps/desktop/src/lib/sql/errorPosition.ts index aaffb90580..d7f264bb53 100644 --- a/apps/desktop/src/lib/sql/errorPosition.ts +++ b/apps/desktop/src/lib/sql/errorPosition.ts @@ -1,5 +1,6 @@ import type { DatabaseType, QueryResult } from "@/types/database"; import type { SqlParameterOptions } from "@/lib/sql/sqlParameters"; +import { sqlErrorDecorationRange, sqlErrorMessagePosition } from "@/lib/sql/sqlDiagnostics"; import { splitSqlStatementRanges } from "@/lib/sql/sqlStatementRanges"; import { resultSourceRange } from "@/lib/tabs/tabPresentation"; @@ -12,6 +13,12 @@ export interface EditorErrorPosition { column: number; } +/** Row/column shown next to the error; always relative to the editor statement. */ +export interface SqlErrorDisplayPosition { + line: number; + column: number; +} + export interface SqlErrorOffsetOptions { editorSql: string; result: QueryResult | undefined | null; @@ -86,6 +93,25 @@ function logDiagnostics(stage: string, options: SqlErrorOffsetOptions, extra: Re logSqlErrorPosition(stage, details); } +/** + * The user-facing error text of a result, i.e. the same string the editor + * underlines in red (see `QueryEditor`'s `executionError` prop). + */ +export function sqlErrorMessageText(result: QueryResult | undefined | null): string { + return String(result?.rows?.[0]?.[0] ?? ""); +} + +/** + * Whether an error message names a position DBX can resolve. + * + * Used to decide whether a synthesized single-statement error result is worth + * annotating with its source range: engines that report no typed position + * (Oracle) still carry a parseable one in the message text. + */ +export function sqlErrorHasMessagePosition(message: string): boolean { + return !!message && sqlErrorMessagePosition(message) !== null; +} + /** * Translate a backend-reported SQL error position into an absolute offset in the * current editor document. @@ -96,15 +122,36 @@ function logDiagnostics(stage: string, options: SqlErrorOffsetOptions, extra: Re * is first resolved inside `executedStatement` and then projected back onto the * user's `sourceStatement` before it is placed in the editor. * - * Returns `undefined` only when the result carries no position, or when - * {@link resultSourceRange} cannot prove the result still maps to the same - * statement text in the editor (stale editor / different statement) — jumping - * anywhere in that case would be wrong. + * Falls back to the position carried by the error text when the backend reports + * no typed one (Oracle: `error occur at position: N`), using the same parser the + * editor's red underline uses, so both surfaces always agree. + * + * Returns `undefined` only when neither the envelope nor the error text carries a + * position, or when {@link resultSourceRange} cannot prove the result still maps + * to the same statement text in the editor (stale editor / different statement) — + * jumping anywhere in that case would be wrong. */ export function sqlErrorEditorOffset(options: SqlErrorOffsetOptions): EditorErrorPosition | undefined { + return resolveSqlErrorOffset(options); +} + +/** + * The row/column to show next to the error, using the driver-reported position + * when the backend provides one and the position parsed from the error message + * otherwise. Sharing {@link resolveSqlErrorOffset} with the jump means the + * "locate error" button is only shown when clicking it can actually move the + * caret. + */ +export function sqlErrorDisplayPosition(options: SqlErrorOffsetOptions): SqlErrorDisplayPosition | undefined { + const resolved = resolveSqlErrorOffset(options); + return resolved ? { line: resolved.line, column: resolved.column } : undefined; +} + +function resolveSqlErrorOffset(options: SqlErrorOffsetOptions): EditorErrorPosition | undefined { const position = options.result?.error?.errorPosition; - if (!position) { - if (isSqlErrorPositionDebugEnabled()) logDiagnostics("skip:no-error-position", options, {}); + const messageText = position ? "" : sqlErrorMessageText(options.result); + if (!position && !sqlErrorHasMessagePosition(messageText)) { + if (isSqlErrorPositionDebugEnabled()) logDiagnostics("skip:no-error-position", options, { hasMessagePosition: false }); return undefined; } @@ -125,18 +172,36 @@ export function sqlErrorEditorOffset(options: SqlErrorOffsetOptions): EditorErro const executedStatement = options.result?.executedStatement; const positionBasis = executedStatement ?? range.sql; - // Walk the line/column in the text the position is relative to (scalar values, - // matching PostgreSQL's character-based cursor), then convert to UTF-16. - const basisOffset = scalarPositionToUtf16Offset(positionBasis, position.line, position.column); + let basisOffset: number; + if (position) { + // Walk the line/column in the text the position is relative to (scalar + // values, matching PostgreSQL's character-based cursor), then convert to UTF-16. + basisOffset = scalarPositionToUtf16Offset(positionBasis, position.line, position.column); + } else { + // Engines without a typed position report it inside the message text + // (Oracle's Agent offset, `LINE n:` carets). Parse against the same basis the + // typed position would use, and reuse the exact range the editor already + // underlines in red so both surfaces agree. + const derived = sqlErrorDecorationRange(positionBasis, messageText); + if (!derived) { + if (isSqlErrorPositionDebugEnabled()) logDiagnostics("unresolved:message-position", options, { hasMessagePosition: true }); + return undefined; + } + basisOffset = Math.min(derived.from, positionBasis.length); + } const drifted = Boolean(executedStatement && executedStatement !== range.sql); const sourceOffset = drifted ? mapExecutedOffsetToSource(executedStatement!, range.sql, basisOffset) : basisOffset; // Clamp inside the resolved statement range so a residual mismatch can never // place the caret outside the statement it belongs to. const editorOffset = Math.max(range.from, Math.min(range.from + sourceOffset, range.to)); + // Report the row/column of the *source* statement, so the label always points + // at the same character the caret lands on (the position itself is relative to + // the executed statement, which DBX may have rewritten). + const display = utf16OffsetToScalarPosition(range.sql, clamp(sourceOffset, 0, range.sql.length)); if (isSqlErrorPositionDebugEnabled()) { logDiagnostics("resolved", options, { - position, + position: position ?? { derivedFromMessage: true }, rangeFrom: range.from, rangeTo: range.to, rangeSql: previewText(range.sql), @@ -145,9 +210,36 @@ export function sqlErrorEditorOffset(options: SqlErrorOffsetOptions): EditorErro basisOffset, sourceOffset, editorOffset, + display, }); } - return { offset: editorOffset, line: position.line, column: position.column }; + return { offset: editorOffset, line: display.line, column: display.column }; +} + +/** + * Inverse of {@link scalarPositionToUtf16Offset}: the 1-based line and column + * (counted in Unicode scalar values) of a UTF-16 offset. Offsets past the end + * clamp to the last character. + */ +export function utf16OffsetToScalarPosition(text: string, offset: number): { line: number; column: number } { + const characters = Array.from(text); + if (characters.length === 0) return { line: 1, column: 1 }; + const target = Math.max(0, Math.min(Math.floor(offset), text.length - 1)); + let consumed = 0; + let line = 1; + let column = 1; + for (const character of characters) { + const width = character.length; + if (consumed >= target) break; + consumed += width; + if (character === "\n") { + line += 1; + column = 1; + } else { + column += 1; + } + } + return { line, column }; } /** diff --git a/apps/desktop/src/lib/sql/sqlDiagnostics.ts b/apps/desktop/src/lib/sql/sqlDiagnostics.ts index db52bce566..e545e24dd7 100644 --- a/apps/desktop/src/lib/sql/sqlDiagnostics.ts +++ b/apps/desktop/src/lib/sql/sqlDiagnostics.ts @@ -104,20 +104,47 @@ function oracleInvalidIdentifierRange(sql: string, message: string, position: nu return bestRange; } -export function sqlErrorDecorationRange(sql: string, message: string): SqlErrorRange | null { +/** + * A position a driver reported in its error text, without needing the SQL it + * refers to. Engines that do not attach a typed position to their error + * envelope (Oracle) still name one in the message. + */ +export type SqlErrorMessagePosition = { kind: "location"; location: SqlErrorLocation } | { kind: "offset"; offset: number }; + +const ORACLE_AGENT_POSITION_PATTERN = /\berror\s+occur(?:red)?\s+at\s+position\s*:\s*(\d+)\b/i; + +/** + * Parse the position carried by a driver error message. + * + * Textual locations (`line N, column M`, `LINE N:` with a `^` caret, and the + * line-only form MySQL emits) win over the Oracle Agent's absolute offset, the + * same precedence {@link sqlErrorDecorationRange} has always used. + */ +export function sqlErrorMessagePosition(message: string): SqlErrorMessagePosition | null { const location = parseSqlErrorLocation(message); - if (location) { - const offset = lineColumnToOffset(sql, location); + if (location) return { kind: "location", location }; + + // Oracle Agent reports a zero-based absolute offset into the statement text. + const positionMatch = ORACLE_AGENT_POSITION_PATTERN.exec(message); + if (!positionMatch?.[1]) return null; + const offset = Number.parseInt(positionMatch[1], 10); + if (!Number.isSafeInteger(offset) || offset < 0) return null; + return { kind: "offset", offset }; +} + +export function sqlErrorDecorationRange(sql: string, message: string): SqlErrorRange | null { + const position = sqlErrorMessagePosition(message); + if (!position) return null; + + if (position.kind === "location") { + const offset = lineColumnToOffset(sql, position.location); if (offset == null || offset >= sql.length) return null; return { from: offset, to: offset + 1 }; } - // Oracle Agent reports a zero-based absolute offset. For qualified invalid - // identifiers it can point later in the selector, so prefer the named token. - const positionMatch = /\berror\s+occur(?:red)?\s+at\s+position\s*:\s*(\d+)\b/i.exec(message); - if (!positionMatch?.[1]) return null; - const position = Number.parseInt(positionMatch[1], 10); - if (!Number.isSafeInteger(position) || position < 0 || position >= sql.length) return null; - - return oracleInvalidIdentifierRange(sql, message, position) ?? { from: position, to: position + 1 }; + const { offset } = position; + if (offset >= sql.length) return null; + // For qualified invalid identifiers the offset can point later in the + // selector, so prefer the named token. + return oracleInvalidIdentifierRange(sql, message, offset) ?? { from: offset, to: offset + 1 }; } diff --git a/apps/desktop/src/stores/queryStore.ts b/apps/desktop/src/stores/queryStore.ts index 4e10d06a57..b068c910db 100644 --- a/apps/desktop/src/stores/queryStore.ts +++ b/apps/desktop/src/stores/queryStore.ts @@ -11,7 +11,7 @@ import type { DeletedConnectionTabKeepMode } from "@/lib/tabs/deletedConnectionT import type { BatchSqlExecution, ConnectionConfig, DatabaseType, IndexInfo, NacosConfigEditorViewport, ObjectBrowserFilter, ObjectBrowserViewport, ObjectSource, ObjectSourceKind, QueryResult, QueryResultSourceColumnRef, QueryTab, TableInfoTab, TableStructureEditorTarget } from "@/types/database"; import { orderPinnedFirst } from "@/lib/app/pinnedItems"; import { canCancelQueryExecution } from "@/lib/sql/queryExecutionState"; -import { isSqlErrorPositionDebugEnabled, logSqlErrorPosition } from "@/lib/sql/errorPosition"; +import { isSqlErrorPositionDebugEnabled, logSqlErrorPosition, sqlErrorHasMessagePosition, sqlErrorMessageText } from "@/lib/sql/errorPosition"; import { buildExplainSql, parseExplainResult, parseDamengExplainText, parseOracleExplainText, sqlServerExplainResult, type BuildExplainSqlResult, type ExplainPlanDatabaseType } from "@/lib/diagram/explainPlan"; import { mysqlExplainCompatibilityHint } from "@/lib/diagram/mysqlExplainCompatibility"; import { allEditableColumnsWriteable, allPrimaryKeysPresent, analyzeEditableQueryEditability, analyzeSelectStructureForDisplay, resolveMetadataColumnName, resolveSourceColumnsByOrdinal, sourceColumnsForResult, type EditableQueryInfo, type EditableQuerySource } from "@/lib/sql/sqlAnalysis"; @@ -425,11 +425,12 @@ function annotateQueryResultSources( * The core returns per-statement error results for batches, but a * single-statement failure aborts the whole execute-multi command, leaving the * frontend to synthesize the error result here. Only annotated when the error - * actually carries a position and the submission is a single statement (a - * multi-statement thrown error's position cannot be attributed to one statement). + * actually carries a position — either typed (PostgreSQL) or parseable from the + * message text (Oracle's Agent offset) — and the submission is a single statement + * (a multi-statement thrown error's position cannot be attributed to one statement). */ function annotateSingleStatementErrorResult(errorResult: QueryResult, sourceSql: string, databaseType: DatabaseType | undefined, sourceOffset: number | undefined, parameterOptions: SqlParameterOptions | undefined, executedSql: string | undefined): void { - if (!errorResult.error?.errorPosition) return; + if (!errorResult.error?.errorPosition && !sqlErrorHasMessagePosition(sqlErrorMessageText(errorResult))) return; if (splitSqlStatementRanges(sourceSql, databaseType, parameterOptions).length !== 1) return; annotateQueryResultSources([errorResult], sourceSql, undefined, databaseType, sourceOffset, parameterOptions, executedSql); } diff --git a/docs/screenshots/issue-5581-oracle-caret-after.png b/docs/screenshots/issue-5581-oracle-caret-after.png new file mode 100644 index 0000000000000000000000000000000000000000..af065053f4244019e1f9f1795c35a5cfee24fcbd GIT binary patch literal 4429 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 literal 0 HcmV?d00001 diff --git a/docs/screenshots/issue-5581-oracle-caret-before.png b/docs/screenshots/issue-5581-oracle-caret-before.png new file mode 100644 index 0000000000000000000000000000000000000000..bb72502087d83eed20f27e35fc061028d4be94fe GIT binary patch literal 4403 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 literal 0 HcmV?d00001 diff --git a/docs/screenshots/issue-5581-oracle-error-position-button.png b/docs/screenshots/issue-5581-oracle-error-position-button.png new file mode 100644 index 0000000000000000000000000000000000000000..77b0869d8fd427accc7468554f174871d815ee3f GIT binary patch literal 82030 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 literal 0 HcmV?d00001 diff --git a/docs/screenshots/issue-5581-oracle-error-position-multiline.png b/docs/screenshots/issue-5581-oracle-error-position-multiline.png new file mode 100644 index 0000000000000000000000000000000000000000..e1f1bdb89eb934aa6aa057b1142b7a55ada7d05e GIT binary patch literal 84157 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 literal 0 HcmV?d00001 diff --git a/docs/screenshots/issue-5581-oracle-multiline-after.png b/docs/screenshots/issue-5581-oracle-multiline-after.png new file mode 100644 index 0000000000000000000000000000000000000000..bf66afc425501f57635488c6ac2dd9ca77e88be7 GIT binary patch literal 7368 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 literal 0 HcmV?d00001 diff --git a/packages/app-tests/sqlDiagnostics.test.ts b/packages/app-tests/sqlDiagnostics.test.ts index 8bb5056f3e..0ee6c40f3f 100644 --- a/packages/app-tests/sqlDiagnostics.test.ts +++ b/packages/app-tests/sqlDiagnostics.test.ts @@ -1,6 +1,6 @@ import { strict as assert } from "node:assert"; import { test } from "vitest"; -import { parseSqlErrorLocation, sqlErrorDecorationRange, sqlErrorSqlMatchesEditor } from "../../apps/desktop/src/lib/sql/sqlDiagnostics.ts"; +import { parseSqlErrorLocation, sqlErrorDecorationRange, sqlErrorMessagePosition, sqlErrorSqlMatchesEditor } from "../../apps/desktop/src/lib/sql/sqlDiagnostics.ts"; test("locates the Oracle invalid identifier reported by the Agent", () => { const sql = "select x.* from si_price_adjust_task t;"; @@ -49,6 +49,22 @@ test("keeps existing line-column and PostgreSQL caret parsing", () => { assert.deepEqual(sqlErrorDecorationRange("SELECT 1\nFROM bad", "syntax error at line 2, column 2"), { from: 10, to: 11 }); }); +test("parses the Oracle Agent offset without needing the SQL it refers to", () => { + assert.deepEqual(sqlErrorMessagePosition('ORA-00904: "NOPE_COL": invalid identifier error occur at position: 2270'), { kind: "offset", offset: 2270 }); + assert.deepEqual(sqlErrorMessagePosition("error occurred at position: 0"), { kind: "offset", offset: 0 }); +}); + +test("prefers a textual location over the Oracle Agent offset", () => { + assert.deepEqual(sqlErrorMessagePosition("syntax error at line 2, column 4 error occur at position: 9"), { kind: "location", location: { line: 1, column: 3 } }); + assert.deepEqual(sqlErrorMessagePosition('ERROR: column "bad" does not exist\nLINE 3: SELECT bad\n ^'), { kind: "location", location: { line: 2, column: 15 } }); +}); + +test("returns null when the message carries no usable position", () => { + assert.equal(sqlErrorMessagePosition("ERROR 1054 (42S22): Unknown column 'nope_col' in 'field list'"), null); + assert.equal(sqlErrorMessagePosition("error occur at position: nope"), null); + assert.equal(sqlErrorMessagePosition('ORA-00904: "X": invalid identifier'), null); +}); + test("matches DBX pagination rewrites without accepting unrelated stale SQL", () => { const editorSql = "SELECT *\nFROM projects\nWHERE ;"; const executedSql = "SELECT *\nFROM projects\nWHERE LIMIT 100;";