[ https://issues.apache.org/jira/browse/HIVE-13415?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15227847#comment-15227847 ]
Rajat Khandelwal commented on HIVE-13415: ----------------------------------------- It's important for hive to allow async ops, since it fires a sequence of M/R jobs which might take hours. For DBs it's acceptable, since, in the average case, the queries are so small that they return in seconds, maybe minutes in some cases, but not usually hours. Secondly, I'll put a purist point of view. I think Beeline is just one client of hive server out of many clients. Any change in Hive Server that's being done just for Beeline should be thought again, since sooner or later that's bound to introduce tight coupling between hive server and beeline. It might break a client that the community doesn't even know about, and I think that's not a good server design. Until Beeline isn't the only way to talk to hive, it shouldn't inspire changes in server. > 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 > Attachments: HIVE-13415.01.patch > > > 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)