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

Thejas M Nair commented on HIVE-4569:
-------------------------------------

Here are some comments about the async execution api changes from a jdbc/odbc 
driver implementation perspective -

h3. jdbc/odbc requirements:

I think the asynchronous execution api is going to be very useful for jdbc/odbc 
as well. For a long running query there are higher chances of interruptions in 
the network connection to HS2. This is specially true for HS2 over http 
(HIVE-4763), where it might pass through http proxy servers.

The downside of the async call is that the *dbc client moves to a pull model 
instead of what was like a push equivalent. It will have to poll with some 
sleep in between the poll requests to avoid too much load on the server. But 
this sleep can cause delays in getting notified when the execution is finished. 
So it will be useful to have support for long poll in such a case to simulate a 
push (http://en.wikipedia.org/wiki/Push_technology#Long_polling).

So that clients can tell the server that it is actually interested in doing a 
long poll, we need support for it in the HS2 api.

Another difference for jdbc/odbc requirement from GetOperationStatus api is 
that it won't make use of the status of each task. Only the completion of the 
query execution matters from jdbc/odbc perspective.
So for odbc/jdbc the long poll should return before a 'long poll timeout' only 
if the query has completed.

h3. Question about api:
While the actual implementation of long poll can be in a different followup 
jira, I thought it will be useful to discuss if this should have an impact on 
the async api changes.
How should we meet this odbc/jdbc need ? If we follow the pattern we have 
followed with async execute, this would result in a new 
GetOperationStatusLongPoll call.

It doesn't look like this requirement will have impact on changes planned in 
this jira, but I just wanted to put my thoughts out incase there were other 
opinions.


                
> GetQueryPlan api in Hive Server2
> --------------------------------
>
>                 Key: HIVE-4569
>                 URL: https://issues.apache.org/jira/browse/HIVE-4569
>             Project: Hive
>          Issue Type: Bug
>          Components: HiveServer2
>            Reporter: Amareshwari Sriramadasu
>            Assignee: Jaideep Dhok
>         Attachments: git-4569.patch, HIVE-4569.D10887.1.patch, 
> HIVE-4569.D11469.1.patch, HIVE-4569.D12231.1.patch, HIVE-4569.D12237.1.patch
>
>
> It would nice to have GetQueryPlan as thrift api. I do not see GetQueryPlan 
> api available in HiveServer2, though the wiki 
> https://cwiki.apache.org/confluence/display/Hive/HiveServer2+Thrift+API 
> contains, not sure why it was not added.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to