[ 
https://issues.apache.org/jira/browse/HIVE-1546?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12901654#action_12901654
 ] 

HBase Review Board commented on HIVE-1546:
------------------------------------------

Message from: "John Sichi" <jsi...@facebook.com>

-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://review.cloudera.org/r/713/#review1008
-----------------------------------------------------------



http://svn.apache.org/repos/asf/hadoop/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/Driver.java
<http://review.cloudera.org/r/713/#comment3232>

    Can you break this out into several statements for readability?



http://svn.apache.org/repos/asf/hadoop/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/metadata/HiveUtils.java
<http://review.cloudera.org/r/713/#comment3233>

    This does not belong in HiveUtils.  Can't we just leave it where it is (in 
SemanticAnalyzerFactory) and add a public accessor method for it so that 
extensions can reuse it?
    



http://svn.apache.org/repos/asf/hadoop/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/parse/BaseSemanticAnalyzer.java
<http://review.cloudera.org/r/713/#comment3234>

    Why does this return a String []?  The callers don't use it.



http://svn.apache.org/repos/asf/hadoop/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/parse/SemanticAnalyzerFactoryInterface.java
<http://review.cloudera.org/r/713/#comment3231>

    Putting "Interface" into the interface name is clunky.
    
    Let's call the interface HiveSemanticAnalyzerFactory instead (matching the 
convention for other plugin interfaces such as HiveStorageHandler and 
HiveIndexHandler).
    
    In addition, I think we should introduce a new interface 
HiveSemanticAnalyzer and have the factory produce that, since factories should 
generally produce interfaces rather than classes (e.g. so that dynamic proxies 
can be used).
    



http://svn.apache.org/repos/asf/hadoop/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/parse/SemanticAnalyzerFactoryInterface.java
<http://review.cloudera.org/r/713/#comment3224>

    This configuration parameter needs to be defined in HiveConf.java following 
the pattern already in use there.
    
    Also, it needs a new entry in conf/hive-default.xml
    



http://svn.apache.org/repos/asf/hadoop/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/parse/SemanticAnalyzerFactoryInterface.java
<http://review.cloudera.org/r/713/#comment3228>

    Our convention for existing Hive plugins is to make them extend 
org.apache.hadoop.conf.Configurable and pass in the configuration only once via 
setConf (rather than to individual methods such as get).
    
    Inside a Configurable, you can get back to a HiveConf with:
    
    new HiveConf(getConf(), YourClass.class)
    


- John





> Ability to plug custom Semantic Analyzers for Hive Grammar
> ----------------------------------------------------------
>
>                 Key: HIVE-1546
>                 URL: https://issues.apache.org/jira/browse/HIVE-1546
>             Project: Hadoop Hive
>          Issue Type: Improvement
>          Components: Metastore
>    Affects Versions: 0.7.0
>            Reporter: Ashutosh Chauhan
>            Assignee: Ashutosh Chauhan
>             Fix For: 0.7.0
>
>         Attachments: hive-1546.patch
>
>
> It will be useful if Semantic Analysis phase is made pluggable such that 
> other projects can do custom analysis of hive queries before doing metastore 
> operations on them. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to