diff --git ql/src/java/org/apache/hadoop/hive/ql/optimizer/GenMRTableScan1.java ql/src/java/org/apache/hadoop/hive/ql/optimizer/GenMRTableScan1.java index d6f1b7a0..9297a0b 100644 --- ql/src/java/org/apache/hadoop/hive/ql/optimizer/GenMRTableScan1.java +++ ql/src/java/org/apache/hadoop/hive/ql/optimizer/GenMRTableScan1.java @@ -91,8 +91,8 @@ public Object process(Node nd, Stack stack, NodeProcessorCtx opProcCtx, if (parseCtx.getQueryProperties().isAnalyzeCommand()) { boolean partialScan = parseCtx.getQueryProperties().isPartialScanAnalyzeCommand(); boolean noScan = parseCtx.getQueryProperties().isNoScanAnalyzeCommand(); - if (inputFormat.equals(OrcInputFormat.class) || - inputFormat.equals(MapredParquetInputFormat.class)) { + if (OrcInputFormat.class.isAssignableFrom(inputFormat) || + MapredParquetInputFormat.class.isAssignableFrom(inputFormat)) { // For ORC and Parquet, all the following statements are the same // ANALYZE TABLE T [PARTITION (...)] COMPUTE STATISTICS // ANALYZE TABLE T [PARTITION (...)] COMPUTE STATISTICS partialscan;