从副本读取时数据库连接失败

时间:2020-03-03 12:03:51

标签: postgresql apache-kafka-connect debezium

我正在使用kafka源连接器从RDS Aurora Postgres捕获CDC。收到此错误。 如果有人知道此问题,请提供帮助。

Caused by: org.postgresql.util.PSQLException: Database connection failed when reading from copy
    at org.postgresql.core.v3.QueryExecutorImpl.readFromCopy(QueryExecutorImpl.java:1074)
    at org.postgresql.core.v3.CopyDualImpl.readFromCopy(CopyDualImpl.java:37)
    at org.postgresql.core.v3.replication.V3PGReplicationStream.receiveNextData(V3PGReplicationStream.java:158)
    at org.postgresql.core.v3.replication.V3PGReplicationStream.readInternal(V3PGReplicationStream.java:123)
    at org.postgresql.core.v3.replication.V3PGReplicationStream.readPending(V3PGReplicationStream.java:80)
    at io.debezium.connector.postgresql.connection.PostgresReplicationConnection$1.readPending(PostgresReplicationConnection.java:397)
    at io.debezium.connector.postgresql.PostgresStreamingChangeEventSource.execute(PostgresStreamingChangeEventSource.java:119)
    at io.debezium.pipeline.ChangeEventSourceCoordinator.lambda$start$0(ChangeEventSourceCoordinator.java:99)
    ... 5 more 
Caused by: java.net.SocketException: Socket is closed
    at java.base/java.net.Socket.setSoTimeout(Socket.java:1155)
    at java.base/sun.security.ssl.BaseSSLSocketImpl.setSoTimeout(BaseSSLSocketImpl.java:639)
    at java.base/sun.security.ssl.SSLSocketImpl.setSoTimeout(SSLSocketImpl.java:73)
    at org.postgresql.core.PGStream.setNetworkTimeout(PGStream.java:589)
    at org.postgresql.core.PGStream.hasMessagePending(PGStream.java:139)
    at org.postgresql.core.v3.QueryExecutorImpl.processCopyResults(QueryExecutorImpl.java:1109)
    at org.postgresql.core.v3.QueryExecutorImpl.readFromCopy(QueryExecutorImpl.java:1072)
    ... 12 more

2 个答案:

答案 0 :(得分:0)

在这些情况下https://debezium.io/blog/2020/03/13/debezium-1-1-c1-released/

,Debezium 1.1.0.CR1已经可以处理自动重新连接。

答案 1 :(得分:0)

是的,Jiri Pechanec。实际上问题出在debezium版本上。如果由于某些临时问题而失去连接,则较旧的版本不支持Postgres自动连接功能。现在,新版本的debezium(1.1.0)支持自动连接功能。

相关问题