X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=bacula%2Fsrc%2Fcats%2Fsql_get.c;h=8190fa84ee6a6023eb4bd69c1c51c48f7ded5c8c;hb=fe04cba89598f50e22988a433e6f3233fdd6dc53;hp=1d76c7806b7647cf3dc0d16925865e6c84f4f83c;hpb=01448b9cc8baff2e1942aaa59b71c36ee1cf070c;p=bacula%2Fbacula diff --git a/bacula/src/cats/sql_get.c b/bacula/src/cats/sql_get.c index 1d76c7806b..8190fa84ee 100644 --- a/bacula/src/cats/sql_get.c +++ b/bacula/src/cats/sql_get.c @@ -429,7 +429,7 @@ int db_get_job_volume_parameters(JCR *jcr, B_DB *mdb, JobId_t JobId, VOL_PARAMS Mmsg(mdb->cmd, "SELECT VolumeName,MediaType,FirstIndex,LastIndex,StartFile," "JobMedia.EndFile,StartBlock,JobMedia.EndBlock,Copy," -"Slot,StorageId" +"Slot,StorageId,InChanger" " FROM JobMedia,Media WHERE JobMedia.JobId=%s" " AND JobMedia.MediaId=Media.MediaId ORDER BY VolIndex,JobMediaId", edit_int64(JobId, ed1)); @@ -470,6 +470,7 @@ int db_get_job_volume_parameters(JCR *jcr, B_DB *mdb, JobId_t JobId, VOL_PARAMS // Vols[i].Copy = str_to_uint64(row[8]); Vols[i].Slot = str_to_uint64(row[9]); StorageId = str_to_uint64(row[10]); + Vols[i].InChanger = str_to_uint64(row[11]); Vols[i].Storage[0] = 0; SId[i] = StorageId; } @@ -1102,7 +1103,7 @@ bool db_accurate_get_jobids(JCR *jcr, B_DB *mdb, char clientid[50], jobid[50], filesetid[50]; char date[MAX_TIME_LENGTH]; POOL_MEM query(PM_FNAME); - bstrutime(date, sizeof(date), time(NULL) + 1); + bstrutime(date, sizeof(date), jr->JobTDate + 1); jobids[0]='\0'; /* First, find the last good Full backup for this job/client/fileset */ @@ -1133,11 +1134,13 @@ bool db_accurate_get_jobids(JCR *jcr, B_DB *mdb, "WHERE ClientId = %s " "AND Level='D' AND JobStatus IN ('T','W') AND Type='B' " "AND StartTime > (SELECT EndTime FROM btemp3%s ORDER BY EndTime DESC LIMIT 1) " + "AND StartTime < '%s' " "AND FileSet.FileSet= (SELECT FileSet FROM FileSet WHERE FileSetId = %s) " "ORDER BY Job.JobTDate DESC LIMIT 1 ", jobid, clientid, jobid, + date, filesetid); if (!db_sql_query(mdb, query.c_str(), NULL, NULL)) { @@ -1152,11 +1155,13 @@ bool db_accurate_get_jobids(JCR *jcr, B_DB *mdb, "WHERE ClientId = %s " "AND Level='I' AND JobStatus IN ('T','W') AND Type='B' " "AND StartTime > (SELECT EndTime FROM btemp3%s ORDER BY EndTime DESC LIMIT 1) " + "AND StartTime < '%s' " "AND FileSet.FileSet= (SELECT FileSet FROM FileSet WHERE FileSetId = %s) " "ORDER BY Job.JobTDate DESC ", jobid, clientid, jobid, + date, filesetid); if (!db_sql_query(mdb, query.c_str(), NULL, NULL)) { goto bail_out;