diff --git itests/util/src/main/java/org/apache/hadoop/hive/cli/control/AbstractCliConfig.java itests/util/src/main/java/org/apache/hadoop/hive/cli/control/AbstractCliConfig.java index 7151372412..0eb3fd90f7 100644 --- itests/util/src/main/java/org/apache/hadoop/hive/cli/control/AbstractCliConfig.java +++ itests/util/src/main/java/org/apache/hadoop/hive/cli/control/AbstractCliConfig.java @@ -223,10 +223,10 @@ public boolean accept(File filePath) { } else { qF = new File(qFile); } - if (excludedQueryFileNames.contains(qFile)) { + if (excludedQueryFileNames.contains(qFile) && !isDriverForcedToUse()) { LOG.warn(qF.getAbsolutePath() + " is among the excluded query files for this driver." + " Please update CliConfigs.java or testconfiguration.properties file to" - + " include the qfile"); + + " include the qfile or use test.force.driver=true system property"); } testFiles.add(qF); } @@ -241,12 +241,18 @@ public boolean accept(File filePath) { } for (String qFileName : excludedQueryFileNames) { - testFiles.remove(new File(queryDir, qFileName)); + if (!isDriverForcedToUse()) { + testFiles.remove(new File(queryDir, qFileName)); + } } return testFiles; } + private boolean isDriverForcedToUse() { + return "true".equalsIgnoreCase(System.getProperty("test.force.driver")); + } + private void prepareDirs() throws Exception { File hiveRootDir = new File(HIVE_ROOT); if (!hiveRootDir.exists()) { diff --git itests/util/src/main/java/org/apache/hadoop/hive/ql/QTestUtil.java itests/util/src/main/java/org/apache/hadoop/hive/ql/QTestUtil.java index 5adbb63693..67c8ed7061 100644 --- itests/util/src/main/java/org/apache/hadoop/hive/ql/QTestUtil.java +++ itests/util/src/main/java/org/apache/hadoop/hive/ql/QTestUtil.java @@ -567,11 +567,19 @@ public QTestUtil(String outDir, String logDir, MiniClusterType clusterType, this.initScript = scriptsDir + File.separator + initScript; this.cleanupScript = scriptsDir + File.separator + cleanupScript; - overWrite = "true".equalsIgnoreCase(System.getProperty("test.output.overwrite")); + overWrite = shouldOverwriteResults(); init(); savedConf = new HiveConf(conf); } + + private boolean shouldOverwriteResults() { + return "true".equalsIgnoreCase(System.getProperty("test.output.overwrite")) + || ("true".equalsIgnoreCase(System.getProperty("test.force.driver")) + // check if test.output.overwrite is not explicitly disabled for any reasons + && !"false".equalsIgnoreCase(System.getProperty("test.output.overwrite"))); + } + private String getScriptsDir() { // Use the current directory if it is not specified String scriptsDir = conf.get("test.data.scripts");