@@ -83,6 +83,8 @@ public void testTransactionMutationLimitExceeded_isNotRetriedByDefault() {
8383 assertEquals (0 , exception .getSuppressed ().length );
8484 }
8585 assertEquals (1 , mockSpanner .countRequestsOfType (ExecuteSqlRequest .class ));
86+ ExecuteSqlRequest request = mockSpanner .getRequestsOfType (ExecuteSqlRequest .class ).get (0 );
87+ assertTrue (request .getLastStatement ());
8688 assertEquals (0 , mockSpanner .countRequestsOfType (CommitRequest .class ));
8789 }
8890
@@ -108,6 +110,7 @@ public void testTransactionMutationLimitExceeded_canBeRetriedAsPDML() {
108110 ExecuteSqlRequest transactionalRequest =
109111 mockSpanner .getRequestsOfType (ExecuteSqlRequest .class ).get (0 );
110112 assertTrue (transactionalRequest .getTransaction ().getBegin ().hasReadWrite ());
113+ assertTrue (transactionalRequest .getLastStatement ());
111114
112115 // Partitioned DML uses an explicit BeginTransaction RPC.
113116 assertEquals (1 , mockSpanner .countRequestsOfType (BeginTransactionRequest .class ));
@@ -117,6 +120,7 @@ public void testTransactionMutationLimitExceeded_canBeRetriedAsPDML() {
117120 ExecuteSqlRequest partitionedDmlRequest =
118121 mockSpanner .getRequestsOfType (ExecuteSqlRequest .class ).get (1 );
119122 assertTrue (partitionedDmlRequest .getTransaction ().hasId ());
123+ assertFalse (partitionedDmlRequest .getLastStatement ());
120124
121125 // Partitioned DML transactions are not committed.
122126 assertEquals (0 , mockSpanner .countRequestsOfType (CommitRequest .class ));
@@ -163,6 +167,7 @@ public void testTransactionMutationLimitExceeded_retryAsPDMLFails() {
163167 ExecuteSqlRequest transactionalRequest =
164168 mockSpanner .getRequestsOfType (ExecuteSqlRequest .class ).get (0 );
165169 assertTrue (transactionalRequest .getTransaction ().getBegin ().hasReadWrite ());
170+ assertTrue (transactionalRequest .getLastStatement ());
166171
167172 // Partitioned DML uses an explicit BeginTransaction RPC.
168173 assertEquals (1 , mockSpanner .countRequestsOfType (BeginTransactionRequest .class ));
@@ -172,6 +177,7 @@ public void testTransactionMutationLimitExceeded_retryAsPDMLFails() {
172177 ExecuteSqlRequest partitionedDmlRequest =
173178 mockSpanner .getRequestsOfType (ExecuteSqlRequest .class ).get (1 );
174179 assertTrue (partitionedDmlRequest .getTransaction ().hasId ());
180+ assertFalse (partitionedDmlRequest .getLastStatement ());
175181
176182 // Partitioned DML transactions are not committed.
177183 assertEquals (0 , mockSpanner .countRequestsOfType (CommitRequest .class ));
0 commit comments