[ 
https://issues.apache.org/jira/browse/DRILL-3510?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15855378#comment-15855378
 ] 

ASF GitHub Bot commented on DRILL-3510:
---------------------------------------

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

    https://github.com/apache/drill/pull/520#discussion_r99748236
  
    --- Diff: 
exec/java-exec/src/main/java/org/apache/drill/exec/server/options/TypeValidators.java
 ---
    @@ -204,10 +204,11 @@ public void validate(final OptionValue v, final 
OptionManager manager) {
        * Validator that checks if the given value is included in a list of 
acceptable values. Case insensitive.
        */
       public static class EnumeratedStringValidator extends StringValidator {
    -    private final Set<String> valuesSet = new HashSet<>();
    +    private final Set<String> valuesSet = new LinkedHashSet<>();
     
         public EnumeratedStringValidator(String name, String def, String... 
values) {
           super(name, def);
    +      valuesSet.add(def.toLowerCase());
    --- End diff --
    
    instead of adding the default to the set, shouldn't we check that def is 
actually present in values? I think this is how this class has been used until 
now.
    
    When checking the changes to `PlannerSettings.java`, it's impossible to 
know which value is actually the default one, whereas it becomes more obvious 
if the same value is present twice (not perfect though, but at least less error 
prone. A better change/validator would be to use enums and have something like: 
    ```
    class EnumValidator<T extends Enum<T>> extends TypeValidator {
      public EnumValidator(String name, Enum<T> default, Class<T> enumClazz) {
        ...
      }
    }
    ```
    )


> Add ANSI_QUOTES option so that Drill's SQL Parser will recognize ANSI_SQL 
> identifiers 
> --------------------------------------------------------------------------------------
>
>                 Key: DRILL-3510
>                 URL: https://issues.apache.org/jira/browse/DRILL-3510
>             Project: Apache Drill
>          Issue Type: Improvement
>          Components: SQL Parser
>            Reporter: Jinfeng Ni
>            Assignee: Vitalii Diravka
>              Labels: doc-impacting
>             Fix For: 1.10.0
>
>         Attachments: DRILL-3510.patch, DRILL-3510.patch
>
>
> Currently Drill's SQL parser uses backtick as identifier quotes, the same as 
> what MySQL does. However, this is different from ANSI SQL specification, 
> where double quote is used as identifier quotes.  
> MySQL has an option "ANSI_QUOTES", which could be switched on/off by user. 
> Drill should follow the same way, so that Drill users do not have to rewrite 
> their existing queries, if their queries use double quotes. 
> {code}
> SET sql_mode='ANSI_QUOTES';
> {code}
>    



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Reply via email to