Repository: hive
Updated Branches:
  refs/heads/master ad93cfd75 -> 93de95041


HIVE-20480: Implement column stats annotation rules for the UDTFOperator: 
Follow up for HIVE-20262 (George Pachitariu via Ashutosh Chauhan)

Signed-off-by: Zoltan Haindrich <k...@rxd.hu>


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

Branch: refs/heads/master
Commit: 86685c6d017613f726314097c0d5e20cf608d2a6
Parents: ad93cfd
Author: George Pachitariu <george.pachita...@gmail.com>
Authored: Tue Sep 11 13:01:54 2018 +0200
Committer: Zoltan Haindrich <k...@rxd.hu>
Committed: Tue Sep 11 13:01:54 2018 +0200

----------------------------------------------------------------------
 .../optimizer/stats/annotation/StatsRulesProcFactory.java | 10 ++++++++++
 1 file changed, 10 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/hive/blob/86685c6d/ql/src/java/org/apache/hadoop/hive/ql/optimizer/stats/annotation/StatsRulesProcFactory.java
----------------------------------------------------------------------
diff --git 
a/ql/src/java/org/apache/hadoop/hive/ql/optimizer/stats/annotation/StatsRulesProcFactory.java
 
b/ql/src/java/org/apache/hadoop/hive/ql/optimizer/stats/annotation/StatsRulesProcFactory.java
index 3788ef9..15958d5 100644
--- 
a/ql/src/java/org/apache/hadoop/hive/ql/optimizer/stats/annotation/StatsRulesProcFactory.java
+++ 
b/ql/src/java/org/apache/hadoop/hive/ql/optimizer/stats/annotation/StatsRulesProcFactory.java
@@ -2654,6 +2654,16 @@ public class StatsRulesProcFactory {
         st.setNumRows(numRows);
         st.setDataSize(dataSize);
 
+        List<ColStatistics> colStatsList = st.getColumnStats();
+        if(colStatsList != null) {
+          for (ColStatistics colStats : colStatsList) {
+            colStats.setNumFalses((long) (colStats.getNumFalses() * 
udtfFactor));
+            colStats.setNumTrues((long) (colStats.getNumTrues() * udtfFactor));
+            colStats.setNumNulls((long) (colStats.getNumNulls() * udtfFactor));
+          }
+          st.setColumnStats(colStatsList);
+        }
+
         if (LOG.isDebugEnabled()) {
           LOG.debug("[0] STATS-" + uop.toString() + ": " + 
st.extendedToString());
         }

Reply via email to