DRILL-8400: Fix pruning partitions with pushed transitive predicates
diff --git a/contrib/storage-hive/core/src/main/java/org/apache/drill/exec/store/hive/HiveStoragePlugin.java b/contrib/storage-hive/core/src/main/java/org/apache/drill/exec/store/hive/HiveStoragePlugin.java
index c021ebc..1ce138c 100644
--- a/contrib/storage-hive/core/src/main/java/org/apache/drill/exec/store/hive/HiveStoragePlugin.java
+++ b/contrib/storage-hive/core/src/main/java/org/apache/drill/exec/store/hive/HiveStoragePlugin.java
@@ -192,7 +192,7 @@
   @Override
   public Set<StoragePluginOptimizerRule> getOptimizerRules(OptimizerRulesContext optimizerContext, PlannerPhase phase) {
     switch (phase) {
-      case LOGICAL:
+      case PARTITION_PRUNING:
         final String defaultPartitionValue = hiveConf.get(ConfVars.DEFAULTPARTITIONNAME.varname);
         ImmutableSet.Builder<StoragePluginOptimizerRule> ruleBuilder = ImmutableSet.builder();
         ruleBuilder.add(HivePushPartitionFilterIntoScan.getFilterOnProject(optimizerContext, defaultPartitionValue));
diff --git a/contrib/storage-hive/core/src/test/java/org/apache/drill/exec/TestHivePartitionPruning.java b/contrib/storage-hive/core/src/test/java/org/apache/drill/exec/TestHivePartitionPruning.java
index 62a2c13..608aaf8 100644
--- a/contrib/storage-hive/core/src/test/java/org/apache/drill/exec/TestHivePartitionPruning.java
+++ b/contrib/storage-hive/core/src/test/java/org/apache/drill/exec/TestHivePartitionPruning.java
@@ -28,7 +28,6 @@
 import org.apache.drill.exec.rpc.user.QueryDataBatch;
 import org.junit.AfterClass;
 import org.junit.BeforeClass;
-import org.junit.Ignore;
 import org.junit.Test;
 import org.junit.experimental.categories.Category;
 
@@ -163,11 +162,10 @@
   }
 
   @Test // DRILL-6173
-  @Ignore("DRILL-8400")
   public void prunePartitionsBasedOnTransitivePredicates() throws Exception {
-    String query = String.format("SELECT * FROM hive.partition_pruning_test t1 " +
+    String query = "SELECT * FROM hive.partition_pruning_test t1 " +
             "JOIN hive.partition_with_few_schemas t2 ON t1.`d` = t2.`d` AND t1.`e` = t2.`e` " +
-            "WHERE t2.`e` IS NOT NULL AND t1.`d` = 1");
+            "WHERE t2.`e` IS NOT NULL AND t1.`d` = 1";
 
     int actualRowCount = testSql(query);
     int expectedRowCount = 450;