hive-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Thiruvel Thirumoolan" <thiru...@yahoo-inc.com>
Subject Review Request: HIVE-1537 - Allow users to specify LOCATION in CREATE DATABASE statement
Date Thu, 23 Jun 2011 09:55:50 GMT

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

Review request for hive, Ning Zhang and Amareshwari Sriramadasu.


Summary
-------

Usage:

create database location 'path1';
alter database location 'path2';

After 'alter', only newly created tables will be located under the new location. Tables created
before 'alter' will be under 'path1'.

Notes:
------
1. I have moved getDefaultDatabasePath() to HiveMetaStore and made it private. There should
only be one API to obtain the location of a database and it has to accept 'Database' as an
arg and hence the new method in Warehouse 'getDatabasePath()' and similarly 'getTablePath()'.
The usages of older API also has been changed. Hope that should be fine.
2. One could argue why have getDatabasePath() as location can be obtained by db.getLocationUri().
I wanted to retain this method to do any additional processing if necessary (getDns or whatever).


This addresses bug HIVE-1537.
    https://issues.apache.org/jira/browse/HIVE-1537


Diffs
-----

  trunk/metastore/src/java/org/apache/hadoop/hive/metastore/HiveAlterHandler.java 1138011

  trunk/metastore/src/java/org/apache/hadoop/hive/metastore/HiveMetaStore.java 1138011 
  trunk/metastore/src/java/org/apache/hadoop/hive/metastore/ObjectStore.java 1138011 
  trunk/metastore/src/java/org/apache/hadoop/hive/metastore/Warehouse.java 1138011 
  trunk/metastore/src/test/org/apache/hadoop/hive/metastore/TestHiveMetaStore.java 1138011

  trunk/ql/src/java/org/apache/hadoop/hive/ql/exec/DDLTask.java 1138011 
  trunk/ql/src/java/org/apache/hadoop/hive/ql/exec/StatsTask.java 1138011 
  trunk/ql/src/java/org/apache/hadoop/hive/ql/parse/DDLSemanticAnalyzer.java 1138011 
  trunk/ql/src/java/org/apache/hadoop/hive/ql/parse/Hive.g 1138011 
  trunk/ql/src/java/org/apache/hadoop/hive/ql/parse/ImportSemanticAnalyzer.java 1138011 
  trunk/ql/src/java/org/apache/hadoop/hive/ql/parse/SemanticAnalyzer.java 1138011 
  trunk/ql/src/java/org/apache/hadoop/hive/ql/parse/SemanticAnalyzerFactory.java 1138011 
  trunk/ql/src/test/org/apache/hadoop/hive/ql/metadata/TestHive.java 1138011 
  trunk/ql/src/test/queries/clientpositive/database_location.q PRE-CREATION 
  trunk/ql/src/test/results/clientpositive/database_location.q.out PRE-CREATION 

Diff: https://reviews.apache.org/r/949/diff


Testing
-------

1. Updated TestHiveMetaStore.java for testing the functionality - database creation, alteration
and table's locations as TestCliDriver outputs ignore locations.
2. Added database_location.q for testing the grammar primarily.

Thanks,
Thiruvel


Thanks,

Thiruvel


Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message