Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -63,6 +63,7 @@
import java.util.List;
import java.util.Map;
import java.util.Objects;
import java.util.Optional;
import java.util.Random;
import java.util.function.Supplier;
import java.util.stream.Collectors;
Expand Down Expand Up @@ -794,10 +795,11 @@ public Builder useStaticInstance() {
/**
* Looks at the system properties if there's an instance id, and reuses it if configured.
*
* @param staticInstanceHint optional instance Id of the spanner instance.
* @return this builder with the instance ID set.
*/
@SuppressWarnings("nullness")
public Builder maybeUseStaticInstance() {
public Builder maybeUseStaticInstance(Optional<Integer> staticInstanceHint) {
String spannerInstanceId = System.getProperty("spannerInstanceId");
boolean isTestProject =
Objects.equals(projectId, "cloud-teleport-testing")
Expand All @@ -808,7 +810,12 @@ public Builder maybeUseStaticInstance() {
if (isTestProject && shouldPickRandomInstance) {
this.useStaticInstance = true;
List<String> staticInstanceList = TestConstants.SPANNER_TEST_INSTANCES;
this.instanceId = staticInstanceList.get(new Random().nextInt(staticInstanceList.size()));
if (staticInstanceHint.isPresent()) {
this.instanceId =
staticInstanceList.get(staticInstanceHint.get() % staticInstanceList.size());
} else {
this.instanceId = staticInstanceList.get(new Random().nextInt(staticInstanceList.size()));
}
} else if (spannerInstanceId != null) {
this.useStaticInstance = true;
this.instanceId = spannerInstanceId;
Expand All @@ -817,6 +824,17 @@ public Builder maybeUseStaticInstance() {
return this;
}

/**
* Looks at the system properties if there's an instance id, and reuses it if configured.
*
* @return this builder with the instance ID set.
*/
@SuppressWarnings("nullness")
public Builder maybeUseStaticInstance() {
maybeUseStaticInstance(Optional.empty());
return this;
}

/**
* Set the instance ID of a static Spanner instance for this Resource Manager to manage.
*
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,7 @@
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Optional;
import java.util.concurrent.Callable;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
Expand Down Expand Up @@ -113,7 +114,7 @@ public void setUpResourceManagers(String spannerDdlResource, boolean separateSha
testRootDir = getClass().getSimpleName();
spannerResourceManager =
SpannerResourceManager.builder(testName, project, region)
.maybeUseStaticInstance()
.maybeUseStaticInstance(Optional.of(1))
.setNodeCount(10)
.setMonitoringClient(monitoringClient)
.setSuppressVerboseLogs(true)
Expand All @@ -138,7 +139,7 @@ public void setUpResourceManagers(String spannerDdlResource, boolean separateSha
if (separateShadowTableDb) {
shadowTableSpannerResourceManager =
SpannerResourceManager.builder("shadow_" + testName, project, region)
.maybeUseStaticInstance()
.maybeUseStaticInstance(Optional.of(1))
.setNodeCount(10)
.setMonitoringClient(monitoringClient)
.setSuppressVerboseLogs(true)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,7 @@
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Optional;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import java.util.concurrent.TimeUnit;
Expand Down Expand Up @@ -84,7 +85,7 @@ public void setUp() throws IOException {
mySQLResourceManager = MySQLResourceManager.builder(testName).build();
spannerResourceManager =
SpannerResourceManager.builder(testName, project, region)
.maybeUseStaticInstance()
.maybeUseStaticInstance(Optional.of(3))
.setMonitoringClient(monitoringClient)
.build();

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,7 @@
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Optional;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import java.util.concurrent.TimeUnit;
Expand Down Expand Up @@ -94,7 +95,7 @@ public void setUp() throws IOException {

spannerResourceManager =
SpannerResourceManager.builder(testName, project, region)
.maybeUseStaticInstance()
.maybeUseStaticInstance(Optional.of(3))
.setMonitoringClient(monitoringClient)
.build();

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,7 @@
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Optional;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import java.util.concurrent.TimeUnit;
Expand Down Expand Up @@ -79,7 +80,7 @@ public void setUp() throws IOException {
postgresResourceManager = PostgresResourceManager.builder(testName).build();
spannerResourceManager =
SpannerResourceManager.builder(testName, project, region)
.maybeUseStaticInstance()
.maybeUseStaticInstance(Optional.of(3))
.setMonitoringClient(monitoringClient)
.build();

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,7 @@
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Optional;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import java.util.concurrent.TimeUnit;
Expand Down Expand Up @@ -95,7 +96,7 @@ public void setUp() throws IOException {

spannerResourceManager =
SpannerResourceManager.builder(testName, project, region)
.maybeUseStaticInstance()
.maybeUseStaticInstance(Optional.of(3))
.setMonitoringClient(monitoringClient)
.build();

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,7 @@
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Optional;
import java.util.stream.Collectors;
import org.apache.beam.it.common.PipelineLauncher;
import org.apache.beam.it.common.PipelineLauncher.LaunchConfig;
Expand Down Expand Up @@ -111,7 +112,7 @@ public void setUp(

spannerResourceManager =
SpannerResourceManager.builder(testName, project, region)
.maybeUseStaticInstance()
.maybeUseStaticInstance(Optional.of(3))
.setNodeCount(SPANNER_NODE_COUNT)
.setMonitoringClient(monitoringClient)
.build();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,7 @@
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Optional;
import java.util.concurrent.Callable;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
Expand Down Expand Up @@ -84,21 +85,21 @@ public void setUp() throws IOException {

spannerResourceManager =
SpannerResourceManager.builder("rr-main-" + testName, project, region)
.maybeUseStaticInstance()
.maybeUseStaticInstance(Optional.of(2))
.setMonitoringClient(monitoringClient)
.setSuppressVerboseLogs(true)
.build();

spannerMetadataResourceManager =
SpannerResourceManager.builder("rr-meta-" + testName, project, region)
.maybeUseStaticInstance()
.maybeUseStaticInstance(Optional.of(2))
.setSuppressVerboseLogs(true)
.build();
spannerMetadataResourceManager.ensureUsableAndCreateResources();

spannerChangeStreamMetadataResourceManager =
SpannerResourceManager.builder("rr-cs-meta-" + testName, project, region)
.maybeUseStaticInstance()
.maybeUseStaticInstance(Optional.of(2))
.setSuppressVerboseLogs(true)
.build();
Comment thread
pratickchokhani marked this conversation as resolved.
spannerChangeStreamMetadataResourceManager.ensureUsableAndCreateResources();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,7 @@
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Optional;
import java.util.Random;
import org.apache.beam.it.common.PipelineLauncher;
import org.apache.beam.it.common.PipelineLauncher.LaunchConfig;
Expand Down Expand Up @@ -136,7 +137,7 @@ public SpannerResourceManager createSpannerDatabase(String spannerDdlResourceFil
throws IOException {
SpannerResourceManager spannerResourceManager =
SpannerResourceManager.builder("rr-loadtest-" + testName, project, region)
.maybeUseStaticInstance()
.maybeUseStaticInstance(Optional.of(2))
.build();
String ddl =
String.join(
Expand All @@ -161,7 +162,7 @@ public SpannerResourceManager createSpannerMetadataDatabase() throws IOException
if (metadataInstanceId != null && !metadataInstanceId.isEmpty()) {
builder.setInstanceId(metadataInstanceId).useStaticInstance();
} else {
builder.maybeUseStaticInstance();
builder.maybeUseStaticInstance(Optional.of(2));
}

SpannerResourceManager spannerMetadataResourceManager = builder.build();
Expand Down
Loading