Skip to content

Commit 9675491

Browse files
committed
Shutdown writer after transaction commit
1 parent 2846f15 commit 9675491

File tree

1 file changed

+6
-1
lines changed

1 file changed

+6
-1
lines changed

ydb-cookbook/src/main/java/tech/ydb/examples/topic/transactions/TransactionWriteSync.java

+6-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
package tech.ydb.examples.topic.transactions;
22

3+
import java.util.concurrent.CompletableFuture;
34
import java.util.concurrent.ExecutionException;
45
import java.util.concurrent.TimeUnit;
56
import java.util.concurrent.TimeoutException;
@@ -8,6 +9,7 @@
89
import org.slf4j.LoggerFactory;
910
import tech.ydb.common.transaction.TxMode;
1011
import tech.ydb.core.Result;
12+
import tech.ydb.core.Status;
1113
import tech.ydb.core.grpc.GrpcTransport;
1214
import tech.ydb.examples.SimpleExample;
1315
import tech.ydb.query.QueryClient;
@@ -108,6 +110,9 @@ private void tableAndTopicWithinTransaction(TopicClient topicClient, QueryClient
108110
// flush to wait until the message will reach the server before committing transaction
109111
writer.flush();
110112

113+
// Commit transaction
114+
CompletableFuture<Status> commitStatus = transaction.commit().thenApply(Result::getStatus);
115+
111116
// Shutdown writer
112117
try {
113118
writer.shutdown(SHUTDOWN_TIMEOUT_SECONDS, TimeUnit.SECONDS);
@@ -119,7 +124,7 @@ private void tableAndTopicWithinTransaction(TopicClient topicClient, QueryClient
119124
}
120125

121126
// Return commit status to SessionRetryContext function
122-
return transaction.commit().thenApply(Result::getStatus);
127+
return commitStatus;
123128
}).join().expectSuccess("Couldn't read from table and write to topic in transaction");
124129
}
125130

0 commit comments

Comments
 (0)