postgresql - 出现异常 : "replication slot "XXX"is active for PID XXX`"on deploying service on kubernetes with RollingUpdate deployment strategy

标签 postgresql kubernetes apache-kafka apache-kafka-connect debezium

我有一个应用程序,它使用 debezium-postgres 连接器从 postgres 发布到 kafka 上的事件。如果 kubernetes 部署策略是“重新创建”,则应用程序工作正常。 但是使用 RollingUpdate 部署策略时抛出异常

  • 异常复制槽“XXX”对于 PID XXX 处于事件状态,因为较旧的 Pod 正在使用相同的复制槽

应用程序正在使用 PGOUTPUT debezium 插件,一些 postgres 配置如下:

max_wal_senders = 4
max_replication_slots = 4
wal_level = logical
wal_receiver_timeout = 300s
wal_sender_timeout = 300s

是否有任何配置可以帮助解决此问题?

最佳答案

您无法使用同一复制槽启动两个 WAL 发送进程。

如果您需要两个客户端来运行逻辑解码,请创建两个复制槽。否则,请确保在连接之前停止任何使用复制槽的客户端。

关于postgresql - 出现异常 : "replication slot "XXX"is active for PID XXX`"on deploying service on kubernetes with RollingUpdate deployment strategy,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66029887/

相关文章:

database - 数据库如何在更快的磁盘上获得更差的基准测试结果?

docker - Kubernetes 负载均衡器外部 IP 待定

java - docker环境下spring boot外部配置: application. yml不存在

连接包含 Java HashMap 对象的 Kafka 流

apache-kafka - Kafka如何保证零停机和零数据丢失?

javascript - Kafka-node 连接到 kafka 的本地实例,但未连接到远程 kafka 服务器

postgresql - 如何在 Odoo 8 中创建 One2one 关系?

sql - 使用每行返回两个值的函数插入

sql - IS FALSE 和 = 'f' 在 Postgres 和索引使用中的区别

kubernetes - 在kubernetes部署中配置Varnish后端