You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hive.apache.org by "Rajat Khandelwal (JIRA)" <ji...@apache.org> on 2016/04/04 11:16:25 UTC

[jira] [Created] (HIVE-13415) Decouple Sessions from thrift binary transport

Rajat Khandelwal created HIVE-13415:
---------------------------------------

             Summary: Decouple Sessions from thrift binary transport
                 Key: HIVE-13415
                 URL: https://issues.apache.org/jira/browse/HIVE-13415
             Project: Hive
          Issue Type: Bug
    Affects Versions: 2.0.0
            Reporter: Rajat Khandelwal
            Assignee: Rajat Khandelwal


Current behaviour is:

* Open a thrift binary transport
* create a session
* close the transport

Then the session gets closed. Consequently, all the operations running in the session also get killed.

Whereas, if you open an HTTP transport, and close, the enclosing sessions are not closed. 

This seems like a bad design, having transport and sessions tightly coupled. I'd like to fix this. 

The issue that introduced it is [HIVE-9601|https://github.com/apache/hive/commit/48bea00c48853459af64b4ca9bfdc3e821c4ed82] Relevant discussions at [here|https://issues.apache.org/jira/browse/HIVE-11485?focusedCommentId=15223546&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-15223546], [here|https://issues.apache.org/jira/browse/HIVE-11485?focusedCommentId=15223827&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-15223827] and mentioned links on those comments. 

Another thing that seems like a slightly bad design is this line of code in ThriftBinaryCLIService:

{noformat}
server.setServerEventHandler(serverEventHandler);
{noformat}

Whereas serverEventHandler is defined by the base class, with no users except one sub-class(ThriftBinaryCLIService), violating the separation of concerns. 



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