diff --git ql/src/java/org/apache/hadoop/hive/ql/exec/Utilities.java ql/src/java/org/apache/hadoop/hive/ql/exec/Utilities.java index 9491015..fb431aa 100644 --- ql/src/java/org/apache/hadoop/hive/ql/exec/Utilities.java +++ ql/src/java/org/apache/hadoop/hive/ql/exec/Utilities.java @@ -215,6 +215,7 @@ public static final String MAPRED_MAPPER_CLASS = "mapred.mapper.class"; public static final String MAPRED_REDUCER_CLASS = "mapred.reducer.class"; public static final String HIVE_ADDED_JARS = "hive.added.jars"; + public static final String VECTOR_MODE = "VECTOR_MODE"; public static String MAPNAME = "Map "; public static String REDUCENAME = "Reducer "; @@ -355,6 +356,7 @@ public static void cacheBaseWork(Configuration conf, String name, BaseWork work, public static void setBaseWork(Configuration conf, String name, BaseWork work) { Path path = getPlanPath(conf, name); gWorkMap.get(conf).put(path, work); + conf.setBoolean(VECTOR_MODE, work.getVectorMode()); } /** @@ -3238,9 +3240,8 @@ private static void resetUmaskInConf(Configuration conf, boolean unsetUmask, Str * but vectorization disallowed eg. for FetchOperator execution. */ public static boolean isVectorMode(Configuration conf) { - if (HiveConf.getBoolVar(conf, HiveConf.ConfVars.HIVE_VECTORIZATION_ENABLED) && - Utilities.getPlanPath(conf) != null && Utilities - .getMapWork(conf).getVectorMode()) { + if (HiveConf.getBoolVar(conf, HiveConf.ConfVars.HIVE_VECTORIZATION_ENABLED) + && conf.getBoolean(VECTOR_MODE, false)) { return true; } return false;