|
Andreas Thienemann |
6e96e5 |
diff -up bacula-2.0.3/src/stored/dev.h.restore bacula-2.0.3/src/stored/dev.h
|
|
Andreas Thienemann |
6e96e5 |
--- bacula-2.0.3/src/stored/dev.h.restore 2007-09-13 12:32:46.000000000 +0200
|
|
Andreas Thienemann |
6e96e5 |
+++ bacula-2.0.3/src/stored/dev.h 2007-09-13 12:34:56.000000000 +0200
|
|
Andreas Thienemann |
6e96e5 |
@@ -438,6 +438,7 @@ public:
|
|
Andreas Thienemann |
6e96e5 |
uint32_t StartFile; /* Start write file */
|
|
Andreas Thienemann |
6e96e5 |
uint32_t StartBlock; /* Start write block */
|
|
Andreas Thienemann |
6e96e5 |
uint32_t EndBlock; /* Ending block written */
|
|
Andreas Thienemann |
6e96e5 |
+ int64_t VolMediaId; /* MediaId */
|
|
Andreas Thienemann |
6e96e5 |
int64_t job_spool_size; /* Current job spool size */
|
|
Andreas Thienemann |
6e96e5 |
int64_t max_job_spool_size; /* Max job spool size */
|
|
Andreas Thienemann |
6e96e5 |
char VolumeName[MAX_NAME_LENGTH]; /* Volume name */
|
|
Andreas Thienemann |
6e96e5 |
diff -up bacula-2.0.3/src/stored/askdir.c.restore bacula-2.0.3/src/stored/askdir.c
|
|
Andreas Thienemann |
6e96e5 |
--- bacula-2.0.3/src/stored/askdir.c.restore 2007-09-13 12:32:54.000000000 +0200
|
|
Andreas Thienemann |
6e96e5 |
+++ bacula-2.0.3/src/stored/askdir.c 2007-09-13 12:34:56.000000000 +0200
|
|
Andreas Thienemann |
6e96e5 |
@@ -391,7 +391,7 @@ bool dir_create_jobmedia_record(DCR *dcr
|
|
Andreas Thienemann |
6e96e5 |
dcr->StartFile, dcr->EndFile,
|
|
Andreas Thienemann |
6e96e5 |
dcr->StartBlock, dcr->EndBlock,
|
|
Andreas Thienemann |
6e96e5 |
dcr->Copy, dcr->Stripe,
|
|
Andreas Thienemann |
6e96e5 |
- edit_uint64(dcr->dev->VolCatInfo.VolMediaId, ed1));
|
|
Andreas Thienemann |
6e96e5 |
+ edit_uint64(dcr->VolMediaId, ed1));
|
|
Andreas Thienemann |
6e96e5 |
Dmsg1(100, ">dird: %s", dir->msg);
|
|
Andreas Thienemann |
6e96e5 |
if (bnet_recv(dir) <= 0) {
|
|
Andreas Thienemann |
6e96e5 |
Dmsg0(190, "create_jobmedia error bnet_recv\n");
|
|
Andreas Thienemann |
6e96e5 |
diff -up bacula-2.0.3/src/stored/bscan.c.restore bacula-2.0.3/src/stored/bscan.c
|
|
Andreas Thienemann |
6e96e5 |
--- bacula-2.0.3/src/stored/bscan.c.restore 2007-09-13 12:32:36.000000000 +0200
|
|
Andreas Thienemann |
6e96e5 |
+++ bacula-2.0.3/src/stored/bscan.c 2007-09-13 12:34:56.000000000 +0200
|
|
Andreas Thienemann |
6e96e5 |
@@ -328,6 +328,7 @@ static bool bscan_mount_next_read_volume
|
|
Andreas Thienemann |
6e96e5 |
// mdcr->EndBlock = (uint32_t)dcr->file_addr;
|
|
Andreas Thienemann |
6e96e5 |
// mdcr->EndFile = (uint32_t)(dcr->file_addr >> 32);
|
|
Andreas Thienemann |
6e96e5 |
}
|
|
Andreas Thienemann |
6e96e5 |
+ mdcr->VolMediaId = dcr->VolMediaId;
|
|
Andreas Thienemann |
6e96e5 |
mjcr->read_dcr->VolLastIndex = dcr->VolLastIndex;
|
|
Andreas Thienemann |
6e96e5 |
if (!create_jobmedia_record(db, mjcr)) {
|
|
Andreas Thienemann |
6e96e5 |
Pmsg2(000, _("Could not create JobMedia record for Volume=%s Job=%s\n"),
|
|
Andreas Thienemann |
6e96e5 |
@@ -472,6 +473,7 @@ static bool record_cb(DCR *dcr, DEV_RECO
|
|
Andreas Thienemann |
6e96e5 |
dcr->VolFirstIndex = dcr->FileIndex = 0;
|
|
Andreas Thienemann |
6e96e5 |
dcr->StartBlock = dcr->EndBlock = 0;
|
|
Andreas Thienemann |
6e96e5 |
dcr->StartFile = dcr->EndFile = 0;
|
|
Andreas Thienemann |
6e96e5 |
+ dcr->VolMediaId = 0;
|
|
Andreas Thienemann |
6e96e5 |
}
|
|
Andreas Thienemann |
6e96e5 |
|
|
Andreas Thienemann |
6e96e5 |
Pmsg1(000, _("VOL_LABEL: OK for Volume: %s\n"), mr.VolumeName);
|
|
Andreas Thienemann |
6e96e5 |
@@ -1174,6 +1176,7 @@ static int create_jobmedia_record(B_DB *
|
|
Andreas Thienemann |
6e96e5 |
dcr->EndFile = (uint32_t)(dev->file_addr >> 32);
|
|
Andreas Thienemann |
6e96e5 |
#endif
|
|
Andreas Thienemann |
6e96e5 |
}
|
|
Andreas Thienemann |
6e96e5 |
+ dcr->VolMediaId = dev->VolCatInfo.VolMediaId;
|
|
Andreas Thienemann |
6e96e5 |
|
|
Andreas Thienemann |
6e96e5 |
memset(&jmr, 0, sizeof(jmr));
|
|
Andreas Thienemann |
6e96e5 |
jmr.JobId = mjcr->JobId;
|
|
Andreas Thienemann |
6e96e5 |
diff -up bacula-2.0.3/src/stored/block.c.restore bacula-2.0.3/src/stored/block.c
|
|
Andreas Thienemann |
6e96e5 |
--- bacula-2.0.3/src/stored/block.c.restore 2007-09-13 12:32:42.000000000 +0200
|
|
Andreas Thienemann |
6e96e5 |
+++ bacula-2.0.3/src/stored/block.c 2007-09-13 12:34:56.000000000 +0200
|
|
Andreas Thienemann |
6e96e5 |
@@ -612,6 +612,7 @@ bool write_block_to_dev(DCR *dcr)
|
|
Andreas Thienemann |
6e96e5 |
dev->block_num = dcr->EndBlock;
|
|
Andreas Thienemann |
6e96e5 |
dev->file = dcr->EndFile;
|
|
Andreas Thienemann |
6e96e5 |
}
|
|
Andreas Thienemann |
6e96e5 |
+ dcr->VolMediaId = dev->VolCatInfo.VolMediaId;
|
|
Andreas Thienemann |
6e96e5 |
if (dcr->VolFirstIndex == 0 && block->FirstIndex > 0) {
|
|
Andreas Thienemann |
6e96e5 |
dcr->VolFirstIndex = block->FirstIndex;
|
|
Andreas Thienemann |
6e96e5 |
}
|
|
Andreas Thienemann |
6e96e5 |
@@ -1107,6 +1108,7 @@ reread:
|
|
Andreas Thienemann |
6e96e5 |
dev->block_num = dcr->EndBlock;
|
|
Andreas Thienemann |
6e96e5 |
dev->file = dcr->EndFile;
|
|
Andreas Thienemann |
6e96e5 |
}
|
|
Andreas Thienemann |
6e96e5 |
+ dcr->VolMediaId = dev->VolCatInfo.VolMediaId;
|
|
Andreas Thienemann |
6e96e5 |
dev->file_addr += block->read_len;
|
|
Andreas Thienemann |
6e96e5 |
dev->file_size += block->read_len;
|
|
Andreas Thienemann |
6e96e5 |
|