Event language
UI language
Logical replication in PostgreSQL is often framed as the solution behind migrations, upgrades, CDC pipelines, or active/active architectures. In reality, it is a lower-level primitive, a general-purpose mechanism for transporting ordered data change.<br><br>This session focuses on recent improvements to logical replication conflict handling, particularly the explicit detection, classification, and observability of conflicts introduced in PostgreSQL 18. Through demos, we show how conflicts that were previously silent or surfaced only as generic apply failures are now visible, structured, and measurable, without changing apply semantics or embedding resolution policy in the core.<br><br>Rather than presenting logical replication as a complete solution, the talk explains why PostgreSQL should intentionally stop short of conflict resolution, and how this boundary enables higher-level tools to implement safe, deterministic behaviour for migrations, blue/green deployments, and active/active systems.<br><br>The session concludes with a look at the direction of future releases, where PostgreSQL continues to strengthen conflict articulation and handling mechanics while leaving decisions and policy to the layers above.