Skip to content

Preserve SQL source spans for scalar UDF type errors - #150

Merged
osipovartem merged 2 commits into
df55-csv-blank-source-positionfrom
df55-udf-diagnostic-spans
Oct 15, 2026
Merged

osipovartem merged 2 commits into
df55-csv-blank-source-positionfrom
df55-udf-diagnostic-spans

Conversation

@osipovartem

Copy link
Copy Markdown
Collaborator

Summary

  • Carry SQL invocation spans on logical scalar UDF calls through tree rewrites, type coercion, and simplification.
  • Attach a structured diagnostic to UDF argument-type errors without replacing diagnostics supplied by inner calls or UDF implementations.
  • Keep spans diagnostic-only so expression equality, hashing, and columnar execution are unchanged.

Verification

  • cargo check --workspace --all-targets
  • SQL integration test: repeated, reversed, nested, and multiline invalid UDF calls
  • Optimizer tests: source span preservation and nested inner-error attribution
  • Expr test: UDF-supplied diagnostic preservation
  • Independent read-only review: approved, no blocking findings

Rustice will pin this revision and cover Snowflake 001044/42P13 wire positions in a separate PR.

@osipovartem
osipovartem merged commit b36a165 into df55-csv-blank-source-position Oct 15, 2026
32 of 37 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant