diff --git a/sql/hive-thriftserver/src/main/scala/org/apache/spark/sql/hive/thriftserver/SparkExecuteStatementOperation.scala b/sql/hive-thriftserver/src/main/scala/org/apache/spark/sql/hive/thriftserver/SparkExecuteStatementOperation.scala index 1d1074a2a738761e57ff53fd6390db606fb85fc4..f5191fa9132bdfa64335d470aa91523be2a05ab9 100644 --- a/sql/hive-thriftserver/src/main/scala/org/apache/spark/sql/hive/thriftserver/SparkExecuteStatementOperation.scala +++ b/sql/hive-thriftserver/src/main/scala/org/apache/spark/sql/hive/thriftserver/SparkExecuteStatementOperation.scala @@ -71,9 +71,9 @@ private[hive] class SparkExecuteStatementOperation( def close(): Unit = { // RDDs will be cleaned automatically upon garbage collection. - sqlContext.sparkContext.clearJobGroup() logDebug(s"CLOSING $statementId") cleanup(OperationState.CLOSED) + sqlContext.sparkContext.clearJobGroup() } def addNonNullColumnValue(from: SparkRow, to: ArrayBuffer[Any], ordinal: Int) { @@ -273,9 +273,6 @@ private[hive] class SparkExecuteStatementOperation( override def cancel(): Unit = { logInfo(s"Cancel '$statement' with $statementId") - if (statementId != null) { - sqlContext.sparkContext.cancelJobGroup(statementId) - } cleanup(OperationState.CANCELED) } @@ -287,6 +284,9 @@ private[hive] class SparkExecuteStatementOperation( backgroundHandle.cancel(true) } } + if (statementId != null) { + sqlContext.sparkContext.cancelJobGroup(statementId) + } } }