Repository: hive
Updated Branches:
  refs/heads/branch-1.0 842c527ae -> cafd55593


HIVE-9507 : Make "LATERAL VIEW inline(expression) mytable" tolerant to nulls 
(Navis reviewed by Ashutosh Chauhan)

git-svn-id: https://svn.apache.org/repos/asf/hive/trunk@1658625 
13f79535-47bb-0310-9956-ffa450edef68


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

Branch: refs/heads/branch-1.0
Commit: cafd555930dc1cc4edfb3ff1a7210d007092e842
Parents: 842c527
Author: Navis Ryu <na...@apache.org>
Authored: Tue Feb 10 06:47:09 2015 +0000
Committer: Pengcheng Xiong <pxi...@apache.org>
Committed: Tue Aug 11 23:24:50 2015 -0700

----------------------------------------------------------------------
 .../apache/hadoop/hive/ql/udf/generic/GenericUDTFInline.java | 8 ++++++--
 .../hadoop/hive/serde2/lazybinary/LazyBinaryArray.java       | 2 +-
 2 files changed, 7 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/hive/blob/cafd5559/ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDTFInline.java
----------------------------------------------------------------------
diff --git 
a/ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDTFInline.java 
b/ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDTFInline.java
index 2152d97..ab5a2bf 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDTFInline.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDTFInline.java
@@ -19,6 +19,7 @@
 package org.apache.hadoop.hive.ql.udf.generic;
 
 import java.util.ArrayList;
+import java.util.List;
 
 import org.apache.hadoop.hive.ql.exec.Description;
 import org.apache.hadoop.hive.ql.exec.UDFArgumentException;
@@ -57,8 +58,11 @@ public class GenericUDTFInline extends GenericUDTF {
 
   @Override
   public void process(Object[] os) throws HiveException {
-    for (Object row : new ArrayList<Object>(li.getList(os[0]))) {
-      forward(row);
+    List<?> list = li.getList(os[0]);
+    if (list != null && !list.isEmpty()) {
+      for (Object row : list.toArray()) {
+        forward(row);
+      }
     }
   }
 

http://git-wip-us.apache.org/repos/asf/hive/blob/cafd5559/serde/src/java/org/apache/hadoop/hive/serde2/lazybinary/LazyBinaryArray.java
----------------------------------------------------------------------
diff --git 
a/serde/src/java/org/apache/hadoop/hive/serde2/lazybinary/LazyBinaryArray.java 
b/serde/src/java/org/apache/hadoop/hive/serde2/lazybinary/LazyBinaryArray.java
index 4929f67..fee1472 100644
--- 
a/serde/src/java/org/apache/hadoop/hive/serde2/lazybinary/LazyBinaryArray.java
+++ 
b/serde/src/java/org/apache/hadoop/hive/serde2/lazybinary/LazyBinaryArray.java
@@ -214,7 +214,7 @@ public class LazyBinaryArray extends
 
   /**
    * cachedList is reused every time getList is called. Different
-   * LazyBianryArray instances cannot share the same cachedList.
+   * LazyBinaryArray instances cannot share the same cachedList.
    */
   ArrayList<Object> cachedList;
 

Reply via email to