Fix Terraform Kinesis Stream - ResourceInUseException
Fix AWS Kinesis stream name conflict errors in Terraform. Handle duplicate streams, import existing resources, shard count changes, and stream modes.
Troubleshooting
Fix AWS Step Functions duplicate state machine errors in Terraform. Covers naming conflicts, import, definition updates, and versioning patterns.
A Step Functions state machine with the same name already exists in the region. Import it into Terraform, use a unique name, or delete the orphaned state machine.
Error: creating Step Functions State Machine (order-processing):
StateMachineAlreadyExists: State Machine Already Exists:
'arn:aws:states:us-east-1:123456789012:stateMachine:order-processing'# Find the state machine ARN
aws stepfunctions list-state-machines \
--query "stateMachines[?name=='order-processing'].stateMachineArn"
# Import using the ARN
terraform import aws_sfn_state_machine.order_processing \
arn:aws:states:us-east-1:123456789012:stateMachine:order-processingresource "aws_sfn_state_machine" "order_processing" {
name = "${var.project}-${var.environment}-order-processing"
role_arn = aws_iam_role.step_functions.arn
definition = jsonencode({
StartAt = "ProcessOrder"
States = {
ProcessOrder = {
Type = "Task"
Resource = aws_lambda_function.process_order.arn
End = true
}
}
})
tags = {
Environment = var.environment
ManagedBy = "terraform"
}
}# Delete if no longer needed
aws stepfunctions delete-state-machine \
--state-machine-arn arn:aws:states:us-east-1:123456789012:stateMachine:order-processing
# Then apply
terraform applyaws stepfunctions list-state-machines)myapp-prod-order-processingManagedBy = "terraform" for easy identificationterraform state list to verify what's trackedStateMachineAlreadyExists means the name is taken. Import the existing state machine or use environment-prefixed names to prevent collisions across workspaces.
Fix AWS Kinesis stream name conflict errors in Terraform. Handle duplicate streams, import existing resources, shard count changes, and stream modes.
Fix AWS MSK cluster throttling errors in Terraform. Handle API rate limits, retry configuration, reduce parallelism, and manage long cluster creation times.
Fix ElastiCache cluster name conflicts in Terraform. Import existing clusters, use unique naming conventions, and handle replication group configurations.
Fix AWS EventBridge rule already exists errors in Terraform. Covers rule naming conflicts, event bus configuration, import, and cross-account event patterns.