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

Francis Liu commented on HCATALOG-64:
-------------------------------------

Alan, 4) The redudancy is  a side effect of the role of each class. 
HCatTableInfo represents the state of things in the metastore hence immutable 
to the user. While the *JobInfo classes are user configuration/parameter 
classes it is the vehicle by which the user specifies which table he/she wishes 
to read. The redudancy is not nice but I don't see a clean way around it. We 
can make the *JobInfo.getTableName() and *JobInfo.getDatabaseName() package 
private that should help a bit?

Sushanth, the drivers are designed in such a way that the implementation 
specific parameters need not be used but can be if users wish to leverage the 
features of the underlying storage system. We need to provide such a facility 
or the benefit of using certain storage systems are lost. It's a tradeoff but I 
believe it will add more value to HCat?


> Refactor HCatTableInfo, JobInfo and OutputJobInfo
> -------------------------------------------------
>
>                 Key: HCATALOG-64
>                 URL: https://issues.apache.org/jira/browse/HCATALOG-64
>             Project: HCatalog
>          Issue Type: Improvement
>    Affects Versions: 0.1, 0.2
>            Reporter: Francis Liu
>            Assignee: Francis Liu
>             Fix For: 0.2
>
>         Attachments: HCatTableInfo_JobInfo_OutputJobInfo_3.patch
>
>
> These classes and their roles has become convoluted. HCatTableInfo should be 
> an HCat abstraction of table and thus not have any job specific information 
> and should not contain different information depending on usage. *JobInfo 
> classes should contain job specific information (user provided, derived from 
> metastore info, etc). Since *JobInfo contains such information it should be 
> the object which is passed to HCatInputFormat.setInput and 
> HCatInputFormat.setOutput. Also JobInfo should be renamed to InputJobInfo for 
> consistency and clarity. Also there needs to be a way to pass implementation 
> specific configuration information down to the actual storage driver.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to