Data Mover provides table-level restarts. A table-level restart indicates that prior to the job failure, all of the table rows were copied successfully. Data Mover will not copy the table rows again if the job is restarted. However, if the job fails at any point while copying the rows for a table, Data Mover copies all of the table rows again when the job is restarted.
Data Mover jobs can only be restarted using the restart command under the following conditions:
- The job failed while running. The job has a status of FAILED when viewed with the status or list_jobs commands.
- The job was stopped with the stop command. The job has a status of USER_CANCELLED when viewed with the status or list_jobs commands.
In either case, do not run the cleanup command before restarting the job, or all work that the job did will be lost. Also, resolve whatever issued caused the job failure before restarting the job.
After the issue is resolved, you can restart the job with the datamove restart -job_name <job name> command.
Data Mover takes different actions when restarting a job, depending on the step in which the job failed. Restart actions are described in the following table:
|Step||Description||Data Mover Action During Restart|
|CLEAN_UP||Added to restart jobs. Tasks for cleaning up remnants of a failed job process.||Runs the entire restart job again.|
|Tasks for setting up staging tables.||Finishes performing setup tasks that were not completed, then runs the rest of the job.|
|MOVE_TABLE_DATA||Teradata PT API or Teradata JDBC tasks used to copy the table.||
|RESOLVE_TABLE_AFTER_LOAD||Tasks such as performing INSERT or SELECT statements from staging to the target table, and adding indexes and triggers.||Completes tasks that were not completed, then runs the rest of the job.|
|COPY_STATISTICS||Tasks to copy statistics.||Completes tasks that were not completed, then runs the rest of the job.|
|ROW_COUNT_VALIDATION||Number of copied rows for each table, ensuring rows in source and target tables match. Normally the last step of a job.||Completes tasks that were not completed, then runs the rest of the job.|
- The restart feature does not contain any logic to resolve the root issue of why the job failed. Resolve such issues before restarting the job.
- For jobs with failed DSA tasks, use cleanup instead of restart. DSA does not support restart.
- When performing restarts, Data Mover does not gather any new information about the source or target, but runs the remainder of the job as originally intended. Data Mover does not adapt the restart job to any changes that might have occurred since the job was originally created. In some cases, it might be necessary to run the cleanup command and create a new job if the original job plan is out of date.
- When a job is restarted, the status command output reflects only the status of the work being done for the restart job.