[ https://issues.apache.org/jira/browse/HIVE-16451?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15969882#comment-15969882 ]
Hive QA commented on HIVE-16451: -------------------------------- Here are the results of testing the latest attachment: https://issues.apache.org/jira/secure/attachment/12863540/HIVE-16451.03.patch {color:red}ERROR:{color} -1 due to no test(s) being added or modified. {color:red}ERROR:{color} -1 due to 3 failed/errored test(s), 10579 tests executed *Failed tests:* {noformat} org.apache.hadoop.hive.cli.TestCliDriver.testCliDriver[vector_order_null] (batchId=27) org.apache.hadoop.hive.cli.TestMiniLlapLocalCliDriver.testCliDriver[vector_if_expr] (batchId=143) org.apache.hadoop.hive.cli.TestSparkCliDriver.testCliDriver[vector_count_distinct] (batchId=109) {noformat} Test results: https://builds.apache.org/job/PreCommit-HIVE-Build/4703/testReport Console output: https://builds.apache.org/job/PreCommit-HIVE-Build/4703/console Test logs: http://104.198.109.242/logs/PreCommit-HIVE-Build-4703/ Messages: {noformat} Executing org.apache.hive.ptest.execution.TestCheckPhase Executing org.apache.hive.ptest.execution.PrepPhase Executing org.apache.hive.ptest.execution.ExecutionPhase Executing org.apache.hive.ptest.execution.ReportingPhase Tests exited with: TestsFailedException: 3 tests failed {noformat} This message is automatically generated. ATTACHMENT ID: 12863540 - PreCommit-HIVE-Build > Race condition between HiveStatement.getQueryLog and > HiveStatement.runAsyncOnServer > ----------------------------------------------------------------------------------- > > Key: HIVE-16451 > URL: https://issues.apache.org/jira/browse/HIVE-16451 > Project: Hive > Issue Type: Bug > Components: Beeline > Affects Versions: 3.0.0 > Reporter: Peter Vary > Assignee: Peter Vary > Attachments: HIVE-16451.02.patch, HIVE-16451.03.patch, > HIVE-16451.patch > > > During the BeeLineDriver testing I have met the following race condition: > - Run the query asynchronously through BeeLine > - Querying the logs in the BeeLine > In the following code: > {code:title=HiveStatement.runAsyncOnServer} > private void runAsyncOnServer(String sql) throws SQLException { > checkConnection("execute"); > closeClientOperation(); > initFlags(); > [..] > } > {code} > {code:title=HiveStatement.getQueryLog} > public List<String> getQueryLog(boolean incremental, int fetchSize) > throws SQLException, ClosedOrCancelledStatementException { > [..] > try { > if (stmtHandle != null) { > [..] > } else { > if (isQueryClosed) { > throw new ClosedOrCancelledStatementException("Method getQueryLog() > failed. The " + > "statement has been closed or cancelled."); > } else { > return logs; > } > } > } catch (SQLException e) { > [..] > } > [..] > } > {code} > The runAsyncOnServer {{closeClientOperation}} sets {{isQueryClosed}} flag to > true: > {code:title=HiveStatement.closeClientOperation} > void closeClientOperation() throws SQLException { > [..] > isQueryClosed = true; > isExecuteStatementFailed = false; > stmtHandle = null; > } > {code} > The {{initFlags}} sets it to false: > {code} > private void initFlags() { > isCancelled = false; > isQueryClosed = false; > isLogBeingGenerated = true; > isExecuteStatementFailed = false; > isOperationComplete = false; > } > {code} > If the {{getQueryLog}} is called after the {{closeClientOperation}}, but > before the {{initFlags}}, then we will have a following warning if verbose > mode is set to true in BeeLine: > {code} > Warning: org.apache.hive.jdbc.ClosedOrCancelledStatementException: Method > getQueryLog() failed. The statement has been closed or cancelled. > (state=,code=0) > {code} > This caused this fail: > https://builds.apache.org/job/PreCommit-HIVE-Build/4691/testReport/org.apache.hadoop.hive.cli/TestBeeLineDriver/testCliDriver_smb_mapjoin_11_/ > {code} > Error Message > Client result comparison failed with error code = 1 while executing > fname=smb_mapjoin_11 > 16a17 > > Warning: org.apache.hive.jdbc.ClosedOrCancelledStatementException: Method > > getQueryLog() failed. The statement has been closed or cancelled. > > (state=,code=0) > {code} -- This message was sent by Atlassian JIRA (v6.3.15#6346)