Conversation
This was referenced Sep 14, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
PostgreSQL quoted identifiers such as
"a.b"are currently split again while constructing table and column AST nodes. For example,DROP INDEX "a.b"reports"b"as its name and invents schema"a". Numeric types with negative scales fail in type fragments, DDL and casts, and COMMENT rejects escape strings containing an escaped quote and newline-separated ordinary string literals.This change preserves lexer-separated name components with
Dialect.POSTGRESQL, including table-name copies. It accepts negative numeric scales through the shared type grammar, preserves precision/scale metadata for qualified types, and distinguishes scale-1from an omitted scale.ColDataType.fromNumericParameterssupports nullable parameters while preserving the existing primitive constructor's sentinel behavior.COMMENT and SELECT share character-literal parsing. PostgreSQL
E'...'enables escapes for that literal, and newline concatenation accepts ordinary quoted continuations while rejecting dollar-quoted continuations. Tagged dollar comments already work in 5.4 with the PostgreSQL preset; the existing default-off behavior is retained and covered by regression tests. Default and BigQuery dotted-name behavior is also retained.Validation:
check: 6,979 tests, no failures/errors, 25 skipped; formatting, static analysis and grammar ambiguity checks passed.clean verify: 6,961 tests, no failures/errors, 25 skipped.6312f9e5: 253 selected cases, 237 accepted by PostgreSQL. AST/deparse checks improve from 93 to 229 passing cases, with no regressions among previously passing valid cases. All 229 regenerated valid SQL cases execute successfully on PostgreSQL.The remaining eight valid audit failures are unsupported COMMENT target kinds (
INDEX,SCHEMA,SEQUENCE,DOMAIN,TYPE,MATERIALIZED VIEW,FUNCTION,CONSTRAINT), which require an extension of the Comment target AST. PostgreSQL precision/scale range validation is left to the database.Syntax references: numeric types, lexical structure, COMMENT.