When Veeam tries to return a tape from the drive to a tape library, it puts the tape back into the same slot it originally came from. If that slot has been manually filled in the meantime, however, such as by ejecting the magazine and placing a new tape into the slot, Veeam does not handle the situation in a graceful manner. It does not look for an alternate empty slot to store the tape, nor does it pause the job and ask the user to intervene - it simply fails the entire job outright.
I had this happen after a backup job burned through 11 tapes and asked for one more. I ejected one of the library magazines and stuck a new tape into an empty slot. This happened to be the slot that Veeam wanted to unload a tape into and when it discovered the slot filled, it terminated a backup job that had been running for 95 hours, rendering the entire backup useless. I suggest that when Veeam is unable to return the tape to the original slot, it select another available slot in the library. If there are no available slots, then pause the job and prompt the user to correct the situation.