Git Product home page Git Product logo

Comments (6)

bryantbiggs avatar bryantbiggs commented on June 22, 2024

I don't see the benefit of adding anything additional here. The API documentation is clear, the provider documentation is clear, and the Terraform plan/apply output is quite clear - am I missing anything?

from terraform-aws-dynamodb-table.

mnylensc avatar mnylensc commented on June 22, 2024

Well, the documentation does feel it necessary to mention this:

Warning: enabling or disabling autoscaling can cause your table to be recreated

There are two separate Terraform resources used for the DynamoDB table: one is for when any autoscaling is enabled the other when disabled. If your table is already created and then you change the variable autoscaling_enabled then your table will be recreated by Terraform. In this case you will need to move the old aws_dynamodb_table resource that is being destroyed to the new resource that is being created. For example:

terraform state mv module.dynamodb_table.aws_dynamodb_table.this module.dynamodb_table.aws_dynamodb_table.autoscaled

So if the documentation warns about enabling or disabling autoscaling will cause your tables to be recreated, why the similar warning shouldn't be extended to the case where you use ignore_changes_global_secondary_index, which has the same small side effect of potentially recreating your table.

Then, the inputs section says just:

ignore_changes_global_secondary_index - Whether to ignore changes lifecycle to global secondary indices, useful for provisioned tables with scaling

Not even a mention that there's a bit more to this, unlike with autoscaling_enabled where it at least mentions to read a note:

autoscaling_enabled - Whether or not to enable autoscaling. See note in README about this setting

Just my two cents, but the only way for average person to know this will happen is to try it and then see terraform plan suggesting to delete your production table. Could use some warning at the documentation level.

from terraform-aws-dynamodb-table.

bryantbiggs avatar bryantbiggs commented on June 22, 2024

Terraform, and modules like this, are just the implementation. Users need to know the services and their API behaviors regardless of the implementation. We're not going to duplicate the service and API docs here, we focus on documenting this specific implementation

from terraform-aws-dynamodb-table.

mnylensc avatar mnylensc commented on June 22, 2024

I created a PR with my proposed changes for the documentation - #83

from terraform-aws-dynamodb-table.

antonbabenko avatar antonbabenko commented on June 22, 2024

This issue has been resolved in version 4.0.1 🎉

from terraform-aws-dynamodb-table.

github-actions avatar github-actions commented on June 22, 2024

I'm going to lock this issue because it has been closed for 30 days ⏳. This helps our maintainers find and focus on the active issues. If you have found a problem that seems similar to this, please open a new issue and complete the issue template so we can capture all the details necessary to investigate further.

from terraform-aws-dynamodb-table.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.