You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
108188: sql: refactor semantic analysis and fix some bugs r=mgartner a=mgartner
#### sql/sem/tree: simplify SemaCtx reject flag checks
Release note: None
#### sql/sem/tree: split derived SemaContext properties from contextual info
Properties derived about expressions during semantic analysis are
communicated to callers via ScalarProperties. Prior to this commit, this
type was also used to provide contextual information while traversing
sub-expressions during semantic analysis. For example, it would indicate
whether the current expression is a descendent of a window function
expression.
These two types of information, derived and contextual, are
fundamentally different. Derived properties bubble up from the bottom of
the tree to the top, while context propagates downward into
sub-expressions. This difference made it difficult to maintaining them
correctly in a single type and difficult to reason about. This commit
introduces the ScalarScene type which is used for providing internal
contextual information during semantic analysis.
Release note: None
#### sql/sem/tree: do not Restore SemaRejectFlags during semantic analysis
This commit fixes a bug introduced in cockroachdb#105582 that caused
SemaRejectFlags to be restored during semantic analysis, preventing the
analysis from detecting some forms of invalid expressions.
Fixescockroachdb#108166
There is no release note because the related bug does not exist in any
releases.
Release note: None
#### sql: do not allow subqueries to be cast to enums in views and UDFs
This commit is a follow-up to cockroachdb#106868 after additional reproductions of
the original bug were found. For now, we disallow any CAST expressions
that contain a subquery in the input and the target type is an ENUM.
I've created cockroachdb#108184 to track this limitation.
Fixescockroachdb#107654
There is no release note because the release note from cockroachdb#106868 should be
sufficient.
Release note: None
#### sql/randgen: fix typo in comment
Release note: None
Co-authored-by: Marcus Gartner <[email protected]>
0 commit comments