public static void transactionProber()

in cloudprober/src/main/java/com/google/grpc/cloudprober/SpannerProbes.java [210:244]


  public static void transactionProber(
      SpannerGrpc.SpannerBlockingStub stub) {
    Session session = null;
    try {
      session = stub.createSession(CreateSessionRequest.newBuilder().setDatabase(DATABASE).build());
      // Probing begin transaction call.
      TransactionOptions options =
          TransactionOptions.newBuilder()
              .setReadWrite(TransactionOptions.ReadWrite.getDefaultInstance())
              .build();
      BeginTransactionRequest request =
          BeginTransactionRequest.newBuilder()
              .setSession(session.getName())
              .setOptions(options)
              .build();
      Transaction txn = stub.beginTransaction(request);

      // Probing commit call.
      stub.commit(
          CommitRequest.newBuilder()
              .setSession(session.getName())
              .setTransactionId(txn.getId())
              .build());

      // Probing rollback call.
      txn = stub.beginTransaction(request);
      stub.rollback(
          RollbackRequest.newBuilder()
              .setSession(session.getName())
              .setTransactionId(txn.getId())
              .build());
    } finally {
      deleteSession(stub, session);
    }
  }