From f8925fd66feab8f22cd6c39ece7a5a3ff5d1a0b9 Mon Sep 17 00:00:00 2001 From: Kern Sibbald Date: Sun, 23 Sep 2007 19:01:38 +0000 Subject: [PATCH] Add comments git-svn-id: https://bacula.svn.sourceforge.net/svnroot/bacula/trunk@5632 91ce42f0-d328-0410-95d8-f526ca767f89 --- bacula/src/stored/reserve.c | 11 +++++++++++ 1 file changed, 11 insertions(+) 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); -- 2.39.5