diff --git service/src/java/org/apache/hive/service/cli/operation/Operation.java service/src/java/org/apache/hive/service/cli/operation/Operation.java index 2ef1479540..89bab411f6 100644 --- service/src/java/org/apache/hive/service/cli/operation/Operation.java +++ service/src/java/org/apache/hive/service/cli/operation/Operation.java @@ -253,6 +253,10 @@ public void run() throws HiveSQLException { } protected synchronized void cleanupOperationLog() { + // stop the appenders for the operation log + String queryId = queryState.getQueryId(); + LogUtils.stopQueryAppender(LogDivertAppender.QUERY_ROUTING_APPENDER, queryId); + LogUtils.stopQueryAppender(LogDivertAppenderForTest.TEST_QUERY_ROUTING_APPENDER, queryId); if (isOperationLogEnabled) { if (opHandle == null) { LOG.warn("Operation seems to be in invalid state, opHandle is null"); @@ -265,11 +269,8 @@ protected synchronized void cleanupOperationLog() { } else { operationLog.close(); } - // stop the appenders for the operation log - String queryId = queryState.getQueryId(); - LogUtils.stopQueryAppender(LogDivertAppender.QUERY_ROUTING_APPENDER, queryId); - LogUtils.stopQueryAppender(LogDivertAppenderForTest.TEST_QUERY_ROUTING_APPENDER, queryId); } + } public abstract void cancel(OperationState stateAfterCancel) throws HiveSQLException;