Skip to content

Commit 50e3379

Browse files
committed
Note the limitations of concurrent function
1 parent c3edf0c commit 50e3379

File tree

2 files changed

+18
-8
lines changed

2 files changed

+18
-8
lines changed

articles/cosmos-db/postgresql/quickstart-distribute-tables.md

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ ms.service: cosmos-db
88
ms.subservice: postgresql
99
ms.custom: mvc, mode-ui, ignite-2022
1010
ms.topic: quickstart
11-
ms.date: 10/28/2022
11+
ms.date: 11/01/2022
1212
---
1313

1414
# Create and distribute tables
@@ -73,13 +73,10 @@ increased storage and compute performance.
7373

7474
> [!NOTE]
7575
>
76-
> If your workload fits in 64 vCores, 256GB RAM and 2TB storage, you can use a
77-
> single-node cluster. In this case, distributing tables is optional. Later,
78-
> you can distribute tables as needed using
76+
> In real applications, when your workload fits in 64 vCores, 256GB RAM and 2TB
77+
> storage, you can use a single-node cluster. In this case, distributing tables
78+
> is optional. Later, you can distribute tables as needed using
7979
> [create_distributed_table_concurrently](reference-functions.md#create_distributed_table_concurrently).
80-
>
81-
> This quickstart demonstrates distributing tables, despite the small example
82-
> dataset.
8380
8481
Let's distribute the tables:
8582

articles/cosmos-db/postgresql/reference-functions.md

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ author: jonels-msft
66
ms.service: cosmos-db
77
ms.subservice: postgresql
88
ms.topic: reference
9-
ms.date: 10/28/2022
9+
ms.date: 11/01/2022
1010
---
1111

1212
# Azure Cosmos DB for PostgreSQL functions
@@ -99,6 +99,19 @@ This function has the same interface and purpose as
9999
[create_distributed_function](#create_distributed_table), but doesn't block
100100
writes during table distribution.
101101

102+
However, `create_distributed_table_concurrently` has a few limitations:
103+
104+
* You can't use the function in a transaction block, which means you can only
105+
distribute one table at a time. (You *can* use the function on
106+
time-partitioned tables, though.)
107+
* You can't use `create_distributed_table_concurrently` when the table is
108+
referenced by a foreign key, or references another local table. However,
109+
foreign keys to reference tables work, and you can create foreign keys to other
110+
distributed tables after table distribution completes.
111+
* If you don't have a primary key or replica identity on your table, then
112+
update and delete commands will fail during the table distribution due to
113+
limitations on logical replication.
114+
102115
### truncate\_local\_data\_after\_distributing\_table
103116

104117
Truncate all local rows after distributing a table, and prevent constraints

0 commit comments

Comments
 (0)