-
Notifications
You must be signed in to change notification settings - Fork 9.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Bug]: aws_dms_replication_task
failed with error InvalidParameterValueException: TimestampColumnName cannot be an empty string.
#27283
Comments
Community NoteVoting for Prioritization
Volunteering to Work on This Issue
|
Just realised that the Terraform provider applied a whole lot of default settings to the endpoint: {
"ServiceAccessRoleArn": "<arn>",
"ExternalTableDefinition": "",
"CsvRowDelimiter": "\\n",
"CsvDelimiter": ",",
"BucketFolder": "<folder>",
"BucketName": "<bucket>",
"CompressionType": "NONE",
"EncryptionMode": "SSE_S3",
"ServerSideEncryptionKmsKeyId": "",
"DataFormat": "csv",
"EncodingType": "rle-dictionary",
"DictPageSizeLimit": 1048576,
"RowGroupLength": 10000,
"DataPageSize": 1048576,
"ParquetVersion": "parquet-1-0",
"EnableStatistics": true,
"IncludeOpForFullLoad": true,
"CdcInsertsOnly": false,
"TimestampColumnName": "",
"ParquetTimestampInMillisecond": false,
"CdcInsertsAndUpdates": false,
"DatePartitionEnabled": false,
"DatePartitionSequence": "yyyymmdd",
"DatePartitionDelimiter": "slash",
"UseCsvNoSupValue": false,
"CsvNoSupValue": "",
"PreserveTransactions": false,
"CdcPath": "",
"UseTaskStartTimeForFullLoadTimestamp": false,
"CannedAclForObjects": "none",
"AddColumnName": false,
"CdcMaxBatchInterval": 60,
"CdcMinFileSize": 32,
"CsvNullValue": "NULL",
"MaxFileSize": 1048576,
"Rfc4180": false
}
|
Whereas the setting of an endpoint created by CloudFormation was a lot less verbose: {
"ServiceAccessRoleArn": "<arn>",
"CsvRowDelimiter": "\\n",
"CsvDelimiter": ",",
"BucketFolder": "<folder>",
"BucketName": "<bucket>",
"CompressionType": "NONE",
"EnableStatistics": true,
"DatePartitionEnabled": true
} |
I had a chat with the AWS support team and was told it looks like an issue with the way the |
I've been using DMS fairly regularly, but hit this same issue today. I tried defining the "timestamp_column_name" on the endpoint and setting TimestampColumnName=ts; on the endpoints "extra_connection_attributes" but no luck. Then rolled back to the 4.34.0 provider and re-init'd and I'm getting the same error.. Which would suggest it's a change on AWS side as DMS was working fine for months. |
Hmm I noticed, if I change from using an S3 target endpoint to using an oracle (same as source) it created the task fine. So seems it's related to S3 target endpoints? |
I think so |
Have you found any work around for it ? |
Unfortunately, no. I abandoned my effort Terraforming the DMS pipelines. |
The trouble is with the way Going forward, we can potentially remove these default values, technically a breaking change, relying on AWS for the defaults, and maybe get away with it. There is risk if someone's configuration has relied on the default values the AWS provider gives versus the values AWS would give. That risk needs to be weighed against the problems this is currently causing with the See also #28130 |
After looking at this more, this is resolved by using the |
This functionality has been released in v4.50.0 of the Terraform AWS Provider. Please see the Terraform documentation on provider versioning or reach out if you need any assistance upgrading. For further feature requests or bug reports with this functionality, please create a new GitHub issue following the template. Thank you! |
Still have the same issue
|
@YakDriver aws provider 4.50.0 |
I also ran into this issue today, but was able to fix it. Example:
|
We are adding a module for resource aws_dms_s3_endpoint as a alternative to solve the error related to the issue below hashicorp/terraform-provider-aws#27283 "aws_dms_replication_task failed with error InvalidParameterValueException: TimestampColumnName cannot be an empty string."
We are adding a module for resource aws_dms_s3_endpoint as a alternative to solve the error related to the issue below hashicorp/terraform-provider-aws#27283 "aws_dms_replication_task failed with error InvalidParameterValueException: TimestampColumnName cannot be an empty string."
Using |
I saw and tried that resource as well, but had difficulties with its outputs. For some reason, when using |
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. |
Terraform Core Version
1.3.2
AWS Provider Version
4.35.0
Affected Resource(s)
aws_dms_replication_task
Expected Behavior
The Terraform provider should create a task successfully.
Actual Behavior
The Terraform provider failed to create the resource and reported the error:
InvalidParameterValueException: TimestampColumnName cannot be an empty string.
Relevant Error/Panic Output Snippet
No response
Terraform Configuration Files
Steps to Reproduce
Run
terraform apply
Debug Output
No response
Panic Output
No response
Important Factoids
No response
References
No response
Would you like to implement a fix?
No response
The text was updated successfully, but these errors were encountered: