You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hive.apache.org by "Aihua Xu (JIRA)" <ji...@apache.org> on 2016/07/18 15:53:20 UTC

[jira] [Commented] (HIVE-14227) Investigate invalid SessionHandle and invalid OperationHandle

    [ https://issues.apache.org/jira/browse/HIVE-14227?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15382488#comment-15382488 ] 

Aihua Xu commented on HIVE-14227:
---------------------------------

I spent some time understanding the issue. Seems the problem comes from disconnection between connection and session. For beeline client, we are creating a connection and then open a session on top of it. Then we close session and destroy the connection. That's fine. While if a connection (connection2) is created and we make calls with an existing session, that's legal. But if the other connection (connection1) in which session is opened gets destroyed, the session gets destroyed as well and we will see invalid sessionHandle from connection2.  Hope my understanding is correct. 

I'm thinking of the following approach: similar to a call openSession(), we can add a call bindSession(sessionHandle) for a new connection with an existing session handle. Then each connection will be aware of the session and the following calls can be called without sessionHandle. Also the session will remember associated connections with it and session can be really closed when there is no connections.

> Investigate invalid SessionHandle and invalid OperationHandle
> -------------------------------------------------------------
>
>                 Key: HIVE-14227
>                 URL: https://issues.apache.org/jira/browse/HIVE-14227
>             Project: Hive
>          Issue Type: Bug
>          Components: HiveServer2
>    Affects Versions: 2.0.0
>            Reporter: Aihua Xu
>            Assignee: Aihua Xu
>
> There are the following warnings. 
> {noformat}
> WARN  org.apache.hive.service.cli.thrift.ThriftCLIService: [HiveServer2-Handler-Pool: Thread-55]: Error executing statement:
> org.apache.hive.service.cli.HiveSQLException: Invalid SessionHandle: SessionHandle [1bc00251-64e9-4a95-acb7-a7f53f773528]
>         at org.apache.hive.service.cli.session.SessionManager.getSession(SessionManager.java:318)
>         at org.apache.hive.service.cli.CLIService.executeStatementAsync(CLIService.java:258)
>         at org.apache.hive.service.cli.thrift.ThriftCLIService.ExecuteStatement(ThriftCLIService.java:506)
>         at org.apache.hive.service.cli.thrift.TCLIService$Processor$ExecuteStatement.getResult(TCLIService.java:1313)
>         at org.apache.hive.service.cli.thrift.TCLIService$Processor$ExecuteStatement.getResult(TCLIService.java:1298)
>         at org.apache.thrift.ProcessFunction.process(ProcessFunction.java:39)
> {noformat}
> {noformat}
> WARN  org.apache.hive.service.cli.thrift.ThriftCLIService: [HiveServer2-Handler-Pool: Thread-1060]: Error closing operation:
> org.apache.hive.service.cli.HiveSQLException: Invalid OperationHandle: OperationHandle [opType=EXECUTE_STATEMENT, getHandleIdentifier()=13d930dd-316c-4c09-9f44-fee5f483e73d]
>         at org.apache.hive.service.cli.operation.OperationManager.getOperation(OperationManager.java:185)
>         at org.apache.hive.service.cli.CLIService.closeOperation(CLIService.java:408)
>         at org.apache.hive.service.cli.thrift.ThriftCLIService.CloseOperation(ThriftCLIService.java:664)
>         at org.apache.hive.service.cli.thrift.TCLIService$Processor$CloseOperation.getResult(TCLIService.java:1513)
>         at org.apache.hive.service.cli.thrift.TCLIService$Processor$CloseOperation.getResult(TCLIService.java:1498)
>         at org.apache.thrift.ProcessFunction.process(ProcessFunction.java:39)
>         at org.apache.thrift.TBaseProcessor.process(TBaseProcessor.java:39)
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)