[cta-taped] Fix "Drive goes up and free after an EndOfSessionWithError"
Move DriveState logic away from scheduler. End of session and mount->complete()
won't secretly set the drive up anymore. Instead, DataTransferSession
and tape threads must explicitly update the drive status. It will allow to keep the workflow comprehensive.
Similarly, tape and disk threads must explicitly report their termination, so the end of session is correctly reported.
This merge request also fixes the unit tests in SchedulerTest
, that used inconsistent variables for the drive names.
Should run cleaner but VID is missing. Putting the drive down.
is also fixed.
Closes #950 (closed) Drive goes up and free after an EndOfSessionWithError
Closes #1160 (closed) Fix DrainingToDisk stale status in case if there is DiskWriteThreadPool thread left
Closes #1161 (closed) Decide where m_reportPacker.setTapeDone()
should be called
Closes cta/operations#708 Should run cleaner but VID is missing. Putting the drive down