From: Kern Sibbald Date: Sun, 23 Sep 2007 19:01:38 +0000 (+0000) Subject: Add comments X-Git-Tag: Release-3.0.0~2474 X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=f8925fd66feab8f22cd6c39ece7a5a3ff5d1a0b9;p=bacula%2Fbacula Add comments git-svn-id: https://bacula.svn.sourceforge.net/svnroot/bacula/trunk@5632 91ce42f0-d328-0410-95d8-f526ca767f89 --- diff --git a/bacula/src/stored/reserve.c b/bacula/src/stored/reserve.c index 745e176068..e90e9d0127 100644 --- a/bacula/src/stored/reserve.c +++ b/bacula/src/stored/reserve.c @@ -1135,6 +1135,17 @@ static int reserve_device(RCTX &rctx) } goto bail_out; } + /* + * Note. Under some circumstances, the Director can hand us + * a Volume name that is no the same as the one on the current + * drive, and in that case, the call above to find the next + * volume will fail because in attempting to reserve the Volume + * the code will realize that we already have a tape mounted, + * and it will fail. This *should* only happen if there are + * writers, thus the following test. In that case, we simply + * bail out, and continue waiting, rather than plunging on + * and hoping that the operator can resolve the problem. + */ if (dcr->dev->num_writers != 0) { if (dcr->VolumeName[0]) { volume_unused(dcr);