Skip to content

Commit 7b37bbd

Browse files
Simon RiggsSimon Riggs
authored andcommitted
Reorder list of restrictions, most important first
1 parent 0c9407c commit 7b37bbd

File tree

1 file changed

+25
-25
lines changed

1 file changed

+25
-25
lines changed

README.md

Lines changed: 25 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -361,6 +361,31 @@ When `track_commit_timestamp` is disabled, the only allowed value is
361361

362362
## Limitations and restrictions
363363

364+
### Superuser is required
365+
366+
Currently pglogical replication requires superuser. It may be later extended to
367+
user with replication privileges.
368+
369+
### `UNLOGGED` and `TEMPORARY` not replicated
370+
371+
`UNLOGGED` and `TEMPORARY` tables will not and cannot be replicated, much like
372+
with physical streaming replication.
373+
374+
### One database at a time
375+
376+
To replicate multiple databases you must set up individual provider/subscriber
377+
relationships for each. There is no way to configure replication for all databases
378+
in a PostgreSQL install at once.
379+
380+
### PRIMARY KEY or REPLICA IDENTITY required
381+
382+
`UPDATE`s and `DELETE`s cannot be replicated for tables that lack a `PRIMARY
383+
KEY` or other valid replica identity such as a `UNIQUE` constraint. Replication
384+
has no way to find the tuple that should be updated/deleted since there is no
385+
unique identifier.
386+
387+
See http://www.postgresql.org/docs/current/static/sql-altertable.html#SQL-CREATETABLE-REPLICA-IDENTITY for details on replica identity.
388+
364389
### DDL
365390

366391
Automatic DDL replication is not supported. Managing DDL so that the provider and
@@ -439,31 +464,6 @@ maintains solid backward compatibility but only limited forward compatibility.
439464

440465
Replicating between different minor versions makes no difference at all.
441466

442-
### Superuser is required
443-
444-
Currently pglogical replication requires superuser. It may be later extended to
445-
user with replication privileges.
446-
447-
### `UNLOGGED` and `TEMPORARY` not replicated
448-
449-
`UNLOGGED` and `TEMPORARY` tables will not and cannot be replicated, much like
450-
with physical streaming replication.
451-
452-
### One database at a time
453-
454-
To replicate multiple databases you must set up individual provider/subscriber
455-
relationships for each. There is no way to configure replication for all databases
456-
in a PostgreSQL install at once.
457-
458-
### PRIMARY KEY or REPLICA IDENTITY required
459-
460-
`UPDATE`s and `DELETE`s cannot be replicated for tables that lack a `PRIMARY
461-
KEY` or other valid replica identity such as a `UNIQUE` constraint. Replication
462-
has no way to find the tuple that should be updated/deleted since there is no
463-
unique identifier.
464-
465-
See http://www.postgresql.org/docs/current/static/sql-altertable.html#SQL-CREATETABLE-REPLICA-IDENTITY for details on replica identity.
466-
467467
## How does pglogical differ from BDR?
468468

469469
`pglogical` is based on technology developed for BDR and shares some code with

0 commit comments

Comments
 (0)