[ 
https://issues.apache.org/jira/browse/HIVE-26345?focusedWorklogId=810035&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-810035
 ]

ASF GitHub Bot logged work on HIVE-26345:
-----------------------------------------

                Author: ASF GitHub Bot
            Created on: 19/Sep/22 13:29
            Start Date: 19/Sep/22 13:29
    Worklog Time Spent: 10m 
      Work Description: zhangbutao commented on code in PR #3393:
URL: https://github.com/apache/hive/pull/3393#discussion_r974248833


##########
ql/src/java/org/apache/hadoop/hive/ql/Driver.java:
##########
@@ -511,13 +511,17 @@ public void compile(String command, boolean resetTaskIds, 
boolean deferClose) th
   }
 
   private void prepareForCompile(boolean resetTaskIds) throws 
CommandProcessorException {
-    driverTxnHandler.createTxnManager();
-    DriverState.setDriverState(driverState);
-    prepareContext();
-    setQueryId();
+    try {

Review Comment:
   @zabetak Maybe I didn't describe it exactly. In fact, I tried to fix two 
related issues in this PR.
   
   1. First: Beeline client can not get real exception message which is caused 
by the change(https://issues.apache.org/jira/browse/HIVE-23124).
   
   2. Second: Even though the first issus is fixed, Beeline client can not get 
valid exception state and code in the following test:
   `set hive.support.concurrency=false;`
   `set hive.txn.manager=org.apache.hadoop.hive.ql.lockmgr.DbTxnManager;`
   `create table testacid(id int) stored as orc 
tblproperties('transactional'='true');`
   _**Error: Error running query: java.lang.RuntimeException: To use 
DbTxnManager you must set hive.support.concurrency=true (state=,code=0)**_
   However, In hive3, we can get valiad exception with state=42000, code=10264
   **_Error: Error while compiling statement: FAILED: RuntimeException [Error 
10264]: To use DbTxnManager you must set hive.support.concurrency=true 
(state=42000,code=10264)_**
   This change was introduced by 
https://issues.apache.org/jira/browse/HIVE-22526, which missed handling the 
exception from `driverTxnHandler#createTxnManager`, i also think we should fix 
this.





Issue Time Tracking
-------------------

    Worklog Id:     (was: 810035)
    Time Spent: 1h 10m  (was: 1h)

> SQLOperation class output real exception message to jdbc client
> ---------------------------------------------------------------
>
>                 Key: HIVE-26345
>                 URL: https://issues.apache.org/jira/browse/HIVE-26345
>             Project: Hive
>          Issue Type: Improvement
>          Components: HiveServer2
>    Affects Versions: 4.0.0-alpha-2
>            Reporter: zhangbutao
>            Assignee: zhangbutao
>            Priority: Major
>              Labels: pull-request-available
>          Time Spent: 1h 10m
>  Remaining Estimate: 0h
>
> Beeline client may can not get real exception from _*SQLOperation class*_ and 
> user may don't how to fix query based on client exception massage.
> Step to repro:
> {code:java}
> set hive.support.concurrency=false;
> set hive.txn.manager=org.apache.hadoop.hive.ql.lockmgr.DbTxnManager;
> create table testacid(id int) stored as orc 
> tblproperties('transactional'='true');{code}
> Beeline console output exception:
> {code:java}
> Error: Error running query (state=,code=0) {code}
>  
> However, Hive3 beeline can output readable exception information:
> {code:java}
> Error: Error while compiling statement: FAILED: RuntimeException [Error 
> 10264]: To use DbTxnManager you must set hive.support.concurrency=true 
> (state=42000,code=10264) {code}
>  
> This change was introduced by HIVE-23124, i think we should fix this to 
> output real exception to prompt users to amend the query.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to