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);
});
}
});
}