simhadri-g commented on PR #4249: URL: https://github.com/apache/hive/pull/4249#issuecomment-1515962181
Thanks, @ayushtkn and @TuroczyX for the review. Looking at the stack trace mentioned in [HIVE-23394](https://issues.apache.org/jira/browse/HIVE-23394) The "out of sequence response" error occurs when two threads use the same HiveMetaStoreClient instance. It seems that the metastore client socket is reading the RPC response from a different call, hence the out-of-sequence exception. Looking at the tests , there are 2 tests that use AbstractTestJdbcGenericUDTFGetSplits: 1. TestJdbcGenericUDTFGetSplits2#testGenericUDTFOderBySplitCount1 2. TestJdbcGenericUDTFGetSplits#testGenericUDTFOrderBySplitCount1 These 2 tests call the same AbstractTestJdbcGenericUDTFGetSplits.java, which spins up a new miniHS2 instance. I guess if these 2 tests run concurrently, it may cause the test to be flaky. I think we should merge these 2 tests to a single file and ensure it runs sequentially to fix the flakiness. ``` Error Message Failed to close statement Stacktrace java.sql.SQLException: Failed to close statement at org.apache.hive.jdbc.HiveStatement.closeStatementIfNeeded(HiveStatement.java:200) at org.apache.hive.jdbc.HiveStatement.closeClientOperation(HiveStatement.java:205) at org.apache.hive.jdbc.HiveStatement.close(HiveStatement.java:222) at org.apache.hive.jdbc.AbstractTestJdbcGenericUDTFGetSplits.runQuery(AbstractTestJdbcGenericUDTFGetSplits.java:135) at org.apache.hive.jdbc.AbstractTestJdbcGenericUDTFGetSplits.testGenericUDTFOrderBySplitCount1(AbstractTestJdbcGenericUDTFGetSplits.java:164) at org.apache.hive.jdbc.TestJdbcGenericUDTFGetSplits2.testGenericUDTFOrderBySplitCount1(TestJdbcGenericUDTFGetSplits2.java:28) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:47) at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12) at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:44) at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17) at org.junit.internal.runners.statements.FailOnTimeout$StatementThread.run(FailOnTimeout.java:74) Caused by: org.apache.thrift.TApplicationException: CloseOperation failed: out of sequence response at org.apache.thrift.TServiceClient.receiveBase(TServiceClient.java:84) at org.apache.hive.service.rpc.thrift.TCLIService$Client.recv_CloseOperation(TCLIService.java:521) at org.apache.hive.service.rpc.thrift.TCLIService$Client.CloseOperation(TCLIService.java:508) at sun.reflect.GeneratedMethodAccessor40.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.apache.hive.jdbc.HiveConnection$SynchronizedHandler.invoke(HiveConnection.java:1732) at com.sun.proxy.$Proxy146.CloseOperation(Unknown Source) at org.apache.hive.jdbc.HiveStatement.closeStatementIfNeeded(HiveStatement.java:193) ... 14 more ``` -- 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. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
