[ https://issues.apache.org/jira/browse/HIVE-3682?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13640811#comment-13640811 ]
Phabricator commented on HIVE-3682: ----------------------------------- ashutoshc has requested changes to the revision "HIVE-3682 [jira] when output hive table to file,users should could have a separator of their own choice". Some comments. INLINE COMMENTS ql/src/java/org/apache/hadoop/hive/ql/plan/LocalDirectoryDesc.java:29 Since all of these fields are subset of fields defined in CreateTableDesc. I wonder if you can reuse that class instead of creating a new one? In case you can not, atleast consider extending that. ql/src/java/org/apache/hadoop/hive/ql/parse/SemanticAnalyzer.java:1208 As I have indicated below if you can reuse/extend CreateTableDesc instead of LocalDirectoryDesc, you probably can refactor and reuse much of the parsing logic from create table and that will be good to have. ql/src/java/org/apache/hadoop/hive/ql/plan/PlanUtils.java:102 As I mentioned earlier, if we reuse CreateTableDesc class, probably much of this code could be avoided. ql/src/test/queries/clientpositive/insert_overwrite_local_directory_1.q:8 Can you add a test which results in MR job. e.g, doing join, group-by etc? ql/src/test/queries/clientpositive/insert_overwrite_local_directory_1.q:72 After HIVE-4369 we need to use dfs ${system:test.dfs.mkdir} for mkdir command because of hadoop incompatibility issues. REVISION DETAIL https://reviews.facebook.net/D10275 BRANCH HIVE-3682 ARCANIST PROJECT hive To: JIRA, ashutoshc, omalley, khorgath > when output hive table to file,users should could have a separator of their > own choice > -------------------------------------------------------------------------------------- > > Key: HIVE-3682 > URL: https://issues.apache.org/jira/browse/HIVE-3682 > Project: Hive > Issue Type: New Feature > Components: CLI > Affects Versions: 0.8.1 > Environment: Linux 3.0.0-14-generic #23-Ubuntu SMP Mon Nov 21 > 20:34:47 UTC 2011 i686 i686 i386 GNU/Linux > java version "1.6.0_25" > hadoop-0.20.2-cdh3u0 > hive-0.8.1 > Reporter: caofangkun > Assignee: Sushanth Sowmyan > Attachments: HIVE-3682-1.patch, HIVE-3682.D10275.1.patch, > HIVE-3682.with.serde.patch > > > By default,when output hive table to file ,columns of the Hive table are > separated by ^A character (that is \001). > But indeed users should have the right to set a seperator of their own choice. > Usage Example: > create table for_test (key string, value string); > load data local inpath './in1.txt' into table for_test > select * from for_test; > UT-01:default separator is \001 line separator is \n > insert overwrite local directory './test-01' > select * from src ; > create table array_table (a array<string>, b array<string>) > ROW FORMAT DELIMITED > FIELDS TERMINATED BY '\t' > COLLECTION ITEMS TERMINATED BY ','; > load data local inpath "../hive/examples/files/arraytest.txt" overwrite into > table table2; > CREATE TABLE map_table (foo STRING , bar MAP<STRING, STRING>) > ROW FORMAT DELIMITED > FIELDS TERMINATED BY '\t' > COLLECTION ITEMS TERMINATED BY ',' > MAP KEYS TERMINATED BY ':' > STORED AS TEXTFILE; > UT-02:defined field separator as ':' > insert overwrite local directory './test-02' > row format delimited > FIELDS TERMINATED BY ':' > select * from src ; > UT-03: line separator DO NOT ALLOWED to define as other separator > insert overwrite local directory './test-03' > row format delimited > FIELDS TERMINATED BY ':' > select * from src ; > UT-04: define map separators > insert overwrite local directory './test-04' > row format delimited > FIELDS TERMINATED BY '\t' > COLLECTION ITEMS TERMINATED BY ',' > MAP KEYS TERMINATED BY ':' > select * from src; -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira