dev->VolCatInfo.VolCatBlocks++;
dev->EndBlock = dev->block_num;
dev->EndFile = dev->file;
+ dev->LastBlock = block->BlockNumber;
block->BlockNumber++;
/* Update dcr values */
* If we wrote block and the block numbers don't agree
* we have a possible problem.
*/
+#ifdef xxx
if (lblock->VolSessionId == block->VolSessionId &&
+ lblock->VolSessionTime == block->VolSessionTime &&
lblock->BlockNumber+1 != block->BlockNumber) {
+#endif
+ if (lblock->BlockNumber != dev->LastBlock) {
Jmsg(jcr, M_ERROR, 0, _(
-"Re-read of last block OK, but block numbers differ. Last block=%u Current block=%u.\n"),
- lblock->BlockNumber, block->BlockNumber);
+"Re-read of last block OK, but block numbers differ. Read block=%u Want block=%u.\n"),
+ lblock->BlockNumber, dev->LastBlock);
} else {
Jmsg(jcr, M_INFO, 0, _("Re-read of last block succeeded.\n"));
}
POOLMEM *prt_name; /* Name used for display purposes */
char *errmsg; /* nicely edited error message */
uint32_t block_num; /* current block number base 0 */
+ uint32_t LastBlock; /* last DEV_BLOCK number written to Volume */
uint32_t file; /* current file number base 0 */
uint64_t file_addr; /* Current file read/write address */
uint64_t file_size; /* Current file size */
General:
08Jun08
ebl Modify faketape driver to avoid sparse file.
+kes Add make clean of qt-source directory during ./configure
+kes Store last block number written to tape in DEVICE and
+ use it for testing for correct last block on EOT.
Release Version 2.4.0:
04Jun08