return 0;
}
/* An empty ChangerCommand => virtual disk autochanger */
if (dcr->device->changer_command && dcr->device->changer_command[0] == 0) {
return 0;
}
/* An empty ChangerCommand => virtual disk autochanger */
if (dcr->device->changer_command && dcr->device->changer_command[0] == 0) {
/*
* Handle autoloaders here. If we cannot autoload it, we
* will return 0 so that the sysop will be asked to load it.
/*
* Handle autoloaders here. If we cannot autoload it, we
* will return 0 so that the sysop will be asked to load it.
if (dir_find_next_appendable_volume(dcr)) {
slot = dcr->VolCatInfo.InChanger ? dcr->VolCatInfo.Slot : 0;
} else {
if (dir_find_next_appendable_volume(dcr)) {
slot = dcr->VolCatInfo.InChanger ? dcr->VolCatInfo.Slot : 0;
} else {
- Dmsg1(100, "Doing changer load slot %d\n", slot);
+ Dmsg2(100, "Doing changer load slot %d %s\n", slot, dev->print_name());
- Jmsg(jcr, M_FATAL, 0, _("3992 Missing Changer command.\n"));
+// Jmsg(jcr, M_FATAL, 0, _("3992 Missing Changer command.\n"));
dcr->VolumeName, dev->print_name());
Dmsg4(100, "Vol %s for dev=%s is busy dev=%s slot=%d\n",
dcr->VolumeName, dcr->dev->print_name(), dev->print_name(), dev->Slot);
dcr->VolumeName, dev->print_name());
Dmsg4(100, "Vol %s for dev=%s is busy dev=%s slot=%d\n",
dcr->VolumeName, dcr->dev->print_name(), dev->print_name(), dev->Slot);
- Dmsg2(100, "num_writ=%d reserv=%d\n", dev->num_writers, dev->reserved_device);
+ Dmsg2(100, "num_writ=%d reserv=%d\n", dev->num_writers, dev->num_reserved());
dcr->device->changer_command, "unload");
dev->close();
Dmsg2(200, "close dev=%s reserve=%d\n", dev->print_name(),
dcr->device->changer_command, "unload");
dev->close();
Dmsg2(200, "close dev=%s reserve=%d\n", dev->print_name(),
Dmsg1(100, "Run program=%s\n", changer_cmd);
int stat = run_program_full_output(changer_cmd, timeout, results.addr());
dcr->VolCatInfo.Slot = save_slot;
Dmsg1(100, "Run program=%s\n", changer_cmd);
int stat = run_program_full_output(changer_cmd, timeout, results.addr());
dcr->VolCatInfo.Slot = save_slot;