Repository: hive Updated Branches: refs/heads/master 83a1f926c -> 4dff65f43
HIVE-13394: Analyze table fails in tez on empty partitions (Vikram Dixit K, reviewed by Prasanth Jayachandran) Project: http://git-wip-us.apache.org/repos/asf/hive/repo Commit: http://git-wip-us.apache.org/repos/asf/hive/commit/4dff65f4 Tree: http://git-wip-us.apache.org/repos/asf/hive/tree/4dff65f4 Diff: http://git-wip-us.apache.org/repos/asf/hive/diff/4dff65f4 Branch: refs/heads/master Commit: 4dff65f4345e4d176cce345f756ef1a28db601e3 Parents: 83a1f92 Author: vikram <vik...@hortonworks.com> Authored: Tue Apr 5 11:30:40 2016 -0700 Committer: vikram <vik...@hortonworks.com> Committed: Tue Apr 5 11:43:08 2016 -0700 ---------------------------------------------------------------------- .../hadoop/hive/ql/udf/generic/GenericUDAFComputeStats.java | 6 ++++++ 1 file changed, 6 insertions(+) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/hive/blob/4dff65f4/ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDAFComputeStats.java ---------------------------------------------------------------------- diff --git a/ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDAFComputeStats.java b/ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDAFComputeStats.java index 57e8b62..b656263 100644 --- a/ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDAFComputeStats.java +++ b/ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDAFComputeStats.java @@ -538,6 +538,9 @@ public class GenericUDAFComputeStats extends AbstractGenericUDAFResolver { if (myagg.numDV == null) { Object partialValue = soi.getStructFieldData(partial, numBitVectorsField); int numVectors = numBitVectorsFieldOI.get(partialValue); + if (numVectors <= 0) { + return; + } myagg.initNDVEstimator(numVectors); } @@ -963,6 +966,9 @@ public class GenericUDAFComputeStats extends AbstractGenericUDAFResolver { if (myagg.firstItem) { Object partialValue = soi.getStructFieldData(partial, numBitVectorsField); int numVectors = numBitVectorsFieldOI.get(partialValue); + if (numVectors <= 0) { + return; + } initNDVEstimator(myagg, numVectors); myagg.firstItem = false; myagg.numBitVectors = numVectors;