[
https://issues.apache.org/jira/browse/HIVE-7680?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14093728#comment-14093728
]
Thejas M Nair commented on HIVE-7680:
-------------------------------------
3 of the fixes look good.
However, in case of getUpdateCount, I am not sure if -1 is the better result,
as it means the current result is a ResultSet object or there are no more
results. It can be interpreted as a failure in running an 'insert/update'
query. SQL Workbench might be OK with -1 as result, but it is possible that
other jdbc tools would report that as an error.
> Do not throw SQLException for HiveStatement getMoreResults and
> setEscapeProcessing(false)
> -----------------------------------------------------------------------------------------
>
> Key: HIVE-7680
> URL: https://issues.apache.org/jira/browse/HIVE-7680
> Project: Hive
> Issue Type: Bug
> Components: JDBC
> Affects Versions: 0.13.1
> Reporter: Alexander Pivovarov
> Priority: Minor
> Attachments: HIVE-7680.patch
>
>
> 1. Some JDBC clients call method setEscapeProcessing(false) (e.g. SQL
> Workbench)
> Looks like setEscapeProcessing(false) should do nothing.So, lets do nothing
> instead of throwing SQLException
> 2. getMoreResults is needed in case Statements returns several ReseltSet.
> Hive does not support Multiple ResultSets. So this method can safely always
> return false.
> 3. getUpdateCount. Currently this method always returns 0. Hive cannot tell
> us how many rows were inserted. According to JDBC spec it should return " -1
> if the current result is a ResultSet object or there are no more results"
> if this method returns 0 then in case of execution insert statement JDBC
> client shows "0 rows were inserted" which is not true.
> if this method returns -1 then JDBC client runs insert statements and shows
> that it was executed successfully, no result were returned.
> I think the latter behaviour is more correct.
> 4. Some methods in Statement class should throw
> SQLFeatureNotSupportedException if they are not supported. Current
> implementation throws SQLException instead which means database access error.
--
This message was sent by Atlassian JIRA
(v6.2#6252)