ModifyReplicationTask
Modifies the specified replication task.
You can't modify the task endpoints. The task must be stopped before you can modify it.
For more information about AWS DMS tasks, see Working with Migration Tasks in the AWS Database Migration Service User Guide.
Request Syntax
{
"CdcStartPosition": "string
",
"CdcStartTime": number
,
"CdcStopPosition": "string
",
"MigrationType": "string
",
"ReplicationTaskArn": "string
",
"ReplicationTaskIdentifier": "string
",
"ReplicationTaskSettings": "string
",
"TableMappings": "string
",
"TaskData": "string
"
}
Request Parameters
For information about the parameters that are common to all actions, see Common Parameters.
The request accepts the following data in JSON format.
- CdcStartPosition
-
Indicates when you want a change data capture (CDC) operation to start. Use either CdcStartPosition or CdcStartTime to specify when you want a CDC operation to start. Specifying both values results in an error.
The value can be in date, checkpoint, or LSN/SCN format.
Date Example: --cdc-start-position “2018-03-08T12:12:12”
Checkpoint Example: --cdc-start-position "checkpoint:V1#27#mysql-bin-changelog.157832:1975:-1:2002:677883278264080:mysql-bin-changelog.157832:1876#0#0#*#0#93"
LSN Example: --cdc-start-position “mysql-bin-changelog.000024:373”
Note
When you use this task setting with a source PostgreSQL database, a logical replication slot should already be created and associated with the source endpoint. You can verify this by setting the
slotName
extra connection attribute to the name of this logical replication slot. For more information, see Extra Connection Attributes When Using PostgreSQL as a Source for AWS DMS.Type: String
Required: No
- CdcStartTime
-
Indicates the start time for a change data capture (CDC) operation. Use either CdcStartTime or CdcStartPosition to specify when you want a CDC operation to start. Specifying both values results in an error.
Timestamp Example: --cdc-start-time “2018-03-08T12:12:12”
Type: Timestamp
Required: No
- CdcStopPosition
-
Indicates when you want a change data capture (CDC) operation to stop. The value can be either server time or commit time.
Server time example: --cdc-stop-position “server_time:2018-02-09T12:12:12”
Commit time example: --cdc-stop-position “commit_time:2018-02-09T12:12:12“
Type: String
Required: No
- MigrationType
-
The migration type. Valid values:
full-load
|cdc
|full-load-and-cdc
Type: String
Valid Values:
full-load | cdc | full-load-and-cdc
Required: No
- ReplicationTaskArn
-
The Amazon Resource Name (ARN) of the replication task.
Type: String
Required: Yes
- ReplicationTaskIdentifier
-
The replication task identifier.
Constraints:
-
Must contain 1-255 alphanumeric characters or hyphens.
-
First character must be a letter.
-
Cannot end with a hyphen or contain two consecutive hyphens.
Type: String
Required: No
-
- ReplicationTaskSettings
-
JSON file that contains settings for the task, such as task metadata settings.
Type: String
Required: No
- TableMappings
-
When using the AWS CLI or boto3, provide the path of the JSON file that contains the table mappings. Precede the path with
file://
. For example,--table-mappings file://mappingfile.json
. When working with the AWS DMS API, provide the JSON as the parameter value.Type: String
Required: No
- TaskData
-
Supplemental information that the task requires to migrate the data for certain source and target endpoints. For more information, see Specifying Supplemental Data for Task Settings in the AWS Database Migration Service User Guide.
Type: String
Required: No
Response Syntax
{
"ReplicationTask": {
"CdcStartPosition": "string",
"CdcStopPosition": "string",
"LastFailureMessage": "string",
"MigrationType": "string",
"RecoveryCheckpoint": "string",
"ReplicationInstanceArn": "string",
"ReplicationTaskArn": "string",
"ReplicationTaskCreationDate": number,
"ReplicationTaskIdentifier": "string",
"ReplicationTaskSettings": "string",
"ReplicationTaskStartDate": number,
"ReplicationTaskStats": {
"ElapsedTimeMillis": number,
"FreshStartDate": number,
"FullLoadFinishDate": number,
"FullLoadProgressPercent": number,
"FullLoadStartDate": number,
"StartDate": number,
"StopDate": number,
"TablesErrored": number,
"TablesLoaded": number,
"TablesLoading": number,
"TablesQueued": number
},
"SourceEndpointArn": "string",
"Status": "string",
"StopReason": "string",
"TableMappings": "string",
"TargetEndpointArn": "string",
"TargetReplicationInstanceArn": "string",
"TaskData": "string"
}
}
Response Elements
If the action is successful, the service sends back an HTTP 200 response.
The following data is returned in JSON format by the service.
- ReplicationTask
-
The replication task that was modified.
Type: ReplicationTask object
Errors
For information about the errors that are common to all actions, see Common Errors.
- InvalidResourceStateFault
-
The resource is in a state that prevents it from being used for database migration.
HTTP Status Code: 400
- KMSKeyNotAccessibleFault
-
AWS DMS cannot access the KMS key.
HTTP Status Code: 400
- ResourceAlreadyExistsFault
-
The resource you are attempting to create already exists.
HTTP Status Code: 400
- ResourceNotFoundFault
-
The resource could not be found.
HTTP Status Code: 400
Examples
Example
This example illustrates one usage of ModifyReplicationTask.
Sample Request
POST / HTTP/1.1
Host: dms.<region>.<domain>
x-amz-Date: <Date>
Authorization: AWS4-HMAC-SHA256 Credential=<Credential>, SignedHeaders=contenttype;date;host;user-agent;x-amz-date;x-amz-target;x-amzn-requestid,Signature=<Signature>
User-Agent: <UserAgentString>
Content-Type: application/x-amz-json-1.1
Content-Length: <PayloadSizeBytes>
Connection: Keep-Alive
X-Amz-Target: AmazonDMSv20160101.ModifyReplicationTask
{
"ReplicationTaskIdentifier":"task1_modified",
"ReplicationTaskArn":"arn:aws:dms:us-east-1:123456789012:task:RZZK4EZW5UANC7Y3P4E776WHBE"
}
Sample Response
HTTP/1.1 200 OK
x-amzn-RequestId: <RequestId>
Content-Type: application/x-amz-json-1.1
Content-Length: <PayloadSizeBytes>
Date: <Date>
{
"ReplicationTask":{
"SourceEndpointArn":"arn:aws:dms:us-east-1:123456789012:endpoint:DVBXJQXKZASYWHTCWNL4TNW76D",
"ReplicationTaskIdentifier":"task1_modified",
"ReplicationInstanceArn":"arn:aws:dms:us-east-1:123456789012:rep:6USOU366XFJUWATDJGBCJS3VIQ",
"TableMappings":"{\n \"TableMappings\": [
\n {\n \"Type\": \"Include\",\n \"SourceSchema\": \"/\",\n \"SourceTable\": \"/\"\n
}\n ]\n}\n\n",
"Status":"creating",
"ReplicationTaskArn":"arn:aws:dms:us-east-1:123456789012:task:RZZK4EZW5UANC7Y3P4E776WHBE",
"ReplicationTaskCreationDate":1457658407.492,
"MigrationType":"full-load",
"TargetEndpointArn":"arn:aws:dms:us-east-1:123456789012:endpoint:GVBUJQXJZASXWHTWCLN2WNT57E",
"ReplicationTaskSettings":"{\"TargetMetadata\":
{\"TargetSchema\":\"\",\"SupportLobs\":true,\"FullLobMode\":
true,\"LobChunkSize\":64,\"LimitedSizeLobMode\":
false,\"LobMaxSize\":0},\"FullLoadSettings\":{
\"FullLoadEnabled\":true,
\"TargetTablePrepMode\":\"DROP_AND_CREATE\",
\"CreatePkAfterFullLoad\":false,
\"StopTaskCachedChangesApplied\":false,
\"StopTaskCachedChangesNotApplied\":false,
\"ResumeEnabled\":false,
\"ResumeMinTableSize\":100000,
\"ResumeOnlyClusteredPKTables\":true,
\"MaxFullLoadSubTasks\":8,
\"TransactionConsistencyTimeout\":600,
\"CommitRate\":10000
},
\"Logging\":{
\"EnableLogging\":false
}
}"
}
}
See Also
For more information about using this API in one of the language-specific AWS SDKs, see the following: