You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hive.apache.org by sa...@apache.org on 2017/12/13 16:17:13 UTC

hive git commit: HIVE-18112: Show create for view having special char in where clause is not showing properly (Naresh P R, reviewed by Sankar Hariappan)

Repository: hive
Updated Branches:
  refs/heads/branch-2.2 0013facb2 -> 468139a76


HIVE-18112: Show create for view having special char in where clause is not showing properly (Naresh P R, reviewed by Sankar Hariappan)

Signed-off-by: Sankar Hariappan <sa...@apache.org>


Project: http://git-wip-us.apache.org/repos/asf/hive/repo
Commit: http://git-wip-us.apache.org/repos/asf/hive/commit/468139a7
Tree: http://git-wip-us.apache.org/repos/asf/hive/tree/468139a7
Diff: http://git-wip-us.apache.org/repos/asf/hive/diff/468139a7

Branch: refs/heads/branch-2.2
Commit: 468139a76e726586ffca7fd5cc8e10ef4e03ad5b
Parents: 0013fac
Author: nareshpr <pr...@gmail.com>
Authored: Wed Dec 13 12:06:49 2017 +0530
Committer: Sankar Hariappan <sa...@apache.org>
Committed: Wed Dec 13 15:18:39 2017 +0530

----------------------------------------------------------------------
 .../org/apache/hadoop/hive/ql/exec/DDLTask.java   |  9 +++++----
 .../test/queries/clientpositive/showcreateview.q  |  2 ++
 .../results/clientpositive/showcreateview.q.out   | 18 ++++++++++++++++++
 3 files changed, 25 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/hive/blob/468139a7/ql/src/java/org/apache/hadoop/hive/ql/exec/DDLTask.java
----------------------------------------------------------------------
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/exec/DDLTask.java b/ql/src/java/org/apache/hadoop/hive/ql/exec/DDLTask.java
index 76abc62..5f0065a 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/exec/DDLTask.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/exec/DDLTask.java
@@ -31,6 +31,7 @@ import java.io.Serializable;
 import java.io.Writer;
 import java.net.URI;
 import java.net.URISyntaxException;
+import java.nio.charset.StandardCharsets;
 import java.sql.SQLException;
 import java.util.AbstractList;
 import java.util.ArrayList;
@@ -2136,7 +2137,7 @@ public class DDLTask extends Task<DDLWork> implements Serializable {
       createDb_str.append(propertiesToString).append(")\n");
     }
 
-    outStream.write(createDb_str.toString().getBytes("UTF-8"));
+    outStream.write(createDb_str.toString().getBytes(StandardCharsets.UTF_8));
     return 0;
   }
 
@@ -2186,7 +2187,7 @@ public class DDLTask extends Task<DDLWork> implements Serializable {
 
       if (tbl.isView()) {
         String createTab_stmt = "CREATE VIEW `" + tableName + "` AS " + tbl.getViewExpandedText();
-        outStream.writeBytes(createTab_stmt.toString());
+        outStream.write(createTab_stmt.getBytes(StandardCharsets.UTF_8));
         return 0;
       }
 
@@ -2352,7 +2353,7 @@ public class DDLTask extends Task<DDLWork> implements Serializable {
       }
       createTab_stmt.add(TBL_PROPERTIES, tbl_properties);
 
-      outStream.writeBytes(createTab_stmt.render());
+      outStream.write(createTab_stmt.render().getBytes(StandardCharsets.UTF_8));
     } catch (IOException e) {
       LOG.info("show create table: " + stringifyException(e));
       return 1;
@@ -3189,7 +3190,7 @@ public class DDLTask extends Task<DDLWork> implements Serializable {
     FSDataOutputStream out = fs.create(resFile);
     try {
       if (data != null && !data.isEmpty()) {
-        OutputStreamWriter writer = new OutputStreamWriter(out, "UTF-8");
+        OutputStreamWriter writer = new OutputStreamWriter(out, StandardCharsets.UTF_8);
         writer.write(data);
         writer.write((char) terminator);
         writer.flush();

http://git-wip-us.apache.org/repos/asf/hive/blob/468139a7/ql/src/test/queries/clientpositive/showcreateview.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientpositive/showcreateview.q b/ql/src/test/queries/clientpositive/showcreateview.q
new file mode 100644
index 0000000..bfe6914
--- /dev/null
+++ b/ql/src/test/queries/clientpositive/showcreateview.q
@@ -0,0 +1,2 @@
+CREATE VIEW ViewWithSpecialChars AS SELECT key FROM src where key = 'abcÖdefÖgh';
+SHOW CREATE TABLE ViewWithSpecialChars;

http://git-wip-us.apache.org/repos/asf/hive/blob/468139a7/ql/src/test/results/clientpositive/showcreateview.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/showcreateview.q.out b/ql/src/test/results/clientpositive/showcreateview.q.out
new file mode 100644
index 0000000..e4d7d62
--- /dev/null
+++ b/ql/src/test/results/clientpositive/showcreateview.q.out
@@ -0,0 +1,18 @@
+PREHOOK: query: CREATE VIEW ViewWithSpecialChars AS SELECT key FROM src where key = 'abcÖdefÖgh'
+PREHOOK: type: CREATEVIEW
+PREHOOK: Input: default@src
+PREHOOK: Output: database:default
+PREHOOK: Output: default@ViewWithSpecialChars
+POSTHOOK: query: CREATE VIEW ViewWithSpecialChars AS SELECT key FROM src where key = 'abcÖdefÖgh'
+POSTHOOK: type: CREATEVIEW
+POSTHOOK: Input: default@src
+POSTHOOK: Output: database:default
+POSTHOOK: Output: default@ViewWithSpecialChars
+POSTHOOK: Lineage: ViewWithSpecialChars.key SIMPLE []
+PREHOOK: query: SHOW CREATE TABLE ViewWithSpecialChars
+PREHOOK: type: SHOW_CREATETABLE
+PREHOOK: Input: default@viewwithspecialchars
+POSTHOOK: query: SHOW CREATE TABLE ViewWithSpecialChars
+POSTHOOK: type: SHOW_CREATETABLE
+POSTHOOK: Input: default@viewwithspecialchars
+CREATE VIEW `ViewWithSpecialChars` AS SELECT `src`.`key` FROM `default`.`src` where `src`.`key` = 'abcÖdefÖgh'