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
Copy file name to clipboardExpand all lines: README.md
+9Lines changed: 9 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -35,6 +35,13 @@ There are two separate Terraform resources used for the DynamoDB table: one is f
35
35
terraform state mv module.dynamodb_table.aws_dynamodb_table.this module.dynamodb_table.aws_dynamodb_table.autoscaled
36
36
```
37
37
38
+
**Warning: autoscaling with global secondary indexes**
39
+
40
+
When using an autoscaled provisioned table with GSIs you may find that applying TF changes whilst a GSI is scaled up will reset the capacity, there
41
+
is an [open issue for this on the AWS Provider](https://github.com/hashicorp/terraform-provider-aws/issues/671). To get around this issue you can enable
42
+
the `ignore_changes_global_secondary_index` setting however, using this setting means that any changes to GSIs will be ignored by Terraform and will
43
+
hence have to be applied manually (or via some other automation).
44
+
38
45
## Module wrappers
39
46
40
47
Users of this Terraform module can create multiple similar resources by using [`for_each` meta-argument within `module` block](https://www.terraform.io/language/meta-arguments/for_each) which became available in Terraform 0.13.
| <aname="input_deletion_protection_enabled"></a> [deletion\_protection\_enabled](#input\_deletion\_protection\_enabled)| Enables deletion protection for table |`bool`|`null`| no |
96
104
| <aname="input_global_secondary_indexes"></a> [global\_secondary\_indexes](#input\_global\_secondary\_indexes)| Describe a GSI for the table; subject to the normal limits on the number of GSIs, projected attributes, etc. |`any`|`[]`| no |
97
105
| <aname="input_hash_key"></a> [hash\_key](#input\_hash\_key)| The attribute to use as the hash (partition) key. Must also be defined as an attribute |`string`|`null`| no |
106
+
| <aname="input_ignore_changes_global_secondary_index"></a> [ignore\_changes\_global\_secondary\_index](#input\_ignore\_changes\_global\_secondary\_index)| Whether to ignore changes lifecycle to global secondary indices, useful for provisioned tables with scaling |`bool`|`false`| no |
98
107
| <aname="input_local_secondary_indexes"></a> [local\_secondary\_indexes](#input\_local\_secondary\_indexes)| Describe an LSI on the table; these can only be allocated at creation so you cannot change this definition after you have created the resource. |`any`|`[]`| no |
99
108
| <aname="input_name"></a> [name](#input\_name)| Name of the DynamoDB table |`string`|`null`| no |
100
109
| <aname="input_point_in_time_recovery_enabled"></a> [point\_in\_time\_recovery\_enabled](#input\_point\_in\_time\_recovery\_enabled)| Whether to enable point-in-time recovery |`bool`|`false`| no |
0 commit comments