> On 2011-06-30 22:48:12, Paul Yang wrote:
> > trunk/metastore/src/java/org/apache/hadoop/hive/metastore/ObjectStore.java, 
> > lines 1533-1537
> > <https://reviews.apache.org/r/910/diff/2/?file=21391#file21391line1533>
> >
> >     I don't think it's possible to create 2 tables with the same name. In 
> > which case, there shouldn't be a need for this check.

Ah, the comment there is a little misleading.  Some tables were getting 
returned multiple times if they matched multiple parts of an OR clause.  For 
example, in the unit test with the filter string: owner = "testOwner1" && 
(lastAccessTime = 30 || test_param_1 = "hi"), a table which had 
owner="testOwner1", lastAccessTime = 30, and test_param_1 = "hi" was returned 
twice by the query.


> On 2011-06-30 22:48:12, Paul Yang wrote:
> > trunk/metastore/src/java/org/apache/hadoop/hive/metastore/parser/ExpressionTree.java,
> >  lines 187-188
> > <https://reviews.apache.org/r/910/diff/2/?file=21393#file21393line187>
> >
> >     We should catch the case where the keyName is invalid

Will do


- Sohan


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/910/#review928
-----------------------------------------------------------


On 2011-06-20 21:04:45, Sohan Jain wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/910/
> -----------------------------------------------------------
> 
> (Updated 2011-06-20 21:04:45)
> 
> 
> Review request for hive and Paul Yang.
> 
> 
> Summary
> -------
> 
> Create a function listTableNamesByFilter that returns a list of names for 
> tables in a database that match a certain filter. The syntax of the filter is 
> similar to the one created by HIVE-1609. You can filter the table list based 
> on owner, last access time, or table parameter key/values. The filtering 
> takes place at the JDO level for efficiency/speed.  To create a new kind of 
> table filter, add a constant to thrift.if and a branch in the if statement in 
> generateJDOFilterOverTables() in ExpressionTree.
> 
> Example filter statements include: 
> //translation: owner.matches(".*test.*") and lastAccessTime == 0
> filter = Constants.HIVE_FILTER_FIELD_OWNER + 
>     " like \".*test.*\" and " + 
>     Constants.HIVE_FILTER_FIELD_LAST_ACCESS + " = 0";
> 
> //translation: owner = "test_user" and (parameters.get("retention") == "30" 
> || parameters.get("retention") == 90)
> filter = Constants.HIVE_FILTER_FIELD_OWNER + 
>     " = \"test_user\" and (" + 
>     Constants.HIVE_FILTER_FIELD_PARAMS + "retention = \"30\" or " + 
>     Constants.HIVE_FILTER_FIELD_PARAMS + "retention = \"90\")"
> 
> The filter can currently parse string or integer values, where values 
> interpreted as strings must be in quotes.  See the comments in 
> IMetaStoreClient for more usage details/restrictions.
> 
> 
> This addresses bug HIVE-2226.
>     https://issues.apache.org/jira/browse/HIVE-2226
> 
> 
> Diffs
> -----
> 
>   trunk/metastore/if/hive_metastore.thrift 1136751 
>   
> trunk/metastore/src/java/org/apache/hadoop/hive/metastore/HiveMetaStore.java 
> 1136751 
>   
> trunk/metastore/src/java/org/apache/hadoop/hive/metastore/HiveMetaStoreClient.java
>  1136751 
>   
> trunk/metastore/src/java/org/apache/hadoop/hive/metastore/IMetaStoreClient.java
>  1136751 
>   trunk/metastore/src/java/org/apache/hadoop/hive/metastore/ObjectStore.java 
> 1136751 
>   trunk/metastore/src/java/org/apache/hadoop/hive/metastore/RawStore.java 
> 1136751 
>   
> trunk/metastore/src/java/org/apache/hadoop/hive/metastore/parser/ExpressionTree.java
>  1136751 
>   trunk/metastore/src/java/org/apache/hadoop/hive/metastore/parser/Filter.g 
> 1136751 
>   
> trunk/metastore/src/test/org/apache/hadoop/hive/metastore/TestHiveMetaStore.java
>  1136751 
> 
> Diff: https://reviews.apache.org/r/910/diff
> 
> 
> Testing
> -------
> 
> Added test cases to TestHiveMetaStore
> 
> 
> Thanks,
> 
> Sohan
> 
>

Reply via email to