[ https://issues.apache.org/jira/browse/HIVE-2135?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Ashutosh Chauhan updated HIVE-2135: ----------------------------------- Attachment: hive_2135.patch Objectstore, Metastore, Command, execution, retrials are distinct concepts which I think are too entwined in current implementation. It would be good to disentangle them from each other to make code more modular. I think its better to have a separate Command interface which different types of Command will implement. execute() should really be a part of Rawstore interface since different Objectstore can have different strategies for executing a command and may have different ways of doing retrials. Metastore should prepare a Command and call execute() on Rawstore to execute it. I am attaching an illustrative patch which sketches these ideas for create database command. Let me know if it makes sense. > Refactor HiveMetaStore.java > --------------------------- > > Key: HIVE-2135 > URL: https://issues.apache.org/jira/browse/HIVE-2135 > Project: Hive > Issue Type: Improvement > Components: Metastore > Reporter: Ashutosh Chauhan > Assignee: Ashutosh Chauhan > Fix For: 0.8.0 > > Attachments: hive_2135.patch, refactor.patch > > > HiveMetaStore.java is more then 3000 LOC which contains wide variety of code. > It will be good to refactor it so that its easier to maintain. -- This message is automatically generated by JIRA. For more information on JIRA, see: http://www.atlassian.com/software/jira