Skip to content

Commit 50708cc

Browse files
author
AWS
committed
Amazon Keyspaces Update: Amazon Keyspaces Multi-Region Replication: Adds support to add new regions to multi and single-region keyspaces.
1 parent 9d10401 commit 50708cc

File tree

2 files changed

+102
-6
lines changed

2 files changed

+102
-6
lines changed
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
{
2+
"type": "feature",
3+
"category": "Amazon Keyspaces",
4+
"contributor": "",
5+
"description": "Amazon Keyspaces Multi-Region Replication: Adds support to add new regions to multi and single-region keyspaces."
6+
}

services/keyspaces/src/main/resources/codegen-resources/service-2.json

Lines changed: 96 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,7 @@
6666
{"shape":"AccessDeniedException"},
6767
{"shape":"ResourceNotFoundException"}
6868
],
69-
"documentation":"<p> The <code>CreateType</code> operation creates a new user-defined type in the specified keyspace. </p> <p>For more information, see <a href=\"https://docs.aws.amazon.com/keyspaces/latest/devguide/udts.html\">User-defined types (UDTs)</a> in the <i>Amazon Keyspaces Developer Guide</i>. </p>"
69+
"documentation":"<p> The <code>CreateType</code> operation creates a new user-defined type in the specified keyspace. </p> <p>To configure the required permissions, see <a href=\"https://docs.aws.amazon.com/keyspaces/latest/devguide/configure-udt-permissions.html#udt-permissions-create\">Permissions to create a UDT</a> in the <i>Amazon Keyspaces Developer Guide</i>.</p> <p>For more information, see <a href=\"https://docs.aws.amazon.com/keyspaces/latest/devguide/udts.html\">User-defined types (UDTs)</a> in the <i>Amazon Keyspaces Developer Guide</i>. </p>"
7070
},
7171
"DeleteKeyspace":{
7272
"name":"DeleteKeyspace",
@@ -120,7 +120,7 @@
120120
{"shape":"AccessDeniedException"},
121121
{"shape":"ResourceNotFoundException"}
122122
],
123-
"documentation":"<p> The <code>DeleteType</code> operation deletes a user-defined type (UDT). You can only delete a type that is not used in a table or another UDT. </p>"
123+
"documentation":"<p> The <code>DeleteType</code> operation deletes a user-defined type (UDT). You can only delete a type that is not used in a table or another UDT. </p> <p>To configure the required permissions, see <a href=\"https://docs.aws.amazon.com/keyspaces/latest/devguide/configure-udt-permissions.html#udt-permissions-drop\">Permissions to delete a UDT</a> in the <i>Amazon Keyspaces Developer Guide</i>.</p>"
124124
},
125125
"GetKeyspace":{
126126
"name":"GetKeyspace",
@@ -137,7 +137,7 @@
137137
{"shape":"AccessDeniedException"},
138138
{"shape":"ResourceNotFoundException"}
139139
],
140-
"documentation":"<p>Returns the name and the Amazon Resource Name (ARN) of the specified table.</p>"
140+
"documentation":"<p>Returns the name of the specified keyspace, the Amazon Resource Name (ARN), the replication strategy, the Amazon Web Services Regions of a multi-Region keyspace, and the status of newly added Regions after an <code>UpdateKeyspace</code> operation.</p>"
141141
},
142142
"GetTable":{
143143
"name":"GetTable",
@@ -188,7 +188,7 @@
188188
{"shape":"AccessDeniedException"},
189189
{"shape":"ResourceNotFoundException"}
190190
],
191-
"documentation":"<p> The <code>GetType</code> operation returns information about the type, for example the field definitions, the timestamp when the type was last modified, the level of nesting, the status, and details about if the type is used in other types and tables. </p> <p>To read keyspace metadata using <code>GetType</code>, the IAM principal needs <code>Select</code> action permissions for the system keyspace.</p>"
191+
"documentation":"<p> The <code>GetType</code> operation returns information about the type, for example the field definitions, the timestamp when the type was last modified, the level of nesting, the status, and details about if the type is used in other types and tables. </p> <p>To read keyspace metadata using <code>GetType</code>, the IAM principal needs <code>Select</code> action permissions for the system keyspace. To configure the required permissions, see <a href=\"https://docs.aws.amazon.com/keyspaces/latest/devguide/configure-udt-permissions.html#udt-permissions-view\">Permissions to view a UDT</a> in the <i>Amazon Keyspaces Developer Guide</i>.</p>"
192192
},
193193
"ListKeyspaces":{
194194
"name":"ListKeyspaces",
@@ -256,7 +256,7 @@
256256
{"shape":"AccessDeniedException"},
257257
{"shape":"ResourceNotFoundException"}
258258
],
259-
"documentation":"<p> The <code>ListTypes</code> operation returns a list of types for a specified keyspace. </p> <p>To read keyspace metadata using <code>ListTypes</code>, the IAM principal needs <code>Select</code> action permissions for the system keyspace.</p>"
259+
"documentation":"<p> The <code>ListTypes</code> operation returns a list of types for a specified keyspace. </p> <p>To read keyspace metadata using <code>ListTypes</code>, the IAM principal needs <code>Select</code> action permissions for the system keyspace. To configure the required permissions, see <a href=\"https://docs.aws.amazon.com/keyspaces/latest/devguide/configure-udt-permissions.html#udt-permissions-view\">Permissions to view a UDT</a> in the <i>Amazon Keyspaces Developer Guide</i>.</p>"
260260
},
261261
"RestoreTable":{
262262
"name":"RestoreTable",
@@ -312,6 +312,24 @@
312312
],
313313
"documentation":"<p>Removes the association of tags from a Amazon Keyspaces resource.</p>"
314314
},
315+
"UpdateKeyspace":{
316+
"name":"UpdateKeyspace",
317+
"http":{
318+
"method":"POST",
319+
"requestUri":"/"
320+
},
321+
"input":{"shape":"UpdateKeyspaceRequest"},
322+
"output":{"shape":"UpdateKeyspaceResponse"},
323+
"errors":[
324+
{"shape":"ValidationException"},
325+
{"shape":"ServiceQuotaExceededException"},
326+
{"shape":"InternalServerException"},
327+
{"shape":"ConflictException"},
328+
{"shape":"AccessDeniedException"},
329+
{"shape":"ResourceNotFoundException"}
330+
],
331+
"documentation":"<p> Adds a new Amazon Web Services Region to the keyspace. You can add a new Region to a keyspace that is either a single or a multi-Region keyspace. The new replica Region is applied to all tables in the keyspace. For more information, see <a href=\"https://docs.aws.amazon.com/keyspaces/latest/devguide/keyspaces-multi-region-add-replica.html\">Add an Amazon Web Services Region to a keyspace in Amazon Keyspaces</a> in the <i>Amazon Keyspaces Developer Guide</i>. </p> <p>To change a single-Region to a multi-Region keyspace, you have to enable client-side timestamps for all tables in the keyspace. For more information, see <a href=\"https://docs.aws.amazon.com/keyspaces/latest/devguide/client-side-timestamps.html\">Client-side timestamps in Amazon Keyspaces</a> in the <i>Amazon Keyspaces Developer Guide</i>.</p>"
332+
},
315333
"UpdateTable":{
316334
"name":"UpdateTable",
317335
"http":{
@@ -827,6 +845,10 @@
827845
"replicationRegions":{
828846
"shape":"RegionList",
829847
"documentation":"<p> If the <code>replicationStrategy</code> of the keyspace is <code>MULTI_REGION</code>, a list of replication Regions is returned. </p>"
848+
},
849+
"replicationGroupStatuses":{
850+
"shape":"ReplicationGroupStatusList",
851+
"documentation":"<p> A list of all Regions the keyspace is replicated in after the update keyspace operation and their status. </p>"
830852
}
831853
}
832854
},
@@ -1042,6 +1064,15 @@
10421064
"min":1,
10431065
"pattern":"[a-zA-Z0-9][a-zA-Z0-9_]{0,47}"
10441066
},
1067+
"KeyspaceStatus":{
1068+
"type":"string",
1069+
"enum":[
1070+
"ACTIVE",
1071+
"CREATING",
1072+
"UPDATING",
1073+
"DELETING"
1074+
]
1075+
},
10451076
"KeyspaceSummary":{
10461077
"type":"structure",
10471078
"required":[
@@ -1323,6 +1354,34 @@
13231354
"member":{"shape":"ReplicaSpecificationSummary"},
13241355
"min":0
13251356
},
1357+
"ReplicationGroupStatus":{
1358+
"type":"structure",
1359+
"required":[
1360+
"region",
1361+
"keyspaceStatus"
1362+
],
1363+
"members":{
1364+
"region":{
1365+
"shape":"region",
1366+
"documentation":"<p> The name of the Region that was added to the keyspace. </p>"
1367+
},
1368+
"keyspaceStatus":{
1369+
"shape":"KeyspaceStatus",
1370+
"documentation":"<p> The status of the keyspace. </p>"
1371+
},
1372+
"tablesReplicationProgress":{
1373+
"shape":"TablesReplicationProgress",
1374+
"documentation":"<p> This shows the replication progress of tables in the keyspace. The value is expressed as a percentage of the newly replicated tables with status <code>Active</code> compared to the total number of tables in the keyspace. </p>"
1375+
}
1376+
},
1377+
"documentation":"<p> This shows the summary status of the keyspace after a new Amazon Web Services Region was added. </p>"
1378+
},
1379+
"ReplicationGroupStatusList":{
1380+
"type":"list",
1381+
"member":{"shape":"ReplicationGroupStatus"},
1382+
"max":6,
1383+
"min":2
1384+
},
13261385
"ReplicationSpecification":{
13271386
"type":"structure",
13281387
"required":["replicationStrategy"],
@@ -1347,7 +1406,7 @@
13471406
},
13481407
"resourceArn":{
13491408
"shape":"ARN",
1350-
"documentation":"<p>The unique identifier in the format of Amazon Resource Name (ARN) for the resource could't be found.</p>"
1409+
"documentation":"<p>The unique identifier in the format of Amazon Resource Name (ARN) for the resource couldn’t be found.</p>"
13511410
}
13521411
},
13531412
"documentation":"<p>The operation tried to access a keyspace, table, or type that doesn't exist. The resource might not be specified correctly, or its status might not be <code>ACTIVE</code>.</p>",
@@ -1527,6 +1586,12 @@
15271586
"type":"list",
15281587
"member":{"shape":"TableSummary"}
15291588
},
1589+
"TablesReplicationProgress":{
1590+
"type":"string",
1591+
"max":7,
1592+
"min":2,
1593+
"pattern":"[0-9]{1,3}(?:[.][0-9]{1,2})?%"
1594+
},
15301595
"Tag":{
15311596
"type":"structure",
15321597
"required":[
@@ -1669,6 +1734,31 @@
16691734
"members":{
16701735
}
16711736
},
1737+
"UpdateKeyspaceRequest":{
1738+
"type":"structure",
1739+
"required":[
1740+
"keyspaceName",
1741+
"replicationSpecification"
1742+
],
1743+
"members":{
1744+
"keyspaceName":{
1745+
"shape":"KeyspaceName",
1746+
"documentation":"<p> The name of the keyspace. </p>"
1747+
},
1748+
"replicationSpecification":{"shape":"ReplicationSpecification"},
1749+
"clientSideTimestamps":{"shape":"ClientSideTimestamps"}
1750+
}
1751+
},
1752+
"UpdateKeyspaceResponse":{
1753+
"type":"structure",
1754+
"required":["resourceArn"],
1755+
"members":{
1756+
"resourceArn":{
1757+
"shape":"ARN",
1758+
"documentation":"<p> The unique identifier of the keyspace in the format of an Amazon Resource Name (ARN). </p>"
1759+
}
1760+
}
1761+
},
16721762
"UpdateTableRequest":{
16731763
"type":"structure",
16741764
"required":[

0 commit comments

Comments
 (0)