Chapter 8. DDL Replication

Table of Contents
8.1. Executing DDL on BDR systems
8.1.1. The DDL lock
8.1.2. Minimising the impact of DDL
8.2. Statement specific DDL replication concerns
8.2.1. Not replicated DDL statements
8.2.2. Prohibited DDL statements
8.2.3. DDL statements with restrictions

BDR supports replicating changes to a database's schemas to other connected nodes. That makes it easier to make certain DDL changes without worrying about having to manually distribute the DDL change to all nodes and ensure they're consistent.

There is not currently an option to turn off DDL replication and apply DDL manually instead.

Before doing DDL on BDR, read Section 8.1 and Section 8.2.

BDR is significantly different to standalone PostgreSQL when it comes to DDL, and treating it as the same is a fast path to replication problems.

Important: While DDL is in progress on any node in the system, statements that perform writes (INSERT, UPDATE DELETE, any DDL, etc) on that node or any other node will ERROR even if the writes have nothing to do with the objects currently being modified by the DDL in progress.