Index: common/src/java/org/apache/hadoop/hive/conf/HiveConf.java =================================================================== --- common/src/java/org/apache/hadoop/hive/conf/HiveConf.java (revision 1500980) +++ common/src/java/org/apache/hadoop/hive/conf/HiveConf.java (working copy) @@ -194,6 +194,7 @@ CLIENTSTATSPUBLISHERS("hive.client.stats.publishers", ""), EXECPARALLEL("hive.exec.parallel", false), // parallel query launching EXECPARALLETHREADNUMBER("hive.exec.parallel.thread.number", 8), + HIVESPECULATIVEEXECMAPPERS("hive.mapred.map.tasks.speculative.execution", true), HIVESPECULATIVEEXECREDUCERS("hive.mapred.reduce.tasks.speculative.execution", true), HIVECOUNTERSPULLINTERVAL("hive.exec.counters.pull.interval", 1000L), DYNAMICPARTITIONING("hive.exec.dynamic.partition", true), @@ -247,6 +248,7 @@ // number of reducers. HADOOPNUMREDUCERS("mapred.reduce.tasks", -1), HADOOPJOBNAME("mapred.job.name", null), + HADOOPSPECULATIVEEXECMAPPERS("mapred.map.tasks.speculative.execution", true), HADOOPSPECULATIVEEXECREDUCERS("mapred.reduce.tasks.speculative.execution", true), // Metastore stuff. Be sure to update HiveConf.metaVars when you add Index: ql/src/java/org/apache/hadoop/hive/ql/exec/ExecDriver.java =================================================================== --- ql/src/java/org/apache/hadoop/hive/ql/exec/ExecDriver.java (revision 1500980) +++ ql/src/java/org/apache/hadoop/hive/ql/exec/ExecDriver.java (working copy) @@ -313,6 +313,13 @@ // set input format information if necessary setInputAttributes(job); + + // Configure speculative execution for mappers in hadoop + boolean useSpeculativeExecMappers = HiveConf.getBoolVar(job, + HiveConf.ConfVars.HIVESPECULATIVEEXECMAPPERS); + HiveConf.setBoolVar(job, HiveConf.ConfVars.HADOOPSPECULATIVEEXECMAPPERS, + useSpeculativeExecMappers); + // Turn on speculative execution for reducers boolean useSpeculativeExecReducers = HiveConf.getBoolVar(job, HiveConf.ConfVars.HIVESPECULATIVEEXECREDUCERS);