From 6312fd1b0ff58001d318a1fe1119230b454c3f23 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Knut=20Olav=20L=C3=B8ite?= Date: Wed, 7 Aug 2024 12:45:31 +0200 Subject: [PATCH 1/2] build: increase parallelism for integration tests --- google-cloud-spanner/pom.xml | 2 +- .../cloud/spanner/connection/it/ITBulkConnectionTest.java | 8 ++++---- .../cloud/spanner/connection/it/ITQueryOptionsTest.java | 6 ++++++ .../java/com/google/cloud/spanner/it/ITAsyncAPITest.java | 4 ++-- .../com/google/cloud/spanner/it/ITAsyncExamplesTest.java | 4 ++-- 5 files changed, 15 insertions(+), 9 deletions(-) diff --git a/google-cloud-spanner/pom.xml b/google-cloud-spanner/pom.xml index 8a79e70362e..7ea8a1cb5ea 100644 --- a/google-cloud-spanner/pom.xml +++ b/google-cloud-spanner/pom.xml @@ -107,7 +107,7 @@ com.google.cloud.spanner.ParallelIntegrationTest - 8 + 12 true com.google.cloud.spanner.ParallelIntegrationTest diff --git a/google-cloud-spanner/src/test/java/com/google/cloud/spanner/connection/it/ITBulkConnectionTest.java b/google-cloud-spanner/src/test/java/com/google/cloud/spanner/connection/it/ITBulkConnectionTest.java index 9cc46e6ee13..17583912541 100644 --- a/google-cloud-spanner/src/test/java/com/google/cloud/spanner/connection/it/ITBulkConnectionTest.java +++ b/google-cloud-spanner/src/test/java/com/google/cloud/spanner/connection/it/ITBulkConnectionTest.java @@ -20,8 +20,8 @@ import static org.hamcrest.CoreMatchers.notNullValue; import static org.hamcrest.MatcherAssert.assertThat; +import com.google.cloud.spanner.ParallelIntegrationTest; import com.google.cloud.spanner.ResultSet; -import com.google.cloud.spanner.SerialIntegrationTest; import com.google.cloud.spanner.Statement; import com.google.cloud.spanner.connection.ITAbstractSpannerTest; import java.util.ArrayList; @@ -36,10 +36,10 @@ /** * Test opening multiple generic (not JDBC) Spanner connections. This test should not be run in - * parallel with other tests, as it tries to close all active connections, and should not try to - * close connections of other integration tests. + * parallel with other tests in the same JVM, as it tries to close all active connections, and + * should not try to close connections of other integration tests. */ -@Category(SerialIntegrationTest.class) +@Category(ParallelIntegrationTest.class) @RunWith(JUnit4.class) public class ITBulkConnectionTest extends ITAbstractSpannerTest { private static final int NUMBER_OF_TEST_CONNECTIONS = 250; diff --git a/google-cloud-spanner/src/test/java/com/google/cloud/spanner/connection/it/ITQueryOptionsTest.java b/google-cloud-spanner/src/test/java/com/google/cloud/spanner/connection/it/ITQueryOptionsTest.java index 09f4ada43a8..62eba4f4315 100644 --- a/google-cloud-spanner/src/test/java/com/google/cloud/spanner/connection/it/ITQueryOptionsTest.java +++ b/google-cloud-spanner/src/test/java/com/google/cloud/spanner/connection/it/ITQueryOptionsTest.java @@ -16,12 +16,18 @@ package com.google.cloud.spanner.connection.it; +import com.google.cloud.spanner.ParallelIntegrationTest; import com.google.cloud.spanner.connection.ITAbstractSpannerTest; import com.google.cloud.spanner.connection.SqlScriptVerifier; import com.google.cloud.spanner.connection.SqlScriptVerifier.SpannerGenericConnection; import org.junit.Before; import org.junit.Test; +import org.junit.experimental.categories.Category; +import org.junit.runner.RunWith; +import org.junit.runners.JUnit4; +@Category(ParallelIntegrationTest.class) +@RunWith(JUnit4.class) public class ITQueryOptionsTest extends ITAbstractSpannerTest { private static final String TEST_QUERY_OPTIONS = "ITSqlScriptTest_TestQueryOptions.sql"; diff --git a/google-cloud-spanner/src/test/java/com/google/cloud/spanner/it/ITAsyncAPITest.java b/google-cloud-spanner/src/test/java/com/google/cloud/spanner/it/ITAsyncAPITest.java index ebd3ab4883f..1e408fadf33 100644 --- a/google-cloud-spanner/src/test/java/com/google/cloud/spanner/it/ITAsyncAPITest.java +++ b/google-cloud-spanner/src/test/java/com/google/cloud/spanner/it/ITAsyncAPITest.java @@ -42,7 +42,7 @@ import com.google.cloud.spanner.KeySet; import com.google.cloud.spanner.Mutation; import com.google.cloud.spanner.Options; -import com.google.cloud.spanner.SerialIntegrationTest; +import com.google.cloud.spanner.ParallelIntegrationTest; import com.google.cloud.spanner.SpannerException; import com.google.cloud.spanner.Statement; import com.google.cloud.spanner.Struct; @@ -68,7 +68,7 @@ import org.junit.runners.JUnit4; /** Integration tests for asynchronous APIs. */ -@Category(SerialIntegrationTest.class) +@Category(ParallelIntegrationTest.class) @RunWith(JUnit4.class) public class ITAsyncAPITest { @ClassRule public static IntegrationTestEnv env = new IntegrationTestEnv(); diff --git a/google-cloud-spanner/src/test/java/com/google/cloud/spanner/it/ITAsyncExamplesTest.java b/google-cloud-spanner/src/test/java/com/google/cloud/spanner/it/ITAsyncExamplesTest.java index 87f26da9049..dc5abd77afd 100644 --- a/google-cloud-spanner/src/test/java/com/google/cloud/spanner/it/ITAsyncExamplesTest.java +++ b/google-cloud-spanner/src/test/java/com/google/cloud/spanner/it/ITAsyncExamplesTest.java @@ -33,8 +33,8 @@ import com.google.cloud.spanner.Key; import com.google.cloud.spanner.KeySet; import com.google.cloud.spanner.Mutation; +import com.google.cloud.spanner.ParallelIntegrationTest; import com.google.cloud.spanner.ReadOnlyTransaction; -import com.google.cloud.spanner.SerialIntegrationTest; import com.google.cloud.spanner.SpannerException; import com.google.cloud.spanner.Statement; import com.google.cloud.spanner.Struct; @@ -59,7 +59,7 @@ import org.junit.runners.JUnit4; /** Integration tests for asynchronous APIs. */ -@Category(SerialIntegrationTest.class) +@Category(ParallelIntegrationTest.class) @RunWith(JUnit4.class) public class ITAsyncExamplesTest { @ClassRule public static IntegrationTestEnv env = new IntegrationTestEnv(); From a67581f1445274caf10327b0658accc3cbd0dc87 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Knut=20Olav=20L=C3=B8ite?= Date: Wed, 7 Aug 2024 13:02:39 +0200 Subject: [PATCH 2/2] fix: BulkConnectionTest must run serially --- .../cloud/spanner/connection/it/ITBulkConnectionTest.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/google-cloud-spanner/src/test/java/com/google/cloud/spanner/connection/it/ITBulkConnectionTest.java b/google-cloud-spanner/src/test/java/com/google/cloud/spanner/connection/it/ITBulkConnectionTest.java index 17583912541..42358a647a1 100644 --- a/google-cloud-spanner/src/test/java/com/google/cloud/spanner/connection/it/ITBulkConnectionTest.java +++ b/google-cloud-spanner/src/test/java/com/google/cloud/spanner/connection/it/ITBulkConnectionTest.java @@ -20,8 +20,8 @@ import static org.hamcrest.CoreMatchers.notNullValue; import static org.hamcrest.MatcherAssert.assertThat; -import com.google.cloud.spanner.ParallelIntegrationTest; import com.google.cloud.spanner.ResultSet; +import com.google.cloud.spanner.SerialIntegrationTest; import com.google.cloud.spanner.Statement; import com.google.cloud.spanner.connection.ITAbstractSpannerTest; import java.util.ArrayList; @@ -39,7 +39,7 @@ * parallel with other tests in the same JVM, as it tries to close all active connections, and * should not try to close connections of other integration tests. */ -@Category(ParallelIntegrationTest.class) +@Category(SerialIntegrationTest.class) @RunWith(JUnit4.class) public class ITBulkConnectionTest extends ITAbstractSpannerTest { private static final int NUMBER_OF_TEST_CONNECTIONS = 250;