Mono healthCheck()

in cloud-spanner-r2dbc/src/main/java/com/google/cloud/spanner/r2dbc/v2/DatabaseClientReactiveAdapter.java [168:183]


  Mono<Boolean> healthCheck() {
    return Mono.defer(() -> {
      if (!this.active || this.spannerClient.isClosed()) {
        return Mono.just(false);
      } else {
        return Flux.<SpannerClientLibraryRow>create(sink -> {
          Statement statement = Statement.newBuilder("SELECT 1").build();
          runSelectStatementAsFlux(this.dbClient.singleUse(), statement, sink);
        }).then(Mono.just(true))
            .onErrorResume(error -> {
              LOGGER.warn("Cloud Spanner healthcheck failed", error);
              return Mono.just(false);
            });
      }
    });
  }