0

我尝试在 WSO2 SI 的 deployment.yaml 中设置一个数据源连接到 MySQL,以便我可以在我的 Siddhi 应用程序中使用它。它正常工作,但是当我重新启动 MySQL 时,数据源无法重新连接到数据库,因此我的 Siddhi 应用程序出现以下错误。

如何配置数据源以便在数据库重新启动后自动重新连接。

谢谢你,龙。

[2020-11-12 19:32:43,627] ERROR {io.siddhi.extension.io.cdc.source.polling.strategies.DefaultPollingStrategy} - Error occurred while processing records in table SweetProductionTable. {mode=polling, app=CDCWithPollingMode, stream=insertSweetProductionStream} java.sql.SQLException: Connection is closed
    at com.zaxxer.hikari.pool.ProxyConnection$ClosedConnection.lambda$getClosedConnection$0(ProxyConnection.java:493)
    at com.sun.proxy.$Proxy73.prepareStatement(Unknown Source)
    at com.zaxxer.hikari.pool.ProxyConnection.prepareStatement(ProxyConnection.java:315)
    at com.zaxxer.hikari.pool.HikariProxyConnection.prepareStatement(HikariProxyConnection.java)
    at io.siddhi.extension.io.cdc.source.polling.strategies.DefaultPollingStrategy.printEvent(DefaultPollingStrategy.java:142)
    at io.siddhi.extension.io.cdc.source.polling.strategies.DefaultPollingStrategy.poll(DefaultPollingStrategy.java:86)
    at io.siddhi.extension.io.cdc.source.polling.CDCPoller.run(CDCPoller.java:202)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
    at java.lang.Thread.run(Thread.java:748)
4

2 回答 2

1

这是 siddhi-io-cdc 的错误。具有 CDC 轮询模式的 Siddhi 应用程序在源数据库重新启动时出错。这些故障是由 DefaultPollingStrategy 类中的 bug 导致的,printEvent(connection) 使用前没有验证连接,必须先 getConnection()。

于 2020-11-17T12:02:40.940 回答
0

在mysql连接URL的末尾可以添加以下内容

&autoReconnect=true

例如:

jdbc:mysql://localhost:3306/wso2_api_stat_alt?useSSL=false&ampautoReconnect=true
于 2020-11-13T07:35:33.120 回答