in cloudprober/src/main/java/com/google/grpc/cloudprober/SpannerProbes.java [247:279]
public static void partitionProber(
SpannerGrpc.SpannerBlockingStub stub) {
Session session = null;
try {
session = stub.createSession(CreateSessionRequest.newBuilder().setDatabase(DATABASE).build());
// Probing partition query call.
TransactionOptions options =
TransactionOptions.newBuilder()
.setReadOnly(TransactionOptions.ReadOnly.getDefaultInstance())
.build();
TransactionSelector selector = TransactionSelector.newBuilder().setBegin(options).build();
stub.partitionQuery(
PartitionQueryRequest.newBuilder()
.setSession(session.getName())
.setSql("select * FROM " + TABLE)
.setTransaction(selector)
.build());
// Probing partition read call.
stub.partitionRead(
PartitionReadRequest.newBuilder()
.setSession(session.getName())
.setTable(TABLE)
.setTransaction(selector)
.setKeySet(KeySet.newBuilder().setAll(true).build())
.addColumns("username")
.addColumns("firstname")
.addColumns("lastname")
.build());
} finally {
deleteSession(stub, session);
}
}