org.apache.hive.service.cli.HiveSQLException: Illegal Operation state transition FINISHED -> CLOSED
at yaooqinn.kyuubi.operation.OperationState.ex(OperationState.scala:30) at yaooqinn.kyuubi.operation.FINISHED$.ex(OperationState.scala:50) at yaooqinn.kyuubi.operation.OperationState.validateTransition(OperationState.scala:28) at yaooqinn.kyuubi.operation.FINISHED$.validateTransition(OperationState.scala:50) at yaooqinn.kyuubi.operation.KyuubiOperation.setState(KyuubiOperation.scala:101) at yaooqinn.kyuubi.operation.KyuubiOperation.cleanup(KyuubiOperation.scala:439) at yaooqinn.kyuubi.operation.KyuubiOperation.close(KyuubiOperation.scala:215) at yaooqinn.kyuubi.operation.OperationManager.closeOperation(OperationManager.scala:137) at yaooqinn.kyuubi.session.KyuubiSession.closeOperation(KyuubiSession.scala:389) at yaooqinn.kyuubi.server.BackendService.closeOperation(BackendService.scala:149) at yaooqinn.kyuubi.server.FrontendService.CloseOperation(FrontendService.scala:474) at org.apache.hive.service.cli.thrift.TCLIService.getResult(TCLIService.java:1513) at org.apache.hive.service.cli.thrift.TCLIService.getResult(TCLIService.java:1498) at org.apache.thrift.ProcessFunction.process(ProcessFunction.java:39) at org.apache.thrift.TBaseProcessor.process(TBaseProcessor.java:39) at org.apache.hadoop.hive.thrift.HadoopThriftAuthBridge.process(HadoopThriftAuthBridge.java:692) at org.apache.thrift.server.TThreadPoolServer.run(TThreadPoolServer.java:286) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) at java.util.concurrent.ThreadPoolExecutor.run(ThreadPoolExecutor.java:617) at java.lang.Thread.run(Thread.java:745)
This commit is contained in:
parent
359a80bd57
commit
f387fcd7ee
@ -27,7 +27,8 @@ trait OperationState {
|
||||
@throws[HiveSQLException]
|
||||
def validateTransition(newState: OperationState): Unit = ex(newState)
|
||||
|
||||
def ex(state: OperationState): Unit = throw new HiveSQLException(
|
||||
@throws[HiveSQLException]
|
||||
protected def ex(state: OperationState): Unit = throw new HiveSQLException(
|
||||
"Illegal Operation state transition " + this + " -> " + state, "KyuubiException", 1000)
|
||||
}
|
||||
|
||||
@ -50,11 +51,19 @@ case object RUNNING extends OperationState {
|
||||
case object FINISHED extends OperationState {
|
||||
override def toTOperationState(): TOperationState = TOperationState.FINISHED_STATE
|
||||
override def isTerminal(): Boolean = true
|
||||
override def validateTransition(newState: OperationState): Unit = newState match {
|
||||
case CLOSED =>
|
||||
case _ => ex(newState)
|
||||
}
|
||||
}
|
||||
|
||||
case object CANCELED extends OperationState {
|
||||
override def toTOperationState(): TOperationState = TOperationState.CANCELED_STATE
|
||||
override def isTerminal(): Boolean = true
|
||||
override def validateTransition(newState: OperationState): Unit = newState match {
|
||||
case CLOSED =>
|
||||
case _ => ex(newState)
|
||||
}
|
||||
}
|
||||
|
||||
case object CLOSED extends OperationState {
|
||||
|
||||
Loading…
Reference in New Issue
Block a user