Skip to content

[Native] Enable Tpcds Test for Parquet File#19646

Merged
aditi-pandit merged 1 commit intoprestodb:masterfrom
frankobe:tpcds-parquet
Jun 21, 2023
Merged

[Native] Enable Tpcds Test for Parquet File#19646
aditi-pandit merged 1 commit intoprestodb:masterfrom
frankobe:tpcds-parquet

Conversation

@frankobe
Copy link
Contributor

@frankobe frankobe commented May 13, 2023

Test plan:

This PR adds test for 99 TPC-DS queries on unmodified schemas & SQLs under presto-native-execution.

The test is based on parquet file so unmodified schema from TPC-DS connector is used.

== RELEASE NOTES ==

Native Changes
* Add TPC-DS tests for native execution based on Parquet files

@frankobe frankobe requested review from a team as code owners May 13, 2023 01:11
@frankobe frankobe requested a review from ajaygeorge May 13, 2023 01:11
@frankobe frankobe marked this pull request as draft May 13, 2023 01:21
@frankobe frankobe force-pushed the tpcds-parquet branch 3 times, most recently from e170f2c to 7b5a676 Compare May 15, 2023 19:28
@frankobe frankobe changed the title Tpcds parquet [Native] Enable Tpcds Test for Parquet File May 16, 2023
@frankobe frankobe force-pushed the tpcds-parquet branch 6 times, most recently from 1cee7dd to 3fe46ae Compare May 23, 2023 00:49
@frankobe frankobe force-pushed the tpcds-parquet branch 3 times, most recently from a77ac5c to f1be2cd Compare May 25, 2023 19:14
@frankobe frankobe force-pushed the tpcds-parquet branch 2 times, most recently from cd67915 to f35deb3 Compare June 13, 2023 18:45
@frankobe frankobe force-pushed the tpcds-parquet branch 2 times, most recently from f6f9068 to 5dddbba Compare June 14, 2023 20:45
@frankobe frankobe marked this pull request as ready for review June 14, 2023 22:40
@frankobe frankobe force-pushed the tpcds-parquet branch 3 times, most recently from fb1e3f9 to e865257 Compare June 20, 2023 01:36
Signed-off-by: frankobe <mua08p@gmail.com>
@frankobe frankobe requested a review from aditi-pandit June 20, 2023 21:40
Copy link
Contributor

@aditi-pandit aditi-pandit left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks Frank for these tests ! Appreciate it.

@aditi-pandit aditi-pandit merged commit 3b26dcd into prestodb:master Jun 21, 2023
@mshang816
Copy link
Contributor

Hi @frankobe
The test class TestPrestoNativeTpcdsQueriesParquetUsingThrift added in the PR is failing on both circle ci and our internal runs. We need to remove or disable the tests before we can fix the failures to avoid noisy ci signals.
c.c. @amitkdutta @majetideepak

@frankobe
Copy link
Contributor Author

Hi @frankobe The test class TestPrestoNativeTpcdsQueriesParquetUsingThrift added in the PR is failing on both circle ci and our internal runs. We need to remove or disable the tests before we can fix the failures to avoid noisy ci signals. c.c. @amitkdutta @majetideepak

Hi @mshang816,

I can definitely take a look. Is there an output log from the CI? I checked a few commits, e.g. https://app.circleci.com/pipelines/github/prestodb/presto/4010/workflows/6cb4c54e-99f0-4bcb-baf7-0dde9f045998/jobs/7744/parallel-runs/3?filterBy=FAILED

I see the failures are on every e2e test case, not limited to TestPrestoNativeTpcdsQueriesParquetUsingThrift

@frankobe
Copy link
Contributor Author

Hi @frankobe The test class TestPrestoNativeTpcdsQueriesParquetUsingThrift added in the PR is failing on both circle ci and our internal runs. We need to remove or disable the tests before we can fix the failures to avoid noisy ci signals. c.c. @amitkdutta @majetideepak

Hi @mshang816,

I can definitely take a look. Is there an output log from the CI? I checked a few commits, e.g. https://app.circleci.com/pipelines/github/prestodb/presto/4010/workflows/6cb4c54e-99f0-4bcb-baf7-0dde9f045998/jobs/7744/parallel-runs/3?filterBy=FAILED

I see the failures are on every e2e test case, not limited to TestPrestoNativeTpcdsQueriesParquetUsingThrift

I checked a few merged commits in master branch, TestPrestoNativeTpcdsQueruesParquetUsingThrift fails due to No worker nodes available

Caused by: java.lang.RuntimeException: No worker nodes available
	at com.facebook.presto.tests.AbstractTestingPrestoClient.execute(AbstractTestingPrestoClient.java:124)
	at com.facebook.presto.tests.DistributedQueryRunner.execute(DistributedQueryRunner.java:726)
	at com.facebook.presto.tests.DistributedQueryRunner.execute(DistributedQueryRunner.java:694)
	at com.facebook.presto.tests.QueryAssertions.assertQuery(QueryAssertions.java:175)
	... 18 more
Caused by: com.facebook.presto.spi.PrestoException: No worker nodes available
	at com.facebook.presto.util.Failures.checkCondition(Failures.java:85)
	at com.facebook.presto.sql.planner.SystemPartitioningHandle.getNodePartitionMap(SystemPartitioningHandle.java:156)
	at com.facebook.presto.sql.planner.NodePartitioningManager.getNodePartitioningMap(NodePartitioningManager.java:122)
	at com.facebook.presto.execution.scheduler.SectionExecutionFactory.lambda$null$0(SectionExecutionFactory.java:171)
	at java.util.HashMap.computeIfAbsent(HashMap.java:1128)

It seems to be related to the test setup, not the test itself. It impacts Q1 & Q10 as they are the first 2 to run

@mshang816
Copy link
Contributor

Hi @frankobe The test class TestPrestoNativeTpcdsQueriesParquetUsingThrift added in the PR is failing on both circle ci and our internal runs. We need to remove or disable the tests before we can fix the failures to avoid noisy ci signals. c.c. @amitkdutta @majetideepak

Hi @mshang816,
I can definitely take a look. Is there an output log from the CI? I checked a few commits, e.g. https://app.circleci.com/pipelines/github/prestodb/presto/4010/workflows/6cb4c54e-99f0-4bcb-baf7-0dde9f045998/jobs/7744/parallel-runs/3?filterBy=FAILED
I see the failures are on every e2e test case, not limited to TestPrestoNativeTpcdsQueriesParquetUsingThrift

I checked a few merged commits in master branch, TestPrestoNativeTpcdsQueruesParquetUsingThrift fails due to No worker nodes available

Caused by: java.lang.RuntimeException: No worker nodes available
	at com.facebook.presto.tests.AbstractTestingPrestoClient.execute(AbstractTestingPrestoClient.java:124)
	at com.facebook.presto.tests.DistributedQueryRunner.execute(DistributedQueryRunner.java:726)
	at com.facebook.presto.tests.DistributedQueryRunner.execute(DistributedQueryRunner.java:694)
	at com.facebook.presto.tests.QueryAssertions.assertQuery(QueryAssertions.java:175)
	... 18 more
Caused by: com.facebook.presto.spi.PrestoException: No worker nodes available
	at com.facebook.presto.util.Failures.checkCondition(Failures.java:85)
	at com.facebook.presto.sql.planner.SystemPartitioningHandle.getNodePartitionMap(SystemPartitioningHandle.java:156)
	at com.facebook.presto.sql.planner.NodePartitioningManager.getNodePartitioningMap(NodePartitioningManager.java:122)
	at com.facebook.presto.execution.scheduler.SectionExecutionFactory.lambda$null$0(SectionExecutionFactory.java:171)
	at java.util.HashMap.computeIfAbsent(HashMap.java:1128)

It seems to be related to the test setup, not the test itself. It impacts Q1 & Q10 as they are the first 2 to run

Here are the two stacktrace from our internal runs:
at org.testng.Assert.fail(Assert.java:110)
at com.facebook.presto.tests.QueryAssertions.assertQueryFails(QueryAssertions.java:329)
at com.facebook.presto.tests.AbstractTestQueryFramework.assertQueryFails(AbstractTestQueryFramework.java:265)
at com.facebook.presto.nativeworker.AbstractTestNativeTpcdsQueries.testTpcdsQ2(AbstractTestNativeTpcdsQueries.java:437)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
at org.testng.internal.invokers.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:135)
at org.testng.internal.invokers.TestInvoker.invokeMethod(TestInvoker.java:673)
at org.testng.internal.invokers.TestInvoker.invokeTestMethod(TestInvoker.java:220)
at org.testng.internal.invokers.MethodRunner.runInSequence(MethodRunner.java:50)
at org.testng.internal.invokers.TestInvoker$MethodInvocationAgent.invoke(TestInvoker.java:945)
at org.testng.internal.invokers.TestInvoker.invokeTestMethods(TestInvoker.java:193)
at org.testng.internal.invokers.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:146)
at org.testng.internal.invokers.TestMethodWorker.run(TestMethodWorker.java:128)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
at java.base/java.lang.Thread.run(Thread.java:829)

at org.testng.Assert.fail(Assert.java:110)
at com.facebook.presto.tests.QueryAssertions.assertQueryFails(QueryAssertions.java:329)
at com.facebook.presto.tests.AbstractTestQueryFramework.assertQueryFails(AbstractTestQueryFramework.java:265)
at com.facebook.presto.nativeworker.AbstractTestNativeTpcdsQueries.testTpcdsQ78(AbstractTestNativeTpcdsQueries.java:1012)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
at org.testng.internal.invokers.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:135)
at org.testng.internal.invokers.TestInvoker.invokeMethod(TestInvoker.java:673)
at org.testng.internal.invokers.TestInvoker.invokeTestMethod(TestInvoker.java:220)
at org.testng.internal.invokers.MethodRunner.runInSequence(MethodRunner.java:50)
at org.testng.internal.invokers.TestInvoker$MethodInvocationAgent.invoke(TestInvoker.java:945)
at org.testng.internal.invokers.TestInvoker.invokeTestMethods(TestInvoker.java:193)
at org.testng.internal.invokers.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:146)
at org.testng.internal.invokers.TestMethodWorker.run(TestMethodWorker.java:128)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
at java.base/java.lang.Thread.run(Thread.java:829)

@mshang816
Copy link
Contributor

Hi @frankobe The test class TestPrestoNativeTpcdsQueriesParquetUsingThrift added in the PR is failing on both circle ci and our internal runs. We need to remove or disable the tests before we can fix the failures to avoid noisy ci signals. c.c. @amitkdutta @majetideepak

Hi @mshang816,
I can definitely take a look. Is there an output log from the CI? I checked a few commits, e.g. https://app.circleci.com/pipelines/github/prestodb/presto/4010/workflows/6cb4c54e-99f0-4bcb-baf7-0dde9f045998/jobs/7744/parallel-runs/3?filterBy=FAILED
I see the failures are on every e2e test case, not limited to TestPrestoNativeTpcdsQueriesParquetUsingThrift

I checked a few merged commits in master branch, TestPrestoNativeTpcdsQueruesParquetUsingThrift fails due to No worker nodes available

Caused by: java.lang.RuntimeException: No worker nodes available
	at com.facebook.presto.tests.AbstractTestingPrestoClient.execute(AbstractTestingPrestoClient.java:124)
	at com.facebook.presto.tests.DistributedQueryRunner.execute(DistributedQueryRunner.java:726)
	at com.facebook.presto.tests.DistributedQueryRunner.execute(DistributedQueryRunner.java:694)
	at com.facebook.presto.tests.QueryAssertions.assertQuery(QueryAssertions.java:175)
	... 18 more
Caused by: com.facebook.presto.spi.PrestoException: No worker nodes available
	at com.facebook.presto.util.Failures.checkCondition(Failures.java:85)
	at com.facebook.presto.sql.planner.SystemPartitioningHandle.getNodePartitionMap(SystemPartitioningHandle.java:156)
	at com.facebook.presto.sql.planner.NodePartitioningManager.getNodePartitioningMap(NodePartitioningManager.java:122)
	at com.facebook.presto.execution.scheduler.SectionExecutionFactory.lambda$null$0(SectionExecutionFactory.java:171)
	at java.util.HashMap.computeIfAbsent(HashMap.java:1128)

It seems to be related to the test setup, not the test itself. It impacts Q1 & Q10 as they are the first 2 to run

it looks like the native workers crashed.

@frankobe
Copy link
Contributor Author

frankobe commented Jun 22, 2023

Hi @frankobe The test class TestPrestoNativeTpcdsQueriesParquetUsingThrift added in the PR is failing on both circle ci and our internal runs. We need to remove or disable the tests before we can fix the failures to avoid noisy ci signals. c.c. @amitkdutta @majetideepak

Hi @mshang816,
I can definitely take a look. Is there an output log from the CI? I checked a few commits, e.g. https://app.circleci.com/pipelines/github/prestodb/presto/4010/workflows/6cb4c54e-99f0-4bcb-baf7-0dde9f045998/jobs/7744/parallel-runs/3?filterBy=FAILED
I see the failures are on every e2e test case, not limited to TestPrestoNativeTpcdsQueriesParquetUsingThrift

I checked a few merged commits in master branch, TestPrestoNativeTpcdsQueruesParquetUsingThrift fails due to No worker nodes available

Caused by: java.lang.RuntimeException: No worker nodes available
	at com.facebook.presto.tests.AbstractTestingPrestoClient.execute(AbstractTestingPrestoClient.java:124)
	at com.facebook.presto.tests.DistributedQueryRunner.execute(DistributedQueryRunner.java:726)
	at com.facebook.presto.tests.DistributedQueryRunner.execute(DistributedQueryRunner.java:694)
	at com.facebook.presto.tests.QueryAssertions.assertQuery(QueryAssertions.java:175)
	... 18 more
Caused by: com.facebook.presto.spi.PrestoException: No worker nodes available
	at com.facebook.presto.util.Failures.checkCondition(Failures.java:85)
	at com.facebook.presto.sql.planner.SystemPartitioningHandle.getNodePartitionMap(SystemPartitioningHandle.java:156)
	at com.facebook.presto.sql.planner.NodePartitioningManager.getNodePartitioningMap(NodePartitioningManager.java:122)
	at com.facebook.presto.execution.scheduler.SectionExecutionFactory.lambda$null$0(SectionExecutionFactory.java:171)
	at java.util.HashMap.computeIfAbsent(HashMap.java:1128)

It seems to be related to the test setup, not the test itself. It impacts Q1 & Q10 as they are the first 2 to run

it looks like the native workers crashed.

@mshang816 I don't think so. If workers crash, the following 97 queries should fail but it succeeds in this case.

Are you able to reproduce this failure locally? presto-e2e-test still fails after disabling the test in #19932

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants