[
https://issues.apache.org/jira/browse/HIVE-23526?focusedWorklogId=441031&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-441031
]
ASF GitHub Bot logged work on HIVE-23526:
-----------------------------------------
Author: ASF GitHub Bot
Created on: 03/Jun/20 23:48
Start Date: 03/Jun/20 23:48
Worklog Time Spent: 10m
Work Description: dengzhhu653 commented on pull request #1029:
URL: https://github.com/apache/hive/pull/1029#issuecomment-638518722
> As I understand it, the code calling the JDBC Driver captures and handles
the OOM error and then closes the JDBC Driver. When it closes, it throws
another error " CloseOperation failed: out of sequence response". You would
like for the close to be silent here. Is that correct?
>
> If so, there's not a ton that can be done here (other than perhaps wrap
the OOM error in a Thrift Exception).
>
> In this particular case, Thrift client is reading the size of the string
off the wire, then trying to create a buffer large enough to read the string.
This is where it fails. When it fails here, it loses its place in the stream.
The data is still in the stream, but the size is lost since that was read
before the OOM error and there is no way to push the size back into the stream.
At this point, Thrift client is hosed and it can't read anything else.
>
> When the JDBC Driver is closed, it sends a "close" request to HS2 to
gracefully close the Hive session on the server. However, it is unable to read
the response properly because, again, it lost its place and does not know how
to find the next message. I'm not sure what the fix is here, but I don't think
this is it.
Yes, that's the truth, somehow a socket read timeout can also make the same
trouble. The fix handles the root cause before beeline throwing the puzzling
exception, make the beeline user have a way to fix the problem quickly. Maybe
this is not a bug fix but just an improvement.
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]
Issue Time Tracking
-------------------
Worklog Id: (was: 441031)
Time Spent: 3h (was: 2h 50m)
> Beeline may throw the misleading exception
> ------------------------------------------
>
> Key: HIVE-23526
> URL: https://issues.apache.org/jira/browse/HIVE-23526
> Project: Hive
> Issue Type: Bug
> Components: Beeline
> Environment: Hive 1.2.2
> Reporter: Zhihua Deng
> Priority: Major
> Labels: pull-request-available
> Attachments: HIVE-23526.2.patch, HIVE-23526.3.patch,
> HIVE-23526.patch, outofsequence.log
>
> Time Spent: 3h
> Remaining Estimate: 0h
>
> Sometimes we can see 'out of sequence response' message in beeline, for
> example:
> Error: org.apache.thrift.TApplicationException: CloseOperation failed: out of
> sequence response (state=08S01,code=0)
> java.sql.SQLException: org.apache.thrift.TApplicationException:
> CloseOperation failed: out of sequence response
> at
> org.apache.hive.jdbc.HiveStatement.closeClientOperation(HiveStatement.java:198)
> at org.apache.hive.jdbc.HiveStatement.close(HiveStatement.java:217)
> at org.apache.hive.beeline.Commands.execute(Commands.java:891)
> at org.apache.hive.beeline.Commands.sql(Commands.java:713)
> at org.apache.hive.beeline.BeeLine.dispatch(BeeLine.java:976)
> at org.apache.hive.beeline.BeeLine.execute(BeeLine.java:816)
> at org.apache.hive.beeline.BeeLine.begin(BeeLine.java:774)
> at org.apache.hive.beeline.BeeLine.mainWithInputRedirection(BeeLine.java:487)
> at org.apache.hive.beeline.BeeLine.main(BeeLine.java:470)
> and there is no other usage message to figured it out, even with --verbose,
> this makes problem puzzled as beeline does not have concurrency problem on
> underlying thrift transport.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)