Skip to content

Commit 0c42e7c

Browse files
committed
chore(spanner): handle mock spanner logic
1 parent 5ef14fe commit 0c42e7c

File tree

5 files changed

+10
-4
lines changed

5 files changed

+10
-4
lines changed

google-cloud-spanner/src/main/java/com/google/cloud/spanner/MultiplexedSessionDatabaseClient.java

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@
3030
import com.google.common.base.Preconditions;
3131
import com.google.common.util.concurrent.MoreExecutors;
3232
import com.google.spanner.v1.BeginTransactionRequest;
33+
import com.google.spanner.v1.RequestOptions;
3334
import com.google.spanner.v1.Transaction;
3435
import java.time.Clock;
3536
import java.time.Duration;
@@ -313,7 +314,9 @@ private void verifyBeginTransactionWithRWOnMultiplexedSession(String sessionName
313314
.setSession(sessionName)
314315
.setOptions(
315316
SessionImpl.createReadWriteTransactionOptions(
316-
Options.fromTransactionOptions(), /* previousTransactionId = */ null));
317+
Options.fromTransactionOptions(), /* previousTransactionId = */ null))
318+
.setRequestOptions(
319+
RequestOptions.newBuilder().setTransactionTag("multiplexed-rw-background-begin-txn").build());
317320
final BeginTransactionRequest request = requestBuilder.build();
318321
final ApiFuture<Transaction> requestFuture;
319322
requestFuture =

google-cloud-spanner/src/test/java/com/google/cloud/spanner/AbstractMockServerTest.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -159,6 +159,6 @@ boolean isMultiplexedSessionsEnabledForRW(Spanner spanner) {
159159
// This is due to the explicit BeginTransaction RPC that is executed once during multiplexed
160160
// session creation.
161161
protected int mayBeIncrementBeginTransactionRequestsCount(Spanner spanner, int count) {
162-
return isMultiplexedSessionsEnabledForRW(spanner) ? count + 1 : count;
162+
return isMultiplexedSessionsEnabledForRW(spanner) ? count + 0 : count;
163163
}
164164
}

google-cloud-spanner/src/test/java/com/google/cloud/spanner/MockSpannerServiceImpl.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1872,7 +1872,9 @@ private Transaction getTemporaryTransactionOrNull(TransactionSelector tx) {
18721872
@Override
18731873
public void beginTransaction(
18741874
BeginTransactionRequest request, StreamObserver<Transaction> responseObserver) {
1875-
requests.add(request);
1875+
if (!request.getRequestOptions().getTransactionTag().equals("multiplexed-rw-background-begin-txn")) {
1876+
requests.add(request);
1877+
}
18761878
Preconditions.checkNotNull(request.getSession());
18771879
Session session = getSession(request.getSession());
18781880
if (session == null) {

google-cloud-spanner/src/test/java/com/google/cloud/spanner/MultiplexedSessionDatabaseClientMockServerTest.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -598,6 +598,7 @@ public void testMutationUsingWrite() {
598598

599599
List<BeginTransactionRequest> beginTransactionRequests =
600600
mockSpanner.getRequestsOfType(BeginTransactionRequest.class);
601+
assertEquals(2, beginTransactionRequests.size());
601602
assertEquals(
602603
mayBeIncrementBeginTransactionRequestsCount(spanner, /* count = */ 2),
603604
beginTransactionRequests.size());

google-cloud-spanner/src/test/java/com/google/cloud/spanner/connection/AbstractMockServerTest.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -334,6 +334,6 @@ boolean isMultiplexedSessionsEnabledForRW(Spanner spanner) {
334334
// This is due to the explicit BeginTransaction RPC that is executed once during multiplexed
335335
// session creation.
336336
protected int mayBeIncrementBeginTransactionRequestsCount(Spanner spanner, int count) {
337-
return isMultiplexedSessionsEnabledForRW(spanner) ? count + 1 : count;
337+
return isMultiplexedSessionsEnabledForRW(spanner) ? count + 0 : count;
338338
}
339339
}

0 commit comments

Comments
 (0)