aws-sdk-dynamodb 1.176.0 → 1.177.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 35697eb019066aa283304ec68458c74307923fde5ebe7419b45940cddf2ce657
4
- data.tar.gz: 11faa1afeebfca6664772cbef077b77d898f19de9dda541006179384b9ed02fa
3
+ metadata.gz: d42e91e842e0413a3c93a71f21a58d3b60a3b6d9bce7964b61cfab469137c90b
4
+ data.tar.gz: fb9d6a693f9a7028a9cf99178842f2590d8a2a426d89fd7eb26cd9bece5f38d6
5
5
  SHA512:
6
- metadata.gz: 59490f8bb5ed93283a5d1be8073e5d34e46e64aefb05008ac07283a2c4cac8d35c07cb4f2436a75557709b7af7e59ba29d96629950c21a8f51d3a4471851bf2c
7
- data.tar.gz: e55467c983471dafa766a3546d7fdcda6adb717b603b2e5465acd215e446c837dfd167c5a0a49079cc8b43a05dd30bba498618d05b3b1cc7b326def06e3c6580
6
+ metadata.gz: b235cd6b59a1843fcf975a11793500d18ec13a00b4cc30f076a088fb541e8797f15a23ae3fe0eb9ea36c23a319805b149b91ac7936f27069ef17f3e3283c9d67
7
+ data.tar.gz: dd851c3b3f1cb97ac9736b91d225a3a4a919a01c4ce880aab241a8664969c1ad79c9fe379ee275a6bae293245d3f5c5631321c0291677738f81629b2d44f0509
data/CHANGELOG.md CHANGED
@@ -1,6 +1,11 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.177.0 (2026-10-20)
5
+ ------------------
6
+
7
+ * Feature - Adds support for disassociating a replica from an Amazon DynamoDB multi-Region eventual consistency global table, so you can keep it as a single-Region table with its existing data. Also adds disassociation protection, on by default, to help prevent accidental disassociation.
8
+
4
9
  1.176.0 (2026-10-19)
5
10
  ------------------
6
11
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.176.0
1
+ 1.177.0
@@ -211,13 +211,20 @@ module Aws::DynamoDB
211
211
  # the required types.
212
212
  #
213
213
  # @option options [Boolean] :correct_clock_skew (true)
214
- # Used only in `standard` and `adaptive` retry modes. Specifies whether to apply
215
- # a clock skew correction and retry requests with skewed client clocks.
214
+ # Used only in `standard` and `adaptive` retry modes. Specifies whether
215
+ # to apply a clock skew correction and retry requests with skewed client
216
+ # clocks. Takes effect only when `disable_clock_skew_correction` is not set.
216
217
  #
217
218
  # @option options [String] :defaults_mode ("legacy")
218
219
  # See {Aws::DefaultsModeConfiguration} for a list of the
219
220
  # accepted modes and the configuration defaults that are included.
220
221
  #
222
+ # @option options [Boolean] :disable_clock_skew_correction
223
+ # Used only in `standard` and `adaptive` retry modes. When `true`, the
224
+ # SDK does not apply a clock skew correction, does not update its stored
225
+ # skew from responses, and does not retry clock skew errors. Clock skew
226
+ # correction is enabled by default.
227
+ #
221
228
  # @option options [Boolean] :disable_host_prefix_injection (false)
222
229
  # When `true`, the SDK will not prepend the modeled host prefix to the endpoint.
223
230
  #
@@ -1948,6 +1955,7 @@ module Aws::DynamoDB
1948
1955
  # resp.table_description.table_class_summary.table_class #=> String, one of "STANDARD", "STANDARD_INFREQUENT_ACCESS"
1949
1956
  # resp.table_description.table_class_summary.last_update_date_time #=> Time
1950
1957
  # resp.table_description.deletion_protection_enabled #=> Boolean
1958
+ # resp.table_description.disassociation_protection_enabled #=> Boolean
1951
1959
  # resp.table_description.on_demand_throughput.max_read_request_units #=> Integer
1952
1960
  # resp.table_description.on_demand_throughput.max_write_request_units #=> Integer
1953
1961
  # resp.table_description.warm_throughput.read_units_per_second #=> Integer
@@ -2587,6 +2595,7 @@ module Aws::DynamoDB
2587
2595
  # resp.table_description.table_class_summary.table_class #=> String, one of "STANDARD", "STANDARD_INFREQUENT_ACCESS"
2588
2596
  # resp.table_description.table_class_summary.last_update_date_time #=> Time
2589
2597
  # resp.table_description.deletion_protection_enabled #=> Boolean
2598
+ # resp.table_description.disassociation_protection_enabled #=> Boolean
2590
2599
  # resp.table_description.on_demand_throughput.max_read_request_units #=> Integer
2591
2600
  # resp.table_description.on_demand_throughput.max_write_request_units #=> Integer
2592
2601
  # resp.table_description.warm_throughput.read_units_per_second #=> Integer
@@ -3490,6 +3499,7 @@ module Aws::DynamoDB
3490
3499
  # resp.table.table_class_summary.table_class #=> String, one of "STANDARD", "STANDARD_INFREQUENT_ACCESS"
3491
3500
  # resp.table.table_class_summary.last_update_date_time #=> Time
3492
3501
  # resp.table.deletion_protection_enabled #=> Boolean
3502
+ # resp.table.disassociation_protection_enabled #=> Boolean
3493
3503
  # resp.table.on_demand_throughput.max_read_request_units #=> Integer
3494
3504
  # resp.table.on_demand_throughput.max_write_request_units #=> Integer
3495
3505
  # resp.table.warm_throughput.read_units_per_second #=> Integer
@@ -6225,6 +6235,7 @@ module Aws::DynamoDB
6225
6235
  # resp.table_description.table_class_summary.table_class #=> String, one of "STANDARD", "STANDARD_INFREQUENT_ACCESS"
6226
6236
  # resp.table_description.table_class_summary.last_update_date_time #=> Time
6227
6237
  # resp.table_description.deletion_protection_enabled #=> Boolean
6238
+ # resp.table_description.disassociation_protection_enabled #=> Boolean
6228
6239
  # resp.table_description.on_demand_throughput.max_read_request_units #=> Integer
6229
6240
  # resp.table_description.on_demand_throughput.max_write_request_units #=> Integer
6230
6241
  # resp.table_description.warm_throughput.read_units_per_second #=> Integer
@@ -6545,6 +6556,7 @@ module Aws::DynamoDB
6545
6556
  # resp.table_description.table_class_summary.table_class #=> String, one of "STANDARD", "STANDARD_INFREQUENT_ACCESS"
6546
6557
  # resp.table_description.table_class_summary.last_update_date_time #=> Time
6547
6558
  # resp.table_description.deletion_protection_enabled #=> Boolean
6559
+ # resp.table_description.disassociation_protection_enabled #=> Boolean
6548
6560
  # resp.table_description.on_demand_throughput.max_read_request_units #=> Integer
6549
6561
  # resp.table_description.on_demand_throughput.max_write_request_units #=> Integer
6550
6562
  # resp.table_description.warm_throughput.read_units_per_second #=> Integer
@@ -8521,7 +8533,8 @@ module Aws::DynamoDB
8521
8533
  end
8522
8534
 
8523
8535
  # Modifies the provisioned throughput settings, global secondary
8524
- # indexes, or DynamoDB Streams settings for a given table.
8536
+ # indexes, DynamoDB Streams settings, or global table replica settings
8537
+ # for a given table.
8525
8538
  #
8526
8539
  # You can only perform one of the following operations at once:
8527
8540
  #
@@ -8533,11 +8546,38 @@ module Aws::DynamoDB
8533
8546
  # begins backfilling, you can use `UpdateTable` to perform other
8534
8547
  # operations.
8535
8548
  #
8549
+ # * Enable or disable disassociation protection for the local global
8550
+ # table replica.
8551
+ #
8552
+ # * Disassociate the local global table replica and keep it as a
8553
+ # standalone regional table. The `Disassociate` action must be the
8554
+ # only replica update in the request. If the request includes any
8555
+ # other update, `UpdateTable` fails with a `ValidationException` and
8556
+ # the disassociation does not start.
8557
+ #
8536
8558
  # `UpdateTable` is an asynchronous operation; while it's executing, the
8537
8559
  # table status changes from `ACTIVE` to `UPDATING`. While it's
8538
- # `UPDATING`, you can't issue another `UpdateTable` request. When the
8539
- # table returns to the `ACTIVE` state, the `UpdateTable` operation is
8540
- # complete.
8560
+ # `UPDATING`, you can't issue another `UpdateTable` request. Use
8561
+ # `DescribeTable` to monitor the table's status.
8562
+ #
8563
+ # To use this operation to disassociate a local replica, you must have
8564
+ # the `dynamodb:UpdateTable` and `dynamodb:DisassociateTableReplica` IAM
8565
+ # permissions on the local replica. Send disassociation and
8566
+ # disassociation protection requests to the replica's Region using
8567
+ # credentials for the account that owns the replica. For prerequisites
8568
+ # and the procedure, see [Disassociating a global table replica][1] in
8569
+ # the *Amazon DynamoDB Developer Guide*.
8570
+ #
8571
+ # To confirm successful disassociation, call `DescribeTable` in the
8572
+ # replica's Region and verify that `TableStatus` is `ACTIVE` and
8573
+ # `Replicas` is absent or empty. If `TableStatus` returns to `ACTIVE`
8574
+ # but the response still includes a `Replicas` list, the disassociation
8575
+ # did not complete. Check `ReplicaStatus` for a replication-permission
8576
+ # or encryption-access problem, resolve it, and retry.
8577
+ #
8578
+ #
8579
+ #
8580
+ # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables-disassociate.html
8541
8581
  #
8542
8582
  # @option params [Array<Types::AttributeDefinition>] :attribute_definitions
8543
8583
  # An array of attributes that describe the key schema for the table and
@@ -8609,8 +8649,8 @@ module Aws::DynamoDB
8609
8649
  # The new server-side encryption settings for the specified table.
8610
8650
  #
8611
8651
  # @option params [Array<Types::ReplicationGroupUpdate>] :replica_updates
8612
- # A list of replica update actions (create, delete, or update) for the
8613
- # table.
8652
+ # A list of replica update actions (create, delete, update, or
8653
+ # disassociate) for the table.
8614
8654
  #
8615
8655
  # @option params [String] :table_class
8616
8656
  # The table class of the table to be updated. Valid values are
@@ -8686,6 +8726,18 @@ module Aws::DynamoDB
8686
8726
  # Settings replication needs to be defined to ENABLED again in order
8687
8727
  # to create a Multi-Account Global Table using this table.
8688
8728
  #
8729
+ # @option params [Boolean] :disassociation_protection_enabled
8730
+ # Specifies whether disassociation protection is enabled (`true`) or
8731
+ # disabled (`false`) for the local replica of a multi-Region eventual
8732
+ # consistency (MREC) global table using Version 2019.11.21.
8733
+ #
8734
+ # Disassociation protection is enabled by default. If you omit this
8735
+ # parameter, the existing setting is unchanged. This setting is
8736
+ # independent of `DeletionProtectionEnabled`.
8737
+ #
8738
+ # You can't combine this change with any other change in the same
8739
+ # `UpdateTable` request.
8740
+ #
8689
8741
  # @option params [Array<Types::VectorIndexUpdate>] :vector_index_updates
8690
8742
  # A list of vector indexes to be added to or removed from the table. You
8691
8743
  # can add or remove one vector index for each `UpdateTable` operation.
@@ -8724,7 +8776,7 @@ module Aws::DynamoDB
8724
8776
  # attribute_type: "S",
8725
8777
  # },
8726
8778
  # ],
8727
- # creation_date_time: Time.parse("1421866952.062"),
8779
+ # creation_date_time: Time.parse(1421866952.062),
8728
8780
  # item_count: 0,
8729
8781
  # key_schema: [
8730
8782
  # {
@@ -8737,7 +8789,7 @@ module Aws::DynamoDB
8737
8789
  # },
8738
8790
  # ],
8739
8791
  # provisioned_throughput: {
8740
- # last_increase_date_time: Time.parse("1421874759.194"),
8792
+ # last_increase_date_time: Time.parse(1421874759.194),
8741
8793
  # number_of_decreases_today: 1,
8742
8794
  # read_capacity_units: 1,
8743
8795
  # write_capacity_units: 1,
@@ -8748,6 +8800,74 @@ module Aws::DynamoDB
8748
8800
  # },
8749
8801
  # }
8750
8802
  #
8803
+ # @example Example: To disable disassociation protection on a local replica
8804
+ #
8805
+ # # This example disables disassociation protection on the MusicCollection replica in us-west-2. You must send the request
8806
+ # # to us-west-2 using credentials for the account that owns the replica. Your table must be a global table that uses
8807
+ # # Version 2019.11.21 and multi-Region eventual consistency (MREC). You cannot combine this change with any other change in
8808
+ # # the same UpdateTable request. Before requesting disassociation, use DescribeTable to confirm that
8809
+ # # DisassociationProtectionEnabled is false and TableStatus is ACTIVE.
8810
+ #
8811
+ # resp = client.update_table({
8812
+ # disassociation_protection_enabled: false,
8813
+ # table_name: "MusicCollection",
8814
+ # })
8815
+ #
8816
+ # resp.to_h outputs the following:
8817
+ # {
8818
+ # table_description: {
8819
+ # disassociation_protection_enabled: false,
8820
+ # global_table_version: "2019.11.21",
8821
+ # replicas: [
8822
+ # {
8823
+ # region_name: "us-east-1",
8824
+ # replica_status: "ACTIVE",
8825
+ # },
8826
+ # ],
8827
+ # table_arn: "arn:aws:dynamodb:us-west-2:123456789012:table/MusicCollection",
8828
+ # table_name: "MusicCollection",
8829
+ # table_status: "ACTIVE",
8830
+ # },
8831
+ # }
8832
+ #
8833
+ # @example Example: To disassociate a local global table replica
8834
+ #
8835
+ # # This example disassociates the MusicCollection replica in us-west-2. You must first disable protection in a separate
8836
+ # # UpdateTable request. You must send the request to us-west-2 using credentials for account 123456789012, the account that
8837
+ # # owns the replica. This request works for global tables that use Version 2019.11.21 and multi-Region eventual consistency
8838
+ # # (MREC). Replicas can belong to one account or multiple accounts. You must specify WAIT_FOR_REPLICATION. The response
8839
+ # # shows that DynamoDB accepted the asynchronous request. To confirm completion, use DescribeTable in us-west-2. Verify
8840
+ # # that TableStatus is ACTIVE and Replicas is absent or empty. ACTIVE alone does not confirm successful disassociation.
8841
+ #
8842
+ # resp = client.update_table({
8843
+ # replica_updates: [
8844
+ # {
8845
+ # disassociate: {
8846
+ # disassociation_mode: "WAIT_FOR_REPLICATION",
8847
+ # region_name: "us-west-2",
8848
+ # },
8849
+ # },
8850
+ # ],
8851
+ # table_name: "arn:aws:dynamodb:us-west-2:123456789012:table/MusicCollection",
8852
+ # })
8853
+ #
8854
+ # resp.to_h outputs the following:
8855
+ # {
8856
+ # table_description: {
8857
+ # disassociation_protection_enabled: false,
8858
+ # global_table_version: "2019.11.21",
8859
+ # replicas: [
8860
+ # {
8861
+ # region_name: "us-east-1",
8862
+ # replica_status: "ACTIVE",
8863
+ # },
8864
+ # ],
8865
+ # table_arn: "arn:aws:dynamodb:us-west-2:123456789012:table/MusicCollection",
8866
+ # table_name: "MusicCollection",
8867
+ # table_status: "UPDATING",
8868
+ # },
8869
+ # }
8870
+ #
8751
8871
  # @example Request syntax with placeholder values
8752
8872
  #
8753
8873
  # resp = client.update_table({
@@ -8868,6 +8988,10 @@ module Aws::DynamoDB
8868
8988
  # delete: {
8869
8989
  # region_name: "RegionName", # required
8870
8990
  # },
8991
+ # disassociate: {
8992
+ # region_name: "RegionName", # required
8993
+ # disassociation_mode: "WAIT_FOR_REPLICATION", # required, accepts WAIT_FOR_REPLICATION
8994
+ # },
8871
8995
  # },
8872
8996
  # ],
8873
8997
  # table_class: "STANDARD", # accepts STANDARD, STANDARD_INFREQUENT_ACCESS
@@ -8892,6 +9016,7 @@ module Aws::DynamoDB
8892
9016
  # write_units_per_second: 1,
8893
9017
  # },
8894
9018
  # global_table_settings_replication_mode: "ENABLED", # accepts ENABLED, DISABLED, ENABLED_WITH_OVERRIDES
9019
+ # disassociation_protection_enabled: false,
8895
9020
  # vector_index_updates: [
8896
9021
  # {
8897
9022
  # create: {
@@ -9021,6 +9146,7 @@ module Aws::DynamoDB
9021
9146
  # resp.table_description.table_class_summary.table_class #=> String, one of "STANDARD", "STANDARD_INFREQUENT_ACCESS"
9022
9147
  # resp.table_description.table_class_summary.last_update_date_time #=> Time
9023
9148
  # resp.table_description.deletion_protection_enabled #=> Boolean
9149
+ # resp.table_description.disassociation_protection_enabled #=> Boolean
9024
9150
  # resp.table_description.on_demand_throughput.max_read_request_units #=> Integer
9025
9151
  # resp.table_description.on_demand_throughput.max_write_request_units #=> Integer
9026
9152
  # resp.table_description.warm_throughput.read_units_per_second #=> Integer
@@ -9307,7 +9433,7 @@ module Aws::DynamoDB
9307
9433
  tracer: tracer
9308
9434
  )
9309
9435
  context[:gem_name] = 'aws-sdk-dynamodb'
9310
- context[:gem_version] = '1.176.0'
9436
+ context[:gem_version] = '1.177.0'
9311
9437
  Seahorse::Client::Request.new(handlers, context)
9312
9438
  end
9313
9439
 
@@ -159,6 +159,9 @@ module Aws::DynamoDB
159
159
  DescribeTimeToLiveInput = Shapes::StructureShape.new(name: 'DescribeTimeToLiveInput')
160
160
  DescribeTimeToLiveOutput = Shapes::StructureShape.new(name: 'DescribeTimeToLiveOutput')
161
161
  DestinationStatus = Shapes::StringShape.new(name: 'DestinationStatus')
162
+ DisassociateReplicationGroupMemberAction = Shapes::StructureShape.new(name: 'DisassociateReplicationGroupMemberAction')
163
+ DisassociationMode = Shapes::StringShape.new(name: 'DisassociationMode')
164
+ DisassociationProtectionEnabled = Shapes::BooleanShape.new(name: 'DisassociationProtectionEnabled')
162
165
  DoubleObject = Shapes::FloatShape.new(name: 'DoubleObject')
163
166
  DuplicateItemException = Shapes::StructureShape.new(name: 'DuplicateItemException')
164
167
  EnableKinesisStreamingConfiguration = Shapes::StructureShape.new(name: 'EnableKinesisStreamingConfiguration')
@@ -976,6 +979,10 @@ module Aws::DynamoDB
976
979
  DescribeTimeToLiveOutput.add_member(:time_to_live_description, Shapes::ShapeRef.new(shape: TimeToLiveDescription, location_name: "TimeToLiveDescription"))
977
980
  DescribeTimeToLiveOutput.struct_class = Types::DescribeTimeToLiveOutput
978
981
 
982
+ DisassociateReplicationGroupMemberAction.add_member(:region_name, Shapes::ShapeRef.new(shape: RegionName, required: true, location_name: "RegionName"))
983
+ DisassociateReplicationGroupMemberAction.add_member(:disassociation_mode, Shapes::ShapeRef.new(shape: DisassociationMode, required: true, location_name: "DisassociationMode"))
984
+ DisassociateReplicationGroupMemberAction.struct_class = Types::DisassociateReplicationGroupMemberAction
985
+
979
986
  DuplicateItemException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "message"))
980
987
  DuplicateItemException.struct_class = Types::DuplicateItemException
981
988
 
@@ -1697,6 +1704,7 @@ module Aws::DynamoDB
1697
1704
  ReplicationGroupUpdate.add_member(:create, Shapes::ShapeRef.new(shape: CreateReplicationGroupMemberAction, location_name: "Create"))
1698
1705
  ReplicationGroupUpdate.add_member(:update, Shapes::ShapeRef.new(shape: UpdateReplicationGroupMemberAction, location_name: "Update"))
1699
1706
  ReplicationGroupUpdate.add_member(:delete, Shapes::ShapeRef.new(shape: DeleteReplicationGroupMemberAction, location_name: "Delete"))
1707
+ ReplicationGroupUpdate.add_member(:disassociate, Shapes::ShapeRef.new(shape: DisassociateReplicationGroupMemberAction, location_name: "Disassociate"))
1700
1708
  ReplicationGroupUpdate.struct_class = Types::ReplicationGroupUpdate
1701
1709
 
1702
1710
  ReplicationGroupUpdateList.member = Shapes::ShapeRef.new(shape: ReplicationGroupUpdate)
@@ -1895,6 +1903,7 @@ module Aws::DynamoDB
1895
1903
  TableDescription.add_member(:archival_summary, Shapes::ShapeRef.new(shape: ArchivalSummary, location_name: "ArchivalSummary"))
1896
1904
  TableDescription.add_member(:table_class_summary, Shapes::ShapeRef.new(shape: TableClassSummary, location_name: "TableClassSummary"))
1897
1905
  TableDescription.add_member(:deletion_protection_enabled, Shapes::ShapeRef.new(shape: DeletionProtectionEnabled, location_name: "DeletionProtectionEnabled"))
1906
+ TableDescription.add_member(:disassociation_protection_enabled, Shapes::ShapeRef.new(shape: DisassociationProtectionEnabled, location_name: "DisassociationProtectionEnabled"))
1898
1907
  TableDescription.add_member(:on_demand_throughput, Shapes::ShapeRef.new(shape: OnDemandThroughput, location_name: "OnDemandThroughput"))
1899
1908
  TableDescription.add_member(:warm_throughput, Shapes::ShapeRef.new(shape: TableWarmThroughputDescription, location_name: "WarmThroughput"))
1900
1909
  TableDescription.add_member(:multi_region_consistency, Shapes::ShapeRef.new(shape: MultiRegionConsistency, location_name: "MultiRegionConsistency"))
@@ -2099,6 +2108,7 @@ module Aws::DynamoDB
2099
2108
  UpdateTableInput.add_member(:on_demand_throughput, Shapes::ShapeRef.new(shape: OnDemandThroughput, location_name: "OnDemandThroughput"))
2100
2109
  UpdateTableInput.add_member(:warm_throughput, Shapes::ShapeRef.new(shape: WarmThroughput, location_name: "WarmThroughput"))
2101
2110
  UpdateTableInput.add_member(:global_table_settings_replication_mode, Shapes::ShapeRef.new(shape: GlobalTableSettingsReplicationMode, location_name: "GlobalTableSettingsReplicationMode"))
2111
+ UpdateTableInput.add_member(:disassociation_protection_enabled, Shapes::ShapeRef.new(shape: DisassociationProtectionEnabled, location_name: "DisassociationProtectionEnabled"))
2102
2112
  UpdateTableInput.add_member(:vector_index_updates, Shapes::ShapeRef.new(shape: VectorIndexUpdateList, location_name: "VectorIndexUpdates"))
2103
2113
  UpdateTableInput.struct_class = Types::UpdateTableInput
2104
2114
 
@@ -336,6 +336,9 @@ module Aws::DynamoDB
336
336
  end
337
337
 
338
338
  # Represents replicas of the table.
339
+ #
340
+ # After a successful disassociation, this list is absent or empty. To
341
+ # confirm disassociation, also verify that `TableStatus` is `ACTIVE`.
339
342
  # @return [Array<Types::ReplicaDescription>]
340
343
  def replicas
341
344
  data[:replicas]
@@ -397,6 +400,14 @@ module Aws::DynamoDB
397
400
  data[:deletion_protection_enabled]
398
401
  end
399
402
 
403
+ # Specifies whether disassociation protection is enabled (`true`) or
404
+ # disabled (`false`) for the local global table replica. Protection is
405
+ # enabled by default.
406
+ # @return [Boolean]
407
+ def disassociation_protection_enabled
408
+ data[:disassociation_protection_enabled]
409
+ end
410
+
400
411
  # The maximum number of read and write units for the specified on-demand
401
412
  # table. If you use this parameter, you must specify
402
413
  # `MaxReadRequestUnits`, `MaxWriteRequestUnits`, or both.
@@ -2015,6 +2026,10 @@ module Aws::DynamoDB
2015
2026
  # delete: {
2016
2027
  # region_name: "RegionName", # required
2017
2028
  # },
2029
+ # disassociate: {
2030
+ # region_name: "RegionName", # required
2031
+ # disassociation_mode: "WAIT_FOR_REPLICATION", # required, accepts WAIT_FOR_REPLICATION
2032
+ # },
2018
2033
  # },
2019
2034
  # ],
2020
2035
  # table_class: "STANDARD", # accepts STANDARD, STANDARD_INFREQUENT_ACCESS
@@ -2039,6 +2054,7 @@ module Aws::DynamoDB
2039
2054
  # write_units_per_second: 1,
2040
2055
  # },
2041
2056
  # global_table_settings_replication_mode: "ENABLED", # accepts ENABLED, DISABLED, ENABLED_WITH_OVERRIDES
2057
+ # disassociation_protection_enabled: false,
2042
2058
  # vector_index_updates: [
2043
2059
  # {
2044
2060
  # create: {
@@ -2126,8 +2142,8 @@ module Aws::DynamoDB
2126
2142
  # @option options [Types::SSESpecification] :sse_specification
2127
2143
  # The new server-side encryption settings for the specified table.
2128
2144
  # @option options [Array<Types::ReplicationGroupUpdate>] :replica_updates
2129
- # A list of replica update actions (create, delete, or update) for the
2130
- # table.
2145
+ # A list of replica update actions (create, delete, update, or
2146
+ # disassociate) for the table.
2131
2147
  # @option options [String] :table_class
2132
2148
  # The table class of the table to be updated. Valid values are
2133
2149
  # `STANDARD` and `STANDARD_INFREQUENT_ACCESS`.
@@ -2195,6 +2211,17 @@ module Aws::DynamoDB
2195
2211
  # * `DISABLED`: Remove settings replication on a regional table.
2196
2212
  # Settings replication needs to be defined to ENABLED again in order
2197
2213
  # to create a Multi-Account Global Table using this table.
2214
+ # @option options [Boolean] :disassociation_protection_enabled
2215
+ # Specifies whether disassociation protection is enabled (`true`) or
2216
+ # disabled (`false`) for the local replica of a multi-Region eventual
2217
+ # consistency (MREC) global table using Version 2019.11.21.
2218
+ #
2219
+ # Disassociation protection is enabled by default. If you omit this
2220
+ # parameter, the existing setting is unchanged. This setting is
2221
+ # independent of `DeletionProtectionEnabled`.
2222
+ #
2223
+ # You can't combine this change with any other change in the same
2224
+ # `UpdateTable` request.
2198
2225
  # @option options [Array<Types::VectorIndexUpdate>] :vector_index_updates
2199
2226
  # A list of vector indexes to be added to or removed from the table. You
2200
2227
  # can add or remove one vector index for each `UpdateTable` operation.
@@ -3221,6 +3221,48 @@ module Aws::DynamoDB
3221
3221
  include Aws::Structure
3222
3222
  end
3223
3223
 
3224
+ # The parameters for disassociating the local replica from a global
3225
+ # table using Version 2019.11.21 with multi-Region eventual consistency
3226
+ # (MREC).
3227
+ #
3228
+ # After disassociation completes, the replica remains a standalone
3229
+ # regional table that keeps its data, indexes, and table settings.
3230
+ #
3231
+ # For request requirements, see [UpdateTable][1]. For prerequisites, the
3232
+ # protection update, and completion checks, see [Disassociating a global
3233
+ # table replica][2] in the *Amazon DynamoDB Developer Guide*.
3234
+ #
3235
+ #
3236
+ #
3237
+ # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_UpdateTable.html
3238
+ # [2]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables-disassociate.html
3239
+ #
3240
+ # @!attribute [rw] region_name
3241
+ # The Region of the replica to disassociate. Set this value to the
3242
+ # Region where you send the `UpdateTable` request. You must use
3243
+ # credentials for the account that owns the replica.
3244
+ # @return [String]
3245
+ #
3246
+ # @!attribute [rw] disassociation_mode
3247
+ # The mode for handling pending replication before disassociation
3248
+ # completes. You must specify `WAIT_FOR_REPLICATION`. For more
3249
+ # information, see [Disassociating a global table replica][1] in the
3250
+ # *Amazon DynamoDB Developer Guide*.
3251
+ #
3252
+ #
3253
+ #
3254
+ # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables-disassociate.html
3255
+ # @return [String]
3256
+ #
3257
+ # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/DisassociateReplicationGroupMemberAction AWS API Documentation
3258
+ #
3259
+ class DisassociateReplicationGroupMemberAction < Struct.new(
3260
+ :region_name,
3261
+ :disassociation_mode)
3262
+ SENSITIVE = []
3263
+ include Aws::Structure
3264
+ end
3265
+
3224
3266
  # There was an attempt to insert an item with the same primary key as an
3225
3267
  # item that already exists in the DynamoDB table.
3226
3268
  #
@@ -8025,6 +8067,13 @@ module Aws::DynamoDB
8025
8067
  # `DeleteTableReplica` action in the destination Region, deleting the
8026
8068
  # replica and all if its items in the destination Region.
8027
8069
  #
8070
+ # * The local replica to be disassociated from a global table and
8071
+ # retained as a standalone regional table.
8072
+ #
8073
+ # Each `ReplicationGroupUpdate` contains exactly one action. A
8074
+ # `Disassociate` action must be the only replica update in the request;
8075
+ # including other updates causes the request to fail.
8076
+ #
8028
8077
  # <note markdown="1"> When you manually remove a table or global table replica, you do not
8029
8078
  # automatically remove any associated scalable targets, scaling
8030
8079
  # policies, or CloudWatch alarms.
@@ -8043,12 +8092,18 @@ module Aws::DynamoDB
8043
8092
  # The parameters required for deleting a replica for the table.
8044
8093
  # @return [Types::DeleteReplicationGroupMemberAction]
8045
8094
  #
8095
+ # @!attribute [rw] disassociate
8096
+ # The parameters for disassociating the local replica from the global
8097
+ # table and retaining it as a standalone regional table.
8098
+ # @return [Types::DisassociateReplicationGroupMemberAction]
8099
+ #
8046
8100
  # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/ReplicationGroupUpdate AWS API Documentation
8047
8101
  #
8048
8102
  class ReplicationGroupUpdate < Struct.new(
8049
8103
  :create,
8050
8104
  :update,
8051
- :delete)
8105
+ :delete,
8106
+ :disassociate)
8052
8107
  SENSITIVE = []
8053
8108
  include Aws::Structure
8054
8109
  end
@@ -9581,6 +9636,9 @@ module Aws::DynamoDB
9581
9636
  #
9582
9637
  # @!attribute [rw] replicas
9583
9638
  # Represents replicas of the table.
9639
+ #
9640
+ # After a successful disassociation, this list is absent or empty. To
9641
+ # confirm disassociation, also verify that `TableStatus` is `ACTIVE`.
9584
9642
  # @return [Array<Types::ReplicaDescription>]
9585
9643
  #
9586
9644
  # @!attribute [rw] global_table_witnesses
@@ -9625,6 +9683,12 @@ module Aws::DynamoDB
9625
9683
  # (false) on the table.
9626
9684
  # @return [Boolean]
9627
9685
  #
9686
+ # @!attribute [rw] disassociation_protection_enabled
9687
+ # Specifies whether disassociation protection is enabled (`true`) or
9688
+ # disabled (`false`) for the local global table replica. Protection is
9689
+ # enabled by default.
9690
+ # @return [Boolean]
9691
+ #
9628
9692
  # @!attribute [rw] on_demand_throughput
9629
9693
  # The maximum number of read and write units for the specified
9630
9694
  # on-demand table. If you use this parameter, you must specify
@@ -9720,6 +9784,7 @@ module Aws::DynamoDB
9720
9784
  :archival_summary,
9721
9785
  :table_class_summary,
9722
9786
  :deletion_protection_enabled,
9787
+ :disassociation_protection_enabled,
9723
9788
  :on_demand_throughput,
9724
9789
  :warm_throughput,
9725
9790
  :multi_region_consistency,
@@ -11306,8 +11371,8 @@ module Aws::DynamoDB
11306
11371
  # @return [Types::SSESpecification]
11307
11372
  #
11308
11373
  # @!attribute [rw] replica_updates
11309
- # A list of replica update actions (create, delete, or update) for the
11310
- # table.
11374
+ # A list of replica update actions (create, delete, update, or
11375
+ # disassociate) for the table.
11311
11376
  # @return [Array<Types::ReplicationGroupUpdate>]
11312
11377
  #
11313
11378
  # @!attribute [rw] table_class
@@ -11393,6 +11458,19 @@ module Aws::DynamoDB
11393
11458
  # to create a Multi-Account Global Table using this table.
11394
11459
  # @return [String]
11395
11460
  #
11461
+ # @!attribute [rw] disassociation_protection_enabled
11462
+ # Specifies whether disassociation protection is enabled (`true`) or
11463
+ # disabled (`false`) for the local replica of a multi-Region eventual
11464
+ # consistency (MREC) global table using Version 2019.11.21.
11465
+ #
11466
+ # Disassociation protection is enabled by default. If you omit this
11467
+ # parameter, the existing setting is unchanged. This setting is
11468
+ # independent of `DeletionProtectionEnabled`.
11469
+ #
11470
+ # You can't combine this change with any other change in the same
11471
+ # `UpdateTable` request.
11472
+ # @return [Boolean]
11473
+ #
11396
11474
  # @!attribute [rw] vector_index_updates
11397
11475
  # A list of vector indexes to be added to or removed from the table.
11398
11476
  # You can add or remove one vector index for each `UpdateTable`
@@ -11421,6 +11499,7 @@ module Aws::DynamoDB
11421
11499
  :on_demand_throughput,
11422
11500
  :warm_throughput,
11423
11501
  :global_table_settings_replication_mode,
11502
+ :disassociation_protection_enabled,
11424
11503
  :vector_index_updates)
11425
11504
  SENSITIVE = []
11426
11505
  include Aws::Structure
@@ -56,7 +56,7 @@ module Aws::DynamoDB
56
56
  autoload :Endpoints, 'aws-sdk-dynamodb/endpoints'
57
57
  autoload :Table, 'aws-sdk-dynamodb/table'
58
58
 
59
- GEM_VERSION = '1.176.0'
59
+ GEM_VERSION = '1.177.0'
60
60
 
61
61
  end
62
62
 
data/sig/client.rbs CHANGED
@@ -28,6 +28,7 @@ module Aws
28
28
  ?convert_params: bool,
29
29
  ?correct_clock_skew: bool,
30
30
  ?defaults_mode: String,
31
+ ?disable_clock_skew_correction: bool,
31
32
  ?disable_host_prefix_injection: bool,
32
33
  ?disable_request_compression: bool,
33
34
  ?endpoint: String,
@@ -1219,6 +1220,10 @@ module Aws
1219
1220
  }?,
1220
1221
  delete: {
1221
1222
  region_name: ::String
1223
+ }?,
1224
+ disassociate: {
1225
+ region_name: ::String,
1226
+ disassociation_mode: ("WAIT_FOR_REPLICATION")
1222
1227
  }?
1223
1228
  }
1224
1229
  ],
@@ -1244,6 +1249,7 @@ module Aws
1244
1249
  write_units_per_second: ::Integer?
1245
1250
  },
1246
1251
  ?global_table_settings_replication_mode: ("ENABLED" | "DISABLED" | "ENABLED_WITH_OVERRIDES"),
1252
+ ?disassociation_protection_enabled: bool,
1247
1253
  ?vector_index_updates: Array[
1248
1254
  {
1249
1255
  create: {
data/sig/resource.rbs CHANGED
@@ -28,6 +28,7 @@ module Aws
28
28
  ?convert_params: bool,
29
29
  ?correct_clock_skew: bool,
30
30
  ?defaults_mode: String,
31
+ ?disable_clock_skew_correction: bool,
31
32
  ?disable_host_prefix_injection: bool,
32
33
  ?disable_request_compression: bool,
33
34
  ?endpoint: String,
data/sig/table.rbs CHANGED
@@ -90,6 +90,9 @@ module Aws
90
90
  # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/DynamoDB/Table.html#deletion_protection_enabled-instance_method
91
91
  def deletion_protection_enabled: () -> bool
92
92
 
93
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/DynamoDB/Table.html#disassociation_protection_enabled-instance_method
94
+ def disassociation_protection_enabled: () -> bool
95
+
93
96
  # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/DynamoDB/Table.html#on_demand_throughput-instance_method
94
97
  def on_demand_throughput: () -> Types::OnDemandThroughput
95
98
 
@@ -338,6 +341,10 @@ module Aws
338
341
  }?,
339
342
  delete: {
340
343
  region_name: ::String
344
+ }?,
345
+ disassociate: {
346
+ region_name: ::String,
347
+ disassociation_mode: ("WAIT_FOR_REPLICATION")
341
348
  }?
342
349
  }
343
350
  ],
@@ -363,6 +370,7 @@ module Aws
363
370
  write_units_per_second: ::Integer?
364
371
  },
365
372
  ?global_table_settings_replication_mode: ("ENABLED" | "DISABLED" | "ENABLED_WITH_OVERRIDES"),
373
+ ?disassociation_protection_enabled: bool,
366
374
  ?vector_index_updates: Array[
367
375
  {
368
376
  create: {
data/sig/types.rbs CHANGED
@@ -589,6 +589,12 @@ module Aws::DynamoDB
589
589
  SENSITIVE: []
590
590
  end
591
591
 
592
+ class DisassociateReplicationGroupMemberAction
593
+ attr_accessor region_name: ::String
594
+ attr_accessor disassociation_mode: ("WAIT_FOR_REPLICATION")
595
+ SENSITIVE: []
596
+ end
597
+
592
598
  class DuplicateItemException
593
599
  attr_accessor message: ::String
594
600
  SENSITIVE: []
@@ -1415,6 +1421,7 @@ module Aws::DynamoDB
1415
1421
  attr_accessor create: Types::CreateReplicationGroupMemberAction
1416
1422
  attr_accessor update: Types::UpdateReplicationGroupMemberAction
1417
1423
  attr_accessor delete: Types::DeleteReplicationGroupMemberAction
1424
+ attr_accessor disassociate: Types::DisassociateReplicationGroupMemberAction
1418
1425
  SENSITIVE: []
1419
1426
  end
1420
1427
 
@@ -1650,6 +1657,7 @@ module Aws::DynamoDB
1650
1657
  attr_accessor archival_summary: Types::ArchivalSummary
1651
1658
  attr_accessor table_class_summary: Types::TableClassSummary
1652
1659
  attr_accessor deletion_protection_enabled: bool
1660
+ attr_accessor disassociation_protection_enabled: bool
1653
1661
  attr_accessor on_demand_throughput: Types::OnDemandThroughput
1654
1662
  attr_accessor warm_throughput: Types::TableWarmThroughputDescription
1655
1663
  attr_accessor multi_region_consistency: ("EVENTUAL" | "STRONG")
@@ -1914,6 +1922,7 @@ module Aws::DynamoDB
1914
1922
  attr_accessor on_demand_throughput: Types::OnDemandThroughput
1915
1923
  attr_accessor warm_throughput: Types::WarmThroughput
1916
1924
  attr_accessor global_table_settings_replication_mode: ("ENABLED" | "DISABLED" | "ENABLED_WITH_OVERRIDES")
1925
+ attr_accessor disassociation_protection_enabled: bool
1917
1926
  attr_accessor vector_index_updates: ::Array[Types::VectorIndexUpdate]
1918
1927
  SENSITIVE: []
1919
1928
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-dynamodb
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.176.0
4
+ version: 1.177.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services