diff --git ql/src/java/org/apache/hadoop/hive/ql/parse/SemanticAnalyzer.java ql/src/java/org/apache/hadoop/hive/ql/parse/SemanticAnalyzer.java index bbd7387..b1cbbe4 100644 --- ql/src/java/org/apache/hadoop/hive/ql/parse/SemanticAnalyzer.java +++ ql/src/java/org/apache/hadoop/hive/ql/parse/SemanticAnalyzer.java @@ -6626,7 +6626,8 @@ protected Operator genFileSinkPlan(String dest, QB qb, Operator input) // it should be the same as the MoveWork's sourceDir. fileSinkDesc.setStatsAggPrefix(fileSinkDesc.getDirName().toString()); if (HiveConf.getVar(conf, HIVESTATSDBCLASS).equalsIgnoreCase(StatDB.fs.name())) { - String statsTmpLoc = ctx.getExtTmpPathRelTo(queryTmpdir).toString(); + String statsTmpLoc = ctx.getExtTmpPathRelTo(getParseContext().getContext() + .getMRScratchDir()).toString(); fileSinkDesc.setStatsTmpDir(statsTmpLoc); LOG.debug("Set stats collection dir : " + statsTmpLoc); } @@ -9520,7 +9521,8 @@ private void setupStats(TableScanDesc tsDesc, QBParseInfo qbp, Table tab, String tsDesc.setGatherStats(false); } else { if (HiveConf.getVar(conf, HIVESTATSDBCLASS).equalsIgnoreCase(StatDB.fs.name())) { - String statsTmpLoc = ctx.getExtTmpPathRelTo(tab.getPath()).toString(); + String statsTmpLoc = ctx.getExtTmpPathRelTo(getParseContext().getContext() + .getMRScratchDir()).toString(); LOG.debug("Set stats collection dir : " + statsTmpLoc); tsDesc.setTmpStatsDir(statsTmpLoc); }