Github user hvanhovell commented on a diff in the pull request:

    https://github.com/apache/spark/pull/13534#discussion_r66161676
  
    --- Diff: 
sql/catalyst/src/main/antlr4/org/apache/spark/sql/catalyst/parser/SqlBase.g4 ---
    @@ -594,16 +594,13 @@ qualifiedName
         : identifier ('.' identifier)*
         ;
     
    -// Identifier that also allows the use of a number of SQL keywords (mainly 
for backwards compatibility).
    -looseIdentifier
    -    : identifier
    -    | FROM
    -    | TO
    -    | TABLE
    -    | WITH
    +identifier
    +    : strictIdentifier
    +    | ANTI | FULL | INNER | LEFT | SEMI | RIGHT | NATURAL | UNION | 
INTERSECT | EXCEPT | DATABASE | ON | JOIN | CROSS
    +    | SELECT | FROM | WHERE | HAVING | FROM | TO | TABLE | WITH | NOT
    --- End diff --
    
    The semantic is actually quite simple: any keyword that can be use after a 
table alias must be added to the `strictIdentifier` rule. In practice this 
means that we need to add all JOIN and SET-operator keywords. I have updated 
the description.
    
    I am not sure how lenient database systems are. I like the parser to be as 
lenient as possible, since we also use the table identifier and data type 
parsing in a lot of other places in the codebase.


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to