Skip to content

Commit

Permalink
Brought out limitations
Browse files Browse the repository at this point in the history
Signed-off-by: Dj Walker-Morgan <[email protected]>
  • Loading branch information
djw-m committed Aug 31, 2023
1 parent 358aee0 commit e02d293
Show file tree
Hide file tree
Showing 3 changed files with 36 additions and 27 deletions.
28 changes: 1 addition & 27 deletions product_docs/docs/pgd/5/durability/group-commit.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -76,30 +76,4 @@ transaction abort is requested. If the transaction is already
decided to be committed at the time the abort request is sent, the transaction
does eventually COMMIT even though the client might receive an abort message.

## Limitations

Group Commit transactions can't yet execute DDL,
and they don't support explicit two-phase commit. Future releases might allow them.
However, the `TRUNCATE` command is allowed.

You can combine only CAMO transactions with the `DEGRADE TO` clause for switching
to asynchronous operation in case of lowered availability.

Eager and CAMO transactions aren't currently supported in combination
with the Decoding Worker feature or with transaction streaming.
Installations using Eager must keep `enable_wal_decoder` and `streaming_mode`
disabled for the PGD node group.

Synchronous replication uses a mechanism for transaction confirmation
different from Group Commit. The two aren't compatible, and you must not use
them together. Therefore, whenever you Group Commit transactions,
make sure none of the PGD nodes are configured in
`synchronous_standby_names`.

Currently, Raft commit decisions are extremely slow, producing very low TPS. We recommended
using them only with the `eager` conflict resolution setting
to get the Eager All-Node Replication behavior of PGD 4 and older.

Combining different commit decision options in the same transaction isn't
supported. Combining different conflict resolution options in the same transaction also isn't
supported.
See also [Limitations](limitations).
4 changes: 4 additions & 0 deletions product_docs/docs/pgd/5/durability/index.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ navigation:
- lag-control
- administering
- legacy-sync
- limitations

redirects:
- /pgd/latest/bdr/durability/
Expand Down Expand Up @@ -49,6 +50,9 @@ in use should be managed.
[Legacy Sync](legacy-sync) shows how traditional Postgres synchronous operations
can still be accessed under EDB Postgres Distributed.

[Limitations](limitations) lists the various combinations of durability options
which are not currently supported or not possible. Do refer to this before deciding
on a durability strategy.


<!---
Expand Down
31 changes: 31 additions & 0 deletions product_docs/docs/pgd/5/durability/limitations.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
---
title: Limitations
---

The following limitations apply to the use of commit scopes and the various durability options they enable.


Group Commit transactions can't yet execute DDL, and they don't support [explicit
two-phase commit](../twophase). Future releases might allow them. However, the `TRUNCATE`
command is allowed.

You can combine only CAMO transactions with the `DEGRADE TO` clause for
switching to asynchronous operation in case of lowered availability.

Group Commit, Eager and CAMO transactions aren't currently supported in
combination with the Decoding Worker feature or with transaction streaming.
Installations using these commit scopes must keep `enable_wal_decoder` and `streaming_mode`
disabled for the PGD node group.

[Legacy synchronous replication](legacy-sync) uses a mechanism for transaction
confirmation different from Group Commit. The two aren't compatible, and you
must not use them together. Therefore, whenever you Group Commit transactions,
make sure none of the PGD nodes are configured in `synchronous_standby_names`.

Currently, Raft commit decisions are extremely slow, producing very low TPS. We
recommended using them only with the `eager` conflict resolution setting to get
the Eager All-Node Replication behavior of PGD 4 and older.

Combining different commit decision options in the same transaction isn't
supported. Combining different conflict resolution options in the same
transaction also isn't supported.

0 comments on commit e02d293

Please sign in to comment.