PostgreSQL 19引入了序列同步功能,解决了逻辑复制中序列状态未复制的问题。用户可以通过pg_createsubscriber和pg_upgrade工具实现几乎零停机的升级,确保序列值与数据一致,避免重复键值。用户需在重定向写入前执行ALTER SUBSCRIPTION ... REFRESH SEQUENCES,以确保序列安全同步。这一改进显著提升了在线升级的可靠性。
Postgres 19 解决了逻辑复制中序列未同步的问题,允许在创建和刷新订阅时同步序列值,简化了迁移过程,减少了手动干预。这一改进对数据库迁移和版本升级至关重要。
本文回顾了2025年11月的CommitFest,介绍了PostgreSQL 19中的新优化和功能,包括查询计划改进、序列同步、逻辑复制和内存管理。这些新参数和功能提升了查询性能和数据一致性,简化了开发者的工作流程。
2025年10月9日,Amit Kapila提交补丁,支持在发布中添加“所有序列”,以便于同步和升级。11月5日,他又提交了序列同步补丁,新增INIT和READY状态,通过创建和修改订阅命令实现序列同步,提高逻辑复制效率。
RevenueCat从AWS Aurora Postgres 10迁移到14,期间遇到了一次为期五小时的停机。尽管他们进行了详细的计划和努力,但仍然出现了一些问题。他们成功地执行了大量的计划,创建了一个并行集群,并预热了Postgres缓存。然而,由于新集群缺少ANALYZE和序列同步的问题,他们遇到了困难。他们可以通过确保正确的ANALYZE和复制所有序列来避免这些问题。此外,RevenueCat应该提前进行迁移,以避免在更新方面落后。总体而言,他们从这次经历中学到了很多,并应考虑在未来的升级中咨询Postgres专家。
完成下面两步后,将自动完成登录并继续当前操作。