]> git.sur5r.net Git - bacula/bacula/blobdiff - bacula/src/dird/migrate.c
ebl Add new ScratchPool directive to Pool. Thanks to Graham
[bacula/bacula] / bacula / src / dird / migrate.c
index b2d3fb425645315f6e5afba81304701ef0b331fd..9bdfab58f96e46f47186643d1581db80d4ce898d 100644 (file)
@@ -590,7 +590,7 @@ const char *sql_jobids_of_pool_uncopied_jobs =
    " 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";
 
@@ -1158,15 +1158,17 @@ void migration_cleanup(JCR *jcr, int TermCode)
       /*
        * 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) {
-         UAContext *ua = new_ua_context(jcr);
          /* 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);
-         free_ua_context(ua);
+         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)) {