liveBook · Manning

Partition tolerance

As explained in PostgreSQL Mistakes and How to Avoid Them

Partition tolerance is the ability of a distributed system to continue operating despite dropped or delayed network messages.

Partition tolerance means continuing despite dropped or delayed network messages. It forces distributed systems to trade consistency against availability during partitions, while PACELC adds latency versus consistency when networks are healthy. section 5.5

The multi-master replication trap

Bidirectional PostgreSQL logical replication can look healthy: both nodes display the same tickets. But independent identity generation can assign an existing ID, producing a duplicate-key error. Renaming opened_at on one node then causes the replication worker to stop because the replicated column is missing. High availability therefore requires explicit compromises around consistency, schema coordination, and operational complexity. section 5.5

Figure 5.2 Logical replication in both directions
figure

Use the bidirectional replication diagram to trace how independent PostgreSQL instances exchange changes and where partition-related conflicts can arise. section 5.5

How PostgreSQL Mistakes and How to Avoid Them covers it

How deep it goes
Defines CAP and PACELC, then demonstrates replication conflicts and schema failure without developing theorem proofs or recovery procedures.
Examples
Uses bidirectional PostgreSQL ticket replication, duplicate identity values, and a replicated-column rename that stops the worker.
What you can do after
Evaluate/understand distributed-system tradeoffs before selecting PostgreSQL replication and multi-master designs.
How it connects
Connects consistency, availability, CAP theorem, PACELC, logical replication, and multi-master replication.

Also explained in

Compare how 2 books explain partition tolerance →

Related concepts

This explainer was generated by Manning's knowledge graph from the text of PostgreSQL Mistakes and How to Avoid Them. The section links point to the parts of the book it draws on.