Skip to content

Conversation

@laststem
Copy link
Contributor

Description

This PR adds support for the new warm_throughput configuration option for DynamoDB tables.
Recently, AWS introduced the ability to set warm throughput for On-Demand DynamoDB tables, which allows pre-scaling of partitions to handle anticipated write or read traffic spikes more reliably.

With this change, users of the module can specify a warm_throughput value in WCU/RCU that will be provisioned ahead of time, ensuring their tables are pre-warmed for migration jobs, batch workloads, or expected traffic surges.

Motivation and Context

During high-throughput migrations or batch workloads (e.g., moving data from MySQL to DynamoDB), DynamoDB On-Demand capacity may initially throttle while it scales up.

Warm throughput solves this by proactively allocating partitions to meet the specified throughput baseline.

Breaking Changes

No breaking changes.

The new variable warm_throughput is optional.

If not set, the module behavior remains unchanged and no warm throughput is applied.

How Has This Been Tested?

  • I have updated at least one of the examples/* to demonstrate and validate my change(s)
  • I have tested and validated these changes using one or more of the provided examples/* projects
    Converted the table from provisioned with autoscaling to on-demand mode.
    Removed autoscaling configuration since it is not applicable with on-demand capacity.
    Applied the module with warm_throughput set (e.g., 30000) to verify that the table was created with the warm throughput baseline.
      + warm_throughput {
          + read_units_per_second  = 20000
          + write_units_per_second = 30000
        }
    }

Plan: 2 to add, 0 to change, 0 to destroy.

Applied the module with warm_throughput unset to verify that the table was created without warm throughput (default on-demand behavior).

      + warm_throughput (known after apply)
    }

Plan: 2 to add, 0 to change, 0 to destroy.

Verified both configurations (with and without warm throughput) were deployed successfully without errors and matched the expected DynamoDB table settings in AWS console.

  • I have executed pre-commit run -a on my pull request

@laststem laststem changed the title support warm throughput feat: Support warm throughput Sep 12, 2025
@github-actions
Copy link

This PR has been automatically marked as stale because it has been open 30 days
with no activity. Remove stale label or comment or this PR will be closed in 10 days

@github-actions github-actions bot added the stale label Oct 13, 2025
@github-actions
Copy link

This PR was automatically closed because of stale in 10 days

@github-actions github-actions bot closed this Oct 24, 2025
@smalderez
Copy link

smalderez commented Oct 24, 2025

I am interested in this feature! Can you please reopen it with conventional commit (ci was ko). It seems you only changed the title but not the commit.

@antonbabenko antonbabenko reopened this Oct 24, 2025
@github-actions github-actions bot removed the stale label Oct 25, 2025
@laststem
Copy link
Contributor Author

@antonbabenko Thanks for reopening. Is there anything else I need to do to get this PR merged?

@antonbabenko antonbabenko merged commit de60a3f into terraform-aws-modules:master Oct 25, 2025
9 checks passed
antonbabenko pushed a commit that referenced this pull request Oct 25, 2025
## [5.2.0](v5.1.1...v5.2.0) (2025-10-25)

### Features

* Support warm throughput ([#106](#106)) ([de60a3f](de60a3f))
@antonbabenko
Copy link
Member

This PR is included in version 5.2.0 🎉

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants