" AND Job.Type = 'B' AND Job.JobStatus = 'T'"
" AND Job.JobId NOT IN"
" (SELECT PriorJobId FROM Job WHERE"
- " Type = 'B' AND Job.JobStatus = 'T'"
+ " Type IN ('B','C') AND Job.JobStatus = 'T'"
" AND PriorJobId != 0)"
" ORDER by Job.StartTime";
free_ua_context(ua);
}
+ /*
+ * If we terminated a copy normally:
+ * - copy any Log records to the new JobId
+ * - set type="Job Copy" for the new job
+ */
+ if (jcr->get_JobType() == JT_COPY && jcr->JobStatus == JS_Terminated) {
+ /* Copy JobLog to new JobId */
+ Mmsg(query, "INSERT INTO Log (JobId, Time, LogText ) "
+ "SELECT %s, Time, LogText FROM Log WHERE JobId=%s",
+ new_jobid, old_jobid);
+ db_sql_query(mig_jcr->db, query.c_str(), NULL, NULL);
+ Mmsg(query, "UPDATE Job SET Type='%c' WHERE JobId=%s",
+ (char)JT_JOB_COPY, new_jobid);
+ db_sql_query(mig_jcr->db, query.c_str(), NULL, NULL);
+ }
+
if (!db_get_job_record(jcr, jcr->db, &jcr->jr)) {
Jmsg(jcr, M_WARNING, 0, _("Error getting Job record for Job report: ERR=%s"),
db_strerror(jcr->db));