trinodb / trino

Official repository of Trino, the distributed SQL query engine for big data, formerly known as PrestoSQL (https://trino.io)
https://trino.io
Apache License 2.0
10.19k stars 2.94k forks source link

Flaky `TestBigQueryWithProxyConnectorSmokeTest` #17912

Open ebyhr opened 1 year ago

ebyhr commented 1 year ago
Error:  io.trino.plugin.bigquery.TestBigQueryWithProxyConnectorSmokeTest.testJoin  Time elapsed: 2.486 s  <<< FAILURE!
java.lang.AssertionError: Execution of 'actual' query 20230614_212051_00028_rfnee failed: SELECT n.name, r.name FROM nation n JOIN region r on n.regionkey = r.regionkey
    at org.testng.Assert.fail(Assert.java:83)
    at io.trino.testing.QueryAssertions.assertDistributedQuery(QueryAssertions.java:286)
    at io.trino.testing.QueryAssertions.assertQuery(QueryAssertions.java:184)
    at io.trino.testing.QueryAssertions.assertQuery(QueryAssertions.java:157)
    at io.trino.testing.AbstractTestQueryFramework.assertQuery(AbstractTestQueryFramework.java:334)
    at io.trino.testing.AbstractTestQueryFramework.assertQuery(AbstractTestQueryFramework.java:329)
    at io.trino.testing.BaseConnectorSmokeTest.testJoin(BaseConnectorSmokeTest.java:136)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.base/java.lang.reflect.Method.invoke(Method.java:568)
    at org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:104)
    at org.testng.internal.Invoker.invokeMethod(Invoker.java:645)
    at org.testng.internal.Invoker.invokeTestMethod(Invoker.java:851)
    at org.testng.internal.Invoker.invokeTestMethods(Invoker.java:1177)
    at org.testng.internal.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:129)
    at org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:112)
    at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
    at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
    at java.base/java.lang.Thread.run(Thread.java:833)
Caused by: io.trino.testing.QueryFailedException: io.grpc.StatusRuntimeException: UNAVAILABLE: io exception
Channel Pipeline: [HttpProxyHandler$HttpClientCodecWrapper#0, HttpProxyHandler#0, ProtocolNegotiators$ProxyProtocolNegotiationHandler#0, WriteBufferingAndExceptionHandler#0, DefaultChannelPipeline$TailContext#0]
    at io.trino.testing.AbstractTestingTrinoClient.execute(AbstractTestingTrinoClient.java:122)
    at io.trino.testing.DistributedQueryRunner.executeWithQueryId(DistributedQueryRunner.java:493)
    at io.trino.testing.QueryAssertions.assertDistributedQuery(QueryAssertions.java:277)
    ... 18 more
    Suppressed: java.lang.Exception: SQL: SELECT n.name, r.name FROM nation n JOIN region r on n.regionkey = r.regionkey
        at io.trino.testing.DistributedQueryRunner.executeWithQueryId(DistributedQueryRunner.java:497)
        ... 19 more
Caused by: com.google.api.gax.rpc.UnavailableException: io.grpc.StatusRuntimeException: UNAVAILABLE: io exception
Channel Pipeline: [HttpProxyHandler$HttpClientCodecWrapper#0, HttpProxyHandler#0, ProtocolNegotiators$ProxyProtocolNegotiationHandler#0, WriteBufferingAndExceptionHandler#0, DefaultChannelPipeline$TailContext#0]
    at com.google.api.gax.rpc.ApiExceptionFactory.createException(ApiExceptionFactory.java:112)
    at com.google.api.gax.rpc.ApiExceptionFactory.createException(ApiExceptionFactory.java:41)
    at com.google.api.gax.grpc.GrpcApiExceptionFactory.create(GrpcApiExceptionFactory.java:86)
    at com.google.api.gax.grpc.GrpcApiExceptionFactory.create(GrpcApiExceptionFactory.java:66)
    at com.google.api.gax.grpc.GrpcExceptionCallable$ExceptionTransformingFuture.onFailure(GrpcExceptionCallable.java:97)
    at com.google.api.core.ApiFutures$1.onFailure(ApiFutures.java:84)
    at com.google.common.util.concurrent.Futures$CallbackListener.run(Futures.java:1127)
    at com.google.common.util.concurrent.DirectExecutor.execute(DirectExecutor.java:31)
    at com.google.common.util.concurrent.AbstractFuture.executeListener(AbstractFuture.java:1286)
    at com.google.common.util.concurrent.AbstractFuture.complete(AbstractFuture.java:1055)
    at com.google.common.util.concurrent.AbstractFuture.setException(AbstractFuture.java:807)
    at io.grpc.stub.ClientCalls$GrpcFuture.setException(ClientCalls.java:574)
    at io.grpc.stub.ClientCalls$UnaryStreamToFuture.onClose(ClientCalls.java:544)
    at io.grpc.PartialForwardingClientCallListener.onClose(PartialForwardingClientCallListener.java:39)
    at io.grpc.ForwardingClientCallListener.onClose(ForwardingClientCallListener.java:23)
    at io.grpc.ForwardingClientCallListener$SimpleForwardingClientCallListener.onClose(ForwardingClientCallListener.java:40)
    at com.google.api.gax.grpc.ChannelPool$ReleasingClientCall$1.onClose(ChannelPool.java:541)
    at io.grpc.internal.DelayedClientCall$DelayedListener$3.run(DelayedClientCall.java:489)
    at io.grpc.internal.DelayedClientCall$DelayedListener.delayOrExecute(DelayedClientCall.java:453)
    at io.grpc.internal.DelayedClientCall$DelayedListener.onClose(DelayedClientCall.java:486)
    at io.grpc.internal.ClientCallImpl.closeObserver(ClientCallImpl.java:576)
    at io.grpc.internal.ClientCallImpl.access$300(ClientCallImpl.java:70)
    at io.grpc.internal.ClientCallImpl$ClientStreamListenerImpl$1StreamClosed.runInternal(ClientCallImpl.java:757)
    at io.grpc.internal.ClientCallImpl$ClientStreamListenerImpl$1StreamClosed.runInContext(ClientCallImpl.java:736)
    at io.grpc.internal.ContextRunnable.run(ContextRunnable.java:37)
    at io.grpc.internal.SerializingExecutor.run(SerializingExecutor.java:133)
    at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
    at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
    at java.base/java.lang.Thread.run(Thread.java:833)
    Suppressed: com.google.api.gax.rpc.AsyncTaskException: Asynchronous task failed
        at com.google.api.gax.rpc.ApiExceptions.callAndTranslateApiException(ApiExceptions.java:57)
        at com.google.api.gax.rpc.UnaryCallable.call(UnaryCallable.java:112)
        at com.google.cloud.bigquery.storage.v1.BigQueryReadClient.createReadSession(BigQueryReadClient.java:232)
        at io.trino.plugin.bigquery.ReadSessionCreator.lambda$create$3(ReadSessionCreator.java:117)
        at dev.failsafe.Functions.lambda$toCtxSupplier$11(Functions.java:243)
        at dev.failsafe.Functions.lambda$get$0(Functions.java:46)
        at dev.failsafe.internal.RetryPolicyExecutor.lambda$apply$0(RetryPolicyExecutor.java:74)
        at dev.failsafe.SyncExecutionImpl.executeSync(SyncExecutionImpl.java:187)
        at dev.failsafe.FailsafeExecutor.call(FailsafeExecutor.java:376)
        at dev.failsafe.FailsafeExecutor.get(FailsafeExecutor.java:112)
        at io.trino.plugin.bigquery.ReadSessionCreator.create(ReadSessionCreator.java:117)
        at io.trino.plugin.bigquery.BigQuerySplitManager.readFromBigQuery(BigQuerySplitManager.java:144)
        at io.trino.plugin.bigquery.BigQuerySplitManager.getSplits(BigQuerySplitManager.java:113)
        at io.trino.split.SplitManager.getSplits(SplitManager.java:67)
        at io.trino.sql.planner.SplitSourceFactory$Visitor.createSplitSource(SplitSourceFactory.java:186)
        at io.trino.sql.planner.SplitSourceFactory$Visitor.visitFilter(SplitSourceFactory.java:257)
        at io.trino.sql.planner.SplitSourceFactory$Visitor.visitFilter(SplitSourceFactory.java:130)
        at io.trino.sql.planner.plan.FilterNode.accept(FilterNode.java:80)
        at io.trino.sql.planner.SplitSourceFactory$Visitor.visitProject(SplitSourceFactory.java:345)
        at io.trino.sql.planner.SplitSourceFactory$Visitor.visitProject(SplitSourceFactory.java:130)
        at io.trino.sql.planner.plan.ProjectNode.accept(ProjectNode.java:82)
        at io.trino.sql.planner.SplitSourceFactory.createSplitSources(SplitSourceFactory.java:110)
        at io.trino.execution.scheduler.PipelinedQueryScheduler$DistributedStagesScheduler.createStageScheduler(PipelinedQueryScheduler.java:1036)
        at io.trino.execution.scheduler.PipelinedQueryScheduler$DistributedStagesScheduler.create(PipelinedQueryScheduler.java:912)
        at io.trino.execution.scheduler.PipelinedQueryScheduler.createDistributedStagesScheduler(PipelinedQueryScheduler.java:313)
        at io.trino.execution.scheduler.PipelinedQueryScheduler.start(PipelinedQueryScheduler.java:294)
        at io.trino.execution.SqlQueryExecution.start(SqlQueryExecution.java:427)
        at io.trino.execution.SqlQueryManager.createQuery(SqlQueryManager.java:257)
        at io.trino.dispatcher.LocalDispatchQuery.startExecution(LocalDispatchQuery.java:145)
        at io.trino.dispatcher.LocalDispatchQuery.lambda$waitForMinimumWorkers$2(LocalDispatchQuery.java:129)
        at io.airlift.concurrent.MoreFutures.lambda$addSuccessCallback$12(MoreFutures.java:569)
        at io.airlift.concurrent.MoreFutures$3.onSuccess(MoreFutures.java:544)
        at com.google.common.util.concurrent.Futures$CallbackListener.run(Futures.java:1133)
        at io.trino.$gen.Trino_testversion____20230614_212019_2502.run(Unknown Source)
        ... 3 more
Caused by: io.grpc.StatusRuntimeException: UNAVAILABLE: io exception
Channel Pipeline: [HttpProxyHandler$HttpClientCodecWrapper#0, HttpProxyHandler#0, ProtocolNegotiators$ProxyProtocolNegotiationHandler#0, WriteBufferingAndExceptionHandler#0, DefaultChannelPipeline$TailContext#0]
    at io.grpc.Status.asRuntimeException(Status.java:539)
    ... 17 more
Caused by: io.grpc.netty.shaded.io.netty.handler.proxy.ProxyConnectException: http, none, localhost/127.0.0.1:32769 => bigquerystorage.googleapis.com/<unresolved>:443, timeout
    at io.grpc.netty.shaded.io.netty.handler.proxy.ProxyHandler$2.run(ProxyHandler.java:198)
    at io.grpc.netty.shaded.io.netty.util.concurrent.PromiseTask.runTask(PromiseTask.java:98)
    at io.grpc.netty.shaded.io.netty.util.concurrent.ScheduledFutureTask.run(ScheduledFutureTask.java:153)
    at io.grpc.netty.shaded.io.netty.util.concurrent.AbstractEventExecutor.runTask(AbstractEventExecutor.java:174)
    at io.grpc.netty.shaded.io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:167)
    at io.grpc.netty.shaded.io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:470)
    at io.grpc.netty.shaded.io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:406)
    at io.grpc.netty.shaded.io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:997)
    at io.grpc.netty.shaded.io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
    at io.grpc.netty.shaded.io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
    ... 1 more

https://github.com/trinodb/trino/actions/runs/5269771064/jobs/9531968172

ebyhr commented 1 year ago

cc: @hashhar @wendigo