首页 > 解决方案 > Helidon 应用程序中的 Db health Ping 子句出现异常

问题描述

我将我的示例应用程序更新到 Helidon SE 2.1,并且有一个用于 DB 健康的 ping 语句:

db:
 statement:
   ping: "select 1" 

我正在使用 Postgres 进行测试。

但它现在不起作用。/health访问端点时出现异常。

{"ErrorClass":"java.util.concurrent.CompletionException",
"ErrorMessage":"org.postgresql.util.PSQLException: A result was returned when none was expected."}

标签: postgresqlhealth-checkhelidon

解决方案


Ping 默认需要 DML 语句。尝试

DbClientHealthCheck.builder(dbClient)
        .query()
        .statementName("ping")
        .build();

初始化健康检查。

此外,这将在 2.3.0 中更改,请参阅https://github.com/oracle/helidon/pull/2656


推荐阅读