From de745b25cc0c84719615de0357d6d041a29f3da9 Mon Sep 17 00:00:00 2001 From: vkorukanti Date: Tue, 12 Aug 2014 04:01:08 -0700 Subject: [PATCH] HIVE-7684: Avoid validating hook EnforceReadOnlyTable during test driver cleanup. --- itests/util/src/main/java/org/apache/hadoop/hive/ql/QTestUtil.java | 5 +++++ .../java/org/apache/hadoop/hive/ql/hooks/EnforceReadOnlyTables.java | 5 ++++- 2 files changed, 9 insertions(+), 1 deletion(-) 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 98735a5..af4a3e5 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 @@ -617,6 +617,9 @@ public void cleanUp() throws Exception { if(!isSessionStateStarted) { startSessionState(); } + + SessionState.get().getConf().setBoolean("hive.test.shutdown.phase", true); + String cleanupCommands = readEntireFileIntoString(new File(cleanupScript)); LOG.info("Cleanup (" + cleanupScript + "):\n" + cleanupCommands); if(cliDriver == null) { @@ -624,6 +627,8 @@ public void cleanUp() throws Exception { } cliDriver.processLine(cleanupCommands); + SessionState.get().getConf().setBoolean("hive.test.shutdown.phase", false); + // delete any contents in the warehouse dir Path p = new Path(testWarehouse); FileSystem fs = p.getFileSystem(conf); diff --git ql/src/java/org/apache/hadoop/hive/ql/hooks/EnforceReadOnlyTables.java ql/src/java/org/apache/hadoop/hive/ql/hooks/EnforceReadOnlyTables.java index 1458075..4569ed5 100644 --- ql/src/java/org/apache/hadoop/hive/ql/hooks/EnforceReadOnlyTables.java +++ ql/src/java/org/apache/hadoop/hive/ql/hooks/EnforceReadOnlyTables.java @@ -59,7 +59,10 @@ public void run(HookContext hookContext) throws Exception { public void run(SessionState sess, Set inputs, Set outputs, UserGroupInformation ugi) throws Exception { - if (sess.getConf().getBoolean("hive.test.init.phase", false) == true) { + + // Don't enforce during test driver setup or shutdown. + if (sess.getConf().getBoolean("hive.test.init.phase", false) || + sess.getConf().getBoolean("hive.test.shutdown.phase", false)) { return; } for (WriteEntity w: outputs) { -- 1.8.5.2 (Apple Git-48)