From: Dan Langille Date: Sat, 3 Jan 2004 22:34:23 +0000 (+0000) Subject: When writing to the media table, update the lastwritten field iff non-zero. X-Git-Tag: Release-1.34.0~179 X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=5433c8145d4d990292c4dde09bb64ed76bd8af3e;p=bacula%2Fbacula When writing to the media table, update the lastwritten field iff non-zero. git-svn-id: https://bacula.svn.sourceforge.net/svnroot/bacula/trunk@988 91ce42f0-d328-0410-95d8-f526ca767f89 --- diff --git a/bacula/src/cats/sql_update.c b/bacula/src/cats/sql_update.c index c48e0940bd..d00249e0b7 100644 --- a/bacula/src/cats/sql_update.c +++ b/bacula/src/cats/sql_update.c @@ -292,23 +292,38 @@ db_update_media_record(JCR *jcr, B_DB *mdb, MEDIA_DBR *mr) /* Make sure InChanger is 0 for any record having the same Slot */ db_make_inchanger_unique(jcr, mdb, mr); - ttime = mr->LastWritten; - localtime_r(&ttime, &tm); - strftime(dt, sizeof(dt), "%Y-%m-%d %T", &tm); + if (mr->LastWritten != 0) { - Mmsg(&mdb->cmd, "UPDATE Media SET VolJobs=%u," - "VolFiles=%u,VolBlocks=%u,VolBytes=%s,VolMounts=%u,VolErrors=%u," - "VolWrites=%u,MaxVolBytes=%s,LastWritten='%s',VolStatus='%s'," - "Slot=%d,InChanger=%d,VolReadTime=%s,VolWriteTime=%s " - " WHERE VolumeName='%s'", - mr->VolJobs, mr->VolFiles, mr->VolBlocks, edit_uint64(mr->VolBytes, ed1), - mr->VolMounts, mr->VolErrors, mr->VolWrites, - edit_uint64(mr->MaxVolBytes, ed2), dt, - mr->VolStatus, mr->Slot, mr->InChanger, - edit_uint64(mr->VolReadTime, ed3), - edit_uint64(mr->VolWriteTime, ed4), - mr->VolumeName); + ttime = mr->LastWritten; + localtime_r(&ttime, &tm); + strftime(dt, sizeof(dt), "%Y-%m-%d %T", &tm); + Mmsg(&mdb->cmd, "UPDATE Media SET VolJobs=%u," + "VolFiles=%u,VolBlocks=%u,VolBytes=%s,VolMounts=%u,VolErrors=%u," + "VolWrites=%u,MaxVolBytes=%s,LastWritten='%s',VolStatus='%s'," + "Slot=%d,InChanger=%d,VolReadTime=%s,VolWriteTime=%s " + " WHERE VolumeName='%s'", + mr->VolJobs, mr->VolFiles, mr->VolBlocks, edit_uint64(mr->VolBytes, ed1), + mr->VolMounts, mr->VolErrors, mr->VolWrites, + edit_uint64(mr->MaxVolBytes, ed2), dt, + mr->VolStatus, mr->Slot, mr->InChanger, + edit_uint64(mr->VolReadTime, ed3), + edit_uint64(mr->VolWriteTime, ed4), + mr->VolumeName); + } else { + Mmsg(&mdb->cmd, "UPDATE Media SET VolJobs=%u," + "VolFiles=%u,VolBlocks=%u,VolBytes=%s,VolMounts=%u,VolErrors=%u," + "VolWrites=%u,MaxVolBytes=%s,VolStatus='%s'," + "Slot=%d,InChanger=%d,VolReadTime=%s,VolWriteTime=%s " + " WHERE VolumeName='%s'", + mr->VolJobs, mr->VolFiles, mr->VolBlocks, edit_uint64(mr->VolBytes, ed1), + mr->VolMounts, mr->VolErrors, mr->VolWrites, + edit_uint64(mr->MaxVolBytes, ed2), + mr->VolStatus, mr->Slot, mr->InChanger, + edit_uint64(mr->VolReadTime, ed3), + edit_uint64(mr->VolWriteTime, ed4), + mr->VolumeName); + } Dmsg1(400, "%s\n", mdb->cmd);