You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* Fix replication page
Signed-off-by: Dj Walker-Morgan <dj.walker-morgan@enterprisedb.com>
* Some fixes for link checking (local 0 bad paths)
Signed-off-by: Dj Walker-Morgan <dj.walker-morgan@enterprisedb.com>
---------
Signed-off-by: Dj Walker-Morgan <dj.walker-morgan@enterprisedb.com>
Copy file name to clipboardExpand all lines: product_docs/docs/pgd/6/concepts/replication.mdx
+3-4Lines changed: 3 additions & 4 deletions
Original file line number
Diff line number
Diff line change
@@ -30,9 +30,8 @@ Asynchronous replication is the default mode of replication, but not the only on
30
30
31
31
In PGD, the following types of changes are replicated:
32
32
33
-
-**Data changes**: Inserts, updates, and deletes to tables are replicated to all nodes in the cluster. This is called DML (Data Manipulation Language) replication.
34
-
-**Schema changes**: Changes to the structure of the database, such as creating or dropping tables, are also replicated to all nodes in the cluster. This is called DDL (Data Definition Language) replication. But not all DDL changes are replicated. For example, adding a column to a table is replicated, but dropping a column is not.
35
-
-**Configuration changes**: Changes to the configuration of the database, such as changing the replication settings, are also replicated to all nodes in the cluster.
33
+
-**Data changes**: Inserts, updates, and deletes to tables are replicated to all nodes in the cluster. This is called DML (Data Manipulation Language) replication.
34
+
-**Schema changes**: Changes to the structure of the database, such as creating or dropping tables, are also replicated to all nodes in the cluster. This is called DDL (Data Definition Language) replication. But not all DDL changes are replicated. For example, adding a column to a table is replicated, but dropping a column is not.
35
+
-**Configuration changes**: Changes to the configuration of the database, such as changing the replication settings, are also replicated to all nodes in the cluster.
36
36
37
37
Currently, PGD only replicates one Postgres database per cluster. This means that if you have multiple databases in your Postgres instance, only the database that is configured for replication will be replicated to the other nodes in the cluster. This is the same for both PGD Essential and PGD Expanded.
Copy file name to clipboardExpand all lines: product_docs/docs/pgd/6/known_issues.mdx
+1-1Lines changed: 1 addition & 1 deletion
Original file line number
Diff line number
Diff line change
@@ -56,7 +56,7 @@ To modify a commit scope safely, use [`bdr.alter_commit_scope`](/pgd/latest/refe
56
56
57
57
- The EBD Postgres Advanced Server 17 data type [`BFILE`](/epas/latest/reference/sql_reference/02_data_types/03a_bfiles/) is not currently supported. This is due to `BFILE` being a file reference that is stored in the database, and the file itself is stored outside the database and not replicated.
58
58
59
-
- EDB Postgres Advanced Server's native autopartioning is not supported in PGD. See [Restrictions on EDB Postgres Advanced Server-native automatic partitioning](reference/tables-views-functions/autopartition/#restrictions-on-edb-postgres-advanced-server-native-automatic-partitioning) for more information.
59
+
- EDB Postgres Advanced Server's native autopartioning is not supported in PGD. See [Restrictions on EDB Postgres Advanced Server-native automatic partitioning](/pgd/latest/reference/autopartition/#restrictions-on-edb-postgres-advanced-server-native-automatic-partitioning) for more information.
Copy file name to clipboardExpand all lines: product_docs/docs/pgd/6/reference/commit-scopes/index.mdx
+15-26Lines changed: 15 additions & 26 deletions
Original file line number
Diff line number
Diff line change
@@ -37,47 +37,36 @@ PGD Essential offers a limited set of commit scopes that are pre-defined and can
37
37
38
38
## Introducing
39
39
40
-
*[Overview](overview) introduces the concepts and some of the essential
41
-
terminology that's used when discussing synchronous commits.
40
+
*[Overview](/pgd/latest/reference/commit-scopes/overview) introduces the concepts and some of the essential terminology that's used when discussing synchronous commits.
42
41
43
-
*[Durability terminology](durabilityterminology) lists terms used around PGD's
44
-
durability options, including how to refer to nodes in replication.
42
+
*[Durability terminology](/pgd/latest/reference/commit-scopes/durabilityterminology) lists terms used around PGD's durability options, including how to refer to nodes in replication.
45
43
46
-
*[Commit scopes](commit-scopes) is a more in-depth look at the structure
47
-
of commit scopes and how to define them for your needs.
44
+
*[Commit scopes](/pgd/latest/reference/commit-scopes/commit-scopes) is a more in-depth look at the structure of commit scopes and how to define them for your needs.
48
45
49
-
*[Predefined commit scopes](predefined-commit-scopes) lists the pre-defined commit scopes that are available in PGD Essential.
46
+
*[Predefined commit scopes](/pgd/latest/reference/commit-scopes/predefined-commit-scopes) lists the pre-defined commit scopes that are available in PGD Essential.
50
47
51
-
*[Origin groups](origin_groups) introduces the notion of an origin group, and how to leverage these when defining commit scopes rules.
48
+
*[Origin groups](/pgd/latest/reference/commit-scopes/origin_groups) introduces the notion of an origin group, and how to leverage these when defining commit scopes rules.
52
49
53
-
*[Commit scope rules](commit-scope-rules) looks at the syntax of and how to formulate
54
-
a commit scope rule.
50
+
*[Commit scope rules](/pgd/latest/reference/commit-scopes/commit-scope-rules) looks at the syntax of and how to formulate a commit scope rule.
55
51
56
-
*[Comparing durability options](comparing) compares how commit scope options behave with regard to durability.
52
+
*[Comparing durability options](/pgd/latest/reference/commit-scopes/comparing) compares how commit scope options behave with regard to durability.
57
53
58
-
*[Degrading commit scope rules](degrading) shows how to set up a commit scope rule that can gracefully degrade to a lower setting in case of timeouts with a stricter setting.
54
+
*[Degrading commit scope rules](/pgd/latest/reference/commit-scopes/degrading) shows how to set up a commit scope rule that can gracefully degrade to a lower setting in case of timeouts with a stricter setting.
59
55
60
56
## Commit scope kinds
61
57
62
-
*[Synchronous Commit](synchronous_commit) is a commit scope mechanism that works
63
-
in a similar fashion to legacy synchronous replication, but from within the commit scope framework.
58
+
*[Synchronous Commit](/pgd/latest/reference/commit-scopes/synchronous_commit) is a commit scope mechanism that works in a similar fashion to legacy synchronous replication, but from within the commit scope framework.
64
59
65
-
*[Group Commit](group-commit) focuses on the Group Commit option, where you can
66
-
define a transaction as done when a group of nodes agrees it's done.
60
+
*[Group Commit](/pgd/latest/reference/commit-scopes/group-commit) focuses on the Group Commit option, where you can define a transaction as done when a group of nodes agrees it's done.
67
61
68
-
*[CAMO](camo) focuses on the Commit At Most Once option, in which applications
69
-
take responsibility for verifying that a transaction has been committed before
70
-
retrying. This ensures that their commits only happen at most once.
62
+
*[CAMO](/pgd/latest/reference/commit-scopes/camo) focuses on the Commit At Most Once option, in which applications take responsibility for verifying that a transaction has been committed before retrying. This ensures that their commits only happen at most once.
71
63
72
-
*[Lag Control](lag-control) looks at the commit scope mechanism which
73
-
dynamically throttle nodes according to the slowest node and regulates how far
74
-
out of sync nodes may go when a database node goes out of service.
64
+
*[Lag Control](/pgd/latest/reference/commit-scopes/lag-control) looks at the commit scope mechanism which dynamically throttle nodes according to the slowest node and regulates how far out of sync nodes may go when a database node goes out of service.
75
65
76
66
## Working with commit scopes
77
67
78
-
*[Administering](administering) addresses how to manage a PGD cluster with Group Commit
79
-
in use.
68
+
*[Administering](/pgd/latest/reference/commit-scopes/administering) addresses how to manage a PGD cluster with Group Commit in use.
80
69
81
-
*[Legacy synchronous replication](legacy-sync) shows how you can still access traditional Postgres synchronous operations under PGD.
70
+
*[Legacy synchronous replication](/pgd/latest/reference/commit-scopes/legacy-sync) shows how you can still access traditional Postgres synchronous operations under PGD.
82
71
83
-
*[Internal timing of operations](timing) compares legacy replication with PGD's async and synchronous operations, especially the difference in the order by which transactions are flushed to disk or made visible.
72
+
*[Internal timing of operations](/pgd/latest/reference/commit-scopes/timing) compares legacy replication with PGD's async and synchronous operations, especially the difference in the order by which transactions are flushed to disk or made visible.
Copy file name to clipboardExpand all lines: product_docs/docs/pgd/6/reference/conflict-management/conflicts/00_conflicts_overview.mdx
+1-1Lines changed: 1 addition & 1 deletion
Original file line number
Diff line number
Diff line change
@@ -45,7 +45,7 @@ This avoidance happens naturally in many applications. For example, many consume
45
45
46
46
You might make a change just before a node goes down, so the change seems to be lost. You might then make the same change again, leading to two updates on different nodes. When the down node comes back up, it tries to send the older change to other nodes. It's rejected because the last update of the data is kept.
47
47
48
-
For `INSERT`/`INSERT` conflicts, use [global sequences](../../sequences/#pgd-global-sequences) to prevent this type of conflict.
48
+
For `INSERT`/`INSERT` conflicts, use [global sequences](/pgd/latest/reference/sequences#pgd-global-sequences) to prevent this type of conflict.
49
49
50
50
For applications that assign relationships between objects, such as a room-booking application, applying `update_if_newer` might not give an acceptable business outcome. That is, it isn't useful to confirm to two people separately that they have booked the same room. The simplest resolution is to use Eager Replication to ensure that only one booking succeeds. More complex ways might be possible depending on the application. For example, you can assign 100 seats to each node and allow those to be booked by a writer on that node. But if none are available locally, use a distributed locking scheme or Eager Replication after most seats are reserved.
Copy file name to clipboardExpand all lines: product_docs/docs/pgd/6/reference/nodes/index.mdx
+4-4Lines changed: 4 additions & 4 deletions
Original file line number
Diff line number
Diff line change
@@ -14,12 +14,12 @@ redirects:
14
14
15
15
A PGD cluster can contain several different types of node, each with its own role. This section describes the different types of node that can be configured in a PGD cluster.
16
16
17
-
*[Overview](overview) is an overview the kinds of node that can exist in PGD clusters and their associated roles.
17
+
*[Overview](/pgd/latest/reference/nodes/overview) is an overview the kinds of node that can exist in PGD clusters and their associated roles.
18
18
19
-
*[Witness nodes](witness_nodes) looks at the witness node, a special class of PGD node, dedicated to establishing consensus in a group.
19
+
*[Witness nodes](/pgd/latest/reference/nodes/witness_nodes) looks at the witness node, a special class of PGD node, dedicated to establishing consensus in a group.
20
20
21
-
*[Logical standby nodes](logical_standby_nodes) shows how to efficiently keep a node on standby synchronized and ready to step in as a primary in the case of failure.
21
+
*[Logical standby nodes](/pgd/latest/reference/nodes/logical_standby_nodes) shows how to efficiently keep a node on standby synchronized and ready to step in as a primary in the case of failure.
22
22
23
-
*[Subscriber-only nodes and groups](subscriber_only) looks at how subscriber-only nodes work with subscriber-only groups, how they boost read scalability and the different options for configuring them.
23
+
*[Subscriber-only nodes and groups](/pgd/latest/reference/nodes/subscriber_only) looks at how subscriber-only nodes work with subscriber-only groups, how they boost read scalability and the different options for configuring them.
Copy file name to clipboardExpand all lines: product_docs/docs/pgd/6/reference/sequences.mdx
+8-8Lines changed: 8 additions & 8 deletions
Original file line number
Diff line number
Diff line change
@@ -21,7 +21,7 @@ means of discarded `INSERT` actions in multi-master replication.
21
21
22
22
!!! Note Permissions required
23
23
This means that any user who wants to use sequences
24
-
must have at least the [bdr_application](security/pgd-predefined-roles/#bdr_application)
24
+
must have at least the [bdr_application](/pgd/latest/reference/security/pgd-predefined-roles#bdr_application)
25
25
role assigned to them.
26
26
!!!
27
27
@@ -92,7 +92,7 @@ The `currval()` and `lastval()` functions work correctly for all types of global
92
92
93
93
In PGD 6.0 and later, the act of joining a node to a PGD group or creating a new grou also triggers a conversion of any local sequences into global sequences. Set [`bdr.default_sequence_kind`](/pgd/latest/reference/tables-views-functions/pgd-settings/#bdrdefault_sequence_kind) to `distributed`. This setting then selects the best kind of sequence to convert the local sequences into. If `bdr.default_sequence_kind` is set to `local`, the sequences are left as local sequences. Conversions to `galloc` are performed in a way that ensures that the sequence doesn't conflict with any other sequences in the group.
94
94
95
-
If you decide to start with local sequences and later switch to galloc sequences, you can do so by setting `bdr.default_sequence_kind` to `galloc` and then running the `bdr.alter_sequence_set_kind()` function on each sequence you want to convert. Be aware, though, that you need to manually set the starting values of the sequences to ensure that they don't conflict with any existing values in the table. See [Converting a local sequence to a galloc sequence](#converting-a-local-sequence-to-a-galloc-sequence) for more information about this in general and specifically [How to set a new start value for a sequence](#2-set-a-new-start-value-for-the-sequence).
95
+
If you decide to start with local sequences and later switch to galloc sequences, you can do so by setting `bdr.default_sequence_kind` to `galloc` and then running the `bdr.alter_sequence_set_kind()` function on each sequence you want to convert. Be aware, though, that you need to manually set the starting values of the sequences to ensure that they don't conflict with any existing values in the table. See [Converting a local sequence to a galloc sequence](/pgd/latest/reference/sequences#converting-a-local-sequence-to-a-galloc-sequence) for more information about this in general and specifically [How to set a new start value for a sequence](/pgd/latest/reference/sequences#2-set-a-new-start-value-for-the-sequence).
96
96
97
97
### SnowflakeId sequences
98
98
@@ -309,7 +309,7 @@ When the sequence kind is altered to `galloc`, it's rewritten and restarts from
309
309
the defined start value of the local sequence. If this happens on an existing
310
310
sequence in a production database, you need to query the current value and
311
311
then set the start value appropriately. To help with this use case, PGD
312
-
lets you pass a starting value with the function [`bdr.alter_sequence_set_kind()`](tables-views-functions/sequences/#bdralter_sequence_set_kind).
312
+
lets you pass a starting value with the function [`bdr.alter_sequence_set_kind()`](/pgd/latest/reference/tables-views-functions/sequences#bdralter_sequence_set_kind).
313
313
If you're already using offset and you have writes from multiple nodes, you
314
314
need to check what's the greatest used value and restart the sequence to at least
315
315
the next value:
@@ -347,7 +347,7 @@ SELECT * FROM bdr.sequence_alloc
347
347
348
348
349
349
To see the ranges currently assigned to a given sequence on each node, execute the function
* Node `Node1` is using range from `333` to `2000333`.
353
353
@@ -442,7 +442,7 @@ The internal contents of v1 and v2 aren't compatible. As such, the
442
442
functions to manipulate them also aren't compatible. The v2 of `KSUUID` also
443
443
no longer stores the `UUID` version number.
444
444
445
-
See [KSUUID v2 functions](tables-views-functions/sequences/#ksuuid-v2-functions) and [KSUUID v1 functions](tables-views-functions/sequences/#ksuuid-v1-functions) in the PGD reference.
445
+
See [KSUUID v2 functions](/pgd/latest/reference/tables-views-functions/sequences/#ksuuid-v2-functions) and [KSUUID v1 functions](/pgd/latest/reference/tables-views-functions/sequences/#ksuuid-v1-functions) in the PGD reference.
446
446
447
447
### Step and offset sequences
448
448
@@ -504,6 +504,6 @@ a one-row table that isn't part of a replication set to store a different
Copy file name to clipboardExpand all lines: product_docs/docs/pgd/6/reference/tables-views-functions/sequences.mdx
+2-2Lines changed: 2 additions & 2 deletions
Original file line number
Diff line number
Diff line change
@@ -252,7 +252,7 @@ This function executes only on the local node.
252
252
253
253
## KSUUID v2 functions
254
254
255
-
Functions for working with `KSUUID` v2 data, K-Sortable UUID data. See also [KSUUID in the sequences documentation](../sequences/#ksuuids).
255
+
Functions for working with `KSUUID` v2 data, K-Sortable UUID data. See also [KSUUID in the sequences documentation](/pgd/latest/reference/sequences/#ksuuids).
256
256
257
257
### `bdr.gen_ksuuid_v2`
258
258
@@ -314,7 +314,7 @@ This function executes only on the local node.
314
314
315
315
## KSUUID v1 functions
316
316
317
-
Functions for working with `KSUUID` v1 data, K-Sortable UUID data(v1). Deprecated - See [KSUUID in the sequences documentation](../sequences/#ksuuids) for details.
317
+
Functions for working with `KSUUID` v1 data, K-Sortable UUID data(v1). Deprecated - See [KSUUID in the sequences documentation](/pgd/latest/reference/sequences#ksuuids) for details.
0 commit comments