diff --git a/ql/src/java/org/apache/hadoop/hive/ql/plan/PlanUtils.java b/ql/src/java/org/apache/hadoop/hive/ql/plan/PlanUtils.java index 87a25480740df061e0918228d71dd9ec8e08a275..c8ae23592127db3500139ab1a48110b8d704d0ab 100644 --- a/ql/src/java/org/apache/hadoop/hive/ql/plan/PlanUtils.java +++ b/ql/src/java/org/apache/hadoop/hive/ql/plan/PlanUtils.java @@ -355,6 +355,9 @@ public static TableDesc getTableDesc(CreateTableDesc crtTblDesc, String cols, if (crtTblDesc.getTblProps() != null) { properties.putAll(crtTblDesc.getTblProps()); } + if (crtTblDesc.getSerdeProps() != null) { + properties.putAll(crtTblDesc.getSerdeProps()); + } // replace the default input & output file format with those found in // crtTblDesc diff --git a/ql/src/test/queries/clientpositive/crtseltbl_serdeprops.q b/ql/src/test/queries/clientpositive/crtseltbl_serdeprops.q new file mode 100644 index 0000000000000000000000000000000000000000..6e73bc2a25d8a61fa16ac1533a702da0e23416dc --- /dev/null +++ b/ql/src/test/queries/clientpositive/crtseltbl_serdeprops.q @@ -0,0 +1,11 @@ +dfs ${system:test.dfs.mkdir} ${system:test.tmp.dir}/tmpsepatest; +CREATE TABLE separator_test +ROW FORMAT SERDE 'org.apache.hadoop.hive.serde2.OpenCSVSerde' +WITH SERDEPROPERTIES ("separatorChar" = "|","quoteChar"="\"","escapeChar"=" +") +STORED AS TEXTFILE +LOCATION 'file:${system:test.tmp.dir}/tmpsepatest' +AS +SELECT * FROM src where key = 100 limit 1; +dfs -cat ${system:test.tmp.dir}/tmpsepatest/000000_0; +drop table separator_test; diff --git a/ql/src/test/results/clientpositive/crtseltbl_serdeprops.q.out b/ql/src/test/results/clientpositive/crtseltbl_serdeprops.q.out new file mode 100644 index 0000000000000000000000000000000000000000..3af91508951956bb2cf8d102313f2e1a91ed0662 --- /dev/null +++ b/ql/src/test/results/clientpositive/crtseltbl_serdeprops.q.out @@ -0,0 +1,35 @@ +PREHOOK: query: CREATE TABLE separator_test +ROW FORMAT SERDE 'org.apache.hadoop.hive.serde2.OpenCSVSerde' +WITH SERDEPROPERTIES ("separatorChar" = "|","quoteChar"="\"","escapeChar"=" +") +STORED AS TEXTFILE +#### A masked pattern was here #### +AS +SELECT * FROM src where key = 100 limit 1 +PREHOOK: type: CREATETABLE_AS_SELECT +PREHOOK: Input: default@src +#### A masked pattern was here #### +PREHOOK: Output: database:default +PREHOOK: Output: default@separator_test +POSTHOOK: query: CREATE TABLE separator_test +ROW FORMAT SERDE 'org.apache.hadoop.hive.serde2.OpenCSVSerde' +WITH SERDEPROPERTIES ("separatorChar" = "|","quoteChar"="\"","escapeChar"=" +") +STORED AS TEXTFILE +#### A masked pattern was here #### +AS +SELECT * FROM src where key = 100 limit 1 +POSTHOOK: type: CREATETABLE_AS_SELECT +POSTHOOK: Input: default@src +#### A masked pattern was here #### +POSTHOOK: Output: database:default +POSTHOOK: Output: default@separator_test +"100"|"val_100" +PREHOOK: query: drop table separator_test +PREHOOK: type: DROPTABLE +PREHOOK: Input: default@separator_test +PREHOOK: Output: default@separator_test +POSTHOOK: query: drop table separator_test +POSTHOOK: type: DROPTABLE +POSTHOOK: Input: default@separator_test +POSTHOOK: Output: default@separator_test