Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

release-23.1.9-rc: sql: refactor semantic analysis and fix some bugs #109331

Merged

Commits on Aug 23, 2023

  1. 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
    mgartner committed Aug 23, 2023
    Configuration menu
    Copy the full SHA
    8f26fd5 View commit details
    Browse the repository at this point in the history
  2. 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.
    
    Fixes cockroachdb#107654
    
    There is no release note because the release note from cockroachdb#106868 should be
    sufficient.
    
    Release note: None
    mgartner committed Aug 23, 2023
    Configuration menu
    Copy the full SHA
    ab0eeb7 View commit details
    Browse the repository at this point in the history