@@ -2920,16 +2920,16 @@ public void testPartitionedDmlDoesNotTimeout() {
29202920 XGoogSpannerRequestIdTest .MethodAndRequestId [] wantUnaryValues = {
29212921 XGoogSpannerRequestIdTest .ofMethodAndRequestId (
29222922 "google.spanner.v1.Spanner/BatchCreateSessions" ,
2923- new XGoogSpannerRequestId (dbId , 0 , XGoogSpannerRequestIdTest .UNNECESSARY , 1 )),
2923+ new XGoogSpannerRequestId (dbId , 0 , XGoogSpannerRequestIdTest .NON_DETERMINISTIC , 1 )),
29242924 XGoogSpannerRequestIdTest .ofMethodAndRequestId (
29252925 "google.spanner.v1.Spanner/BatchCreateSessions" ,
2926- new XGoogSpannerRequestId (dbId , 1 , XGoogSpannerRequestIdTest .UNNECESSARY , 1 )),
2926+ new XGoogSpannerRequestId (dbId , 1 , XGoogSpannerRequestIdTest .NON_DETERMINISTIC , 1 )),
29272927 XGoogSpannerRequestIdTest .ofMethodAndRequestId (
29282928 "google.spanner.v1.Spanner/BatchCreateSessions" ,
2929- new XGoogSpannerRequestId (dbId , 2 , XGoogSpannerRequestIdTest .UNNECESSARY , 1 )),
2929+ new XGoogSpannerRequestId (dbId , 2 , XGoogSpannerRequestIdTest .NON_DETERMINISTIC , 1 )),
29302930 XGoogSpannerRequestIdTest .ofMethodAndRequestId (
29312931 "google.spanner.v1.Spanner/BatchCreateSessions" ,
2932- new XGoogSpannerRequestId (dbId , 3 , XGoogSpannerRequestIdTest .UNNECESSARY , 1 )),
2932+ new XGoogSpannerRequestId (dbId , 3 , XGoogSpannerRequestIdTest .NON_DETERMINISTIC , 1 )),
29332933 XGoogSpannerRequestIdTest .ofMethodAndRequestId (
29342934 "google.spanner.v1.Spanner/BeginTransaction" ,
29352935 new XGoogSpannerRequestId (dbId , channelId , 6 , 1 )),
@@ -2972,6 +2972,36 @@ public void testPartitionedDmlWithLowerTimeout() {
29722972 .readWriteTransaction ()
29732973 .run (transaction -> transaction .executeUpdate (UPDATE_STATEMENT ));
29742974 assertThat (updateCount ).isEqualTo (UPDATE_COUNT );
2975+
2976+ DatabaseClientImpl dbImpl = ((DatabaseClientImpl ) client );
2977+ int channelId = dbImpl .getSession ().getChannel ();
2978+ int dbId = dbImpl .dbId ;
2979+ XGoogSpannerRequestIdTest .MethodAndRequestId [] wantStreamingValues = {};
2980+ xGoogReqIdInterceptor .checkExpectedStreamingXGoogRequestIds (wantStreamingValues );
2981+
2982+ XGoogSpannerRequestIdTest .MethodAndRequestId [] wantUnaryValues = {
2983+ XGoogSpannerRequestIdTest .ofMethodAndRequestId (
2984+ "google.spanner.v1.Spanner/BatchCreateSessions" ,
2985+ new XGoogSpannerRequestId (dbId , 0 , XGoogSpannerRequestIdTest .NON_DETERMINISTIC , 1 )),
2986+ XGoogSpannerRequestIdTest .ofMethodAndRequestId (
2987+ "google.spanner.v1.Spanner/BatchCreateSessions" ,
2988+ new XGoogSpannerRequestId (dbId , 1 , XGoogSpannerRequestIdTest .NON_DETERMINISTIC , 1 )),
2989+ XGoogSpannerRequestIdTest .ofMethodAndRequestId (
2990+ "google.spanner.v1.Spanner/BatchCreateSessions" ,
2991+ new XGoogSpannerRequestId (dbId , 2 , XGoogSpannerRequestIdTest .NON_DETERMINISTIC , 1 )),
2992+ XGoogSpannerRequestIdTest .ofMethodAndRequestId (
2993+ "google.spanner.v1.Spanner/BatchCreateSessions" ,
2994+ new XGoogSpannerRequestId (dbId , 3 , XGoogSpannerRequestIdTest .NON_DETERMINISTIC , 1 )),
2995+ XGoogSpannerRequestIdTest .ofMethodAndRequestId (
2996+ "google.spanner.v1.Spanner/BeginTransaction" ,
2997+ new XGoogSpannerRequestId (dbId , channelId , 6 , 1 )),
2998+ XGoogSpannerRequestIdTest .ofMethodAndRequestId (
2999+ "google.spanner.v1.Spanner/Commit" , new XGoogSpannerRequestId (dbId , channelId , 8 , 1 )),
3000+ XGoogSpannerRequestIdTest .ofMethodAndRequestId (
3001+ "google.spanner.v1.Spanner/ExecuteSql" ,
3002+ new XGoogSpannerRequestId (dbId , channelId , 7 , 1 )),
3003+ };
3004+ xGoogReqIdInterceptor .checkExpectedUnaryXGoogRequestIds (wantUnaryValues );
29753005 }
29763006 }
29773007
@@ -3020,6 +3050,39 @@ public void testPartitionedDmlWithHigherTimeout() {
30203050 .run (transaction -> transaction .executeUpdate (UPDATE_STATEMENT )));
30213051 assertThat (e .getErrorCode ()).isEqualTo (ErrorCode .DEADLINE_EXCEEDED );
30223052 assertThat (updateCount ).isEqualTo (UPDATE_COUNT );
3053+
3054+ DatabaseClientImpl dbImpl = ((DatabaseClientImpl ) client );
3055+ int channelId = dbImpl .getSession ().getChannel ();
3056+ int dbId = dbImpl .dbId ;
3057+ XGoogSpannerRequestIdTest .MethodAndRequestId [] wantStreamingValues = {
3058+ XGoogSpannerRequestIdTest .ofMethodAndRequestId (
3059+ "google.spanner.v1.Spanner/ExecuteStreamingSql" ,
3060+ new XGoogSpannerRequestId (dbId , channelId , 5 , 1 )),
3061+ };
3062+
3063+ xGoogReqIdInterceptor .checkExpectedStreamingXGoogRequestIds (wantStreamingValues );
3064+
3065+ XGoogSpannerRequestIdTest .MethodAndRequestId [] wantUnaryValues = {
3066+ XGoogSpannerRequestIdTest .ofMethodAndRequestId (
3067+ "google.spanner.v1.Spanner/BatchCreateSessions" ,
3068+ new XGoogSpannerRequestId (dbId , 0 , XGoogSpannerRequestIdTest .NON_DETERMINISTIC , 1 )),
3069+ XGoogSpannerRequestIdTest .ofMethodAndRequestId (
3070+ "google.spanner.v1.Spanner/BatchCreateSessions" ,
3071+ new XGoogSpannerRequestId (dbId , 1 , XGoogSpannerRequestIdTest .NON_DETERMINISTIC , 1 )),
3072+ XGoogSpannerRequestIdTest .ofMethodAndRequestId (
3073+ "google.spanner.v1.Spanner/BatchCreateSessions" ,
3074+ new XGoogSpannerRequestId (dbId , 2 , XGoogSpannerRequestIdTest .NON_DETERMINISTIC , 1 )),
3075+ XGoogSpannerRequestIdTest .ofMethodAndRequestId (
3076+ "google.spanner.v1.Spanner/BatchCreateSessions" ,
3077+ new XGoogSpannerRequestId (dbId , 3 , XGoogSpannerRequestIdTest .NON_DETERMINISTIC , 1 )),
3078+ XGoogSpannerRequestIdTest .ofMethodAndRequestId (
3079+ "google.spanner.v1.Spanner/BeginTransaction" ,
3080+ new XGoogSpannerRequestId (dbId , channelId , 6 , 1 )),
3081+ XGoogSpannerRequestIdTest .ofMethodAndRequestId (
3082+ "google.spanner.v1.Spanner/ExecuteSql" ,
3083+ new XGoogSpannerRequestId (dbId , channelId , 7 , 1 )),
3084+ };
3085+ xGoogReqIdInterceptor .checkExpectedUnaryXGoogRequestIds (wantUnaryValues );
30233086 }
30243087 }
30253088
@@ -3037,6 +3100,36 @@ public void testPartitionedDmlRetriesOnUnavailable() {
30373100 spanner .getDatabaseClient (DatabaseId .of (TEST_PROJECT , TEST_INSTANCE , TEST_DATABASE ));
30383101 long updateCount = client .executePartitionedUpdate (UPDATE_STATEMENT );
30393102 assertThat (updateCount ).isEqualTo (UPDATE_COUNT );
3103+
3104+ DatabaseClientImpl dbImpl = ((DatabaseClientImpl ) client );
3105+ int channelId = dbImpl .getSession ().getChannel ();
3106+ int dbId = dbImpl .dbId ;
3107+ XGoogSpannerRequestIdTest .MethodAndRequestId [] wantStreamingValues = {
3108+ XGoogSpannerRequestIdTest .ofMethodAndRequestId (
3109+ "google.spanner.v1.Spanner/ExecuteStreamingSql" ,
3110+ new XGoogSpannerRequestId (dbId , channelId , 5 , 1 )),
3111+ };
3112+
3113+ xGoogReqIdInterceptor .checkExpectedStreamingXGoogRequestIds (wantStreamingValues );
3114+
3115+ XGoogSpannerRequestIdTest .MethodAndRequestId [] wantUnaryValues = {
3116+ XGoogSpannerRequestIdTest .ofMethodAndRequestId (
3117+ "google.spanner.v1.Spanner/BatchCreateSessions" ,
3118+ new XGoogSpannerRequestId (dbId , 0 , XGoogSpannerRequestIdTest .NON_DETERMINISTIC , 1 )),
3119+ XGoogSpannerRequestIdTest .ofMethodAndRequestId (
3120+ "google.spanner.v1.Spanner/BatchCreateSessions" ,
3121+ new XGoogSpannerRequestId (dbId , 1 , XGoogSpannerRequestIdTest .NON_DETERMINISTIC , 1 )),
3122+ XGoogSpannerRequestIdTest .ofMethodAndRequestId (
3123+ "google.spanner.v1.Spanner/BatchCreateSessions" ,
3124+ new XGoogSpannerRequestId (dbId , 2 , XGoogSpannerRequestIdTest .NON_DETERMINISTIC , 1 )),
3125+ XGoogSpannerRequestIdTest .ofMethodAndRequestId (
3126+ "google.spanner.v1.Spanner/BatchCreateSessions" ,
3127+ new XGoogSpannerRequestId (dbId , 3 , XGoogSpannerRequestIdTest .NON_DETERMINISTIC , 1 )),
3128+ XGoogSpannerRequestIdTest .ofMethodAndRequestId (
3129+ "google.spanner.v1.Spanner/BeginTransaction" ,
3130+ new XGoogSpannerRequestId (dbId , channelId , 6 , 1 )),
3131+ };
3132+ xGoogReqIdInterceptor .checkExpectedUnaryXGoogRequestIds (wantUnaryValues );
30403133 }
30413134 }
30423135
@@ -3444,6 +3537,31 @@ public void testNestedTransactionsUsingTwoDatabases() throws InterruptedExceptio
34443537 // All sessions should now be checked back in to the pools.
34453538 assertThat (client1 .pool .getNumberOfSessionsInPool ()).isEqualTo (minSessions );
34463539 assertThat (client2 .pool .getNumberOfSessionsInPool ()).isEqualTo (minSessions );
3540+
3541+ int channelId = client1 .getSession ().getChannel ();
3542+ int dbId = client1 .dbId ;
3543+ XGoogSpannerRequestIdTest .MethodAndRequestId [] wantStreamingValues = {};
3544+
3545+ xGoogReqIdInterceptor .checkExpectedStreamingXGoogRequestIds (wantStreamingValues );
3546+
3547+ XGoogSpannerRequestIdTest .MethodAndRequestId [] wantUnaryValues = {
3548+ XGoogSpannerRequestIdTest .ofMethodAndRequestId (
3549+ "google.spanner.v1.Spanner/BatchCreateSessions" ,
3550+ new XGoogSpannerRequestId (dbId , 0 , XGoogSpannerRequestIdTest .NON_DETERMINISTIC , 1 )),
3551+ XGoogSpannerRequestIdTest .ofMethodAndRequestId (
3552+ "google.spanner.v1.Spanner/BatchCreateSessions" ,
3553+ new XGoogSpannerRequestId (dbId , 1 , XGoogSpannerRequestIdTest .NON_DETERMINISTIC , 1 )),
3554+ XGoogSpannerRequestIdTest .ofMethodAndRequestId (
3555+ "google.spanner.v1.Spanner/BatchCreateSessions" ,
3556+ new XGoogSpannerRequestId (dbId , 2 , XGoogSpannerRequestIdTest .NON_DETERMINISTIC , 1 )),
3557+ XGoogSpannerRequestIdTest .ofMethodAndRequestId (
3558+ "google.spanner.v1.Spanner/BatchCreateSessions" ,
3559+ new XGoogSpannerRequestId (dbId , 3 , XGoogSpannerRequestIdTest .NON_DETERMINISTIC , 1 )),
3560+ XGoogSpannerRequestIdTest .ofMethodAndRequestId (
3561+ "google.spanner.v1.Spanner/BeginTransaction" ,
3562+ new XGoogSpannerRequestId (dbId , channelId , 6 , 1 )),
3563+ };
3564+ xGoogReqIdInterceptor .checkExpectedUnaryXGoogRequestIds (wantUnaryValues );
34473565 }
34483566
34493567 @ Test
@@ -5172,7 +5290,6 @@ public <ReqT, RespT> ApiCallContext configure(
51725290
51735291 @ Test
51745292 public void testRetryOnResourceExhausted () {
5175- // MARK: Retries here.
51765293 final RetrySettings retrySettings =
51775294 RetrySettings .newBuilder ()
51785295 .setInitialRpcTimeoutDuration (Duration .ofSeconds (60L ))
@@ -5255,6 +5372,26 @@ public void testRetryOnResourceExhausted() {
52555372 }
52565373 }
52575374
5375+ DatabaseClientImpl dbClient = (DatabaseClientImpl ) client ;
5376+ int channelId = dbClient .getSession ().getChannel ();
5377+ int dbId = dbClient .dbId ;
5378+ XGoogSpannerRequestIdTest .MethodAndRequestId [] wantStreamingValues = {
5379+ XGoogSpannerRequestIdTest .ofMethodAndRequestId (
5380+ "google.spanner.v1.Spanner/ExecuteStreamingSql" ,
5381+ new XGoogSpannerRequestId (dbId , 1 , 5 , 1 )),
5382+ };
5383+ xGoogReqIdInterceptor .checkExpectedStreamingXGoogRequestIds (wantStreamingValues );
5384+
5385+ XGoogSpannerRequestIdTest .MethodAndRequestId [] wantUnaryValues = {
5386+ XGoogSpannerRequestIdTest .ofMethodAndRequestId (
5387+ "google.spanner.v1.Spanner/BatchCreateSessions" ,
5388+ new XGoogSpannerRequestId (dbId , 0 , XGoogSpannerRequestIdTest .NON_DETERMINISTIC , 1 )),
5389+ XGoogSpannerRequestIdTest .ofMethodAndRequestId (
5390+ "google.spanner.v1.Spanner/BatchCreateSessions" ,
5391+ new XGoogSpannerRequestId (dbId , 1 , XGoogSpannerRequestIdTest .NON_DETERMINISTIC , 1 )),
5392+ };
5393+ xGoogReqIdInterceptor .checkExpectedUnaryXGoogRequestIds (wantUnaryValues );
5394+
52585395 xGoogReqIdInterceptor .assertIntegrity ();
52595396 }
52605397 }
@@ -5319,7 +5456,8 @@ public void testSessionPoolExhaustedError_containsStackTraces() {
53195456 spannerException .getMessage (),
53205457 spannerException .getMessage ().contains ("Session was checked out from the pool at" ));
53215458
5322- SessionPool pool = ((DatabaseClientImpl ) client ).pool ;
5459+ DatabaseClientImpl dbClient = (DatabaseClientImpl ) client ;
5460+ SessionPool pool = dbClient .pool ;
53235461 // Verify that there are no sessions in the pool.
53245462 assertEquals (0 , pool .getNumberOfSessionsInPool ());
53255463 // Verify that the sessions have not (yet) been marked as in use.
@@ -5347,6 +5485,22 @@ public void testSessionPoolExhaustedError_containsStackTraces() {
53475485 }
53485486 // Closing the transactions should return the sessions to the pool.
53495487 assertEquals (4 , pool .getNumberOfSessionsInPool ());
5488+
5489+ int channelId = dbClient .getSession ().getChannel ();
5490+ int dbId = dbClient .dbId ;
5491+ XGoogSpannerRequestIdTest .MethodAndRequestId [] wantStreamingValues = {};
5492+
5493+ xGoogReqIdInterceptor .checkExpectedStreamingXGoogRequestIds (wantStreamingValues );
5494+
5495+ XGoogSpannerRequestIdTest .MethodAndRequestId [] wantUnaryValues = {
5496+ XGoogSpannerRequestIdTest .ofMethodAndRequestId (
5497+ "google.spanner.v1.Spanner/BatchCreateSessions" ,
5498+ new XGoogSpannerRequestId (dbId , 0 , XGoogSpannerRequestIdTest .NON_DETERMINISTIC , 1 )),
5499+ XGoogSpannerRequestIdTest .ofMethodAndRequestId (
5500+ "google.spanner.v1.Spanner/BatchCreateSessions" ,
5501+ new XGoogSpannerRequestId (dbId , 1 , XGoogSpannerRequestIdTest .NON_DETERMINISTIC , 1 )),
5502+ };
5503+ xGoogReqIdInterceptor .checkExpectedUnaryXGoogRequestIds (wantUnaryValues );
53505504 }
53515505 }
53525506
0 commit comments