You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hawq.apache.org by ka...@apache.org on 2017/05/01 16:49:53 UTC
incubator-hawq git commit: HAWQ-1440. Support ANALYZE for all Hive
External Tables
Repository: incubator-hawq
Updated Branches:
refs/heads/master e082d3adb -> 0a754883f
HAWQ-1440. Support ANALYZE for all Hive External Tables
Project: http://git-wip-us.apache.org/repos/asf/incubator-hawq/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-hawq/commit/0a754883
Tree: http://git-wip-us.apache.org/repos/asf/incubator-hawq/tree/0a754883
Diff: http://git-wip-us.apache.org/repos/asf/incubator-hawq/diff/0a754883
Branch: refs/heads/master
Commit: 0a754883f2b9c02e6c85a50e1aa82d853791d09e
Parents: e082d3a
Author: Kavinder Dhaliwal <ka...@gmail.com>
Authored: Tue Apr 25 15:14:47 2017 -0700
Committer: Kavinder Dhaliwal <ka...@gmail.com>
Committed: Mon May 1 09:46:44 2017 -0700
----------------------------------------------------------------------
.../apache/hawq/pxf/plugins/hive/HiveDataFragmenter.java | 11 +++++++++--
.../hawq/pxf/plugins/hive/HiveInputFormatFragmenter.java | 2 +-
2 files changed, 10 insertions(+), 3 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-hawq/blob/0a754883/pxf/pxf-hive/src/main/java/org/apache/hawq/pxf/plugins/hive/HiveDataFragmenter.java
----------------------------------------------------------------------
diff --git a/pxf/pxf-hive/src/main/java/org/apache/hawq/pxf/plugins/hive/HiveDataFragmenter.java b/pxf/pxf-hive/src/main/java/org/apache/hawq/pxf/plugins/hive/HiveDataFragmenter.java
index a03d3b7..9cf8f27 100644
--- a/pxf/pxf-hive/src/main/java/org/apache/hawq/pxf/plugins/hive/HiveDataFragmenter.java
+++ b/pxf/pxf-hive/src/main/java/org/apache/hawq/pxf/plugins/hive/HiveDataFragmenter.java
@@ -466,7 +466,14 @@ public class HiveDataFragmenter extends Fragmenter {
*/
@Override
public FragmentsStats getFragmentsStats() throws Exception {
- throw new UnsupportedOperationException(
- "ANALYZE for Hive plugin is not supported");
+ Metadata.Item tblDesc = HiveUtilities.extractTableFromName(inputData.getDataSource());
+ Table tbl = HiveUtilities.getHiveTable(client, tblDesc);
+ Metadata metadata = new Metadata(tblDesc);
+ HiveUtilities.getSchema(tbl, metadata);
+
+ long split_count = Long.parseLong(tbl.getParameters().get("numFiles"));
+ long totalSize = Long.parseLong(tbl.getParameters().get("totalSize"));
+ long firstFragmentSize = totalSize / split_count;
+ return new FragmentsStats(split_count, firstFragmentSize, totalSize);
}
}
http://git-wip-us.apache.org/repos/asf/incubator-hawq/blob/0a754883/pxf/pxf-hive/src/main/java/org/apache/hawq/pxf/plugins/hive/HiveInputFormatFragmenter.java
----------------------------------------------------------------------
diff --git a/pxf/pxf-hive/src/main/java/org/apache/hawq/pxf/plugins/hive/HiveInputFormatFragmenter.java b/pxf/pxf-hive/src/main/java/org/apache/hawq/pxf/plugins/hive/HiveInputFormatFragmenter.java
index 9199118..b133e1d 100644
--- a/pxf/pxf-hive/src/main/java/org/apache/hawq/pxf/plugins/hive/HiveInputFormatFragmenter.java
+++ b/pxf/pxf-hive/src/main/java/org/apache/hawq/pxf/plugins/hive/HiveInputFormatFragmenter.java
@@ -121,6 +121,6 @@ public class HiveInputFormatFragmenter extends HiveDataFragmenter {
*/
@Override
public FragmentsStats getFragmentsStats() throws Exception {
- throw new UnsupportedOperationException("ANALYZE for HiveRc, HiveText, and HiveOrc plugins is not supported");
+ return super.getFragmentsStats();
}
}