2 This patch should prevent migration jobs from attempting to migrate
3 jobs that failed. Apply it to Bacula 2.4.3 (possibly earlier versions)
7 patch -p0 <2.4.3-migrate.patch
8 ./configure <your-options>
14 Index: src/dird/migrate.c
15 ===================================================================
16 --- src/dird/migrate.c (revision 7757)
17 +++ src/dird/migrate.c (working copy)
19 * to avoid two threads from using the BSOCK structure at
22 - if (!bnet_fsend(sd, "run")) {
23 + if (!sd->fsend("run")) {
28 "SELECT DISTINCT Job.JobId,Job.StartTime FROM Job,Pool,Client"
29 " WHERE Client.Name='%s' AND Pool.Name='%s' AND Job.PoolId=Pool.PoolId"
30 " AND Job.ClientId=Client.ClientId AND Job.Type='B'"
31 + " AND Job.JobStatus = 'T'"
32 " ORDER by Job.StartTime";
34 /* Get Volume names in Pool */
36 "SELECT DISTINCT Job.JobId,Job.StartTime FROM Media,JobMedia,Job"
37 " WHERE Media.VolumeName='%s' AND Media.MediaId=JobMedia.MediaId"
38 " AND JobMedia.JobId=Job.JobId AND Job.Type='B'"
39 + " AND Job.JobStatus = 'T' AND Media.Enabled=1"
40 " ORDER by Job.StartTime";
43 const char *sql_smallest_vol =
44 "SELECT Media.MediaId FROM Media,Pool,JobMedia WHERE"
45 " Media.MediaId in (SELECT DISTINCT MediaId from JobMedia) AND"
47 const char *sql_job_bytes =
48 "SELECT SUM(JobBytes) FROM Job WHERE JobId IN (%s)";
51 /* Get Media Ids in Pool */
52 const char *sql_mediaids =
53 "SELECT MediaId FROM Media,Pool WHERE"