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

Prasad Chakka commented on HIVE-678:
------------------------------------

Index partitions should be created when the actual data exists in the correct 
location. Otherwise it will be difficult to asses whether the index for a 
partition is not yet been created or whether it is just an empty partition. so 
we should let index builder create appropriate partition/table at the end of 
the index builder. without this any processes that are waiting for this index 
partition to be created before running their jobs will have problems. if you 
look at 'insert into tbl partition ... select', metadata for partition is not 
created until after the select query is run successfully.

Also I feel more comfortable if we move most of the index specific logic out of 
metastore into java client (probably in Hive.java).

HiveMetaStore.java
280: check that the partName is not empty along with the check for null
281: make both parts of index_def.getTableName() to be on the same line. same 
goes for the next param. it can be slightly confusing while reading the way it 
is currently written.
290: what do you think about the owner? should they be changed? what about the 
table properties and serde properties. should they be inherited? i think serde 
properties should not be but tbl properties should be. but again, the metadata 
for index partitions and table should be created from the client side (when the 
actual data is available) instead of creating them as part of index metadata 
creation. 

MetaStoreUtils.java
635: ORIGIN sounds a bit weird, can you use BASE instead?

Warehouse.java
258: splitting by '=' will not work if the partition value contains '='. 
Instead of this function you should use Warehouse.makeSpecFromName(path) and 
the values from the returned hash map.

Driver.java
369: printing to stdout?

ExecDriver.java
449: printStackTrace()?

DDLSemanticAnalyzer.java
please make sure that column names are case insensitive (and any HDFS paths 
created for the indexes use lowercase names since HDFS is case sensitive and 
Hive is not).
220: invalid index types should result in error. is it checked at a different 
place?

Didn't go through the actual index creation part. but i am sure nothing much 
changed since last patch in there. but i will take a look again but you should 
change the patch to reflect the above comments.


> Add support for building index table
> ------------------------------------
>
>                 Key: HIVE-678
>                 URL: https://issues.apache.org/jira/browse/HIVE-678
>             Project: Hadoop Hive
>          Issue Type: Sub-task
>          Components: Metastore, Query Processor
>    Affects Versions: 0.2.0, 0.3.0, 0.3.1, 0.3.2, 0.4.0
>            Reporter: He Yongqiang
>         Attachments: hive-678-2009-07-25.patch
>
>


-- 
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